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 "QDialogView.h"
18 #include <QStringListModel>
23 class ControlCitation;
24 class QCitationDialog;
27 class QCitation : public QController<ControlCitation, QView<QCitationDialog> >
30 friend class QCitationDialog;
34 QStringListModel * available()
35 { return &available_keys_; }
37 QStringListModel * selected()
38 { return &selected_keys_; }
40 QStringListModel * found()
41 { return &found_keys_; }
43 QModelIndex findKey(QString const & str, QModelIndex const & index) const;
44 QModelIndex findKey(QString const & str) const;
46 void addKeys(QModelIndexList const & indexes);
47 void deleteKeys(QModelIndexList const & indexes);
48 void upKey(QModelIndexList const & indexes);
49 void downKey(QModelIndexList const & indexes);
52 virtual bool isValid();
56 /// Set the Params variable for the Controller.
59 virtual void build_dialog();
62 /// Update dialog before/whilst showing it.
63 virtual void update_contents();
66 QStringListModel available_keys_;
69 QStringListModel selected_keys_;
72 QStringListModel found_keys_;
75 } // namespace frontend