Top |
Functions
GtkWidget * | gtk_window_controls_new () |
GtkPackType | gtk_window_controls_get_side () |
void | gtk_window_controls_set_side () |
const char * | gtk_window_controls_get_decoration_layout () |
void | gtk_window_controls_set_decoration_layout () |
gboolean | gtk_window_controls_get_empty () |
Implemented Interfaces
GtkWindowControls implements GtkAccessible, GtkBuildable and GtkConstraintTarget.
Description
GtkWindowControls shows window frame controls, such as minimize, maximize and close buttons, and the window icon.
GtkWindowControls only displays start or end side of the controls (see “side”), so it's intended to be always used in pair with another GtkWindowControls using the opposite side, for example:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
<object class="GtkBox"> <child> <object class="GtkWindowControls"> <property name="side">start</property> </object> </child> ... <child> <object class="GtkWindowControls"> <property name="side">end</property> </object> </child> </object> |
CSS nodes
1 2 3 4 5 |
windowcontrols ├── [image.icon] ├── [button.minimize] ├── [button.maximize] ╰── [button.close] |
A GtkWindowControls' CSS node is called windowcontrols. It contains subnodes corresponding to each title button. Which of the title buttons exist and where they are placed exactly depends on the desktop environment and “decoration-layout” value.
When “empty” is TRUE
, it gets the .empty style class.
Functions
gtk_window_controls_new ()
GtkWidget *
gtk_window_controls_new (GtkPackType side
);
Creates a new GtkWindowControls.
gtk_window_controls_get_side ()
GtkPackType
gtk_window_controls_get_side (GtkWindowControls *self
);
Gets the side set with gtk_window_controls_set_side()
.
gtk_window_controls_set_side ()
void gtk_window_controls_set_side (GtkWindowControls *self
,GtkPackType side
);
Sets the side for self
, determining which part of decoration layout it uses.
gtk_window_controls_get_decoration_layout ()
const char *
gtk_window_controls_get_decoration_layout
(GtkWindowControls *self
);
Gets the decoration layout set with
gtk_window_controls_set_decoration_layout()
.
gtk_window_controls_set_decoration_layout ()
void gtk_window_controls_set_decoration_layout (GtkWindowControls *self
,const char *layout
);
Sets the decoration layout for the title buttons, overriding the “gtk-decoration-layout” setting.
The format of the string is button names, separated by commas. A colon separates the buttons that should appear on the left from those on the right. Recognized button names are minimize, maximize, close and icon (the window icon).
For example, “icon:minimize,maximize,close” specifies a icon on the left, and minimize, maximize and close buttons on the right.
If “side” value is GTK_PACK_START
, self
will
display the part before the colon, otherwise after that.
gtk_window_controls_get_empty ()
gboolean
gtk_window_controls_get_empty (GtkWindowControls *self
);
Gets whether the widget has any window buttons.
Property Details
The “decoration-layout”
property
“decoration-layout” char *
The decoration layout for window buttons. If this property is not set, the “gtk-decoration-layout” setting is used.
See gtk_window_controls_set_decoration_layout()
for information
about the format of this string.
Owner: GtkWindowControls
Flags: Read / Write
Default value: NULL
The “empty”
property
“empty” gboolean
Whether the widget has any window buttons.
Owner: GtkWindowControls
Flags: Read
Default value: TRUE
The “side”
property
“side” GtkPackType
Whether the widget shows start or end side of the decoration layout.
See gtk_window_controls_set_decoration_layout()
.
Owner: GtkWindowControls
Flags: Read / Write
Default value: GTK_PACK_START