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 class ControlCitation;
26 struct FD_form_citation;
28 class FormCitation : public FormCB<ControlCitation, FormDB<FD_form_citation> > {
31 FormCitation(ControlCitation &);
42 /// Set the Params variable for the Controller.
48 /// Update dialog before/whilst showing it.
49 virtual void update();
50 /// Filter the inputs on callback from xforms
51 virtual ButtonPolicy::SMInput input(FL_OBJECT *, long);
53 /// Type definition from the fdesign produced header file.
54 FD_form_citation * build_citation();
57 void updateBrowser(FL_OBJECT *, std::vector<string> const &) const;
59 void setBibButtons(State) const;
61 void setCiteButtons(State) const;
63 void setSize(int, bool) const;
66 std::vector<string> citekeys;
68 std::vector<string> bibkeys;
71 #endif // FORMCITATION_H