Fixed bug with non-working control buttons.
[vexed] / mainwindow.h
1 #ifndef MAINWINDOW_H
2 #define MAINWINDOW_H
3
4 #include <QMainWindow>
5 #include "levelpack.h"
6
7 namespace Ui {
8     class MainWindow;
9 }
10
11 class MainWindow : public QMainWindow
12 {
13     Q_OBJECT
14
15 public:
16     explicit MainWindow(QWidget *parent = 0);
17     ~MainWindow();
18
19     // save the current game state, i.e. -- current level
20     void saveState();
21
22 protected:
23     LevelPack *pack;
24     int levelNo;
25     QList<QString> packNames;
26
27     void changeEvent(QEvent *e);
28     // get or set hiscore for current level
29     int hiscore(int score=-1);
30
31 public slots:
32     void reorient();
33
34     void openPreferences();
35     void loadPack(const QString& packName,int levelToLoad);
36     void loadLevel();
37     void solved(int moves);
38     void howToPlay();
39
40     void loadNextLevel()
41     {
42             if(levelNo<(pack->size()-1))
43             {
44                     levelNo++;
45                     loadLevel();
46             }
47     }
48     void loadPrevLevel()
49     {
50             if(levelNo>0)
51             {
52                     levelNo--;
53                     loadLevel();
54             }
55     }
56     void movesChanged(int moves);
57 private:
58     Ui::MainWindow *ui;
59 };
60
61 #endif // MAINWINDOW_H