xbmc
GUIDialogPeripheralSettings.h
1 /*
2  * Copyright (C) 2005-2018 Team Kodi
3  * This file is part of Kodi - https://kodi.tv
4  *
5  * SPDX-License-Identifier: GPL-2.0-or-later
6  * See LICENSES/README.md for more information.
7  */
8 
9 #pragma once
10 
11 #include "settings/dialogs/GUIDialogSettingsManualBase.h"
12 
13 class CFileItem;
14 
15 namespace PERIPHERALS
16 {
17 class CPeripherals;
18 
20 {
21 public:
23  ~CGUIDialogPeripheralSettings() override;
24 
25  // specializations of CGUIControl
26  bool OnMessage(CGUIMessage& message) override;
27 
28  void RegisterPeripheralManager(CPeripherals& manager);
29  void UnregisterPeripheralManager();
30 
31  virtual void SetFileItem(const CFileItem* item);
32 
33 protected:
34  // implementations of ISettingCallback
35  void OnSettingChanged(const std::shared_ptr<const CSetting>& setting) override;
36 
37  // specialization of CGUIDialogSettingsBase
38  bool AllowResettingSettings() const override { return false; }
39  bool Save() override;
40  void OnResetSettings() override;
41  void SetupView() override;
42 
43  // specialization of CGUIDialogSettingsManualBase
44  void InitializeSettings() override;
45 
46  // Dialog state
47  CPeripherals* m_manager{nullptr};
48  CFileItem* m_item;
49  bool m_initialising = false;
50  std::map<std::string, std::shared_ptr<CSetting>> m_settingsMap;
51 };
52 } // namespace PERIPHERALS
Definition: RetroPlayerInput.h:15
void InitializeSettings() override
Definition: GUIDialogPeripheralSettings.cpp:170
Definition: GUIDialogPeripheralSettings.h:19
Definition: GUIMessage.h:365
void OnSettingChanged(const std::shared_ptr< const CSetting > &setting) override
The value of the given setting has changed.
Definition: GUIDialogPeripheralSettings.cpp:81
Definition: GUIDialogSettingsManualBase.h:37
Definition: Peripherals.h:53
Represents a file on a share.
Definition: FileItem.h:102