gtkmm: Gtk::Adjustment Class Reference

gtkmm 2.24.5

Public Member Functions | Protected Member Functions | Related Functions | List of all members
Gtk::Adjustment Class Reference

A class representing an adjustable bounded value. More...

Inheritance diagram for Gtk::Adjustment:
[legend]
Collaboration diagram for Gtk::Adjustment:
[legend]

## Public Member Functions
virtual | ~Adjustment ()
GtkAdjustment* | gobj ()
| Provides access to the underlying C GtkObject. More...
const GtkAdjustment* | gobj () const
| Provides access to the underlying C GtkObject. More...
| Adjustment (double value, double lower, double upper, double step_increment=1, double page_increment=10, double page_size=0)
| Constructor to create an Adjustment object. More...
void | changed ()
| Emits a "changed" signal from the Adjustment. More...
void | value_changed ()
| Emits a "value_changed" signal from the Adjustment. More...
void | clamp_page (double lower, double upper)
| Updates the Adjustment value to ensure that the range between the parameters lower and upper is in the current page (i.e. between value and value + page_size). More...
void | set_value (double value)
| Sets the current value of the Adjustment. More...
double | get_value () const
| Gets the current value of the adjustment. More...
void | set_lower (double lower)
| Sets the minimum value of the adjustment. More...
double | get_lower () const
| Retrieves the minimum value of the adjustment. More...
void | set_upper (double upper)
| Sets the maximum value of the adjustment. More...
double | get_upper () const
| Retrieves the maximum value of the adjustment. More...
void | set_step_increment (double step_increment)
| Sets the step increment of the adjustment. More...
double | get_step_increment () const
| Retrieves the step increment of the adjustment. More...
void | set_page_increment (double page_increment)
| Sets the page increment of the adjustment. More...
double | get_page_increment () const
| Retrieves the page increment of the adjustment. More...
void | set_page_size (double page_size)
| Sets the page size of the adjustment. More...
double | get_page_size () const
| Retrieves the page size of the adjustment. More...
void | configure (double value, double lower, double upper, double step_increment, double page_increment, double page_size)
| Sets all properties of the adjustment at once. More...
Glib::SignalProxy< void > | signal_changed ()
Glib::SignalProxy< void > | signal_value_changed ()
Glib::PropertyProxy< double > | property_value ()
| The value of the adjustment. More...
Glib::PropertyProxy_ReadOnly< double > | property_value () const
| The value of the adjustment. More...
Glib::PropertyProxy< double > | property_lower ()
| The minimum value of the adjustment. More...
Glib::PropertyProxy_ReadOnly< double > | property_lower () const
| The minimum value of the adjustment. More...
Glib::PropertyProxy< double > | property_upper ()
| The maximum value of the adjustment. More...
Glib::PropertyProxy_ReadOnly< double > | property_upper () const
| The maximum value of the adjustment. More...
Glib::PropertyProxy< double > | property_step_increment ()
| The step increment of the adjustment. More...
Glib::PropertyProxy_ReadOnly< double > | property_step_increment () const
| The step increment of the adjustment. More...
Glib::PropertyProxy< double > | property_page_increment ()
| The page increment of the adjustment. More...
Glib::PropertyProxy_ReadOnly< double > | property_page_increment () const
| The page increment of the adjustment. More...
Glib::PropertyProxy< double > | property_page_size ()
| The page size of the adjustment. More...
Glib::PropertyProxy_ReadOnly< double > | property_page_size () const
| The page size of the adjustment. More...
Public Member Functions inherited from Gtk::Object
virtual | ~Object ()
GtkObject* | gobj ()
| Provides access to the underlying C GtkObject. More...
const GtkObject* | gobj () const
| Provides access to the underlying C GtkObject. More...
Glib::PropertyProxy< void*> | property_user_data ()
| Anonymous User Data Pointer. More...
Glib::PropertyProxy_ReadOnly< void*> | property_user_data () const
| Anonymous User Data Pointer. More...
Public Member Functions inherited from Glib::Object
| Object (const Object &)=delete
Object & | operator= (const Object &)=delete
| Object (Object &&src) noexcept
Object & | operator= (Object &&src) noexcept
void * | get_data (const QueryQuark &key)
void | set_data (const Quark &key, void *data)
void | set_data (const Quark &key, void *data, DestroyNotify notify)
void | remove_data (const QueryQuark &quark)
void * | steal_data (const QueryQuark &quark)
Glib::RefPtr< Glib::Object > | wrap (GObject *object, bool take_copy=false)
Public Member Functions inherited from Glib::ObjectBase
| ObjectBase (const ObjectBase &)=delete
ObjectBase & | operator= (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
void | connect_property_changed (const Glib::ustring &property_name, const sigc::slot< void > &slot)
void | connect_property_changed (const Glib::ustring &property_name, sigc::slot< void > &&slot)
sigc::connection | connect_property_changed_with_return (const Glib::ustring &property_name, const sigc::slot< void > &slot)
sigc::connection | connect_property_changed_with_return (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)
| ~trackable ()
void | add_destroy_notify_callback (void *data, func_destroy_notify func) const
void | notify_callbacks ()
trackable & | operator= (const trackable &src)
trackable & | operator= (trackable &&src)
void | remove_destroy_notify_callback (void *data) const

## Protected Member Functions
virtual void | on_changed ()
| This is a default handler for the signal signal_changed(). More...
virtual void | on_value_changed ()
| This is a default handler for the signal signal_value_changed(). More...
Protected Member Functions inherited from Glib::Object
| Object ()
| Object (const Glib::ConstructParams &construct_params)
| Object (GObject *castitem)
| ~Object () noexcept override
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
ObjectBase & | operator= (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.)
Gtk::Adjustment* | wrap (GtkAdjustment* object, bool take_copy=false)
| A Glib::wrap() method for this object. More...
Related Functions inherited from Gtk::Object
Gtk::Object* | wrap (GtkObject* object, bool take_copy=false)
| A Glib::wrap() method for this object. More...

## Additional Inherited Members
Public Types inherited from Glib::Object
typedef void(*)(gpointer data | DestroyNotify)
Public Types inherited from sigc::trackable
typedef internal::func_destroy_notify | func_destroy_notify

## Detailed Description

A class representing an adjustable bounded value.

The Gtk::Adjustment object represents a value which has an associated lower and upper bound, together with step and page increments, and a page size. It is used within several gtkmm widgets, including Gtk::SpinButton, Gtk::Viewport, and Gtk::Range (which is a base class for Gtk::HScrollbar, Gtk::VScrollbar, Gtk::HScale, and Gtk::VScale).

The Gtk::Adjustment object does not update the value itself. Instead it is left up to the owner of the Gtk::Adjustment to control the value.

The owner of the Gtk::Adjustment typically calls the value_changed() and changed() functions after changing the value and its bounds. This results in the emission of the "value_changed" or "changed" signal respectively.

## Constructor & Destructor Documentation

## ◆ ~Adjustment()

virtual Gtk::Adjustment::~Adjustment | ( |  | ) |
| virtual

## ◆ Adjustment()

Gtk::Adjustment::Adjustment | ( | double | value,
|  | double | lower,
|  | double | upper,
|  | double | step_increment = `1`,
|  | double | page_increment = `10`,
|  | double | page_size = `0`
| ) |  |

Constructor to create an Adjustment object.

Parameters

  value | The initial value
  lower | The minimum value
  upper | The maximum value
  step_increment | The step increment
  page_increment | The page increment
  page_size | The page size

## Member Function Documentation

## ◆ changed()

void Gtk::Adjustment::changed | ( |  | ) |

Emits a "changed" signal from the Adjustment.

This is typically called by the owner of the Adjustment after it has changed any of the Adjustment fields other than the value.

## ◆ clamp_page()

void Gtk::Adjustment::clamp_page | ( | double | lower,
|  | double | upper
| ) |  |

Updates the Adjustment value to ensure that the range between the parameters lower and upper is in the current page (i.e. between value and value + page_size).

If this range is larger than the page size, then only the start of it will be in the current page. A "changed" signal will be emitted if the value is changed.

Parameters

  upper | The upper value.
  lower | The lower value.

## ◆ configure()

void Gtk::Adjustment::configure | ( | double | value,
|  | double | lower,
|  | double | upper,
|  | double | step_increment,
|  | double | page_increment,
|  | double | page_size
| ) |  |

Sets all properties of the adjustment at once.

Use this function to avoid multiple emissions of the "changed" signal. See set_lower() for an alternative way of compressing multiple emissions of "changed" into one.

Since gtkmm 2.14:

Parameters

  value | The new value.
  lower | The new minimum value.
  upper | The new maximum value.
  step_increment | The new step increment.
  page_increment | The new page increment.
  page_size | The new page size.

## ◆ get_lower()

double Gtk::Adjustment::get_lower | ( |  | ) | const

Retrieves the minimum value of the adjustment.

Since gtkmm 2.14:

Returns
  The current minimum value of the adjustment.

## ◆ get_page_increment()

double Gtk::Adjustment::get_page_increment | ( |  | ) | const

Retrieves the page increment of the adjustment.

Since gtkmm 2.14:

Returns
  The current page increment of the adjustment.

## ◆ get_page_size()

double Gtk::Adjustment::get_page_size | ( |  | ) | const

Retrieves the page size of the adjustment.

Since gtkmm 2.14:

Returns
  The current page size of the adjustment.

## ◆ get_step_increment()

double Gtk::Adjustment::get_step_increment | ( |  | ) | const

Retrieves the step increment of the adjustment.

Since gtkmm 2.14:

Returns
  The current step increment of the adjustment.

## ◆ get_upper()

double Gtk::Adjustment::get_upper | ( |  | ) | const

Retrieves the maximum value of the adjustment.

Since gtkmm 2.14:

Returns
  The current maximum value of the adjustment.

## ◆ get_value()

double Gtk::Adjustment::get_value | ( |  | ) | const

Gets the current value of the adjustment.

See set_value().

Returns
  The current value of the adjustment.

## ◆ gobj() [1/2]

GtkAdjustment* Gtk::Adjustment::gobj | ( |  | ) |
| inline

Provides access to the underlying C GtkObject.

## ◆ gobj() [2/2]

const GtkAdjustment* Gtk::Adjustment::gobj | ( |  | ) | const
| inline

Provides access to the underlying C GtkObject.

## ◆ on_changed()

virtual void Gtk::Adjustment::on_changed | ( |  | ) |
| protectedvirtual

This is a default handler for the signal signal_changed().

## ◆ on_value_changed()

virtual void Gtk::Adjustment::on_value_changed | ( |  | ) |
| protectedvirtual

This is a default handler for the signal signal_value_changed().

## ◆ property_lower() [1/2]

Glib::PropertyProxy< double > Gtk::Adjustment::property_lower | ( |  | ) |

The minimum value of the adjustment.

Returns
  A PropertyProxy that allows you to get or set the value of the property, or receive notification when the value of the property changes.

## ◆ property_lower() [2/2]

Glib::PropertyProxy_ReadOnly< double > Gtk::Adjustment::property_lower | ( |  | ) | const

The minimum value of the adjustment.

Returns
  A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.

## ◆ property_page_increment() [1/2]

Glib::PropertyProxy< double > Gtk::Adjustment::property_page_increment | ( |  | ) |

The page increment of the adjustment.

Returns
  A PropertyProxy that allows you to get or set the value of the property, or receive notification when the value of the property changes.

## ◆ property_page_increment() [2/2]

Glib::PropertyProxy_ReadOnly< double > Gtk::Adjustment::property_page_increment | ( |  | ) | const

The page increment of the adjustment.

Returns
  A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.

## ◆ property_page_size() [1/2]

Glib::PropertyProxy< double > Gtk::Adjustment::property_page_size | ( |  | ) |

The page size of the adjustment.

Returns
  A PropertyProxy that allows you to get or set the value of the property, or receive notification when the value of the property changes.

## ◆ property_page_size() [2/2]

Glib::PropertyProxy_ReadOnly< double > Gtk::Adjustment::property_page_size | ( |  | ) | const

The page size of the adjustment.

Returns
  A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.

## ◆ property_step_increment() [1/2]

Glib::PropertyProxy< double > Gtk::Adjustment::property_step_increment | ( |  | ) |

The step increment of the adjustment.

Returns
  A PropertyProxy that allows you to get or set the value of the property, or receive notification when the value of the property changes.

## ◆ property_step_increment() [2/2]

Glib::PropertyProxy_ReadOnly< double > Gtk::Adjustment::property_step_increment | ( |  | ) | const

The step increment of the adjustment.

Returns
  A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.

## ◆ property_upper() [1/2]

Glib::PropertyProxy< double > Gtk::Adjustment::property_upper | ( |  | ) |

The maximum value of the adjustment.

Returns
  A PropertyProxy that allows you to get or set the value of the property, or receive notification when the value of the property changes.

## ◆ property_upper() [2/2]

Glib::PropertyProxy_ReadOnly< double > Gtk::Adjustment::property_upper | ( |  | ) | const

The maximum value of the adjustment.

Returns
  A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.

## ◆ property_value() [1/2]

Glib::PropertyProxy< double > Gtk::Adjustment::property_value | ( |  | ) |

The value of the adjustment.

Returns
  A PropertyProxy that allows you to get or set the value of the property, or receive notification when the value of the property changes.

## ◆ property_value() [2/2]

Glib::PropertyProxy_ReadOnly< double > Gtk::Adjustment::property_value | ( |  | ) | const

The value of the adjustment.

Returns
  A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.

## ◆ set_lower()

void Gtk::Adjustment::set_lower | ( | double | lower | ) |

Sets the minimum value of the adjustment.

When setting multiple adjustment properties via their individual setters, multiple "changed" signals will be emitted. However, since the emission of the "changed" signal is tied to the emission of the "GObject::notify" signals of the changed properties, it's possible to compress the "changed" signals into one by calling Glib::object_freeze_notify() and Glib::object_thaw_notify() around the calls to the individual setters.

Alternatively, using a single Glib::object_set() for all the properties to change, or using configure() has the same effect of compressing "changed" emissions.

Since gtkmm 2.14:

Parameters

  lower | The new minimum value.

## ◆ set_page_increment()

void Gtk::Adjustment::set_page_increment | ( | double | page_increment | ) |

Sets the page increment of the adjustment.

See set_lower() about how to compress multiple emissions of the "changed" signal when setting multiple adjustment properties.

Since gtkmm 2.14:

Parameters

  page_increment | The new page increment.

## ◆ set_page_size()

void Gtk::Adjustment::set_page_size | ( | double | page_size | ) |

Sets the page size of the adjustment.

See set_lower() about how to compress multiple emissions of the "changed" signal when setting multiple adjustment properties.

Since gtkmm 2.14:

Parameters

  page_size | The new page size.

## ◆ set_step_increment()

void Gtk::Adjustment::set_step_increment | ( | double | step_increment | ) |

Sets the step increment of the adjustment.

See set_lower() about how to compress multiple emissions of the "changed" signal when setting multiple adjustment properties.

Since gtkmm 2.14:

Parameters

  step_increment | The new step increment.

## ◆ set_upper()

void Gtk::Adjustment::set_upper | ( | double | upper | ) |

Sets the maximum value of the adjustment.

Note that values will be restricted by `upper - page-size` if the page-size property is nonzero.

See set_lower() about how to compress multiple emissions of the "changed" signal when setting multiple adjustment properties.

Since gtkmm 2.14:

Parameters

  upper | The new maximum value.

## ◆ set_value()

void Gtk::Adjustment::set_value | ( | double | value | ) |

Sets the current value of the Adjustment.

Parameters

  value | The new value of the Adjustment.

## ◆ signal_changed()

Glib::SignalProxy< void > Gtk::Adjustment::signal_changed | ( |  | ) |

Slot Prototype:
  `void on_my_changed()`

Flags: Run First

## ◆ signal_value_changed()

Glib::SignalProxy< void > Gtk::Adjustment::signal_value_changed | ( |  | ) |

Slot Prototype:
  `void on_my_value_changed()`

Flags: Run First

## ◆ value_changed()

void Gtk::Adjustment::value_changed | ( |  | ) |

Emits a "value_changed" signal from the Adjustment.

This is typically called by the owner of the Adjustment after it has changed the Adjustment value field.

## Friends And Related Function Documentation

## ◆ wrap()

Gtk::Adjustment* wrap | ( | GtkAdjustment * | object,
|  | bool | take_copy = `false`
| ) |  |
| related

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

Parameters

  object | The C instance.
  take_copy | False 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.

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

- gtkmm/adjustment.h