// -*- C++ -*-
-/* This file is part of
- * ======================================================
- *
- * LyX, The Document Processor
- * Copyright 1995 Matthias Ettrich
- * Copyright 1995-2000 The LyX Team.
+/**
+ * \file Toolbar.h
+ * This file is part of LyX, the document processor.
+ * Licence details can be found in the file COPYING.
*
- * This file is Copyright 1996-2000
- * Lars Gullik Bjønnes
+ * \author Lars Gullik Bjønnes
*
- * ====================================================== */
+ * Full author contact details are available in file CREDITS
+ */
#ifndef TOOLBAR_H
#define TOOLBAR_H
-#ifdef __GNUG__
-#pragma interface
-#endif
#include "LString.h"
class LyXView;
-class ToolbarDefaults;
-/** The LyX GUI independent toolbar class
- The GUI interface is implemented in the corresponding Toolbar_pimpl class.
- */
+
+/**
+ * The LyX GUI independent toolbar class
+ *
+ * The GUI interface is implemented in the corresponding Toolbar_pimpl class.
+ */
class Toolbar {
public:
///
- Toolbar(LyXView * o, int x, int y, ToolbarDefaults const &);
+ Toolbar(LyXView * o, int x, int y);
///
~Toolbar();
-
- /// (re)sets the toolbar
- void set(bool doingmain = false);
- /** this is to be the entry point to the toolbar
- frame, where you can change the toolbar realtime. */
- void edit();
- /// add a new button to the toolbar.
- void add(int , bool doclean = true);
- /// name of func instead of kb_action
- void add(string const & , bool doclean = true);
- /// invokes the n'th icon in the toolbar
- void push(int);
- /// activates the toolbar
- void activate();
- /// deactivates the toolbar
- void deactivate();
- /// update the state of the icons
- void update();
+ /// update the state of the toolbars
+ void update(bool in_math, bool in_table);
/// update the layout combox
- void setLayout(int layout);
- /// Populate the layout combox; re-do everything if force is true.
- void updateLayoutList(bool force);
+ void setLayout(string const & layout);
+ /**
+ * Populate the layout combox - returns whether we did a full
+ * update or not
+ */
+ bool updateLayoutList(int textclass);
/// Drop down the layout list
void openLayoutList();
/// Erase the layout list
void clearLayoutList();
-private:
+ /// Compaq cxx 6.5 requires this to be public
struct Pimpl;
+private:
+ ///
friend struct Toolbar::Pimpl;
+ ///
Pimpl * pimpl_;
+
+ /**
+ * The last textclass layout list in the layout choice selector
+ */
+ int last_textclass_;
};
#endif