qtrocket/gui/MainWindow.h
Travis Hunter e6bf1fea9b
Some checks failed
CMake on multiple platforms / build (Release, cl, cl, windows-latest) (push) Has been cancelled
CMake on multiple platforms / build (Release, gcc-13, g++-13, ubuntu-latest) (push) Has been cancelled
Revert "Merge pull request #20 from cthunter01/propagator"
This reverts commit 6280d9fb0184275843a8f4406c7293e41e65a639, reversing
changes made to 3c9c8b8c6a2b2e7430ff09efdc2cc0c1996b16ca.
2025-04-16 18:23:28 -06:00

64 lines
1.2 KiB
C++

#ifndef MAINWINDOW_H
#define MAINWINDOW_H
/// \cond
// C headers
// C++ headers
#include <memory>
// 3rd Party headers
#include <QMainWindow>
/// \endcond
// qtrocket headers
#include "QtRocket.h"
#include "gui/SimOptionsWindow.h"
#include "utils/RSEDatabaseLoader.h"
QT_BEGIN_NAMESPACE
namespace Ui { class MainWindow; }
QT_END_NAMESPACE
/**
* @brief The MainWindow class
*
* The MainWindow class holds the primary GUI window of the application. All user interactions
* with QtRocket begin with interactions in this window. This window can spawn other windows.
*/
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
MainWindow(QtRocket* _qtRocket, QWidget *parent = nullptr);
~MainWindow();
private slots:
void onMenu_Help_About_triggered();
void onButton_calculateTrajectory_clicked();
void onButton_loadRSE_button_clicked();
void onButton_getTCMotorData_clicked();
void onMenu_Edit_SimulationOptions_triggered();
void onButton_setMotor_clicked();
void onMenu_File_Quit_triggered();
void onMenu_Tools_SaveMotorDatabase();
private:
Ui::MainWindow* ui;
QtRocket* qtRocket;
SimOptionsWindow* simOptionsWindow{nullptr};
std::unique_ptr<utils::RSEDatabaseLoader> rseDatabase;
};
#endif // MAINWINDOW_H