summaryrefslogtreecommitdiffstats
path: root/gui/consolewindow.h
diff options
context:
space:
mode:
authorAndrew <forkk@forkk.net>2013-02-25 13:31:37 -0600
committerAndrew <forkk@forkk.net>2013-02-25 13:31:37 -0600
commit23474da17500b35bf4fb2a754021175361baab00 (patch)
treedb2dda426ec4a91982f5f5539b08cc7c3bb1fd35 /gui/consolewindow.h
parent498225debdb22d83e591635dbd172cca12476279 (diff)
parent4fd5bdb01b27c99f16c9acf3c7ac13c7ea719800 (diff)
downloadMultiMC-23474da17500b35bf4fb2a754021175361baab00.tar
MultiMC-23474da17500b35bf4fb2a754021175361baab00.tar.gz
MultiMC-23474da17500b35bf4fb2a754021175361baab00.tar.lz
MultiMC-23474da17500b35bf4fb2a754021175361baab00.tar.xz
MultiMC-23474da17500b35bf4fb2a754021175361baab00.zip
Merge branch 'master' of git://github.com/peterix/MultiMC5
Conflicts: CMakeLists.txt main.cpp
Diffstat (limited to 'gui/consolewindow.h')
-rw-r--r--gui/consolewindow.h69
1 files changed, 69 insertions, 0 deletions
diff --git a/gui/consolewindow.h b/gui/consolewindow.h
new file mode 100644
index 00000000..1d322afb
--- /dev/null
+++ b/gui/consolewindow.h
@@ -0,0 +1,69 @@
+#ifndef CONSOLEWINDOW_H
+#define CONSOLEWINDOW_H
+
+#include <QDialog>
+
+namespace Ui {
+class ConsoleWindow;
+}
+
+class ConsoleWindow : public QDialog
+{
+ Q_OBJECT
+
+public:
+ /**
+ * @brief The WriteMode enum
+ * defines how stuff is displayed
+ */
+ enum WriteMode {
+ DEFAULT,
+ ERROR,
+ MULTIMC
+ };
+
+ explicit ConsoleWindow(QWidget *parent = 0);
+ ~ConsoleWindow();
+
+ /**
+ * @brief specify if the window is allowed to close
+ * @param mayclose
+ * used to keep it alive while MC runs
+ */
+ void setMayClose(bool mayclose);
+
+public slots:
+ /**
+ * @brief write a string
+ * @param data the string
+ * @param mode the WriteMode
+ * lines have to be put through this as a whole!
+ */
+ void write(QString data, WriteMode mode=MULTIMC);
+
+ /**
+ * @brief write a colored paragraph
+ * @param data the string
+ * @param color the css color name
+ * this will only insert a single paragraph.
+ * \n are ignored. a real \n is always appended.
+ */
+ void writeColor(QString data, const char *color=nullptr);
+
+ /**
+ * @brief clear the text widget
+ */
+ void clear();
+
+private slots:
+ void on_closeButton_clicked();
+
+protected:
+ void closeEvent(QCloseEvent *);
+
+private:
+ Ui::ConsoleWindow *ui;
+ bool m_mayclose;
+};
+
+#endif // CONSOLEWINDOW_H