gtk.window_controls

Module for [WindowControls] class

Types 3

[gtk.window_controls.WindowControls] shows window frame controls.

Typical window frame controls are minimize, maximize and close buttons, and the window icon.

!An example GtkWindowControls

[gtk.window_controls.WindowControls] only displays start or end side of the controls (see [gtk.window_controls.WindowControls.side]), so it's intended to be always used in pair with another [gtk.window_controls.WindowControls] for the opposite side, for example:

<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

windowcontrols
├── [image.icon]
├── [button.minimize]
├── [button.maximize]
╰── [button.close]

A [gtk.window_controls.WindowControls]' 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 property@Gtk.WindowControls:decoration-layout value.

When [gtk.window_controls.WindowControls.empty] is true, it gets the .empty style class.

Accessibility

[gtk.window_controls.WindowControls] uses the [gtk.types.AccessibleRole.Group] role.

Methods
GType _gType() @property
WindowControls self()Returns `this`, for use in `with` statements.
WindowControlsGidBuilder builder()Get builder for [gtk.window_controls.WindowControls] Returns: New builder object
string decorationLayout() @propertyGet `decorationLayout` property. Returns: The decoration layout for window buttons.
void decorationLayout(string propval) @propertySet `decorationLayout` property. Params: propval = The decoration layout for window buttons.
bool empty() @propertyGet `empty` property. Returns: Whether the widget has any window buttons.
gtk.types.PackType side() @propertyGet `side` property. Returns: Whether the widget shows start or end side of the decoration layout.
void side(gtk.types.PackType propval) @propertySet `side` property. Params: propval = Whether the widget shows start or end side of the decoration layout.
string getDecorationLayout()Gets the decoration layout of this [gtk.window_controls.WindowControls]. Returns: the decoration layout or null if it is unset
bool getEmpty()Gets whether the widget has any window buttons. Returns: true if the widget has window buttons, otherwise false
gtk.types.PackType getSide()Gets the side to which this [gtk.window_controls.WindowControls] instance belongs. Returns: the side
void setDecorationLayout(string layout = null)Sets the decoration layout for the title buttons.
void setSide(gtk.types.PackType side)Determines which part of decoration layout the [gtk.window_controls.WindowControls] uses.
Constructors
this(void * ptr, Flag!"Take" take)
this(gtk.types.PackType side)Creates a new [gtk.window_controls.WindowControls].
Methods
T decorationLayout(string propval)Set `decorationLayout` property. Params: propval = The decoration layout for window buttons.
T side(gtk.types.PackType propval)Set `side` property. Params: propval = Whether the widget shows start or end side of the decoration layout.

Fluent builder for [gtk.window_controls.WindowControls]