#include "ToolbarBackend.h"
#include <boost/shared_ptr.hpp>
#include <map>
+#include "session.h"
-class LyXView;
+namespace lyx {
+
+class LyXView;
class LayoutBox {
public:
public:
virtual ~Toolbar() {}
/// Add a button to the bar.
- virtual void add(FuncRequest const & func,
- std::string const & tooltip) = 0;
+ virtual void add(FuncRequest const & func, docstring const & tooltip) = 0;
/** Hide the bar.
* \param update_metrics is a hint to the layout engine that the
* metrics should be updated.
*/
virtual void show(bool update_metrics) = 0;
+ /** update toolbar information
+ * ToolbarInfo will then be saved by session
+ */
+ virtual void saveInfo(ToolbarSection::ToolbarInfo & info) = 0;
/// Refresh the contents of the bar.
virtual void update() = 0;
/// Show/hide the named toolbar.
void display(std::string const & name, bool show);
+
+ /// get toolbar state (on/off/auto)
+ ToolbarBackend::Flags getToolbarState(std::string const & name);
+
+ /// toggle the state of toolbars (on/off/auto)
+ void toggleToolbarState(std::string const & name);
+
/// Update the state of the toolbars.
- void update(bool in_math, bool in_table);
+ void update(bool in_math, bool in_table, bool review);
+
+ /// save toolbar information
+ void saveToolbarInfo();
/// Select the right layout in the combox.
void setLayout(std::string const & layout);
/// The last textclass layout list in the layout choice selector
int last_textclass_;
+
+ // load flags with saved values
+ void initFlags(ToolbarBackend::Toolbar & tbb);
};
/// Set the layout in the kernel when an entry has been selected
void layoutSelected(LyXView & lv, std::string const & name);
+
+} // namespace lyx
+
#endif // NOT TOOLBARS_H