]> git.lyx.org Git - lyx.git/blobdiff - src/frontends/qt4/TocWidget.h
Use <cstdint> instead of <boost/cstdint.hpp>
[lyx.git] / src / frontends / qt4 / TocWidget.h
index 962c21a2387a2d2a63b94ffbf57903e4cc3fbb60..9cb21bfcbfc61f8b1ebdd9221de44f1aeed38efe 100644 (file)
@@ -18,6 +18,7 @@
 #include "Cursor.h"
 #include "FuncCode.h"
 
+#include <QTimer>
 #include <QWidget>
 
 class QModelIndex;
@@ -39,15 +40,18 @@ public:
        void init(QString const & str);
        ///
        void doDispatch(Cursor & cur, FuncRequest const & fr);
+       ///send request to lyx::dispatch with proper guiview handle
+       ///(if ToC is detached current_view can be different window)
+       void sendDispatch(FuncRequest fr);
        ///
        bool getStatus(Cursor & cur, FuncRequest const & fr, FuncStatus & status)
                const;
 
 public Q_SLOTS:
-       /// Schedule new update of the display unless already scheduled.
+       /// Schedule an update of the dialog, delaying expensive operations
        void updateView();
-       /// Update the display of the dialog whilst it is still visible.
-       void updateViewForce();
+       /// Update completely without delay
+       void updateViewNow();
 
 protected Q_SLOTS:
        ///
@@ -70,6 +74,10 @@ protected Q_SLOTS:
 
        void showContextMenu(const QPoint & pos);
 
+private Q_SLOTS:
+       /// Perform the expensive update operations
+       void finishUpdateView();
+
 private:
        ///
        void enableControls(bool enable = true);
@@ -101,8 +109,8 @@ private:
        bool persistent_;
        ///
        GuiView & gui_view_;
-       // next delay for outliner update in ms. -1 when already scheduled.
-       int update_delay_;
+       // Timer for scheduling expensive update operations
+       QTimer * timer_;
 };
 
 } // namespace frontend