- /// Create the main window with given geometry settings.
- /// \param geometry_arg: only for Windows platform.
- virtual LyXView & createView(std::string const & geometry_arg) = 0;
-
- ///
- LyXView const * currentView() const { return current_view_; }
- ///
- LyXView * currentView() { return current_view_; }
- ///
- void setCurrentView(LyXView & view) { current_view_ = &view; }
-
-private:
- /// This LyXView is the one receiving Clipboard and Selection
- /// events
- LyXView * current_view_;
+ virtual bool searchMenu(FuncRequest const & func,
+ docstring_list & names) const = 0;
+
+ /// \return the icon file name for the given action.
+ static docstring iconName(FuncRequest const & f, bool unknown);
+ /// \return the math icon name for the given command.
+ static docstring mathIcon(docstring const & c);
+
+ /// Handle a accented char key sequence
+ /// FIXME: this is only needed for LFUN_ACCENT_* in Text::dispatch()
+ virtual void handleKeyFunc(FuncCode action) = 0;
+
+ /// Start a long operation with some cancel possibility (button or ESC)
+ virtual void startLongOperation() = 0;
+ /// This needs to be periodically called to avoid freezing the GUI
+ virtual bool longOperationCancelled() = 0;
+ /// Stop the long operation mode (i.e., release the GUI)
+ virtual void stopLongOperation() = 0;
+ /// A started long operation is still in progress ?
+ virtual bool longOperationStarted() = 0;
+
+ // Add a buffer to the current view, do not switch to it.
+ virtual bool unhide(Buffer * buf) = 0;