3 * \file ProgressInterface.h
4 * This file is part of LyX, the document processor.
5 * Licence details can be found in the file COPYING.
9 * Full author contact details are available in file CREDITS.
12 #ifndef LYX_SUPPORT_PROGRESSINTERFACE_H
13 #define LYX_SUPPORT_PROGRESSINTERFACE_H
23 class ProgressInterface
26 virtual ~ProgressInterface() {}
28 virtual void processStarted(QString const &) = 0;
29 virtual void processFinished(QString const &) = 0;
30 virtual void appendMessage(QString const &) = 0;
31 virtual void appendError(QString const &) = 0;
32 virtual void clearMessages() = 0;
35 virtual void warning(QString const & title, QString const & message) = 0;
36 virtual void toggleWarning(QString const & title, QString const & msg, QString const & formatted) = 0;
37 virtual void error(QString const & title, QString const & message) = 0;
38 virtual void information(QString const & title, QString const & message) = 0;
41 static void setInstance(ProgressInterface*);
42 static ProgressInterface* instance();
45 ProgressInterface() {}
50 } // namespace support
53 #endif // LYX_SUPPORT_PROGRESSINTERFACE_H