X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Ffrontends%2Flyx_gui.h;h=153c46fa5421b808323ce76791a6bbbb46b4ab5e;hb=558e849e692cc72ea74ac3859405b85e54c6e315;hp=0ebcebbb093f368da70583c9b9f406e190f7a30d;hpb=dd9b8de435497ce405d5dd1615dc2dc2d3ab3e63;p=lyx.git diff --git a/src/frontends/lyx_gui.h b/src/frontends/lyx_gui.h index 0ebcebbb09..153c46fa54 100644 --- a/src/frontends/lyx_gui.h +++ b/src/frontends/lyx_gui.h @@ -6,23 +6,43 @@ * * \author John Levon * - * Full author contact details are available in file CREDITS + * Full author contact details are available in file CREDITS. */ #ifndef LYX_GUI_H #define LYX_GUI_H -#include "LColor.h" -#include "LString.h" + +#include "FuncStatus.h" + +#include + +#include #include class Dialogs; +class LColor_color; class LyXFont; class LyXComm; +class LyXDataSocket; +class LyXServerSocket; +class FuncRequest; /// GUI interaction namespace lyx_gui { +/// are we using the GUI at all +extern bool use_gui; + +/// return a suitable serif font name (called from non-gui context too !) +std::string const roman_font_name(); + +/// return a suitable sans serif font name (called from non-gui context too !) +std::string const sans_font_name(); + +/// return a suitable monospaced font name (called from non-gui context too !) +std::string const typewriter_font_name(); + /// parse command line and do basic initialisation void parse_init(int & argc, char * argv[]); @@ -36,22 +56,33 @@ void parse_lyxrc(); * Start the main event loop, after executing the given * batch commands, and loading the given documents */ -void start(string const & batch, std::vector const & files); +void start(std::string const & batch, std::vector const & files); + +/** + * Synchronise all pending events. + */ +void sync_events(); /** * quit running LyX */ void exit(); +/** + * return the status flag for a given action. This can be used to tell + * that a given lfun is not implemented by a frontend + */ +FuncStatus getStatus(FuncRequest const & ev); + /** Eg, passing LColor::black returns "000000", * passing LColor::white returns "ffffff". */ -string const hexname(LColor::color col); +std::string const hexname(LColor_color col); /** * update an altered GUI color */ -void update_color(LColor::color col); +void update_color(LColor_color col); /** * update the font cache @@ -64,14 +95,16 @@ void update_fonts(); bool font_available(LyXFont const & font); /** - * add a callback for I/O read notification + * add a callback for socket read notification + * @param fd socket descriptor (file/socket/etc) */ -void set_read_callback(int fd, LyXComm * comm); +void register_socket_callback(int fd, boost::function func); /** * remove a I/O read callback + * @param fd socket descriptor (file/socket/etc) */ -void remove_read_callback(int fd); +void unregister_socket_callback(int fd); } // namespace lyx_gui