#include "ui_main.h"
+#include "ui_startlevel.h"
+#include "ui_collections.h"
+#include "ui_game.h"
#include "game.h"
#include <QDebug>
int main(int argc, char** argv)
{
- QApplication app(argc, argv);
+ QApplication app(argc, argv);
- qDebug() << "Reading levels from" << LEVDIR;
- qDebug() << "Reading images from" << IMGDIR;
+ qDebug() << "Reading levels from" << LEVDIR;
+ qDebug() << "Reading images from" << IMGDIR;
- QWidget mainWindow;
-
- Ui::Main ui;
- ui.setupUi(&mainWindow);
- QObject::connect(ui.quitButton, SIGNAL(clicked()), &app, SLOT(quit()));
+ QWidget mainWindow;
+ Ui::Main ui;
+ ui.setupUi(&mainWindow);
- GameField field(ui.gameTable);
- AvailablePieces pieces(ui.pieceTable);
- QStringList levels;
- levels << "level01" << "level02";
- GameController controller(&pieces, &field, ui.timeLabel, ui.doneButton);
- LevelSwitcher switcher(&controller, ui.levelLabel, ui.startFrame, ui.startTitle, ui.startLabel, ui.startButton, ui.scoreLabel, levels);
+ Ui::StartLevel startUi;
+ startUi.setupUi(ui.startWidget);
+ QObject::connect(startUi.quitButton, SIGNAL(clicked()), &app, SLOT(quit()));
- mainWindow.show();
+ Ui::LevelCollections levelUi;
+ levelUi.setupUi(ui.collectionWidget);
+ QObject::connect(levelUi.quitButton, SIGNAL(clicked()), &app, SLOT(quit()));
+ Ui::Game gameUi;
+ gameUi.setupUi(ui.gameWidget);
+ GameField field(gameUi.gameTable);
+ AvailablePieces pieces(gameUi.pieceTable);
+ QStringList levelCollections;
+ levelCollections << "intro" << "basic"; // TODO: read from fs
+ GameController controller(&pieces, &field, gameUi.timeLabel, gameUi.doneButton);
+ LevelSwitcher switcher(&controller,
+ ui.collectionWidget, levelUi.levelList, levelUi.startButton,
+ ui.startWidget, startUi.startTitle,
+ startUi.startLabel, startUi.startButton,
+ ui.gameWidget, gameUi.levelLabel, gameUi.scoreLabel, levelCollections);
- return app.exec();
+ mainWindow.show();
+
+ return app.exec();
}