10 #include <boost/utility.hpp>
11 #include <sigc++/signal_system.h>
14 #include "support/types.h"
28 class LyXView : public SigC::Object, boost::noncopyable {
35 virtual void init() = 0;
37 virtual void setPosition(int, int) = 0;
39 virtual void show(int, int, string const &) = 0;
40 /// Redraw the main form.
41 virtual void redraw() = 0;
43 /// Resize all BufferViews in this LyXView (because the width changed)
46 /// returns the buffer currently shown in the main form.
47 Buffer * buffer() const;
50 BufferView * view() const;
52 /// return a pointer to the toolbar
53 Toolbar * getToolbar() const;
55 /// sets the layout in the toolbar layout combox
56 void setLayout(string const & layout);
57 /// update the toolbar
60 /// return a pointer to the lyxfunc
61 LyXFunc * getLyXFunc() const;
63 /// return a pointer to the minibuffer
64 MiniBuffer * getMiniBuffer() const;
67 void message(string const &);
69 void messagePush(string const & str);
74 Menubar * getMenubar() const;
80 Intl * getIntl() const;
83 Dialogs * getDialogs() { return dialogs_; }
86 void updateLayoutChoice();
88 /// Updates the title of the window
89 void updateWindowTitle();
91 /// Show state (toolbar and font in minibuffer)
94 /// Reset autosave timer
95 void resetAutosaveTimer();
97 virtual void prohibitInput() const = 0;
99 virtual void allowInput() const = 0;
105 /** This is supposed to be a pointer or a list of pointers to the
106 BufferViews currently being shown in the LyXView. So far
107 this is not used, but that should change pretty soon. (Lgb) */
108 BufferView * bufferview;
110 MiniBuffer * minibuffer;
114 Timeout * autosave_timeout;
118 void invalidateLayoutChoice();
125 virtual void setWindowTitle(string const &, string const &) = 0;
126 /** The last textclass layout list in the layout choice selector
127 This should probably be moved to the toolbar, but for now it's