From: Richard Heck Date: Fri, 25 Apr 2008 19:38:31 +0000 (+0000) Subject: Add "Search as You Type" option to citation dialog. X-Git-Tag: 1.6.10~4994 X-Git-Url: https://git.lyx.org/gitweb/?a=commitdiff_plain;h=45eee3cbbbc4a2c05a99461c8583b2795a3fb672;p=features.git Add "Search as You Type" option to citation dialog. git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24504 a592a061-630c-0410-9148-cb99ea01b6c8 --- diff --git a/src/frontends/qt4/GuiCitation.cpp b/src/frontends/qt4/GuiCitation.cpp index c1e7fd74c6..bb9f0897b6 100644 --- a/src/frontends/qt4/GuiCitation.cpp +++ b/src/frontends/qt4/GuiCitation.cpp @@ -98,6 +98,7 @@ GuiCitation::GuiCitation(GuiView & lv) this, SLOT(on_okPB_clicked())); connect(textAfterED, SIGNAL(returnPressed()), this, SLOT(on_okPB_clicked())); + connect(this, SIGNAL(rejected()), this, SLOT(cleanUp())); selectionManager = new GuiSelectionManager(availableLV, selectedLV, @@ -424,16 +425,20 @@ void GuiCitation::on_citationStyleCO_currentIndexChanged(int index) void GuiCitation::on_findLE_textChanged(const QString & text) { - searchPB->setDisabled(text.isEmpty()); - if (!text.isEmpty()) + bool const searchAsWeGo = (asTypeCB->checkState() == Qt::Checked); + searchPB->setDisabled(text.isEmpty() || searchAsWeGo); + if (!text.isEmpty()) { + if (searchAsWeGo) + findText(findLE->text()); return; + } findText(findLE->text()); findLE->setFocus(); } void GuiCitation::on_searchPB_clicked() { - findText(findLE->text()); + findText(findLE->text(), true); } @@ -449,6 +454,15 @@ void GuiCitation::on_regexCB_stateChanged(int) } +void GuiCitation::on_asTypeCB_stateChanged(int) +{ + bool const searchAsWeGo = (asTypeCB->checkState() == Qt::Checked); + searchPB->setDisabled(findLE->text().isEmpty() || searchAsWeGo); + if (searchAsWeGo) + findText(findLE->text(), true); +} + + void GuiCitation::changed() { setButtons(); diff --git a/src/frontends/qt4/GuiCitation.h b/src/frontends/qt4/GuiCitation.h index 8863bc3a04..9c8b504444 100644 --- a/src/frontends/qt4/GuiCitation.h +++ b/src/frontends/qt4/GuiCitation.h @@ -71,6 +71,7 @@ private Q_SLOTS: void on_citationStyleCO_currentIndexChanged(int index); void on_caseCB_stateChanged(int); void on_regexCB_stateChanged(int); + void on_asTypeCB_stateChanged(int); void changed(); /// void setCitedKeys(); diff --git a/src/frontends/qt4/ui/CitationUi.ui b/src/frontends/qt4/ui/CitationUi.ui index 1a4cd5145b..66a5fc1c61 100644 --- a/src/frontends/qt4/ui/CitationUi.ui +++ b/src/frontends/qt4/ui/CitationUi.ui @@ -5,8 +5,8 @@ 0 0 - 449 - 617 + 467 + 692 @@ -291,6 +291,26 @@ + + + + Qt::Horizontal + + + + 271 + 25 + + + + + + + + Search As You Type + + +