GtkRevealer

GtkRevealer — Hide and show with animation

Properties

GtkWidget * child Read / Write
gboolean child-revealed Read
gboolean reveal-child Read / Write / Construct
guint transition-duration Read / Write / Construct
GtkRevealerTransitionType transition-type Read / Write / Construct

Types and Values

Object Hierarchy

    GObject
    ╰── GInitiallyUnowned
        ╰── GtkWidget
            ╰── GtkRevealer

Implemented Interfaces

GtkRevealer implements AtkImplementorIface, GtkBuildable and GtkConstraintTarget.

Includes

#include <gtk/gtk.h>

Description

The GtkRevealer widget is a container which animates the transition of its child from invisible to visible.

The style of transition can be controlled with gtk_revealer_set_transition_type().

These animations respect the “gtk-enable-animations” setting.

CSS nodes

GtkRevealer has a single CSS node with name revealer. When styling GtkRevealer using CSS, remember that it only hides its contents, not itself. That means applied margin, padding and borders will be visible even when the “reveal-child” property is set to FALSE.

The GtkRevealer widget was added in GTK+ 3.10.

Functions

gtk_revealer_new ()

GtkWidget *
gtk_revealer_new (void);

Creates a new GtkRevealer.

Returns

a newly created GtkRevealer


gtk_revealer_get_child ()

GtkWidget *
gtk_revealer_get_child (GtkRevealer *revealer);

Gets the child widget of revealer .

Parameters

revealer

a GtkRevealer

 

Returns

the child widget of revealer .

[nullable][transfer none]


gtk_revealer_set_child ()

void
gtk_revealer_set_child (GtkRevealer *revealer,
                        GtkWidget *child);

Sets the child widget of revealer .

Parameters

revealer

a GtkRevealer

 

child

the child widget.

[allow-none]

gtk_revealer_get_reveal_child ()

gboolean
gtk_revealer_get_reveal_child (GtkRevealer *revealer);

Returns whether the child is currently revealed. See gtk_revealer_set_reveal_child().

This function returns TRUE as soon as the transition is to the revealed state is started. To learn whether the child is fully revealed (ie the transition is completed), use gtk_revealer_get_child_revealed().

Parameters

revealer

a GtkRevealer

 

Returns

TRUE if the child is revealed.


gtk_revealer_set_reveal_child ()

void
gtk_revealer_set_reveal_child (GtkRevealer *revealer,
                               gboolean reveal_child);

Tells the GtkRevealer to reveal or conceal its child.

The transition will be animated with the current transition type of revealer .

Parameters

revealer

a GtkRevealer

 

reveal_child

TRUE to reveal the child

 

gtk_revealer_get_child_revealed ()

gboolean
gtk_revealer_get_child_revealed (GtkRevealer *revealer);

Returns whether the child is fully revealed, in other words whether the transition to the revealed state is completed.

Parameters

revealer

a GtkRevealer

 

Returns

TRUE if the child is fully revealed


gtk_revealer_get_transition_duration ()

guint
gtk_revealer_get_transition_duration (GtkRevealer *revealer);

Returns the amount of time (in milliseconds) that transitions will take.

Parameters

revealer

a GtkRevealer

 

Returns

the transition duration


gtk_revealer_set_transition_duration ()

void
gtk_revealer_set_transition_duration (GtkRevealer *revealer,
                                      guint duration);

Sets the duration that transitions will take.

Parameters

revealer

a GtkRevealer

 

duration

the new duration, in milliseconds

 

gtk_revealer_get_transition_type ()

GtkRevealerTransitionType
gtk_revealer_get_transition_type (GtkRevealer *revealer);

Gets the type of animation that will be used for transitions in revealer .

Parameters

revealer

a GtkRevealer

 

Returns

the current transition type of revealer


gtk_revealer_set_transition_type ()

void
gtk_revealer_set_transition_type (GtkRevealer *revealer,
                                  GtkRevealerTransitionType transition);

Sets the type of animation that will be used for transitions in revealer . Available types include various kinds of fades and slides.

Parameters

revealer

a GtkRevealer

 

transition

the new transition type

 

Types and Values

GtkRevealer

typedef struct _GtkRevealer GtkRevealer;

enum GtkRevealerTransitionType

These enumeration values describe the possible transitions when the child of a GtkRevealer widget is shown or hidden.

Members

GTK_REVEALER_TRANSITION_TYPE_NONE

No transition

 

GTK_REVEALER_TRANSITION_TYPE_CROSSFADE

Fade in

 

GTK_REVEALER_TRANSITION_TYPE_SLIDE_RIGHT

Slide in from the left

 

GTK_REVEALER_TRANSITION_TYPE_SLIDE_LEFT

Slide in from the right

 

GTK_REVEALER_TRANSITION_TYPE_SLIDE_UP

Slide in from the bottom

 

GTK_REVEALER_TRANSITION_TYPE_SLIDE_DOWN

Slide in from the top

 

GTK_REVEALER_TRANSITION_TYPE_SWING_RIGHT

Floop in from the left

 

GTK_REVEALER_TRANSITION_TYPE_SWING_LEFT

Floop in from the right

 

GTK_REVEALER_TRANSITION_TYPE_SWING_UP

Floop in from the bottom

 

GTK_REVEALER_TRANSITION_TYPE_SWING_DOWN

Floop in from the top

 

Property Details

The “child” property

  “child”                    GtkWidget *

The child widget.

Owner: GtkRevealer

Flags: Read / Write


The “child-revealed” property

  “child-revealed”           gboolean

Whether the child is revealed and the animation target reached.

Owner: GtkRevealer

Flags: Read

Default value: FALSE


The “reveal-child” property

  “reveal-child”             gboolean

Whether the container should reveal the child.

Owner: GtkRevealer

Flags: Read / Write / Construct

Default value: FALSE


The “transition-duration” property

  “transition-duration”      guint

The animation duration, in milliseconds.

Owner: GtkRevealer

Flags: Read / Write / Construct

Default value: 250


The “transition-type” property

  “transition-type”          GtkRevealerTransitionType

The type of animation used to transition.

Owner: GtkRevealer

Flags: Read / Write / Construct

Default value: GTK_REVEALER_TRANSITION_TYPE_SLIDE_DOWN

See Also

GtkExpander