kodi
GUIDialogPeripheralSettings.h
1 /*
2  * Copyright (C) 2005-2024 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 
23 {
24 public:
26  ~CGUIDialogPeripheralSettings() override;
27 
28  // specializations of CGUIControl
29  bool OnMessage(CGUIMessage& message) override;
30 
31  void RegisterPeripheralManager(CPeripherals& manager);
32  void UnregisterPeripheralManager();
33 
34  virtual void SetFileItem(const CFileItem* item);
35 
36 protected:
37  // implementations of ISettingCallback
38  void OnSettingChanged(const std::shared_ptr<const CSetting>& setting) override;
39 
40  // specialization of CGUIDialogSettingsBase
41  bool AllowResettingSettings() const override { return false; }
42  bool Save() override;
43  void OnResetSettings() override;
44  void SetupView() override;
45 
46  // specialization of CGUIDialogSettingsManualBase
47  void InitializeSettings() override;
48 
49  // Dialog state
50  CPeripherals* m_manager{nullptr};
51  CFileItem* m_item;
52  bool m_initialising = false;
53  std::map<std::string, std::shared_ptr<CSetting>> m_settingsMap;
54 };
55 } // namespace PERIPHERALS
Definition: RetroPlayerInput.h:15
void InitializeSettings() override
Definition: GUIDialogPeripheralSettings.cpp:170
Definition: GUIDialogPeripheralSettings.h:22
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:56
Represents a file on a share.
Definition: FileItem.h:102