]> git.lyx.org Git - lyx.git/blobdiff - src/frontends/Alert.h
Joao latest bits
[lyx.git] / src / frontends / Alert.h
index ead6f8a60634e8d0e7289ebc599e259c27f39c77..3b5f3636aa51c60ec0257a51df21cb1eb129e5ce 100644 (file)
@@ -1,31 +1,62 @@
+// -*- C++ -*-
 /**
  * \file Alert.h
- * Copyright 2001 the LyX Team
- * Read the file COPYING
+ * This file is part of LyX, the document processor.
+ * Licence details can be found in the file COPYING.
  *
- * \author John Levon <moz@compsoc.man.ac.uk>
+ * \author John Levon
+ *
+ * Full author contact details are available in file CREDITS.
  */
 
+#ifndef LYX_ALERT_H
+#define LYX_ALERT_H
+
 #include "support/lstrings.h"
-#include <algorithm>
+
+
 namespace Alert {
-       /// show an alert message
-       void alert(string const & s1, string const & s2 = string(), 
-               string const & s3 = string());
-
-       /// show an alert message and strerror(errno)
-       void err_alert(string const & s1, string const & s2 = string());
-
-       /// ask a question 
-       bool askQuestion(string const & s1, string const & s2 = string(),
-                string const & s3 = string(), bool default_value = true);
-
-       /// Returns 1 for yes, 2 for no, 3 for cancel.
-       int askConfirmation(string const & s1, string const & s2 = string(), 
-               string const & s3 = string(), int default_value = 1);
-       /// Asks for a text
-       std::pair<bool, string> const askForText(string const & msg, 
-               string const & dflt = string());
-};
+
+/**
+ * Prompt for a question. Returns 0-2 for the chosen button.
+ * Set default_button and cancel_button to reasonable values. b1-b3
+ * should have accelerators marked with an '&'. title should be
+ * a short summary. Strings should be gettextised.
+ * Please think about the poor user.
+ *
+ * Remember to use boost::format. If you make any of these buttons
+ * "Yes" or "No", I will personally come around to your house and
+ * slap you with fish, and not in an enjoyable way either.
+ */
+int prompt(std::string const & title, std::string const & question,
+           int default_button, int cancel_button,
+          std::string const & b1, std::string const & b2, std::string const & b3 = std::string());
+
+/**
+ * Display a warning to the user. Title should be a short (general) summary.
+ * Only use this if the user cannot perform some remedial action.
+ */
+void warning(std::string const & title, std::string const & message);
+
+/**
+ * Display a warning to the user. Title should be a short (general) summary.
+ * Only use this if the user cannot perform some remedial action.
+ */
+void error(std::string const & title, std::string const & message);
+
+/**
+ * Informational message. Use very very sparingly. That is, you must
+ * apply to me, in triplicate, under the sea, breathing in petrol
+ * and reciting the Nicene Creed, whilst running uphill and also
+ * eating.
+ */
+void information(std::string const & title, std::string const & message);
+
+/// Asks for a text. DO NOT USE !!
+std::pair<bool, std::string> const
+askForText(std::string const & msg,
+          std::string const & dflt = std::string());
+
+}
+
+#endif // LYX_ALERT_H