2 /* This file is part of
3 * ======================================================
5 * LyX, The Document Processor
7 * Copyright 2000 The LyX Team.
9 * ======================================================
12 #ifndef FORMCITATION_H
13 #define FORMCITATION_H
19 #include "FormInset.h"
20 struct FD_form_citation;
22 /** This class provides an XForms implementation of the FormCitation Dialog.
24 class FormCitation : public FormCommand {
27 FormCitation(LyXView *, Dialogs *);
50 /// Connect signals etc. Set form's max size.
51 virtual void connect();
52 /// Disconnect signals. Also perform any necessary housekeeping.
53 virtual void disconnect();
58 virtual bool input( FL_OBJECT *, long );
59 /// Update dialog before showing it
60 virtual void update();
61 /// Apply from dialog (modify or create inset)
63 /// Pointer to the actual instantiation of the xform's form
64 virtual FL_FORM * form() const;
67 void updateBrowser( FL_OBJECT *, std::vector<string> const & ) const;
69 void setBibButtons( State ) const;
71 void setCiteButtons( State ) const;
73 void setSize( int, bool ) const;
74 /// Type definition from the fdesign produced header file.
75 FD_form_citation * build_citation();
77 /// Real GUI implementation.
78 FD_form_citation * dialog_;
80 std::vector<string> citekeys;
82 std::vector<string> bibkeys;
84 std::vector<string> bibkeysInfo;