X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Ffrontends%2FLyXView.h;h=3f2acfe95291dbca68a52f3b98545aa28d117c78;hb=558e849e692cc72ea74ac3859405b85e54c6e315;hp=31cec1ae92d6c8fc4d10b07dafcfe2d08f470059;hpb=1eb8155fa0d2253d9504a8d660cb3d666c1224f6;p=lyx.git diff --git a/src/frontends/LyXView.h b/src/frontends/LyXView.h index 31cec1ae92..3f2acfe952 100644 --- a/src/frontends/LyXView.h +++ b/src/frontends/LyXView.h @@ -4,23 +4,15 @@ * This file is part of LyX, the document processor. * Licence details can be found in the file COPYING. * - * \author Lars Gullik Bjønnes - * \author John Levon + * \author Lars Gullik Bjønnes + * \author John Levon * - * Full author contact details are available in file CREDITS + * Full author contact details are available in file CREDITS. */ #ifndef LYXVIEW_H #define LYXVIEW_H -#ifdef __GNUG__ -#pragma interface -#endif - -#include "LString.h" - -#include "support/types.h" - #include #include #include @@ -28,10 +20,10 @@ #include class Buffer; -class Toolbar; +class Toolbars; +class InsetBase; class Intl; class Menubar; -class ControlCommandBuffer; class BufferView; class Dialogs; @@ -40,6 +32,12 @@ class LyXFont; class Timeout; class FuncRequest; +namespace lyx { +namespace frontend { +class ControlCommandBuffer; +} // namespace frontend +} // namespace lyx + /** * LyXView - main LyX window * @@ -67,10 +65,8 @@ public: */ void init(); - /// start modal operation - virtual void prohibitInput() const = 0; - /// end modal operation - virtual void allowInput() const = 0; + /// show busy cursor + virtual void busy(bool) const = 0; //@{ generic accessor functions @@ -89,9 +85,9 @@ public: LyXFunc const & getLyXFunc() const { return *lyxfunc_.get(); } /// return the toolbar for this view - Toolbar & getToolbar() { return *toolbar_.get(); } + Toolbars & getToolbars() { return *toolbars_.get(); } /// - Toolbar const & getToolbar() const { return *toolbar_.get(); } + Toolbars const & getToolbasr() const { return *toolbars_.get(); } /// return the menubar for this view Menubar & getMenubar() { return *menubar_.get(); } @@ -111,23 +107,26 @@ public: //@} /// sets the layout in the toolbar layout selection - void setLayout(string const & layout); + void setLayout(std::string const & layout); /// updates the possible layouts selectable void updateLayoutChoice(); /// update the toolbar - void updateToolbar(); + void updateToolbars(); /// update the menubar void updateMenubar(); /// focus the command buffer (minibuffer) boost::signal0 focus_command_buffer; - + /// view state string changed boost::signal0 view_state_changed; /// display a message in the view - virtual void message(string const &) = 0; + virtual void message(std::string const &) = 0; + + /// clear any temporary message and replace with current status + virtual void clearMessage() = 0; /// updates the title of the window void updateWindowTitle(); @@ -136,16 +135,19 @@ public: void resetAutosaveTimer(); /// dispatch to current BufferView - void dispatch(FuncRequest const & req); - + void dispatch(FuncRequest const & cmd); + + /** redraw \c inset in all the BufferViews in which it is currently + * visible. If successful return a pointer to the owning Buffer. + */ + Buffer const * const updateInset(InsetBase const *) const; + protected: /// view of a buffer. Eventually there will be several. boost::shared_ptr bufferview_; /// view's menubar boost::scoped_ptr menubar_; - /// view's toolbar - boost::scoped_ptr toolbar_; private: /** @@ -153,11 +155,13 @@ private: * @param t main window title * @param it iconified (short) title */ - virtual void setWindowTitle(string const & t, string const & it) = 0; + virtual void setWindowTitle(std::string const & t, std::string const & it) = 0; /// called on timeout void autoSave(); + /// view's toolbar + boost::scoped_ptr toolbars_; /// keyboard mapping object boost::scoped_ptr const intl_; /// auto-saving of buffers @@ -171,7 +175,10 @@ protected: /// view's command buffer controller // this has to be declared _after_ lyxfunc_ as its initialization depends // on it! - boost::scoped_ptr const controlcommand_; + typedef boost::scoped_ptr + CommandBufferPtr; + + CommandBufferPtr const controlcommand_; }; #endif // LYXVIEW_H