X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Ffrontends%2Fqt4%2FGuiCitation.h;h=428ea50a97de293a584d5e3f13dd4eafade126d2;hb=b6eacd8d4f86734e8abef3335b190ce12a6a11b5;hp=b8ca33f488f18b008799453941a175704cc7a353;hpb=83f0903b4aaccefcd3fa80989b3117e511e05423;p=lyx.git diff --git a/src/frontends/qt4/GuiCitation.h b/src/frontends/qt4/GuiCitation.h index b8ca33f488..428ea50a97 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,29 +45,29 @@ class GuiCitation : public DialogView, public Ui::CitationUi public: /// GuiCitation(GuiView & lv); - /// - ~GuiCitation(); private Q_SLOTS: - void cleanUp(); - 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_buttonBox_accepted(); + void on_buttonBox_rejected(); + void on_buttonBox_clicked(QAbstractButton *); + 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(); + /// update the styles for the style combo, mark as changed + void updateStyles(); /// performs a limited update, suitable for internal call void updateControls(); - + private: /// Dialog inherited methods @@ -73,7 +78,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. @@ -94,23 +99,36 @@ private: void updateInfo(BiblioInfo const & bi, QModelIndex const &); /// enable/disable buttons void setButtons(); - /// fill the styles combo - void fillStyles(BiblioInfo const & bi); /// fill the fields combo void fillFields(BiblioInfo const & bi); /// fill the entries combo void fillEntries(BiblioInfo const & bi); /// set the styles combo - void updateStyle(); + void updateStyles(BiblioInfo const & bi); /// set the formatting widgets - void updateFormatting(CiteStyle 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 @@ -123,18 +141,17 @@ private: bool reset = false //< whether to reset and search all keys ); - /// List of example cite strings - QStringList citationStyles(BiblioInfo const & bi, int); + /// 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 apply(int const choice, bool const full, bool const force, + void applyParams(int const choice, bool const full, bool const force, QString before, QString after); /// void filterByEntryType(BiblioInfo const & bi, std::vector & keyVector, docstring entryType); - /// - CiteEngine citeEngine() const; /// Search a given string within the passed keys. /// \return the vector of matched keys. @@ -149,18 +166,28 @@ private: ); // /// The BibTeX information available to the dialog - /// Calls to this method will lead to checks of modification times and + /// Calls to this method will lead to checks of modification times and /// 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.