X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Ffrontends%2Fqt4%2FGuiCitation.h;h=4d85c0315ae242de88656a046503284b9112318b;hb=c7496a11b2f0bd714b6c2ee0f7189ff420e014ce;hp=a604a18637ea5fb6dc025993cde47ad9407a79e7;hpb=9c55af4a223ce4db29d643251109e245665344bd;p=lyx.git diff --git a/src/frontends/qt4/GuiCitation.h b/src/frontends/qt4/GuiCitation.h index a604a18637..4d85c0315a 100644 --- a/src/frontends/qt4/GuiCitation.h +++ b/src/frontends/qt4/GuiCitation.h @@ -17,11 +17,15 @@ #include "DialogView.h" #include "ui_CitationUi.h" +#include "FancyLineEdit.h" #include "insets/InsetCommandParams.h" +#include "BiblioInfo.h" #include "Citation.h" +#include +#include #include #include @@ -33,6 +37,7 @@ namespace frontend { class GuiSelectionManager; + class GuiCitation : public DialogView, public Ui::CitationUi { Q_OBJECT @@ -40,22 +45,22 @@ class GuiCitation : public DialogView, public Ui::CitationUi public: /// GuiCitation(GuiView & lv); - /// - ~GuiCitation(); private Q_SLOTS: void on_okPB_clicked(); void on_cancelPB_clicked(); void on_restorePB_clicked(); void on_applyPB_clicked(); - void on_searchPB_clicked(); - void on_findLE_textChanged(const QString & text); + void on_literalCB_clicked(); + void filterPressed(); + void filterChanged(const QString & text); void on_fieldsCO_currentIndexChanged(int index); void on_entriesCO_currentIndexChanged(int index); void on_citationStyleCO_currentIndexChanged(int index); - void on_caseCB_stateChanged(int); - void on_regexCB_stateChanged(int); - void on_asTypeCB_stateChanged(int); + void resetFilter(); + void caseChanged(); + void regexChanged(); + void instantChanged(bool checked); void changed(); /// set the citation keys, mark as changed void setCitedKeys(); @@ -74,7 +79,7 @@ private: void clearParams(); void dispatchParams(); bool isBufferDependent() const { return true; } - void saveSession() const; + void saveSession(QSettings & settings) const; void restoreSession(); /** Disconnect from the inset when the Apply button is pressed. * Allows easy insertion of multiple citations. @@ -102,14 +107,29 @@ private: /// set the styles combo void updateStyles(BiblioInfo const & bi); /// set the formatting widgets - void updateFormatting(CitationStyle currentStyle); + void updateFormatting(CitationStyle const & currentStyle); /// void updateControls(BiblioInfo const & bi); + /// Set the appropriate hinting text on the filter bar + void updateFilterHint(); /// void init(); /// Clear selected keys void clearSelection(); + /// Set selected keys + void setSelectedKeys(QStringList const); + /// Get selected keys + QStringList selectedKeys(); + /// Set pre texts of qualified lists + void setPreTexts(std::vector const m); + /// Get pre texts of qualified lists + std::vector getPreTexts(); + /// Set post texts of qualified lists + void setPostTexts(std::vector const m); + /// Get post texts of qualified lists + std::vector getPostTexts(); + /// Find keys containing a string. void findKey( BiblioInfo const & bi, //< optimize by passing this @@ -122,8 +142,9 @@ private: bool reset = false //< whether to reset and search all keys ); - /// List of example cite strings - QStringList citationStyles(BiblioInfo const & bi, size_t max_size); + /// List of example cite strings and their correlating lyx name + BiblioInfo::CiteStringMap citationStyles(BiblioInfo const & bi, + size_t max_size); /// Set the Params variable for the Controller. void applyParams(int const choice, bool const full, bool const force, @@ -150,14 +171,24 @@ private: /// the like, so it should be avoided. BiblioInfo const & bibInfo() const; + /// contains the search box + FancyLineEdit * filter_; + + /// Regexp action + QAction * regexp_; + /// Case sensitive action + QAction * casesense_; + /// Search as you type action + QAction * instant_; + /// last used citation style - int style_; + QString style_; /// GuiSelectionManager * selectionManager; /// available keys. QStringListModel available_model_; /// selected keys. - QStringListModel selected_model_; + QStandardItemModel selected_model_; /// All keys. QStringList all_keys_; /// Cited keys.