gtkmm 3.24.7
Public Member Functions | Static Public Member Functions | Protected Member Functions | Related Functions | List of all members
Gtk::Window Class Reference

Toplevel Window. More...

#include <gtkmm/window.h>

Inheritance diagram for Gtk::Window:
Inheritance graph
[legend]

Public Member Functions

 Window (Window && src) noexcept
 
Windowoperator= (Window && src) noexcept
 
 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 (WindowType type=WINDOW_TOPLEVEL)
 
Glib::PropertyProxy_ReadOnly< WindowTypeproperty_type () const
 The type of the window. More...
 
Glib::PropertyProxy< Glib::ustring > property_title ()
 The title of the window. More...
 
Glib::PropertyProxy_ReadOnly< Glib::ustring > property_title () const
 The title of the window. More...
 
Glib::PropertyProxy_WriteOnly< Glib::ustring > property_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< WindowPositionproperty_window_position ()
 The initial position of the window. More...
 
Glib::PropertyProxy_ReadOnly< WindowPositionproperty_window_position () const
 The initial position of the window. 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_titlebar_when_maximized ()
 Whether the titlebar should be hidden during maximization. More...
 
Glib::PropertyProxy_ReadOnly< bool > property_hide_titlebar_when_maximized () const
 Whether the titlebar should be hidden during maximization. More...
 
Glib::PropertyProxy< Glib::RefPtr< Gdk::Pixbuf > > property_icon ()
 Icon for this window. More...
 
Glib::PropertyProxy_ReadOnly< Glib::RefPtr< Gdk::Pixbuf > > property_icon () const
 Icon for this window. 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::ustring > property_icon_name ()
 The :icon-name property specifies the name of the themed icon to use as the window icon. More...
 
Glib::PropertyProxy_ReadOnly< Glib::ustring > property_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::Screen > > property_screen ()
 The screen where this window will be displayed. More...
 
Glib::PropertyProxy_ReadOnly< Glib::RefPtr< Gdk::Screen > > property_screen () const
 The screen where this window will be displayed. More...
 
Glib::PropertyProxy_ReadOnly< bool > property_is_active () const
 Whether the toplevel is the current active window. More...
 
Glib::PropertyProxy_ReadOnly< bool > property_has_toplevel_focus () const
 Whether the input focus is within this GtkWindow. More...
 
Glib::PropertyProxy< GdkWindowTypeHint > property_type_hint ()
 Hint to help the desktop environment understand what kind of window this is and how to treat it. More...
 
Glib::PropertyProxy_ReadOnly< GdkWindowTypeHint > property_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_skip_taskbar_hint ()
 true if the window should not be in the task bar. More...
 
Glib::PropertyProxy_ReadOnly< bool > property_skip_taskbar_hint () const
 true if the window should not be in the task bar. More...
 
Glib::PropertyProxy< bool > property_skip_pager_hint ()
 true if the window should not be in the pager. More...
 
Glib::PropertyProxy_ReadOnly< bool > property_skip_pager_hint () const
 true if the window should not be in the pager. More...
 
Glib::PropertyProxy< Glib::ustring > property_role ()
 Unique identifier for the window to be used when restoring a session. More...
 
Glib::PropertyProxy_ReadOnly< Glib::ustring > property_role () const
 Unique identifier for the window to be used when restoring a session. 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< Gdk::Gravityproperty_gravity ()
 The window gravity of the window. More...
 
Glib::PropertyProxy_ReadOnly< Gdk::Gravityproperty_gravity () const
 The window gravity of the window. 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< double > property_opacity ()
 The opacity of the window, from 0 to 1. More...
 
Glib::PropertyProxy_ReadOnly< double > property_opacity () const
 The opacity of the window, from 0 to 1. More...
 
Glib::PropertyProxy< bool > property_has_resize_grip ()
 Whether the window has a corner resize grip. More...
 
Glib::PropertyProxy_ReadOnly< bool > property_has_resize_grip () const
 Whether the window has a corner resize grip. More...
 
Glib::PropertyProxy_ReadOnly< bool > property_resize_grip_visible () const
 Whether a corner resize grip is currently shown. More...
 
Glib::PropertyProxy< bool > property_urgency_hint ()
 true if the window should be brought to the user's attention. More...
 
Glib::PropertyProxy_ReadOnly< bool > property_urgency_hint () const
 true if the window should be brought to the user's attention. 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::SignalProxy< void, Widget * > signal_set_focus ()
 
Glib::SignalProxy< void > signal_keys_changed ()
 
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_wmclass (const Glib::ustring & wmclass_name, const Glib::ustring & wmclass_class)
 Don’t use this function. More...
 
void set_role (const Glib::ustring & role)
 This function is only useful on X11, not with other GTK+ targets. 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...
 
Glib::ustring get_role () const
 Returns the role of the window. 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_position (WindowPosition position)
 Sets a position constraint for this window. More...
 
bool activate_focus ()
 Activates the current focused widget within the window. 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 (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 ()
 
Widgetget_default_widget ()
 Returns the default widget for window. More...
 
const Widgetget_default_widget () const
 Returns the default widget for window. More...
 
bool activate_default ()
 Activates the default widget for the window, unless the current focused widget has been configured to receive the default action (see Gtk::Widget::set_receives_default()), in which case the focused widget is activated. 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_opacity (double opacity)
 Request the windowing system to make window partially transparent, with opacity 0 being fully transparent and 1 fully opaque. More...
 
double get_opacity () const
 Fetches the requested opacity for this window. More...
 
void set_type_hint (Gdk::WindowTypeHint 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::WindowTypeHint get_type_hint () const
 Gets the type hint for this window. More...
 
void set_skip_taskbar_hint (bool setting=true)
 Windows may set a hint asking the desktop environment not to display the window in the task bar. More...
 
bool get_skip_taskbar_hint () const
 Gets the value set by set_skip_taskbar_hint() More...
 
void set_skip_pager_hint (bool setting=true)
 Windows may set a hint asking the desktop environment not to display the window in the pager. More...
 
bool get_skip_pager_hint () const
 Gets the value set by set_skip_pager_hint(). More...
 
void set_urgency_hint (bool setting=true)
 Windows may set a hint asking the desktop environment to draw the users attention to the window. More...
 
bool get_urgency_hint () const
 Gets the value set by set_urgency_hint() 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_titlebar_when_maximized (bool setting=true)
 If setting is true, then window will request that it’s titlebar should be hidden when maximized. More...
 
bool get_hide_titlebar_when_maximized () const
 Returns whether the window has requested to have its titlebar hidden when maximized. 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_gravity (Gdk::Gravity gravity)
 Window gravity defines the meaning of coordinates passed to move(). More...
 
Gdk::Gravity get_gravity () const
 Gets the value set by set_gravity(). More...
 
void set_geometry_hints (Widget & geometry_widget, const Gdk::Geometry & geometry, Gdk::WindowHints geom_mask)
 This function sets up hints about how a window can be resized by the user. More...
 
void set_screen (const Glib::RefPtr< Gdk::Screen > & screen)
 Sets the Gdk::Screen where the window is displayed; if the window is already mapped, it will be unmapped, and then remapped on the new screen. More...
 
Glib::RefPtr< Gdk::Screenget_screen ()
 Returns the Gdk::Screen associated with window. More...
 
Glib::RefPtr< const Gdk::Screenget_screen () const
 Returns the Gdk::Screen associated with window. More...
 
bool is_active () const
 Returns whether the window is part of the current active toplevel. More...
 
bool has_toplevel_focus () const
 Returns whether the input focus is within this GtkWindow. 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...
 
std::vector< Glib::RefPtr< Gdk::Pixbuf > > get_icon_list ()
 Retrieves the list of icons set by set_icon_list(). More...
 
std::vector< Glib::RefPtr< const Gdk::Pixbuf > > get_icon_list () const
 Retrieves the list of icons set by set_icon_list(). More...
 
void set_icon_list (const std::vector< Glib::RefPtr< Gdk::Pixbuf > > & list)
 Sets up the icon representing a Gtk::Window. More...
 
void set_icon (const Glib::RefPtr< Gdk::Pixbuf > & icon)
 Sets up the icon representing a Gtk::Window. More...
 
void set_icon_name (const Glib::ustring & name)
 Sets the icon for the window from a named themed icon. More...
 
bool set_icon_from_file (const std::string & filename)
 Sets the icon for the window. More...
 
Glib::RefPtr< Gdk::Pixbufget_icon ()
 Gets the value set by set_icon() (or if you've called set_icon_list(), gets the first icon in the icon list). More...
 
Glib::RefPtr< const Gdk::Pixbufget_icon () const
 Gets the value set by set_icon() (or if you've called set_icon_list(), gets the first icon in the icon list). 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 in response to a user interaction. More...
 
void iconify ()
 Asks to iconify (i.e. minimize) the specified window. More...
 
void deiconify ()
 Asks to deiconify (i.e. 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::Screen > & screen, int 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::WindowEdge edge, int button, int root_x, int root_y, guint32 timestamp)
 Starts resizing a window. More...
 
void begin_move_drag (int button, int root_x, int root_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...
 
void move (int x, int y)
 Asks the [window manager][gtk-X11-arch] to move window to the given position. More...
 
void get_position (int & root_x, int & root_y) const
 This function returns the position you need to pass to move() to keep window in its current position. More...
 
bool parse_geometry (const Glib::ustring & geometry)
 Parses a standard X Window System geometry string - see the manual page for X (type “man X”) for details on this. More...
 
void set_default_geometry (int width, int height)
 Like set_default_size(), but width and height are interpreted in terms of the base size and increment set with gtk_window_set_geometry_hints. More...
 
void resize_to_geometry (int width, int height)
 Like resize(), but width and height are interpreted in terms of the base size and increment set with gtk_window_set_geometry_hints. 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...
 
void reshow_with_initial_size ()
 Hides window, then reshows it, resetting the default size and position 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_has_resize_grip (bool value=true)
 Sets whether window has a corner resize grip. More...
 
bool get_has_resize_grip () const
 Determines whether the window may have a resize grip. More...
 
bool get_resize_grip_is_visible () const
 Determines whether a resize grip is visible for the specified window. More...
 
bool get_resize_grip_area (Gdk::Rectangle & rect) const
 If a window has a resize grip, this will retrieve the grip position, width and height into the specified Gdk::Rectangle. 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...
 
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...
 
Glib::RefPtr< AccelGroupget_accel_group ()
 Returns a default accel group for this window. More...
 
std::vector< Glib::RefPtr< AccelGroup > > get_accel_groups ()
 Gets a vector containing each Gtk::AccelGroup associated with the window. More...
 
virtual 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, double x_align=0.5, double y_align=0.5)
 Add a Label object. More...
 
void add_label (const Glib::ustring & label, bool mnemonic, Align x_align, Align y_align=ALIGN_CENTER)
 Add a Label object. More...
 
void add_pixlabel (const std::string & pixfile, const Glib::ustring & label, double x_align=0.5, double y_align=0.5)
 Add Image and Label objects. More...
 
void add_pixlabel (const std::string & pixfile, const Glib::ustring & label, Align x_align, 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 set_border_width (guint border_width)
 Sets the border width of the container. More...
 
guint get_border_width () const
 Retrieves the border width of the container. More...
 
virtual void add (Widget & widget)
 Adds widget to container. More...
 
void remove (Widget & widget)
 Removes widget from the container. More...
 
void set_resize_mode (ResizeMode resize_mode)
 Sets the resize mode for the container. More...
 
ResizeMode get_resize_mode () const
 Returns the resize mode for the container. More...
 
void check_resize ()
 Request that contained widgets check their size. 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 propagate_draw (Widget & child, const ::Cairo::RefPtr< ::Cairo::Context > & cr)
 When a container receives a call to the draw function, it must send synthetic Gtk::Widget::signal_draw() calls to all children that don’t have their own Gdk::Windows. More...
 
void set_focus_chain (const std::vector< Widget * > & focusable_widgets)
 Sets a focus chain, overriding the one computed automatically by GTK+. More...
 
bool has_focus_chain () const
 
std::vector< Widget * > get_focus_chain ()
 
std::vector< const Widget * > get_focus_chain () const
 
void unset_focus_chain ()
 Removes a focus chain explicitly set with set_focus_chain(). More...
 
void set_reallocate_redraws (bool needs_redraws=true)
 Sets the reallocate_redraws flag of the container to the given value. More...
 
void set_focus_child (Widget & widget)
 Sets the focus on a child. More...
 
Widgetget_focus_child ()
 Returns the current focus child widget inside container. More...
 
const Widgetget_focus_child () const
 Returns the current focus child widget inside container. 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...
 
void resize_children ()
 
GType child_type () const
 Returns the type of the children supported by the container. More...
 
WidgetPath get_path_for_child (const Widget & child) const
 Returns a newly created widget path representing all the widget hierarchy from the toplevel down to and including child. More...
 
Glib::SignalProxy< void, Widget * > signal_add ()
 
Glib::SignalProxy< void, Widget * > signal_remove ()
 
Glib::SignalProxy< void > signal_check_resize ()
 
Glib::SignalProxy< void, Widget * > signal_set_focus_child ()
 
void show_all_children (bool recursive=true)
 
- 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...
 
void show ()
 Flags a widget to be displayed. More...
 
void show_now ()
 Shows a widget. More...
 
void hide ()
 Reverses the effects of show(), causing the widget to be hidden (invisible to the user). More...
 
void show_all ()
 Recursively shows a widget, and any child widgets (if the widget is a container). More...
 
void queue_draw ()
 Equivalent to calling queue_draw_area() for the entire area of a widget. More...
 
void queue_draw_area (int x, int y, int width, int height)
 Convenience function that calls queue_draw_region() on the region created from the given coordinates. More...
 
void queue_draw_region (const ::Cairo::RefPtr< const ::Cairo::Region > & region)
 Invalidates the area of widget defined by region by calling gdk_window_invalidate_region() on the widget’s window and all its child windows. 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)
 This function is only used by Gtk::Container subclasses, to assign a size and position to their child widgets. More...
 
void size_allocate (const Allocation & allocation, int baseline)
 This function is only used by Gtk::Container subclasses, to assign a size, position and (optionally) baseline to their child widgets. More...
 
SizeRequestMode get_request_mode () const
 Gets whether the widget prefers a height-for-width layout or a width-for-height layout. More...
 
void get_preferred_width (int & minimum_width, int & natural_width) const
 Retrieves a widget’s initial minimum and natural width. More...
 
void get_preferred_height_for_width (int width, int & minimum_height, int & natural_height) const
 Retrieves a widget’s minimum and natural height if it would be given the specified width. More...
 
void get_preferred_height_for_width (int width, int & minimum_height, int & natural_height, int & minimum_baseline, int & natural_baseline) const
 Retrieves a widget’s minimum and natural height and the corresponding baselines if it would be given the specified width, or the default height if width is -1. More...
 
void get_preferred_height (int & minimum_height, int & natural_height) const
 Retrieves a widget’s initial minimum and natural height. More...
 
void get_preferred_width_for_height (int height, int & minimum_width, int & natural_width) const
 Retrieves a widget’s minimum and natural width if it would be given the specified height. 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 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 (GdkEvent * gdk_event)
 Rarely-used function. More...
 
int send_expose (GdkEvent * gdk_event)
 Very rarely-used function. More...
 
bool send_focus_change (GdkEvent * gdk_event)
 Sends the focus change gdk_event to widget. More...
 
bool activate ()
 For widgets that can be “activated” (buttons, menu items, etc.) this function activates them. More...
 
void reparent (Widget & new_parent)
 Moves a widget from one Gtk::Container to another, handling reference count issues to avoid destroying the widget. More...
 
bool intersect (const Gdk::Rectangle & area) const
 
bool intersect (const Gdk::Rectangle & area, Gdk::Rectangle & intersection) const
 Computes the intersection of a widget’s area and area, storing the intersection in intersection, and returns true if there was an intersection. More...
 
::Cairo::RefPtr< ::Cairo::Region > region_intersect (const ::Cairo::RefPtr< ::Cairo::Region > & region) const
 Computes the intersection of a widget’s area and region, returning the intersection. More...
 
void freeze_child_notify ()
 Stops emission of Gtk::Widget::signal_child_notify() signals on widget. More...
 
void child_notify (const Glib::ustring & child_property)
 Emits a Gtk::Widget::signal_child_notify() signal for the [child property][child-properties] child_property on widget. More...
 
void thaw_child_notify ()
 Reverts the effect of a previous call to freeze_child_notify(). 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...
 
void grab_focus ()
 Causes widget 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_default (bool can_default=true)
 Specifies whether widget can be a default widget. More...
 
bool get_can_default () const
 Determines whether widget can be a default widget. More...
 
bool has_default () const
 Determines whether widget is the current default widget within its toplevel. More...
 
void grab_default ()
 Causes widget to become the default widget. 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 (StateType state)
 This function is for use in widget implementations. More...
 
StateType get_state () const
 Returns the widget’s state. 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_has_window () const
 Determines whether widget has a Gdk::Window of its own. More...
 
bool get_is_toplevel () const
 Determines whether widget is a toplevel widget. 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_app_paintable (bool app_paintable=true)
 Sets whether the application intends to draw on the widget in an Gtk::Widget::signal_draw() handler. More...
 
bool get_app_paintable () const
 Determines whether the application intends to draw on the widget in an Gtk::Widget::signal_draw() handler. More...
 
void set_double_buffered (bool double_buffered=true)
 Widgets are double buffered by default; you can use this function to turn off the buffering. More...
 
bool get_double_buffered () const
 Determines whether the widget is double buffered. More...
 
void set_redraw_on_allocate (bool redraw_on_allocate=true)
 Sets whether the entire widget is queued for drawing when its size allocation changes. 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...
 
Glib::RefPtr< Gdk::Windowget_window ()
 Returns the widget’s window if it is realized, nullptr otherwise. More...
 
Glib::RefPtr< const Gdk::Windowget_window () const
 Returns the widget’s window if it is realized, nullptr otherwise. More...
 
void register_window (const Glib::RefPtr< Gdk::Window > & window)
 Registers a Gdk::Window with the widget and sets it up so that the widget receives events for it. More...
 
void unregister_window (const Glib::RefPtr< Gdk::Window > & window)
 Unregisters a Gdk::Window from the widget that was previously set up with register_window(). 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...
 
void get_allocated_size (Allocation & allocation, int & baseline) const
 Retrieves the widget’s allocated size. More...
 
Allocation get_allocation () const
 Retrieves the widget's location. More...
 
void set_allocation (const Allocation & allocation)
 Sets the widget’s allocation. More...
 
void set_clip (const Allocation & clip)
 Sets the widget’s clip. More...
 
Allocation get_clip () const
 Retrieves the widget’s clip area. More...
 
Containerget_parent ()
 Returns the parent container of widget. More...
 
const Containerget_parent () const
 Returns the parent container of widget. More...
 
Glib::RefPtr< Gdk::Windowget_parent_window ()
 Gets widget’s parent window, or nullptr if it does not have one. More...
 
Glib::RefPtr< const Gdk::Windowget_parent_window () const
 Gets widget’s parent window, or nullptr if it does not have one. More...
 
void set_parent_window (const Glib::RefPtr< const Gdk::Window > & parent_window)
 Sets a non default parent window for widget. 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, and Gtk::Container::set_focus_chain() to change the focus tab order. 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_events (Gdk::EventMask events)
 Sets the event mask (see Gdk::EventMask) for a widget. More...
 
void add_events (Gdk::EventMask events)
 Adds the events in the bitfield events to the event mask for widget. More...
 
void set_device_events (const Glib::RefPtr< const Gdk::Device > & device, Gdk::EventMask events)
 Sets the device event mask (see Gdk::EventMask) for a widget. More...
 
void add_device_events (const Glib::RefPtr< const Gdk::Device > & device, Gdk::EventMask events)
 Adds the device events in the bitfield events to the event mask for widget. 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_device_enabled (const Glib::RefPtr< Gdk::Device > & device, bool enabled=true)
 Enables or disables a Gdk::Device to interact with widget and all its children. More...
 
bool get_device_enabled (const Glib::RefPtr< const Gdk::Device > & device) const
 Returns whether device can interact with widget and its children. More...
 
Containerget_toplevel ()
 This function returns the topmost widget in the container hierarchy widget is a part of. More...
 
const Containerget_toplevel () const
 This function returns the topmost widget in the container hierarchy widget is a part of. 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...
 
Glib::RefPtr< Gdk::Visualget_visual ()
 Gets the visual that will be used to render widget. More...
 
Glib::RefPtr< Gdk::Screenget_screen ()
 Get the Gdk::Screen from the toplevel window associated with this widget. More...
 
Glib::RefPtr< const Gdk::Screenget_screen () const
 Get the Gdk::Screen from the toplevel window associated with this widget. More...
 
bool has_screen () const
 Checks whether there is a Gdk::Screen is associated with this widget. 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< Gdk::Windowget_root_window ()
 Get the root window where this widget is located. More...
 
Glib::RefPtr< const Gdk::Windowget_root_window () const
 Get the root window where this widget is located. More...
 
Glib::RefPtr< Settingsget_settings ()
 Gets the settings object holding the settings used for this widget. More...
 
Glib::RefPtr< Clipboardget_clipboard (const Glib::ustring & selection)
 Returns the clipboard object for the given selection to be used with widget. More...
 
Glib::RefPtr< const Clipboardget_clipboard (const Glib::ustring & selection) const
 Returns the clipboard object for the given selection to be used with widget. 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...
 
void queue_compute_expand ()
 Mark widget as needing to recompute its expand flags. More...
 
bool compute_expand (Orientation orientation)
 Computes whether a container should give this widget extra space when possible. 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::Object > get_accessible ()
 Returns the accessible object that describes the widget to an assistive technology. More...
 
Glib::RefPtr< const Atk::Object > get_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...
 
Align get_valign_with_baseline () const
 Gets the value of the Gtk::Widget::property_valign() property, including Gtk::ALIGN_BASELINE. More...
 
void set_valign (Align align)
 Sets the vertical alignment of widget. More...
 
int get_margin_left () const
 Gets the value of the Gtk::Widget::property_margin_left() property. More...
 
void set_margin_left (int margin)
 Sets the left margin of widget. More...
 
int get_margin_right () const
 Gets the value of the Gtk::Widget::property_margin_right() property. More...
 
void set_margin_right (int margin)
 Sets the right margin 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...
 
Gdk::EventMask get_events () const
 Returns the event mask (see Gdk::EventMask) for the widget. More...
 
Gdk::EventMask get_device_events (const Glib::RefPtr< const Gdk::Device > & device) const
 Returns the events mask for the widget corresponding to an specific device. More...
 
void get_pointer (int & x, int & y) const
 Obtains the location of the mouse pointer in widget coordinates. 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...
 
void override_color (const Gdk::RGBA & color, StateFlags state=STATE_FLAG_NORMAL)
 Sets the color to use for a widget. More...
 
void unset_color (StateFlags state=STATE_FLAG_NORMAL)
 Undoes the effect of previous calls to override_color(). More...
 
void override_background_color (const Gdk::RGBA & color, StateFlags state=STATE_FLAG_NORMAL)
 Sets the background color to use for a widget. More...
 
void unset_background_color (StateFlags state=STATE_FLAG_NORMAL)
 Undoes the effect of previous calls to override_background_color(). More...
 
void override_font (const Pango::FontDescription & font_desc)
 Sets the font to use for a widget. More...
 
void unset_font ()
 Undoes the effect of previous calls to override_font(). More...
 
void override_symbolic_color (const Glib::ustring & name, const Gdk::RGBA & color)
 Sets a symbolic color for a widget. More...
 
void unset_symbolic_color (const Glib::ustring & name)
 Undoes the effect of previous calls to override_symbolic_color(). More...
 
void override_cursor (const Gdk::RGBA & cursor, const Gdk::RGBA & secondary_cursor)
 Sets the cursor color to use in a widget, overriding the cursor-color and secondary-cursor-color style properties. More...
 
void unset_cursor ()
 Undoes the effect of previous calls to override_cursor(). More...
 
void reset_style ()
 Updates the style context of widget and all descendants by updating its widget path. More...
 
template<class PropertyType >
void get_style_property (const Glib::ustring & the_property_name, PropertyType & value) const
 Gets the value of a style property of widget. More...
 
Glib::RefPtr< Pango::Context > create_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::Context > get_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::Layout > create_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...
 
Glib::RefPtr< Gdk::Pixbufrender_icon_pixbuf (const StockID & stock_id, IconSize size)
 A convenience function that uses the theme engine and style settings for widget to look up stock_id and render it to a pixbuf. More...
 
void set_composite_name (const Glib::ustring & name)
 Sets a widgets composite name. More...
 
void unset_composite_name ()
 
Glib::ustring get_composite_name () const
 Obtains the composite name of a 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 shape_combine_region (const ::Cairo::RefPtr< const ::Cairo::Region > & region)
 Sets a shape for this widget’s GDK window. More...
 
void input_shape_combine_region (const ::Cairo::RefPtr< const ::Cairo::Region > & region)
 Sets an input shape for this widget’s GDK window. More...
 
WidgetPath get_path () const
 Returns the Gtk::WidgetPath representing widget, if the widget is not connected to a toplevel widget, a partial path will be created. 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...
 
void drag_get_data (const Glib::RefPtr< Gdk::DragContext > & context, const Glib::ustring & target, guint32 time)
 
void drag_highlight ()
 
void drag_unhighlight ()
 
void drag_dest_set (DestDefaults flags=DestDefaults(0), Gdk::DragAction actions=Gdk::DragAction(0))
 
void drag_dest_set (const std::vector< TargetEntry > & targets, DestDefaults flags=DEST_DEFAULT_ALL, Gdk::DragAction actions=Gdk::ACTION_COPY)
 
void drag_dest_set_proxy (const Glib::RefPtr< Gdk::Window > & proxy_window, Gdk::DragProtocol protocol, bool use_coordinates)
 Sets this widget as a proxy for drops to another window. More...
 
void drag_dest_unset ()
 Clears information about a drop destination set with gtk_drag_dest_set(). More...
 
Glib::ustring drag_dest_find_target (const Glib::RefPtr< Gdk::DragContext > & context, const Glib::RefPtr< TargetList > & target_list) const
 Looks for a match between context->targets and the dest_target_list, returning the first matching target, otherwise returning GDK_NONE. More...
 
Glib::ustring drag_dest_find_target (const Glib::RefPtr< Gdk::DragContext > & context) const
 
Glib::RefPtr< TargetListdrag_dest_get_target_list ()
 Returns the list of targets this widget can accept from drag-and-drop. More...
 
Glib::RefPtr< const TargetListdrag_dest_get_target_list () const
 Returns the list of targets this widget can accept from drag-and-drop. More...
 
void drag_dest_set_target_list (const Glib::RefPtr< TargetList > & target_list)
 Sets the target types that this widget can accept from drag-and-drop. More...
 
void drag_dest_add_text_targets ()
 Add the text targets supported by Gtk::SelectionData to the target list of the drag destination. More...
 
void drag_dest_add_image_targets ()
 Add the image targets supported by Gtk::SelectionData to the target list of the drag destination. More...
 
void drag_dest_add_uri_targets ()
 Add the URI targets supported by Gtk::SelectionData to the target list of the drag destination. More...
 
void drag_source_set (const std::vector< TargetEntry > & targets, Gdk::ModifierType start_button_mask=Gdk::MODIFIER_MASK, Gdk::DragAction actions=Gdk::ACTION_COPY)
 
void drag_source_unset ()
 Undoes the effects of gtk_drag_source_set(). More...
 
void drag_source_set_icon (const Glib::RefPtr< Gdk::Pixbuf > & pixbuf)
 Sets the icon that will be used for drags from a particular widget from a Gdk::Pixbuf. More...
 
void drag_source_set_icon (const StockID & stock_id)
 Sets the icon that will be used for drags from a particular source to a stock icon. More...
 
void drag_source_set_icon (const Glib::ustring & icon_name)
 Sets the icon that will be used for drags from a particular source to a themed icon. More...
 
void drag_source_add_text_targets ()
 Add the text targets supported by Gtk::SelectionData to the target list of the drag source. More...
 
void drag_source_add_uri_targets ()
 Add the URI targets supported by Gtk::SelectionData to the target list of the drag source. More...
 
void drag_source_add_image_targets ()
 Add the writable image targets supported by Gtk::SelectionData to the target list of the drag source. More...
 
Glib::RefPtr< Gdk::DragContextdrag_begin (const Glib::RefPtr< TargetList > & targets, Gdk::DragAction actions, int button, GdkEvent * gdk_event)
 
Glib::RefPtr< Gdk::DragContextdrag_begin (const Glib::RefPtr< TargetList > & targets, Gdk::DragAction actions, int button, GdkEvent * gdk_event, int x, int y)
 
bool drag_check_threshold (int start_x, int start_y, int current_x, int current_y)
 
void drag_set_as_icon (const Glib::RefPtr< Gdk::DragContext > & context, int hot_x, int hot_y)
 
void queue_resize_no_redraw ()
 This function works like queue_resize(), except that the widget is not invalidated. 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...
 
bool get_no_show_all () const
 Returns the current value of the Gtk::Widget::property_no_show_all() property, which determines whether calls to show_all() will affect this widget. More...
 
void set_no_show_all (bool no_show_all=true)
 Sets the Gtk::Widget::property_no_show_all() property, which determines whether calls to show_all() will affect this widget. More...
 
void set_parent (Widget & parent)
 This function is useful only when implementing subclasses of Gtk::Container. 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 draw_insertion_cursor (const ::Cairo::RefPtr< ::Cairo::Context > & cr, const Gdk::Rectangle & location, bool is_primary, TextDirection direction, bool draw_arrow=true)
 Draws a text caret on cr at location. More...
 
void set_tooltip_window (Window & custom_window)
 Replaces the default window used for displaying tooltips with custom_window. More...
 
Windowget_tooltip_window ()
 Returns the Gtk::Window of the current tooltip. 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...
 
int get_width () const
 
int get_height () const
 
bool is_composited () const
 Whether widget can rely on having its alpha channel drawn correctly. 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< Gtk::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...
 
Glib::RefPtr< Gio::ActionGroup > get_action_group (const Glib::ustring & prefix)
 Retrieves the Gio::ActionGroup that was registered using prefix. More...
 
Glib::RefPtr< const Gio::ActionGroup > get_action_group (const Glib::ustring & prefix) const
 Retrieves the Gio::ActionGroup that was registered using prefix. More...
 
std::vector< Glib::ustring > list_action_prefixes () const
 Retrieves a nullptr-terminated array of strings containing the prefixes of Gio::ActionGroup's available to 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::FontMap > get_font_map ()
 Gets the font map that has been set with set_font_map(). More...
 
Glib::RefPtr< const Pango::FontMap > get_font_map () const
 Gets the font map that has been set with set_font_map(). 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, Allocation & > signal_size_allocate ()
 
Glib::SignalProxy< void, Gtk::StateTypesignal_state_changed ()
 
Glib::SignalProxy< void, Gtk::StateFlagssignal_state_flags_changed ()
 
Glib::SignalProxy< void, Widget * > signal_parent_changed ()
 Informs objects that their parent changed. More...
 
Glib::SignalProxy< void, Widget * > signal_hierarchy_changed ()
 
Glib::SignalProxy< void > signal_style_updated ()
 
Glib::SignalProxy< void, TextDirectionsignal_direction_changed ()
 
Glib::SignalProxy< void, bool > signal_grab_notify ()
 
Glib::SignalProxy< void, GParamSpec * > signal_child_notify ()
 
Glib::SignalProxyDetailedAnyType< void, GParamSpec * > signal_child_notify (const Glib::ustring & child_property_name)
 
Glib::SignalProxy< bool, bool > signal_mnemonic_activate ()
 
Glib::SignalProxy< void > signal_grab_focus ()
 
Glib::SignalProxy< bool, DirectionTypesignal_focus ()
 
Glib::SignalProxy< bool, GdkEvent * > signal_event ()
 
Glib::SignalProxy< void, GdkEvent * > signal_event_after ()
 
Glib::SignalProxy< bool, GdkEventButton * > signal_button_press_event ()
 Event triggered by user pressing button. More...
 
Glib::SignalProxy< bool, GdkEventButton * > signal_button_release_event ()
 Event triggered by user releasing button. More...
 
Glib::SignalProxy< bool, GdkEventScroll * > signal_scroll_event ()
 
Glib::SignalProxy< bool, GdkEventMotion * > signal_motion_notify_event ()
 Event triggered by user moving pointer. More...
 
Glib::SignalProxy< bool, GdkEventAny * > signal_delete_event ()
 
Glib::SignalProxy< bool, const ::Cairo::RefPtr< ::Cairo::Context > & > signal_draw ()
 
Glib::SignalProxy< bool, GdkEventKey * > signal_key_press_event ()
 Event triggered by a key press will widget has focus. More...
 
Glib::SignalProxy< bool, GdkEventKey * > signal_key_release_event ()
 Event triggered by a key release will widget has focus. More...
 
Glib::SignalProxy< bool, GdkEventCrossing * > signal_enter_notify_event ()
 Event triggered by pointer entering widget area. More...
 
Glib::SignalProxy< bool, GdkEventCrossing * > signal_leave_notify_event ()
 Event triggered by pointer leaving widget area. More...
 
Glib::SignalProxy< bool, GdkEventConfigure * > signal_configure_event ()
 Event triggered by a window resizing. More...
 
Glib::SignalProxy< bool, GdkEventFocus * > signal_focus_in_event ()
 
Glib::SignalProxy< bool, GdkEventFocus * > signal_focus_out_event ()
 
Glib::SignalProxy< bool, GdkEventAny * > signal_map_event ()
 
Glib::SignalProxy< bool, GdkEventAny * > signal_unmap_event ()
 
Glib::SignalProxy< bool, GdkEventProperty * > signal_property_notify_event ()
 
Glib::SignalProxy< bool, GdkEventSelection * > signal_selection_clear_event ()
 
Glib::SignalProxy< bool, GdkEventSelection * > signal_selection_request_event ()
 
Glib::SignalProxy< bool, GdkEventSelection * > signal_selection_notify_event ()
 
Glib::SignalProxy< bool, GdkEventProximity * > signal_proximity_in_event ()
 
Glib::SignalProxy< bool, GdkEventProximity * > signal_proximity_out_event ()
 
Glib::SignalProxy< bool, GdkEventVisibility * > signal_visibility_notify_event ()
 
Glib::SignalProxy< bool, GdkEventWindowState * > signal_window_state_event ()
 
Glib::SignalProxy< void, SelectionData &, guint, guint > signal_selection_get ()
 
Glib::SignalProxy< void, const SelectionData &, guint > signal_selection_received ()
 
Glib::SignalProxy< void, const Glib::RefPtr< Gdk::DragContext > & > signal_drag_begin ()
 
Glib::SignalProxy< void, const Glib::RefPtr< Gdk::DragContext > & > signal_drag_end ()
 
Glib::SignalProxy< void, const Glib::RefPtr< Gdk::DragContext > &, SelectionData &, guint, guint > signal_drag_data_get ()
 
Glib::SignalProxy< void, const Glib::RefPtr< Gdk::DragContext > & > signal_drag_data_delete ()
 
Glib::SignalProxy< bool, const Glib::RefPtr< Gdk::DragContext > &, DragResultsignal_drag_failed ()
 
Glib::SignalProxy< void, const Glib::RefPtr< Gdk::DragContext > &, guint > signal_drag_leave ()
 
Glib::SignalProxy< bool, const Glib::RefPtr< Gdk::DragContext > &, int, int, guint > signal_drag_motion ()
 
Glib::SignalProxy< bool, const Glib::RefPtr< Gdk::DragContext > &, int, int, guint > signal_drag_drop ()
 
Glib::SignalProxy< void, const Glib::RefPtr< Gdk::DragContext > &, int, int, const SelectionData &, guint, guint > signal_drag_data_received ()
 
Glib::SignalProxy< void, const Glib::RefPtr< Gdk::Screen > & > signal_screen_changed ()
 
Glib::SignalProxy< void > signal_composited_changed ()
 
Glib::SignalProxy< bool > signal_popup_menu ()
 
Glib::SignalProxy< bool, int, int, bool, const Glib::RefPtr< Tooltip > & > signal_query_tooltip ()
 
Glib::SignalProxy< bool, GdkEventGrabBroken * > signal_grab_broken_event ()
 
Glib::SignalProxy< bool, GdkEventExpose * > signal_damage_event ()
 
Glib::SignalProxy< bool, GdkEventTouch * > signal_touch_event ()
 
Glib::PropertyProxy< Glib::ustring > property_name ()
 The name of the widget. More...
 
Glib::PropertyProxy_ReadOnly< Glib::ustring > property_name () const
 The name of the widget. More...
 
Glib::PropertyProxy< Container * > property_parent ()
 The parent widget of this widget. More...
 
Glib::PropertyProxy_ReadOnly< Container * > property_parent () const
 The parent widget of this 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_app_paintable ()
 Whether the application will paint directly on the widget. More...
 
Glib::PropertyProxy_ReadOnly< bool > property_app_paintable () const
 Whether the application will paint directly on the widget. 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_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< bool > property_can_default ()
 Whether the widget can be the default widget. More...
 
Glib::PropertyProxy_ReadOnly< bool > property_can_default () const
 Whether the widget can be the default widget. More...
 
Glib::PropertyProxy< bool > property_has_default ()
 Whether the widget is the default widget. 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_ReadOnly< bool > property_composite_child () const
 Whether the widget is part of a composite widget. More...
 
Glib::PropertyProxy< Glib::RefPtr< Style > > property_style ()
 The style of the widget, which contains information about how it will look (colors, etc). More...
 
Glib::PropertyProxy_ReadOnly< Glib::RefPtr< Style > > property_style () const
 The style of the widget, which contains information about how it will look (colors, etc). More...
 
Glib::PropertyProxy< Gdk::EventMaskproperty_events ()
 The event mask that decides what kind of GdkEvents this widget gets. More...
 
Glib::PropertyProxy_ReadOnly< Gdk::EventMaskproperty_events () const
 The event mask that decides what kind of GdkEvents this widget gets. 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::ustring > property_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::ustring > property_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::ustring > property_tooltip_text ()
 Sets the text of tooltip to be the given string. More...
 
Glib::PropertyProxy_ReadOnly< Glib::ustring > property_tooltip_text () const
 Sets the text of tooltip to be the given string. More...
 
Glib::PropertyProxy_ReadOnly< Glib::RefPtr< Gdk::Window > > property_window () const
 The widget's window if it is realized, nullptr otherwise. More...
 
Glib::PropertyProxy< bool > property_no_show_all ()
 Whether Gtk::Widget::show_all() should not affect this widget. More...
 
Glib::PropertyProxy_ReadOnly< bool > property_no_show_all () const
 Whether Gtk::Widget::show_all() should not affect this widget. More...
 
Glib::PropertyProxy< bool > property_double_buffered ()
 Whether the widget is double buffered. More...
 
Glib::PropertyProxy_ReadOnly< bool > property_double_buffered () const
 Whether the widget is double buffered. 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_left ()
 Margin on left side of widget. More...
 
Glib::PropertyProxy_ReadOnly< int > property_margin_left () const
 Margin on left side of widget. More...
 
Glib::PropertyProxy< int > property_margin_right ()
 Margin on right side of widget. More...
 
Glib::PropertyProxy_ReadOnly< int > property_margin_right () const
 Margin on right side of widget. 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_ReadOnly< int > property_scale_factor () const
 The scale factor of the widget. More...
 
- Public Member Functions inherited from Gtk::Object
 Object (Object && src) noexcept
 
Objectoperator= (Object && src) noexcept
 
 ~Object () noexcept override
 
GObject * gobj ()
 Provides access to the underlying C GObject. More...
 
const GObject * gobj () const
 Provides access to the underlying C GObject. More...
 
- 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...
 

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_list (const std::vector< Glib::RefPtr< Gdk::Pixbuf > > & list)
 Sets an icon list to be used as fallback for windows that haven't had set_icon_list() called on them to set up a window-specific icon list. More...
 
static std::vector< Glib::RefPtr< Gdk::Pixbuf > > get_default_icon_list ()
 Gets the value set by Gtk::Window::set_default_icon_list(). More...
 
static void set_default_icon (const Glib::RefPtr< Gdk::Pixbuf > & icon)
 Sets an icon to be used as fallback for windows that haven't had set_icon() called on them from a pixbuf. 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 set_icon_list() called on them from a named themed icon, see set_icon_name(). More...
 
static bool set_default_icon_from_file (const std::string & filename)
 Sets an icon to be used as fallback for windows that haven't had set_icon_list() called on them from a file on disk. 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 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 push_composite_child ()
 Makes all newly-created widgets as composite children until the corresponding pop_composite_child() call. More...
 
static void pop_composite_child ()
 Cancels the effect of a previous call to push_composite_child(). 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 Widgetdrag_get_source_widget (const Glib::RefPtr< Gdk::DragContext > & context)
 
- 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...
 

Protected Member Functions

virtual void on_set_focus (Widget * focus)
 This is a default handler for the signal signal_set_focus(). More...
 
void destroy_ ()
 
- 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
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...
 
virtual void on_check_resize ()
 This is a default handler for the signal signal_check_resize(). More...
 
virtual void on_set_focus_child (Widget * widget)
 This is a default handler for the signal signal_set_focus_child(). More...
 
 Container ()
 
virtual GType child_type_vfunc () const
 Implements child_type(). More...
 
virtual void forall_vfunc (gboolean include_internals, GtkCallback callback, gpointer callback_data)
 Invokes a callback on all children of the container. More...
 
virtual char * composite_name_vfunc (GtkWidget * child)
 Returns the composite name of a child widget. More...
 
virtual void set_child_property_vfunc (GtkWidget * child, guint property_id, const GValue * value, GParamSpec * pspec)
 Sets a child property for this container and its child. More...
 
virtual void get_child_property_vfunc (GtkWidget * child, guint property_id, GValue * value, GParamSpec * pspec) const
 Returns a child property for this container and its child. More...
 
Glib::PropertyProxy< guint > property_border_width ()
 The width of the empty border outside the containers children. More...
 
Glib::PropertyProxy_ReadOnly< guint > property_border_width () const
 The width of the empty border outside the containers children. More...
 
Glib::PropertyProxy< ResizeModeproperty_resize_mode ()
 Specify how resize events are handled. More...
 
Glib::PropertyProxy_ReadOnly< ResizeModeproperty_resize_mode () const
 Specify how resize events are handled. More...
 
Glib::PropertyProxy_WriteOnly< Widget * > property_child ()
 Can be used to add a new child to the container. More...
 
- Protected Member Functions inherited from Gtk::Widget
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 (Allocation & allocation)
 This is a default handler for the signal signal_size_allocate(). More...
 
virtual void on_state_changed (Gtk::StateType previous_state)
 This is a default handler for the signal signal_state_changed(). More...
 
virtual void on_parent_changed (Widget * previous_parent)
 This is a default handler for the signal signal_parent_changed(). More...
 
virtual void on_hierarchy_changed (Widget * previous_toplevel)
 This is a default handler for the signal signal_hierarchy_changed(). More...
 
virtual void on_style_updated ()
 This is a default handler for the signal signal_style_updated(). 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 void on_child_notify (GParamSpec * pspec)
 This is a default handler for the signal signal_child_notify(). More...
 
virtual bool on_mnemonic_activate (bool group_cycling)
 This is a default handler for the signal signal_mnemonic_activate(). More...
 
virtual void on_grab_focus ()
 This is a default handler for the signal signal_grab_focus(). More...
 
virtual bool on_focus (DirectionType direction)
 This is a default handler for the signal signal_focus(). More...
 
virtual bool on_event (GdkEvent * gdk_event)
 This is a default handler for the signal signal_event(). More...
 
virtual bool on_button_press_event (GdkEventButton * button_event)
 This is a default handler for the signal signal_button_press_event(). More...
 
virtual bool on_button_release_event (GdkEventButton * release_event)
 This is a default handler for the signal signal_button_release_event(). More...
 
virtual bool on_scroll_event (GdkEventScroll * scroll_event)
 This is a default handler for the signal signal_scroll_event(). More...
 
virtual bool on_motion_notify_event (GdkEventMotion * motion_event)
 This is a default handler for the signal signal_motion_notify_event(). More...
 
virtual bool on_delete_event (GdkEventAny * any_event)
 This is a default handler for the signal signal_delete_event(). More...
 
virtual bool on_draw (const ::Cairo::RefPtr< ::Cairo::Context > & cr)
 This is a default handler for the signal signal_draw(). More...
 
virtual bool on_key_press_event (GdkEventKey * key_event)
 This is a default handler for the signal signal_key_press_event(). More...
 
virtual bool on_key_release_event (GdkEventKey * key_event)
 This is a default handler for the signal signal_key_release_event(). More...
 
virtual bool on_enter_notify_event (GdkEventCrossing * crossing_event)
 This is a default handler for the signal signal_enter_notify_event(). More...
 
virtual bool on_leave_notify_event (GdkEventCrossing * crossing_event)
 This is a default handler for the signal signal_leave_notify_event(). More...
 
virtual bool on_configure_event (GdkEventConfigure * configure_event)
 This is a default handler for the signal signal_configure_event(). More...
 
virtual bool on_focus_in_event (GdkEventFocus * focus_event)
 This is a default handler for the signal signal_focus_in_event(). More...
 
virtual bool on_focus_out_event (GdkEventFocus * gdk_event)
 This is a default handler for the signal signal_focus_out_event(). More...
 
virtual bool on_map_event (GdkEventAny * any_event)
 This is a default handler for the signal signal_map_event(). More...
 
virtual bool on_unmap_event (GdkEventAny * any_event)
 This is a default handler for the signal signal_unmap_event(). More...
 
virtual bool on_property_notify_event (GdkEventProperty * property_event)
 This is a default handler for the signal signal_property_notify_event(). More...
 
virtual bool on_selection_clear_event (GdkEventSelection * selection_event)
 This is a default handler for the signal signal_selection_clear_event(). More...
 
virtual bool on_selection_request_event (GdkEventSelection * selection_event)
 This is a default handler for the signal signal_selection_request_event(). More...
 
virtual bool on_selection_notify_event (GdkEventSelection * selection_event)
 This is a default handler for the signal signal_selection_notify_event(). More...
 
virtual bool on_proximity_in_event (GdkEventProximity * proximity_event)
 This is a default handler for the signal signal_proximity_in_event(). More...
 
virtual bool on_proximity_out_event (GdkEventProximity * proximity_event)
 This is a default handler for the signal signal_proximity_out_event(). More...
 
virtual bool on_visibility_notify_event (GdkEventVisibility * visibility_event)
 This is a default handler for the signal signal_visibility_notify_event(). More...
 
virtual bool on_window_state_event (GdkEventWindowState * window_state_event)
 This is a default handler for the signal signal_window_state_event(). More...
 
virtual void on_selection_get (SelectionData & selection_data, guint info, guint time)
 This is a default handler for the signal signal_selection_get(). More...
 
virtual void on_selection_received (const SelectionData & selection_data, guint time)
 This is a default handler for the signal signal_selection_received(). More...
 
virtual void on_drag_begin (const Glib::RefPtr< Gdk::DragContext > & context)
 This is a default handler for the signal signal_drag_begin(). More...
 
virtual void on_drag_end (const Glib::RefPtr< Gdk::DragContext > & context)
 This is a default handler for the signal signal_drag_end(). More...
 
virtual void on_drag_data_get (const Glib::RefPtr< Gdk::DragContext > & context, SelectionData & selection_data, guint info, guint time)
 This is a default handler for the signal signal_drag_data_get(). More...
 
virtual void on_drag_data_delete (const Glib::RefPtr< Gdk::DragContext > & context)
 This is a default handler for the signal signal_drag_data_delete(). More...
 
virtual void on_drag_leave (const Glib::RefPtr< Gdk::DragContext > & context, guint time)
 This is a default handler for the signal signal_drag_leave(). More...
 
virtual bool on_drag_motion (const Glib::RefPtr< Gdk::DragContext > & context, int x, int y, guint time)
 This is a default handler for the signal signal_drag_motion(). More...
 
virtual bool on_drag_drop (const Glib::RefPtr< Gdk::DragContext > & context, int x, int y, guint time)
 This is a default handler for the signal signal_drag_drop(). More...
 
virtual void on_drag_data_received (const Glib::RefPtr< Gdk::DragContext > & context, int x, int y, const SelectionData & selection_data, guint info, guint time)
 This is a default handler for the signal signal_drag_data_received(). More...
 
virtual void on_screen_changed (const Glib::RefPtr< Gdk::Screen > & previous_screen)
 This is a default handler for the signal signal_screen_changed(). More...
 
virtual void dispatch_child_properties_changed_vfunc (guint p1, GParamSpec ** p2)
 
virtual void show_all_vfunc ()
 
virtual Glib::RefPtr< Atk::Object > get_accessible_vfunc ()
 
virtual SizeRequestMode get_request_mode_vfunc () const
 
virtual void get_preferred_width_vfunc (int & minimum_width, int & natural_width) const
 
virtual void get_preferred_height_for_width_vfunc (int width, int & minimum_height, int & natural_height) const
 
virtual void get_preferred_height_vfunc (int & minimum_height, int & natural_height) const
 
virtual void get_preferred_width_for_height_vfunc (int height, int & minimum_width, int & natural_width) const
 
 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 draw (const ::Cairo::RefPtr< ::Cairo::Context > & cr)
 Draws widget to cr. More...
 
void set_mapped (bool mapped=true)
 Marks the widget as being mapped. More...
 
void set_realized (bool realized=true)
 Marks the widget as being realized. More...
 
void set_has_window (bool has_window=true)
 Specifies whether widget has a Gdk::Window of its own. More...
 
void set_window (const Glib::RefPtr< Gdk::Window > & window)
 Sets a widget's window. More...
 
void transform_cairo_context_to_window (const ::Cairo::RefPtr< ::Cairo::Context > & cr, const Glib::RefPtr< const Gdk::Window > & window)
 Transforms the given cairo context cr from widget-relative coordinates to window-relative coordinates. More...
 
Requisition get_requisition () const
 Retrieves the widget's requisition. More...
 
void get_style_property_value (const Glib::ustring & the_property_name, Glib::ValueBase & value) const
 Gets the value of a style property of widget. More...
 
void realize_if_needed ()
 
- Protected Member Functions inherited from Gtk::Buildable
 Buildable ()
 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
typedef sigc::slot< void, Widget & > ForeachSlot
 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...
 
- Static Protected Member Functions inherited from Gtk::Widget
static bool should_draw_window (const ::Cairo::RefPtr< const ::Cairo::Context > & cr, const Glib::RefPtr< const Gdk::Window > & window)
 This function is supposed to be called in Gtk::Widget::signal_draw() implementations for widgets that support multiple windows. More...
 

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.

Key values are the codes which are sent whenever a key is pressed or released. The complete list of key values can be found in the gdk/gdkkeysyms.h header file. They are prefixed with GDK_KEY_.

Constructor & Destructor Documentation

◆ Window() [1/3]

Gtk::Window::Window ( Window &&  src)
noexcept

◆ Window() [2/3]

Gtk::Window::Window ( const Window )
delete

◆ ~Window()

Gtk::Window::~Window ( )
overridenoexcept

◆ Window() [3/3]

Gtk::Window::Window ( WindowType  type = WINDOW_TOPLEVEL)
explicit

Member Function Documentation

◆ activate_default()

bool Gtk::Window::activate_default ( )

Activates the default widget for the window, unless the current focused widget has been configured to receive the default action (see Gtk::Widget::set_receives_default()), in which case the focused widget is activated.

Returns
true if a widget got activated.

◆ activate_focus()

bool Gtk::Window::activate_focus ( )

Activates the current focused widget within the window.

Returns
true if a widget got activated.

◆ add_accel_group()

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.

◆ add_mnemonic()

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.

◆ begin_move_drag()

void Gtk::Window::begin_move_drag ( int  button,
int  root_x,
int  root_y,
guint32  timestamp 
)

Starts moving a window.

This function is used if an application has window movement grips. When GDK can support it, the window movement will be done using the standard mechanism for the [window manager][gtk-X11-arch] or windowing system. Otherwise, GDK will try to emulate window movement, potentially not all that well, depending on the windowing system.

Parameters
buttonMouse button that initiated the drag.
root_xX position where the user clicked to initiate the drag, in root window coordinates.
root_yY position where the user clicked to initiate the drag.
timestampTimestamp from the click event that initiated the drag.

◆ begin_resize_drag()

void Gtk::Window::begin_resize_drag ( Gdk::WindowEdge  edge,
int  button,
int  root_x,
int  root_y,
guint32  timestamp 
)

Starts resizing a window.

This function is used if an application has window resizing controls. When GDK can support it, the resize will be done using the standard mechanism for the [window manager][gtk-X11-arch] or windowing system. Otherwise, GDK will try to emulate window resizing, potentially not all that well, depending on the windowing system.

Parameters
buttonMouse button that initiated the drag.
edgePosition of the resize control.
root_xX position where the user clicked to initiate the drag, in root window coordinates.
root_yY position where the user clicked to initiate the drag.
timestampTimestamp from the click event that initiated the drag.

◆ close()

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.

Since gtkmm 3.10:

◆ deiconify()

void Gtk::Window::deiconify ( )

Asks to deiconify (i.e. unminimize) the specified window.

Note that you shouldn’t assume the window is definitely deiconified afterward, because other entities (e.g. the user or [window manager][gtk-X11-arch])) could iconify it again before your code which assumes deiconification gets to run.

You can track iconification via the “window-state-event” signal on Gtk::Widget.

◆ destroy_()

void Gtk::Window::destroy_ ( )
protected

◆ fullscreen()

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 the fullscreen state via the “window-state-event” signal on Gtk::Widget.

Since gtkmm 2.2:

◆ fullscreen_on_monitor()

void Gtk::Window::fullscreen_on_monitor ( const Glib::RefPtr< Gdk::Screen > &  screen,
int  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 the fullscreen state via the "window-state-event" signal on Gtk::Widget.

Since gtkmm 3.18:
Parameters
screenA Gdk::Screen to draw to.
monitorWhich monitor to go fullscreen on.

◆ get_accel_group()

Glib::RefPtr< AccelGroup > Gtk::Window::get_accel_group ( )

Returns a default accel group for this window.

This is a gtkmm-specific function.

Deprecated:
This returns a group specific to this window, created on the first call. That’s no use if you need groups that were added by other sources, e.g. by Gtk::Builder. Use get_accel_groups(), which correctly returns all groups that have been added to the window regardless of origin. If you just used get_accel_group() as a shortcut to create and add a group, you should instead create it yourself and add it with add_accel_group().

◆ get_accel_groups()

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.

◆ get_accept_focus()

bool Gtk::Window::get_accept_focus ( ) const

Gets the value set by set_accept_focus().

Since gtkmm 2.4:
Returns
true if window should receive the input focus.

◆ get_application() [1/2]

Glib::RefPtr< Application > Gtk::Window::get_application ( )

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

Since gtkmm 3.0:
Returns
A Gtk::Application, or nullptr.

◆ get_application() [2/2]

Glib::RefPtr< const Application > Gtk::Window::get_application ( ) const

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

Since gtkmm 3.0:
Returns
A Gtk::Application, or nullptr.

◆ get_attached_to() [1/2]

Widget * Gtk::Window::get_attached_to ( )

Fetches the attach widget for this window.

See set_attached_to().

Since gtkmm 3.4:
Returns
The widget where the window is attached, or nullptr if the window is not attached to any widget.

◆ get_attached_to() [2/2]

const Widget * Gtk::Window::get_attached_to ( ) const

Fetches the attach widget for this window.

See set_attached_to().

Since gtkmm 3.4:
Returns
The widget where the window is attached, or nullptr if the window is not attached to any widget.

◆ get_decorated()

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.

◆ get_default_icon_list()

static std::vector< Glib::RefPtr< Gdk::Pixbuf > > Gtk::Window::get_default_icon_list ( )
static

Gets the value set by Gtk::Window::set_default_icon_list().

Returns
Copy of default icon list.

◆ get_default_size()

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.

◆ get_default_widget() [1/2]

Widget * Gtk::Window::get_default_widget ( )

Returns the default widget for window.

See set_default() for more details.

Since gtkmm 2.14:
Returns
The default widget, or nullptr if there is none.

◆ get_default_widget() [2/2]

const Widget * Gtk::Window::get_default_widget ( ) const

Returns the default widget for window.

See set_default() for more details.

Since gtkmm 2.14:
Returns
The default widget, or nullptr if there is none.

◆ get_deletable()

bool Gtk::Window::get_deletable ( ) const

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

Since gtkmm 2.10:
Returns
true if the window has been set to have a close button.

◆ get_destroy_with_parent()

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.

◆ get_focus() [1/2]

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.

◆ get_focus() [2/2]

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.

◆ get_focus_on_map()

bool Gtk::Window::get_focus_on_map ( ) const

Gets the value set by set_focus_on_map().

Since gtkmm 2.6:
Returns
true if window should receive the input focus when mapped.

◆ get_focus_visible()

bool Gtk::Window::get_focus_visible ( ) const

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

Since gtkmm 3.2:
Returns
true if “focus rectangles” are supposed to be visible in this window.

◆ get_gravity()

Gdk::Gravity Gtk::Window::get_gravity ( ) const

Gets the value set by set_gravity().

Returns
Window gravity.

◆ get_group() [1/2]

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.

Since gtkmm 2.10:
Returns
The Gtk::WindowGroup for a window or the default group.

◆ get_group() [2/2]

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.

Since gtkmm 2.10:
Returns
The Gtk::WindowGroup for a window or the default group.

◆ get_has_resize_grip()

bool Gtk::Window::get_has_resize_grip ( ) const

Determines whether the window may have a resize grip.

Since gtkmm 3.0:

Deprecated: 3.14: Resize grips have been removed.

Deprecated:
Resize grips have been removed.
Returns
true if the window has a resize grip.

◆ get_hide_titlebar_when_maximized()

bool Gtk::Window::get_hide_titlebar_when_maximized ( ) const

Returns whether the window has requested to have its titlebar hidden when maximized.

See set_hide_titlebar_when_maximized().

Since gtkmm 3.4:
Returns
true if the window has requested to have its titlebar hidden when maximized.

◆ get_icon() [1/2]

Glib::RefPtr< Gdk::Pixbuf > Gtk::Window::get_icon ( )

Gets the value set by set_icon() (or if you've called set_icon_list(), gets the first icon in the icon list).

Returns
Icon for window or nullptr if none.

◆ get_icon() [2/2]

Glib::RefPtr< const Gdk::Pixbuf > Gtk::Window::get_icon ( ) const

Gets the value set by set_icon() (or if you've called set_icon_list(), gets the first icon in the icon list).

Returns
Icon for window or nullptr if none.

◆ get_icon_list() [1/2]

std::vector< Glib::RefPtr< Gdk::Pixbuf > > Gtk::Window::get_icon_list ( )

Retrieves the list of icons set by set_icon_list().

The list is copied, but the reference count on each member won’t be incremented.

Returns
Copy of window’s icon list.

◆ get_icon_list() [2/2]

std::vector< Glib::RefPtr< const Gdk::Pixbuf > > Gtk::Window::get_icon_list ( ) const

Retrieves the list of icons set by set_icon_list().

The list is copied, but the reference count on each member won’t be incremented.

Returns
Copy of window’s icon list.

◆ get_icon_name()

Glib::ustring Gtk::Window::get_icon_name ( ) const

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

Since gtkmm 2.6:
Returns
The icon name or nullptr if the window has no themed icon.

◆ get_mnemonic_modifier()

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.

◆ get_mnemonics_visible()

bool Gtk::Window::get_mnemonics_visible ( ) const

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

Since gtkmm 2.20:
Returns
true if mnemonics are supposed to be visible in this window.

◆ get_modal()

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.

◆ get_opacity()

double Gtk::Window::get_opacity ( ) const

Fetches the requested opacity for this window.

See set_opacity().

Since gtkmm 2.12:
Deprecated: 3.8: Use gtk_widget_get_opacity instead.
Deprecated:
Use Widget::get_opacity() instead.
Returns
The requested opacity for this window.

◆ get_position()

void Gtk::Window::get_position ( int &  root_x,
int &  root_y 
) const

This function returns the position you need to pass to move() to keep window in its current position.

This means that the meaning of the returned value varies with window gravity. See move() for more details.

The reliability of this function depends on the windowing system currently in use. Some windowing systems, such as Wayland, do not support a global coordinate system, and thus the position of the window will always be (0, 0). Others, like X11, do not have a reliable way to obtain the geometry of the decorations of a window if they are provided by the window manager. Additionally, on X11, window manager have been known to mismanage window gravity, which result in windows moving even if you use the coordinates of the current position as returned by this function.

If you haven’t changed the window gravity, its gravity will be Gdk::GRAVITY_NORTH_WEST. This means that get_position() gets the position of the top-left corner of the window manager frame for the window. move() sets the position of this same top-left corner.

If a window has gravity Gdk::GRAVITY_STATIC the window manager frame is not relevant, and thus get_position() will always produce accurate results. However you can’t use static gravity to do things like place a window in a corner of the screen, because static gravity ignores the window manager decorations.

Ideally, this function should return appropriate values if the window has client side decorations, assuming that the windowing system supports global coordinates.

In practice, saving the window position should not be left to applications, as they lack enough knowledge of the windowing system and the window manager state to effectively do so. The appropriate way to implement saving the window position is to use a platform-specific protocol, wherever that is available.

Parameters
root_xReturn location for X coordinate of gravity-determined reference point.
root_yReturn location for Y coordinate of gravity-determined reference point.

◆ get_resizable()

bool Gtk::Window::get_resizable ( ) const

Gets the value set by set_resizable().

Returns
true if the user can resize the window.

◆ get_resize_grip_area()

bool Gtk::Window::get_resize_grip_area ( Gdk::Rectangle rect) const

If a window has a resize grip, this will retrieve the grip position, width and height into the specified Gdk::Rectangle.

Since gtkmm 3.0:

Deprecated: 3.14: Resize grips have been removed.

Deprecated:
Resize grips have been removed.
Parameters
rectA pointer to a Gdk::Rectangle which we should store the resize grip area.
Returns
true if the resize grip’s area was retrieved.

◆ get_resize_grip_is_visible()

bool Gtk::Window::get_resize_grip_is_visible ( ) const

Determines whether a resize grip is visible for the specified window.

Since gtkmm 3.0:

Deprecated: 3.14: Resize grips have been removed.

Deprecated:
Resize grips have been removed.
Returns
true if a resize grip exists and is visible.

◆ get_role()

Glib::ustring Gtk::Window::get_role ( ) const

Returns the role of the window.

See set_role() for further explanation.

Returns
The role of the window if set, or nullptr. The returned is owned by the widget and must not be modified or freed.

◆ get_screen() [1/2]

Glib::RefPtr< Gdk::Screen > Gtk::Window::get_screen ( )

Returns the Gdk::Screen associated with window.

Since gtkmm 2.2:
Returns
A Gdk::Screen.

◆ get_screen() [2/2]

Glib::RefPtr< const Gdk::Screen > Gtk::Window::get_screen ( ) const

Returns the Gdk::Screen associated with window.

Since gtkmm 2.2:
Returns
A Gdk::Screen.

◆ get_size()

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: set_position().

Parameters
widthReturn location for width.
heightReturn location for height.

◆ get_skip_pager_hint()

bool Gtk::Window::get_skip_pager_hint ( ) const

Gets the value set by set_skip_pager_hint().

Since gtkmm 2.2:
Returns
true if window shouldn’t be in pager.

◆ get_skip_taskbar_hint()

bool Gtk::Window::get_skip_taskbar_hint ( ) const

Gets the value set by set_skip_taskbar_hint()

Since gtkmm 2.2:
Returns
true if window shouldn’t be in taskbar.

◆ get_title()

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.

◆ get_titlebar() [1/2]

Widget * Gtk::Window::get_titlebar ( )

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

Since gtkmm 3.16:
Returns
The custom titlebar, or nullptr.

◆ get_titlebar() [2/2]

const Widget * Gtk::Window::get_titlebar ( ) const

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

Since gtkmm 3.16:
Returns
The custom titlebar, or nullptr.

◆ get_transient_for() [1/2]

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.

◆ get_transient_for() [2/2]

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.

◆ get_type()

static GType Gtk::Window::get_type ( )
static

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

◆ get_type_hint()

Gdk::WindowTypeHint Gtk::Window::get_type_hint ( ) const

Gets the type hint for this window.

See set_type_hint().

Returns
The type hint for window.

◆ get_urgency_hint()

bool Gtk::Window::get_urgency_hint ( ) const

Gets the value set by set_urgency_hint()

Since gtkmm 2.8:
Returns
true if window is urgent.

◆ get_window_type()

WindowType Gtk::Window::get_window_type ( ) const

Gets the type of the window.

See Gtk::WindowType.

Since gtkmm 2.20:
Returns
The type of the window.

◆ gobj() [1/2]

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

Provides access to the underlying C GObject.

◆ gobj() [2/2]

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

Provides access to the underlying C GObject.

◆ has_group()

bool Gtk::Window::has_group ( ) const

Returns whether window has an explicit window group.

Since gtkmm 2.22:
Returns
true if window has an explicit window group.

◆ has_toplevel_focus()

bool Gtk::Window::has_toplevel_focus ( ) const

Returns whether the input focus is within this GtkWindow.

For real toplevel windows, this is identical to is_active(), but for embedded windows, like Gtk::Plug, the results will differ.

Since gtkmm 2.4:
Returns
true if the input focus is within this GtkWindow.

◆ iconify()

void Gtk::Window::iconify ( )

Asks to iconify (i.e. minimize) the specified window.

Note that you shouldn’t assume the window is definitely iconified afterward, because other entities (e.g. the user or [window manager][gtk-X11-arch]) could deiconify it again, or there may not be a window manager in which case iconification isn’t possible, etc. But normally the window will end up iconified. 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 iconified before it ever appears onscreen.

You can track iconification via the “window-state-event” signal on Gtk::Widget.

◆ is_active()

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, but also if it is, say, a Gtk::Plug embedded in the active toplevel. You might use this function if you wanted to draw a widget differently in an active window from a widget in an inactive window. See has_toplevel_focus()

Since gtkmm 2.4:
Returns
true if the window part of the current active window.

◆ is_maximized()

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().

Since gtkmm 3.12:
Returns
Whether the window has a maximized state.

◆ list_toplevels()

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.

◆ maximize()

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 maximization via the “window-state-event” signal on Gtk::Widget, or by listening to notifications on the Gtk::Window::property_is_maximized() property.

◆ mnemonic_activate()

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.

◆ move()

void Gtk::Window::move ( int  x,
int  y 
)

Asks the [window manager][gtk-X11-arch] to move window to the given position.

Window managers are free to ignore this; most window managers ignore requests for initial window positions (instead using a user-defined placement algorithm) and honor requests after the window has already been shown.

Note
the position is the position of the gravity-determined reference point for the window. The gravity determines two things: first, the location of the reference point in root window coordinates; and second, which point on the window is positioned at the reference point.

By default the gravity is Gdk::GRAVITY_NORTH_WEST, so the reference point is simply the x, y supplied to move(). The top-left corner of the window decorations (aka window frame or border) will be placed at x, y. Therefore, to position a window at the top left of the screen, you want to use the default gravity (which is Gdk::GRAVITY_NORTH_WEST) and move the window to 0,0.

To position a window at the bottom right corner of the screen, you would set Gdk::GRAVITY_SOUTH_EAST, which means that the reference point is at x + the window width and y + the window height, and the bottom-right corner of the window border will be placed at that reference point. So, to place a window in the bottom right corner you would first set gravity to south east, then write: gtk_window_move (window, gdk_screen_width() - window_width, gdk_screen_height() - window_height) (note that this example does not take multi-head scenarios into account).

The Extended Window Manager Hints Specification has a nice table of gravities in the “implementation notes” section.

The get_position() documentation may also be relevant.

Parameters
xX coordinate to move window to.
yY coordinate to move window to.

◆ on_set_focus()

virtual void Gtk::Window::on_set_focus ( Widget focus)
protectedvirtual

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

◆ operator=() [1/2]

Window & Gtk::Window::operator= ( const Window )
delete

◆ operator=() [2/2]

Window & Gtk::Window::operator= ( Window &&  src)
noexcept

◆ parse_geometry()

bool Gtk::Window::parse_geometry ( const Glib::ustring &  geometry)

Parses a standard X Window System geometry string - see the manual page for X (type “man X”) for details on this.

parse_geometry() does work on all GTK+ ports including Win32 but is primarily intended for an X environment.

If either a size or a position can be extracted from the geometry string, parse_geometry() returns true and calls set_default_size() and/or move() to resize/move the window.

If parse_geometry() returns true, it will also set the Gdk::HINT_USER_POS and/or Gdk::HINT_USER_SIZE hints indicating to the window manager that the size/position of the window was user-specified. This causes most window managers to honor the geometry.

Note that for parse_geometry() to work as expected, it has to be called when the window has its “final” size, i.e. after calling Gtk::Widget::show_all() on the contents and set_geometry_hints() on the window.

[C example ellipted]

Deprecated: 3.20: Geometry handling in GTK is deprecated.

Deprecated:
Geometry handling in GTK is deprecated.
Parameters
geometryGeometry string.
Returns
true if string was parsed successfully.

◆ present() [1/2]

void Gtk::Window::present ( )

Presents a window to the user.

This may mean raising the window in the stacking order, deiconifying 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.

If you are calling this function in response to a user interaction, it is preferable to use present_with_time().

◆ present() [2/2]

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

Presents a window to the user in response to a user interaction.

If you need to present a window without a timestamp, use present(). See present() for details.

Since gtkmm 2.8:
Parameters
timestampThe timestamp of the user interaction (typically a button or key press event) which triggered this call.

◆ property_accept_focus() [1/2]

Glib::PropertyProxy< bool > Gtk::Window::property_accept_focus ( )

Whether the window should receive the input focus.

Since gtkmm 2.4:

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.

◆ property_accept_focus() [2/2]

Glib::PropertyProxy_ReadOnly< bool > Gtk::Window::property_accept_focus ( ) const

Whether the window should receive the input focus.

Since gtkmm 2.4:

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.

◆ property_application() [1/2]

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.

Since gtkmm 3.0:
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.

◆ property_application() [2/2]

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.

Since gtkmm 3.0:
Returns
A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.

◆ property_attached_to() [1/2]

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.

Since gtkmm 3.4:
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.

◆ property_attached_to() [2/2]

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.

Since gtkmm 3.4:
Returns
A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.

◆ property_decorated() [1/2]

Glib::PropertyProxy< bool > Gtk::Window::property_decorated ( )

Whether the window should be decorated by the window manager.

Since gtkmm 2.4:

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.

◆ property_decorated() [2/2]

Glib::PropertyProxy_ReadOnly< bool > Gtk::Window::property_decorated ( ) const

Whether the window should be decorated by the window manager.

Since gtkmm 2.4:

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.

◆ property_default_height() [1/2]

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.

◆ property_default_height() [2/2]

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.

◆ property_default_width() [1/2]

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.

◆ property_default_width() [2/2]

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.

◆ property_deletable() [1/2]

Glib::PropertyProxy< bool > Gtk::Window::property_deletable ( )

Whether the window frame should have a close button.

Since gtkmm 2.10:

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.

◆ property_deletable() [2/2]

Glib::PropertyProxy_ReadOnly< bool > Gtk::Window::property_deletable ( ) const

Whether the window frame should have a close button.

Since gtkmm 2.10:

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.

◆ property_destroy_with_parent() [1/2]

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.

◆ property_destroy_with_parent() [2/2]

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.

◆ property_focus_on_map() [1/2]

Glib::PropertyProxy< bool > Gtk::Window::property_focus_on_map ( )

Whether the window should receive the input focus when mapped.

Since gtkmm 2.6:

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.

◆ property_focus_on_map() [2/2]

Glib::PropertyProxy_ReadOnly< bool > Gtk::Window::property_focus_on_map ( ) const

Whether the window should receive the input focus when mapped.

Since gtkmm 2.6:

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.

◆ property_focus_visible() [1/2]

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.

Since gtkmm 2.20:

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.

◆ property_focus_visible() [2/2]

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.

Since gtkmm 2.20:

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.

◆ property_gravity() [1/2]

Glib::PropertyProxy< Gdk::Gravity > Gtk::Window::property_gravity ( )

The window gravity of the window.

See Gtk::Window::move() and Gdk::Gravity for more details about window gravity.

Since gtkmm 2.4:

Default value: Gdk::GRAVITY_NORTH_WEST

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.

◆ property_gravity() [2/2]

Glib::PropertyProxy_ReadOnly< Gdk::Gravity > Gtk::Window::property_gravity ( ) const

The window gravity of the window.

See Gtk::Window::move() and Gdk::Gravity for more details about window gravity.

Since gtkmm 2.4:

Default value: Gdk::GRAVITY_NORTH_WEST

Returns
A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.

◆ property_has_resize_grip() [1/2]

Glib::PropertyProxy< bool > Gtk::Window::property_has_resize_grip ( )

Whether the window has a corner resize grip.

Note that the resize grip is only shown if the window is actually resizable and not maximized. Use Gtk::Window::property_resize_grip_visible() to find out if the resize grip is currently shown.

Deprecated: 3.14: Resize grips have been removed.

Since gtkmm 3.0:
Deprecated:
Resize grips have been removed.

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.

◆ property_has_resize_grip() [2/2]

Glib::PropertyProxy_ReadOnly< bool > Gtk::Window::property_has_resize_grip ( ) const

Whether the window has a corner resize grip.

Note that the resize grip is only shown if the window is actually resizable and not maximized. Use Gtk::Window::property_resize_grip_visible() to find out if the resize grip is currently shown.

Deprecated: 3.14: Resize grips have been removed.

Since gtkmm 3.0:
Deprecated:
Resize grips have been removed.

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.

◆ property_has_toplevel_focus()

Glib::PropertyProxy_ReadOnly< bool > Gtk::Window::property_has_toplevel_focus ( ) const

Whether the input focus is within this GtkWindow.

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.

◆ property_hide_titlebar_when_maximized() [1/2]

Glib::PropertyProxy< bool > Gtk::Window::property_hide_titlebar_when_maximized ( )

Whether the titlebar should be hidden during maximization.

Since gtkmm 3.4:

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.

◆ property_hide_titlebar_when_maximized() [2/2]

Glib::PropertyProxy_ReadOnly< bool > Gtk::Window::property_hide_titlebar_when_maximized ( ) const

Whether the titlebar should be hidden during maximization.

Since gtkmm 3.4:

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.

◆ property_icon() [1/2]

Glib::PropertyProxy< Glib::RefPtr< Gdk::Pixbuf > > Gtk::Window::property_icon ( )

Icon for 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.

◆ property_icon() [2/2]

Glib::PropertyProxy_ReadOnly< Glib::RefPtr< Gdk::Pixbuf > > Gtk::Window::property_icon ( ) const

Icon for 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.

◆ property_icon_name() [1/2]

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.

Since gtkmm 2.6:

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.

◆ property_icon_name() [2/2]

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.

Since gtkmm 2.6:

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.

◆ property_is_active()

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.

◆ property_is_maximized()

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.

◆ property_mnemonics_visible() [1/2]

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.

Since gtkmm 2.20:

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.

◆ property_mnemonics_visible() [2/2]

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.

Since gtkmm 2.20:

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.

◆ property_modal() [1/2]

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.

◆ property_modal() [2/2]

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.

◆ property_opacity() [1/2]

Glib::PropertyProxy< double > Gtk::Window::property_opacity ( )

The opacity of the window, from 0 to 1.

Deprecated:
Use the opacity property in the Widget base class instead.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

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.

◆ property_opacity() [2/2]

Glib::PropertyProxy_ReadOnly< double > Gtk::Window::property_opacity ( ) const

The opacity of the window, from 0 to 1.

Deprecated:
Use the opacity property in the Widget base class instead.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns
A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.

◆ property_resizable() [1/2]

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.

◆ property_resizable() [2/2]

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.

◆ property_resize_grip_visible()

Glib::PropertyProxy_ReadOnly< bool > Gtk::Window::property_resize_grip_visible ( ) const

Whether a corner resize grip is currently shown.

Deprecated: 3.14: Resize grips have been removed.

Since gtkmm 3.0:
Deprecated:
Resize grips have been removed.

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.

◆ property_role() [1/2]

Glib::PropertyProxy< Glib::ustring > Gtk::Window::property_role ( )

Unique identifier for the window to be used when restoring a session.

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.

◆ property_role() [2/2]

Glib::PropertyProxy_ReadOnly< Glib::ustring > Gtk::Window::property_role ( ) const

Unique identifier for the window to be used when restoring a session.

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.

◆ property_screen() [1/2]

Glib::PropertyProxy< Glib::RefPtr< Gdk::Screen > > Gtk::Window::property_screen ( )

The screen where this window will be displayed.

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.

◆ property_screen() [2/2]

Glib::PropertyProxy_ReadOnly< Glib::RefPtr< Gdk::Screen > > Gtk::Window::property_screen ( ) const

The screen where this window will be displayed.

Returns
A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.

◆ property_skip_pager_hint() [1/2]

Glib::PropertyProxy< bool > Gtk::Window::property_skip_pager_hint ( )

true if the window should not be in the pager.

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.

◆ property_skip_pager_hint() [2/2]

Glib::PropertyProxy_ReadOnly< bool > Gtk::Window::property_skip_pager_hint ( ) const

true if the window should not be in the pager.

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.

◆ property_skip_taskbar_hint() [1/2]

Glib::PropertyProxy< bool > Gtk::Window::property_skip_taskbar_hint ( )

true if the window should not be in the task bar.

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.

◆ property_skip_taskbar_hint() [2/2]

Glib::PropertyProxy_ReadOnly< bool > Gtk::Window::property_skip_taskbar_hint ( ) const

true if the window should not be in the task bar.

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.

◆ property_startup_id()

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.

Since gtkmm 2.12:

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.

◆ property_title() [1/2]

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.

◆ property_title() [2/2]

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.

◆ property_transient_for() [1/2]

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.

Since gtkmm 2.10:
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.

◆ property_transient_for() [2/2]

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.

Since gtkmm 2.10:
Returns
A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.

◆ property_type()

Glib::PropertyProxy_ReadOnly< WindowType > Gtk::Window::property_type ( ) const

The type of the window.

Default value: Gtk::WINDOW_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.

◆ property_type_hint() [1/2]

Glib::PropertyProxy< GdkWindowTypeHint > 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::WINDOW_TYPE_HINT_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.

◆ property_type_hint() [2/2]

Glib::PropertyProxy_ReadOnly< GdkWindowTypeHint > 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::WINDOW_TYPE_HINT_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.

◆ property_urgency_hint() [1/2]

Glib::PropertyProxy< bool > Gtk::Window::property_urgency_hint ( )

true if the window should be brought to the user's attention.

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.

◆ property_urgency_hint() [2/2]

Glib::PropertyProxy_ReadOnly< bool > Gtk::Window::property_urgency_hint ( ) const

true if the window should be brought to the user's attention.

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.

◆ property_window_position() [1/2]

Glib::PropertyProxy< WindowPosition > Gtk::Window::property_window_position ( )

The initial position of the window.

Default value: Gtk::WIN_POS_NONE

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.

◆ property_window_position() [2/2]

Glib::PropertyProxy_ReadOnly< WindowPosition > Gtk::Window::property_window_position ( ) const

The initial position of the window.

Default value: Gtk::WIN_POS_NONE

Returns
A PropertyProxy_ReadOnly that allows you to get the value of the property, or receive notification when the value of the property changes.

◆ raise()

virtual void Gtk::Window::raise ( )
virtual

Brings the window to the front.

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

◆ remove_accel_group()

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

Reverses the effects of add_accel_group().

Parameters
accel_groupA Gtk::AccelGroup.

◆ remove_mnemonic()

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.

◆ reshow_with_initial_size()

void Gtk::Window::reshow_with_initial_size ( )

Hides window, then reshows it, resetting the default size and position of the window.

Used by GUI builders only.

Deprecated: 3.10: GUI builders can call Gtk::Widget::hide(), Gtk::Widget::unrealize() and then Gtk::Widget::show() on window themselves, if they still need this functionality.

Deprecated:
GUI builders can call Widget::hide(), Widget::unrealize() and then Widget::show() themselves, if they still need this functionality.

◆ resize()

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.

◆ resize_to_geometry()

void Gtk::Window::resize_to_geometry ( int  width,
int  height 
)

Like resize(), but width and height are interpreted in terms of the base size and increment set with gtk_window_set_geometry_hints.

Since gtkmm 3.0:

Deprecated: 3.20: This function does nothing. Use resize() and compute the geometry yourself.

Deprecated:
This function does nothing. Use resize() and compute the geometry yourself.
Parameters
widthWidth in resize increments to resize the window to.
heightHeight in resize increments to resize the window to.

◆ set_accept_focus()

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.

Since gtkmm 2.4:
Parameters
settingtrue to let this window receive input focus.

◆ set_application()

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 destroyed, 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, except that the connection between the application and a window added with Gtk::Application::add_window() is removed when the window is closed (hidden).

Parameters
applicationA Gtk::Application.

◆ set_attached_to()

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.

Since gtkmm 3.4:
Parameters
attach_widgetA Gtk::Widget, or nullptr.

◆ set_auto_startup_notification()

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.

Since gtkmm 2.2:
Parameters
settingtrue to automatically do startup notification.

◆ set_decorated()

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.

◆ set_default()

void Gtk::Window::set_default ( 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 the default widget for a Gtk::Window. When setting (rather than unsetting) the default widget it's generally easier to call Gtk::Widget::grab_focus() on the widget. Before making a widget the default widget, you must set the Gtk::CAN_DEFAULT flag on the widget you'd like to make the default using GTK_WIDGET_SET_FLAGS().

Parameters
default_widgetWidget to be the default.

◆ set_default_geometry()

void Gtk::Window::set_default_geometry ( int  width,
int  height 
)

Like set_default_size(), but width and height are interpreted in terms of the base size and increment set with gtk_window_set_geometry_hints.

Since gtkmm 3.0:

Deprecated: 3.20: This function does nothing. If you want to set a default size, use set_default_size() instead.

Deprecated:
This function does nothing. If you want to set a default size, use set_default_size() instead.
Parameters
widthWidth in resize increments, or -1 to unset the default width.
heightHeight in resize increments, or -1 to unset the default height.

◆ set_default_icon()

static void Gtk::Window::set_default_icon ( const Glib::RefPtr< Gdk::Pixbuf > &  icon)
static

Sets an icon to be used as fallback for windows that haven't had set_icon() called on them from a pixbuf.

Since gtkmm 2.4:
Parameters
iconThe icon.

◆ set_default_icon_from_file()

static bool Gtk::Window::set_default_icon_from_file ( const std::string filename)
static

Sets an icon to be used as fallback for windows that haven't had set_icon_list() called on them from a file on disk.

Warns on failure if err is nullptr.

Since gtkmm 2.2:
Parameters
filenameLocation of icon file.
Returns
true if setting the icon succeeded.
Exceptions
Glib::Error

◆ set_default_icon_list()

static void Gtk::Window::set_default_icon_list ( const std::vector< Glib::RefPtr< Gdk::Pixbuf > > &  list)
static

Sets an icon list to be used as fallback for windows that haven't had set_icon_list() called on them to set up a window-specific icon list.

This function allows you to set up the icon for all windows in your app at once.

See set_icon_list() for more details.

Parameters
listA list of Gdk::Pixbuf.

◆ set_default_icon_name()

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 set_icon_list() called on them from a named themed icon, see set_icon_name().

Since gtkmm 2.6:
Parameters
nameThe name of the themed icon.

◆ set_default_size()

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. More generally, if the default size does not obey the geometry hints for the window (set_geometry_hints() can be used to set these explicitly), the default size will be clamped to the nearest permitted size.

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 more control over a window’s initial size and how resizing works, investigate set_geometry_hints().

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.

◆ set_deletable()

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.

Since gtkmm 2.10:
Parameters
settingtrue to decorate the window as deletable.

◆ set_focus()

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.

◆ set_focus_on_map()

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.

Since gtkmm 2.6:
Parameters
settingtrue to let this window receive input focus on map.

◆ set_focus_visible()

void Gtk::Window::set_focus_visible ( bool  setting = true)

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

Since gtkmm 3.2:
Parameters
settingThe new value.

◆ set_geometry_hints()

void Gtk::Window::set_geometry_hints ( Widget geometry_widget,
const Gdk::Geometry geometry,
Gdk::WindowHints  geom_mask 
)

This function sets up hints about how a window can be resized by the user.

You can set a minimum and maximum size; allowed resize increments (e.g. for xterm, you can only resize by the size of a character); aspect ratios; and more. See the Gdk::Geometry struct.

Parameters
geometry_widgetWidget the geometry hints used to be applied to or nullptr. Since 3.20 this argument is ignored and GTK behaves as if nullptr was set.
geometryStruct containing geometry information or nullptr.
geom_maskMask indicating which struct fields should be paid attention to.

◆ set_gravity()

void Gtk::Window::set_gravity ( Gdk::Gravity  gravity)

Window gravity defines the meaning of coordinates passed to move().

See move() and Gdk::Gravity for more details.

The default window gravity is Gdk::GRAVITY_NORTH_WEST which will typically “do what you mean.”

Parameters
gravityWindow gravity.

◆ set_has_resize_grip()

void Gtk::Window::set_has_resize_grip ( bool  value = true)

Sets whether window has a corner resize grip.

Note that the resize grip is only shown if the window is actually resizable and not maximized. Use resize_grip_is_visible() to find out if the resize grip is currently shown.

Since gtkmm 3.0:

Deprecated: 3.14: Resize grips have been removed.

Deprecated:
Resize grips have been removed.
Parameters
valuetrue to allow a resize grip.

◆ set_hide_titlebar_when_maximized()

void Gtk::Window::set_hide_titlebar_when_maximized ( bool  setting = true)

If setting is true, then window will request that it’s titlebar should be hidden when maximized.

This is useful for windows that don’t convey any information other than the application name in the titlebar, to put the available screen space to better use. If the underlying window system does not support the request, the setting will not have any effect.

Note that custom titlebars set with set_titlebar() are not affected by this. The application is in full control of their content and visibility anyway.

Since gtkmm 3.4:
Parameters
settingWhether to hide the titlebar when window is maximized.

◆ set_icon()

void Gtk::Window::set_icon ( const Glib::RefPtr< Gdk::Pixbuf > &  icon)

Sets up the icon representing a Gtk::Window.

This icon is used when the window is minimized (also known as iconified). Some window managers or desktop environments may also place it in the window frame, or display it in other contexts. On others, the icon is not used at all, so your mileage may vary.

The icon should be provided in whatever size it was naturally drawn; that is, don’t scale the image before passing it to GTK+. Scaling is postponed until the last minute, when the desired final size is known, to allow best quality.

If you have your icon hand-drawn in multiple sizes, use set_icon_list(). Then the best size will be used.

This function is equivalent to calling set_icon_list() with a 1-element list.

See also set_default_icon_list() to set the icon for all windows in your application in one go.

Parameters
iconIcon image, or nullptr.

◆ set_icon_from_file()

bool Gtk::Window::set_icon_from_file ( const std::string filename)

Sets the icon for the window.

This function is equivalent to calling set_icon() with a pixbuf created by loading the image from filename.

Parameters
filenameLocation of icon file.
Returns
true if setting the icon succeeded.
Exceptions
Glib::Error

◆ set_icon_list()

void Gtk::Window::set_icon_list ( const std::vector< Glib::RefPtr< Gdk::Pixbuf > > &  list)

Sets up the icon representing a Gtk::Window.

The icon is used when the window is minimized (also known as iconified). Some window managers or desktop environments may also place it in the window frame, or display it in other contexts. On others, the icon is not used at all, so your mileage may vary.

set_icon_list() allows you to pass in the same icon in several hand-drawn sizes. The list should contain the natural sizes your icon is available in; that is, don’t scale the image before passing it to GTK+. Scaling is postponed until the last minute, when the desired final size is known, to allow best quality.

By passing several sizes, you may improve the final image quality of the icon, by reducing or eliminating automatic image scaling.

Recommended sizes to provide: 16x16, 32x32, 48x48 at minimum, and larger images (64x64, 128x128) if you have them.

See also set_default_icon_list() to set the icon for all windows in your application in one go.

Note that transient windows (those who have been set transient for another window using set_transient_for()) will inherit their icon from their transient parent. So there’s no need to explicitly set the icon on transient windows.

Parameters
listList of Gdk::Pixbuf.

◆ set_icon_name()

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.

◆ set_keep_above()

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 the above state via the “window-state-event” signal on Gtk::Widget.

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.

Since gtkmm 2.4:
Parameters
settingWhether to keep window above other windows.

◆ set_keep_below()

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 the below state via the “window-state-event” signal on Gtk::Widget.

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.

Since gtkmm 2.4:
Parameters
settingWhether to keep window below other windows.

◆ set_manage()

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.

◆ set_mnemonic_modifier()

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.

◆ set_mnemonics_visible()

void Gtk::Window::set_mnemonics_visible ( bool  setting = true)

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

Since gtkmm 2.20:
Parameters
settingThe new value.

◆ set_modal()

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.

◆ set_opacity()

void Gtk::Window::set_opacity ( double  opacity)

Request the windowing system to make window partially transparent, with opacity 0 being fully transparent and 1 fully opaque.

(Values of the opacity parameter are clamped to the [0,1] range.) On X11 this has any effect only on X screens with a compositing manager running. See Gtk::Widget::is_composited(). On Windows it should work always.

Note that setting a window’s opacity after the window has been shown causes it to flicker once on Windows.

Since gtkmm 2.12:
Deprecated: 3.8: Use gtk_widget_set_opacity instead.
Deprecated:
Use Widget::set_opacity() instead.
Parameters
opacityDesired opacity, between 0 and 1.

◆ set_position()

void Gtk::Window::set_position ( WindowPosition  position)

Sets a position constraint for this window.

If the old or new constraint is Gtk::WIN_POS_CENTER_ALWAYS, this will also cause the window to be repositioned to satisfy the new constraint.

Parameters
positionA position constraint.

◆ set_resizable()

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.

◆ set_role()

void Gtk::Window::set_role ( const Glib::ustring &  role)

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

In combination with the window title, the window role allows a [window manager][gtk-X11-arch] to identify "the same" window when an application is restarted. So for example you might set the “toolbox” role on your app’s toolbox window, so that when the user restarts their session, the window manager can put the toolbox back in the same place.

If a window already has a unique title, you don’t need to set the role, since the WM can use the title to identify the window when restoring the session.

Parameters
roleUnique identifier for the window to be used when restoring a session.

◆ set_screen()

void Gtk::Window::set_screen ( const Glib::RefPtr< Gdk::Screen > &  screen)

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

Since gtkmm 2.2:
Parameters
screenA Gdk::Screen.

◆ set_skip_pager_hint()

void Gtk::Window::set_skip_pager_hint ( bool  setting = true)

Windows may set a hint asking the desktop environment not to display the window in the pager.

This function sets this hint. (A "pager" is any desktop navigation tool such as a workspace switcher that displays a thumbnail representation of the windows on the screen.)

Since gtkmm 2.2:
Parameters
settingtrue to keep this window from appearing in the pager.

◆ set_skip_taskbar_hint()

void Gtk::Window::set_skip_taskbar_hint ( bool  setting = true)

Windows may set a hint asking the desktop environment not to display the window in the task bar.

This function sets this hint.

Since gtkmm 2.2:
Parameters
settingtrue to keep this window from appearing in the task bar.

◆ set_startup_id()

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 GdkWindow. 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.

Since gtkmm 2.12:
Parameters
startup_idA string with startup-notification identifier.

◆ set_title()

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.

◆ set_titlebar()

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().

Since gtkmm 3.10:
Parameters
titlebarThe widget to use as titlebar.

◆ set_transient_for()

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.

On Wayland, this function can also be used to attach a new Gtk::WINDOW_POPUP to a Gtk::WINDOW_TOPLEVEL parent already mapped on screen so that the Gtk::WINDOW_POPUP will be created as a subsurface-based window Gdk::WINDOW_SUBSURFACE which can be positioned at will relatively to the Gtk::WINDOW_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.

◆ set_type_hint()

void Gtk::Window::set_type_hint ( Gdk::WindowTypeHint  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.

◆ set_urgency_hint()

void Gtk::Window::set_urgency_hint ( bool  setting = true)

Windows may set a hint asking the desktop environment to draw the users attention to the window.

This function sets this hint.

Since gtkmm 2.8:
Parameters
settingtrue to mark this window as urgent.

◆ set_wmclass()

void Gtk::Window::set_wmclass ( const Glib::ustring &  wmclass_name,
const Glib::ustring &  wmclass_class 
)

Don’t use this function.

It sets the X Window System “class” and “name” hints for a window. According to the ICCCM, you should always set these to the same value for all windows in an application, and GTK+ sets them to that value by default, so calling this function is sort of pointless. However, you may want to call set_role() on each window in your application, for the benefit of the session manager. Setting the role allows the window manager to restore window positions when loading a saved session.

Deprecated: 3.22

Deprecated:
Don’t use this function.
Parameters
wmclass_nameWindow name hint.
wmclass_classWindow class hint.

◆ show_uri()

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() 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

◆ signal_keys_changed()

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.

◆ signal_set_focus()

Glib::SignalProxy< void, Widget * > Gtk::Window::signal_set_focus ( )
Slot Prototype:
void on_my_set_focus(Widget* focus)

Flags: Run Last

◆ stick()

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 stickiness via the “window-state-event” signal on Gtk::Widget.

◆ unfullscreen()

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 the fullscreen state via the “window-state-event” signal on Gtk::Widget.

Since gtkmm 2.2:

◆ unmaximize()

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 maximization via the “window-state-event” signal on Gtk::Widget.

◆ unset_application()

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.

◆ unset_attached_to()

void Gtk::Window::unset_attached_to ( )

Unsets the attached-to widget.

See also
set_attached_to().
Since gtkmm 3.4:

◆ unset_default()

void Gtk::Window::unset_default ( )

◆ unset_focus()

void Gtk::Window::unset_focus ( )

◆ unset_transient_for()

void Gtk::Window::unset_transient_for ( )

Unsets the current transient window.

See also
set_transient_for().
Since gtkmm 2.20:

◆ unstick()

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 stickiness via the “window-state-event” signal on Gtk::Widget.

Friends And Related Function Documentation

◆ wrap()

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.