2 This file is part of Cute Chess.
4 Cute Chess is free software: you can redistribute it and/or modify
5 it under the terms of the GNU General Public License as published by
6 the Free Software Foundation, either version 3 of the License, or
7 (at your option) any later version.
9 Cute Chess is distributed in the hope that it will be useful,
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 GNU General Public License for more details.
14 You should have received a copy of the GNU General Public License
15 along with Cute Chess. If not, see <http://www.gnu.org/licenses/>.
21 #include <QMainWindow>
22 #include <board/side.h>
24 namespace Chess
{ class Board
; class Move
; }
29 class ChessboardModel
;
31 class EngineConfigurationModel
;
38 class MainWindow
: public QMainWindow
46 void promotionMove(const Chess::Move
& move
, Chess::Side side
);
50 void selectPromotion(const Chess::Board
* board
,
51 const Chess::Move
& move
,
52 const QList
<int>& promotions
);
53 void gameProperties();
56 void onWindowMenuAboutToShow();
57 void showGameWindow();
62 void createToolBars();
63 void createDockWindows();
72 ChessboardView
* m_chessboardView
;
73 ChessboardModel
* m_boardModel
;
74 MoveListModel
* m_moveListModel
;
75 ChessClock
* m_chessClock
[2];
77 QAction
* m_quitGameAct
;
78 QAction
* m_gamePropertiesAct
;
79 QAction
* m_newGameAct
;
80 QAction
* m_closeGameAct
;
81 QAction
* m_manageEnginesAct
;
83 PlainTextLog
* m_engineDebugLog
;
87 #endif // MAINWINDOW_H