From: John Levon Date: Mon, 27 Aug 2001 20:41:45 +0000 (+0000) Subject: build fixes, fixes to thesaurus and bibtex. X-Git-Tag: 1.6.10~20747 X-Git-Url: https://git.lyx.org/gitweb/?a=commitdiff_plain;h=dc575158c66a5368f667a319db04b3092454fc29;p=features.git build fixes, fixes to thesaurus and bibtex. git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@2598 a592a061-630c-0410-9148-cb99ea01b6c8 --- diff --git a/src/frontends/qt2/QBibtex.C b/src/frontends/qt2/QBibtex.C index c5904f163b..b8ca2328bc 100644 --- a/src/frontends/qt2/QBibtex.C +++ b/src/frontends/qt2/QBibtex.C @@ -43,6 +43,8 @@ void QBibtex::build_dialog() bc().addReadOnly(dialog_->styleED); bc().addReadOnly(dialog_->stylePB); bc().addReadOnly(dialog_->bibtocCB); + bc().addReadOnly(dialog_->databasePB); + bc().addReadOnly(dialog_->deletePB); } @@ -55,7 +57,9 @@ void QBibtex::update_contents() while (!bibs.empty()) { bibs = split(bibs, bib, ','); - dialog_->databaseLB->inSort(frontStrip(strip(bib)).c_str()); + bib = frontStrip(strip(bib)); + if (!bib.empty()) + dialog_->databaseLB->inSort(bib.c_str()); } string bibtotoc = "bibtotoc"; @@ -73,10 +77,11 @@ void QBibtex::update_contents() } else dialog_->bibtocCB->setChecked(false); + dialog_->deletePB->setEnabled(false); dialog_->styleED->setEnabled(false); dialog_->stylePB->setEnabled(false); - if (bibstyle == "plain") + if (bibstyle == "plain" || bibstyle.empty()) dialog_->styleCO->setCurrentItem(0); else if (bibstyle == "unsrt") dialog_->styleCO->setCurrentItem(1); @@ -88,11 +93,9 @@ void QBibtex::update_contents() dialog_->styleED->setEnabled(true); dialog_->stylePB->setEnabled(true); dialog_->styleED->setText(bibstyle.c_str()); - if (bibstyle.empty()) - dialog_->styleCO->setCurrentItem(0); - else - dialog_->styleCO->setCurrentItem(4); + dialog_->styleCO->setCurrentItem(4); } + } @@ -103,7 +106,7 @@ void QBibtex::apply() for (unsigned int i = 0; i < dialog_->databaseLB->count(); ++i) { dbs += dialog_->databaseLB->text(i).latin1(); if (i != dialog_->databaseLB->count()) - dbs += ", "; + dbs += ","; } controller().params().setContents(dbs); @@ -128,5 +131,6 @@ void QBibtex::apply() bool QBibtex::isValid() { - return dialog_->databaseLB->count() != 0; + return dialog_->databaseLB->count() != 0 && + !(dialog_->styleCO->currentItem() == 4 && string(dialog_->styleED->text()).empty()); } diff --git a/src/frontends/qt2/QBibtexDialog.C b/src/frontends/qt2/QBibtexDialog.C index 88a8f5bd4e..712f3ff8cd 100644 --- a/src/frontends/qt2/QBibtexDialog.C +++ b/src/frontends/qt2/QBibtexDialog.C @@ -43,9 +43,7 @@ void QBibtexDialog::browsePressed() { QString file = QFileDialog::getOpenFileName(QString::null, _("BibTeX style files (*.bst)"), this, 0, _("Select a BibTeX style")); - lyxerr << "HELLO" << std::endl; if (!file.isNull()) { - lyxerr << "MONKEYS" << std::endl; styleED->setText(ChangeExtension(OnlyFilename(file.latin1()), "").c_str()); form_->changed(); } @@ -54,19 +52,28 @@ void QBibtexDialog::browsePressed() void QBibtexDialog::addPressed() { - string file(QFileDialog::getOpenFileName(QString::null, - _("BibTeX database files (*.bib)"), this, 0, _("Select a BibTeX database to add")).latin1()); - if (!file.empty()) { + QString file = QFileDialog::getOpenFileName(QString::null, + _("BibTeX database files (*.bib)"), this, 0, _("Select a BibTeX database to add")); + if (!file.isNull()) { // FIXME: check duplicates - databaseLB->insertItem(ChangeExtension(file, "").c_str()); + databaseLB->insertItem(ChangeExtension(file.latin1(), "").c_str()); form_->changed(); } } +void QBibtexDialog::deletePressed() +{ + databaseLB->removeItem(databaseLB->currentItem()); +} + + void QBibtexDialog::styleChanged(const QString & sel) { - if (string(_("Other ...")) == sel.latin1() && !form_->readOnly()) { + if (form_->readOnly()) + return; + + if (string(_("Other ...")) == sel.latin1()) { styleED->setEnabled(true); stylePB->setEnabled(true); } else { @@ -77,6 +84,12 @@ void QBibtexDialog::styleChanged(const QString & sel) } +void QBibtexDialog::databaseChanged() +{ + deletePB->setEnabled(!form_->readOnly() && databaseLB->currentItem() != -1); +} + + void QBibtexDialog::closeEvent(QCloseEvent *e) { form_->slotWMHide(); diff --git a/src/frontends/qt2/QBibtexDialog.h b/src/frontends/qt2/QBibtexDialog.h index 9c195d75c7..dd9b9ef989 100644 --- a/src/frontends/qt2/QBibtexDialog.h +++ b/src/frontends/qt2/QBibtexDialog.h @@ -25,7 +25,9 @@ protected slots: virtual void change_adaptor(); virtual void browsePressed(); virtual void addPressed(); + virtual void deletePressed(); virtual void styleChanged(const QString &); + virtual void databaseChanged(); protected: diff --git a/src/frontends/qt2/QExternalDialog.C b/src/frontends/qt2/QExternalDialog.C index 7fda93c980..43e5f3c7eb 100644 --- a/src/frontends/qt2/QExternalDialog.C +++ b/src/frontends/qt2/QExternalDialog.C @@ -68,10 +68,10 @@ void QExternalDialog::updateClicked() void QExternalDialog::browseClicked() { - string file(QFileDialog::getOpenFileName(QString::null, - _("External material (*)"), this, 0, _("Select external material")).latin1()); - if (!file.empty()) { - fileED->setText(file.c_str()); + QString file = QFileDialog::getOpenFileName(QString::null, + _("External material (*)"), this, 0, _("Select external material")); + if (!file.isNull()) { + fileED->setText(file.latin1()); form_->changed(); } } diff --git a/src/frontends/qt2/QThesaurus.C b/src/frontends/qt2/QThesaurus.C index bb3a980a9b..c8862e718f 100644 --- a/src/frontends/qt2/QThesaurus.C +++ b/src/frontends/qt2/QThesaurus.C @@ -8,6 +8,10 @@ #include +#ifdef __GNUG__ +#pragma implementation +#endif + #include "ControlThesaurus.h" #include "QThesaurusDialog.h" #include "QThesaurus.h" @@ -31,6 +35,7 @@ void QThesaurus::build_dialog() dialog_.reset(new QThesaurusDialog(this)); bc().setCancel(dialog_->closePB); + bc().setApply(dialog_->replacePB); bc().addReadOnly(dialog_->replaceED); bc().addReadOnly(dialog_->replacePB); } diff --git a/src/frontends/qt2/QThesaurus.h b/src/frontends/qt2/QThesaurus.h index e47a5f5530..9d72b3de67 100644 --- a/src/frontends/qt2/QThesaurus.h +++ b/src/frontends/qt2/QThesaurus.h @@ -10,22 +10,27 @@ #ifndef QTHESAURUS_H #define QTHESAURUS_H +#ifdef __GNUG__ +#pragma interface +#endif + #include "Qt2Base.h" class ControlThesaurus; class QThesaurusDialog; -class QThesaurus : - public Qt2CB > +/// +class QThesaurus + : public Qt2CB > { +public: + /// friend class QThesaurusDialog; - -public: + /// QThesaurus(ControlThesaurus &); - private: /// Apply changes - virtual void apply(); + virtual void apply() {}; /// update virtual void update_contents(); /// build the dialog diff --git a/src/frontends/qt2/QThesaurusDialog.C b/src/frontends/qt2/QThesaurusDialog.C index 1e182f8805..516cdc263d 100644 --- a/src/frontends/qt2/QThesaurusDialog.C +++ b/src/frontends/qt2/QThesaurusDialog.C @@ -57,8 +57,20 @@ void QThesaurusDialog::replaceClicked() void QThesaurusDialog::selectionChanged(const QString & str) { + if (form_->readOnly()) + return; + string const entry(str.latin1()); - entryED->setText(entry.c_str()); + replaceED->setText(entry.c_str()); + replacePB->setEnabled(true); + form_->changed(); +} + + +void QThesaurusDialog::selectionClicked(const QString & str) +{ + selectionChanged(str); + entryED->setText(str); updateLists(); } diff --git a/src/frontends/qt2/QThesaurusDialog.h b/src/frontends/qt2/QThesaurusDialog.h index db6d7a7d0f..42b3319428 100644 --- a/src/frontends/qt2/QThesaurusDialog.h +++ b/src/frontends/qt2/QThesaurusDialog.h @@ -28,6 +28,7 @@ protected slots: virtual void entryChanged(); virtual void replaceClicked(); virtual void selectionChanged(const QString &); + virtual void selectionClicked(const QString &); protected: virtual void closeEvent(QCloseEvent * e); diff --git a/src/frontends/qt2/moc/Makefile.am b/src/frontends/qt2/moc/Makefile.am index 1aee70ccd0..2147fdcd69 100644 --- a/src/frontends/qt2/moc/Makefile.am +++ b/src/frontends/qt2/moc/Makefile.am @@ -5,20 +5,21 @@ BOOST_INCLUDES = -I$(top_srcdir)/boost INCLUDES = -I${top_srcdir}/src/ \ -I${top_srcdir}/src/frontends/ \ -I${top_srcdir}/src/frontends/controllers \ + -I${top_builddir}/src/frontends/qt2 \ ${SIGC_CFLAGS} \ ${FRONTEND_INCLUDES} \ $(BOOST_INCLUDES) include ../Makefile.dialogs - + libqt2moc_la_SOURCES := FileDialog_private_moc.C \ emptytable_moc.C \ Qt2Base_moc.C \ $(MOCDIALOGS) - + DISTCLEANFILES = $(libqt2moc_la_SOURCES) *.orig *.rej *~ *.bak core ETAGS_ARGS = --lang=c++ - + %_moc.C: ../%.h $(MOC) -o $@ $< diff --git a/src/frontends/qt2/ui/QBibtexDialog.ui b/src/frontends/qt2/ui/QBibtexDialog.ui index 6a0d96af3a..b115df40ae 100644 --- a/src/frontends/qt2/ui/QBibtexDialog.ui +++ b/src/frontends/qt2/ui/QBibtexDialog.ui @@ -13,13 +13,13 @@ 0 0 - 302 + 296 407 caption - Index + Bibtex @@ -30,13 +30,39 @@ spacing 6 + + QLabel + + name + databaseLA + + + text + Databases + + + alignment + AlignTop|AlignLeft + + + buddy + databaseCO + + + toolTip + BibTeX database to use + + + vAlign + + QLayoutWidget name - Layout13 + Layout10 - + margin 0 @@ -46,38 +72,33 @@ 6 - QLabel + QListBox + + + text + New Item + + name - databaseLA - - - text - Databases - - - buddy - databaseCO + databaseLB - alignment - AlignTop|AlignLeft + enabled + true toolTip - BibTeX database to use - - - vAlign + Available BibTeX databases QLayoutWidget name - Layout12 + Layout9 - + margin 0 @@ -87,86 +108,63 @@ 6 - QListBox - - - text - New Item - - + QPushButton name - databaseLB + databasePB - enabled - true + text + &Add ... + + + autoDefault + false toolTip - Available BibTeX databases + Add a BibTeX database file - QLayoutWidget + QPushButton name - Layout11 + deletePB + + + text + &Delete + + + toolTip + Remove the selected database - - - margin - 0 - - - spacing - 6 - - - QPushButton - - name - databasePB - - - text - &Add ... - - - autoDefault - false - - - toolTip - Add a BibTeX database file - - - - - name - Spacer2 - - - orientation - Vertical - - - sizeType - Expanding - - - sizeHint - - 20 - 20 - - - - - + + + name + Spacer2 + + + orientation + Vertical + + + sizeType + Expanding + + + sizeHint + + 20 + 20 + + + + - + QLayoutWidget @@ -504,9 +502,23 @@ QBibtexDialogBase change_adaptor() + + deletePB + clicked() + QBibtexDialogBase + deletePressed() + + + databaseLB + selectionChanged() + QBibtexDialogBase + databaseChanged() + addPressed() browsePressed() change_adaptor() + deletePressed() + databaseChanged() styleChanged(const QString &) diff --git a/src/frontends/qt2/ui/QThesaurusDialog.ui b/src/frontends/qt2/ui/QThesaurusDialog.ui index d2ec42cb59..501c4b1174 100644 --- a/src/frontends/qt2/ui/QThesaurusDialog.ui +++ b/src/frontends/qt2/ui/QThesaurusDialog.ui @@ -13,7 +13,7 @@ 0 0 - 490 + 482 442 @@ -161,12 +161,6 @@ QListBox - - - text - New Item - - name verbsLB @@ -199,12 +193,6 @@ QListBox - - - text - New Item - - name adjectivesLB @@ -237,12 +225,6 @@ QListBox - - - text - New Item - - name adverbsLB @@ -275,12 +257,6 @@ QListBox - - - text - New Item - - name otherLB @@ -320,7 +296,7 @@ buddy - selectionED + replaceED toolTip @@ -419,50 +395,81 @@ QThesaurusDialogBase change_adaptor() + + entryED + returnPressed() + QThesaurusDialogBase + entryChanged() + + + replacePB + clicked() + QThesaurusDialogBase + replaceClicked() + nounsLB - selected(const QString&) + highlighted(const QString&) QThesaurusDialogBase selectionChanged(const QString &) + + nounsLB + selected(const QString&) + QThesaurusDialogBase + selectionClicked(const QString &) + verbsLB selected(const QString&) QThesaurusDialogBase + selectionClicked(const QString &) + + + verbsLB + highlighted(const QString&) + QThesaurusDialogBase selectionChanged(const QString &) adjectivesLB selected(const QString&) QThesaurusDialogBase + selectionClicked(const QString &) + + + adjectivesLB + highlighted(const QString&) + QThesaurusDialogBase selectionChanged(const QString &) adverbsLB selected(const QString&) QThesaurusDialogBase - selectionChanged(const QString &) + selectionClicked(const QString &) - otherLB - selected(const QString&) + adverbsLB + highlighted(const QString&) QThesaurusDialogBase selectionChanged(const QString &) - entryED - returnPressed() + otherLB + selected(const QString&) QThesaurusDialogBase - entryChanged() + selectionClicked(const QString &) - replacePB - clicked() + otherLB + highlighted(const QString&) QThesaurusDialogBase - replaceClicked() + selectionChanged(const QString &) change_adaptor() entryChanged() + selectionClicked(const QString &) replaceClicked() selectionChanged(const QString &)