3 * \file Toolbar_pimpl.h
4 * Copyright 2002 the LyX Team
5 * Copyright 1996-2001 Lars Gullik Bjønnes
6 * Read the file COPYING
8 * \author Lars Gullik Bjønnes, larsbj@lyx.org
11 #ifndef TOOLBAR_PIMPL_H
12 #define TOOLBAR_PIMPL_H
15 #include "forms_fwd.h"
17 #include "frontends/Toolbar.h"
28 /** The LyX xforms toolbar class
30 struct Toolbar::Pimpl {
32 /// called when user selects a layout from combox
33 static void layoutSelectedCB(int, void *, Combox *);
35 /// create an empty toolbar
36 Pimpl(LyXView * o, Dialogs &, int x, int y);
40 /// add a new button to the toolbar.
43 /// update the state of the icons
46 /// select the right layout in the combox
47 void setLayout(string const & layout);
48 /// Populate the layout combox; re-do everything if force is true.
49 void updateLayoutList(bool force);
50 /// Drop down the layout list
51 void openLayoutList();
52 /// Erase the layout list
53 void clearLayoutList();
54 /// the non-static version of layoutSelectedCB
55 void layoutSelected();
57 /// an item on the toolbar
64 toolbarItem & operator=(toolbarItem const & ti);
71 /// icon for this item
75 typedef std::vector<toolbarItem> ToolbarList;
77 /// The list containing all the buttons
78 ToolbarList toollist_;
85 /// x position of end of toolbar
87 /// y position of end of toolbar
91 #endif // TOOLBAR_PIMPL_H