Ui fixes.
[evilplumber] / src / game.h
index e253ee0..8ec06d4 100644 (file)
@@ -83,9 +83,9 @@ static const Piece ppieces[] = {
     {PieceCross, 0, true, 3, 0,              // 7
      {DirLeft, DirRight, DirUp, DirDown}},
     {PieceCorners, 0, true, 4, 0,            // 8
-     {DirLeft, DirUp, DirRight, DirDown}},
+     {DirLeft, DirDown, DirRight, DirUp}},
     {PieceCorners, 90, true, 4, 1,          // 9
-     {DirUp, DirRight, DirLeft, DirDown}},
+     {DirRight, DirDown, DirLeft, DirUp}},
     {PieceStart, 0, false, 0, 0,             // 10
      {DirLeft, DirNone, DirNone, DirNone}},
     {PieceStart, 90, false, 0, 0,            // 11
@@ -171,11 +171,9 @@ private slots:
     void onItemClicked(QTableWidgetItem* item);
 
 private:
-    void initPieceCache();
     static int pieceToId(const Piece* piece);
     static const Piece* idToPiece(int id);
 
-    static QHash<QPair<PieceType, int>, const Piece*> pieceCache;
     QTableWidget* pieceUi;
     QHash<const Piece*, int> pieceCounts;
 };
@@ -245,6 +243,9 @@ private slots:
 
 private:
     void initiateLevel();
+    void readSavedGames();
+    void writeSavedGames();
+    void readLevelCollections(QStringList collections);
 
     GameController* gameController; // Not owned
     QWidget* levelWidget; // Not owned
@@ -257,10 +258,12 @@ private:
     QLabel* levelLabel; // Not owned
     QLabel* scoreLabel; // Not owned
 
-    QStringList levelCollections;
+    QString curColl;
     QStringList levels;
     int level;
     int totalScore;
+    QHash<QString, int> savedGames; // level collection -> next level ix
+    QHash<QString, QStringList> levelCollections; // level collection -> level names
 };
 
 #endif