]> git.lyx.org Git - lyx.git/blobdiff - src/frontends/qt4/TocWidget.h
* fix spelling in comments to please John.
[lyx.git] / src / frontends / qt4 / TocWidget.h
index cb38ee70af801a80f9719c6101fc923d24d87261..d2ca8b83758cc19636b0b048ad6f7b336ab412b2 100644 (file)
 
 #include "ui_TocUi.h"
 
+#include "Cursor.h"
+
 #include <QWidget>
 
+class QModelIndex;
+class QString;
+
 namespace lyx {
 namespace frontend {
 
-class GuiToc;
+class GuiView;
 
 class TocWidget : public QWidget, public Ui::TocUi
 {
        Q_OBJECT
 public:
-       TocWidget(GuiToc * form, QWidget * parent = 0);
+       ///
+       TocWidget(GuiView & gui_view, QWidget * parent = 0);
+
+       /// Initialise GUI.
+       void init(QString const & str);
+       ///
+       void doDispatch(Cursor & cur, FuncRequest const & fr);
+       ///
+       bool getStatus(Cursor & cur, FuncRequest const & fr, FuncStatus & status)
+               const;
 
+public Q_SLOTS:
        /// Update the display of the dialog whilst it is still visible.
-       void update();
+       void updateView();
 
 protected Q_SLOTS:
-       /// Update Gui of the display.
-       void updateGui();
-       ///
-       void setTocModel(size_t type);
        ///
        void select(QModelIndex const & index);
        ///
-       void selectionChanged(const QModelIndex & current,
-               const QModelIndex & previous);
+       void goTo(QModelIndex const &);
 
+       void on_tocTV_activated(QModelIndex const &);
+       void on_tocTV_pressed(QModelIndex const &);
        void on_updateTB_clicked();
+       void on_sortCB_stateChanged(int state);
+       void on_persistentCB_stateChanged(int state);
        void on_depthSL_valueChanged(int depth);
        void on_typeCO_currentIndexChanged(int value);
        void on_moveUpTB_clicked();
@@ -50,25 +64,27 @@ protected Q_SLOTS:
        void on_moveInTB_clicked();
        void on_moveOutTB_clicked();
 
-protected:
+       void showContextMenu(const QPoint & pos);
+
+private:
        ///
        void enableControls(bool enable = true);
        ///
-       int getIndexDepth(QModelIndex const & index, int depth = -1);
-       ///
        void setTreeDepth(int depth);
-
-private:
-       /// Reconnects the selection model change signal when TOC changed.
-       void reconnectSelectionModel();
-       /// Disconnects the selection model.
-       //This is a workaround for a problem of signals blocking.
-       void disconnectSelectionModel();
-
-       GuiToc * form_;
+       ///
+       void outline(int func_code);
+       /// finds the inset that is connected to the current item,
+       /// if any, otherwise return null
+       Inset * itemInset() const;
+       ///
+       QString current_type_;
 
        /// depth of list shown
        int depth_;
+       /// persistence of uncollapsed nodes in toc view
+       bool persistent_;
+       ///
+       GuiView & gui_view_;
 };
 
 } // namespace frontend