]> git.lyx.org Git - lyx.git/blobdiff - src/LyXView.h
more changes, read the Changelog
[lyx.git] / src / LyXView.h
index c2cbe062d0bb6d8ca6bfdd9c6810d981f7ccb249..5fab87d125d46d90059c00ccdb8a44c3ae381f95 100644 (file)
 #endif
 
 #include FORMS_H_LOCATION
-#include "buffer.h"
-#include "menus.h"
+
+#include "Timeout.h"
 
 class LyXFunc;
 class Toolbar;
 class MiniBuffer;
 class Intl;
-
-///
-struct  FD_form_main {
-       ///
-       FL_FORM * form_main;
-       ///
-       FL_OBJECT * timer_autosave;
-       ///
-       FL_OBJECT * timer_update;
-       ///
-       void * vdata;
-       ///
-       long ldata;
-};
+class Buffer;
+class Menus;
+class BufferView;
+class Dialogs;
 
 
 /**
@@ -45,7 +35,7 @@ struct  FD_form_main {
   view is supposed (at least IMHO) to be another class, that shows its output
   in one or more LyXView's.
  */
-class LyXView {
+class LyXView : public SigC::Object {
 public:
        /// constructor
        LyXView(int w, int h);
@@ -66,31 +56,31 @@ public:
        void redraw();
 
        /// returns the buffer currently shown in the main form.
-       Buffer * buffer() const { return bufferview->buffer(); }
+       Buffer * buffer() const;
 
        ///
-       BufferView * view() { return bufferview; }
-
-       /// returns a pointer to the main form.
-       FD_form_main * getMainForm() { return _form_main; }
+       BufferView * view() const;
 
        /// returns a pointer to the form.
-       FL_FORM * getForm() { return _form; }
+       FL_FORM * getForm() const;
 
        /// return a pointer to the toolbar
-       Toolbar * getToolbar() { return toolbar; }
+       Toolbar * getToolbar() const;
 
        /// return a pointer to the lyxfunc
-       LyXFunc * getLyXFunc() { return lyxfunc; }
+       LyXFunc * getLyXFunc() const;
 
        /// return a pointer to the minibuffer
-       MiniBuffer * getMiniBuffer() { return minibuffer; }
+       MiniBuffer * getMiniBuffer() const;
+
+       ///
+       Menus * getMenus() const;
 
        ///
-       Menus * getMenus() { return menus; }
+       Intl * getIntl() const;
 
        ///
-       Intl * getIntl() { return intl; }
+       Dialogs * getDialogs() { return dialogs_; }
 
        ///
        void updateLayoutChoice();
@@ -111,6 +101,8 @@ private:
        Menus * menus;
        ///
        Intl * intl;
+       ///
+       Dialogs * dialogs_;
 
        /** This is supposed to be a pointer or a list of pointers to the
           BufferViews currently being shown in the LyXView. So far
@@ -127,17 +119,14 @@ public:
          window manager. */
        static int atCloseMainFormCB(FL_FORM *, void *);
        /// A callback
-       static void AutosaveTimerCB(FL_OBJECT *, long);
-       /// A callback
-       static void UpdateTimerCB(FL_OBJECT *, long);
+       void AutoSave();
 private:
+       ///
+       Timeout autosave_timeout;
        /// makes the main form.
        void create_form_form_main(int width, int height);
        /// A pointer to the form.      
-       FD_form_main * _form_main;
-       /// A pointer to the form.      
-       FL_FORM * _form;
-
+       FL_FORM * form_;
        /** The last textclass layout list in the layout choice selector
          This should probably be moved to the toolbar, but for now it's
        here. (Asger) */