]> git.lyx.org Git - lyx.git/blobdiff - src/LyX.h
Cmake build: support tests
[lyx.git] / src / LyX.h
index c27e2045cf056399596fb69bc680b9ab6ac12b85..af43edc2d0bc039d125d6ce3d1aca043f4ed844a 100644 (file)
--- a/src/LyX.h
+++ b/src/LyX.h
 
 #include "support/strfwd.h"
 
+#include <vector>
+
 namespace lyx {
 
 class BufferList;
 class CmdDef;
 class Converters;
+class DispatchResult;
 class ErrorItem;
 class FuncRequest;
 class FuncStatus;
 class KeyMap;
-class LyXFunc;
+class LaTeXFonts;
 class Messages;
 class Mover;
 class Movers;
 class Server;
 class ServerSocket;
 class Session;
+class SpellChecker;
+
+enum RunMode {
+       NEW_INSTANCE,
+       USE_REMOTE,
+       PREFERRED
+};
+
+enum OverwriteFiles {
+       NO_FILES,
+       MAIN_FILE,
+       ALL_FILES,
+       UNSPECIFIED
+};
 
 extern bool use_gui;
+extern RunMode run_mode;
+extern OverwriteFiles force_overwrite;
 
 namespace frontend {
 class Application;
-class LyXView;
-}
-
-namespace graphics {
-class Previews;
 }
 
 /// initial startup
@@ -54,9 +68,6 @@ public:
        /// Execute LyX.
        int exec(int & argc, char * argv[]);
 
-       ///
-       frontend::LyXView * newLyXView();
-
 private:
        /// noncopyable
        LyX(LyX const &);
@@ -94,7 +105,9 @@ private:
         */
        bool queryUserLyXDir(bool explicit_userdir);
        /// read lyxrc/preferences
-       bool readRcFile(std::string const & name);
+       /// \param check_format: whether to try to convert the format of
+       /// the file, if there is a mismatch.
+       bool readRcFile(std::string const & name, bool check_format = false);
        /// read the given languages file
        bool readLanguagesFile(std::string const & name);
        /// read the encodings.
@@ -120,24 +133,26 @@ private:
 
        friend FuncStatus getStatus(FuncRequest const & action);
        friend void dispatch(FuncRequest const & action);
+       friend void dispatch(FuncRequest const & action, DispatchResult & dr);
+       friend std::vector<std::string> & theFilesToLoad();
        friend BufferList & theBufferList();
-       friend LyXFunc & theLyXFunc();
        friend Server & theServer();
        friend ServerSocket & theServerSocket();
        friend Converters & theConverters();
        friend Converters & theSystemConverters();
-       friend Messages & getMessages(std::string const & language);
-       friend Messages & getGuiMessages();
+       friend Messages const & getMessages(std::string const & language);
+       friend Messages const & getGuiMessages();
        friend KeyMap & theTopLevelKeymap();
        friend Movers & theMovers();
        friend Mover const & getMover(std::string  const & fmt);
        friend void setMover(std::string const & fmt, std::string const & command);
        friend Movers & theSystemMovers();
        friend frontend::Application * theApp();
-       friend graphics::Previews & thePreviews();
        friend Session & theSession();
+       friend LaTeXFonts & theLaTeXFonts();
        friend CmdDef & theTopLevelCmdDef();
-       friend void setRcGuiLanguage();
+       friend SpellChecker * theSpellChecker();
+       friend void setSpellChecker();
        friend void emergencyCleanup();
        friend void execBatchCommands();
        friend void lyx_exit(int exit_code);
@@ -150,11 +165,19 @@ void emergencyCleanup();
 /// \p exit_code is 0 by default, if a non zero value is passed,
 /// emergencyCleanup() will be called before exiting.
 void lyx_exit(int exit_code);
-/// Set the language defined by the user.
-void setRcGuiLanguage();
 /// Execute batch commands if available.
 void execBatchCommands();
 
+///
+FuncStatus getStatus(FuncRequest const & action);
+
+///
+void dispatch(FuncRequest const & action);
+
+///
+void dispatch(FuncRequest const & action, DispatchResult & dr);
+
 } // namespace lyx
 
 #endif // LYX_H
+