2 /* This file is part of
3 * ======================================================
5 * LyX, The Document Processor
7 * Copyright 2000-2001 The LyX Team.
9 * ======================================================
11 * \file FormCitation.h
12 * \author Angus Leeming <a.leeming@ic.ac.uk>
15 #ifndef FORMCITATION_H
16 #define FORMCITATION_H
25 /** This class provides an XForms implementation of the Citation Dialog.
27 class ControlCitation;
28 struct FD_form_citation;
30 class FormCitation : public FormCB<ControlCitation, FormDB<FD_form_citation> > {
33 FormCitation(ControlCitation &);
44 /// Set the Params variable for the Controller.
50 /// Update dialog before/whilst showing it.
51 virtual void update();
52 /// Filter the inputs on callback from xforms
53 virtual ButtonPolicy::SMInput input(FL_OBJECT *, long);
55 string const getMinimalTooltip(FL_OBJECT const *) const;
57 string const getVerboseTooltip(FL_OBJECT const *) const;
59 /// Fdesign generated method
60 FD_form_citation * build_citation();
62 /// search for a citation
63 void findBiblio(biblio::Direction const dir);
66 void updateBrowser(FL_OBJECT *, std::vector<string> const &) const;
68 void setBibButtons(State) const;
70 void setCiteButtons(State) const;
73 std::vector<string> citekeys;
75 std::vector<string> bibkeys;
78 #endif // FORMCITATION_H