3 * \file xforms/Toolbar_pimpl.h
4 * Copyright 1996-2001 Lars Gullik Bjønnes
5 * This file is part of LyX, the document processor.
6 * Licence details can be found in the file COPYING.
8 * \author Lars Gullik Bjønnes
10 * Full author contact details are available in file CREDITS
13 #ifndef TOOLBAR_PIMPL_H
14 #define TOOLBAR_PIMPL_H
17 #include "forms_fwd.h"
19 #include "frontends/Toolbar.h"
26 /** The LyX xforms toolbar class
28 struct Toolbar::Pimpl {
30 /// called when user selects a layout from combox
31 static void layoutSelectedCB(int, void *, Combox *);
33 /// create an empty toolbar
34 Pimpl(LyXView * o, int x, int y);
38 /// add a new button to the toolbar.
41 /// update the state of the icons
44 /// select the right layout in the combox
45 void setLayout(string const & layout);
46 /// Populate the layout combox; re-do everything if force is true.
47 void updateLayoutList(bool force);
48 /// Drop down the layout list
49 void openLayoutList();
50 /// Erase the layout list
51 void clearLayoutList();
52 /// the non-static version of layoutSelectedCB
53 void layoutSelected();
55 /// an item on the toolbar
62 toolbarItem & operator=(toolbarItem const & ti);
69 /// icon for this item
73 typedef std::vector<toolbarItem> ToolbarList;
75 /// The list containing all the buttons
76 ToolbarList toollist_;
83 /// x position of end of toolbar
85 /// y position of end of toolbar
89 #endif // TOOLBAR_PIMPL_H