Gtk.GRange

Entities

Tagged Types

Access Types

Constants

Subprograms

Generic Instantiations

Description

Gtk.GRange.Gtk_Range is the common base class for widgets which visualize an adjustment, e.g Gtk.Scale.Gtk_Scale or Gtk.Scrollbar.Gtk_Scrollbar.

Apart from signals for monitoring the parameters of the adjustment, Gtk.GRange.Gtk_Range provides properties and methods for influencing the sensitivity of the "steppers". It also provides properties and methods for setting a "fill level" on range widgets. See Gtk.GRange.Set_Fill_Level.

<screenshot>gtk-range</screenshot> <testgtk>create_range.adb</testgtk>

"+"

function "+"
  (Widget : access Gtk_Range_Record'Class)
return Gtk.Buildable.Gtk_Buildable
Parameters
Widget
Return Value

"+"

function "+"
  (Widget : access Gtk_Range_Record'Class)
return Gtk.Orientable.Gtk_Orientable
Parameters
Widget
Return Value

"-"

function "-"
  (Interf : Gtk.Buildable.Gtk_Buildable)
return Gtk_Range
Parameters
Interf
Return Value

"-"

function "-"
  (Interf : Gtk.Orientable.Gtk_Orientable)
return Gtk_Range
Parameters
Interf
Return Value

Adjustment_Property

Adjustment_Property : constant Glib.Properties.Property_Object;

Type: Gtk.Adjustment.Gtk_Adjustment

Cb_GObject_Gdouble_Void

type Cb_GObject_Gdouble_Void is not null access procedure
  (Self  : access Glib.Object.GObject_Record'Class;
   Value : Gdouble);
Parameters
Self
Value

Cb_GObject_Gtk_Scroll_Type_Gdouble_Boolean

type Cb_GObject_Gtk_Scroll_Type_Gdouble_Boolean is not null access function
  (Self   : access Glib.Object.GObject_Record'Class;
   Scroll : Gtk.Enums.Gtk_Scroll_Type;
   Value  : Gdouble) return Boolean;
Parameters
Self
Scroll
Value
Return Value

Cb_GObject_Gtk_Scroll_Type_Void

type Cb_GObject_Gtk_Scroll_Type_Void is not null access procedure
  (Self : access Glib.Object.GObject_Record'Class;
   Step : Gtk.Enums.Gtk_Scroll_Type);
Parameters
Self
Step

Cb_GObject_Void

type Cb_GObject_Void is not null access procedure
  (Self : access Glib.Object.GObject_Record'Class);
Parameters
Self

Cb_Gtk_Range_Gdouble_Void

type Cb_Gtk_Range_Gdouble_Void is not null access procedure
  (Self  : access Gtk_Range_Record'Class;
   Value : Gdouble);
Parameters
Self
Value

Cb_Gtk_Range_Gtk_Scroll_Type_Gdouble_Boolean

type Cb_Gtk_Range_Gtk_Scroll_Type_Gdouble_Boolean is not null access function
  (Self   : access Gtk_Range_Record'Class;
   Scroll : Gtk.Enums.Gtk_Scroll_Type;
   Value  : Gdouble) return Boolean;
Parameters
Self
Scroll
Value
Return Value

Cb_Gtk_Range_Gtk_Scroll_Type_Void

type Cb_Gtk_Range_Gtk_Scroll_Type_Void is not null access procedure
  (Self : access Gtk_Range_Record'Class;
   Step : Gtk.Enums.Gtk_Scroll_Type);
Parameters
Self
Step

Cb_Gtk_Range_Void

type Cb_Gtk_Range_Void is not null access procedure (Self : access Gtk_Range_Record'Class);
Parameters
Self

Fill_Level_Property

Fill_Level_Property : constant Glib.Properties.Property_Double;

Type: Gdouble The fill level (e.g. prebuffering of a network stream). See Gtk.GRange.Set_Fill_Level.

Get_Adjustment

function Get_Adjustment
   (The_Range : not null access Gtk_Range_Record)
    return Gtk.Adjustment.Gtk_Adjustment

Get the Gtk.Adjustment.Gtk_Adjustment which is the "model" object for Gtk.GRange.Gtk_Range. See Gtk.GRange.Set_Adjustment for details. The return value does not have a reference added, so should not be unreferenced.

Parameters
The_Range
Return Value

a Gtk.Adjustment.Gtk_Adjustment

Get_Fill_Level

function Get_Fill_Level
   (The_Range : not null access Gtk_Range_Record) return Gdouble

Gets the current position of the fill level indicator. Since: gtk+ 2.12

Parameters
The_Range
Return Value

The current fill level

Get_Flippable

function Get_Flippable
   (The_Range : not null access Gtk_Range_Record) return Boolean

Gets the value set by Gtk.GRange.Set_Flippable. Since: gtk+ 2.18

Parameters
The_Range
Return Value

True if the range is flippable

Get_Inverted

function Get_Inverted
   (The_Range : not null access Gtk_Range_Record) return Boolean

Gets the value set by Gtk.GRange.Set_Inverted.

Parameters
The_Range
Return Value

True if the range is inverted

Get_Lower_Stepper_Sensitivity

function Get_Lower_Stepper_Sensitivity
   (The_Range : not null access Gtk_Range_Record)
    return Gtk.Enums.Gtk_Sensitivity_Type

Gets the sensitivity policy for the stepper that points to the 'lower' end of the GtkRange's adjustment. Since: gtk+ 2.10

Parameters
The_Range
Return Value

The lower stepper's sensitivity policy.

Get_Min_Slider_Size

function Get_Min_Slider_Size
   (The_Range : not null access Gtk_Range_Record) return Glib.Gint

This function is useful mainly for Gtk.GRange.Gtk_Range subclasses. See Gtk.GRange.Set_Min_Slider_Size. Since: gtk+ 2.20 Deprecated since 3.20, 1

Parameters
The_Range
Return Value

The minimum size of the range's slider.

Get_Orientation

function Get_Orientation
   (Self : not null access Gtk_Range_Record)
    return Gtk.Enums.Gtk_Orientation
Parameters
Self
Return Value

Get_Range_Rect

procedure Get_Range_Rect
   (The_Range  : not null access Gtk_Range_Record;
    Range_Rect : out Gdk.Rectangle.Gdk_Rectangle)

This function returns the area that contains the range's trough and its steppers, in widget->window coordinates. This function is useful mainly for Gtk.GRange.Gtk_Range subclasses. Since: gtk+ 2.20

Parameters
The_Range
Range_Rect

return location for the range rectangle

Get_Restrict_To_Fill_Level

function Get_Restrict_To_Fill_Level
   (The_Range : not null access Gtk_Range_Record) return Boolean

Gets whether the range is restricted to the fill level. Since: gtk+ 2.12

Parameters
The_Range
Return Value

True if Range is restricted to the fill level.

Get_Round_Digits

function Get_Round_Digits
   (The_Range : not null access Gtk_Range_Record) return Glib.Gint

Gets the number of digits to round the value to when it changes. See Gtk.GRange.Gtk_Range::change-value. Since: gtk+ 2.24

Parameters
The_Range
Return Value

the number of digits to round to

Get_Show_Fill_Level

function Get_Show_Fill_Level
   (The_Range : not null access Gtk_Range_Record) return Boolean

Gets whether the range displays the fill level graphically. Since: gtk+ 2.12

Parameters
The_Range
Return Value

True if Range shows the fill level.

Get_Slider_Range

procedure Get_Slider_Range
   (The_Range    : not null access Gtk_Range_Record;
    Slider_Start : out Glib.Gint;
    Slider_End   : out Glib.Gint)

This function returns sliders range along the long dimension, in widget->window coordinates. This function is useful mainly for Gtk.GRange.Gtk_Range subclasses. Since: gtk+ 2.20

Parameters
The_Range
Slider_Start

return location for the slider's start, or null

Slider_End

return location for the slider's end, or null

Get_Slider_Size_Fixed

function Get_Slider_Size_Fixed
   (The_Range : not null access Gtk_Range_Record) return Boolean

This function is useful mainly for Gtk.GRange.Gtk_Range subclasses. See Gtk.GRange.Set_Slider_Size_Fixed. Since: gtk+ 2.20

Parameters
The_Range
Return Value

whether the range's slider has a fixed size.

Get_Type

function Get_Type return Glib.GType
Return Value

Get_Upper_Stepper_Sensitivity

function Get_Upper_Stepper_Sensitivity
   (The_Range : not null access Gtk_Range_Record)
    return Gtk.Enums.Gtk_Sensitivity_Type

Gets the sensitivity policy for the stepper that points to the 'upper' end of the GtkRange's adjustment. Since: gtk+ 2.10

Parameters
The_Range
Return Value

The upper stepper's sensitivity policy.

Get_Value

function Get_Value
   (The_Range : not null access Gtk_Range_Record) return Gdouble

Gets the current value of the range.

Parameters
The_Range
Return Value

current value of the range.

Gtk_Range

type Gtk_Range is access all Gtk_Range_Record'Class;

Gtk_Range_Record

type Gtk_Range_Record is new Gtk_Widget_Record with null record;

Implements_Gtk_Buildable

package Implements_Gtk_Buildable is new Glib.Types.Implements
  (Gtk.Buildable.Gtk_Buildable, Gtk_Range_Record, Gtk_Range);

Implements_Gtk_Orientable

package Implements_Gtk_Orientable is new Glib.Types.Implements
  (Gtk.Orientable.Gtk_Orientable, Gtk_Range_Record, Gtk_Range);

Inverted_Property

Inverted_Property : constant Glib.Properties.Property_Boolean;

Lower_Stepper_Sensitivity_Property

Lower_Stepper_Sensitivity_Property : constant Gtk.Enums.Property_Gtk_Sensitivity_Type;

On_Adjust_Bounds

procedure On_Adjust_Bounds
   (Self  : not null access Gtk_Range_Record;
    Call  : Cb_GObject_Gdouble_Void;
    Slot  : not null access Glib.Object.GObject_Record'Class;
    After : Boolean := False)

Emitted before clamping a value, to give the application a chance to adjust the bounds.

Parameters
Self
Call
Slot
After

On_Adjust_Bounds

procedure On_Adjust_Bounds
   (Self  : not null access Gtk_Range_Record;
    Call  : Cb_Gtk_Range_Gdouble_Void;
    After : Boolean := False)

Emitted before clamping a value, to give the application a chance to adjust the bounds.

Parameters
Self
Call
After

On_Change_Value

procedure On_Change_Value
   (Self  : not null access Gtk_Range_Record;
    Call  : Cb_GObject_Gtk_Scroll_Type_Gdouble_Boolean;
    Slot  : not null access Glib.Object.GObject_Record'Class;
    After : Boolean := False)

The Gtk.GRange.Gtk_Range::change-value signal is emitted when a scroll action is performed on a range. It allows an application to determine the type of scroll event that occurred and the resultant new value. The application can handle the event itself and return True to prevent further processing. Or, by returning False, it can pass the event to other handlers until the default GTK+ handler is reached.

The value parameter is unrounded. An application that overrides the GtkRange::change-value signal is responsible for clamping the value to the desired number of decimal digits; the default GTK+ handler clamps the value based on Gtk.GRange.Gtk_Range:round-digits.

Callback parameters: -- @param Scroll the type of scroll action that was performed -- @param Value the new value resulting from the scroll action

Parameters
Self
Call
Slot
After

On_Change_Value

procedure On_Change_Value
   (Self  : not null access Gtk_Range_Record;
    Call  : Cb_Gtk_Range_Gtk_Scroll_Type_Gdouble_Boolean;
    After : Boolean := False)

The Gtk.GRange.Gtk_Range::change-value signal is emitted when a scroll action is performed on a range. It allows an application to determine the type of scroll event that occurred and the resultant new value. The application can handle the event itself and return True to prevent further processing. Or, by returning False, it can pass the event to other handlers until the default GTK+ handler is reached.

The value parameter is unrounded. An application that overrides the GtkRange::change-value signal is responsible for clamping the value to the desired number of decimal digits; the default GTK+ handler clamps the value based on Gtk.GRange.Gtk_Range:round-digits.

Callback parameters: -- @param Scroll the type of scroll action that was performed -- @param Value the new value resulting from the scroll action

Parameters
Self
Call
After

On_Move_Slider

procedure On_Move_Slider
   (Self  : not null access Gtk_Range_Record;
    Call  : Cb_GObject_Gtk_Scroll_Type_Void;
    Slot  : not null access Glib.Object.GObject_Record'Class;
    After : Boolean := False)

Virtual function that moves the slider. Used for keybindings.

Parameters
Self
Call
Slot
After

On_Move_Slider

procedure On_Move_Slider
   (Self  : not null access Gtk_Range_Record;
    Call  : Cb_Gtk_Range_Gtk_Scroll_Type_Void;
    After : Boolean := False)

Virtual function that moves the slider. Used for keybindings.

Parameters
Self
Call
After

On_Value_Changed

procedure On_Value_Changed
   (Self  : not null access Gtk_Range_Record;
    Call  : Cb_GObject_Void;
    Slot  : not null access Glib.Object.GObject_Record'Class;
    After : Boolean := False)

Emitted when the range value changes.

Parameters
Self
Call
Slot
After

On_Value_Changed

procedure On_Value_Changed
   (Self  : not null access Gtk_Range_Record;
    Call  : Cb_Gtk_Range_Void;
    After : Boolean := False)

Emitted when the range value changes.

Parameters
Self
Call
After

Restrict_To_Fill_Level_Property

Restrict_To_Fill_Level_Property : constant Glib.Properties.Property_Boolean;

The restrict-to-fill-level property controls whether slider movement is restricted to an upper boundary set by the fill level. See Gtk.GRange.Set_Restrict_To_Fill_Level.

Round_Digits_Property

Round_Digits_Property : constant Glib.Properties.Property_Int;

The number of digits to round the value to when it changes, or -1. See Gtk.GRange.Gtk_Range::change-value.

Set_Adjustment

procedure Set_Adjustment
   (The_Range  : not null access Gtk_Range_Record;
    Adjustment : not null access Gtk.Adjustment.Gtk_Adjustment_Record'Class)

Sets the adjustment to be used as the "model" object for this range widget. The adjustment indicates the current range value, the minimum and maximum range values, the step/page increments used for keybindings and scrolling, and the page size. The page size is normally 0 for Gtk.Scale.Gtk_Scale and nonzero for Gtk.Scrollbar.Gtk_Scrollbar, and indicates the size of the visible area of the widget being scrolled. The page size affects the size of the scrollbar slider.

Parameters
The_Range
Adjustment

a Gtk.Adjustment.Gtk_Adjustment

Set_Fill_Level

procedure Set_Fill_Level
   (The_Range  : not null access Gtk_Range_Record;
    Fill_Level : Gdouble)

Set the new position of the fill level indicator. The "fill level" is probably best described by its most prominent use case, which is an indicator for the amount of pre-buffering in a streaming media player. In that use case, the value of the range would indicate the current play position, and the fill level would be the position up to which the file/stream has been downloaded. This amount of prebuffering can be displayed on the range's trough and is themeable separately from the trough. To enable fill level display, use Gtk.GRange.Set_Show_Fill_Level. The range defaults to not showing the fill level. Additionally, it's possible to restrict the range's slider position to values which are smaller than the fill level. This is controller by Gtk.GRange.Set_Restrict_To_Fill_Level and is by default enabled. Since: gtk+ 2.12

Parameters
The_Range
Fill_Level

the new position of the fill level indicator

Set_Flippable

procedure Set_Flippable
   (The_Range : not null access Gtk_Range_Record;
    Flippable : Boolean)

If a range is flippable, it will switch its direction if it is horizontal and its direction is Gtk.Enums.Text_Dir_Rtl. See Gtk.Widget.Get_Direction. Since: gtk+ 2.18

Parameters
The_Range
Flippable

True to make the range flippable

Set_Increments

procedure Set_Increments
   (The_Range : not null access Gtk_Range_Record;
    Step      : Gdouble;
    Page      : Gdouble)

Sets the step and page sizes for the range. The step size is used when the user clicks the Gtk.Scrollbar.Gtk_Scrollbar arrows or moves Gtk.Scale.Gtk_Scale via arrow keys. The page size is used for example when moving via Page Up or Page Down keys.

Parameters
The_Range
Step

step size

Page

page size

Set_Inverted

procedure Set_Inverted
   (The_Range : not null access Gtk_Range_Record;
    Setting   : Boolean)

Ranges normally move from lower to higher values as the slider moves from top to bottom or left to right. Inverted ranges have higher values at the top or on the right rather than on the bottom or left.

Parameters
The_Range
Setting

True to invert the range

Set_Lower_Stepper_Sensitivity

procedure Set_Lower_Stepper_Sensitivity
   (The_Range   : not null access Gtk_Range_Record;
    Sensitivity : Gtk.Enums.Gtk_Sensitivity_Type)

Sets the sensitivity policy for the stepper that points to the 'lower' end of the GtkRange's adjustment. Since: gtk+ 2.10

Parameters
The_Range
Sensitivity

the lower stepper's sensitivity policy.

Set_Min_Slider_Size

procedure Set_Min_Slider_Size
   (The_Range : not null access Gtk_Range_Record;
    Min_Size  : Glib.Gint)

Sets the minimum size of the range's slider. This function is useful mainly for Gtk.GRange.Gtk_Range subclasses. Since: gtk+ 2.20 Deprecated since 3.20, 1

Parameters
The_Range
Min_Size

The slider's minimum size

Set_Orientation

procedure Set_Orientation
   (Self        : not null access Gtk_Range_Record;
    Orientation : Gtk.Enums.Gtk_Orientation)
Parameters
Self
Orientation

Set_Range

procedure Set_Range
   (The_Range : not null access Gtk_Range_Record;
    Min       : Gdouble;
    Max       : Gdouble)

Sets the allowable values in the Gtk.GRange.Gtk_Range, and clamps the range value to be between Min and Max. (If the range has a non-zero page size, it is clamped between Min and Max - page-size.)

Parameters
The_Range
Min

minimum range value

Max

maximum range value

Set_Restrict_To_Fill_Level

procedure Set_Restrict_To_Fill_Level
   (The_Range              : not null access Gtk_Range_Record;
    Restrict_To_Fill_Level : Boolean)

Sets whether the slider is restricted to the fill level. See Gtk.GRange.Set_Fill_Level for a general description of the fill level concept. Since: gtk+ 2.12

Parameters
The_Range
Restrict_To_Fill_Level

Whether the fill level restricts slider movement.

Set_Round_Digits

procedure Set_Round_Digits
   (The_Range    : not null access Gtk_Range_Record;
    Round_Digits : Glib.Gint)

Sets the number of digits to round the value to when it changes. See Gtk.GRange.Gtk_Range::change-value. Since: gtk+ 2.24

Parameters
The_Range
Round_Digits

the precision in digits, or -1

Set_Show_Fill_Level

procedure Set_Show_Fill_Level
   (The_Range       : not null access Gtk_Range_Record;
    Show_Fill_Level : Boolean)

Sets whether a graphical fill level is show on the trough. See Gtk.GRange.Set_Fill_Level for a general description of the fill level concept. Since: gtk+ 2.12

Parameters
The_Range
Show_Fill_Level

Whether a fill level indicator graphics is shown.

Set_Slider_Size_Fixed

procedure Set_Slider_Size_Fixed
   (The_Range  : not null access Gtk_Range_Record;
    Size_Fixed : Boolean)

Sets whether the range's slider has a fixed size, or a size that depends on its adjustment's page size. This function is useful mainly for Gtk.GRange.Gtk_Range subclasses. Since: gtk+ 2.20

Parameters
The_Range
Size_Fixed

True to make the slider size constant

Set_Upper_Stepper_Sensitivity

procedure Set_Upper_Stepper_Sensitivity
   (The_Range   : not null access Gtk_Range_Record;
    Sensitivity : Gtk.Enums.Gtk_Sensitivity_Type)

Sets the sensitivity policy for the stepper that points to the 'upper' end of the GtkRange's adjustment. Since: gtk+ 2.10

Parameters
The_Range
Sensitivity

the upper stepper's sensitivity policy.

Set_Value

procedure Set_Value
   (The_Range : not null access Gtk_Range_Record;
    Value     : Gdouble)

Sets the current value of the range; if the value is outside the minimum or maximum range values, it will be clamped to fit inside them. The range emits the Gtk.GRange.Gtk_Range::value-changed signal if the value changes.

Parameters
The_Range
Value

new value of the range

Show_Fill_Level_Property

Show_Fill_Level_Property : constant Glib.Properties.Property_Boolean;

The show-fill-level property controls whether fill level indicator graphics are displayed on the trough. See Gtk.GRange.Set_Show_Fill_Level.

Signal_Adjust_Bounds

Signal_Adjust_Bounds : constant Glib.Signal_Name := "adjust-bounds";

Emitted before clamping a value, to give the application a chance to adjust the bounds.

Signal_Change_Value

Signal_Change_Value : constant Glib.Signal_Name := "change-value";

The Gtk.GRange.Gtk_Range::change-value signal is emitted when a scroll action is performed on a range. It allows an application to determine the type of scroll event that occurred and the resultant new value. The application can handle the event itself and return True to prevent further processing. Or, by returning False, it can pass the event to other handlers until the default GTK+ handler is reached.

The value parameter is unrounded. An application that overrides the GtkRange::change-value signal is responsible for clamping the value to the desired number of decimal digits; the default GTK+ handler clamps the value based on Gtk.GRange.Gtk_Range:round-digits.

Callback parameters: -- @param Scroll the type of scroll action that was performed -- @param Value the new value resulting from the scroll action

Signal_Move_Slider

Signal_Move_Slider : constant Glib.Signal_Name := "move-slider";

Virtual function that moves the slider. Used for keybindings.

Signal_Value_Changed

Signal_Value_Changed : constant Glib.Signal_Name := "value-changed";

Emitted when the range value changes.

Upper_Stepper_Sensitivity_Property

Upper_Stepper_Sensitivity_Property : constant Gtk.Enums.Property_Gtk_Sensitivity_Type;