11 #include "addons/IAddon.h" 12 #include "settings/dialogs/GUIDialogSettingsManagerBase.h" 13 #include "settings/lib/SettingDefinitions.h" 14 #include "settings/lib/SettingLevel.h" 45 std::shared_ptr<CSettingSection> GetSection()
override {
return m_section; }
46 void SetupView()
override;
51 virtual void InitializeSettings();
53 std::shared_ptr<CSettingCategory> AddCategory(
const std::string &
id,
int label,
int help = -1);
54 std::shared_ptr<CSettingGroup> AddGroup(
const std::shared_ptr<CSettingCategory>& category,
57 bool separatorBelowLabel =
true,
58 bool hideSeparator =
false);
60 std::shared_ptr<CSettingBool> AddToggle(
const std::shared_ptr<CSettingGroup>&
group,
61 const std::string&
id,
69 std::shared_ptr<CSettingInt> AddEdit(
const std::shared_ptr<CSettingGroup>& group,
70 const std::string&
id,
77 bool verifyNewValue =
false,
82 std::shared_ptr<CSettingNumber> AddEdit(
const std::shared_ptr<CSettingGroup>& group,
83 const std::string&
id,
90 bool verifyNewValue =
false,
95 std::shared_ptr<CSettingString> AddEdit(
const std::shared_ptr<CSettingGroup>& group,
96 const std::string&
id,
99 const std::string& value,
100 bool allowEmpty =
false,
103 bool delayed =
false,
106 std::shared_ptr<CSettingString> AddIp(
const std::shared_ptr<CSettingGroup>& group,
107 const std::string&
id,
110 const std::string& value,
111 bool allowEmpty =
false,
113 bool delayed =
false,
116 std::shared_ptr<CSettingString> AddPasswordMd5(
const std::shared_ptr<CSettingGroup>& group,
117 const std::string&
id,
120 const std::string& value,
121 bool allowEmpty =
false,
123 bool delayed =
false,
127 std::shared_ptr<CSettingAction> AddButton(
const std::shared_ptr<CSettingGroup>& group,
128 const std::string&
id,
131 const std::string& data =
"",
132 bool delayed =
false,
135 std::shared_ptr<CSettingString> AddInfoLabelButton(
const std::shared_ptr<CSettingGroup>& group,
136 const std::string&
id,
139 const std::string& info,
142 std::shared_ptr<CSettingAddon> AddAddon(
const std::shared_ptr<CSettingGroup>& group,
143 const std::string&
id,
146 const std::string& value,
147 ADDON::AddonType addonType,
148 bool allowEmpty =
false,
150 bool hideValue =
false,
151 bool showInstalledAddons =
true,
152 bool showInstallableAddons =
false,
153 bool showMoreAddons =
true,
154 bool delayed =
false,
157 std::shared_ptr<CSettingPath> AddPath(
158 const std::shared_ptr<CSettingGroup>& group,
159 const std::string&
id,
162 const std::string& value,
163 bool writable =
true,
164 const std::vector<std::string>& sources = std::vector<std::string>(),
165 bool allowEmpty =
false,
167 bool hideValue =
false,
168 bool delayed =
false,
171 std::shared_ptr<CSettingDate> AddDate(
const std::shared_ptr<CSettingGroup>& group,
172 const std::string&
id,
175 const std::string& value,
176 bool allowEmpty =
false,
178 bool delayed =
false,
181 std::shared_ptr<CSettingTime> AddTime(
const std::shared_ptr<CSettingGroup>& group,
182 const std::string&
id,
185 const std::string& value,
186 bool allowEmpty =
false,
188 bool delayed =
false,
193 std::shared_ptr<CSettingString> AddSpinner(
const std::shared_ptr<CSettingGroup>& group,
194 const std::string&
id,
197 const std::string& value,
198 StringSettingOptionsFiller filler,
199 bool delayed =
false,
202 std::shared_ptr<CSettingInt> AddSpinner(
const std::shared_ptr<CSettingGroup>& group,
203 const std::string&
id,
210 int formatLabel = -1,
211 int minimumLabel = -1,
212 bool delayed =
false,
215 std::shared_ptr<CSettingInt> AddSpinner(
const std::shared_ptr<CSettingGroup>& group,
216 const std::string&
id,
223 const std::string& formatString,
224 int minimumLabel = -1,
225 bool delayed =
false,
228 std::shared_ptr<CSettingInt> AddSpinner(
const std::shared_ptr<CSettingGroup>& group,
229 const std::string&
id,
233 const TranslatableIntegerSettingOptions& entries,
234 bool delayed =
false,
237 std::shared_ptr<CSettingInt> AddSpinner(
const std::shared_ptr<CSettingGroup>& group,
238 const std::string&
id,
242 const IntegerSettingOptions& entries,
243 bool delayed =
false,
246 std::shared_ptr<CSettingInt> AddSpinner(
const std::shared_ptr<CSettingGroup>& group,
247 const std::string&
id,
251 IntegerSettingOptionsFiller filler,
252 bool delayed =
false,
255 std::shared_ptr<CSettingNumber> AddSpinner(
const std::shared_ptr<CSettingGroup>& group,
256 const std::string&
id,
263 int formatLabel = -1,
264 int minimumLabel = -1,
265 bool delayed =
false,
268 std::shared_ptr<CSettingNumber> AddSpinner(
const std::shared_ptr<CSettingGroup>& group,
269 const std::string&
id,
276 const std::string& formatString,
277 int minimumLabel = -1,
278 bool delayed =
false,
283 std::shared_ptr<CSettingString> AddList(
const std::shared_ptr<CSettingGroup>& group,
284 const std::string&
id,
287 const std::string& value,
288 StringSettingOptionsFiller filler,
292 bool details =
false);
293 std::shared_ptr<CSettingInt> AddList(
const std::shared_ptr<CSettingGroup>& group,
294 const std::string&
id,
298 const TranslatableIntegerSettingOptions& entries,
302 bool details =
false);
303 std::shared_ptr<CSettingInt> AddList(
const std::shared_ptr<CSettingGroup>& group,
304 const std::string&
id,
308 const IntegerSettingOptions& entries,
312 bool details =
false);
313 std::shared_ptr<CSettingInt> AddList(
const std::shared_ptr<CSettingGroup>& group,
314 const std::string&
id,
318 IntegerSettingOptionsFiller filler,
322 bool details =
false);
323 std::shared_ptr<CSettingList> AddList(
const std::shared_ptr<CSettingGroup>& group,
324 const std::string&
id,
327 std::vector<std::string> values,
328 StringSettingOptionsFiller filler,
330 int minimumItems = 0,
331 int maximumItems = -1,
334 bool details =
false);
335 std::shared_ptr<CSettingList> AddList(
const std::shared_ptr<CSettingGroup>& group,
336 const std::string&
id,
339 std::vector<int> values,
340 const TranslatableIntegerSettingOptions& entries,
342 int minimumItems = 0,
343 int maximumItems = -1,
346 bool details =
false);
347 std::shared_ptr<CSettingList> AddList(
const std::shared_ptr<CSettingGroup>& group,
348 const std::string&
id,
351 std::vector<int> values,
352 const IntegerSettingOptions& entries,
354 int minimumItems = 0,
355 int maximumItems = -1,
358 bool details =
false);
359 std::shared_ptr<CSettingList> AddList(
const std::shared_ptr<CSettingGroup>& group,
360 const std::string&
id,
363 std::vector<int> values,
364 IntegerSettingOptionsFiller filler,
366 int minimumItems = 0,
367 int maximumItems = -1,
370 SettingControlListValueFormatter formatter =
nullptr,
371 bool details =
false);
374 std::shared_ptr<CSettingInt> AddPercentageSlider(
const std::shared_ptr<CSettingGroup>& group,
375 const std::string&
id,
382 bool usePopup =
false,
383 bool delayed =
false,
386 std::shared_ptr<CSettingInt> AddPercentageSlider(
const std::shared_ptr<CSettingGroup>& group,
387 const std::string&
id,
391 const std::string& formatString,
394 bool usePopup =
false,
395 bool delayed =
false,
398 std::shared_ptr<CSettingInt> AddSlider(
const std::shared_ptr<CSettingGroup>& group,
399 const std::string&
id,
408 bool usePopup =
false,
409 bool delayed =
false,
412 std::shared_ptr<CSettingInt> AddSlider(
const std::shared_ptr<CSettingGroup>& group,
413 const std::string&
id,
417 const std::string& formatString,
422 bool usePopup =
false,
423 bool delayed =
false,
426 std::shared_ptr<CSettingNumber> AddSlider(
const std::shared_ptr<CSettingGroup>& group,
427 const std::string&
id,
436 bool usePopup =
false,
437 bool delayed =
false,
440 std::shared_ptr<CSettingNumber> AddSlider(
const std::shared_ptr<CSettingGroup>& group,
441 const std::string&
id,
445 const std::string& formatString,
450 bool usePopup =
false,
451 bool delayed =
false,
456 std::shared_ptr<CSettingList> AddPercentageRange(
const std::shared_ptr<CSettingGroup>& group,
457 const std::string&
id,
462 int valueFormatLabel,
464 int formatLabel = 21469,
465 bool delayed =
false,
468 std::shared_ptr<CSettingList> AddPercentageRange(
const std::shared_ptr<CSettingGroup>& group,
469 const std::string&
id,
474 const std::string& valueFormatString =
"{:d} %",
476 int formatLabel = 21469,
477 bool delayed =
false,
480 std::shared_ptr<CSettingList> AddRange(
const std::shared_ptr<CSettingGroup>& group,
481 const std::string&
id,
489 int valueFormatLabel,
490 int formatLabel = 21469,
491 bool delayed =
false,
494 std::shared_ptr<CSettingList> AddRange(
const std::shared_ptr<CSettingGroup>& group,
495 const std::string&
id,
503 const std::string& valueFormatString =
"{:d}",
504 int formatLabel = 21469,
505 bool delayed =
false,
508 std::shared_ptr<CSettingList> AddRange(
const std::shared_ptr<CSettingGroup>& group,
509 const std::string&
id,
517 int valueFormatLabel,
518 int formatLabel = 21469,
519 bool delayed =
false,
522 std::shared_ptr<CSettingList> AddRange(
const std::shared_ptr<CSettingGroup>& group,
523 const std::string&
id,
531 const std::string& valueFormatString =
"{:.1f}",
532 int formatLabel = 21469,
533 bool delayed =
false,
536 std::shared_ptr<CSettingList> AddDateRange(
const std::shared_ptr<CSettingGroup>& group,
537 const std::string&
id,
545 int valueFormatLabel,
546 int formatLabel = 21469,
547 bool delayed =
false,
550 std::shared_ptr<CSettingList> AddDateRange(
const std::shared_ptr<CSettingGroup>& group,
551 const std::string&
id,
559 const std::string& valueFormatString =
"",
560 int formatLabel = 21469,
561 bool delayed =
false,
564 std::shared_ptr<CSettingList> AddTimeRange(
const std::shared_ptr<CSettingGroup>& group,
565 const std::string&
id,
573 int valueFormatLabel,
574 int formatLabel = 21469,
575 bool delayed =
false,
578 std::shared_ptr<CSettingList> AddTimeRange(
const std::shared_ptr<CSettingGroup>& group,
579 const std::string&
id,
587 const std::string& valueFormatString =
"mm:ss",
588 int formatLabel = 21469,
589 bool delayed =
false,
593 std::shared_ptr<ISettingControl> GetTitleControl(
bool separatorBelowLabel =
true,
bool hideSeparator =
false);
594 std::shared_ptr<ISettingControl> GetCheckmarkControl(
bool delayed =
false);
595 std::shared_ptr<ISettingControl> GetEditControl(
const std::string &format,
bool delayed =
false,
bool hidden =
false,
bool verifyNewValue =
false,
int heading = -1);
596 std::shared_ptr<ISettingControl> GetButtonControl(
const std::string &format,
bool delayed =
false,
int heading = -1,
bool hideValue =
false,
bool showInstalledAddons =
true,
597 bool showInstallableAddons =
false,
bool showMoreAddons =
true);
598 std::shared_ptr<ISettingControl> GetSpinnerControl(
const std::string &format,
bool delayed =
false,
int minimumLabel = -1,
int formatLabel = -1,
const std::string &formatString =
"");
599 std::shared_ptr<ISettingControl> GetListControl(
600 const std::string& format,
601 bool delayed =
false,
603 bool multiselect =
false,
604 SettingControlListValueFormatter formatter =
nullptr,
605 bool details =
false);
606 std::shared_ptr<ISettingControl> GetSliderControl(
const std::string &format,
bool delayed =
false,
int heading = -1,
bool usePopup =
false,
int formatLabel = -1,
const std::string &formatString =
"");
607 std::shared_ptr<ISettingControl> GetRangeControl(
const std::string &format,
bool delayed =
false,
int formatLabel = -1,
int valueFormatLabel = -1,
const std::string &valueFormatString =
"");
610 std::shared_ptr<CSettingList> AddRange(
const std::shared_ptr<CSettingGroup>& group,
611 const std::string&
id,
619 const std::string& format,
621 int valueFormatLabel,
622 const std::string& valueFormatString,
626 std::shared_ptr<CSettingList> AddRange(
const std::shared_ptr<CSettingGroup>& group,
627 const std::string&
id,
635 const std::string& format,
637 int valueFormatLabel,
638 const std::string& valueFormatString,
643 void setSettingDetails(
const std::shared_ptr<CSetting>& setting,
649 std::shared_ptr<CSettingSection> m_section;
Category of groups of settings being part of a section.
Definition: SettingSection.h:85
Definition: SettingDateTime.h:15
List setting implementation.
Definition: Setting.h:168
Setting base class containing all the properties which are common to all settings independent of the ...
Definition: Setting.h:46
String setting implementation.
Definition: Setting.h:423
Definition: GUIDialogSettingsManagerBase.h:15
Section of setting categories.
Definition: SettingSection.h:144
Definition: SettingDateTime.h:31
Real number setting implementation.
Definition: Setting.h:363
Action setting implementation.
Definition: Setting.h:506
Definition: SettingAddon.h:19
Definition: SmartPlayList.cpp:137
Definition: SettingPath.h:17
Settings manager responsible for initializing, loading and handling all settings. ...
Definition: SettingsManager.h:41
Group of settings being part of a category.
Definition: SettingSection.h:28
Boolean setting implementation.
Definition: Setting.h:229
Integer setting implementation.
Definition: Setting.h:274
SettingLevel
Levels which every setting is assigned to.
Definition: SettingLevel.h:15
Definition: GUIDialogSettingsManualBase.h:37