]> git.lyx.org Git - lyx.git/blob - src/support/ProgressInterface.h
4199fd82ae9d07d0b447c96bb7e9c463288c69ba
[lyx.git] / src / support / ProgressInterface.h
1 // -*- C++ -*-
2 /**
3  * \file ProgressInterface.h
4  * This file is part of LyX, the document processor.
5  * Licence details can be found in the file COPYING.
6  *
7  * \author Peter Kümmel
8  *
9  * Full author contact details are available in file CREDITS.
10  */
11
12 #ifndef LYX_SUPPORT_PROGRESSINTERFACE_H
13 #define LYX_SUPPORT_PROGRESSINTERFACE_H
14
15 #include <string>
16
17 class QString;
18
19 namespace lyx {
20 namespace support {
21
22
23 class ProgressInterface
24 {
25 public:
26         virtual ~ProgressInterface() {}
27
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;
33
34         static void setInstance(ProgressInterface*);
35         static ProgressInterface* instance();
36
37 protected:
38         ProgressInterface() {}
39 };
40
41
42
43 } // namespace support
44 } // namespace lyx
45
46 #endif // LYX_SUPPORT_PROGRESSINTERFACE_H
47