aboutsummaryrefslogtreecommitdiffstats
path: root/SQLiteStudio3/coreSQLiteStudio/committable.h
diff options
context:
space:
mode:
authorLibravatarUnit 193 <unit193@ubuntu.com>2014-12-06 17:33:25 -0500
committerLibravatarUnit 193 <unit193@ubuntu.com>2014-12-06 17:33:25 -0500
commit7167ce41b61d2ba2cdb526777a4233eb84a3b66a (patch)
treea35c14143716e1f2c98f808c81f89426045a946f /SQLiteStudio3/coreSQLiteStudio/committable.h
Imported Upstream version 2.99.6upstream/2.99.6
Diffstat (limited to 'SQLiteStudio3/coreSQLiteStudio/committable.h')
-rw-r--r--SQLiteStudio3/coreSQLiteStudio/committable.h27
1 files changed, 27 insertions, 0 deletions
diff --git a/SQLiteStudio3/coreSQLiteStudio/committable.h b/SQLiteStudio3/coreSQLiteStudio/committable.h
new file mode 100644
index 0000000..cf1d48b
--- /dev/null
+++ b/SQLiteStudio3/coreSQLiteStudio/committable.h
@@ -0,0 +1,27 @@
+#ifndef COMMITTABLE_H
+#define COMMITTABLE_H
+
+#include "coreSQLiteStudio_global.h"
+#include <QList>
+#include <functional>
+
+class API_EXPORT Committable
+{
+ public:
+ typedef std::function<bool(const QList<Committable*>& instances)> ConfirmFunction;
+
+ Committable();
+ virtual ~Committable();
+
+ virtual bool isUncommited() const = 0;
+ virtual QString getQuitUncommitedConfirmMessage() const = 0;
+
+ static void init(ConfirmFunction confirmFunc);
+ static bool canQuit();
+
+ private:
+ static ConfirmFunction confirmFunc;
+ static QList<Committable*> instances;
+};
+
+#endif // COMMITTABLE_H