openMSX
Public Member Functions | List of all members
openmsx::ReadOnlySetting Class Referencefinal

#include <ReadOnlySetting.hh>

Inheritance diagram for openmsx::ReadOnlySetting:
Inheritance graph
[legend]
Collaboration diagram for openmsx::ReadOnlySetting:
Collaboration graph
[legend]

Public Member Functions

 ReadOnlySetting (CommandController &commandController, std::string_view name, static_string_view description, const TclObject &initialValue)
 
void setReadOnlyValue (const TclObject &value)
 
std::string_view getTypeString () const override
 Returns a string describing the setting type (integer, string, ..) Could be used in a GUI to pick an appropriate setting widget. More...
 
- Public Member Functions inherited from openmsx::Setting
 Setting (const Setting &)=delete
 
Settingoperator= (const Setting &)=delete
 
virtual ~Setting ()
 
const TclObjectgetValue () const final
 Gets the current value of this setting as a TclObject. More...
 
std::optional< TclObjectgetOptionalValue () const final
 Like getValue(), but in case of error returns an empty optional instead of throwing an exception. More...
 
void setRestoreValue (const TclObject &newRestoreValue)
 Set restore value. More...
 
void setChecker (std::function< void(TclObject &)> checkFunc_)
 Set value-check-callback. More...
 
void setValue (const TclObject &newValue) final
 Change the value of this setting to the given value. More...
 
std::string_view getDescription () const final
 pure virtual methods /// More...
 
TclObject getDefaultValue () const final
 Get the default value of this setting. More...
 
TclObject getRestoreValue () const final
 Get the value that will be set after a Tcl 'unset' command. More...
 
void setValueDirect (const TclObject &newValue) final
 Similar to setValue(), but doesn't trigger Tcl traces. More...
 
void tabCompletion (std::vector< std::string > &tokens) const override
 Complete a partly typed value. More...
 
bool needLoadSave () const final
 Does this setting need to be loaded or saved (settings.xml). More...
 
void additionalInfo (TclObject &result) const override
 Helper method for info(). More...
 
bool needTransfer () const final
 Does this setting need to be transfered on reverse. More...
 
void setDontSaveValue (const TclObject &dontSaveValue) final
 This value will never end up in the settings.xml file. More...
 
CommandControllergetCommandController () const
 
InterpretergetInterpreter () const
 
- Public Member Functions inherited from openmsx::BaseSetting
const TclObjectgetFullNameObj () const
 Get the name of this setting. More...
 
const TclObjectgetBaseNameObj () const
 
std::string_view getFullName () const
 
std::string_view getBaseName () const
 
void setPrefix (std::string_view prefix)
 Set a machine specific prefix. More...
 
void info (TclObject &result) const
 For SettingInfo. More...
 
virtual std::string_view getDescription () const =0
 pure virtual methods /// More...
 
virtual std::string_view getTypeString () const =0
 Returns a string describing the setting type (integer, string, ..) Could be used in a GUI to pick an appropriate setting widget. More...
 
virtual void additionalInfo (TclObject &result) const =0
 Helper method for info(). More...
 
virtual void tabCompletion (std::vector< std::string > &tokens) const =0
 Complete a partly typed value. More...
 
virtual const TclObjectgetValue () const =0
 Get current value as a TclObject. More...
 
virtual std::optional< TclObjectgetOptionalValue () const =0
 Like getValue(), but in case of error returns an empty optional instead of throwing an exception. More...
 
virtual TclObject getDefaultValue () const =0
 Get the default value of this setting. More...
 
virtual TclObject getRestoreValue () const =0
 Get the value that will be set after a Tcl 'unset' command. More...
 
virtual void setValue (const TclObject &value)=0
 Change the value of this setting to the given value. More...
 
virtual void setValueDirect (const TclObject &value)=0
 Similar to setValue(), but doesn't trigger Tcl traces. More...
 
virtual bool needLoadSave () const =0
 Does this setting need to be loaded or saved (settings.xml). More...
 
virtual bool needTransfer () const =0
 Does this setting need to be transfered on reverse. More...
 
virtual void setDontSaveValue (const TclObject &dontSaveValue)=0
 This value will never end up in the settings.xml file. More...
 
- Public Member Functions inherited from openmsx::Subject< Setting >
void attach (Observer< Setting > &observer)
 
void detach (Observer< Setting > &observer)
 
bool anyObservers () const
 

Additional Inherited Members

- Public Types inherited from openmsx::Setting
enum  SaveSetting { SAVE , DONT_SAVE , DONT_TRANSFER }
 
- Protected Member Functions inherited from openmsx::Setting
 Setting (CommandController &commandController, std::string_view name, static_string_view description, const TclObject &initialValue, SaveSetting save=SAVE)
 
void init ()
 
void notifyPropertyChange () const
 
- Protected Member Functions inherited from openmsx::BaseSetting
 BaseSetting (std::string_view name)
 
 BaseSetting (TclObject name)
 
 ~BaseSetting ()=default
 
- Protected Member Functions inherited from openmsx::Subject< Setting >
 Subject ()=default
 
 ~Subject ()
 
void notify () const
 

Detailed Description

Definition at line 8 of file ReadOnlySetting.hh.

Constructor & Destructor Documentation

◆ ReadOnlySetting()

openmsx::ReadOnlySetting::ReadOnlySetting ( CommandController commandController,
std::string_view  name,
static_string_view  description,
const TclObject initialValue 
)

Definition at line 6 of file ReadOnlySetting.cc.

References openmsx::Setting::init(), and openmsx::Setting::setChecker().

Member Function Documentation

◆ getTypeString()

std::string_view openmsx::ReadOnlySetting::getTypeString ( ) const
overridevirtual

Returns a string describing the setting type (integer, string, ..) Could be used in a GUI to pick an appropriate setting widget.

Implements openmsx::BaseSetting.

Definition at line 28 of file ReadOnlySetting.cc.

◆ setReadOnlyValue()

void openmsx::ReadOnlySetting::setReadOnlyValue ( const TclObject value)

Definition at line 22 of file ReadOnlySetting.cc.

References openmsx::Setting::setValue().


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