kodi
ISettingCallback.h
1 /*
2  * Copyright (C) 2013-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 <memory>
12 
13 class CSetting;
14 class TiXmlNode;
15 
17 {
18 public:
19  virtual ~ISettingCallback() = default;
20 
33  virtual bool OnSettingChanging(const std::shared_ptr<const CSetting>& setting) { return true; }
34 
44  virtual void OnSettingChanged(const std::shared_ptr<const CSetting>& setting) {}
45 
54  virtual void OnSettingAction(const std::shared_ptr<const CSetting>& setting) {}
55 
68  virtual bool OnSettingUpdate(const std::shared_ptr<CSetting>& setting,
69  const char* oldSettingId,
70  const TiXmlNode* oldSettingNode)
71  {
72  return false;
73  }
74 
84  virtual void OnSettingPropertyChanged(const std::shared_ptr<const CSetting>& setting,
85  const char* propertyName)
86  {
87  }
88 };
virtual bool OnSettingChanging(const std::shared_ptr< const CSetting > &setting)
The value of the given setting is being changed.
Definition: ISettingCallback.h:33
virtual bool OnSettingUpdate(const std::shared_ptr< CSetting > &setting, const char *oldSettingId, const TiXmlNode *oldSettingNode)
The given setting needs to be updated.
Definition: ISettingCallback.h:68
virtual void OnSettingPropertyChanged(const std::shared_ptr< const CSetting > &setting, const char *propertyName)
The given property of the given setting has changed.
Definition: ISettingCallback.h:84
Definition: ISettingCallback.h:16
Setting base class containing all the properties which are common to all settings independent of the ...
Definition: Setting.h:46
virtual void OnSettingAction(const std::shared_ptr< const CSetting > &setting)
The given setting has been activated.
Definition: ISettingCallback.h:54
virtual void OnSettingChanged(const std::shared_ptr< const CSetting > &setting)
The value of the given setting has changed.
Definition: ISettingCallback.h:44