]> git.lyx.org Git - lyx.git/blobdiff - src/frontends/qt4/GuiToolbar.h
Improve wording (#10670)
[lyx.git] / src / frontends / qt4 / GuiToolbar.h
index 5c0ea4196e2b6c86f2d09b9de2f6571c8b5d286d..43f61887485d56ef778944c3db59248b37772dc2 100644 (file)
 #ifndef GUITOOLBAR_H
 #define GUITOOLBAR_H
 
-#include "Session.h"
-
-#include <QAbstractProxyModel>
-#include <QComboBox>
 #include <QList>
 #include <QToolBar>
 #include <QToolButton>
 
-class QSortFilterProxyModel;
-class QStandardItemModel;
-
 namespace lyx {
 
 class DocumentClass;
@@ -39,76 +32,10 @@ class GuiCommandBuffer;
 class GuiLayoutFilterModel;
 class GuiToolbar;
 class GuiView;
-class LayoutItemDelegate;
+class LayoutBox;
 class ToolbarInfo;
 class ToolbarItem;
 
-class GuiLayoutBox : public QComboBox
-{
-       Q_OBJECT
-public:
-       GuiLayoutBox(GuiToolbar * bar, GuiView &);
-
-       /// select the right layout in the combobox.
-       void set(docstring const & layout);
-       /// Populate the layout combobox.
-       void updateContents(bool reset);
-       /// Add Item to Layout box according to sorting settings from preferences
-       void addItemSort(docstring const & item, docstring const & category,
-               bool sorted, bool sortedByCat, bool unknown);
-
-       ///
-       void showPopup();
-       
-       ///
-       bool eventFilter(QObject * o, QEvent * e);
-       ///
-       QString const & filter() { return filter_; }
-
-private Q_SLOTS:
-       ///
-       void selected(int index);
-       ///
-       void setIconSize(QSize size);
-
-private:
-       friend class LayoutItemDelegate;
-
-       ///
-       void resetFilter();
-       ///
-       void setFilter(QString const & s);
-       ///
-       QString charFilterRegExp(QString const & filter);
-       ///
-       void countCategories();
-       
-       ///
-       GuiView & owner_;
-       ///
-       GuiToolbar * bar_;
-       ///
-       DocumentClass const * text_class_;
-       ///
-       Inset const * inset_;
-       
-       /// the layout model: 1st column translated, 2nd column raw layout name
-       QStandardItemModel * model_;
-       /// the proxy model filtering \c model_
-       GuiLayoutFilterModel * filterModel_;
-       /// the (model-) index of the last successful selection
-       int lastSel_;
-       /// the character filter
-       QString filter_;
-       ///
-       LayoutItemDelegate * layoutItemDelegate_;
-       ///
-       unsigned visibleCategories_;
-       ///
-       bool inShowPopup_;
-};
-
-
 class MenuButton : public QToolButton
 {
        Q_OBJECT
@@ -116,20 +43,20 @@ public:
        ///
        MenuButton(GuiToolbar * bar, ToolbarItem const & item,
                bool const sticky = false);
-       ///
-       void mousePressEvent(QMouseEvent * e);
 
 private:
+       ///
+       void initialize();
        ///
        GuiToolbar * bar_;
        ///
        ToolbarItem const & tbitem_;
-       ///
-       bool initialized_;
 
 private Q_SLOTS:
        ///
        void actionTriggered(QAction * action);
+       ///
+       void updateTriggered();
 };
 
 
@@ -140,6 +67,10 @@ class GuiToolbar : public QToolBar
 public:
        ///
        GuiToolbar(ToolbarInfo const &, GuiView &);
+       
+       /// Reimplemented from QToolbar to detect whether the 
+       /// toolbar is restored with MainWindow::restoreState().
+       void setVisible(bool visible);
 
        ///
        void setVisibility(int visibility);
@@ -157,13 +88,18 @@ public:
        /// Restore session settings.
        void restoreSession();
 
+       ///
+       bool isRestored() const;
+
        /// Refresh the contents of the bar.
-       void update(bool in_math, bool in_table, bool review,
-               bool in_mathmacrotemplate);
+       void update(int context = 0);
 
        ///
        void toggle();
 
+       /// toggles movability
+       void movable(bool silent = false);
+
        ///
        GuiCommandBuffer * commandBuffer() { return command_buffer_; }
 
@@ -182,24 +118,20 @@ private:
        ///
        void showEvent(QShowEvent *);
 
-       ///
-       QString name_;
        ///
        QList<Action *> actions_;
        /// initial visibility flags
        int visibility_;
        ///
-       bool allowauto_;
-       ///
        GuiView & owner_;
        ///
-       GuiLayoutBox * layout_;
-       ///
        GuiCommandBuffer * command_buffer_;
        ///
        ToolbarInfo const & tbinfo_;
        ///
        bool filled_;
+       ///
+       bool restored_;
 };
 
 } // namespace frontend