X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Ffrontends%2Fqt4%2FGuiCitation.h;h=27f69e56bc457ab1bb5c7f7a1bf63b968850c39a;hb=425d092204118ea6c24c28e85fdf03fcf2bb51a4;hp=52b6b315d6ac2a1ae6803a3ea5ed6fdc788c66f1;hpb=39276a1254c4edf0f2cf1cc8436e724e6e09eccc;p=lyx.git diff --git a/src/frontends/qt4/GuiCitation.h b/src/frontends/qt4/GuiCitation.h index 52b6b315d6..27f69e56bc 100644 --- a/src/frontends/qt4/GuiCitation.h +++ b/src/frontends/qt4/GuiCitation.h @@ -42,26 +42,8 @@ public: GuiCitation(GuiView & lv); /// ~GuiCitation(); - /// - void applyView(); - - void updateView() {} - -private: - /// - void showEvent(QShowEvent * e); - /// - void closeEvent(QCloseEvent * e); - /// prepares a call to GuiCitation::searchKeys when we - /// are ready to search the BibTeX entries - void findText(QString const & text, bool reset = false); - /// check whether key is already selected - bool isSelected(const QModelIndex &); - /// update the display of BibTeX information - void updateInfo(QModelIndex const &); private Q_SLOTS: - void cleanUp(); void on_okPB_clicked(); void on_cancelPB_clicked(); void on_restorePB_clicked(); @@ -80,45 +62,57 @@ private Q_SLOTS: /// performs a limited update, suitable for internal call void updateControls(); + private: + /// Dialog inherited methods + //@{ + void applyView(); + void updateView() {} + bool initialiseParams(std::string const & data); + void clearParams(); + void dispatchParams(); + bool isBufferDependent() const { return true; } + void saveSession() const; + void restoreSession(); + /** Disconnect from the inset when the Apply button is pressed. + * Allows easy insertion of multiple citations. + */ + bool disconnectOnApply() const { return true; } + //@} + + /// + void showEvent(QShowEvent * e); + /// + void closeEvent(QCloseEvent * e); + /// prepares a call to GuiCitation::searchKeys when we + /// are ready to search the BibTeX entries + void findText(QString const & text, bool reset = false); + /// check whether key is already selected + bool isSelected(const QModelIndex &); + /// update the display of BibTeX information + void updateInfo(BiblioInfo const & bi, QModelIndex const &); /// enable/disable buttons void setButtons(); /// fill the styles combo - void fillStyles(); + void fillStyles(BiblioInfo const & bi); /// fill the fields combo - void fillFields(); + void fillFields(BiblioInfo const & bi); /// fill the entries combo - void fillEntries(); + void fillEntries(BiblioInfo const & bi); /// set the styles combo void updateStyle(); /// set the formatting widgets void updateFormatting(CiteStyle currentStyle); - /// last used citation style - int style_; - - GuiSelectionManager * selectionManager; - + /// + void updateControls(BiblioInfo const & bi); /// void init(); - /// Available keys - QStringListModel * available() { return &available_model_; } - /// Selected keys - QStringListModel * selected() { return &selected_model_; } - /// Text before cite - QString textBefore(); - /// Text after cite - QString textAfter(); - /// Get key description - QString getKeyInfo(QString const &); /// Clear selected keys void clearSelection(); - /// Return a list of available fields - QStringList getFieldsAsQStringList(); - /// Return a list of available fields - QStringList getEntriesAsQStringList(); /// Find keys containing a string. void findKey( + BiblioInfo const & bi, //< optimize by passing this QString const & str, //< string expression bool only_keys, //< set to true if only keys shall be searched. docstring field, // availableKeys() const; - /// \return the list of all used BibTeX fields - std::vector availableFields() const; - /// \return the list of all used BibTeX entry types - std::vector availableEntries() const; /// - void filterByEntryType( + void filterByEntryType(BiblioInfo const & bi, std::vector & keyVector, docstring entryType); /// CiteEngine citeEngine() const; - /// \return information for this key. - docstring getInfo(docstring const & key) const; - /// Search a given string within the passed keys. /// \return the vector of matched keys. std::vector searchKeys( + BiblioInfo const & bi, //< optimize by passing this std::vector const & keys_to_search, //< Keys to search. bool only_keys, //< whether to search only the keys docstring const & search_expression, //< Search expression (regex possible) @@ -186,9 +147,25 @@ private: bool regex = false //< \set to true if \c search_expression is a regex ); // -private: /// The BibTeX information available to the dialog + /// Calls to this method will lead to checks of modification times and + /// the like, so it should be avoided. BiblioInfo const & bibInfo() const; + + /// last used citation style + int style_; + /// + GuiSelectionManager * selectionManager; + /// available keys. + QStringListModel available_model_; + /// selected keys. + QStringListModel selected_model_; + /// All keys. + QStringList all_keys_; + /// Cited keys. + QStringList cited_keys_; + /// + InsetCommandParams params_; }; } // namespace frontend