forked from simulationcraft/simc
-
Notifications
You must be signed in to change notification settings - Fork 0
/
sc_OptionsTab.hpp
115 lines (106 loc) · 3.17 KB
/
sc_OptionsTab.hpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
// ==========================================================================
// Dedmonwakeen's Raid DPS/TPS Simulator.
// Send questions to [email protected]
// ==========================================================================
#pragma once
#include "config.hpp"
#include <QtWidgets/QTabWidget>
class SC_MainWindow;
class SC_ReforgeButtonGroup;
class QComboBox;
class QButtonGroup;
class QLineEdit;
class QListWidget;
class QFormLayout;
// ============================================================================
// SC_OptionsTabWidget
// ============================================================================
class SC_OptionsTab : public QTabWidget
{
Q_OBJECT
public:
SC_OptionsTab( SC_MainWindow* parent );
void decodeOptions();
void encodeOptions();
QString get_db_order() const;
QString get_globalSettings();
QString getReportlDestination() const;
QString mergeOptions();
QString get_active_spec();
QString get_player_role();
QString get_api_key();
QString auto_save_location;
void createToolTips();
QListWidget* itemDbOrder;
struct choices_t
{
// options
QComboBox* version;
QComboBox* world_lag;
QComboBox* target_error;
QComboBox* iterations;
QComboBox* fight_length;
QComboBox* fight_variance;
QComboBox* fight_style;
QComboBox* target_level;
QComboBox* target_race;
QComboBox* num_target;
QComboBox* player_skill;
QComboBox* threads;
QComboBox* process_priority;
QComboBox* auto_save;
QComboBox* pvp_crit;
QComboBox* armory_region;
QComboBox* armory_spec;
QComboBox* default_role;
QComboBox* gui_localization;
QComboBox* update_check;
QComboBox* boss_type;
QComboBox* tank_dummy;
QComboBox* tmi_boss;
QComboBox* tmi_window;
QComboBox* show_etmi;
QComboBox* debug;
QComboBox* report_pets;
QComboBox* statistics_level;
QComboBox* deterministic_rng;
QComboBox* center_scale_delta;
QComboBox* challenge_mode;
// scaling
QComboBox* scale_over;
QComboBox* plots_points;
QComboBox* plots_step;
QComboBox* plots_target_error;
QComboBox* plots_iterations;
QComboBox* reforgeplot_amount;
QComboBox* reforgeplot_step;
} choice;
QButtonGroup* buffsButtonGroup;
QButtonGroup* debuffsButtonGroup;
QButtonGroup* scalingButtonGroup;
QButtonGroup* plotsButtonGroup;
SC_ReforgeButtonGroup* reforgeplotsButtonGroup;
QLineEdit* api_client_id, * api_client_secret;
public slots:
void _resetallSettings();
void _savefilelocation();
void _armoryRegionChanged( const QString& );
protected:
SC_MainWindow* mainWindow;
void createGlobalsTab();
void createBuffsDebuffsTab();
void createScalingTab();
void createPlotsTab();
void createReforgePlotsTab();
void createItemDataSourceSelector( QFormLayout* );
QComboBox* addValidatorToComboBox( int lowerBound, int upperBound, QComboBox* );
void toggleInterdependentOptions();
private slots:
void allBuffsChanged( bool checked );
void allDebuffsChanged( bool checked );
void allScalingChanged( bool checked );
void _optionsChanged();
signals:
void armory_region_changed( const QString& );
void optionsChanged(); // FIXME: hookup to everything
};