lolautoaccept/include/runemanager.h

55 lines
1003 B
C
Raw Normal View History

2023-04-23 19:13:49 +02:00
#pragma once
#include <memory>
#include <QWidget>
2023-04-23 23:54:09 +02:00
#include "config.h"
2023-04-30 16:20:13 +02:00
#include "runeaspekt.h"
#include "runestyle.h"
2023-04-23 23:54:09 +02:00
2023-04-23 19:13:49 +02:00
namespace Ui {
class RuneManager;
}
class ClientAPI;
2023-05-01 01:23:08 +02:00
class DataDragon;
2023-04-23 19:13:49 +02:00
class QListWidgetItem;
2023-05-01 01:23:08 +02:00
class QTimer;
2023-04-23 19:13:49 +02:00
class RuneManager : public QWidget {
Q_OBJECT
public:
explicit RuneManager(QWidget* parent = nullptr);
~RuneManager();
2023-04-23 23:54:09 +02:00
void setConfig(Config& config);
2023-05-01 01:23:08 +02:00
void setDataDragon(DataDragon& dd);
2023-04-23 23:54:09 +02:00
2023-04-23 19:13:49 +02:00
private slots:
void loadRunes();
void reloadClientRunes();
2023-04-23 19:13:49 +02:00
void setRunesEnabled(bool enabled);
2023-04-30 16:20:13 +02:00
void saveRunePageClient(int id, QString name, const RunePage& rp);
2023-04-23 23:54:09 +02:00
void saveRunePageAA(int id, QString name, const RunePage& rp);
2023-04-30 16:20:13 +02:00
void deleteRunepageClient(int id);
void deleteRunepageAA(int id);
2023-04-30 22:10:21 +02:00
void autoSyncToggled();
2023-04-23 19:13:49 +02:00
private:
2023-04-30 22:10:21 +02:00
void syncRunes();
2023-05-01 01:23:08 +02:00
void reloadAARunes();
2023-04-30 22:10:21 +02:00
2023-04-23 19:13:49 +02:00
Ui::RuneManager* ui;
std::shared_ptr<ClientAPI> client;
2023-04-23 23:54:09 +02:00
Config* config = nullptr;
2023-05-01 01:23:08 +02:00
QTimer* initialLoadTimer = nullptr;
2023-04-30 16:20:13 +02:00
std::vector<RuneAspekt> runeInfo;
std::vector<RuneStyle> runeStyles;
2023-04-23 19:13:49 +02:00
};