22 #ifndef SGMAINWINDOW_HPP
23 #define SGMAINWINDOW_HPP
25 #include <QMainWindow>
28 #include "sggamehandler.hpp"
29 #include "sgsolutionhandler.hpp"
30 #include "sgsolverworker.hpp"
31 #include "sgsettingshandler.hpp"
32 #include "sgplotsettingshandler.hpp"
34 #include "sgrisksharing.hpp"
35 #include "sgrisksharinghandler.hpp"
36 #include "sgrandom.hpp"
37 #include "sgrandomhandler.hpp"
38 #include "sglegend.hpp"
104 void settingsLoader();
107 void settingsSaver();
126 virtual void keyPressEvent(QKeyEvent * event);
146 void changeSettings();
149 void settingsHandlerClosed();
152 void changePlotSettings();
155 void plotSettingsHandlerClosed();
171 void iterationFinished(
bool);
176 void solverException();
182 void displayLegend();
194 void generateRandom();
QSettings * settings
Program settings.
Definition: sgmainwindow.hpp:101
A widget for setting parameters of the algorithm.
Definition: sgplotsettingshandler.hpp:95
Handles the widgets for displaying the solution.
Definition: sgsolutionhandler.hpp:70
~SGMainWindow()
Destructor.
Definition: sgmainwindow.hpp:117
SGSolutionHandler * solutionHandler
The object for interfacing with the solution.
Definition: sgmainwindow.hpp:77
Class for implementing the twist algorithm within SGViewer.
Definition: sgsolverworker.hpp:47
A widget for setting parameters of the algorithm.
Definition: sgsettingshandler.hpp:195
SGEnv * env
Environment for computations.
Definition: sgmainwindow.hpp:68
QString path
Most recent path for saves/loads.
Definition: sgmainwindow.hpp:98
SGSettingsHandler * settingsHandler
The object for controling environment settings.
Definition: sgmainwindow.hpp:83
bool cancelSolveFlag
Flag for canceling solve next time an iteration finishes.
Definition: sgmainwindow.hpp:95
Manages parameters for algorithm behavior.
Definition: sgenv.hpp:35
SGSolverWorker * solverWorker
Worker that handles solution.
Definition: sgmainwindow.hpp:71
This class handles the widgets for editing/displaying the game.
Definition: sggamehandler.hpp:47
QTextEdit * logTextEdit
Text edit containing the log output.
Definition: sgmainwindow.hpp:89
SGGameHandler * gameHandler
The object for interfacing with the game.
Definition: sgmainwindow.hpp:80
void startIteration()
Signal for SGSolverThread to start next iteration.
SGPlotSettingsHandler * plotSettingsHandler
The object for controling plot settings.
Definition: sgmainwindow.hpp:86
QThread solverThread
Separate thread for running solve routines, so gui doesn't hang.
Definition: sgmainwindow.hpp:74
QTime timer
Times progress of the algorithm.
Definition: sgmainwindow.hpp:92
QTabWidget * tabWidget
Widget containing game, solution, and log tabs.
Definition: sgmainwindow.hpp:60
Main window for SGViewer.
Definition: sgmainwindow.hpp:59