X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2FLyXView.h;h=8017453af51c88e2c90f1e80d9119653181f7626;hb=f448e22d483e1370bcbfbb7be8cb47ad7251ed77;hp=e8c99e22cb669163b12463bb5d4f1528714a6a9f;hpb=6bba977f42b0cde753ac2ffd26f3f9c6b32ba0b6;p=lyx.git diff --git a/src/LyXView.h b/src/LyXView.h index e8c99e22cb..8017453af5 100644 --- a/src/LyXView.h +++ b/src/LyXView.h @@ -16,24 +16,27 @@ #pragma interface #endif +#include #include FORMS_H_LOCATION +#include "LString.h" #include "Timeout.h" +#include +#include "layout.h" class LyXFunc; class Toolbar; class MiniBuffer; class Intl; class Buffer; -class Menus; +class Menubar; + class BufferView; class Dialogs; -/// -struct FD_form_main { - /// - FL_FORM * form_main; -}; +#ifdef SIGC_CXX_NAMESPACES +using SigC::Object; +#endif /** @@ -41,7 +44,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 Object, public noncopyable { public: /// constructor LyXView(int w, int h); @@ -53,7 +56,7 @@ public: void setPosition(int, int); /// Show the main form. - void show(int, int, char const * t = "LyX"); + void show(int, int, string const & t = string("LyX")); /// init (should probably be removed later) (Lgb) void init(); @@ -67,15 +70,18 @@ public: /// BufferView * view() const; - /// returns a pointer to the main form. - FD_form_main * getMainForm() const; - /// returns a pointer to the form. FL_FORM * getForm() const; /// return a pointer to the toolbar Toolbar * getToolbar() const; + /// sets the layout in the toolbar layout combox + void setLayout(LyXTextClass::size_type layout); + + /// update the toolbar + void updateToolbar(); + /// return a pointer to the lyxfunc LyXFunc * getLyXFunc() const; @@ -83,7 +89,10 @@ public: MiniBuffer * getMiniBuffer() const; /// - Menus * getMenus() const; + Menubar * getMenubar() const; + + /// + void updateMenubar(); /// Intl * getIntl() const; @@ -97,6 +106,10 @@ public: /// Updates the title of the window void updateWindowTitle(); + + /// Show state (toolbar and font in minibuffer) + void showState(); + /// Reset autosave timer void resetAutosaveTimer(); private: @@ -107,7 +120,7 @@ private: /// MiniBuffer * minibuffer; /// - Menus * menus; + Menubar * menubar; /// Intl * intl; /// @@ -119,26 +132,18 @@ private: BufferView * bufferview; /// void invalidateLayoutChoice(); - /// - void UpdateDocumentClassChoice(); public: - /// - static int KeyPressMask_raw_callback(FL_FORM *, void * xev); /** This callback is run when a close event is sent from the window manager. */ static int atCloseMainFormCB(FL_FORM *, void *); /// A callback void AutoSave(); - /// A callback - static void UpdateTimerCB(void *); 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_; /** The last textclass layout list in the layout choice selector This should probably be moved to the toolbar, but for now it's