#include <config.h>
-#include <fstream>
-#include <algorithm>
-#include <utility>
-#include <iostream>
-
#include "lyx_cb.h"
-#include "lyx_gui_misc.h"
#include "lyx_main.h"
#include "buffer.h"
#include "bufferlist.h"
#include "LyXView.h"
#include "lyxrc.h"
#include "lyxtext.h"
+#include "gettext.h"
+#include "BufferView.h"
+#include "lyxtextclasslist.h"
+
+#include "insets/insetlabel.h"
+
+#include "frontends/Alert.h"
#include "frontends/FileDialog.h"
#include "frontends/GUIRunTime.h"
-#include "insets/insetlabel.h"
+
#include "support/FileInfo.h"
#include "support/filetools.h"
#include "support/path.h"
#include "support/syscall.h"
#include "support/lstrings.h"
-#include "gettext.h"
-#include "BufferView.h"
+
+#include <fstream>
+#include <algorithm>
+#include <utility>
+#include <iostream>
using std::vector;
using std::ifstream;
string const & msg2,
string const & msg3)
{
- if (lyxrc.use_gui) {
- string const str = msg1 + ' ' + msg2 + ' ' + msg3;
- buf->getUser()->owner()->message(str);
+ if (lyxrc.use_gui
+ && buf && buf->getUser() && buf->getUser()->owner()) {
+ string const str = msg1 + ' ' + msg2 + ' ' + msg3;
+ buf->getUser()->owner()->message(str);
} else
lyxerr << msg1 << msg2 << msg3 << endl;
}
XFlush(GUIRunTime::x11Display());
if (!buffer->save()) {
- string const fname = buffer->fileName();
- string const s = MakeAbsPath(fname);
- if (AskQuestion(_("Save failed. Rename and try again?"),
- MakeDisplayPath(s, 50),
+ if (Alert::askQuestion(_("Save failed. Rename and try again?"),
+ MakeDisplayPath(buffer->fileName(), 50),
_("(If not, document is not saved.)"))) {
return WriteAs(bv, buffer);
}
bool WriteAs(BufferView * bv, Buffer * buffer, string const & filename)
{
string fname = buffer->fileName();
- string oldname = fname;
+ string const oldname = fname;
if (filename.empty()) {
FileDialog fileDlg(bv->owner(),
_("Choose a filename to save document as"),
LFUN_WRITEAS,
- make_pair(string(_("Documents")),
+ make_pair(string(_("Documents|#o#O")),
string(lyxrc.document_path)),
- make_pair(string(_("Templates")),
+ make_pair(string(_("Templates|#T#t")),
string(lyxrc.template_path)));
if (!IsLyXFilename(fname))
// Same name as we have already?
if (!buffer->isUnnamed() && fname == oldname) {
- if (!AskQuestion(_("Same name as document already has:"),
+ if (!Alert::askQuestion(_("Same name as document already has:"),
MakeDisplayPath(fname, 50),
_("Save anyway?")))
return false;
}
// No, but do we have another file with this name open?
else if (!buffer->isUnnamed() && bufferlist.exists(fname)) {
- if (AskQuestion(_("Another document with same name open!"),
+ if (Alert::askQuestion(_("Another document with same name open!"),
MakeDisplayPath(fname, 50),
_("Replace with current document?")))
{
} // Check whether the file exists
else {
FileInfo const myfile(fname);
- if (myfile.isOK() && !AskQuestion(_("Document already exists:"),
+ if (myfile.isOK() && !Alert::askQuestion(_("Document already exists:"),
MakeDisplayPath(fname, 50),
_("Replace file?")))
return false;
int ret;
if (buffer->isSGML()) {
- WriteAlert(_("Chktex does not work with SGML derived documents."));
+ Alert::alert(_("Chktex does not work with SGML derived documents."));
return 0;
} else
ret = buffer->runChktex();
s = _("No warnings found.");
} else if (ret == 1) {
s = _("One warning found.");
- t = _("Use 'Edit->Go to Error' to find it.");
+ t = _("Use `Navigate->Error' to find it.");
} else {
s += tostr(ret);
s += _(" warnings found.");
- t = _("Use 'Edit->Go to Error' to find them.");
+ t = _("Use `Navigate->Error' to find them.");
}
- WriteAlert(_("Chktex run successfully"), s, t);
+ Alert::alert(_("Chktex run successfully"), s, t);
} else {
- WriteAlert(_("Error!"), _("It seems chktex does not work."));
+ Alert::alert(_("Error!"), _("It seems chktex does not work."));
}
return ret;
}
bv->owner()->message(_("Autosaving current document..."));
// create autosave filename
- string fname = OnlyPath(bv->buffer()->fileName());
+ string fname = bv->buffer()->filePath();
fname += "#";
fname += OnlyFilename(bv->buffer()->fileName());
fname += "#";
FileDialog fileDlg(bv->owner(), _("Select file to insert"),
(asParagraph) ? LFUN_FILE_INSERT_ASCII_PARA : LFUN_FILE_INSERT_ASCII);
- FileDialog::Result result = fileDlg.Select(bv->owner()->buffer()->filepath);
+ FileDialog::Result result = fileDlg.Select(bv->owner()->buffer()->filePath());
if (result.first == FileDialog::Later)
return;
FileInfo fi(fname);
if (!fi.readable()) {
- WriteFSAlert(_("Error! Specified file is unreadable: "),
+ Alert::err_alert(_("Error! Specified file is unreadable: "),
MakeDisplayPath(fname, 50));
return;
}
ifstream ifs(fname.c_str());
if (!ifs) {
- WriteFSAlert(_("Error! Cannot open specified file: "),
+ Alert::err_alert(_("Error! Cannot open specified file: "),
MakeDisplayPath(fname, 50));
return;
}
string label(arg);
bv->owner()->prohibitInput();
if (label.empty()) {
- Paragraph * par = bv->text->cursor.par();
+ Paragraph * par = bv->getLyXText()->cursor.par();
LyXLayout const * layout =
&textclasslist.Style(bv->buffer()->params.textclass,
par->getLayout());
}
pair<bool, string> result =
- askForText(_("Enter new label to insert:"), text);
+ Alert::askForText(_("Enter new label to insert:"), text);
if (result.first) {
label = frontStrip(strip(result.second));
}
}
-void MenuLayoutSave(BufferView * bv)
-{
- if (!bv->available())
- return;
-
- if (AskQuestion(_("Do you want to save the current settings"),
- _("for document layout"),
- _("as default for new documents?")))
- bv->buffer()->saveParamsAsDefaults();
-}
-
-
// This function runs "configure" and then rereads lyx.defaults to
// reconfigure the automatic settings.
void Reconfigure(BufferView * bv)
p.pop();
bv->owner()->message(_("Reloading configuration..."));
lyxrc.read(LibFileSearch(string(), "lyxrc.defaults"));
- WriteAlert(_("The system has been reconfigured."),
+ Alert::alert(_("The system has been reconfigured."),
_("You need to restart LyX to make use of any"),
_("updated document class specifications."));
}