2 * Copyright (C) 2017-2018 Team Kodi
3 * This file is part of Kodi - https://kodi.tv
5 * SPDX-License-Identifier: GPL-2.0-or-later
6 * See LICENSES/README.md for more information.
11 #include "settings/LibExportSettings.h"
12 #include "settings/dialogs/GUIDialogSettingsManualBase.h"
16 class CGUIDialogLibExportSettings
: public CGUIDialogSettingsManualBase
19 CGUIDialogLibExportSettings();
21 // specialization of CGUIWindow
22 bool HasListItems() const override
{ return true; }
23 static bool Show(CLibExportSettings
& settings
);
26 // specializations of CGUIWindow
27 void OnInitWindow() override
;
29 // implementations of ISettingCallback
30 void OnSettingChanged(const std::shared_ptr
<const CSetting
>& setting
) override
;
31 void OnSettingAction(const std::shared_ptr
<const CSetting
>& setting
) override
;
33 // specialization of CGUIDialogSettingsBase
34 bool OnMessage(CGUIMessage
& message
) override
;
35 bool AllowResettingSettings() const override
{ return false; }
37 void SetupView() override
;
39 // specialization of CGUIDialogSettingsManualBase
40 void InitializeSettings() override
;
46 void SetLabel2(const std::string
&settingid
, const std::string
&label
);
47 void SetLabel(const std::string
&settingid
, const std::string
&label
);
48 void ToggleState(const std::string
&settingid
, bool enabled
);
50 using CGUIDialogSettingsManualBase::SetFocus
;
51 void SetFocus(const std::string
&settingid
);
52 static int GetExportItemsFromSetting(const SettingConstPtr
& setting
);
54 void UpdateDescription();
56 CLibExportSettings m_settings
;
57 bool m_destinationChecked
= false;
58 std::shared_ptr
<CSettingBool
> m_settingNFO
;
59 std::shared_ptr
<CSettingBool
> m_settingArt
;