#include "lyxlex.h"
#include "lyxrc.h"
#include "lyxrow.h"
+#include "lyxserver.h"
#include "lyxtextclasslist.h"
#include "lyxvc.h"
#include "paragraph.h"
#include "frontends/Alert.h"
#include "frontends/Dialogs.h"
#include "frontends/FileDialog.h"
+#include "frontends/FontLoader.h"
#include "frontends/lyx_gui.h"
#include "frontends/LyXKeySym.h"
#include "frontends/LyXView.h"
namespace fs = boost::filesystem;
-extern BufferList bufferlist;
-
extern boost::scoped_ptr<kb_keymap> toplevel_keymap;
// (alkis)
flag.unknown(true);
flag.enabled(false);
break;
+
default:
- flag |= lyx_gui::getStatus(cmd);
+ break;
}
if (flag.unknown()) {
// to handle (Andre')
bool enable = true;
switch (cmd.action) {
- case LFUN_TOOLTIPS_TOGGLE:
- flag.setOnOff(owner->getDialogs().tooltipsEnabled());
- break;
-
case LFUN_BUFFER_TOGGLE_READ_ONLY:
flag.setOnOff(buf->isReadonly());
break;
}
// Are we in a DELETED change-tracking region?
- if (buf && buf->params().tracking_changes
- && lookupChangeType(cur, true) == Change::DELETED
+ if (buf && lookupChangeType(cur, true) == Change::DELETED
&& !lyxaction.funcHasFlag(cmd.action, LyXAction::ReadOnly)
&& !lyxaction.funcHasFlag(cmd.action, LyXAction::NoBuffer)) {
flag.message(lyx::from_utf8(N_("This portion of the document is deleted.")));
// --- buffers ----------------------------------------
case LFUN_BUFFER_SWITCH:
- owner->setBuffer(bufferlist.getBuffer(argument));
+ owner->setBuffer(theApp->bufferList().getBuffer(argument));
break;
case LFUN_BUFFER_NEXT:
- owner->setBuffer(bufferlist.next(view()->buffer()));
+ owner->setBuffer(theApp->bufferList().next(view()->buffer()));
break;
case LFUN_BUFFER_PREVIOUS:
- owner->setBuffer(bufferlist.previous(view()->buffer()));
+ owner->setBuffer(theApp->bufferList().previous(view()->buffer()));
break;
case LFUN_FILE_NEW:
if (prefixIs(file_name, package().temp_dir())) {
// Needed by inverse dvi search. If it is a file
// in tmpdir, call the apropriated function
- owner->setBuffer(bufferlist.getBufferFromTmp(file_name));
+ owner->setBuffer(theApp->bufferList().getBufferFromTmp(file_name));
} else {
// Must replace extension of the file to be .lyx
// and get full path
string const s = changeExtension(file_name, ".lyx");
// Either change buffer or load the file
- if (bufferlist.exists(s)) {
- owner->setBuffer(bufferlist.getBuffer(s));
+ if (theApp->bufferList().exists(s)) {
+ owner->setBuffer(theApp->bufferList().getBuffer(s));
} else {
owner->loadLyXFile(s);
}
makeDisplayPath(filename) + lyx::from_ascii("..."));
view()->savePosition(0);
string const parentfilename = owner->buffer()->fileName();
- if (bufferlist.exists(filename))
- owner->setBuffer(bufferlist.getBuffer(filename));
+ if (theApp->bufferList().exists(filename))
+ owner->setBuffer(theApp->bufferList().getBuffer(filename));
else
owner->loadLyXFile(filename);
// Set the parent name of the child document.
case LFUN_SCREEN_FONT_UPDATE:
// handle the screen font changes.
lyxrc.set_font_norm_type();
- lyx_gui::update_fonts();
+ theApp->fontLoader().update();
// All visible buffers will need resize
view()->resize();
break;
owner->message(lyx::from_utf8(argument));
break;
- case LFUN_TOOLTIPS_TOGGLE:
- owner->getDialogs().toggleTooltips();
- break;
-
case LFUN_EXTERNAL_EDIT: {
FuncRequest fr(action, argument);
InsetExternal().dispatch(view()->cursor(), fr);
if (filename.empty()) {
filename = addName(lyxrc.document_path,
"newfile" + convert<string>(++newfile_number) + ".lyx");
- while (bufferlist.exists(filename) || fs::is_readable(filename)) {
+ while (theApp->bufferList().exists(filename) || fs::is_readable(filename)) {
++newfile_number;
filename = addName(lyxrc.document_path,
"newfile" + convert<string>(newfile_number) +
string const lyxfile = changeExtension(filename, ".lyx");
// Check if the document already is open
- if (lyx_gui::use_gui && bufferlist.exists(lyxfile)) {
- if (!bufferlist.close(bufferlist.getBuffer(lyxfile), true)) {
+ if (lyx_gui::use_gui && theApp->bufferList().exists(lyxfile)) {
+ if (!theApp->bufferList().close(theApp->bufferList().getBuffer(lyxfile), true)) {
owner->message(_("Canceled."));
return;
}
// save current cursor position
LyX::ref().session().saveFilePosition(owner->buffer()->fileName(),
boost::tie(view()->cursor().pit(), view()->cursor().pos()) );
- if (bufferlist.close(owner->buffer(), true) && !quitting) {
- if (bufferlist.empty()) {
+ if (theApp->bufferList().close(owner->buffer(), true) && !quitting) {
+ if (theApp->bufferList().empty()) {
// need this otherwise SEGV may occur while
// trying to set variables that don't exist
// since there's no current buffer
owner->getDialogs().hideBufferDependent();
} else {
- owner->setBuffer(bufferlist.first());
+ owner->setBuffer(theApp->bufferList().first());
}
}
}