4 * This file is part of LyX, the document processor.
5 * Licence details can be found in the file COPYING.
7 * \author Angus Leeming
8 * \author Kalle Dalheimer
10 * Full author contact details are available in file CREDITS.
16 #include "ControlCitation.h"
18 #include <QStringListModel>
23 class QCitation : public ControlCitation
29 QStringListModel * available()
30 { return &available_keys_; }
33 QStringListModel * selected()
34 { return &selected_keys_; }
37 QStringListModel * found()
38 { return &found_keys_; }
46 /// Get key description
47 QString getKeyInfo(QString const &);
49 /// Find keys containing the string (not case-sens)
50 void findKey(QString const &);
52 /// Add key to selected keys
53 void addKey(QModelIndex const &);
55 /// Delete key from selected keys
56 void deleteKey(QModelIndex const &);
58 /// Move selected key one place up
59 void upKey(QModelIndex const &);
61 /// Move selected key one place down
62 void downKey(QModelIndex const &);
64 /// List of example cite strings
65 QStringList citationStyles(int);
67 /// Check whether there are keys to select
68 virtual bool isValid();
70 /// Set the Params variable for the Controller.
71 virtual void apply(int const choice, bool const full, bool const force,
72 QString before, QString after);
74 /// Update dialog before/whilst showing it.
75 virtual void updateModel();
79 QStringListModel available_keys_;
82 QStringListModel selected_keys_;
85 QStringListModel found_keys_;
89 } // namespace frontend