Initial commit.
[abby.git] / src / mainwnd.h
blob79881fac321a44a4b8827317ae2e567b64147cf0
1 /*
2 * abby Copyright (C) 2009 Toni Gundogdu.
3 * This file is part of abby.
5 * abby is free software: you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by
7 * the Free Software Foundation, either version 3 of the License, or
8 * (at your option) any later version.
10 * abby is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
15 * You should have received a copy of the GNU General Public License
16 * along with this program. If not, see <http://www.gnu.org/licenses/>.
18 #ifndef mainwnd_h
19 #define mainwnd_h
21 #include <QProcess>
23 #include "ui_mainwnd.h"
25 class QMainWindow;
26 class PreferencesDialog;
28 class MainWindow : public QMainWindow, private Ui::MainWindow {
29 Q_OBJECT
30 public:
31 MainWindow();
32 private slots:
33 void onPreferences();
34 void onStart();
35 void onCancel();
36 void onAbout();
37 void onSaveasStateChanged(int state);
38 void onCommandStateChanged(int state);
39 void onSaveasBrowse();
40 void onProcStarted();
41 void onProcError(QProcess::ProcessError);
42 void onProcStderrReady();
43 void onProcFinished(int exitCode, QProcess::ExitStatus exitStatus);
44 private:
45 QProcess process;
46 PreferencesDialog *prefs;
47 bool cancelled;
48 private:
49 void writeSettings();
50 void readSettings();
51 void updateLog(QString text);
52 protected:
53 void closeEvent(QCloseEvent *event);
55 #endif