GtkScrollbar

GtkScrollbar — A Scrollbar

Functions

Style Properties

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.

Its position and movement are controlled by the adjustment that is passed to or created by gtk_scrollbar_new(). See GtkAdjustment for more details. The “value” field sets the position of the thumb and must be between “lower” and “upper” - “page-size”. The “page-size” represents the size of the visible scrollable area. The fields “step-increment” and “page-increment” fields are added to or subtracted from the “value” when the user asks to move by a step (using e.g. the cursor arrow keys or, if present, the stepper buttons) or by a page (using e.g. the Page Down/Up keys).

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.

Owner: GtkScrollbar

Flags: Read

Default value: FALSE

The “has-backward-stepper” style property

  “has-backward-stepper”     gboolean

Display the standard backward arrow button.

Owner: GtkScrollbar

Flags: Read

Default value: TRUE

The “has-forward-stepper” style property

  “has-forward-stepper”      gboolean

Display the standard forward arrow button.

Owner: GtkScrollbar

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.

Owner: GtkScrollbar

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.

Owner: GtkScrollbar

Flags: Read

Default value: FALSE

The “min-slider-length” style property

  “min-slider-length”        int

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.

Owner: GtkScrollbar

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.24/GtkScrollbar.html