*
* \author John Levon
*
- * Full author contact details are available in file CREDITS
+ * Full author contact details are available in file CREDITS.
*/
#include <config.h>
#include "Alert.h"
+#include "Alert_pimpl.h"
#include "debug.h"
-#include "lyxrc.h"
-
-#include "Alert_pimpl.h"
+#include "lyx_main.h" // for lyx::use_gui
using std::endl;
-using std::pair;
using std::make_pair;
+using std::pair;
+using std::string;
-void Alert::alert(string const & s1, string const & s2, string const & s3)
-{
- if (!lyxrc.use_gui) {
- lyxerr << "------------------------------" << endl
- << s1 << endl << s2 << endl << s3 << endl
- << "------------------------------" << endl;
- } else {
- alert_pimpl(s1, s2, s3);
- }
-}
+namespace lyx {
+
+namespace frontend {
-int Alert::prompt(string const & title, string const & question,
- int default_button,
- string const & b1, string const & b2, string const & b3)
+int Alert::prompt(docstring const & title, docstring const & question,
+ int default_button, int escape_button,
+ docstring const & b1, docstring const & b2, docstring const & b3)
{
- if (lyxrc.use_gui)
- return prompt_pimpl(title, question, default_button, b1, b2, b3);
-
- lyxerr << title << endl;
- lyxerr << "----------------------------------------" << endl;
- lyxerr << question << endl;
- lyxerr << "Assuming answer is ";
- switch (default_button) {
- case 0: lyxerr << b1 << endl;
- case 1: lyxerr << b2 << endl;
- case 2: lyxerr << b3 << endl;
+ if (!use_gui || lyxerr.debugging()) {
+ lyxerr << to_utf8(title) << '\n'
+ << "----------------------------------------\n"
+ << to_utf8(question) << endl;
+
+ lyxerr << "Assuming answer is ";
+ switch (default_button) {
+ case 0: lyxerr << to_utf8(b1) << endl;
+ case 1: lyxerr << to_utf8(b2) << endl;
+ case 2: lyxerr << to_utf8(b3) << endl;
+ }
+ if (!use_gui)
+ return default_button;
}
- return default_button;
+
+ return prompt_pimpl(title, question,
+ default_button, escape_button, b1, b2, b3);
+
}
-void Alert::warning(string const & title, string const & message)
+void Alert::warning(docstring const & title, docstring const & message)
{
- if (lyxrc.use_gui)
- return warning_pimpl(title, message);
-
- lyxerr << "Warning: " << title << endl;
- lyxerr << "----------------------------------------" << endl;
- lyxerr << message << endl;
+ if (!use_gui || lyxerr.debugging())
+ lyxerr << "Warning: " << to_utf8(title) << '\n'
+ << "----------------------------------------\n"
+ << to_utf8(message) << endl;
+ if (use_gui)
+ warning_pimpl(title, message);
}
-void Alert::error(string const & title, string const & message)
+void Alert::error(docstring const & title, docstring const & message)
{
- if (lyxrc.use_gui)
- return error_pimpl(title, message);
+ if (!use_gui || lyxerr.debugging())
+ lyxerr << "Error: " << to_utf8(title) << '\n'
+ << "----------------------------------------\n"
+ << to_utf8(message) << endl;
- lyxerr << "Error: " << title << endl;
- lyxerr << "----------------------------------------" << endl;
- lyxerr << message << endl;
+ if (use_gui)
+ error_pimpl(title, message);
}
-void Alert::information(string const & title, string const & message)
+void Alert::information(docstring const & title, docstring const & message)
{
- if (lyxrc.use_gui)
- return information_pimpl(title, message);
+ if (!use_gui || lyxerr.debugging())
+ lyxerr << to_utf8(title) << '\n'
+ << "----------------------------------------\n"
+ << to_utf8(message) << endl;
- lyxerr << title << endl;
- lyxerr << "----------------------------------------" << endl;
- lyxerr << message << endl;
+ if (use_gui)
+ information_pimpl(title, message);
}
-pair<bool, string> const Alert::askForText(string const & msg,
- string const & dflt)
+pair<bool, docstring> const Alert::askForText(docstring const & msg,
+ docstring const & dflt)
{
- if (!lyxrc.use_gui) {
- lyxerr << "----------------------------------------" << endl
- << msg << endl
- << "Assuming answer is " << dflt
+ if (!use_gui || lyxerr.debugging()) {
+ lyxerr << "----------------------------------------\n"
+ << to_utf8(msg) << '\n'
+ << "Assuming answer is " << to_utf8(dflt) << '\n'
<< "----------------------------------------" << endl;
- return make_pair<bool, string>(true, dflt);
- } else {
- return askForText_pimpl(msg, dflt);
+ if (!use_gui)
+ return make_pair<bool, docstring>(true, dflt);
}
+
+ return askForText_pimpl(msg, dflt);
}
+
+} // namespace frontend
+} // namespace lyx