gtkmm: Gtk::Window Class Reference

Toplevel Window. More...

#include <gtkmm/window.h>

Inheritance diagram for Gtk::Window:

Public Member Functions

 Window (const Window&)=delete
 
Windowoperator= (const Window&)=delete
 
 ~Window () noexcept override
 
GtkWindow* gobj ()
 Provides access to the underlying C GObject. More...

 
const GtkWindow* gobj () const
 Provides access to the underlying C GObject. More...

 
 Window (Window&& src) noexcept
 
Windowoperator= (Window&& src) noexcept
 
 Window (WindowType type=WindowType::TOPLEVEL)
 
Glib::PropertyProxy_ReadOnly< WindowTypeproperty_type () const
 The type of the window. More...

 
Glib::PropertyProxy< Glib::ustringproperty_title ()
 The title of the window. More...

 
Glib::PropertyProxy_ReadOnly< Glib::ustringproperty_title () const
 The title of the window. More...

 
Glib::PropertyProxy_WriteOnly< Glib::ustringproperty_startup_id ()
 The :startup-id is a write-only property for setting window's startup notification identifier. More...

 
Glib::PropertyProxy< bool > property_resizable ()
 If true, users can resize the window. More...

 
Glib::PropertyProxy_ReadOnly< bool > property_resizable () const
 If true, users can resize the window. More...

 
Glib::PropertyProxy< bool > property_modal ()
 If true, the window is modal (other windows are not usable while this one is up). More...

 
Glib::PropertyProxy_ReadOnly< bool > property_modal () const
 If true, the window is modal (other windows are not usable while this one is up). More...

 
Glib::PropertyProxy< int > property_default_width ()
 The default width of the window, used when initially showing the window. More...

 
Glib::PropertyProxy_ReadOnly< int > property_default_width () const
 The default width of the window, used when initially showing the window. More...

 
Glib::PropertyProxy< int > property_default_height ()
 The default height of the window, used when initially showing the window. More...

 
Glib::PropertyProxy_ReadOnly< int > property_default_height () const
 The default height of the window, used when initially showing the window. More...

 
Glib::PropertyProxy< bool > property_destroy_with_parent ()
 If this window should be destroyed when the parent is destroyed. More...

 
Glib::PropertyProxy_ReadOnly< bool > property_destroy_with_parent () const
 If this window should be destroyed when the parent is destroyed. More...

 
Glib::PropertyProxy< bool > property_hide_on_close ()
 If this window should be hidden when the user clicks the close button. More...

 
Glib::PropertyProxy_ReadOnly< bool > property_hide_on_close () const
 If this window should be hidden when the user clicks the close button. More...

 
Glib::PropertyProxy< bool > property_mnemonics_visible ()
 Whether mnemonics are currently visible in this window. More...

 
Glib::PropertyProxy_ReadOnly< bool > property_mnemonics_visible () const
 Whether mnemonics are currently visible in this window. More...

 
Glib::PropertyProxy< Glib::ustringproperty_icon_name ()
 The :icon-name property specifies the name of the themed icon to use as the window icon. More...

 
Glib::PropertyProxy_ReadOnly< Glib::ustringproperty_icon_name () const
 The :icon-name property specifies the name of the themed icon to use as the window icon. More...

 
Glib::PropertyProxy< Glib::RefPtr< Gdk::Display > > property_display ()
 The display that will display this window. More...

 
Glib::PropertyProxy_ReadOnly< Glib::RefPtr< Gdk::Display > > property_display () const
 The display that will display this window. More...

 
Glib::PropertyProxy_ReadOnly< bool > property_is_active () const
 Whether the toplevel is the current active window. More...

 
Glib::PropertyProxy< Gdk::Surface::TypeHintproperty_type_hint ()
 Hint to help the desktop environment understand what kind of window this is and how to treat it. More...

 
Glib::PropertyProxy_ReadOnly< Gdk::Surface::TypeHintproperty_type_hint () const
 Hint to help the desktop environment understand what kind of window this is and how to treat it. More...

 
Glib::PropertyProxy< bool > property_decorated ()
 Whether the window should be decorated by the window manager. More...

 
Glib::PropertyProxy_ReadOnly< bool > property_decorated () const
 Whether the window should be decorated by the window manager. More...

 
Glib::PropertyProxy< Window* > property_transient_for ()
 The transient parent of the window. More...

 
Glib::PropertyProxy_ReadOnly< Window* > property_transient_for () const
 The transient parent of the window. More...

 
Glib::PropertyProxy< bool > property_accept_focus ()
 Whether the window should receive the input focus. More...

 
Glib::PropertyProxy_ReadOnly< bool > property_accept_focus () const
 Whether the window should receive the input focus. More...

 
Glib::PropertyProxy< bool > property_focus_on_map ()
 Whether the window should receive the input focus when mapped. More...

 
Glib::PropertyProxy_ReadOnly< bool > property_focus_on_map () const
 Whether the window should receive the input focus when mapped. More...

 
Glib::PropertyProxy< bool > property_deletable ()
 Whether the window frame should have a close button. More...

 
Glib::PropertyProxy_ReadOnly< bool > property_deletable () const
 Whether the window frame should have a close button. More...

 
Glib::PropertyProxy< Glib::RefPtr< Application > > property_application ()
 The Gtk::Application associated with the window. More...

 
Glib::PropertyProxy_ReadOnly< Glib::RefPtr< Application > > property_application () const
 The Gtk::Application associated with the window. More...

 
Glib::PropertyProxy< bool > property_focus_visible ()
 Whether 'focus rectangles' are currently visible in this window. More...

 
Glib::PropertyProxy_ReadOnly< bool > property_focus_visible () const
 Whether 'focus rectangles' are currently visible in this window. More...

 
Glib::PropertyProxy< Widget* > property_attached_to ()
 The widget to which this window is attached. More...

 
Glib::PropertyProxy_ReadOnly< Widget* > property_attached_to () const
 The widget to which this window is attached. More...

 
Glib::PropertyProxy_ReadOnly< bool > property_is_maximized () const
 Whether the window is maximized. More...

 
Glib::PropertyProxy< Widget* > property_default_widget ()
 The default widget. More...

 
Glib::PropertyProxy_ReadOnly< Widget* > property_default_widget () const
 The default widget. More...

 
Glib::SignalProxy< void()> signal_keys_changed ()
 
Glib::SignalProxy< bool()> signal_close_request ()
 
void set_title (const Glib::ustring& title)
 Sets the title of the Gtk::Window. More...

 
Glib::ustring get_title () const
 Retrieves the title of the window. More...

 
void set_startup_id (const Glib::ustring& startup_id)
 Startup notification identifiers are used by desktop environment to track application startup, to provide user feedback and other features. More...

 
void add_accel_group (const Glib::RefPtr< AccelGroup >& accel_group)
 Associate accel_group with window, such that calling gtk_accel_groups_activate() on window will activate accelerators in accel_group. More...

 
void remove_accel_group (const Glib::RefPtr< AccelGroup >& accel_group)
 Reverses the effects of add_accel_group(). More...

 
void set_focus (Gtk::Widget& focus)
 If focus is not the current focus widget, and is focusable, sets it as the focus widget for the window. More...

 
void unset_focus ()
 
Widgetget_focus ()
 Retrieves the current focused widget within the window. More...

 
const Widgetget_focus () const
 Retrieves the current focused widget within the window. More...

 
void set_default_widget (Gtk::Widget& default_widget)
 The default widget is the widget that’s activated when the user presses Enter in a dialog (for example). More...

 
void unset_default_widget ()
 
Widgetget_default_widget ()
 Returns the default widget for window. More...

 
const Widgetget_default_widget () const
 Returns the default widget for window. More...

 
void set_transient_for (Window& parent)
 Dialog windows should be set transient for the main application window they were spawned from. More...

 
void unset_transient_for ()
 Unsets the current transient window. More...

 
Windowget_transient_for ()
 Fetches the transient parent for this window. More...

 
const Windowget_transient_for () const
 Fetches the transient parent for this window. More...

 
void unset_attached_to ()
 Unsets the attached-to widget. More...

 
void set_attached_to (Widget& attach_widget)
 Marks window as attached to attach_widget. More...

 
Widgetget_attached_to ()
 Fetches the attach widget for this window. More...

 
const Widgetget_attached_to () const
 Fetches the attach widget for this window. More...

 
void set_type_hint (Gdk::Surface::TypeHint hint)
 By setting the type hint for the window, you allow the window manager to decorate and handle the window in a way which is suitable to the function of the window in your application. More...

 
Gdk::Surface::TypeHint get_type_hint () const
 Gets the type hint for this window. More...

 
void set_accept_focus (bool setting=true)
 Windows may set a hint asking the desktop environment not to receive the input focus. More...

 
bool get_accept_focus () const
 Gets the value set by set_accept_focus(). More...

 
void set_focus_on_map (bool setting=true)
 Windows may set a hint asking the desktop environment not to receive the input focus when the window is mapped. More...

 
bool get_focus_on_map () const
 Gets the value set by set_focus_on_map(). More...

 
bool get_destroy_with_parent () const
 Returns whether the window will be destroyed with its transient parent. More...

 
void set_hide_on_close (bool setting=true)
 If setting is true, then clicking the close button on the window will not destroy it, but only hide it. More...

 
bool get_hide_on_close () const
 Returns whether the window will be hidden when the close button is clicked. More...

 
void set_mnemonics_visible (bool setting=true)
 Sets the Gtk::Window::property_mnemonics_visible() property. More...

 
bool get_mnemonics_visible () const
 Gets the value of the Gtk::Window::property_mnemonics_visible() property. More...

 
void set_focus_visible (bool setting=true)
 Sets the Gtk::Window::property_focus_visible() property. More...

 
bool get_focus_visible () const
 Gets the value of the Gtk::Window::property_focus_visible() property. More...

 
void set_resizable (bool resizable=true)
 Sets whether the user can resize a window. More...

 
bool get_resizable () const
 Gets the value set by set_resizable(). More...

 
void set_display (const Glib::RefPtr< Gdk::Display >& display)
 Sets the Gdk::Display where the window is displayed; if the window is already mapped, it will be unmapped, and then remapped on the new display. More...

 
bool is_active () const
 Returns whether the window is part of the current active toplevel. More...

 
void set_decorated (bool setting=true)
 By default, windows are decorated with a title bar, resize controls, etc. More...

 
bool get_decorated () const
 Returns whether the window has been set to have decorations such as a title bar via set_decorated(). More...

 
void set_deletable (bool setting=true)
 By default, windows have a close button in the window frame. More...

 
bool get_deletable () const
 Returns whether the window has been set to have a close button via set_deletable(). More...

 
void set_icon_name (const Glib::ustring& name)
 Sets the icon for the window from a named themed icon. More...

 
Glib::ustring get_icon_name () const
 Returns the name of the themed icon for the window, see set_icon_name(). More...

 
void set_modal (bool modal=true)
 Sets a window modal or non-modal. More...

 
bool get_modal () const
 Returns whether the window is modal. More...

 
void add_mnemonic (guint keyval, Widget& target)
 Adds a mnemonic to this window. More...

 
void remove_mnemonic (guint keyval, Widget& target)
 Removes a mnemonic from this window. More...

 
bool mnemonic_activate (guint keyval, Gdk::ModifierType modifier)
 Activates the targets associated with the mnemonic. More...

 
void set_mnemonic_modifier (Gdk::ModifierType modifier)
 Sets the mnemonic modifier for this window. More...

 
Gdk::ModifierType get_mnemonic_modifier ()
 Returns the mnemonic modifier for this window. More...

 
void present ()
 Presents a window to the user. More...

 
void present (guint32 timestamp)
 Presents a window to the user. More...

 
void minimize ()
 Asks to minimize the specified window. More...

 
void unminimize ()
 Asks to unminimize the specified window. More...

 
void stick ()
 Asks to stick window, which means that it will appear on all user desktops. More...

 
void unstick ()
 Asks to unstick window, which means that it will appear on only one of the user’s desktops. More...

 
void maximize ()
 Asks to maximize window, so that it becomes full-screen. More...

 
void unmaximize ()
 Asks to unmaximize window. More...

 
void fullscreen ()
 Asks to place window in the fullscreen state. More...

 
void unfullscreen ()
 Asks to toggle off the fullscreen state for window. More...

 
void fullscreen_on_monitor (const Glib::RefPtr< Gdk::Monitor >& monitor)
 Asks to place window in the fullscreen state. More...

 
void close ()
 Requests that the window is closed, similar to what happens when a window manager close button is clicked. More...

 
void begin_resize_drag (Gdk::SurfaceEdge edge, int button, int x, int y, guint32 timestamp)
 Starts resizing a window. More...

 
void begin_move_drag (int button, int x, int y, guint32 timestamp)
 Starts moving a window. More...

 
void set_default_size (int width, int height)
 Sets the default size of a window. More...

 
void get_default_size (int& width, int& height) const
 Gets the default size of the window. More...

 
void resize (int width, int height)
 Resizes the window as if the user had done so, obeying geometry constraints. More...

 
void get_size (int& width, int& height) const
 Obtains the current size of window. More...

 
Glib::RefPtr< WindowGroupget_group ()
 Returns the group for window or the default group, if window is nullptr or if window does not have an explicit window group. More...

 
Glib::RefPtr< const WindowGroupget_group () const
 Returns the group for window or the default group, if window is nullptr or if window does not have an explicit window group. More...

 
bool has_group () const
 Returns whether window has an explicit window group. More...

 
WindowType get_window_type () const
 Gets the type of the window. More...

 
Glib::RefPtr< Applicationget_application ()
 Gets the Gtk::Application associated with the window (if any). More...

 
Glib::RefPtr< const Applicationget_application () const
 Gets the Gtk::Application associated with the window (if any). More...

 
void set_application (const Glib::RefPtr< Application >& application)
 Sets the Gtk::Application associated with the window. More...

 
void unset_application ()
 Unsets the Application associated with the window. More...

 
void set_keep_above (bool setting=true)
 Asks to keep window above, so that it stays on top. More...

 
void set_keep_below (bool setting=true)
 Asks to keep window below, so that it stays in bottom. More...

 
void set_titlebar (Widget& titlebar)
 Sets a custom titlebar for window. More...

 
void unset_titlebar ()
 Unsets the titlebar. More...

 
Widgetget_titlebar ()
 Returns the custom titlebar that has been set with set_titlebar(). More...

 
const Widgetget_titlebar () const
 Returns the custom titlebar that has been set with set_titlebar(). More...

 
bool is_maximized () const
 Retrieves the current maximized state of window. More...

 
void show_uri (const Glib::ustring& uri, guint32 timestamp)
 This is a convenience function for launching the default application to show the uri. More...

 
std::vector< Glib::RefPtr< AccelGroup > > get_accel_groups ()
 Gets a vector containing each Gtk::AccelGroup associated with the window. More...

 
void raise ()
 Brings the window to the front. More...

 
void set_manage () override
 Overriden to warn that it doesn't make sense to use Gtk::manage() on this class because it has no parent container. More...

 
- Public Member Functions inherited from Gtk::Bin
 Bin (Bin&& src) noexcept
 
Binoperator= (Bin&& src) noexcept
 
 Bin (const Bin&)=delete
 
Binoperator= (const Bin&)=delete
 
 ~Bin () noexcept override
 
GtkBin* gobj ()
 Provides access to the underlying C GObject. More...

 
const GtkBin* gobj () const
 Provides access to the underlying C GObject. More...

 
Gtk::Widgetget_child ()
 Gets the child of the Gtk::Bin, or nullptr if the bin contains no child widget. More...

 
const Gtk::Widgetget_child () const
 Gets the child of the Gtk::Bin, or nullptr if the bin contains no child widget. More...

 
void remove ()
 Remove the contained widget. More...

 
void add_label (const Glib::ustring& label, bool mnemonic=false, Align x_align=Align::CENTER, Align y_align=Align::CENTER)
 Add a Label object. More...

 
void add_pixlabel (const std::string& pixfile, const Glib::ustring& label, Align x_align=Align::CENTER, Align y_align=Align::CENTER)
 Add Image and Label objects. More...

 
- Public Member Functions inherited from Gtk::Container
 Container (Container&& src) noexcept
 
Containeroperator= (Container&& src) noexcept
 
 Container (const Container&)=delete
 
Containeroperator= (const Container&)=delete
 
 ~Container () noexcept override
 
GtkContainer* gobj ()
 Provides access to the underlying C GObject. More...

 
const GtkContainer* gobj () const
 Provides access to the underlying C GObject. More...

 
void add (Widget& widget)
 Adds widget to container. More...

 
void remove (Widget& widget)
 Removes widget from the container. More...

 
void foreach (const ForeachSlot& slot)
 Operate on contained items. More...

 
void forall (const ForeachSlot& slot)
 Operate on contained items, including internal children. More...

 
std::vector< Widget* > get_children ()
 Returns the container’s non-internal children. More...

 
std::vector< const Widget* > get_children () const
 Returns the container’s non-internal children. More...

 
void set_focus_vadjustment (const Glib::RefPtr< Adjustment >& adjustment)
 Hooks up an adjustment to focus handling in a container, so when a child of the container is focused, the adjustment is scrolled to show that widget. More...

 
Glib::RefPtr< Adjustmentget_focus_vadjustment ()
 Retrieves the vertical focus adjustment for the container. More...

 
Glib::RefPtr< const Adjustmentget_focus_vadjustment () const
 Retrieves the vertical focus adjustment for the container. More...

 
void set_focus_hadjustment (const Glib::RefPtr< Adjustment >& adjustment)
 Hooks up an adjustment to focus handling in a container, so when a child of the container is focused, the adjustment is scrolled to show that widget. More...

 
Glib::RefPtr< Adjustmentget_focus_hadjustment ()
 Retrieves the horizontal focus adjustment for the container. More...

 
Glib::RefPtr< const Adjustmentget_focus_hadjustment () const
 Retrieves the horizontal focus adjustment for the container. More...

 
GType child_type () const
 Returns the type of the children supported by the container. More...

 
Glib::SignalProxy< void(Widget*)> signal_add ()
 
Glib::SignalProxy< void(Widget*)> signal_remove ()
 
- Public Member Functions inherited from Gtk::Widget
 Widget (Widget&& src) noexcept
 
Widgetoperator= (Widget&& src) noexcept
 
 Widget (const Widget&)=delete
 
Widgetoperator= (const Widget&)=delete
 
 ~Widget () noexcept override
 Destroys the widget. More...

 
GtkWidget* gobj ()
 Provides access to the underlying C GObject. More...

 
const GtkWidget* gobj () const
 Provides access to the underlying C GObject. More...

 
Glib::RefPtr< ConstraintTargetmake_refptr_constrainttarget ()
 Converts this widget to a reference counted Gtk::ConstraintTarget. More...

 
Glib::RefPtr< const ConstraintTargetmake_refptr_constrainttarget () const
 Converts this widget to a reference counted Gtk::ConstraintTarget. More...

 
void show ()
 Flags a widget to be displayed. More...

 
void hide ()
 Reverses the effects of show(), causing the widget to be hidden (invisible to the user). More...

 
void queue_draw ()
 Schedules this widget to be redrawn in paint phase of the current or the next frame. More...

 
void queue_resize ()
 This function is only for use in widget implementations. More...

 
void queue_allocate ()
 This function is only for use in widget implementations. More...

 
void size_allocate (const Allocation& allocation, int baseline)
 This is a simple form of allocate() that takes the new position of widget as part of allocation. More...

 
SizeRequestMode get_request_mode () const
 Gets whether the widget prefers a height-for-width layout or a width-for-height layout. More...

 
void measure (Orientation orientation, int for_size, int& minimum, int& natural, int& minimum_baseline, int& natural_baseline) const
 Measures widget in the orientation orientation and for the given for_size. More...

 
void get_preferred_size (Requisition& minimum_size, Requisition& natural_size) const
 Retrieves the minimum and natural size of a widget, taking into account the widget’s preference for height-for-width management. More...

 
void set_layout_manager (const Glib::RefPtr< LayoutManager >& layout_manager)
 Sets the layout manager delegate instance that provides an implementation for measuring and allocating the children of widget. More...

 
void unset_layout_manager ()
 Undoes the effect of a previous call to set_layout_manager(). More...

 
Glib::RefPtr< LayoutManagerget_layout_manager ()
 Retrieves the layout manager set using set_layout_manager(). More...

 
Glib::RefPtr< const LayoutManagerget_layout_manager () const
 Retrieves the layout manager set using set_layout_manager(). More...

 
void add_accelerator (const Glib::ustring& accel_signal, const Glib::RefPtr< AccelGroup >& accel_group, guint accel_key, Gdk::ModifierType accel_mods, AccelFlags accel_flags)
 Installs an accelerator for this widget in accel_group that causes accel_signal to be emitted if the accelerator is activated. More...

 
bool remove_accelerator (const Glib::RefPtr< AccelGroup >& accel_group, guint accel_key, Gdk::ModifierType accel_mods)
 Removes an accelerator from widget, previously installed with add_accelerator(). More...

 
void set_accel_path (const Glib::ustring& accel_path, const Glib::RefPtr< AccelGroup >& accel_group)
 Given an accelerator group, accel_group, and an accelerator path, accel_path, sets up an accelerator in accel_group so whenever the key binding that is defined for accel_path is pressed, widget will be activated. More...

 
bool mnemonic_activate (bool group_cycling)
 Emits the Gtk::Widget::signal_mnemonic_activate() signal. More...

 
bool event (const Glib::RefPtr< Gdk::Event >& gdk_event)
 Rarely-used function. More...

 
bool activate ()
 For widgets that can be “activated” (buttons, menu items, etc.) this function activates them. More...

 
void reparent (Container& new_parent)
 Moves a widget from one Gtk::Container to another, handling reference count issues to avoid destroying the widget. More...

 
void set_can_focus (bool can_focus=true)
 Specifies whether widget can own the input focus. More...

 
bool get_can_focus () const
 Determines whether widget can own the input focus. More...

 
bool has_focus () const
 Determines if the widget has the global input focus. More...

 
bool is_focus () const
 Determines if the widget is the focus widget within its toplevel. More...

 
bool has_visible_focus () const
 Determines if the widget should show a visible indication that it has the global input focus. More...

 
bool grab_focus ()
 Causes widget (or one of its descendents) to have the keyboard focus for the Gtk::Window it's inside. More...

 
void set_focus_on_click (bool focus_on_click=true)
 Sets whether the widget should grab focus when it is clicked with the mouse. More...

 
bool get_focus_on_click () const
 Returns whether the widget should grab focus when it is clicked with the mouse. More...

 
void set_can_target (bool can_target=true)
 Sets whether widget can be the target of pointer events. More...

 
bool get_can_target () const
 Queries whether widget can be the target of pointer events. More...

 
bool has_default () const
 Determines whether widget is the current default widget within its toplevel. More...

 
void set_receives_default (bool receives_default=true)
 Specifies whether widget will be treated as the default widget within its toplevel when it has the focus, even if another widget is the default. More...

 
bool get_receives_default () const
 Determines whether widget is always treated as the default widget within its toplevel when it has the focus, even if another widget is the default. More...

 
bool has_grab () const
 Determines whether the widget is currently grabbing events, so it is the only widget receiving input events (keyboard and mouse). More...

 
bool device_is_shadowed (const Glib::RefPtr< const Gdk::Device >& device)
 Returns true if device has been shadowed by a GTK+ device grab on another widget, so it would stop sending events to widget. More...

 
void add_modal_grab ()
 Block events to everything else than this widget and its children. More...

 
void remove_modal_grab ()
 Remove the modal grab of the widget in case it was previously grabbed. More...

 
void set_name (const Glib::ustring& name)
 Widgets can be named, which allows you to refer to them from a CSS file. More...

 
void unset_name ()
 
Glib::ustring get_name () const
 Retrieves the name of a widget. More...

 
void set_state_flags (StateFlags flags, bool clear=true)
 This function is for use in widget implementations. More...

 
void unset_state_flags (StateFlags flags)
 This function is for use in widget implementations. More...

 
StateFlags get_state_flags () const
 Returns the widget state as a flag set. More...

 
void set_sensitive (bool sensitive=true)
 Sets the sensitivity of a widget. More...

 
bool get_sensitive () const
 Returns the widget’s sensitivity (in the sense of returning the value that has been set using set_sensitive()). More...

 
bool is_sensitive () const
 Returns the widget’s effective sensitivity, which means it is sensitive itself and also its parent widget is sensitive. More...

 
void set_visible (bool visible=true)
 Sets the visibility state of widget. More...

 
bool get_visible () const
 Determines whether the widget is visible. More...

 
bool is_visible () const
 Determines whether the widget and all its parents are marked as visible. More...

 
bool get_is_drawable () const
 Determines whether widget can be drawn to. More...

 
bool get_realized () const
 Determines whether widget is realized. More...

 
bool get_mapped () const
 Whether the widget is mapped. More...

 
void set_child_visible (bool visible=true)
 Sets whether widget should be mapped along with its when its parent is mapped and widget has been shown with show(). More...

 
bool get_child_visible () const
 Gets the value set with set_child_visible(). More...

 
int get_allocated_width () const
 Returns the width that has currently been allocated to widget. More...

 
int get_allocated_height () const
 Returns the height that has currently been allocated to widget. More...

 
int get_allocated_baseline () const
 Returns the baseline that has currently been allocated to widget. More...

 
Allocation get_allocation () const
 Retrieves the widget's location. More...

 
int get_width () const
 Returns the content width of the widget, as passed to its size-allocate implementation. More...

 
int get_height () const
 Returns the content height of the widget, as passed to its size-allocate implementation. More...

 
Containerget_parent ()
 Returns the parent widget of widget. More...

 
const Containerget_parent () const
 Returns the parent widget of widget. More...

 
Rootget_root ()
 Returns the Gtk::Root widget of widget or nullptr if the widget is not contained inside a widget tree with a root widget. More...

 
const Rootget_root () const
 Returns the Gtk::Root widget of widget or nullptr if the widget is not contained inside a widget tree with a root widget. More...

 
Nativeget_native ()
 Returns the GtkNative widget that contains widget, or nullptr if the widget is not contained inside a widget tree with a native ancestor. More...

 
const Nativeget_native () const
 Returns the GtkNative widget that contains widget, or nullptr if the widget is not contained inside a widget tree with a native ancestor. More...

 
bool child_focus (DirectionType direction)
 This function is used by custom widget implementations; if you're writing an app, you’d use grab_focus() to move the focus to a particular widget. More...

 
bool keynav_failed (DirectionType direction)
 This function should be called whenever keyboard navigation within a single widget hits a boundary. More...

 
void error_bell ()
 Notifies the user about an input-related error on this widget. More...

 
void set_size_request (int width=-1, int height=-1)
 Sets the minimum size of a widget; that is, the widget’s size request will be at least width by height. More...

 
void get_size_request (int& width, int& height) const
 Gets the size request that was explicitly set for the widget using set_size_request(). More...

 
void set_opacity (double opacity)
 Request the widget to be rendered partially transparent, with opacity 0 being fully transparent and 1 fully opaque. More...

 
double get_opacity () const
 Fetches the requested opacity for this widget. More...

 
void set_overflow (Overflow overflow)
 Sets how widget treats content that is drawn outside the widget's content area. More...

 
Overflow get_overflow () const
 Returns the value set via set_overflow(). More...

 
Widgetget_ancestor (GType widget_type)
 Gets the first ancestor of widget with type widget_type. More...

 
const Widgetget_ancestor (GType widget_type) const
 Gets the first ancestor of widget with type widget_type. More...

 
int get_scale_factor () const
 Retrieves the internal scale factor that maps from window coordinates to the actual device pixels. More...

 
Glib::RefPtr< Gdk::Displayget_display ()
 Get the Gdk::Display for the toplevel window associated with this widget. More...

 
Glib::RefPtr< const Gdk::Displayget_display () const
 Get the Gdk::Display for the toplevel window associated with this widget. More...

 
Glib::RefPtr< Settingsget_settings ()
 Gets the settings object holding the settings used for this widget. More...

 
Glib::RefPtr< Gdk::Clipboardget_clipboard ()
 This is a utility function to get the clipboard object for the Gdk::Display that widget is using. More...

 
Glib::RefPtr< const Gdk::Clipboardget_clipboard () const
 This is a utility function to get the clipboard object for the Gdk::Display that widget is using. More...

 
Glib::RefPtr< Gdk::Clipboardget_primary_clipboard ()
 This is a utility function to get the primary clipboard object for the Gdk::Display that widget is using. More...

 
Glib::RefPtr< const Gdk::Clipboardget_primary_clipboard () const
 This is a utility function to get the primary clipboard object for the Gdk::Display that widget is using. More...

 
bool get_hexpand () const
 Gets whether the widget would like any available extra horizontal space. More...

 
void set_hexpand (bool expand=true)
 Sets whether the widget would like any available extra horizontal space. More...

 
bool get_hexpand_set () const
 Gets whether set_hexpand() has been used to explicitly set the expand flag on this widget. More...

 
void set_hexpand_set (bool set=true)
 Sets whether the hexpand flag (see get_hexpand()) will be used. More...

 
bool get_vexpand () const
 Gets whether the widget would like any available extra vertical space. More...

 
void set_vexpand (bool expand=true)
 Sets whether the widget would like any available extra vertical space. More...

 
bool get_vexpand_set () const
 Gets whether set_vexpand() has been used to explicitly set the expand flag on this widget. More...

 
void set_vexpand_set (bool set=true)
 Sets whether the vexpand flag (see get_vexpand()) will be used. More...

 
bool compute_expand (Orientation orientation)
 Computes whether a container should give this widget extra space when possible. More...

 
void set_expand (bool expand=true)
 Sets whether the widget would like any available extra space in both directions. More...

 
bool get_support_multidevice () const
 Returns true if widget is multiple pointer aware. More...

 
void set_support_multidevice (bool support_multidevice=true)
 Enables or disables multiple pointer awareness. More...

 
Glib::RefPtr< Atk::Objectget_accessible ()
 Returns the accessible object that describes the widget to an assistive technology. More...

 
Glib::RefPtr< const Atk::Objectget_accessible () const
 Returns the accessible object that describes the widget to an assistive technology. More...

 
Align get_halign () const
 Gets the value of the Gtk::Widget::property_halign() property. More...

 
void set_halign (Align align)
 Sets the horizontal alignment of widget. More...

 
Align get_valign () const
 Gets the value of the Gtk::Widget::property_valign() property. More...

 
void set_valign (Align align)
 Sets the vertical alignment of widget. More...

 
int get_margin_start () const
 Gets the value of the Gtk::Widget::property_margin_start() property. More...

 
void set_margin_start (int margin)
 Sets the start margin of widget. More...

 
int get_margin_end () const
 Gets the value of the Gtk::Widget::property_margin_end() property. More...

 
void set_margin_end (int margin)
 Sets the end margin of widget. More...

 
int get_margin_top () const
 Gets the value of the Gtk::Widget::property_margin_top() property. More...

 
void set_margin_top (int margin)
 Sets the top margin of widget. More...

 
int get_margin_bottom () const
 Gets the value of the Gtk::Widget::property_margin_bottom() property. More...

 
void set_margin_bottom (int margin)
 Sets the bottom margin of widget. More...

 
void set_margin (int margin)
 Set all 4 margins to the same value. More...

 
bool is_ancestor (Widget& ancestor) const
 Determines whether widget is somewhere inside ancestor, possibly with intermediate containers. More...

 
bool translate_coordinates (Widget& dest_widget, int src_x, int src_y, int& dest_x, int& dest_y)
 Translate coordinates relative to src_widget’s allocation to coordinates relative to dest_widget’s allocations. More...

 
bool contains (double x, double y) const
 Tests if the point at ( x, y) is contained in widget. More...

 
Widgetpick (double x, double y, PickFlags flags=PickFlags::DEFAULT)
 Finds the descendant of widget (including widget itself) closest to the screen at the point ( x, y). More...

 
const Widgetpick (double x, double y, PickFlags flags=PickFlags::DEFAULT) const
 Finds the descendant of widget (including widget itself) closest to the screen at the point ( x, y). More...

 
void add_controller (const Glib::RefPtr< EventController >& controller)
 Adds controller to widget so that it will receive events. More...

 
void remove_controller (const Glib::RefPtr< EventController >& controller)
 Removes controller from widget, so that it doesn't process events anymore. More...

 
void reset_style ()
 Updates the style context of widget and all descendants by updating its widget path. More...

 
Glib::RefPtr< Pango::Contextcreate_pango_context ()
 Creates a new Pango::Context with the appropriate font map, font options, font description, and base direction for drawing text for this widget. More...

 
Glib::RefPtr< Pango::Contextget_pango_context ()
 Gets a Pango::Context with the appropriate font map, font description, and base direction for this widget. More...

 
void set_font_options (const Cairo::FontOptions& options)
 Sets the #cairo_font_options_t used for Pango rendering in this widget. More...

 
void unset_font_options ()
 Undoes the effect of previous calls to set_font_options(). More...

 
Cairo::FontOptions get_font_options () const
 Returns the #cairo_font_options_t used for Pango rendering. More...

 
Glib::RefPtr< Pango::Layoutcreate_pango_layout (const Glib::ustring& text)
 Creates a new Pango::Layout with the appropriate font map, font description, and base direction for drawing text for this widget. More...

 
void set_direction (TextDirection dir)
 Sets the reading direction on a particular widget. More...

 
TextDirection get_direction () const
 Gets the reading direction for a particular widget. More...

 
void input_shape_combine_region (const Cairo::RefPtr< const Cairo::Region >& region)
 Sets an input shape for this widget’s GDK surface. More...

 
void set_cursor (const Glib::RefPtr< Gdk::Cursor >& cursor)
 Sets the cursor to be shown when pointer devices point towards widget. More...

 
void set_cursor (const Glib::ustring& name={})
 Sets a named cursor to be shown when pointer devices point towards the widget. More...

 
Glib::RefPtr< Gdk::Cursorget_cursor ()
 Queries the cursor set via set_cursor(). More...

 
Glib::RefPtr< const Gdk::Cursorget_cursor () const
 Queries the cursor set via set_cursor(). More...

 
std::vector< Widget* > list_mnemonic_labels ()
 Returns a newly allocated list of the widgets, normally labels, for which this widget is the target of a mnemonic (see for example, Gtk::Label::set_mnemonic_widget()). More...

 
std::vector< const Widget* > list_mnemonic_labels () const
 Returns a newly allocated list of the widgets, normally labels, for which this widget is the target of a mnemonic (see for example, Gtk::Label::set_mnemonic_widget()). More...

 
void add_mnemonic_label (Widget& label)
 Adds a widget to the list of mnemonic labels for this widget. More...

 
void remove_mnemonic_label (Widget& label)
 Removes a widget from the list of mnemonic labels for this widget. More...

 
bool drag_check_threshold (int start_x, int start_y, int current_x, int current_y)
 Checks to see if a mouse drag starting at ( start_x, start_y) and ending at ( current_x, current_y) has passed the GTK drag threshold, and thus should trigger the beginning of a drag-and-drop operation. More...

 
Glib::RefPtr< Gdk::FrameClockget_frame_clock ()
 Obtains the frame clock for a widget. More...

 
Glib::RefPtr< const Gdk::FrameClockget_frame_clock () const
 Obtains the frame clock for a widget. More...

 
void set_parent (Widget& parent)
 This function is useful only when implementing subclasses of Gtk::Widget. More...

 
void unparent ()
 This function is only for use in widget implementations. More...

 
void map ()
 This function is only for use in widget implementations. More...

 
void unmap ()
 This function is only for use in widget implementations. More...

 
void trigger_tooltip_query ()
 Triggers a tooltip query on the display where the toplevel of widget is located. More...

 
void set_tooltip_text (const Glib::ustring& text)
 Sets text as the contents of the tooltip. More...

 
Glib::ustring get_tooltip_text () const
 Gets the contents of the tooltip for widget. More...

 
void set_tooltip_markup (const Glib::ustring& markup)
 Sets markup as the contents of the tooltip, which is marked up with the Pango text markup language. More...

 
Glib::ustring get_tooltip_markup () const
 Gets the contents of the tooltip for widget. More...

 
void set_has_tooltip (bool has_tooltip=TRUE)
 Sets the has-tooltip property on widget to has_tooltip. More...

 
bool get_has_tooltip () const
 Returns the current value of the has-tooltip property. More...

 
bool in_destruction () const
 Returns whether the widget is currently being destroyed. More...

 
Glib::RefPtr< StyleContextget_style_context ()
 Returns the style context associated to widget. More...

 
Glib::RefPtr< const StyleContextget_style_context () const
 Returns the style context associated to widget. More...

 
Gdk::ModifierType get_modifier_mask (Gdk::ModifierIntent intent)
 Returns the modifier mask the widget’s windowing system backend uses for a particular purpose. More...

 
guint add_tick_callback (const SlotTick& slot)
 Queues an animation frame update and adds a callback to be called before each frame. More...

 
void remove_tick_callback (guint id)
 Removes a tick callback previously registered with add_tick_callback(). More...

 
void insert_action_group (const Glib::ustring& name, const Glib::RefPtr< Gio::ActionGroup >& group)
 Inserts group into widget. More...

 
void remove_action_group (const Glib::ustring& name)
 Removes a group from the widget. More...

 
bool activate_action (const Glib::ustring& name, const Glib::VariantBase& args)
 Looks up the action in the action groups associated with the widget and its ancestors, and activates it. More...

 
bool activate_action (const Glib::ustring& name)
 A activate_action() convenience overload. More...

 
void activate_default ()
 Activate the default.activate action from widget. More...

 
void set_font_map (const Glib::RefPtr< Pango::FontMap >& font_map)
 Sets the font map to use for Pango rendering. More...

 
Glib::RefPtr< Pango::FontMapget_font_map ()
 Gets the font map that has been set with set_font_map(). More...

 
Glib::RefPtr< const Pango::FontMapget_font_map () const
 Gets the font map that has been set with set_font_map(). More...

 
Widgetget_first_child ()
 
const Widgetget_first_child () const
 
Widgetget_last_child ()
 
const Widgetget_last_child () const
 
Widgetget_next_sibling ()
 
const Widgetget_next_sibling () const
 
Widgetget_prev_sibling ()
 
const Widgetget_prev_sibling () const
 
Glib::RefPtr< Gio::ListModelobserve_children ()
 Returns a ListModel to track the children of widget. More...

 
Glib::RefPtr< const Gio::ListModelobserve_children () const
 Returns a ListModel to track the children of widget. More...

 
Glib::RefPtr< Gio::ListModelobserve_controllers ()
 Returns a ListModel to track the Gtk::EventControllers of widget. More...

 
Glib::RefPtr< const Gio::ListModelobserve_controllers () const
 Returns a ListModel to track the Gtk::EventControllers of widget. More...

 
void insert_after (Widget& parent, const Widget& previous_sibling)
 Inserts the Widget into the child widget list of parent after previous_sibling. More...

 
void insert_before (Widget& parent, const Widget& next_sibling)
 Inserts the Widget into the child widget list of parent before next_sibling. More...

 
void insert_at_start (Widget& parent)
 Inserts the Widget at the beginning of the child widget list of parent. More...

 
void insert_at_end (Widget& parent)
 Inserts the Widget at the end of the child widget list of parent. More...

 
void snapshot_child (Widget& child, const Glib::RefPtr< Gtk::Snapshot >& snapshot)
 When a widget receives a call to the snapshot function, it must send synthetic Gtk::Widget::signal_snapshot() calls to all children. More...

 
bool should_layout () const
 Returns whether widget should contribute to the measuring and allocation of its parent. More...

 
void add_css_class (const Glib::ustring& css_class)
 Adds css_class to widget. More...

 
void remove_css_class (const Glib::ustring& css_class)
 Removes css_class from widget. More...

 
bool has_css_class (const Glib::ustring& css_class) const
 Returns whether css_class is currently applied to widget. More...

 
Glib::SignalProxy< void()> signal_show ()
 
Glib::SignalProxy< void()> signal_hide ()
 
Glib::SignalProxy< void()> signal_map ()
 Emitted on mapping of a widget to the screen. More...

 
Glib::SignalProxy< void()> signal_unmap ()
 
Glib::SignalProxy< void()> signal_realize ()
 Emitted on realization of a widget. More...

 
Glib::SignalProxy< void()> signal_unrealize ()
 
Glib::SignalProxy< void(int, int, int)> signal_size_allocate ()
 
Glib::SignalProxy< void(Gtk::StateFlags)> signal_state_flags_changed ()
 
Glib::SignalProxy< void(TextDirection)> signal_direction_changed ()
 
Glib::SignalProxy< void(bool)> signal_grab_notify ()
 
Glib::SignalProxy< bool(bool)> signal_mnemonic_activate ()
 
Glib::SignalProxy< void()> signal_accel_closures_changed ()
 
Glib::SignalProxy< bool()> signal_popup_menu ()
 
Glib::SignalProxy< bool(int, int, bool, const Glib::RefPtr< Tooltip >&)> signal_query_tooltip ()
 
Glib::PropertyProxy< Glib::ustringproperty_name ()
 The name of the widget. More...

 
Glib::PropertyProxy_ReadOnly< Glib::ustringproperty_name () const
 The name of the widget. More...

 
Glib::PropertyProxy_ReadOnly< Container* > property_parent () const
 The parent widget of this widget. More...

 
Glib::PropertyProxy_ReadOnly< Root* > property_root () const
 The Gtk::Root widget of the widget tree containing this widget or nullptr if the widget is not contained in a root widget. More...

 
Glib::PropertyProxy< int > property_width_request ()
 Override for width request of the widget, or -1 if natural request should be used. More...

 
Glib::PropertyProxy_ReadOnly< int > property_width_request () const
 Override for width request of the widget, or -1 if natural request should be used. More...

 
Glib::PropertyProxy< int > property_height_request ()
 Override for height request of the widget, or -1 if natural request should be used. More...

 
Glib::PropertyProxy_ReadOnly< int > property_height_request () const
 Override for height request of the widget, or -1 if natural request should be used. More...

 
Glib::PropertyProxy< bool > property_visible ()
 Whether the widget is visible. More...

 
Glib::PropertyProxy_ReadOnly< bool > property_visible () const
 Whether the widget is visible. More...

 
Glib::PropertyProxy< bool > property_sensitive ()
 Whether the widget responds to input. More...

 
Glib::PropertyProxy_ReadOnly< bool > property_sensitive () const
 Whether the widget responds to input. More...

 
Glib::PropertyProxy< bool > property_can_focus ()
 Whether the widget can accept the input focus. More...

 
Glib::PropertyProxy_ReadOnly< bool > property_can_focus () const
 Whether the widget can accept the input focus. More...

 
Glib::PropertyProxy< bool > property_has_focus ()
 Whether the widget has the input focus. More...

 
Glib::PropertyProxy_ReadOnly< bool > property_has_focus () const
 Whether the widget has the input focus. More...

 
Glib::PropertyProxy< bool > property_is_focus ()
 Whether the widget is the focus widget within the toplevel. More...

 
Glib::PropertyProxy_ReadOnly< bool > property_is_focus () const
 Whether the widget is the focus widget within the toplevel. More...

 
Glib::PropertyProxy< bool > property_can_target ()
 Whether the widget can receive pointer events. More...

 
Glib::PropertyProxy_ReadOnly< bool > property_can_target () const
 Whether the widget can receive pointer events. More...

 
Glib::PropertyProxy< bool > property_focus_on_click ()
 Whether the widget should grab focus when it is clicked with the mouse. More...

 
Glib::PropertyProxy_ReadOnly< bool > property_focus_on_click () const
 Whether the widget should grab focus when it is clicked with the mouse. More...

 
Glib::PropertyProxy_ReadOnly< bool > property_has_default () const
 Whether the widget is the default widget. More...

 
Glib::PropertyProxy< bool > property_receives_default ()
 If true, the widget will receive the default action when it is focused. More...

 
Glib::PropertyProxy_ReadOnly< bool > property_receives_default () const
 If true, the widget will receive the default action when it is focused. More...

 
Glib::PropertyProxy< Glib::RefPtr< Gdk::Cursor > > property_cursor ()
 The cursor used by widget. More...

 
Glib::PropertyProxy_ReadOnly< Glib::RefPtr< Gdk::Cursor > > property_cursor () const
 The cursor used by widget. More...

 
Glib::PropertyProxy< bool > property_has_tooltip ()
 Enables or disables the emission of Gtk::Widget::signal_query_tooltip() on widget. More...

 
Glib::PropertyProxy_ReadOnly< bool > property_has_tooltip () const
 Enables or disables the emission of Gtk::Widget::signal_query_tooltip() on widget. More...

 
Glib::PropertyProxy< Glib::ustringproperty_tooltip_markup ()
 Sets the text of tooltip to be the given string, which is marked up with the [Pango text markup language][PangoMarkupFormat]. More...

 
Glib::PropertyProxy_ReadOnly< Glib::ustringproperty_tooltip_markup () const
 Sets the text of tooltip to be the given string, which is marked up with the [Pango text markup language][PangoMarkupFormat]. More...

 
Glib::PropertyProxy< Glib::ustringproperty_tooltip_text ()
 Sets the text of tooltip to be the given string. More...

 
Glib::PropertyProxy_ReadOnly< Glib::ustringproperty_tooltip_text () const
 Sets the text of tooltip to be the given string. More...

 
Glib::PropertyProxy< Alignproperty_halign ()
 How to distribute horizontal space if widget gets extra space, see Gtk::Align. More...

 
Glib::PropertyProxy_ReadOnly< Alignproperty_halign () const
 How to distribute horizontal space if widget gets extra space, see Gtk::Align. More...

 
Glib::PropertyProxy< Alignproperty_valign ()
 How to distribute vertical space if widget gets extra space, see Gtk::Align. More...

 
Glib::PropertyProxy_ReadOnly< Alignproperty_valign () const
 How to distribute vertical space if widget gets extra space, see Gtk::Align. More...

 
Glib::PropertyProxy< int > property_margin_start ()
 Margin on start of widget, horizontally. More...

 
Glib::PropertyProxy_ReadOnly< int > property_margin_start () const
 Margin on start of widget, horizontally. More...

 
Glib::PropertyProxy< int > property_margin_end ()
 Margin on end of widget, horizontally. More...

 
Glib::PropertyProxy_ReadOnly< int > property_margin_end () const
 Margin on end of widget, horizontally. More...

 
Glib::PropertyProxy< int > property_margin_top ()
 Margin on top side of widget. More...

 
Glib::PropertyProxy_ReadOnly< int > property_margin_top () const
 Margin on top side of widget. More...

 
Glib::PropertyProxy< int > property_margin_bottom ()
 Margin on bottom side of widget. More...

 
Glib::PropertyProxy_ReadOnly< int > property_margin_bottom () const
 Margin on bottom side of widget. More...

 
Glib::PropertyProxy< int > property_margin ()
 Sets all four sides' margin at once. More...

 
Glib::PropertyProxy_ReadOnly< int > property_margin () const
 Sets all four sides' margin at once. More...

 
Glib::PropertyProxy< bool > property_hexpand ()
 Whether to expand horizontally. More...

 
Glib::PropertyProxy_ReadOnly< bool > property_hexpand () const
 Whether to expand horizontally. More...

 
Glib::PropertyProxy< bool > property_hexpand_set ()
 Whether to use the Gtk::Widget::property_hexpand() property. More...

 
Glib::PropertyProxy_ReadOnly< bool > property_hexpand_set () const
 Whether to use the Gtk::Widget::property_hexpand() property. More...

 
Glib::PropertyProxy< bool > property_vexpand ()
 Whether to expand vertically. More...

 
Glib::PropertyProxy_ReadOnly< bool > property_vexpand () const
 Whether to expand vertically. More...

 
Glib::PropertyProxy< bool > property_vexpand_set ()
 Whether to use the Gtk::Widget::property_vexpand() property. More...

 
Glib::PropertyProxy_ReadOnly< bool > property_vexpand_set () const
 Whether to use the Gtk::Widget::property_vexpand() property. More...

 
Glib::PropertyProxy< bool > property_expand ()
 Whether to expand in both directions. More...

 
Glib::PropertyProxy_ReadOnly< bool > property_expand () const
 Whether to expand in both directions. More...

 
Glib::PropertyProxy< double > property_opacity ()
 The requested opacity of the widget. More...

 
Glib::PropertyProxy_ReadOnly< double > property_opacity () const
 The requested opacity of the widget. More...

 
Glib::PropertyProxy< Overflowproperty_overflow ()
 How content outside the widget's content area is treated. More...

 
Glib::PropertyProxy_ReadOnly< Overflowproperty_overflow () const
 How content outside the widget's content area is treated. More...

 
Glib::PropertyProxy_ReadOnly< int > property_scale_factor () const
 The scale factor of the widget. More...

 
Glib::PropertyProxy_ReadOnly< Glib::ustringproperty_css_name () const
 The name of this widget in the CSS tree. More...

 
Glib::PropertyProxy< Glib::RefPtr< LayoutManager > > property_layout_manager ()
 The Gtk::LayoutManager instance to use to compute the preferred size of the widget, and allocate its children. More...

 
Glib::PropertyProxy_ReadOnly< Glib::RefPtr< LayoutManager > > property_layout_manager () const
 The Gtk::LayoutManager instance to use to compute the preferred size of the widget, and allocate its children. More...

 
- Public Member Functions inherited from Gtk::Object
 Object (Object&& src) noexcept
 
Objectoperator= (Object&& src) noexcept
 
 ~Object () noexcept override
 
- Public Member Functions inherited from Glib::Object
 Object (const Object &)=delete
 
Objectoperator= (const Object &)=delete
 
 Object (Object &&src) noexcept
 
Objectoperator= (Object &&src) noexcept
 
void * get_data (const QueryQuark &key)
 
void set_data (const Quark &key, void *data)
 
void set_data (const Quark &key, void *data, DestroyNotify notify)
 
void remove_data (const QueryQuark &quark)
 
void * steal_data (const QueryQuark &quark)
 
Glib::RefPtr< Glib::Objectwrap (GObject *object, bool take_copy=false)
 
- Public Member Functions inherited from Glib::ObjectBase
 ObjectBase (const ObjectBase &)=delete
 
ObjectBaseoperator= (const ObjectBase &)=delete
 
void set_property_value (const Glib::ustring &property_name, const Glib::ValueBase &value)
 
void get_property_value (const Glib::ustring &property_name, Glib::ValueBase &value) const
 
void set_property (const Glib::ustring &property_name, const PropertyType &value)
 
void get_property (const Glib::ustring &property_name, PropertyType &value) const
 
PropertyType get_property (const Glib::ustring &property_name) const
 
sigc::connection connect_property_changed (const Glib::ustring &property_name, const sigc::slot< void()> &slot)
 
sigc::connection connect_property_changed (const Glib::ustring &property_name, sigc::slot< void()> &&slot)
 
void freeze_notify ()
 
void thaw_notify ()
 
virtual void reference () const
 
virtual void unreference () const
 
GObject * gobj ()
 
const GObject * gobj () const
 
GObject * gobj_copy () const
 
- Public Member Functions inherited from sigc::trackable
 trackable () noexcept
 
 trackable (const trackable &src) noexcept
 
 trackable (trackable &&src) noexcept
 
 ~trackable ()
 
void add_destroy_notify_callback (notifiable *data, func_destroy_notify func) const
 
void notify_callbacks ()
 
trackableoperator= (const trackable &src)
 
trackableoperator= (trackable &&src) noexcept
 
void remove_destroy_notify_callback (notifiable *data) const
 
- Public Member Functions inherited from Gtk::Buildable
 Buildable (Buildable&& src) noexcept
 
Buildableoperator= (Buildable&& src) noexcept
 
 ~Buildable () noexcept override
 
GtkBuildable* gobj ()
 Provides access to the underlying C GObject. More...

 
const GtkBuildable* gobj () const
 Provides access to the underlying C GObject. More...

 
void set_name (const Glib::ustring& name)
 Sets the name of the buildable object. More...

 
Glib::ustring get_name () const
 Gets the name of the buildable object. More...

 
- Public Member Functions inherited from Glib::Interface
 Interface ()
 
 Interface (Interface &&src) noexcept
 
Interfaceoperator= (Interface &&src) noexcept
 
 Interface (const Glib::Interface_Class &interface_class)
 
 Interface (GObject *castitem)
 
 ~Interface () noexcept override
 
 Interface (const Interface &)=delete
 
Interfaceoperator= (const Interface &)=delete
 
GObject * gobj ()
 
const GObject * gobj () const
 
- Public Member Functions inherited from Gtk::ConstraintTarget
 ConstraintTarget (ConstraintTarget&& src) noexcept
 
ConstraintTargetoperator= (ConstraintTarget&& src) noexcept
 
 ~ConstraintTarget () noexcept override
 
GtkConstraintTarget* gobj ()
 Provides access to the underlying C GObject. More...

 
const GtkConstraintTarget* gobj () const
 Provides access to the underlying C GObject. More...

 
- Public Member Functions inherited from Atk::Implementor
 Implementor (Implementor &&src) noexcept
 
Implementoroperator= (Implementor &&src) noexcept
 
 ~Implementor () noexcept override
 
AtkImplementor * gobj ()
 
const AtkImplementor * gobj () const
 
Glib::RefPtr< Atk::Implementorwrap (AtkImplementor *object, bool take_copy=false)
 
- Public Member Functions inherited from Gtk::Native
 Native (Native&& src) noexcept
 
Nativeoperator= (Native&& src) noexcept
 
 ~Native () noexcept override
 
GtkNative* gobj ()
 Provides access to the underlying C GObject. More...

 
const GtkNative* gobj () const
 Provides access to the underlying C GObject. More...

 
void check_resize ()
 Reposition and resize a Gtk::Native. More...

 
Glib::RefPtr< Gdk::Surfaceget_surface ()
 Returns the surface of this Gtk::Native. More...

 
Glib::RefPtr< const Gdk::Surfaceget_surface () const
 Returns the surface of this Gtk::Native. More...

 
- Public Member Functions inherited from Gtk::Root
 Root (Root&& src) noexcept
 
Rootoperator= (Root&& src) noexcept
 
 ~Root () noexcept override
 
GtkRoot* gobj ()
 Provides access to the underlying C GObject. More...

 
const GtkRoot* gobj () const
 Provides access to the underlying C GObject. More...

 
Glib::RefPtr< Gdk::Displayget_display ()
 Returns the display that this GtkRoot is on. More...

 
Glib::RefPtr< const Gdk::Displayget_display () const
 Returns the display that this GtkRoot is on. More...

 
void set_focus (Widget& focus)
 If focus is not the current focus widget, and is focusable, sets it as the focus widget for the root. More...

 
void unset_focus ()
 Unsets the focus widget for the root. More...

 
Widgetget_focus ()
 Retrieves the current focused widget within the root. More...

 
const Widgetget_focus () const
 Retrieves the current focused widget within the root. More...

 
Glib::PropertyProxy< Widget* > property_focus_widget ()
 The focus widget. More...

 
Glib::PropertyProxy_ReadOnly< Widget* > property_focus_widget () const
 The focus widget. More...

 

Static Public Member Functions

static GType get_type ()
 Get the GType for this class, for use with the underlying GObject type system. More...

 
static void set_default_icon_name (const Glib::ustring& name)
 Sets an icon to be used as fallback for windows that haven't had gtk_window_set_icon_list() called on them from a named themed icon, see set_icon_name(). More...

 
static Glib::ustring get_default_icon_name ()
 Returns the fallback icon name for windows that has been set with set_default_icon_name(). More...

 
static void set_auto_startup_notification (bool setting=true)
 By default, after showing the first Gtk::Window, GTK+ calls gdk_notify_startup_complete(). More...

 
static Glib::RefPtr< Gio::ListModelget_toplevels ()
 Returns a list of all existing toplevel windows. More...

 
static std::vector< Window* > list_toplevels ()
 Returns a list of all existing toplevel windows. More...

 
- Static Public Member Functions inherited from Gtk::Bin
static GType get_type ()
 Get the GType for this class, for use with the underlying GObject type system. More...

 
- Static Public Member Functions inherited from Gtk::Container
static GType get_type ()
 Get the GType for this class, for use with the underlying GObject type system. More...

 
- Static Public Member Functions inherited from Gtk::Widget
static GType get_type ()
 Get the GType for this class, for use with the underlying GObject type system. More...

 
static Widgetget_current_modal_grab ()
 Retrieve the widget which is currently grabbing all events. More...

 
static void set_default_direction (TextDirection dir)
 Sets the default reading direction for widgets where the direction has not been explicitly set by set_direction(). More...

 
static TextDirection get_default_direction ()
 Obtains the current default reading direction. More...

 
- Static Public Member Functions inherited from Gtk::Buildable
static void add_interface (GType gtype_implementer)
 
static GType get_type ()
 Get the GType for this class, for use with the underlying GObject type system. More...

 
- Static Public Member Functions inherited from Gtk::ConstraintTarget
static void add_interface (GType gtype_implementer)
 
static GType get_type ()
 Get the GType for this class, for use with the underlying GObject type system. More...

 
- Static Public Member Functions inherited from Atk::Implementor
static void add_interface (GType gtype_implementer)
 
static GType get_type ()
 
- Static Public Member Functions inherited from Gtk::Native
static void add_interface (GType gtype_implementer)
 
static GType get_type ()
 Get the GType for this class, for use with the underlying GObject type system. More...

 
static Widgetget_for_surface (const Glib::RefPtr< const Gdk::Surface >& surface)
 Finds the GtkNative associated with the surface. More...

 
- Static Public Member Functions inherited from Gtk::Root
static void add_interface (GType gtype_implementer)
 
static GType get_type ()
 Get the GType for this class, for use with the underlying GObject type system. More...

 

Protected Member Functions

void on_window_hide ()
 
void destroy_ ()
 
virtual void on_keys_changed ()
 This is a default handler for the signal signal_keys_changed(). More...

 
virtual bool on_close_request ()
 This is a default handler for the signal signal_close_request(). More...

 
- Protected Member Functions inherited from Gtk::Bin
 Bin ()
 This constructor is protected because only derived classes should be instantiated. More...

 
- Protected Member Functions inherited from Gtk::Container
 Container ()
 
virtual GType child_type_vfunc () const
 Implements child_type(). More...

 
virtual void forall_vfunc (const ForeachSlot& slot)
 Invokes a callback on all non-internal children of the container. More...

 
virtual void set_focus_child_vfunc (Widget* child)
 Sets the focused child of container. More...

 
virtual void on_add (Widget* widget)
 This is a default handler for the signal signal_add(). More...

 
virtual void on_remove (Widget* widget)
 This is a default handler for the signal signal_remove(). More...

 
- Protected Member Functions inherited from Gtk::Widget
virtual void root_vfunc ()
 
virtual void unroot_vfunc ()
 
virtual SizeRequestMode get_request_mode_vfunc () const
 
virtual void measure_vfunc (Orientation orientation, int for_size, int& minimum, int& natural, int& minimum_baseline, int& natural_baseline) const
 
virtual bool grab_focus_vfunc ()
 
virtual Glib::RefPtr< Atk::Objectget_accessible_vfunc ()
 
virtual void compute_expand_vfunc (bool& hexpand_p, bool& vexpand_p)
 
virtual bool contains_vfunc (double x, double y) const
 
virtual void snapshot_vfunc (const Glib::RefPtr< Gtk::Snapshot >& snapshot)
 
 Widget ()
 
void realize ()
 Creates the GDK (windowing system) resources associated with a widget. More...

 
void unrealize ()
 This function is only useful in widget implementations. More...

 
void realize_if_needed ()
 
void set_focus_child (Widget& child)
 Set child as the current focus child of widget. More...

 
void unset_focus_child ()
 Unsets the focus child of the widget. More...

 
Widgetget_focus_child ()
 Returns the current focus child of widget. More...

 
const Widgetget_focus_child () const
 Returns the current focus child of widget. More...

 
virtual void on_show ()
 This is a default handler for the signal signal_show(). More...

 
virtual void on_hide ()
 This is a default handler for the signal signal_hide(). More...

 
virtual void on_map ()
 This is a default handler for the signal signal_map(). More...

 
virtual void on_unmap ()
 This is a default handler for the signal signal_unmap(). More...

 
virtual void on_realize ()
 This is a default handler for the signal signal_realize(). More...

 
virtual void on_unrealize ()
 This is a default handler for the signal signal_unrealize(). More...

 
virtual void on_size_allocate (int width, int height, int baseline)
 This is a default handler for the signal signal_size_allocate(). More...

 
virtual void on_state_flags_changed (Gtk::StateFlags previous_state_flags)
 This is a default handler for the signal signal_state_flags_changed(). More...

 
virtual void on_direction_changed (TextDirection direction)
 This is a default handler for the signal signal_direction_changed(). More...

 
virtual void on_grab_notify (bool was_grabbed)
 This is a default handler for the signal signal_grab_notify(). More...

 
virtual bool on_mnemonic_activate (bool group_cycling)
 This is a default handler for the signal signal_mnemonic_activate(). More...

 
virtual bool on_popup_menu ()
 This is a default handler for the signal signal_popup_menu(). More...

 
virtual bool on_query_tooltip (int x, int y, bool keyboard_tooltip, const Glib::RefPtr< Tooltip >& tooltip)
 This is a default handler for the signal signal_query_tooltip(). More...

 
- Protected Member Functions inherited from Glib::Object
 Object ()
 
 Object (const Glib::ConstructParams &construct_params)
 
 Object (GObject *castitem)
 
 ~Object () noexcept override
 
- Protected Member Functions inherited from Glib::ObjectBase
 ObjectBase ()
 
 ObjectBase (const char *custom_type_name)
 
 ObjectBase (const std::type_info &custom_type_info)
 
 ObjectBase (ObjectBase &&src) noexcept
 
ObjectBaseoperator= (ObjectBase &&src) noexcept
 
virtual ~ObjectBase () noexcept=0
 
void initialize (GObject *castitem)
 
void initialize_move (GObject *castitem, Glib::ObjectBase *previous_wrapper)
 
- Protected Member Functions inherited from Gtk::Buildable
 Buildable ()
 You should derive from this class to use it. More...

 
- Protected Member Functions inherited from Gtk::ConstraintTarget
 ConstraintTarget ()
 You should derive from this class to use it. More...

 
- Protected Member Functions inherited from Atk::Implementor
 Implementor ()
 
virtual Glib::RefPtr< Objectref_accessibile_vfunc ()
 
- Protected Member Functions inherited from Gtk::Native
 Native ()
 You should derive from this class to use it. More...

 
virtual Glib::RefPtr< Gdk::Surfaceget_surface_vfunc ()
 
virtual void get_surface_transform_vfunc (int& x, int& y)
 
virtual void check_resize_vfunc ()
 
- Protected Member Functions inherited from Gtk::Root
 Root ()
 You should derive from this class to use it. More...

 

Related Functions

(Note that these are not member functions.)

Gtk::Windowwrap (GtkWindow* object, bool take_copy=false)
 A Glib::wrap() method for this object. More...

 

Additional Inherited Members

- Public Types inherited from Gtk::Container
using ForeachSlot = sigc::slot< void(Widget&)>
 A slot to invoke with each child iterated over by foreach() or forall(). More...

 
- Public Types inherited from Gtk::Widget
using SlotTick = sigc::slot< bool(const Glib::RefPtr< Gdk::FrameClock >&)>
 Callback type for adding a function to update animations. More...

 
- Public Types inherited from Glib::Object
typedef void(*)(gpointer data DestroyNotify)
 
- Public Types inherited from sigc::trackable
typedef internal::func_destroy_notify func_destroy_notify
 
- Public Types inherited from sigc::notifiable
typedef internal::func_destroy_notify func_destroy_notify
 

Detailed Description

Toplevel Window.

This represents all widgets which are physical windows controlled by the window manager.

The window will be hidden when the window manager's close button is clicked. Override on_delete_event() to stop this.

Gtk::manage() has no effect on Windows because they have no parent Containers.

When a window is closed (hidden), it's removed from its application. This can cause Application::run() to return, if it is the last window.

Constructor & Destructor Documentation

Gtk::Window::Window ( const Window )
delete
Gtk::Window::~Window ( )
overridenoexcept
Gtk::Window::Window ( Window&&  src)
noexcept
Gtk::Window::Window ( WindowType  type = WindowType::TOPLEVEL)
explicit

Member Function Documentation

void Gtk::Window::add_accel_group ( const Glib::RefPtr< AccelGroup >&  accel_group)

Associate accel_group with window, such that calling gtk_accel_groups_activate() on window will activate accelerators in accel_group.

Parameters
accel_groupA Gtk::AccelGroup.
void Gtk::Window::add_mnemonic ( guint  keyval,
Widget target 
)

Adds a mnemonic to this window.

Parameters
keyvalThe mnemonic.
targetThe widget that gets activated by the mnemonic.
void Gtk::Window::begin_move_drag ( int  button,
int  x,
int  y,
guint32  timestamp 
)

Starts moving a window.

This function is used if an application has window movement grips.

Parameters
buttonMouse button that initiated the drag.
xX position where the user clicked to initiate the drag, in window coordinates.
yY position where the user clicked to initiate the drag.
timestampTimestamp from the click event that initiated the drag.
void Gtk::Window::begin_resize_drag ( Gdk::SurfaceEdge  edge,
int  button,
int  x,
int  y,
guint32  timestamp 
)

Starts resizing a window.

This function is used if an application has window resizing controls.

Parameters
buttonMouse button that initiated the drag.
edgePosition of the resize control.
xX position where the user clicked to initiate the drag, in window coordinates.
yY position where the user clicked to initiate the drag.
timestampTimestamp from the click event that initiated the drag.
void Gtk::Window::close ( )

Requests that the window is closed, similar to what happens when a window manager close button is clicked.

This function can be used with close buttons in custom titlebars.

void Gtk::Window::destroy_ ( )
protected
void Gtk::Window::fullscreen ( )

Asks to place window in the fullscreen state.

Note that you shouldn’t assume the window is definitely full screen afterward, because other entities (e.g. the user or [window manager][gtk-X11-arch]) could unfullscreen it again, and not all window managers honor requests to fullscreen windows. But normally the window will end up fullscreen. Just don’t write code that crashes if not.

You can track iconification via the Gdk::Surface::property_state() property

void Gtk::Window::fullscreen_on_monitor ( const Glib::RefPtr< Gdk::Monitor >&  monitor)

Asks to place window in the fullscreen state.

Note that you shouldn't assume the window is definitely full screen afterward.

You can track iconification via the Gdk::Surface::property_state() property

Parameters
monitorWhich monitor to go fullscreen on.
std::vector< Glib::RefPtr<AccelGroup> > Gtk::Window::get_accel_groups ( )

Gets a vector containing each Gtk::AccelGroup associated with the window.

Since gtkmm 3.24:
Returns
A vector of Gtk::AccelGroup.
bool Gtk::Window::get_accept_focus ( ) const

Gets the value set by set_accept_focus().

Returns
true if window should receive the input focus.
Glib::RefPtr<Application> Gtk::Window::get_application ( )

Gets the Gtk::Application associated with the window (if any).

Returns
A Gtk::Application, or nullptr.
Glib::RefPtr<const Application> Gtk::Window::get_application ( ) const

Gets the Gtk::Application associated with the window (if any).

Returns
A Gtk::Application, or nullptr.
Widget* Gtk::Window::get_attached_to ( )

Fetches the attach widget for this window.

See set_attached_to().

Returns
The widget where the window is attached, or nullptr if the window is not attached to any widget.
const Widget* Gtk::Window::get_attached_to ( ) const

Fetches the attach widget for this window.

See set_attached_to().

Returns
The widget where the window is attached, or nullptr if the window is not attached to any widget.
bool Gtk::Window::get_decorated ( ) const

Returns whether the window has been set to have decorations such as a title bar via set_decorated().

Returns
true if the window has been set to have decorations.
static Glib::ustring Gtk::Window::get_default_icon_name ( )
static

Returns the fallback icon name for windows that has been set with set_default_icon_name().

The returned string is owned by GTK+ and should not be modified. It is only valid until the next call to set_default_icon_name().

Returns
The fallback icon name for windows.
void Gtk::Window::get_default_size ( int &  width,
int &  height 
) const

Gets the default size of the window.

A value of -1 for the width or height indicates that a default size has not been explicitly set for that dimension, so the “natural” size of the window will be used.

Parameters
widthLocation to store the default width.
heightLocation to store the default height.
Widget* Gtk::Window::get_default_widget ( )

Returns the default widget for window.

See gtk_window_set_default() for more details.

Returns
The default widget, or nullptr if there is none.
const Widget* Gtk::Window::get_default_widget ( ) const

Returns the default widget for window.

See gtk_window_set_default() for more details.

Returns
The default widget, or nullptr if there is none.
bool Gtk::Window::get_deletable ( ) const

Returns whether the window has been set to have a close button via set_deletable().

Returns
true if the window has been set to have a close button.
bool Gtk::Window::get_destroy_with_parent ( ) const

Returns whether the window will be destroyed with its transient parent.

See set_destroy_with_parent().

Returns
true if the window will be destroyed with its transient parent.
Widget* Gtk::Window::get_focus ( )

Retrieves the current focused widget within the window.

Note that this is the widget that would have the focus if the toplevel window focused; if the toplevel window is not focused then gtk_widget_has_focus (widget) will not be true for the widget.

Returns
The currently focused widget, or nullptr if there is none.
const Widget* Gtk::Window::get_focus ( ) const

Retrieves the current focused widget within the window.

Note that this is the widget that would have the focus if the toplevel window focused; if the toplevel window is not focused then gtk_widget_has_focus (widget) will not be true for the widget.

Returns
The currently focused widget, or nullptr if there is none.
bool Gtk::Window::get_focus_on_map ( ) const

Gets the value set by set_focus_on_map().

Returns
true if window should receive the input focus when mapped.
bool Gtk::Window::get_focus_visible ( ) const

Gets the value of the Gtk::Window::property_focus_visible() property.

Returns
true if “focus rectangles” are supposed to be visible in this window.
Glib::RefPtr<WindowGroup> Gtk::Window::get_group ( )

Returns the group for window or the default group, if window is nullptr or if window does not have an explicit window group.

Returns
The Gtk::WindowGroup for a window or the default group.
Glib::RefPtr<const WindowGroup> Gtk::Window::get_group ( ) const

Returns the group for window or the default group, if window is nullptr or if window does not have an explicit window group.

Returns
The Gtk::WindowGroup for a window or the default group.
bool Gtk::Window::get_hide_on_close ( ) const

Returns whether the window will be hidden when the close button is clicked.

Returns
true if the window will be hidden.
Glib::ustring Gtk::Window::get_icon_name ( ) const

Returns the name of the themed icon for the window, see set_icon_name().

Returns
The icon name or nullptr if the window has no themed icon.
Gdk::ModifierType Gtk::Window::get_mnemonic_modifier ( )

Returns the mnemonic modifier for this window.

See set_mnemonic_modifier().

Returns
The modifier mask used to activate mnemonics on this window.
bool Gtk::Window::get_mnemonics_visible ( ) const

Gets the value of the Gtk::Window::property_mnemonics_visible() property.

Returns
true if mnemonics are supposed to be visible in this window.
bool Gtk::Window::get_modal ( ) const

Returns whether the window is modal.

See set_modal().

Returns
true if the window is set to be modal and establishes a grab when shown.
bool Gtk::Window::get_resizable ( ) const

Gets the value set by set_resizable().

Returns
true if the user can resize the window.
void Gtk::Window::get_size ( int &  width,
int &  height 
) const

Obtains the current size of window.

If window is not visible on screen, this function return the size GTK+ will suggest to the [window manager][gtk-X11-arch] for the initial window size (but this is not reliably the same as the size the window manager will actually select). See: set_default_size().

Depending on the windowing system and the window manager constraints, the size returned by this function may not match the size set using resize(); additionally, since resize() may be implemented as an asynchronous operation, GTK+ cannot guarantee in any way that this code:

[C example ellipted]

will result in new_width and new_height matching width and height, respectively.

This function will return the logical size of the Gtk::Window, excluding the widgets used in client side decorations; there is, however, no guarantee that the result will be completely accurate because client side decoration may include widgets that depend on the user preferences and that may not be visibile at the time you call this function.

The dimensions returned by this function are suitable for being stored across sessions; use set_default_size() to restore them when before showing the window.

To avoid potential race conditions, you should only call this function in response to a size change notification, for instance inside a handler for the Gtk::Widget::signal_size_allocate() signal, or inside a handler for the Gtk::Widget::signal_configure_event() signal:

[C example ellipted]

Note that, if you connect to the Gtk::Widget::signal_size_allocate() signal, you should not use the dimensions of the Gtk::Allocation passed to the signal handler, as the allocation may contain client side decorations added by GTK+, depending on the windowing system in use.

If you are getting a window size in order to position the window on the screen, you should, instead, simply set the window’s semantic type with set_type_hint(), which allows the window manager to e.g. center dialogs. Also, if you set the transient parent of dialogs with set_transient_for() window managers will often center the dialog over its parent window. It's much preferred to let the window manager handle these cases rather than doing it yourself, because all apps will behave consistently and according to user or system preferences, if the window manager handles it. Also, the window manager can take into account the size of the window decorations and border that it may add, and of which GTK+ has no knowledge. Additionally, positioning windows in global screen coordinates may not be allowed by the windowing system. For more information, see: gtk_window_set_position().

Parameters
widthReturn location for width.
heightReturn location for height.
Glib::ustring Gtk::Window::get_title ( ) const

Retrieves the title of the window.

See set_title().

Returns
The title of the window, or nullptr if none has been set explicitly. The returned string is owned by the widget and must not be modified or freed.
Widget* Gtk::Window::get_titlebar ( )

Returns the custom titlebar that has been set with set_titlebar().

Returns
The custom titlebar, or nullptr.
const Widget* Gtk::Window::get_titlebar ( ) const

Returns the custom titlebar that has been set with set_titlebar().

Returns
The custom titlebar, or nullptr.
static Glib::RefPtr<Gio::ListModel> Gtk::Window::get_toplevels ( )
static

Returns a list of all existing toplevel windows.

If you want to iterate through the list and perform actions involving callbacks that might destroy the widgets or add new ones, be aware that the list of toplevels will change and emit the "items-changed" signal.

Returns
The list of toplevel widgets.
Window* Gtk::Window::get_transient_for ( )

Fetches the transient parent for this window.

See set_transient_for().

Returns
The transient parent for this window, or nullptr if no transient parent has been set.
const Window* Gtk::Window::get_transient_for ( ) const

Fetches the transient parent for this window.

See set_transient_for().

Returns
The transient parent for this window, or nullptr if no transient parent has been set.
static GType Gtk::Window::get_type ( )
static

Get the GType for this class, for use with the underlying GObject type system.

Gdk::Surface::TypeHint Gtk::Window::get_type_hint ( ) const

Gets the type hint for this window.

See set_type_hint().

Returns
The type hint for window.
WindowType Gtk::Window::get_window_type ( ) const

Gets the type of the window.

See Gtk::WindowType.

Returns
The type of the window.
GtkWindow* Gtk::Window::gobj ( )
inline

Provides access to the underlying C GObject.

const GtkWindow* Gtk::Window::gobj ( ) const
inline

Provides access to the underlying C GObject.

bool Gtk::Window::has_group ( ) const

Returns whether window has an explicit window group.

Returns
true if window has an explicit window group.
bool Gtk::Window::is_active ( ) const

Returns whether the window is part of the current active toplevel.

(That is, the toplevel window receiving keystrokes.) The return value is true if the window is active toplevel itself. You might use this function if you wanted to draw a widget differently in an active window from a widget in an inactive window.

Returns
true if the window part of the current active window.
bool Gtk::Window::is_maximized ( ) const

Retrieves the current maximized state of window.

Note that since maximization is ultimately handled by the window manager and happens asynchronously to an application request, you shouldn’t assume the return value of this function changing immediately (or at all), as an effect of calling maximize() or unmaximize().

Returns
Whether the window has a maximized state.
static std::vector<Window*> Gtk::Window::list_toplevels ( )
static

Returns a list of all existing toplevel windows.

The widgets in the list are not individually referenced. If you want to iterate through the list and perform actions involving callbacks that might destroy the widgets, you must call g_list_foreach (result, (GFunc)g_object_ref, <tt>nullptr</tt>) first, and then unref all the widgets afterwards.

Returns
List of toplevel widgets.
void Gtk::Window::maximize ( )

Asks to maximize window, so that it becomes full-screen.

Note that you shouldn’t assume the window is definitely maximized afterward, because other entities (e.g. the user or [window manager][gtk-X11-arch]) could unmaximize it again, and not all window managers support maximization. But normally the window will end up maximized. Just don’t write code that crashes if not.

It’s permitted to call this function before showing a window, in which case the window will be maximized when it appears onscreen initially.

You can track the result of this operation via the Gdk::Surface::property_state() property, or by listening to notifications on the Gtk::Window::property_is_maximized() property.

void Gtk::Window::minimize ( )

Asks to minimize the specified window.

Note that you shouldn’t assume the window is definitely minimized afterward, because the windowing system might not support this functionality; other entities (e.g. the user or the [window manager][gtk-X11-arch]) could unminimize it again, or there may not be a window manager in which case minimization isn’t possible, etc.

It’s permitted to call this function before showing a window, in which case the window will be minimized before it ever appears onscreen.

You can track result of this operation via the Gdk::Surface::property_state() property.

bool Gtk::Window::mnemonic_activate ( guint  keyval,
Gdk::ModifierType  modifier 
)

Activates the targets associated with the mnemonic.

Parameters
keyvalThe mnemonic.
modifierThe modifiers.
Returns
true if the activation is done.
virtual bool Gtk::Window::on_close_request ( )
protectedvirtual

This is a default handler for the signal signal_close_request().

virtual void Gtk::Window::on_keys_changed ( )
protectedvirtual

This is a default handler for the signal signal_keys_changed().

void Gtk::Window::on_window_hide ( )
protected
Window& Gtk::Window::operator= ( const Window )
delete
Window& Gtk::Window::operator= ( Window&&  src)
noexcept
void Gtk::Window::present ( )

Presents a window to the user.

This function should not be used as when it is called, it is too late to gather a valid timestamp to allow focus stealing prevention to work correctly.

void Gtk::Window::present ( guint32  timestamp)

Presents a window to the user.

This may mean raising the window in the stacking order, unminimizing it, moving it to the current desktop, and/or giving it the keyboard focus, possibly dependent on the user’s platform, window manager, and preferences.

If window is hidden, this function calls Gtk::Widget::show() as well.

This function should be used when the user tries to open a window that’s already open. Say for example the preferences dialog is currently open, and the user chooses Preferences from the menu a second time; use present() to move the already-open dialog where the user can see it.

Presents a window to the user in response to a user interaction. The timestamp should be gathered when the window was requested to be shown (when clicking a link for example), rather than once the window is ready to be shown.

Parameters
timestampThe timestamp of the user interaction (typically a button or key press event) which triggered this call.
Glib::PropertyProxy< bool > Gtk::Window::property_accept_focus ( )

Whether the window should receive the input focus.

Default value: true

Returns
A PropertyProxy that allows you to get or set the value of the property, or receive notification when the value of the property changes.
Glib::PropertyProxy_ReadOnly< bool > Gtk::Window::property_accept_focus ( ) const

Whether the window should receive the input focus.

Default value: true

Returns
A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.
Glib::PropertyProxy< Glib::RefPtr<Application> > Gtk::Window::property_application ( )

The Gtk::Application associated with the window.

The application will be kept alive for at least as long as it has any windows associated with it (see Glib::application_hold() for a way to keep it alive without windows).

Normally, the connection between the application and the window will remain until the window is destroyed, but you can explicitly remove it by setting the :application property to nullptr.

Returns
A PropertyProxy that allows you to get or set the value of the property, or receive notification when the value of the property changes.
Glib::PropertyProxy_ReadOnly< Glib::RefPtr<Application> > Gtk::Window::property_application ( ) const

The Gtk::Application associated with the window.

The application will be kept alive for at least as long as it has any windows associated with it (see Glib::application_hold() for a way to keep it alive without windows).

Normally, the connection between the application and the window will remain until the window is destroyed, but you can explicitly remove it by setting the :application property to nullptr.

Returns
A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.
Glib::PropertyProxy< Widget* > Gtk::Window::property_attached_to ( )

The widget to which this window is attached.

See Gtk::Window::set_attached_to().

Examples of places where specifying this relation is useful are for instance a Gtk::Menu created by a Gtk::ComboBox, a completion popup window created by Gtk::Entry or a typeahead search entry created by Gtk::TreeView.

Returns
A PropertyProxy that allows you to get or set the value of the property, or receive notification when the value of the property changes.
Glib::PropertyProxy_ReadOnly< Widget* > Gtk::Window::property_attached_to ( ) const

The widget to which this window is attached.

See Gtk::Window::set_attached_to().

Examples of places where specifying this relation is useful are for instance a Gtk::Menu created by a Gtk::ComboBox, a completion popup window created by Gtk::Entry or a typeahead search entry created by Gtk::TreeView.

Returns
A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.
Glib::PropertyProxy< bool > Gtk::Window::property_decorated ( )

Whether the window should be decorated by the window manager.

Default value: true

Returns
A PropertyProxy that allows you to get or set the value of the property, or receive notification when the value of the property changes.
Glib::PropertyProxy_ReadOnly< bool > Gtk::Window::property_decorated ( ) const

Whether the window should be decorated by the window manager.

Default value: true

Returns
A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.
Glib::PropertyProxy< int > Gtk::Window::property_default_height ( )

The default height of the window, used when initially showing the window.

Default value: -1

Returns
A PropertyProxy that allows you to get or set the value of the property, or receive notification when the value of the property changes.
Glib::PropertyProxy_ReadOnly< int > Gtk::Window::property_default_height ( ) const

The default height of the window, used when initially showing the window.

Default value: -1

Returns
A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.
Glib::PropertyProxy< Widget* > Gtk::Window::property_default_widget ( )

The default widget.

Returns
A PropertyProxy that allows you to get or set the value of the property, or receive notification when the value of the property changes.
Glib::PropertyProxy_ReadOnly< Widget* > Gtk::Window::property_default_widget ( ) const

The default widget.

Returns
A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.
Glib::PropertyProxy< int > Gtk::Window::property_default_width ( )

The default width of the window, used when initially showing the window.

Default value: -1

Returns
A PropertyProxy that allows you to get or set the value of the property, or receive notification when the value of the property changes.
Glib::PropertyProxy_ReadOnly< int > Gtk::Window::property_default_width ( ) const

The default width of the window, used when initially showing the window.

Default value: -1

Returns
A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.
Glib::PropertyProxy< bool > Gtk::Window::property_deletable ( )

Whether the window frame should have a close button.

Default value: true

Returns
A PropertyProxy that allows you to get or set the value of the property, or receive notification when the value of the property changes.
Glib::PropertyProxy_ReadOnly< bool > Gtk::Window::property_deletable ( ) const

Whether the window frame should have a close button.

Default value: true

Returns
A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.
Glib::PropertyProxy< bool > Gtk::Window::property_destroy_with_parent ( )

If this window should be destroyed when the parent is destroyed.

Default value: false

Returns
A PropertyProxy that allows you to get or set the value of the property, or receive notification when the value of the property changes.
Glib::PropertyProxy_ReadOnly< bool > Gtk::Window::property_destroy_with_parent ( ) const

If this window should be destroyed when the parent is destroyed.

Default value: false

Returns
A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.
Glib::PropertyProxy< Glib::RefPtr<Gdk::Display> > Gtk::Window::property_display ( )

The display that will display this window.

Returns
A PropertyProxy that allows you to get or set the value of the property, or receive notification when the value of the property changes.
Glib::PropertyProxy_ReadOnly< Glib::RefPtr<Gdk::Display> > Gtk::Window::property_display ( ) const

The display that will display this window.

Returns
A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.
Glib::PropertyProxy< bool > Gtk::Window::property_focus_on_map ( )

Whether the window should receive the input focus when mapped.

Default value: true

Returns
A PropertyProxy that allows you to get or set the value of the property, or receive notification when the value of the property changes.
Glib::PropertyProxy_ReadOnly< bool > Gtk::Window::property_focus_on_map ( ) const

Whether the window should receive the input focus when mapped.

Default value: true

Returns
A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.
Glib::PropertyProxy< bool > Gtk::Window::property_focus_visible ( )

Whether 'focus rectangles' are currently visible in this window.

This property is maintained by GTK+ based on user input and should not be set by applications.

Default value: true

Returns
A PropertyProxy that allows you to get or set the value of the property, or receive notification when the value of the property changes.
Glib::PropertyProxy_ReadOnly< bool > Gtk::Window::property_focus_visible ( ) const

Whether 'focus rectangles' are currently visible in this window.

This property is maintained by GTK+ based on user input and should not be set by applications.

Default value: true

Returns
A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.
Glib::PropertyProxy< bool > Gtk::Window::property_hide_on_close ( )

If this window should be hidden when the user clicks the close button.

Default value: false

Returns
A PropertyProxy that allows you to get or set the value of the property, or receive notification when the value of the property changes.
Glib::PropertyProxy_ReadOnly< bool > Gtk::Window::property_hide_on_close ( ) const

If this window should be hidden when the user clicks the close button.

Default value: false

Returns
A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.
Glib::PropertyProxy< Glib::ustring > Gtk::Window::property_icon_name ( )

The :icon-name property specifies the name of the themed icon to use as the window icon.

See Gtk::IconTheme for more details.

Default value: ""

Returns
A PropertyProxy that allows you to get or set the value of the property, or receive notification when the value of the property changes.
Glib::PropertyProxy_ReadOnly< Glib::ustring > Gtk::Window::property_icon_name ( ) const

The :icon-name property specifies the name of the themed icon to use as the window icon.

See Gtk::IconTheme for more details.

Default value: ""

Returns
A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.
Glib::PropertyProxy_ReadOnly< bool > Gtk::Window::property_is_active ( ) const

Whether the toplevel is the current active window.

Default value: false

Returns
A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.
Glib::PropertyProxy_ReadOnly< bool > Gtk::Window::property_is_maximized ( ) const

Whether the window is maximized.

Default value: false

Returns
A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.
Glib::PropertyProxy< bool > Gtk::Window::property_mnemonics_visible ( )

Whether mnemonics are currently visible in this window.

This property is maintained by GTK+ based on user input, and should not be set by applications.

Default value: false

Returns
A PropertyProxy that allows you to get or set the value of the property, or receive notification when the value of the property changes.
Glib::PropertyProxy_ReadOnly< bool > Gtk::Window::property_mnemonics_visible ( ) const

Whether mnemonics are currently visible in this window.

This property is maintained by GTK+ based on user input, and should not be set by applications.

Default value: false

Returns
A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.
Glib::PropertyProxy< bool > Gtk::Window::property_modal ( )

If true, the window is modal (other windows are not usable while this one is up).

Default value: false

Returns
A PropertyProxy that allows you to get or set the value of the property, or receive notification when the value of the property changes.
Glib::PropertyProxy_ReadOnly< bool > Gtk::Window::property_modal ( ) const

If true, the window is modal (other windows are not usable while this one is up).

Default value: false

Returns
A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.
Glib::PropertyProxy< bool > Gtk::Window::property_resizable ( )

If true, users can resize the window.

Default value: true

Returns
A PropertyProxy that allows you to get or set the value of the property, or receive notification when the value of the property changes.
Glib::PropertyProxy_ReadOnly< bool > Gtk::Window::property_resizable ( ) const

If true, users can resize the window.

Default value: true

Returns
A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.
Glib::PropertyProxy_WriteOnly< Glib::ustring > Gtk::Window::property_startup_id ( )

The :startup-id is a write-only property for setting window's startup notification identifier.

See Gtk::Window::set_startup_id() for more details.

Default value: ""

Returns
A PropertyProxy_WriteOnly that allows you to set the value of the property, or receive notification when the value of the property changes.
Glib::PropertyProxy< Glib::ustring > Gtk::Window::property_title ( )

The title of the window.

Default value: ""

Returns
A PropertyProxy that allows you to get or set the value of the property, or receive notification when the value of the property changes.
Glib::PropertyProxy_ReadOnly< Glib::ustring > Gtk::Window::property_title ( ) const

The title of the window.

Default value: ""

Returns
A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.
Glib::PropertyProxy< Window* > Gtk::Window::property_transient_for ( )

The transient parent of the window.

See Gtk::Window::set_transient_for() for more details about transient windows.

Returns
A PropertyProxy that allows you to get or set the value of the property, or receive notification when the value of the property changes.
Glib::PropertyProxy_ReadOnly< Window* > Gtk::Window::property_transient_for ( ) const

The transient parent of the window.

See Gtk::Window::set_transient_for() for more details about transient windows.

Returns
A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.
Glib::PropertyProxy_ReadOnly< WindowType > Gtk::Window::property_type ( ) const

The type of the window.

Default value: Gtk::WindowType::TOPLEVEL

Returns
A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.
Glib::PropertyProxy< Gdk::Surface::TypeHint > Gtk::Window::property_type_hint ( )

Hint to help the desktop environment understand what kind of window this is and how to treat it.

Default value: Gdk::Surface::TypeHint::NORMAL

Returns
A PropertyProxy that allows you to get or set the value of the property, or receive notification when the value of the property changes.
Glib::PropertyProxy_ReadOnly< Gdk::Surface::TypeHint > Gtk::Window::property_type_hint ( ) const

Hint to help the desktop environment understand what kind of window this is and how to treat it.

Default value: Gdk::Surface::TypeHint::NORMAL

Returns
A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.
void Gtk::Window::raise ( )

Brings the window to the front.

This is just a more obvious convenience wrapper for get_surface()->raise().

void Gtk::Window::remove_accel_group ( const Glib::RefPtr< AccelGroup >&  accel_group)

Reverses the effects of add_accel_group().

Parameters
accel_groupA Gtk::AccelGroup.
void Gtk::Window::remove_mnemonic ( guint  keyval,
Widget target 
)

Removes a mnemonic from this window.

Parameters
keyvalThe mnemonic.
targetThe widget that gets activated by the mnemonic.
void Gtk::Window::resize ( int  width,
int  height 
)

Resizes the window as if the user had done so, obeying geometry constraints.

The default geometry constraint is that windows may not be smaller than their size request; to override this constraint, call Gtk::Widget::set_size_request() to set the window's request to a smaller value.

If resize() is called before showing a window for the first time, it overrides any default size set with set_default_size().

Windows may not be resized smaller than 1 by 1 pixels.

When using client side decorations, GTK+ will do its best to adjust the given size so that the resulting window size matches the requested size without the title bar, borders and shadows added for the client side decorations, but there is no guarantee that the result will be totally accurate because these widgets added for client side decorations depend on the theme and may not be realized or visible at the time resize() is issued.

If the GtkWindow has a titlebar widget (see set_titlebar()), then typically, resize() will compensate for the height of the titlebar widget only if the height is known when the resulting GtkWindow configuration is issued. For example, if new widgets are added after the GtkWindow configuration and cause the titlebar widget to grow in height, this will result in a window content smaller that specified by resize() and not a larger window.

Parameters
widthWidth in pixels to resize the window to.
heightHeight in pixels to resize the window to.
void Gtk::Window::set_accept_focus ( bool  setting = true)

Windows may set a hint asking the desktop environment not to receive the input focus.

This function sets this hint.

Parameters
settingtrue to let this window receive input focus.
void Gtk::Window::set_application ( const Glib::RefPtr< Application >&  application)

Sets the Gtk::Application associated with the window.

The application will be kept alive for at least as long as it has any windows associated with it. (See Gio::Application::hold() for a way to keep it alive without windows.)

Normally, the connection between the application and the window will remain until the window is closed (hidden), but you can explicitly remove it by calling unset_application().

This is equivalent to calling Gtk::Application::remove_window() and/or Gtk::Application::add_window() on the old/new applications as relevant.

Parameters
applicationA Gtk::Application.
void Gtk::Window::set_attached_to ( Widget attach_widget)

Marks window as attached to attach_widget.

This creates a logical binding between the window and the widget it belongs to, which is used by GTK+ to propagate information such as styling or accessibility to window as if it was a children of attach_widget.

Examples of places where specifying this relation is useful are for instance a Gtk::Menu created by a Gtk::ComboBox, a completion popup window created by Gtk::Entry or a typeahead search entry created by Gtk::TreeView.

Note that this function should not be confused with set_transient_for(), which specifies a window manager relation between two toplevels instead.

Passing nullptr for attach_widget detaches the window.

Parameters
attach_widgetA Gtk::Widget, or nullptr.
static void Gtk::Window::set_auto_startup_notification ( bool  setting = true)
static

By default, after showing the first Gtk::Window, GTK+ calls gdk_notify_startup_complete().

Call this function to disable the automatic startup notification. You might do this if your first window is a splash screen, and you want to delay notification until after your real main window has been shown, for example.

In that example, you would disable startup notification temporarily, show your splash screen, then re-enable it so that showing the main window would automatically result in notification.

Parameters
settingtrue to automatically do startup notification.
void Gtk::Window::set_decorated ( bool  setting = true)

By default, windows are decorated with a title bar, resize controls, etc.

Some [window managers][gtk-X11-arch] allow GTK+ to disable these decorations, creating a borderless window. If you set the decorated property to false using this function, GTK+ will do its best to convince the window manager not to decorate the window. Depending on the system, this function may not have any effect when called on a window that is already visible, so you should call it before calling Gtk::Widget::show().

On Windows, this function always works, since there’s no window manager policy involved.

Parameters
settingtrue to decorate the window.
static void Gtk::Window::set_default_icon_name ( const Glib::ustring name)
static

Sets an icon to be used as fallback for windows that haven't had gtk_window_set_icon_list() called on them from a named themed icon, see set_icon_name().

Parameters
nameThe name of the themed icon.
void Gtk::Window::set_default_size ( int  width,
int  height 
)

Sets the default size of a window.

If the window’s “natural” size (its size request) is larger than the default, the default will be ignored.

Unlike Gtk::Widget::set_size_request(), which sets a size request for a widget and thus would keep users from shrinking the window, this function only sets the initial size, just as if the user had resized the window themselves. Users can still shrink the window again as they normally would. Setting a default size of -1 means to use the “natural” default size (the size request of the window).

For some uses, resize() is a more appropriate function. resize() changes the current size of the window, rather than the size to be used on initial display. resize() always affects the window itself, not the geometry widget.

The default size of a window only affects the first time a window is shown; if a window is hidden and re-shown, it will remember the size it had prior to hiding, rather than using the default size.

Windows can’t actually be 0x0 in size, they must be at least 1x1, but passing 0 for width and height is OK, resulting in a 1x1 default size.

If you use this function to reestablish a previously saved window size, note that the appropriate size to save is the one returned by get_size(). Using the window allocation directly will not work in all circumstances and can lead to growing or shrinking windows.

Parameters
widthWidth in pixels, or -1 to unset the default width.
heightHeight in pixels, or -1 to unset the default height.
void Gtk::Window::set_default_widget ( Gtk::Widget default_widget)

The default widget is the widget that’s activated when the user presses Enter in a dialog (for example).

This function sets or unsets the default widget for a Gtk::Window.

Parameters
default_widgetWidget to be the default, or nullptr to unset the default widget for the toplevel.
void Gtk::Window::set_deletable ( bool  setting = true)

By default, windows have a close button in the window frame.

Some [window managers][gtk-X11-arch] allow GTK+ to disable this button. If you set the deletable property to false using this function, GTK+ will do its best to convince the window manager not to show a close button. Depending on the system, this function may not have any effect when called on a window that is already visible, so you should call it before calling Gtk::Widget::show().

On Windows, this function always works, since there’s no window manager policy involved.

Parameters
settingtrue to decorate the window as deletable.
void Gtk::Window::set_display ( const Glib::RefPtr< Gdk::Display >&  display)

Sets the Gdk::Display where the window is displayed; if the window is already mapped, it will be unmapped, and then remapped on the new display.

Parameters
displayA Gdk::Display.
void Gtk::Window::set_focus ( Gtk::Widget focus)

If focus is not the current focus widget, and is focusable, sets it as the focus widget for the window.

To set the focus to a particular widget in the toplevel, it is usually more convenient to use Gtk::Widget::grab_focus() instead of this function.

Parameters
focusWidget to be the new focus widget.
void Gtk::Window::set_focus_on_map ( bool  setting = true)

Windows may set a hint asking the desktop environment not to receive the input focus when the window is mapped.

This function sets this hint.

Parameters
settingtrue to let this window receive input focus on map.
void Gtk::Window::set_focus_visible ( bool  setting = true)

Sets the Gtk::Window::property_focus_visible() property.

Parameters
settingThe new value.
void Gtk::Window::set_hide_on_close ( bool  setting = true)

If setting is true, then clicking the close button on the window will not destroy it, but only hide it.

Parameters
settingWhether to hide the window when it is closed.
void Gtk::Window::set_icon_name ( const Glib::ustring name)

Sets the icon for the window from a named themed icon.

See the docs for Gtk::IconTheme for more details. On some platforms, the window icon is not used at all.

Note that this has nothing to do with the WM_ICON_NAME property which is mentioned in the ICCCM.

Since gtkmm 2.18:
Parameters
nameThe name of the themed icon.
void Gtk::Window::set_keep_above ( bool  setting = true)

Asks to keep window above, so that it stays on top.

Note that you shouldn’t assume the window is definitely above afterward, because other entities (e.g. the user or [window manager][gtk-X11-arch]) could not keep it above, and not all window managers support keeping windows above. But normally the window will end kept above. Just don’t write code that crashes if not.

It’s permitted to call this function before showing a window, in which case the window will be kept above when it appears onscreen initially.

You can track iconification via the Gdk::Surface::property_state() property

Note that, according to the Extended Window Manager Hints Specification, the above state is mainly meant for user preferences and should not be used by applications e.g. for drawing attention to their dialogs.

Parameters
settingWhether to keep window above other windows.
void Gtk::Window::set_keep_below ( bool  setting = true)

Asks to keep window below, so that it stays in bottom.

Note that you shouldn’t assume the window is definitely below afterward, because other entities (e.g. the user or [window manager][gtk-X11-arch]) could not keep it below, and not all window managers support putting windows below. But normally the window will be kept below. Just don’t write code that crashes if not.

It’s permitted to call this function before showing a window, in which case the window will be kept below when it appears onscreen initially.

You can track iconification via the Gdk::Surface::property_state() property

Note that, according to the Extended Window Manager Hints Specification, the above state is mainly meant for user preferences and should not be used by applications e.g. for drawing attention to their dialogs.

Parameters
settingWhether to keep window below other windows.
void Gtk::Window::set_manage ( )
override

Overriden to warn that it doesn't make sense to use Gtk::manage() on this class because it has no parent container.

void Gtk::Window::set_mnemonic_modifier ( Gdk::ModifierType  modifier)

Sets the mnemonic modifier for this window.

Parameters
modifierThe modifier mask used to activate mnemonics on this window.
void Gtk::Window::set_mnemonics_visible ( bool  setting = true)

Sets the Gtk::Window::property_mnemonics_visible() property.

Parameters
settingThe new value.
void Gtk::Window::set_modal ( bool  modal = true)

Sets a window modal or non-modal.

Modal windows prevent interaction with other windows in the same application. To keep modal dialogs on top of main application windows, use set_transient_for() to make the dialog transient for the parent; most [window managers][gtk-X11-arch] will then disallow lowering the dialog below the parent.

Parameters
modalWhether the window is modal.
void Gtk::Window::set_resizable ( bool  resizable = true)

Sets whether the user can resize a window.

Windows are user resizable by default.

Parameters
resizabletrue if the user can resize this window.
void Gtk::Window::set_startup_id ( const Glib::ustring startup_id)

Startup notification identifiers are used by desktop environment to track application startup, to provide user feedback and other features.

This function changes the corresponding property on the underlying GdkSurface. Normally, startup identifier is managed automatically and you should only use this function in special cases like transferring focus from other processes. You should use this function before calling present() or any equivalent function generating a window map event.

This function is only useful on X11, not with other GTK+ targets.

Parameters
startup_idA string with startup-notification identifier.
void Gtk::Window::set_title ( const Glib::ustring title)

Sets the title of the Gtk::Window.

The title of a window will be displayed in its title bar; on the X Window System, the title bar is rendered by the [window manager][gtk-X11-arch], so exactly how the title appears to users may vary according to a user’s exact configuration. The title should help a user distinguish this window from other windows they may have open. A good title might include the application name and current document filename, for example.

Parameters
titleTitle of the window.
void Gtk::Window::set_titlebar ( Widget titlebar)

Sets a custom titlebar for window.

A typical widget used here is Gtk::HeaderBar, as it provides various features expected of a titlebar while allowing the addition of child widgets to it.

If you set a custom titlebar, GTK+ will do its best to convince the window manager not to put its own titlebar on the window. Depending on the system, this function may not work for a window that is already visible, so you set the titlebar before calling Gtk::Widget::show().

Parameters
titlebarThe widget to use as titlebar.
void Gtk::Window::set_transient_for ( Window parent)

Dialog windows should be set transient for the main application window they were spawned from.

This allows [window managers][gtk-X11-arch] to e.g. keep the dialog on top of the main window, or center the dialog over the main window. Gtk::Dialog::new_with_buttons() and other convenience functions in GTK+ will sometimes call set_transient_for() on your behalf.

Passing nullptr for parent unsets the current transient window.

This function can also be used to attach a new Gtk::WindowType::POPUP to a Gtk::WindowType::TOPLEVEL parent already mapped on screen so that the Gtk::WindowType::POPUP will be positioned relative to the Gtk::WindowType::TOPLEVEL surface.

On Windows, this function puts the child window on top of the parent, much as the window manager would have done on X.

Parameters
parentParent window, or nullptr.
void Gtk::Window::set_type_hint ( Gdk::Surface::TypeHint  hint)

By setting the type hint for the window, you allow the window manager to decorate and handle the window in a way which is suitable to the function of the window in your application.

This function should be called before the window becomes visible.

Gtk::Dialog::new_with_buttons() and other convenience functions in GTK+ will sometimes call set_type_hint() on your behalf.

Parameters
hintThe window type.
void Gtk::Window::show_uri ( const Glib::ustring uri,
guint32  timestamp 
)

This is a convenience function for launching the default application to show the uri.

The uri must be of a form understood by GIO (i.e. you need to install gvfs to get support for uri schemes such as http:// or ftp://, as only local files are handled by GIO itself). Typical examples are

Ideally the timestamp is taken from the event triggering the gtk_show_uri_on_window() call. If timestamp is not known you can take GDK_CURRENT_TIME.

This is the recommended call to be used as it passes information necessary for sandbox helpers to parent their dialogs properly.

Since gtkmm 3.24:
Parameters
uriThe uri to show.
timestampA timestamp to prevent focus stealing.
Exceptions
Glib::Error
Glib::SignalProxy<bool()> Gtk::Window::signal_close_request ( )
Slot Prototype:
bool on_my_close_request()

Flags: Run Last

The signal_close_request() signal is emitted when the user clicks on the close button of the window.

Return: true to stop other handlers from being invoked for the signal

Glib::SignalProxy<void()> Gtk::Window::signal_keys_changed ( )
Slot Prototype:
void on_my_keys_changed()

Flags: Run First

The signal_keys_changed() signal gets emitted when the set of accelerators or mnemonics that are associated with window changes.

void Gtk::Window::stick ( )

Asks to stick window, which means that it will appear on all user desktops.

Note that you shouldn’t assume the window is definitely stuck afterward, because other entities (e.g. the user or [window manager][gtk-X11-arch] could unstick it again, and some window managers do not support sticking windows. But normally the window will end up stuck. Just don't write code that crashes if not.

It’s permitted to call this function before showing a window.

You can track result of this operation via the Gdk::Surface::property_state() property.

void Gtk::Window::unfullscreen ( )

Asks to toggle off the fullscreen state for window.

Note that you shouldn’t assume the window is definitely not full screen afterward, because other entities (e.g. the user or [window manager][gtk-X11-arch]) could fullscreen it again, and not all window managers honor requests to unfullscreen windows. But normally the window will end up restored to its normal state. Just don’t write code that crashes if not.

You can track iconification via the Gdk::Surface::property_state() property

void Gtk::Window::unmaximize ( )

Asks to unmaximize window.

Note that you shouldn’t assume the window is definitely unmaximized afterward, because other entities (e.g. the user or [window manager][gtk-X11-arch]) could maximize it again, and not all window managers honor requests to unmaximize. But normally the window will end up unmaximized. Just don’t write code that crashes if not.

You can track the result of this operation via the Gdk::Surface::property_state() property, or by listening to notifications on the Gtk::Window::property_is_maximized() property.

void Gtk::Window::unminimize ( )

Asks to unminimize the specified window.

Note that you shouldn’t assume the window is definitely unminimized afterward, because the windowing system might not support this functionality; other entities (e.g. the user or the [window manager][gtk-X11-arch]) could minimize it again, or there may not be a window manager in which case minimization isn’t possible, etc.

You can track result of this operation via the Gdk::Surface::property_state() property.

void Gtk::Window::unset_application ( )

Unsets the Application associated with the window.

This could cause the application to exit if it is the application's last window.

void Gtk::Window::unset_attached_to ( )

Unsets the attached-to widget.

See also
set_attached_to().
Since gtkmm 3.4:
void Gtk::Window::unset_default_widget ( )
void Gtk::Window::unset_focus ( )
void Gtk::Window::unset_titlebar ( )

Unsets the titlebar.

See also
set_titlebar()
void Gtk::Window::unset_transient_for ( )

Unsets the current transient window.

See also
set_transient_for().
Since gtkmm 2.20:
void Gtk::Window::unstick ( )

Asks to unstick window, which means that it will appear on only one of the user’s desktops.

Note that you shouldn’t assume the window is definitely unstuck afterward, because other entities (e.g. the user or [window manager][gtk-X11-arch]) could stick it again. But normally the window will end up stuck. Just don’t write code that crashes if not.

You can track result of this operation via the Gdk::Surface::property_state() property.

Friends And Related Function Documentation

Gtk::Window* wrap ( GtkWindow *  object,
bool  take_copy = false 
)
related

A Glib::wrap() method for this object.

Parameters
objectThe C instance.
take_copyFalse if the result should take ownership of the C instance. True if it should take a new copy or ref.
Returns
A C++ instance that wraps this C instance.