#include "support/strfwd.h"
+#include <vector>
+
namespace lyx {
class BufferList;
class FuncRequest;
class FuncStatus;
class KeyMap;
+class LaTeXFonts;
class Messages;
class Mover;
class Movers;
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;
}
-namespace graphics {
-class Previews;
-}
-
/// initial startup
class LyX {
+ friend class LyXConsoleApp;
public:
-
LyX();
~LyX();
*/
int init(int & argc, char * argv[]);
+ /// Execute commandline commands if no GUI was requested.
+ int execWithoutGui(int & argc, char * argv[]);
+
/// Execute batch commands if available.
void execCommands();
*/
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.
bool first_start;
friend FuncStatus getStatus(FuncRequest const & action);
- friend void dispatch(FuncRequest const & action);
+ friend DispatchResult const & dispatch(FuncRequest const & action);
friend void dispatch(FuncRequest const & action, DispatchResult & dr);
+ friend std::vector<std::string> & theFilesToLoad();
friend BufferList & theBufferList();
friend Server & theServer();
friend ServerSocket & theServerSocket();
friend Messages const & getGuiMessages();
friend KeyMap & theTopLevelKeymap();
friend Movers & theMovers();
- friend Mover const & getMover(std::string const & fmt);
+ 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 SpellChecker * theSpellChecker();
friend void setSpellChecker();
- friend void setRcGuiLanguage();
friend void emergencyCleanup();
friend void execBatchCommands();
friend void lyx_exit(int exit_code);
/// \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);
+DispatchResult const & dispatch(FuncRequest const & action);
///
void dispatch(FuncRequest const & action, DispatchResult & dr);
} // namespace lyx
#endif // LYX_H
-