#include "buffer_funcs.h"
#include "BufferList.h"
#include "Converter.h"
+#include "CutAndPaste.h"
#include "debug.h"
#include "Encoding.h"
#include "ErrorList.h"
}
-Buffer const * const LyX::updateInset(Inset const * inset) const
+Buffer const * LyX::updateInset(Inset const * inset) const
{
if (quitting || !inset)
return 0;
return !final_success;
}
- // Force adding of font path _before_ Application is initialized
- support::os::addFontResources();
-
// Let the frontend parse and remove all arguments that it knows
pimpl_->application_.reset(createApplication(argc, argv));
prepareExit();
- // Restore original font resources after Application is destroyed.
- support::os::restoreFontResources();
-
return exit_status;
}
void LyX::prepareExit()
{
+ // Clear the clipboard and selection stack:
+ cap::clearCutStack();
+ cap::clearSelection();
+
// Set a flag that we do quitting from the program,
// so no refreshes are necessary.
quitting = true;
// aknowledged.
restoreGuiSession();
+ // if reconfiguration is needed.
+ if (textclasslist.empty()) {
+ switch (Alert::prompt(
+ _("No textclass is found"),
+ _("LyX cannot continue because no textclass is found. "
+ "You can either reconfigure normally, or reconfigure using "
+ "default textclasses, or quit LyX."),
+ 0, 2,
+ _("&Reconfigure"),
+ _("&Use Default"),
+ _("&Exit LyX")))
+ {
+ case 0:
+ // regular reconfigure
+ pimpl_->lyxfunc_.dispatch(FuncRequest(LFUN_RECONFIGURE, ""));
+ break;
+ case 1:
+ // reconfigure --without-latex-config
+ pimpl_->lyxfunc_.dispatch(FuncRequest(LFUN_RECONFIGURE,
+ " --without-latex-config"));
+ break;
+ }
+ pimpl_->lyxfunc_.dispatch(FuncRequest(LFUN_LYX_QUIT));
+ return;
+ }
+
// Execute batch commands if available
if (batch_command.empty())
return;
{
LyXView * view = newLyXView();
+ // if there is no valid class list, do not load any file.
+ if (textclasslist.empty())
+ return;
+
// if some files were specified at command-line we assume that the
// user wants to edit *these* files and not to restore the session.
if (!pimpl_->files_to_load_.empty()) {