#include "gettext.h"
#include "kbmap.h"
+using std::endl;
+
extern void LoadLyXFile(string const &);
string system_lyxdir;
// Initialization of LyX (reads lyxrc and more)
lyxerr[Debug::INIT] << "Initializing LyX::init..." << endl;
- init(argc, argv);
+ init(argc, argv, gui);
lyxerr[Debug::INIT] << "Initializing LyX::init...done" << endl;
lyxGUI->init();
if (last_loaded != 0) {
lyxerr.debug() << "Yes we loaded some files." << endl;
- lyxGUI->regBuf(last_loaded);
+ if (lyxrc.use_gui)
+ lyxGUI->regBuf(last_loaded);
}
// Execute batch commands if available
extern "C" void error_handler(int err_sig);
-void LyX::init(int */*argc*/, char **argv)
+void LyX::init(int */*argc*/, char **argv, bool gui)
{
// Install the signal handlers
signal(SIGHUP, error_handler);
lyxrc.lastfiles = AddName(user_lyxdir, "lastfiles");
}
- // Calculate screen dpi as average of x-DPI and y-DPI:
- Screen * scr = DefaultScreenOfDisplay(fl_get_display());
- lyxrc.dpi = ((HeightOfScreen(scr)* 25.4 / HeightMMOfScreen(scr)) +
- (WidthOfScreen(scr)* 25.4 / WidthMMOfScreen(scr))) / 2;
- lyxerr[Debug::INFO] << "DPI setting detected to be "
- << lyxrc.dpi + 0.5 << endl;
+ // Disable gui when either lyxrc or easyparse says so
+ if (!gui)
+ lyxrc.use_gui = false;
+
+ // Calculate screen dpi as average of x-DPI and y-DPI:
+ if (lyxrc.use_gui) {
+ lyxrc.dpi = getScreenDPI();
+ lyxerr[Debug::INFO] << "DPI setting detected to be "
+ << lyxrc.dpi + 0.5 << endl;
+ } else {
+ lyxrc.dpi = 1; // I hope this is safe
+ }
//
// Read configuration files
Debug::showTags(lyxerr);
exit(0);
}
-
}
// Check for "-sysdir"
else if (arg == "-sysdir") {
commandLineHelp();
exit(0);
}
- // Check for "-nw": No window
- else if (arg == "-nw") {
- gui = false;
- }
+ // Check for "-nw": No XWindows as for emacs this should
+ // give a LyX that could be used in a terminal window.
+ //else if (arg == "-nw") {
+ // gui = false;
+ //}
// Check for "-x": Execute commands
else if (arg == "-x" || arg == "--execute") {
lyxerr << _("Unknown file type '")
<< type << _("' after ")
<< arg << _(" switch!") << endl;
- }
- else
+ } else
lyxerr << _("Missing file type [eg latex, "
"ps...] after ")
<< arg << _(" switch!") << endl;
}
+extern "C"
void error_handler(int err_sig)
{
switch (err_sig) {