Details | Compare with Previous | View Log
Line No. | Rev | Author | Line |
---|---|---|---|
1 | 14 | Taonnor-14572 | --[[ |
2 | Taonnor-14572 | Addon: Taos Group Ultimate |
|
3 | Taonnor-14572 | Author: TProg Taonnor |
|
4 | Taonnor-14572 | Created by @Taonnor |
|
5 | Taonnor-14572 | ]]-- |
|
6 | Taonnor-14572 | ||
7 | Taonnor-14572 | --[[ |
|
8 | 37 | Taonnor-14572 | Local variables |
9 | 14 | Taonnor-14572 | ]]-- |
10 | Taonnor-14572 | local LOG_ACTIVE = false |
|
11 | Taonnor-14572 | ||
12 | Taonnor-14572 | --[[ |
|
13 | 37 | Taonnor-14572 | Table SettingsWindow |
14 | 14 | Taonnor-14572 | ]]-- |
15 | 37 | Taonnor-14572 | TGU_SettingsWindow = {} |
16 | Taonnor-14572 | TGU_SettingsWindow.__index = TGU_SettingsWindow |
|
17 | 14 | Taonnor-14572 | |
18 | Taonnor-14572 | --[[ |
|
19 | 37 | Taonnor-14572 | Table Members |
20 | 14 | Taonnor-14572 | ]]-- |
21 | 37 | Taonnor-14572 | TGU_SettingsWindow.MainMenuName = "TaosGroupUltimateSettingsMainMenu" |
22 | 14 | Taonnor-14572 | |
23 | Taonnor-14572 | --[[ |
|
24 | Taonnor-14572 | Initialize creates settings window |
|
25 | Taonnor-14572 | ]]-- |
|
26 | 37 | Taonnor-14572 | function TGU_SettingsWindow.Initialize(logger, major, minor, patch) |
27 | 14 | Taonnor-14572 | if (LOG_ACTIVE) then |
28 | 37 | Taonnor-14572 | logger:logTrace("TGU_SettingsWindow.Initialize") |
29 | Taonnor-14572 | logger:logDebug("major, minor, patch", major, minor, patch) |
|
30 | 14 | Taonnor-14572 | end |
31 | Taonnor-14572 | ||
32 | 19 | Taonnor-14572 | local styleChoices = { |
33 | 20 | Taonnor-14572 | [1] = GetString(TGU_OPTIONS_STYLE_SIMPLE), |
34 | Taonnor-14572 | [2] = GetString(TGU_OPTIONS_STYLE_SWIM), |
|
35 | Taonnor-14572 | [3] = GetString(TGU_OPTIONS_STYLE_SHORT_SWIM), |
|
36 | 19 | Taonnor-14572 | } |
37 | Taonnor-14572 | ||
38 | 14 | Taonnor-14572 | local panelData = { |
39 | Taonnor-14572 | type = "panel", |
|
40 | Taonnor-14572 | name = "Taos Group Ultimate", |
|
41 | Taonnor-14572 | author = "TProg Taonnor", |
|
42 | Taonnor-14572 | version = major .. "." .. minor .. "." .. patch, |
|
43 | Taonnor-14572 | slashCommand = "/taosGroupUltimate", |
|
44 | Taonnor-14572 | registerForDefaults = true |
|
45 | Taonnor-14572 | } |
|
46 | Taonnor-14572 | ||
47 | Taonnor-14572 | local optionsData = { |
|
48 | Taonnor-14572 | [1] = { |
|
49 | Taonnor-14572 | type = "header", |
|
50 | Taonnor-14572 | name = GetString(TGU_OPTIONS_HEADER), |
|
51 | Taonnor-14572 | }, |
|
52 | Taonnor-14572 | [2] = { |
|
53 | Taonnor-14572 | type = "checkbox", |
|
54 | Taonnor-14572 | name = GetString(TGU_OPTIONS_DRAG_LABEL), |
|
55 | Taonnor-14572 | tooltip = GetString(TGU_OPTIONS_DRAG_TOOLTIP), |
|
56 | 7 | Taonnor-14572 | getFunc = |
57 | Taonnor-14572 | function() |
|
58 | 37 | Taonnor-14572 | return TGU_SettingsHandler.SavedVariables.Movable |
59 | 7 | Taonnor-14572 | end, |
60 | Taonnor-14572 | setFunc = |
|
61 | Taonnor-14572 | function(value) |
|
62 | 37 | Taonnor-14572 | TGU_SettingsHandler.SetMovableSettings(value) |
63 | 14 | Taonnor-14572 | end, |
64 | 37 | Taonnor-14572 | default = TGU_SettingsHandler.Default.Movable |
65 | 14 | Taonnor-14572 | }, |
66 | 19 | Taonnor-14572 | [3] = { |
67 | 32 | Taonnor-14572 | type = "checkbox", |
68 | Taonnor-14572 | name = GetString(TGU_OPTIONS_ONLY_AVA_LABEL), |
|
69 | Taonnor-14572 | tooltip = GetString(TGU_OPTIONS_ONLY_AVA_TOOLTIP), |
|
70 | Taonnor-14572 | getFunc = |
|
71 | Taonnor-14572 | function() |
|
72 | 37 | Taonnor-14572 | return TGU_SettingsHandler.SavedVariables.OnlyAva |
73 | 32 | Taonnor-14572 | end, |
74 | Taonnor-14572 | setFunc = |
|
75 | Taonnor-14572 | function(value) |
|
76 | 37 | Taonnor-14572 | TGU_SettingsHandler.SetOnlyAvaSettings(value) |
77 | 32 | Taonnor-14572 | end, |
78 | 37 | Taonnor-14572 | default = TGU_SettingsHandler.Default.OnlyAva |
79 | 32 | Taonnor-14572 | }, |
80 | Taonnor-14572 | [4] = { |
|
81 | 38 | Taonnor-14572 | type = "checkbox", |
82 | Taonnor-14572 | name = GetString(TGU_OPTIONS_USE_LGS_LABEL), |
|
83 | Taonnor-14572 | tooltip = GetString(TGU_OPTIONS_USE_LGS_TOOLTIP), |
|
84 | 39 | Taonnor-14572 | requiresReload = true, |
85 | 38 | Taonnor-14572 | getFunc = |
86 | Taonnor-14572 | function() |
|
87 | Taonnor-14572 | return TGU_SettingsHandler.SavedVariables.IsLgsActive |
|
88 | Taonnor-14572 | end, |
|
89 | Taonnor-14572 | setFunc = |
|
90 | Taonnor-14572 | function(value) |
|
91 | Taonnor-14572 | TGU_SettingsHandler.SetIsLgsActiveSettings(value) |
|
92 | Taonnor-14572 | end, |
|
93 | Taonnor-14572 | default = TGU_SettingsHandler.Default.IsLgsActive |
|
94 | Taonnor-14572 | }, |
|
95 | Taonnor-14572 | [5] = { |
|
96 | 56 | Taonnor-14572 | type = "checkbox", |
97 | Taonnor-14572 | name = GetString(TGU_OPTIONS_USE_SORTING_LABEL), |
|
98 | Taonnor-14572 | tooltip = GetString(TGU_OPTIONS_USE_SORTING_TOOLTIP), |
|
99 | Taonnor-14572 | getFunc = |
|
100 | Taonnor-14572 | function() |
|
101 | Taonnor-14572 | return TGU_SettingsHandler.SavedVariables.IsSortingActive |
|
102 | Taonnor-14572 | end, |
|
103 | Taonnor-14572 | setFunc = |
|
104 | Taonnor-14572 | function(value) |
|
105 | Taonnor-14572 | TGU_SettingsHandler.SetIsSortingActiveSettings(value) |
|
106 | Taonnor-14572 | end, |
|
107 | Taonnor-14572 | default = TGU_SettingsHandler.Default.IsSortingActive |
|
108 | Taonnor-14572 | }, |
|
109 | Taonnor-14572 | [6] = { |
|
110 | 19 | Taonnor-14572 | type = "dropdown", |
111 | Taonnor-14572 | name = GetString(TGU_OPTIONS_STYLE_LABEL), |
|
112 | Taonnor-14572 | tooltip = GetString(TGU_OPTIONS_STYLE_TOOLTIP), |
|
113 | Taonnor-14572 | choices = styleChoices, |
|
114 | Taonnor-14572 | getFunc = |
|
115 | Taonnor-14572 | function() |
|
116 | 37 | Taonnor-14572 | return styleChoices[TGU_SettingsHandler.SavedVariables.Style] |
117 | 19 | Taonnor-14572 | end, |
118 | Taonnor-14572 | setFunc = |
|
119 | Taonnor-14572 | function(value) |
|
120 | Taonnor-14572 | for index, name in ipairs(styleChoices) do |
|
121 | Taonnor-14572 | if (name == value) then |
|
122 | 37 | Taonnor-14572 | TGU_SettingsHandler.SetStyleSettings(index) |
123 | 19 | Taonnor-14572 | break |
124 | Taonnor-14572 | end |
|
125 | Taonnor-14572 | end |
|
126 | Taonnor-14572 | end, |
|
127 | 37 | Taonnor-14572 | default = styleChoices[TGU_SettingsHandler.Default.Style] |
128 | 19 | Taonnor-14572 | }, |
129 | 14 | Taonnor-14572 | } |
130 | Taonnor-14572 | ||
131 | Taonnor-14572 | local LAM = LibStub("LibAddonMenu-2.0") |
|
132 | 37 | Taonnor-14572 | LAM:RegisterAddonPanel(TGU_SettingsWindow.MainMenuName, panelData) |
133 | Taonnor-14572 | LAM:RegisterOptionControls(TGU_SettingsWindow.MainMenuName, optionsData) |
|
134 | 5 | Taonnor-14572 | end |