]> git.lyx.org Git - lyx.git/blob - src/frontends/xforms/FormToc.h
Angus's FormInset work; Dekel's languages patch; my reworking of Angus's stuff +...
[lyx.git] / src / frontends / xforms / FormToc.h
1 // -*- C++ -*-
2 /* This file is part of
3  * ====================================================== 
4  *
5  *           LyX, The Document Processor
6  *
7  *           Copyright 2000 The LyX Team.
8  *
9  * ======================================================
10  */
11
12 #ifndef FORMTOC_H
13 #define FORMTOC_H
14
15 #ifdef __GNUG__
16 #pragma interface
17 #endif
18
19 #include "FormInset.h"
20 #include "buffer.h"
21 struct FD_form_toc;
22
23 /** This class provides an XForms implementation of the FormToc Dialog.
24  */
25 class FormToc : public FormCommand {
26 public:
27         ///
28         FormToc(LyXView *, Dialogs *);
29         ///
30         ~FormToc();
31 private:
32         /// Disconnect signals. Also perform any necessary housekeeping.
33         virtual void disconnect();
34
35         /// Build the dialog
36         virtual void build();
37         /// Update dialog before showing it
38         virtual void update(bool switched = false);
39         /// Apply from dialog (modify or create inset)
40         virtual void apply();
41         /// Pointer to the actual instantiation of the xform's form
42         virtual FL_FORM * form() const;
43         ///
44         void updateToc();
45         ///
46         FD_form_toc * build_toc();
47
48         /// Real GUI implementation.
49         FD_form_toc * dialog_;
50         ///
51         std::vector<Buffer::TocItem> toclist;
52 };
53
54 #endif