GtkScrollbar

GtkScrollbar — A Scrollbar

Functions

Types and Values

struct GtkScrollbar

Object Hierarchy

    GObject
    ╰── GInitiallyUnowned
        ╰── GtkWidget
            ╰── GtkRange
                ╰── GtkScrollbar
                    ├── GtkHScrollbar
                    ╰── GtkVScrollbar

Implemented Interfaces

GtkScrollbar implements AtkImplementorIface, GtkBuildable and GtkOrientable.

Includes

#include <gtk/gtk.h>

Description

The GtkScrollbar widget is a horizontal or vertical scrollbar, depending on the value of the “orientation” property.

The position of the thumb in a scrollbar is controlled by the scroll adjustments. See GtkAdjustment for the fields in an adjustment - for GtkScrollbar, the “value” field represents the position of the scrollbar, which must be between the “lower” field and “upper” - “page-size”. The “page-size” field represents the size of the visible scrollable area. The “step-increment” and “page-increment” fields are properties when the user asks to step down (using the small stepper arrows) or page down (using for example the Page Down key).

CSS nodes

scrollbar[.fine-tune]
╰── contents
    ├── [button.up]
    ├── [button.down]
    ├── trough
    │   ╰── slider
    ├── [button.up]
    ╰── [button.down]

GtkScrollbar has a main CSS node with name scrollbar and a subnode for its contents, with subnodes named trough and slider.

The main node gets the style class .fine-tune added when the scrollbar is in 'fine-tuning' mode.

If steppers are enabled, they are represented by up to four additional subnodes with name button. These get the style classes .up and .down to indicate in which direction they are moving.

Other style classes that may be added to scrollbars inside GtkScrolledWindow include the positional classes (.left, .right, .top, .bottom) and style classes related to overlay scrolling (.overlay-indicator, .dragging, .hovering).

Functions

gtk_scrollbar_new ()

GtkWidget *
gtk_scrollbar_new (GtkOrientation orientation,
                   GtkAdjustment *adjustment);

Creates a new scrollbar with the given orientation.

Parameters

orientation

the scrollbar’s orientation.

adjustment

the GtkAdjustment to use, or NULL to create a new adjustment.

[allow-none]

Returns

the new GtkScrollbar.

Since: 3.0

Types and Values

struct GtkScrollbar

struct GtkScrollbar;

Style Property Details

The “fixed-slider-length” style property

  “fixed-slider-length”      gboolean

Don't change slider size, just lock it to the minimum length.

Flags: Read

Default value: FALSE

The “has-backward-stepper” style property

  “has-backward-stepper”     gboolean

Display the standard backward arrow button.

Flags: Read

Default value: TRUE

The “has-forward-stepper” style property

  “has-forward-stepper”      gboolean

Display the standard forward arrow button.

Flags: Read

Default value: TRUE

The “has-secondary-backward-stepper” style property

  “has-secondary-backward-stepper” gboolean

Display a second backward arrow button on the opposite end of the scrollbar.

Flags: Read

Default value: FALSE

The “has-secondary-forward-stepper” style property

  “has-secondary-forward-stepper” gboolean

Display a second forward arrow button on the opposite end of the scrollbar.

Flags: Read

Default value: FALSE

The “min-slider-length” style property

  “min-slider-length”        gint

Minimum length of scrollbar slider.

GtkScrollbar:min-slider-length has been deprecated since version 3.20 and should not be used in newly-written code.

Use min-height/min-width CSS properties on the slider element instead. The value of this style property is ignored.

Flags: Read

Allowed values: >= 0

Default value: 21

© 2005–2020 The GNOME Project
Licensed under the GNU Lesser General Public License version 2.1 or later.
https://developer.gnome.org/gtk3/3.20/GtkScrollbar.html