atkmm 2.36.3
Public Member Functions | Static Public Member Functions | Public Attributes | Protected Member Functions | Related Symbols | List of all members
Atk::Value Class Reference

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:
Inheritance graph
[legend]

Public Member Functions

 Value (Value && src) noexcept
 
Valueoperator= (Value && src) noexcept
 
 ~Value () noexcept override
 
AtkValue * gobj ()
 Provides access to the underlying C GObject.
 
const AtkValue * gobj () const
 Provides access to the underlying C GObject.
 
void get_value_and_text (double & value, Glib::ustring & text)
 Gets the current value and the human readable text alternative.
 
Range get_range () const
 Gets the range of this object.
 
double get_increment ()
 Gets the minimum increment by which the value of this object may be changed.
 
void set_value (const gdouble new_value)
 Sets the value of this object.
 

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.
 

Public Attributes

Glib::SignalProxy< void(double, const Glib::ustring &) signal_value_changed )()
 

Protected Member Functions

 Value ()
 You should derive from this class to use it.
 
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
 

Related Symbols

(Note that these are not member symbols.)

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

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

◆ Value() [1/2]

Atk::Value::Value ( )
protected

You should derive from this class to use it.

◆ Value() [2/2]

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

◆ ~Value()

Atk::Value::~Value ( )
overridenoexcept

Member Function Documentation

◆ add_interface()

static void Atk::Value::add_interface ( GType gtype_implementer)
static

◆ get_current_value_vfunc()

virtual void Atk::Value::get_current_value_vfunc ( Glib::ValueBase & value) const
protectedvirtual

◆ get_increment()

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.

◆ get_maximum_value_vfunc()

virtual void Atk::Value::get_maximum_value_vfunc ( Glib::ValueBase & value) const
protectedvirtual

◆ get_minimum_value_vfunc()

virtual void Atk::Value::get_minimum_value_vfunc ( Glib::ValueBase & value) const
protectedvirtual

◆ get_range()

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.

◆ get_type()

static GType Atk::Value::get_type ( )
static

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

◆ get_value_and_text()

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

◆ gobj() [1/2]

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

Provides access to the underlying C GObject.

◆ gobj() [2/2]

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

Provides access to the underlying C GObject.

◆ operator=()

Value & Atk::Value::operator= ( Value && src)
noexcept

◆ set_value()

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.

Friends And Related Symbol Documentation

◆ wrap()

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.

Member Data Documentation

◆ signal_value_changed

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.