4 * This file is part of LyX, the document processor.
5 * Licence details can be found in the file COPYING.
9 * Full author contact details are available in file CREDITS.
16 #include "FuncStatus.h"
18 #include <boost/function.hpp>
28 class LyXServerSocket;
34 /// are we using the GUI at all
37 /// return a suitable serif font name (called from non-gui context too !)
38 std::string const roman_font_name();
40 /// return a suitable sans serif font name (called from non-gui context too !)
41 std::string const sans_font_name();
43 /// return a suitable monospaced font name (called from non-gui context too !)
44 std::string const typewriter_font_name();
46 /// parse command line and do basic initialisation
47 void parse_init(int & argc, char * argv[]);
50 * set up GUI parameters. At this point lyxrc may
56 * Start the main event loop, after executing the given
57 * batch commands, and loading the given documents
59 void start(std::string const & batch, std::vector<std::string> const & files);
62 * Synchronise all pending events.
72 * return the status flag for a given action. This can be used to tell
73 * that a given lfun is not implemented by a frontend
75 FuncStatus getStatus(FuncRequest const & ev);
77 /** Eg, passing LColor::black returns "000000",
78 * passing LColor::white returns "ffffff".
80 std::string const hexname(LColor_color col);
83 * update an altered GUI color
85 void update_color(LColor_color col);
88 * update the font cache
93 * is the given font available ?
95 bool font_available(LyXFont const & font);
98 * add a callback for socket read notification
99 * @param fd socket descriptor (file/socket/etc)
101 void register_socket_callback(int fd, boost::function<void()> func);
104 * remove a I/O read callback
105 * @param fd socket descriptor (file/socket/etc)
107 void unregister_socket_callback(int fd);
109 } // namespace lyx_gui