1999-08-16 18:51:52 +00:00
|
|
|
<!-- ##### SECTION Title ##### -->
|
|
|
|
GtkWindow
|
|
|
|
|
|
|
|
<!-- ##### SECTION Short_Description ##### -->
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### SECTION Long_Description ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<!-- ##### SECTION See_Also ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<!-- ##### STRUCT GtkWindow ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION gtk_window_new ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@type:
|
|
|
|
@Returns:
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION gtk_window_set_title ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@window:
|
|
|
|
@title:
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION gtk_window_set_wmclass ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@window:
|
|
|
|
@wmclass_name:
|
|
|
|
@wmclass_class:
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION gtk_window_set_policy ##### -->
|
|
|
|
<para>
|
2000-03-14 17:21:06 +00:00
|
|
|
Changes how a toplevel window deals with its size request and user resize
|
|
|
|
attempts. There are really only two reasonable ways to call this function:
|
|
|
|
<orderedlist>
|
|
|
|
<listitem>
|
|
|
|
<para>
|
|
|
|
<literal>gtk_window_set_policy(GTK_WINDOW(window), FALSE, TRUE, FALSE)</literal>
|
|
|
|
means that the window is user-resizable.
|
|
|
|
</para>
|
|
|
|
</listitem>
|
|
|
|
<listitem>
|
|
|
|
<para>
|
|
|
|
<literal>gtk_window_set_policy(GTK_WINDOW(window), FALSE, FALSE, TRUE)</literal>
|
|
|
|
means that the window's size is program-controlled, and should simply match
|
|
|
|
the current size request of the window's children.
|
|
|
|
</para>
|
|
|
|
</listitem>
|
|
|
|
</orderedlist>
|
|
|
|
The first policy is the default, that is, by default windows are designed to
|
|
|
|
be resized by users.
|
|
|
|
</para>
|
1999-08-16 18:51:52 +00:00
|
|
|
|
2000-03-14 17:21:06 +00:00
|
|
|
<para>
|
|
|
|
The basic ugly truth of this function is that it should be simply:
|
|
|
|
<programlisting>
|
|
|
|
void gtk_window_set_user_resizeable(GtkWidget* window, gboolean setting);
|
|
|
|
</programlisting>
|
|
|
|
So, pretend it is like that, and only use the two policies mentioned above.
|
|
|
|
GTK+ 1.4 may replace gtk_window_set_policy() with a nicer function like
|
|
|
|
gtk_window_set_user_resizeable().
|
1999-08-16 18:51:52 +00:00
|
|
|
</para>
|
|
|
|
|
2000-03-14 17:21:06 +00:00
|
|
|
<para>
|
|
|
|
If set to TRUE, the @allow_grow parameter allows the user to expand the window
|
|
|
|
beyond the size request of its child widgets. If @allow_grow is TRUE, be sure to
|
|
|
|
check that your child widgets work properly as the window is resized.
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
A toplevel window will always change size to ensure its child widgets receive
|
|
|
|
their requested size. This means that if you add child widgets, the toplevel
|
|
|
|
window will expand to contain them. However, normally the toplevel will not
|
|
|
|
shrink to fit the size request of its children if it's too large; the
|
|
|
|
@auto_shrink parameter causes the window to shrink when child widgets have too
|
|
|
|
much space. @auto_shrink is normally used with the second of the two window
|
|
|
|
policies mentioned above. That is, set @auto_shrink to TRUE if you want the
|
|
|
|
window to have a fixed, always-optimal size determined by your program.
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
Note that @auto_shrink doesn't do anything if @allow_shrink and @allow_grow are
|
|
|
|
both set to FALSE.
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
Neither of the two suggested window policies set the @allow_shrink paramter to
|
|
|
|
TRUE. If @allow_shrink is TRUE, the user can shrink the window so that its
|
|
|
|
children do not receive their full size request; this is basically a bad thing,
|
|
|
|
because most widgets will look wrong if this happens. Furthermore GTK+ has a
|
|
|
|
tendency to re-expand the window if size is recalculated for any reason. The
|
|
|
|
upshot is that @allow_shrink should always be set to FALSE.
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<para>
|
|
|
|
Sometimes when you think you want to use @allow_shrink, the real problem is that
|
|
|
|
some specific child widget is requesting too much space, so the user can't
|
|
|
|
shrink the window sufficiently. Perhaps you are calling gtk_widget_set_usize()
|
|
|
|
on a child widget, and forcing its size request to be too large. Instead of
|
|
|
|
setting the child's usize, consider using gtk_window_set_default_size() so that
|
|
|
|
the child gets a larger allocation than it requests.
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@window: the window
|
|
|
|
@allow_shrink: whether the user can shrink the window below its size request
|
|
|
|
@allow_grow: whether the user can grow the window larger than its size request
|
|
|
|
@auto_shrink: whether the window automatically snaps back to its size request if
|
|
|
|
it's larger
|
1999-08-16 18:51:52 +00:00
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION gtk_window_add_accel_group ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@window:
|
|
|
|
@accel_group:
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION gtk_window_remove_accel_group ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@window:
|
|
|
|
@accel_group:
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### MACRO gtk_window_position ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION gtk_window_activate_focus ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@window:
|
|
|
|
@Returns:
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION gtk_window_activate_default ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@window:
|
|
|
|
@Returns:
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION gtk_window_set_modal ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@window:
|
|
|
|
@modal:
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION gtk_window_set_default_size ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@window:
|
|
|
|
@width:
|
|
|
|
@height:
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION gtk_window_set_geometry_hints ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@window:
|
|
|
|
@geometry_widget:
|
|
|
|
@geometry:
|
|
|
|
@geom_mask:
|
|
|
|
|
|
|
|
|
2001-04-17 18:12:46 +00:00
|
|
|
<!-- ##### FUNCTION gtk_window_set_gravity ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@window:
|
|
|
|
@gravity:
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION gtk_window_get_gravity ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@window:
|
|
|
|
@Returns:
|
|
|
|
|
|
|
|
|
1999-08-16 18:51:52 +00:00
|
|
|
<!-- ##### FUNCTION gtk_window_set_position ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@window:
|
|
|
|
@position:
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION gtk_window_set_transient_for ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@window:
|
|
|
|
@parent:
|
|
|
|
|
|
|
|
|
2000-10-20 23:14:41 +00:00
|
|
|
<!-- ##### FUNCTION gtk_window_set_destroy_with_parent ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@window:
|
|
|
|
@setting:
|
|
|
|
|
|
|
|
|
2000-09-07 18:17:06 +00:00
|
|
|
<!-- ##### FUNCTION gtk_window_list_toplevels ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@Returns:
|
|
|
|
|
|
|
|
|
2001-03-23 22:21:06 +00:00
|
|
|
<!-- ##### FUNCTION gtk_window_add_mnemonic ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@window:
|
|
|
|
@keyval:
|
|
|
|
@target:
|
|
|
|
|
|
|
|
|
2001-04-17 18:12:46 +00:00
|
|
|
<!-- ##### FUNCTION gtk_window_remove_mnemonic ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@window:
|
|
|
|
@keyval:
|
|
|
|
@target:
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION gtk_window_mnemonic_activate ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@window:
|
|
|
|
@keyval:
|
|
|
|
@modifier:
|
|
|
|
@Returns:
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION gtk_window_present ##### -->
|
2001-03-23 22:21:06 +00:00
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@window:
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION gtk_window_iconify ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@window:
|
|
|
|
|
|
|
|
|
2001-04-17 18:12:46 +00:00
|
|
|
<!-- ##### FUNCTION gtk_window_deiconify ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@window:
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION gtk_window_stick ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@window:
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION gtk_window_unstick ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@window:
|
|
|
|
|
|
|
|
|
2001-03-23 22:21:06 +00:00
|
|
|
<!-- ##### FUNCTION gtk_window_maximize ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@window:
|
|
|
|
|
|
|
|
|
2001-04-17 18:12:46 +00:00
|
|
|
<!-- ##### FUNCTION gtk_window_unmaximize ##### -->
|
2001-03-23 22:21:06 +00:00
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@window:
|
|
|
|
|
|
|
|
|
2001-04-17 18:12:46 +00:00
|
|
|
<!-- ##### FUNCTION gtk_window_begin_resize_drag ##### -->
|
2001-03-23 22:21:06 +00:00
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@window:
|
2001-04-17 18:12:46 +00:00
|
|
|
@edge:
|
|
|
|
@button:
|
|
|
|
@root_x:
|
|
|
|
@root_y:
|
|
|
|
@timestamp:
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION gtk_window_begin_move_drag ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@window:
|
|
|
|
@button:
|
|
|
|
@root_x:
|
|
|
|
@root_y:
|
|
|
|
@timestamp:
|
2001-03-23 22:21:06 +00:00
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION gtk_window_set_decorated ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@window:
|
|
|
|
@setting:
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION gtk_window_set_frame_dimensions ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@window:
|
|
|
|
@left:
|
|
|
|
@top:
|
|
|
|
@right:
|
|
|
|
@bottom:
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION gtk_window_set_has_frame ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@window:
|
2001-06-21 17:44:27 +00:00
|
|
|
@setting:
|
2001-03-23 22:21:06 +00:00
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION gtk_window_set_mnemonic_modifier ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@window:
|
|
|
|
@modifier:
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION gtk_window_set_role ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@window:
|
|
|
|
@role:
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION gtk_window_set_type_hint ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@window:
|
|
|
|
@hint:
|
|
|
|
|
|
|
|
|
2001-04-17 18:12:46 +00:00
|
|
|
<!-- ##### FUNCTION gtk_decorated_window_init ##### -->
|
2001-03-23 22:21:06 +00:00
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@window:
|
|
|
|
|
|
|
|
|
2001-04-17 18:12:46 +00:00
|
|
|
<!-- ##### FUNCTION gtk_decorated_window_calculate_frame_size ##### -->
|
2001-03-23 22:21:06 +00:00
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@window:
|
|
|
|
|
|
|
|
|
2001-04-17 18:12:46 +00:00
|
|
|
<!-- ##### FUNCTION gtk_decorated_window_set_title ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@window:
|
|
|
|
@title:
|
|
|
|
|
|
|
|
|
|
|
|
<!-- ##### FUNCTION gtk_decorated_window_move_resize_window ##### -->
|
2001-03-23 22:21:06 +00:00
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@window:
|
2001-04-17 18:12:46 +00:00
|
|
|
@x:
|
|
|
|
@y:
|
|
|
|
@width:
|
|
|
|
@height:
|
2001-03-23 22:21:06 +00:00
|
|
|
|
|
|
|
|
2001-04-18 22:21:45 +00:00
|
|
|
<!-- ##### SIGNAL GtkWindow::activate-default ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@window: the object which received the signal.
|
|
|
|
|
|
|
|
<!-- ##### SIGNAL GtkWindow::activate-focus ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@window: the object which received the signal.
|
|
|
|
|
2001-01-31 03:51:14 +00:00
|
|
|
<!-- ##### SIGNAL GtkWindow::frame-event ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@window: the object which received the signal.
|
|
|
|
@event:
|
|
|
|
@Returns:
|
|
|
|
|
2001-04-18 22:21:45 +00:00
|
|
|
<!-- ##### SIGNAL GtkWindow::move-focus ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@window: the object which received the signal.
|
|
|
|
@arg1:
|
|
|
|
|
1999-08-16 18:51:52 +00:00
|
|
|
<!-- ##### SIGNAL GtkWindow::set-focus ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
|
|
|
@window: the object which received the signal.
|
|
|
|
@widget:
|
|
|
|
|
|
|
|
<!-- ##### ARG GtkWindow:type ##### -->
|
|
|
|
<para>
|
|
|
|
The type of the window.
|
|
|
|
</para>
|
|
|
|
|
|
|
|
<!-- ##### ARG GtkWindow:title ##### -->
|
|
|
|
<para>
|
|
|
|
The title of the window.
|
|
|
|
</para>
|
|
|
|
|
2001-01-09 16:41:17 +00:00
|
|
|
<!-- ##### ARG GtkWindow:auto-shrink ##### -->
|
1999-08-16 18:51:52 +00:00
|
|
|
<para>
|
|
|
|
If the window shrinks automatically when widgets within it shrink.
|
|
|
|
</para>
|
|
|
|
|
2001-01-09 16:41:17 +00:00
|
|
|
<!-- ##### ARG GtkWindow:allow-shrink ##### -->
|
1999-08-16 18:51:52 +00:00
|
|
|
<para>
|
|
|
|
If the window can be resized to a smaller size by the user.
|
|
|
|
</para>
|
|
|
|
|
2001-01-09 16:41:17 +00:00
|
|
|
<!-- ##### ARG GtkWindow:allow-grow ##### -->
|
1999-08-16 18:51:52 +00:00
|
|
|
<para>
|
|
|
|
If the window can be resized to a larger size by the user.
|
|
|
|
</para>
|
|
|
|
|
2001-06-28 05:24:00 +00:00
|
|
|
<!-- ##### ARG GtkWindow:resizable ##### -->
|
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
1999-08-16 18:51:52 +00:00
|
|
|
<!-- ##### ARG GtkWindow:modal ##### -->
|
|
|
|
<para>
|
|
|
|
If the window is modal, i.e. it grabs all GTK+ events.
|
|
|
|
</para>
|
|
|
|
|
2001-01-09 16:41:17 +00:00
|
|
|
<!-- ##### ARG GtkWindow:window-position ##### -->
|
1999-08-16 18:51:52 +00:00
|
|
|
<para>
|
|
|
|
The position of the window.
|
|
|
|
</para>
|
|
|
|
|
2001-01-09 16:41:17 +00:00
|
|
|
<!-- ##### ARG GtkWindow:default-width ##### -->
|
2000-09-07 18:17:06 +00:00
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
2001-01-09 16:41:17 +00:00
|
|
|
<!-- ##### ARG GtkWindow:default-height ##### -->
|
2000-09-07 18:17:06 +00:00
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|
2001-01-09 16:41:17 +00:00
|
|
|
<!-- ##### ARG GtkWindow:destroy-with-parent ##### -->
|
2000-10-20 23:14:41 +00:00
|
|
|
<para>
|
|
|
|
|
|
|
|
</para>
|
|
|
|
|