Kodi Documentation 22.0
Kodi is an open source media player and entertainment hub.
Loading...
Searching...
No Matches
CSettingNumber Class Reference

Real number setting implementation. More...

#include <Setting.h>

Inheritance diagram for CSettingNumber:
CTraitedSetting< double, SettingType::Number > CSetting ISetting ISettingCallback

Public Member Functions

 CSettingNumber (const std::string &id, CSettingsManager *settingsManager=nullptr)
 
 CSettingNumber (const std::string &id, const CSettingNumber &setting)
 
 CSettingNumber (const std::string &id, int label, float value, CSettingsManager *settingsManager=nullptr)
 
 CSettingNumber (const std::string &id, int label, float value, float minimum, float step, float maximum, CSettingsManager *settingsManager=nullptr)
 
 ~CSettingNumber () override=default
 
std::shared_ptr< CSettingClone (const std::string &id) const override
 
void MergeDetails (const CSetting &other) override
 
bool Deserialize (const TiXmlNode *node, bool update=false) override
 Deserializes the given XML node into the properties of the setting object.
 
bool FromString (const std::string &value) override
 
std::string ToString () const override
 
bool Equals (const std::string &value) const override
 
bool CheckValidity (const std::string &value) const override
 
virtual bool CheckValidity (double value) const
 
void Reset () override
 
double GetValue () const
 
bool SetValue (double value)
 
double GetDefault () const
 
void SetDefault (double value)
 
double GetMinimum () const
 
void SetMinimum (double minimum)
 
double GetStep () const
 
void SetStep (double step)
 
double GetMaximum () const
 
void SetMaximum (double maximum)
 
- Public Member Functions inherited from CTraitedSetting< double, SettingType::Number >
SettingType GetType () const override
 
- Public Member Functions inherited from CSetting
 CSetting (const std::string &id, CSettingsManager *settingsManager=nullptr)
 
 CSetting (const std::string &id, const CSetting &setting)
 
 ~CSetting () override=default
 
void MergeBasics (const CSetting &other)
 
bool IsEnabled () const
 
bool GetEnabled () const
 
void SetEnabled (bool enabled)
 
bool IsDefault () const
 
const std::string & GetParent () const
 
void SetParent (const std::string &parentSetting)
 
SettingLevel GetLevel () const
 
void SetLevel (SettingLevel level)
 
std::shared_ptr< const ISettingControlGetControl () const
 
std::shared_ptr< ISettingControlGetControl ()
 
void SetControl (std::shared_ptr< ISettingControl > control)
 
const SettingDependenciesGetDependencies () const
 
void SetDependencies (const SettingDependencies &dependencies)
 
const std::set< CSettingUpdate > & GetUpdates () const
 
void SetCallback (ISettingCallback *callback)
 
bool IsReference () const
 
const std::string & GetReferencedId () const
 
void SetReferencedId (const std::string &referencedId)
 
void MakeReference (const std::string &referencedId="")
 
bool GetVisible () const
 
bool IsVisible () const override
 Whether the setting object is visible or hidden.
 
void OnSettingAction (const std::shared_ptr< const CSetting > &setting) override
 The given setting has been activated.
 
- Public Member Functions inherited from ISetting
 ISetting (const std::string &id, CSettingsManager *settingsManager=nullptr)
 Creates a new setting object with the given identifier.
 
virtual ~ISetting ()=default
 
const std::string & GetId () const
 Gets the identifier of the setting object.
 
virtual void SetVisible (bool visible)
 Sets the visibility state of the setting object.
 
int GetLabel () const
 Gets the localizeable label ID of the setting group.
 
void SetLabel (int label)
 Sets the localizeable label ID of the setting group.
 
int GetHelp () const
 Gets the localizeable help ID of the setting group.
 
void SetHelp (int help)
 Sets the localizeable help ID of the setting group.
 
virtual bool MeetsRequirements () const
 Whether the setting object meets all necessary requirements.
 
virtual void CheckRequirements ()
 Checks if the setting object meets all necessary requirements.
 
virtual void SetRequirementsMet (bool requirementsMet)
 Sets whether the setting object meets all necessary requirements.
 

Additional Inherited Members

- Public Types inherited from CTraitedSetting< double, SettingType::Number >
typedef double Value
 
- Static Public Member Functions inherited from CTraitedSetting< double, SettingType::Number >
static SettingType Type ()
 
- Static Public Member Functions inherited from CSetting
static bool DeserializeIdentification (const TiXmlNode *node, std::string &identification, bool &isReference)
 Deserializes the given XML node to retrieve a setting object's identifier and whether the setting is a reference to another setting or not.
 
- Static Public Member Functions inherited from ISetting
static bool DeserializeIdentification (const TiXmlNode *node, std::string &identification)
 Deserializes the given XML node to retrieve a setting object's identifier.
 
- Protected Member Functions inherited from CTraitedSetting< double, SettingType::Number >
 CTraitedSetting (const std::string &id, CSettingsManager *settingsManager=nullptr)
 
 CTraitedSetting (const std::string &id, const CTraitedSetting &setting)
 
 ~CTraitedSetting () override=default
 
- Protected Member Functions inherited from CSetting
bool OnSettingChanging (const std::shared_ptr< const CSetting > &setting) override
 The value of the given setting is being changed.
 
void OnSettingChanged (const std::shared_ptr< const CSetting > &setting) override
 The value of the given setting has changed.
 
bool OnSettingUpdate (const std::shared_ptr< CSetting > &setting, const char *oldSettingId, const TiXmlNode *oldSettingNode) override
 The given setting needs to be updated.
 
void OnSettingPropertyChanged (const std::shared_ptr< const CSetting > &setting, const char *propertyName) override
 The given property of the given setting has changed.
 
void Copy (const CSetting &setting)
 
template<class TSetting >
std::shared_ptr< TSetting > shared_from_base ()
 
- Protected Member Functions inherited from ISettingCallback
virtual ~ISettingCallback ()=default
 
- Static Protected Member Functions inherited from ISetting
static bool DeserializeIdentificationFromAttribute (const TiXmlNode *node, const std::string &attribute, std::string &identification)
 Deserializes the given XML node to retrieve a setting object's identifier from the given attribute.
 
- Protected Attributes inherited from CSetting
ISettingCallbackm_callback = nullptr
 
bool m_enabled = true
 
std::string m_parentSetting
 
SettingLevel m_level = SettingLevel::Standard
 
std::shared_ptr< ISettingControlm_control
 
SettingDependencies m_dependencies
 
std::set< CSettingUpdatem_updates
 
bool m_changed = false
 
CSharedSection m_critical
 
std::string m_referencedId
 
- Protected Attributes inherited from ISetting
std::string m_id
 
CSettingsManagerm_settingsManager
 
- Static Protected Attributes inherited from ISetting
static constexpr int DefaultLabel = -1
 

Detailed Description

Real number setting implementation.

See also
CSetting

Constructor & Destructor Documentation

◆ CSettingNumber() [1/4]

CSettingNumber::CSettingNumber ( const std::string & id,
CSettingsManager * settingsManager = nullptr )

◆ CSettingNumber() [2/4]

CSettingNumber::CSettingNumber ( const std::string & id,
const CSettingNumber & setting )

◆ CSettingNumber() [3/4]

CSettingNumber::CSettingNumber ( const std::string & id,
int label,
float value,
CSettingsManager * settingsManager = nullptr )

◆ CSettingNumber() [4/4]

CSettingNumber::CSettingNumber ( const std::string & id,
int label,
float value,
float minimum,
float step,
float maximum,
CSettingsManager * settingsManager = nullptr )

◆ ~CSettingNumber()

CSettingNumber::~CSettingNumber ( )
overridedefault

Member Function Documentation

◆ CheckValidity() [1/2]

bool CSettingNumber::CheckValidity ( const std::string & value) const
overridevirtual

Implements CSetting.

◆ CheckValidity() [2/2]

bool CSettingNumber::CheckValidity ( double value) const
virtual

◆ Clone()

SettingPtr CSettingNumber::Clone ( const std::string & id) const
overridevirtual

Implements CSetting.

◆ Deserialize()

bool CSettingNumber::Deserialize ( const TiXmlNode * node,
bool update = false )
overridevirtual

Deserializes the given XML node into the properties of the setting object.

If the update parameter is true, the checks for mandatory properties are skipped and values are only updated.

Parameters
nodeXML node containing the properties of the setting object
updateWhether to perform checks for mandatory properties or not
Returns
True if deserialization was successful, false otherwise

Reimplemented from CSetting.

◆ Equals()

bool CSettingNumber::Equals ( const std::string & value) const
overridevirtual

Implements CSetting.

◆ FromString()

bool CSettingNumber::FromString ( const std::string & value)
overridevirtual

Implements CSetting.

◆ GetDefault()

double CSettingNumber::GetDefault ( ) const
inline

◆ GetMaximum()

double CSettingNumber::GetMaximum ( ) const
inline

◆ GetMinimum()

double CSettingNumber::GetMinimum ( ) const
inline

◆ GetStep()

double CSettingNumber::GetStep ( ) const
inline

◆ GetValue()

double CSettingNumber::GetValue ( ) const
inline

◆ MergeDetails()

void CSettingNumber::MergeDetails ( const CSetting & other)
overridevirtual

Implements CSetting.

◆ Reset()

void CSettingNumber::Reset ( )
inlineoverridevirtual

Implements CSetting.

◆ SetDefault()

void CSettingNumber::SetDefault ( double value)

◆ SetMaximum()

void CSettingNumber::SetMaximum ( double maximum)
inline

◆ SetMinimum()

void CSettingNumber::SetMinimum ( double minimum)
inline

◆ SetStep()

void CSettingNumber::SetStep ( double step)
inline

◆ SetValue()

bool CSettingNumber::SetValue ( double value)

◆ ToString()

std::string CSettingNumber::ToString ( ) const
overridevirtual

Implements CSetting.


The documentation for this class was generated from the following files: