2 /* This file is part of
3 * ======================================================
5 * LyX, The Document Processor
7 * Copyright 2000 The LyX Team.
9 * ======================================================
11 * Author: Angus Leeming <a.leeming@ic.ac.uk>
14 #ifndef FORMCITATION_H
15 #define FORMCITATION_H
23 /** This class provides an XForms implementation of the Citation Dialog.
25 #include "form_citation.h"
26 class ControlCitation;
28 class FormCitation : public FormBase2<ControlCitation, FD_form_citation> {
31 FormCitation(ControlCitation &);
33 // Functions accessible to the Controller.
35 /// Set the Params variable for the Controller.
41 /// Update dialog before/whilst showing it.
42 virtual void update();
53 /// Filter the inputs on callback from xforms
54 virtual ButtonPolicy::SMInput input(FL_OBJECT *, long);
56 /// Type definition from the fdesign produced header file.
57 FD_form_citation * build_citation();
60 void updateBrowser(FL_OBJECT *, std::vector<string> const &) const;
62 void setBibButtons(State) const;
64 void setCiteButtons(State) const;
66 void setSize(int, bool) const;
69 std::vector<string> citekeys;
71 std::vector<string> bibkeys;
74 #endif // FORMCITATION_H