]> git.lyx.org Git - lyx.git/blobdiff - src/frontends/lyx_gui.h
enable Font cache only for MacOSX and inline width() for other platform.
[lyx.git] / src / frontends / lyx_gui.h
index 2e768400b68627f4767de5a538bdc69c6f0db520..50628c2d877448b74f6b1c42c86f4ebbb54a991e 100644 (file)
 #ifndef LYX_GUI_H
 #define LYX_GUI_H
 
-#include "LColor.h"
-#include "support/std_string.h"
+
 #include "FuncStatus.h"
 
+#include <boost/function.hpp>
+
+#include <string>
 #include <vector>
 
 class Dialogs;
+class LColor_color;
 class LyXFont;
 class LyXComm;
 class FuncRequest;
+class LyXView;
+namespace lyx {
+struct RGBColor;
+}
 
 /// GUI interaction
 namespace lyx_gui {
@@ -29,18 +36,6 @@ 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 !)
-string const roman_font_name();
-
-/// return a suitable sans serif font name (called from non-gui context too !)
-string const sans_font_name();
-
-/// return a suitable monospaced font name (called from non-gui context too !)
-string const typewriter_font_name();
-
-/// parse command line and do basic initialisation
-void parse_init(int & argc, char * argv[]);
-
 /**
  * set up GUI parameters. At this point lyxrc may
  * be used.
@@ -48,57 +43,49 @@ void parse_init(int & argc, char * argv[]);
 void parse_lyxrc();
 
 /**
- * Start the main event loop, after executing the given
- * batch commands, and loading the given documents
+ * Enter the main event loop (\sa LyX::exec2)
  */
-void start(string const & batch, std::vector<string> const & files);
+int exec(int & argc, char * argv[]);
 
 /**
  * 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);
-
 /**
- * update an altered GUI color
+ * Given col, fills r, g, b in the range 0-255.
+ * The function returns true if successful.
+ * It returns false on failure and sets r, g, b to 0.
  */
-void update_color(LColor::color col);
+bool getRGBColor(LColor_color col, lyx::RGBColor & rgbcol);
 
-/**
- * update the font cache
+/** Eg, passing LColor::black returns "000000",
+ *      passing LColor::white returns "ffffff".
  */
-void update_fonts();
+std::string const hexname(LColor_color col);
 
 /**
- * is the given font available ?
+ * update an altered GUI color
  */
-bool font_available(LyXFont const & font);
+void update_color(LColor_color col);
 
 /**
- * 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<void()> func);
 
 /**
  * remove a I/O read callback
- * @param fd file descriptor
+ * @param fd socket descriptor (file/socket/etc)
  */
-void remove_read_callback(int fd);
+void unregister_socket_callback(int fd);
 
 } // namespace lyx_gui