]> git.lyx.org Git - lyx.git/blobdiff - src/frontends/qt4/GuiView.h
delete unneeded Menubar virtual interface.
[lyx.git] / src / frontends / qt4 / GuiView.h
index a1da43712b1e6f8a426576949d49bd275f2e27f8..e4ab76331dc48fa160cc14215487bf905bafc56e 100644 (file)
@@ -7,6 +7,7 @@
  * \author Lars Gullik Bjornes
  * \author John Levon
  * \author Abdelrazak Younes
+ * \author Peter Kümmel
  *
  * Full author contact details are available in file CREDITS.
  */
 #ifndef GUI_VIEW_H
 #define GUI_VIEW_H
 
-// Must be here because of moc.
-#include <config.h>
-
 #include "frontends/LyXView.h"
-#include "funcrequest.h"
+#include "FuncRequest.h"
 
-#include <QMainWindow>
-#include <QTimer>
 #include <QAction>
 #include <QCloseEvent>
+#include <QMainWindow>
+#include <QTimer>
 
+class QDragEnterEvent;
+class QDropEvent;
+class QMenu;
 class QToolBar;
-//class FuncRequest;
 
-//class string;
 
 namespace lyx {
 namespace frontend {
@@ -56,20 +55,24 @@ public:
 
        virtual void init();
        virtual void close();
+       virtual void setFocus();
        virtual void setGeometry(
                unsigned int width,
                unsigned int height,
                int posx, int posy,
-               bool maximize);
+               int maximized,
+               unsigned int iconSizeXY,
+               const std::string & geometryArg);
        virtual void saveGeometry();
        virtual void busy(bool);
-       Toolbars::ToolbarPtr makeToolbar(ToolbarBackend::Toolbar const & tbb);
+       /// add toolbar, if newline==true, add a toolbar break before the toolbar
+       Toolbars::ToolbarPtr makeToolbar(ToolbarInfo const & tbinfo, bool newline);
        virtual void updateStatusBar();
-       virtual void message(lyx::docstring const & str);
+       virtual void message(docstring const & str);
        virtual void clearMessage();
        virtual bool hasFocus() const;
-
-       virtual void updateTab();
+       void showMiniBuffer(bool);
+       void openMenu(docstring const &);
 
        /// show - display the top-level window
        void show();
@@ -80,7 +83,7 @@ public:
        /// menu item has been selected
        void activated(FuncRequest const &);
 
-       void initTab(QWidget* workArea);
+       QMenu* createPopupMenu();
 
 Q_SIGNALS:
        void closing(int);
@@ -89,10 +92,13 @@ public Q_SLOTS:
        /// idle timeout
        void update_view_state_qt();
 
-       /// populate a toplevel menu and all its children on demand
-       void updateMenu(QAction *);
+       void currentTabChanged(int index);
+       void closeCurrentTab();
 
-       void currentTabChanged (int index); 
+       /// slots to change the icon size
+       void smallSizedIcons();
+       void normalSizedIcons();
+       void bigSizedIcons();
 
 protected:
        /// make sure we quit cleanly
@@ -104,27 +110,60 @@ protected:
        ///
        virtual void moveEvent(QMoveEvent * e);
 
+       /// \return the \c Workarea associated to \p  Buffer
+       /// \retval 0 if no \c WorkArea is found.
+       WorkArea * workArea(Buffer & buffer);
+
+       /// Add a \c WorkArea 
+       /// \return the \c Workarea associated to \p  Buffer
+       /// \retval 0 if no \c WorkArea is found.
+       WorkArea * addWorkArea(Buffer & buffer);
+       void setCurrentWorkArea(WorkArea * work_area);
+       void removeWorkArea(WorkArea * work_area);
+       WorkArea const * currentWorkArea() const;
+       WorkArea * currentWorkArea();
+
 private:
-       /// focus the command buffer widget
-       void focus_command_widget();
+       ///
+       void dragEnterEvent(QDragEnterEvent * ev);
+       ///
+       void dropEvent(QDropEvent * ev);
 
        /**
         * setWindowTitle - set title of window
         * @param t main window title
         * @param it iconified (short) title
         */
-       virtual void setWindowTitle(lyx::docstring const & t, lyx::docstring const & it);
+       virtual void setWindowTitle(docstring const & t, docstring const & it);
+
+       /// in order to catch Tab key press.
+       bool event(QEvent * e);
+       bool focusNextPrevChild(bool);
 
        QTimer statusbar_timer_;
 
        /// command buffer
        QCommandBuffer * commandbuffer_;
 
+       /// are we quitting by the menu?
+       bool quitting_by_menu_;
+
        ///
-       void updateFloatingGeometry();
+       QRect updateFloatingGeometry();
        ///
        QRect floatingGeometry_;
 
+       void setIconSize(unsigned int size);
+
+       struct ToolbarSize {
+               int top_width;
+               int bottom_width;
+               int left_height;
+               int right_height;
+       };
+
+       ToolbarSize toolbarSize_;
+
        struct GuiViewPrivate;
        GuiViewPrivate& d;
 };