#ifndef MAINWINDOW_H #define MAINWINDOW_H #include #include #include "config.h" #include "datadragon.h" #include "lolautoaccept.h" QT_BEGIN_NAMESPACE namespace Ui { class MainWindow; } QT_END_NAMESPACE class QMessageBox; class QTimer; class LoadingWindow; class X11Helper; class MainWindow : public QMainWindow { Q_OBJECT public: MainWindow(QWidget *parent = nullptr); ~MainWindow(); protected: virtual void closeEvent(QCloseEvent* event) override; signals: void requestTabChange(int tabindex); public slots: void resetSaveTimer(); private slots: void loadingStatus(float); void toggleLeagueVisibility(); void toggleMainswitch(bool); void aatoggled(bool); void smitewarntoggled(bool); void tabtoggled(Position, LolAutoAccept::State, bool); void tabchanged(Position, LolAutoAccept::State); void autoWriteChanged(); void saveConfig(); void initDone(); // returns empty string on no match void onPosChange(Position newpos); // to trigger the signal from a QObject void lolaaStatusChanged(LolAutoAccept::Status); // get triggerd, when the autoacceptor fails (lost connection) private: bool loading; Ui::MainWindow *ui; QTimer* saveTimer; std::thread lolaathread; DataDragon dd; Config conf; LolAutoAccept lolaa; LoadingWindow* lwin; QMessageBox* dodgeQuestion; X11Helper* x11Helper; }; #endif // MAINWINDOW_H