The ATK interface implemented by valuators and components which display or select a value from a bounded range of values. More...

#include <atkmm/value.h>

Inheritance diagram for Atk::Value:

Public Member Functions

 Value (Value&& src) noexcept
 
Valueoperator= (Value&& src) noexcept
 
 ~Value () noexcept override
 
AtkValue* gobj ()
 Provides access to the underlying C GObject. More...

 
const AtkValue* gobj () const
 Provides access to the underlying C GObject. More...

 
void get_value_and_text (double& value, Glib::ustring& text)
 Gets the current value and the human readable text alternative. More...

 
Range get_range () const
 Gets the range of this object. More...

 
double get_increment ()
 Gets the minimum increment by which the value of this object may be changed. More...

 
void set_value (const gdouble new_value)
 Sets the value of this object. More...

 
Glib::SignalProxy< void(double, const Glib::ustring&)> signal_value_changed ()
 
- Public Member Functions inherited from Glib::Interface
 Interface ()
 
 Interface (Interface &&src) noexcept
 
Interfaceoperator= (Interface &&src) noexcept
 
 Interface (const Glib::Interface_Class &interface_class)
 
 Interface (GObject *castitem)
 
 ~Interface () noexcept override
 
 Interface (const Interface &)=delete
 
Interfaceoperator= (const Interface &)=delete
 
GObject * gobj ()
 
const GObject * gobj () const
 
- Public Member Functions inherited from Glib::ObjectBase
 ObjectBase (const ObjectBase &)=delete
 
ObjectBaseoperator= (const ObjectBase &)=delete
 
void set_property_value (const Glib::ustring &property_name, const Glib::ValueBase &value)
 
void get_property_value (const Glib::ustring &property_name, Glib::ValueBase &value) const
 
void set_property (const Glib::ustring &property_name, const PropertyType &value)
 
void get_property (const Glib::ustring &property_name, PropertyType &value) const
 
PropertyType get_property (const Glib::ustring &property_name) const
 
sigc::connection connect_property_changed (const Glib::ustring &property_name, const sigc::slot< void()> &slot)
 
sigc::connection connect_property_changed (const Glib::ustring &property_name, sigc::slot< void()> &&slot)
 
void freeze_notify ()
 
void thaw_notify ()
 
virtual void reference () const
 
virtual void unreference () const
 
GObject * gobj ()
 
const GObject * gobj () const
 
GObject * gobj_copy () const
 
- Public Member Functions inherited from sigc::trackable
 trackable () noexcept
 
 trackable (const trackable &src) noexcept
 
 trackable (trackable &&src) noexcept
 
 ~trackable ()
 
void add_destroy_notify_callback (notifiable *data, func_destroy_notify func) const
 
void notify_callbacks ()
 
trackableoperator= (const trackable &src)
 
trackableoperator= (trackable &&src) noexcept
 
void remove_destroy_notify_callback (notifiable *data) const
 

Static Public Member Functions

static void add_interface (GType gtype_implementer)
 
static GType get_type ()
 Get the GType for this class, for use with the underlying GObject type system. More...

 

Protected Member Functions

 Value ()
 You should derive from this class to use it. More...

 
virtual void get_current_value_vfunc (Glib::ValueBase& value) const
 
virtual void get_maximum_value_vfunc (Glib::ValueBase& value) const
 
virtual void get_minimum_value_vfunc (Glib::ValueBase& value) const
 
- Protected Member Functions inherited from Glib::ObjectBase
 ObjectBase ()
 
 ObjectBase (const char *custom_type_name)
 
 ObjectBase (const std::type_info &custom_type_info)
 
 ObjectBase (ObjectBase &&src) noexcept
 
ObjectBaseoperator= (ObjectBase &&src) noexcept
 
virtual ~ObjectBase () noexcept=0
 
void initialize (GObject *castitem)
 
void initialize_move (GObject *castitem, Glib::ObjectBase *previous_wrapper)
 

Related Functions

(Note that these are not member functions.)

Glib::RefPtr< Atk::Valuewrap (AtkValue* object, bool take_copy=false)
 A Glib::wrap() method for this object. More...

 

Additional Inherited Members

- Public Types inherited from sigc::trackable
typedef internal::func_destroy_notify func_destroy_notify
 
- Public Types inherited from sigc::notifiable
typedef internal::func_destroy_notify func_destroy_notify
 

Detailed Description

The ATK interface implemented by valuators and components which display or select a value from a bounded range of values.

This should be implemented for components which either display a value from a bounded range, or which allow the user to specify a value from a bounded range, or both. For instance, most sliders and range controls, as well as dials, should have Atk::Object representations which implement Atk::Value on the component's behalf. Atk::Values may be read-only, in which case attempts to alter the value return false to indicate failure.

Constructor & Destructor Documentation

Atk::Value::Value ( )
protected

You should derive from this class to use it.

Atk::Value::Value ( Value&&  src)
noexcept
Atk::Value::~Value ( )
overridenoexcept

Member Function Documentation

static void Atk::Value::add_interface ( GType  gtype_implementer)
static
virtual void Atk::Value::get_current_value_vfunc ( Glib::ValueBase value) const
protectedvirtual
double Atk::Value::get_increment ( )

Gets the minimum increment by which the value of this object may be changed.

If zero, the minimum increment is undefined, which may mean that it is limited only by the floating point precision of the platform.

Since atkmm 2.12:
Returns
The minimum increment by which the value of this object may be changed. zero if undefined.
virtual void Atk::Value::get_maximum_value_vfunc ( Glib::ValueBase value) const
protectedvirtual
virtual void Atk::Value::get_minimum_value_vfunc ( Glib::ValueBase value) const
protectedvirtual
Range Atk::Value::get_range ( ) const

Gets the range of this object.

Since atkmm 2.12:
Returns
A newly allocated Atk::Range that represents the minimum, maximum and descriptor (if available) of obj. nullptr if that range is not defined.
static GType Atk::Value::get_type ( )
static

Get the GType for this class, for use with the underlying GObject type system.

void Atk::Value::get_value_and_text ( double &  value,
Glib::ustring text 
)

Gets the current value and the human readable text alternative.

Since atkmm 2.24:
AtkValue* Atk::Value::gobj ( )
inline

Provides access to the underlying C GObject.

const AtkValue* Atk::Value::gobj ( ) const
inline

Provides access to the underlying C GObject.

Value& Atk::Value::operator= ( Value&&  src)
noexcept
void Atk::Value::set_value ( const gdouble  new_value)

Sets the value of this object.

This method is intended to provide a way to change the value of the object. In any case, it is possible that the value can't be modified (ie: a read-only component). If the value changes due this call, it is possible that the text could change, and will trigger an Atk::Value::signal_value_changed() signal emission.

Note for implementors: the deprecated set_current_value() method returned true or false depending if the value was assigned or not. In the practice several implementors were not able to decide it, and returned true in any case. For that reason it is not required anymore to return if the value was properly assigned or not.

Since atkmm 2.12:
Parameters
new_valueA double which is the desired new accessible value.
Glib::SignalProxy<void(double, const Glib::ustring&)> Atk::Value::signal_value_changed ( )
Slot Prototype:
void on_my_value_changed(double value, const Glib::ustring& text)

Flags: Run Last

The 'value-changed' signal is emitted when the current value that represent the object changes. value is the numerical representation of this new value. text is the human readable text alternative of value, and can be nullptr if it is not available. Note that if there is a textual description associated with the new numeric value, that description should be included regardless of whether or not it has also changed.

Example: a password meter whose value changes as the user types their new password. Appropiate value text would be "weak", "acceptable" and "strong".

Since atkmm 2.12:
Parameters
valueThe new value in a numerical form.
textHuman readable text alternative (also called description) of this object. nullptr if not available.

Friends And Related Function Documentation

Glib::RefPtr< Atk::Value > wrap ( AtkValue *  object,
bool  take_copy = false 
)
related

A Glib::wrap() method for this object.

Parameters
objectThe C instance.
take_copyFalse if the result should take ownership of the C instance. True if it should take a new copy or ref.
Returns
A C++ instance that wraps this C instance.