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