#include "support/strfwd.h"
-#include <boost/function.hpp>
+#include <functional>
#include <vector>
|
GuiView-1 (one or more in case of split-view mode).
| |
- | <tab-widget-1-1>
+ | <tab-widget-1-1>
| | |
| | WorkArea-1-1-1 (M1-1 WorkAreas, M1-1 <= N)
| | | |
| | | |
| | | Cursor
| |
- | <tab-widget-1-2>
+ | <tab-widget-1-2>
|
GuiView-2 (one or more in case of split-view mode).
| |
/// Every user command is processed here, either invocated from
/// keyboard or from the GUI. All GUI objects, including buttons and
/// menus should use this class and never call kernel functions directly.
- virtual void dispatch(FuncRequest const &) = 0;
+ virtual DispatchResult const & dispatch(FuncRequest const &) = 0;
/// LyX dispatcher: executes lyx actions and returns result.
virtual void dispatch(FuncRequest const &, DispatchResult & dr) = 0;
///
virtual FuncStatus getStatus(FuncRequest const & cmd) const = 0;
- ///
- virtual void resetGui() = 0;
-
/// Load files and restore GUI Session.
virtual void restoreGuiSession() = 0;
- ///
- virtual void hideDialogs(std::string const & name, Inset * inset) const = 0;
///
virtual Buffer const * updateInset(Inset const * inset) const = 0;
* It returns false on failure and sets r, g, b to 0.
*/
virtual bool getRgbColor(ColorCode col, RGBColor & rgbcol) = 0;
+ /// Like getRgbColor(), but static and slower
+ static bool getRgbColorUncached(ColorCode col, RGBColor & rgbcol);
/** Eg, passing Color_black returns "000000",
* passing Color_white returns "ffffff".
*/
virtual std::string const hexName(ColorCode col) = 0;
-
+
/**
* add a callback for socket read notification
* @param fd socket descriptor (file/socket/etc)
*/
- typedef boost::function<void()> SocketCallback;
+ typedef std::function<void()> SocketCallback;
virtual void registerSocketCallback(int fd, SocketCallback func) = 0;
/**
docstring_list & names) const = 0;
/// \return the icon file name for the given action.
- virtual docstring iconName(FuncRequest const & f, bool unknown) = 0;
+ 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;
};
/// Return the list of loadable formats.
frontend::Application * theApp();
frontend::Application * createApplication(int & argc, char * argv[]);
void hideDialogs(std::string const & name, Inset * inset);
+/// Set locale correctly using LyXRC::gui_language
+void setLocale();
} // namespace lyx