3 * John Levon, moz@compsoc.man.ac.uk
6 /***************************************************************************
8 * This program is free software; you can redistribute it and/or modify *
9 * it under the terms of the GNU General Public License as published by *
10 * the Free Software Foundation; either version 2 of the License, or *
11 * (at your option) any later version. *
13 ***************************************************************************/
18 #include "DialogBase.h"
20 #include "boost/utility.hpp"
21 #include "insets/insetcommand.h"
27 class FormToc : public DialogBase, public noncopyable {
29 /**@name Constructors and Destructors */
32 FormToc(LyXView *, Dialogs *);
37 /// Selected a tree item
38 void select(const char *);
40 void set_type(Buffer::TocType);
41 /// Update the dialog.
42 void update(bool = false);
43 /// change the depth shown
45 /// close the connections
49 /// Create the dialog if necessary, update it and display it.
54 /// create a Toc inset
55 void createTOC(string const &);
57 void showTOC(InsetCommand * const);
63 void setType(Buffer::TocType);
65 /// Real GUI implementation.
66 FormTocDialog * dialog_;
68 /// the LyXView we belong to
71 /** Which Dialogs do we belong to?
72 Used so we can get at the signals we have to connect to.
75 /// pointer to the inset if any
76 InsetCommand * inset_;
78 InsetCommandParams params;
82 /// Update connection.
84 /// Inset hide connection.
88 std::vector <Buffer::TocItem> toclist;
90 /// type currently being shown
93 /// depth of list shown