class QLabel;
class QWidget;
class QPushButton;
-class QFrame;
+class QListWidget;
enum PieceType
{
DirRight,
DirDown,
DirDone,
- DirFailed
+ DirFailed,
+ DirPassed
};
typedef struct Piece
{
Q_OBJECT
public:
- LevelSwitcher(GameController* gameController, QLabel* levelLabel,
- QFrame* startFrame, QLabel* startTitle, QLabel* startLabel, QPushButton* startButton,
- QLabel* scoreLabel,
+ LevelSwitcher(GameController* gameController,
+ QWidget* levelWidget, QListWidget* levelList, QPushButton* levelStartButton,
+ QWidget* startWidget, QLabel* startTitle, QLabel* startLabel, QPushButton* startButton,
+ QLabel* levelLabel, QLabel* scoreLabel,
QStringList levels);
- void initiateLevel();
private slots:
+ void onLevelCollectionChosen();
void onStartClicked();
void onLevelPassed(int score);
void onLevelFailed();
+ void chooseLevelCollection();
private:
+ void initiateLevel();
+
GameController* gameController; // Not owned
- QLabel* levelLabel; // Not owned
- QFrame* startFrame; // Not owned
+ QWidget* levelWidget; // Not owned
+ QListWidget* levelList; // Not owned
+ QPushButton* levelStartButton; // Not owned
+ QWidget* startWidget; // Not owned
QLabel* startTitle; // Not owned
QLabel* startLabel; // Not owned
QPushButton* startButton; // Not owned
+ QLabel* levelLabel; // Not owned
QLabel* scoreLabel; // Not owned
+ QStringList levelCollections;
QStringList levels;
int level;
int totalScore;