en/Gtk/Window.xml: Nearly all methods documented.

en/Gtk/Widget.xml: SizeRequest method documented.

svn path=/trunk/gtk-sharp/; revision=18210
This commit is contained in:
Hector E. Gomez Morales 2003-09-20 08:04:11 +00:00
parent 0f39800bff
commit 255e87a7c7
3 changed files with 287 additions and 174 deletions

View file

@ -1,3 +1,8 @@
2003-09-20 Hector E. Gomez Morales <hgomez_36@flashmail.com>
* en/Gtk/Window.xml: Nearly all methods documented.
* en/Gtk/Widget.xml: SizeRequest method documented.
2003-09-20 John Luke <jluke@cfl.rr.com> 2003-09-20 John Luke <jluke@cfl.rr.com>
* en/Gnome/AppBar.xml: documented * en/Gnome/AppBar.xml: documented

View file

@ -2705,10 +2705,17 @@
<Parameter Name="requisition" Type="Gtk.Requisition&amp;" RefType="out" /> <Parameter Name="requisition" Type="Gtk.Requisition&amp;" RefType="out" />
</Parameters> </Parameters>
<Docs> <Docs>
<summary>To be added</summary> <summary>Obtains the preferred size of a <paramref name="widget" />.</summary>
<param name="requisition">a <see cref="T:Gtk.Requisition&amp;" /></param> <param name="requisition">A <see cref="T:Gtk.Requisition" /> to be filled in.</param>
<remarks>To be added</remarks> <remarks>
<para>
The container uses this information to arrange its child widgets and decide what size allocations to give them with <see cref="M:Gtk.Widget.SizeAllocate" />. You can also call this function from an application, with some caveats. Most notably, getting a size request requires the widget to be associated with a screen, because font information may be needed. Multihead-aware applications should keep this in mind.
</para>
<para>
This function is typically used when implementing a <see cref="T:Gtk.Container" /> subclass. Also remember that the size request is not necessarily the size a widget will actually be allocated.
</para>
</remarks>
</Docs> </Docs>
</Member> </Member>
</Members> </Members>
</Type> </Type>

View file

@ -40,8 +40,8 @@
<summary>Returns a list of all existing toplevel windows.</summary> <summary>Returns a list of all existing toplevel windows.</summary>
<returns>List of toplevel widgets.</returns> <returns>List of toplevel widgets.</returns>
<remarks> <remarks>
<para> <para>
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, <see langword="null" />) first, and then unref all the widgets afterwards. 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, <see langword="null" />) first, and then unref all the widgets afterwards.
</para> </para>
</remarks> </remarks>
</Docs> </Docs>
@ -65,8 +65,8 @@
<param name="root_y">Y position where the user clicked to initiate the drag.</param> <param name="root_y">Y position where the user clicked to initiate the drag.</param>
<param name="timestamp">Timestamp from the click event that initiated the drag.</param> <param name="timestamp">Timestamp from the click event that initiated the drag.</param>
<remarks> <remarks>
<para> <para>
This method 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 or windowing system. Otherwise, GDK will try to emulate window movement, potentially not all that well, depending on the windowing system. This method 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 or windowing system. Otherwise, GDK will try to emulate window movement, potentially not all that well, depending on the windowing system.
</para> </para>
</remarks> </remarks>
</Docs> </Docs>
@ -90,12 +90,12 @@
<param name="right">Location to store the width of the frame at the returns, or <see langword="null" />.</param> <param name="right">Location to store the width of the frame at the returns, or <see langword="null" />.</param>
<param name="bottom">Location to store the height of the frame at the bottom, or <see langword="null" />.</param> <param name="bottom">Location to store the height of the frame at the bottom, or <see langword="null" />.</param>
<remarks> <remarks>
<para> <para>
It will not return the size of the window border drawn by the window manager, which is the normal case when using a windowing system. See <see cref="M:Gdk.Window.GetFrameExtents" /> to get the standard window border extents.) See also <see cref="P:Gtk.Window.HasFrame" />, <see cref="M:Gtk.Window.SetFrameDimensions" />. It will not return the size of the window border drawn by the window manager, which is the normal case when using a windowing system. See <see cref="M:Gdk.Window.GetFrameExtents" /> to get the standard window border extents.) See also <see cref="P:Gtk.Window.HasFrame" />, <see cref="M:Gtk.Window.SetFrameDimensions" />.
</para>
<para>
Note: this is a special-purpose function intended for the framebuffer port; see <see cref="M:Gtk.Window.SetFrameDimensions" />.
</para> </para>
<para>
Note: this is a special-purpose function intended for the framebuffer port; see <see cref="M:Gtk.Window.SetFrameDimensions" />.
</para>
</remarks> </remarks>
</Docs> </Docs>
</Member> </Member>
@ -109,11 +109,11 @@
<Docs> <Docs>
<summary>Asks to iconify (i.e. minimize) the specified <paramref name="window" />.</summary> <summary>Asks to iconify (i.e. minimize) the specified <paramref name="window" />.</summary>
<remarks> <remarks>
<para> <para>
Note that you shouldn't assume the window is definitely iconified afterward, because other entities (e.g. the user or window manager) 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 do not write code that crashes if not. Note that you shouldn't assume the window is definitely iconified afterward, because other entities (e.g. the user or window manager) 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 do not write code that crashes if not.
</para> </para>
<para> <para>
You can track iconification via the <see cref="F:Gtk.Widget.WindowStateEvent" /> signal on <see cref="T:Gtk.Widget" />. You can track iconification via the <see cref="F:Gtk.Widget.WindowStateEvent" /> signal on <see cref="T:Gtk.Widget" />.
</para> </para>
</remarks> </remarks>
</Docs> </Docs>
@ -128,12 +128,12 @@
<Docs> <Docs>
<summary>Asks to unstick window, which means that it will appear on only one of the user's desktops.</summary> <summary>Asks to unstick window, which means that it will appear on only one of the user's desktops.</summary>
<remarks> <remarks>
<para> <para>
Note that you shouldn't assume the window is definitely unstuck afterward, because other entities (e.g. the user or window manager) could stick it again. But normally the window will end up stuck. Just do not write code that crashes if not. Note that you shouldn't assume the window is definitely unstuck afterward, because other entities (e.g. the user or window manager) could stick it again. But normally the window will end up stuck. Just do not write code that crashes if not.
</para>
<para>
You can track stickiness via the <see cref="F:Gtk.Widget.WindowStateEvent" /> signal on <see cref="T:Gtk.Widget" />.
</para> </para>
<para>
You can track stickiness via the <see cref="F:Gtk.Widget.WindowStateEvent" /> signal on <see cref="T:Gtk.Widget" />.
</para>
</remarks> </remarks>
</Docs> </Docs>
</Member> </Member>
@ -147,12 +147,12 @@
<Docs> <Docs>
<summary>Asks to unmaximize <paramref name="window" />.</summary> <summary>Asks to unmaximize <paramref name="window" />.</summary>
<remarks> <remarks>
<para> <para>
Note that you shouldn't assume the window is definitely unmaximized afterward, because other entities (e.g. the user or window manager) 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. Note that you shouldn't assume the window is definitely unmaximized afterward, because other entities (e.g. the user or window manager) 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.
</para> </para>
<para> <para>
You can track maximization via the <see cref="F:Gtk.Widget.WindowStateEvent" /> signal on <see cref="T:Gtk.Widget" />. You can track maximization via the <see cref="F:Gtk.Widget.WindowStateEvent" /> signal on <see cref="T:Gtk.Widget" />.
</para> </para>
</remarks> </remarks>
</Docs> </Docs>
</Member> </Member>
@ -171,12 +171,12 @@
<param name="width">Return location for width, or <see langword="null" />.</param> <param name="width">Return location for width, or <see langword="null" />.</param>
<param name="height">Return location for height, or <see langword="null" />.</param> <param name="height">Return location for height, or <see langword="null" />.</param>
<remarks> <remarks>
<para> <para>
If window is not onscreen, it returns the size GTK+ will suggest to the window manager for the initial window size (but this is not reliably the same as the size the window manager will actually select). The size obtained by <see cref="M:Gtk.Window.GetSize" /> is the last size received in a GdkEventConfigure, that is, GTK+ uses its locally-stored size, rather than querying the X server for the size. As a result, if you call <see cref="M:Gtk.Window.Resize" /> then immediately call <see cref="M:Gtk.Window.GetSize" />, the size would not have taken effect yet. After the window manager processes the resize request, GTK+ receives notification that the size has changed via a configure event, and the size of the window gets updated. If window is not onscreen, it returns the size GTK+ will suggest to the window manager for the initial window size (but this is not reliably the same as the size the window manager will actually select). The size obtained by <see cref="M:Gtk.Window.GetSize" /> is the last size received in a GdkEventConfigure, that is, GTK+ uses its locally-stored size, rather than querying the X server for the size. As a result, if you call <see cref="M:Gtk.Window.Resize" /> then immediately call <see cref="M:Gtk.Window.GetSize" />, the size would not have taken effect yet. After the window manager processes the resize request, GTK+ receives notification that the size has changed via a configure event, and the size of the window gets updated.
</para> </para>
<para> <para>
Note 1: Nearly any use of this function creates a race condition, because the size of the window may change between the time that you get the size and the time that you perform some action assuming that size is the current size. To avoid race conditions, connect to <see cref="F:Gtk.Widget.ConfigureEvent" /> on the window and adjust your size-dependent state to match the size delivered in the GdkEventConfigure. Note 1: Nearly any use of this function creates a race condition, because the size of the window may change between the time that you get the size and the time that you perform some action assuming that size is the current size. To avoid race conditions, connect to <see cref="F:Gtk.Widget.ConfigureEvent" /> on the window and adjust your size-dependent state to match the size delivered in the GdkEventConfigure.
</para> </para>
</remarks> </remarks>
</Docs> </Docs>
</Member> </Member>
@ -195,9 +195,9 @@
<param name="width">Location to store the default width, or <see langword="null" />.</param> <param name="width">Location to store the default width, or <see langword="null" />.</param>
<param name="height">Location to store the default height, or <see langword="null" />.</param> <param name="height">Location to store the default height, or <see langword="null" />.</param>
<remarks> <remarks>
<para> <para>
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. 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.
</para> </para>
</remarks> </remarks>
</Docs> </Docs>
</Member> </Member>
@ -212,10 +212,17 @@
<Parameter Name="height" Type="System.Int32" /> <Parameter Name="height" Type="System.Int32" />
</Parameters> </Parameters>
<Docs> <Docs>
<summary>To be added</summary> <summary>Resizes the window as if the user had done so, obeying geometry constraints.</summary>
<param name="width">an object of type <see cref="T:System.Int32" /></param> <param name="width">Width in pixels to resize the window to.</param>
<param name="height">an object of type <see cref="T:System.Int32" /></param> <param name="height">Height in pixels to resize the window to.</param>
<remarks>To be added</remarks> <remarks>
<para>
The default geometry constraint is that windows may not be smaller than their size request; to override this constraint, call <see cref="M:Gtk.Widget.SetSizeRequest" /> to set the window's request to a smaller value.
</para>
<para>
If <see cref="M:Gtk.Window.Resize" /> is called before showing a window for the first time, it overrides any default size set with <see cref="M:Gtk.Window.SetDefaultSize" />. Windows may not be resized smaller than 1 by 1 pixels.
</para>
</remarks>
</Docs> </Docs>
</Member> </Member>
<Member MemberName="ActivateFocus"> <Member MemberName="ActivateFocus">
@ -226,9 +233,9 @@
</ReturnValue> </ReturnValue>
<Parameters /> <Parameters />
<Docs> <Docs>
<summary>To be added</summary> <summary>Activates the current focused widget within the window.</summary>
<returns>an object of type <see cref="T:System.Boolean" /></returns> <returns><see langword="true" /> if a widget got activated.</returns>
<remarks>To be added</remarks> <remarks />
</Docs> </Docs>
</Member> </Member>
<Member MemberName="ParseGeometry"> <Member MemberName="ParseGeometry">
@ -241,10 +248,23 @@
<Parameter Name="geometry" Type="System.String" /> <Parameter Name="geometry" Type="System.String" />
</Parameters> </Parameters>
<Docs> <Docs>
<summary>To be added</summary> <summary>Parses a standard X Window System geometry string.</summary>
<param name="geometry">an object of type <see cref="T:System.String" /></param> <param name="geometry"></param>
<returns>an object of type <see cref="T:System.Boolean" /></returns> <returns><see langword="true" /> if string was parsed successfully.</returns>
<remarks>To be added</remarks> <remarks>
<para>
<see cref="M:Gtk.Window.ParseGeometry" /> does work on all GTK+ ports including Win32 but is primarily intended for an X environment.
</para>
<para>
If either a size or a position can be extracted from the geometry string, <see cref="M:Gtk.Window.ParseGeometry" /> returns <see langword="true" /> and calls <see cref="M:Gtk.Window.SetDefaultSize" /> and/or <see cref="M:Gtk.Window.Move" /> to resize/move the window.
</para>
<para>
If <see cref="M:Gtk.Window.ParseGeometry" /> returns <see langword="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.
</para>
<para>
Note that for <see cref="M:Gtk.Window.ParseGeometry" /> to work as expected, it has to be called when the window has its "final" size, i.e. after calling <see cref="M:Gtk.Widget.ShowAll" /> on the contents and <see cref="M:Gtk.Window.SetGeometryHints" /> on the window.
</para>
</remarks>
</Docs> </Docs>
</Member> </Member>
<Member MemberName="RemoveAccelGroup"> <Member MemberName="RemoveAccelGroup">
@ -257,9 +277,9 @@
<Parameter Name="accel_group" Type="Gtk.AccelGroup" /> <Parameter Name="accel_group" Type="Gtk.AccelGroup" />
</Parameters> </Parameters>
<Docs> <Docs>
<summary>To be added</summary> <summary>Reverses the effects of <see cref="M:Gtk.Window.AddAccelGroup" />.</summary>
<param name="accel_group">an object of type <see cref="T:Gtk.AccelGroup" /></param> <param name="accel_group">A <see cref="T:Gtk.AccelGroup" />.</param>
<remarks>To be added</remarks> <remarks />
</Docs> </Docs>
</Member> </Member>
<Member MemberName="Stick"> <Member MemberName="Stick">
@ -270,8 +290,15 @@
</ReturnValue> </ReturnValue>
<Parameters /> <Parameters />
<Docs> <Docs>
<summary>To be added</summary> <summary>Asks to stick <paramref name="window" />, which means that it will appear on all user desktops.</summary>
<remarks>To be added</remarks> <remarks>
<para>
Note that you shouldn't assume the window is definitely stuck afterward, because other entities (e.g. the user or window manager) 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.
</para>
<para>
You can track stickiness via the <see cref="F:Gtk.Widget.WindowStateEvent" /> signal on GtkWidget. It's permitted to call this function before showing a window.
</para>
</remarks>
</Docs> </Docs>
</Member> </Member>
<Member MemberName="SetFrameDimensions"> <Member MemberName="SetFrameDimensions">
@ -287,12 +314,16 @@
<Parameter Name="bottom" Type="System.Int32" /> <Parameter Name="bottom" Type="System.Int32" />
</Parameters> </Parameters>
<Docs> <Docs>
<summary>To be added</summary> <summary>For windows with frames (see <see cref="P:Gtk.Window.HasFrame" />) this function can be used to change the size of the frame border.</summary>
<param name="left">an object of type <see cref="T:System.Int32" /></param> <param name="left">The width of the left border.</param>
<param name="top">an object of type <see cref="T:System.Int32" /></param> <param name="top">The height of the top border.</param>
<param name="right">an object of type <see cref="T:System.Int32" /></param> <param name="right">The width of the right border.</param>
<param name="bottom">an object of type <see cref="T:System.Int32" /></param> <param name="bottom">The height of the bottom border.</param>
<remarks>To be added</remarks> <remarks>
<para>
Note: this is a special-purpose function intended for the framebuffer port; see <see cref="P:Gtk.Window.HasFrame" />. It will have no effect on the window border drawn by the window manager, which is the normal case when using the X Window system.
</para>
</remarks>
</Docs> </Docs>
</Member> </Member>
<Member MemberName="AddMnemonic"> <Member MemberName="AddMnemonic">
@ -306,10 +337,10 @@
<Parameter Name="target" Type="Gtk.Widget" /> <Parameter Name="target" Type="Gtk.Widget" />
</Parameters> </Parameters>
<Docs> <Docs>
<summary>To be added</summary> <summary>Adds a mnemonic to this <paramref name="window" />.</summary>
<param name="keyval">an object of type <see cref="T:System.UInt32" /></param> <param name="keyval">The mnemonic.</param>
<param name="target">an object of type <see cref="T:System.Widget" /></param> <param name="target">The widget that gets activated by the mnemonic.</param>
<remarks>To be added</remarks> <remarks />
</Docs> </Docs>
</Member> </Member>
<Member MemberName="BeginResizeDrag"> <Member MemberName="BeginResizeDrag">
@ -326,13 +357,17 @@
<Parameter Name="timestamp" Type="System.UInt32" /> <Parameter Name="timestamp" Type="System.UInt32" />
</Parameters> </Parameters>
<Docs> <Docs>
<summary>To be added</summary> <summary>Starts resizing a <paramref name="window" />.</summary>
<param name="edge">an object of type <see cref="T:Gdk.WindowEdge" /></param> <param name="edge">Position of the resize control.</param>
<param name="button">an object of type <see cref="T:System.Int32" /></param> <param name="button">Mouse button that initiated the drag.</param>
<param name="root_x">an object of type <see cref="T:System.Int32" /></param> <param name="root_x">X position where the user clicked to initiate the drag, in root window coordinates.</param>
<param name="root_y">an object of type <see cref="T:System.Int32" /></param> <param name="root_y">Y position where the user clicked to initiate the drag</param>
<param name="timestamp">an object of type <see cref="T:System.UInt32" /></param> <param name="timestamp">Timestamp from the click event that initiated the drag.</param>
<remarks>To be added</remarks> <remarks>
<para>
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 or windowing system. Otherwise, GDK will try to emulate window resizing, potentially not all that well, depending on the windowing system.
</para>
</remarks>
</Docs> </Docs>
</Member> </Member>
<Member MemberName="GetPosition"> <Member MemberName="GetPosition">
@ -346,10 +381,26 @@
<Parameter Name="root_y" Type="System.Int32&amp;" RefType="out" /> <Parameter Name="root_y" Type="System.Int32&amp;" RefType="out" />
</Parameters> </Parameters>
<Docs> <Docs>
<summary>To be added</summary> <summary>This function returns the position you need to pass to <see cref="M:Gtk.Window.Move" /> to keep <paramref name="window" /> in its current position.</summary>
<param name="root_x">an object of type <see cref="T:System.Int32" /></param> <param name="root_x">Return location for X coordinate of gravity-determined reference point.</param>
<param name="root_y">an object of type <see cref="T:System.Int32" /></param> <param name="root_y">Return location for Y coordinate of gravity-determined reference point.</param>
<remarks>To be added</remarks> <remarks>
<para>
If you haven't changed the window gravity, its gravity will be GDK_GRAVITY_NORTH_WEST. This means that <see cref="M:Gtk.Window.GetPosition" /> gets the position of the top-left corner of the window manager frame for the window. <see cref="M:Gtk.Window.Move" /> sets the position of this same top-left corner.
</para>
<para>
<see cref="M:Gtk.Window.GetPosition" /> is not 100% reliable because the X Window System does not specify a way to obtain the geometry of the decorations placed on a window by the window manager. Thus GTK+ is using a "best guess" that works with most window managers.
</para>
<para>
Moreover, nearly all window managers are historically broken with respect to their handling of window gravity. So moving a window to its current position as returned by <see cref="M:Gtk.Window.GetPostion" /> tends to result in moving the window slightly. Window managers are slowly getting better over time.
</para>
<para>
If a window has gravity GDK_GRAVITY_STATIC the window manager frame is not relevant, and thus <see cref="M:Gtk.Window.GetPosition" /> 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.
</para>
<para>
If you are saving and restoring your application's window positions, you should know that it's impossible for applications to do this without getting it somewhat wrong because applications do not have sufficient knowledge of window manager state. The Correct Mechanism is to support the session management protocol (see the "GnomeClient" object in the GNOME libraries for example) and allow the window manager to save your window sizes and positions.
</para>
</remarks>
</Docs> </Docs>
</Member> </Member>
<Member MemberName="Deiconify"> <Member MemberName="Deiconify">
@ -360,8 +411,15 @@
</ReturnValue> </ReturnValue>
<Parameters /> <Parameters />
<Docs> <Docs>
<summary>To be added</summary> <summary>Asks to deiconify (i.e. unminimizw) the specified <paramref name="window" />.</summary>
<remarks>To be added</remarks> <remarks>
<para>
Note that you shouldn't assume the window is definitely deiconified afterward, because other entities (e.g. the user or window manager) could iconify it again before your code which assumes deiconification gets to run.
</para>
<para>
You can track iconification via the <see cref="F:Gtk.Widget.WindowStateEvent" /> signal on GtkWidget.
</para>
</remarks>
</Docs> </Docs>
</Member> </Member>
<Member MemberName="MnemonicActivate"> <Member MemberName="MnemonicActivate">
@ -375,11 +433,11 @@
<Parameter Name="modifier" Type="Gdk.ModifierType" /> <Parameter Name="modifier" Type="Gdk.ModifierType" />
</Parameters> </Parameters>
<Docs> <Docs>
<summary>To be added</summary> <summary>Activates the targets associated with the mnemonic.</summary>
<param name="keyval">an object of type <see cref="T:System.UInt32" /></param> <param name="keyval">The mnemonic.</param>
<param name="modifier">an object of type <see cref="T:Gdk.ModifierType" /></param> <param name="modifier">The modifiers.</param>
<returns>an object of type <see cref="T:System.Boolean" /></returns> <returns><see langword="true" /> if the activation is done.</returns>
<remarks>To be added</remarks> <remarks />
</Docs> </Docs>
</Member> </Member>
<Member MemberName="ActivateDefault"> <Member MemberName="ActivateDefault">
@ -390,9 +448,13 @@
</ReturnValue> </ReturnValue>
<Parameters /> <Parameters />
<Docs> <Docs>
<summary>To be added</summary> <summary>Activates the default <paramref name="widget" /> for the <paramref name="window" />.</summary>
<returns>an object of type <see cref="T:System.Boolean" /></returns> <returns><see langword="true" /> if a widget is activated.</returns>
<remarks>To be added</remarks> <remarks>
<para>
That is unless the current focused widget has been configured to receive the default (see <see cref="F:Gtk.WidgetFlags.ReceivesDefault" />) action in which case the case the focused widget is activated.
</para>
</remarks>
</Docs> </Docs>
</Member> </Member>
<Member MemberName="Maximize"> <Member MemberName="Maximize">
@ -403,8 +465,15 @@
</ReturnValue> </ReturnValue>
<Parameters /> <Parameters />
<Docs> <Docs>
<summary>To be added</summary> <summary>Asks to maximize <paramref name="window" />, so that it becomes full-screen.</summary>
<remarks>To be added</remarks> <remarks>
<para>
Note that you shouldn't assume the window is definitely maximized afterward, because other entities (e.g. the user or window manager) 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.
</para>
<para>
You can track maximization via the <see cref="F:Gtk.Widget.WindowStateEvent" /> signal on GtkWidget. It's permitted to call this function before showing a window, in which case the window will be maximized when it appears onscreen initially.
</para>
</remarks>
</Docs> </Docs>
</Member> </Member>
<Member MemberName="RemoveMnemonic"> <Member MemberName="RemoveMnemonic">
@ -418,10 +487,10 @@
<Parameter Name="target" Type="Gtk.Widget" /> <Parameter Name="target" Type="Gtk.Widget" />
</Parameters> </Parameters>
<Docs> <Docs>
<summary>To be added</summary> <summary>Removes a mnemonic from this <paramref name="window" />.</summary>
<param name="keyval">an object of type <see cref="T:System.UInt32" /></param> <param name="keyval">The mnemonic.</param>
<param name="target">an object of type <see cref="T:Gtk.Widget" /></param> <param name="target">The widget that gets activated by the mnemonic.</param>
<remarks>To be added</remarks> <remarks />
</Docs> </Docs>
</Member> </Member>
<Member MemberName="AddEmbeddedXid"> <Member MemberName="AddEmbeddedXid">
@ -450,10 +519,14 @@
<Parameter Name="wmclass_class" Type="System.String" /> <Parameter Name="wmclass_class" Type="System.String" />
</Parameters> </Parameters>
<Docs> <Docs>
<summary>To be added</summary> <summary>It sets the X Window System "class" and "name" hints for a <paramref name="window" />. (Don't use this function.)</summary>
<param name="wmclass_name">an object of type <see cref="T:System.String" /></param> <param name="wmclass_name">Window name hint.</param>
<param name="wmclass_class">an object of type <see cref="T:System.String" /></param> <param name="wmclass_class">Window class hint.</param>
<remarks>To be added</remarks> <remarks>
<para>
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 <see cref="P:Gtk.Window.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.
</para>
</remarks>
</Docs> </Docs>
</Member> </Member>
<Member MemberName="RemoveEmbeddedXid"> <Member MemberName="RemoveEmbeddedXid">
@ -483,18 +556,24 @@
</Parameters> </Parameters>
<Docs> <Docs>
<summary>Sets the default size of an object, with the specified width and height arguments.</summary> <summary>Sets the default size of an object, with the specified width and height arguments.</summary>
<param name="width">an object of type <see cref="T:System.Int32" /></param> <param name="width">Width in pixels, or -1 to unset the default width.</param>
<param name="height">an object of type <see cref="T:System.Int32" /></param> <param name="height">Height in pixels, or -1 to unset the default height.</param>
<remarks> <remarks>
<para> <para>
It is used for setting the default size an object will have. The first argument, 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 (<see cref="M:Gtk.Window.SetGeometryHints" /> can be used to set these explicitly), the default size will be clamped to the nearest permitted size.
int width, defines the default width of the object ( in pixels ). A similar situation </para>
happens with the second argument, int height. <para>
</para> Unlike <see cref="M:Gtk.Widget.SetSizeRequest" /> 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).
<para> </para>
It only affects the initial size of the Window, so the user can resizes it. If the <para>
Window is hidden and re-shown, it will remmeber the size it had before get hidding. For more control over a window's initial size and how resizing works, investigate <see cref="M:Gtk.Window.SetGeometryHints" />.
</para> </para>
<para>
For some uses, <see cref="M:Gtk.Window.Resize" /> is a more appropriate function. <see cref="M:Gtk.Window.Resize" /> changes the current size of the window, rather than the size to be used on initial display. <see cref="M:Gtk.Window.Resize" /> always affects the window itself, not the geometry widget.
</para>
<para>
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.
</para>
</remarks> </remarks>
</Docs> </Docs>
</Member> </Member>
@ -506,8 +585,15 @@
</ReturnValue> </ReturnValue>
<Parameters /> <Parameters />
<Docs> <Docs>
<summary>To be added</summary> <summary>Presents a <paramref name="window" /> to the user.</summary>
<remarks>To be added</remarks> <remarks>
<para>
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 <see cref="M:Gtk.Widget.Show" /> as well.
</para>
<para>
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 <see cref="M:Gtk.Window.Present" /> to move the already-open dialog where the user can see it.
</para>
</remarks>
</Docs> </Docs>
</Member> </Member>
<Member MemberName="ReshowWithInitialSize"> <Member MemberName="ReshowWithInitialSize">
@ -518,8 +604,12 @@
</ReturnValue> </ReturnValue>
<Parameters /> <Parameters />
<Docs> <Docs>
<summary>To be added</summary> <summary>Hides <paramref name="window" />, then reshows it, resetting the default size and position of the window.</summary>
<remarks>To be added</remarks> <remarks>
<para>
Used by GUI builders only.
</para>
</remarks>
</Docs> </Docs>
</Member> </Member>
<Member MemberName="Move"> <Member MemberName="Move">
@ -533,10 +623,23 @@
<Parameter Name="y" Type="System.Int32" /> <Parameter Name="y" Type="System.Int32" />
</Parameters> </Parameters>
<Docs> <Docs>
<summary>To be added</summary> <summary>Asks the window manager to move <paramref name="window" /> to the given position.</summary>
<param name="x">an object of type <see cref="T:System.Int32" /></param> <param name="x">X coordinate to move window to.</param>
<param name="y">an object of type <see cref="T:System.Int32" /></param> <param name="y">Y coordinate to move window to.</param>
<remarks>To be added</remarks> <remarks>
<para>
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.
</para>
<para>
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.
</para>
<para>
By default the gravity is GDK_GRAVITY_NORTH_WEST, so the reference point is simply the x, y supplied to <see cref="M:Gtk.Window.Move" />. The top-left corner of the window decorations (aka window frame or border) will be placed at <paramref name="x" />, <paramref name="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.
</para>
<para>
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.
</para>
</remarks>
</Docs> </Docs>
</Member> </Member>
<Member MemberName="SetPosition"> <Member MemberName="SetPosition">
@ -549,12 +652,12 @@
<Parameter Name="position" Type="Gtk.WindowPosition" /> <Parameter Name="position" Type="Gtk.WindowPosition" />
</Parameters> </Parameters>
<Docs> <Docs>
<summary>Sets the position for a Window, based on the Gtk.WindowPosition position argument.</summary> <summary>Sets the position constraint for a <paramref name="window" />.</summary>
<param name="position">To be added: an object of type 'Gtk.WindowPosition'</param> <param name="position">A position constraint.</param>
<remarks> <remarks>
<para> <para>
Is is used for placing the Window in some area, depending on the Gtk.WindowPosition position argument. Is is used for placing the window in some area, depending on the <paramref name="position" /> constraint.
</para> </para>
</remarks> </remarks>
</Docs> </Docs>
</Member> </Member>
@ -568,9 +671,13 @@
<Parameter Name="accel_group" Type="Gtk.AccelGroup" /> <Parameter Name="accel_group" Type="Gtk.AccelGroup" />
</Parameters> </Parameters>
<Docs> <Docs>
<summary>To be added</summary> <summary>Associate <paramref name="accel_group" /> with <paramref name="window" />.</summary>
<param name="accel_group">an object of type <see cref="T:Gtk.AccelGroup" /></param> <param name="accel_group">A <see cref="T:Gtk.AccelGroup" />.</param>
<remarks>To be added</remarks> <remarks>
<para>
Such that calling <see cref="T:Gtk.AccelGroupActivate" /> on <paramref name="window" /> will activate accelerators in <paramref name="accel_group" />.
</para>
</remarks>
</Docs> </Docs>
</Member> </Member>
<Member MemberName="SetGeometryHints"> <Member MemberName="SetGeometryHints">
@ -585,11 +692,15 @@
<Parameter Name="geom_mask" Type="Gdk.WindowHints" /> <Parameter Name="geom_mask" Type="Gdk.WindowHints" />
</Parameters> </Parameters>
<Docs> <Docs>
<summary>To be added</summary> <summary>This method sets up hints about how a <paramref name="window" /> can be resized by the user.</summary>
<param name="geometry_widget">an object of type <see cref="T:Gtk.Widget" /></param> <param name="geometry_widget">Widget the geometry hints will be applied to.</param>
<param name="geometry">an object of type <see cref="T:Gdk.Geometry" /></param> <param name="geometry">Struct containing geometry information.</param>
<param name="geom_mask">an object of type <see cref="T:Gdk.WindowHints" /></param> <param name="geom_mask">Mask indicating which struct fields should be paid attention to.</param>
<remarks>To be added</remarks> <remarks>
<para>
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 <see cref="T:Gdk.Geometry" />.
</para>
</remarks>
</Docs> </Docs>
</Member> </Member>
<Member MemberName="Finalize"> <Member MemberName="Finalize">
@ -616,7 +727,7 @@
<param name="raw">Pointer to the C object.</param> <param name="raw">Pointer to the C object.</param>
<returns>An instance of Window, wrapping the C object.</returns> <returns>An instance of Window, wrapping the C object.</returns>
<remarks> <remarks>
<para>This is an internal constructor, and should not be used by user code.</para> <para>This is an internal constructor, and should not be used by user code.</para>
</remarks> </remarks>
</Docs> </Docs>
</Member> </Member>
@ -628,15 +739,13 @@
<Parameter Name="type" Type="Gtk.WindowType" /> <Parameter Name="type" Type="Gtk.WindowType" />
</Parameters> </Parameters>
<Docs> <Docs>
<summary>Creates a new Window object, based on the Gtk.WindowType type argument.</summary> <summary>Creates a new Window object, based on the <paramref name="type" />.</summary>
<param name="type">an object of type <see cref="T:Gtk.WindowType" /></param> <param name="type">A <see cref="T:Gtk.WindowType" />.</param>
<returns>an object of type <see cref="T:Gtk.Window" /></returns> <returns>A <see cref="T:Gtk.Window" />.</returns>
<remarks> <remarks>
<para> <para>
Creates a new Window object, wich can be of type TopLevel ( most of the cases ) Creates a new Window object, wich can be of type TopLevel ( most of the cases ) or PopUp. Take care with the use of PopUp type, since it is not controlled by the window manager.
or PopUp. Take care with the use of PopUp type, since it is not controlled by the window </para>
manager.
</para>
</remarks> </remarks>
</Docs> </Docs>
</Member> </Member>
@ -659,15 +768,13 @@
<Parameter Name="title" Type="System.String" /> <Parameter Name="title" Type="System.String" />
</Parameters> </Parameters>
<Docs> <Docs>
<summary>Creates a new TopLevel Window object, with the specified string argument as the title.</summary> <summary>Creates a new TopLevel Window object, with <paramref name="string" /> as the title.</summary>
<param name="title">an object of type <see cref="T:System.String" /></param> <param name="title">A string.</param>
<returns>an object of type <see cref="T:Gtk.Window" /></returns> <returns>A <see cref="T:Gtk.Window" />.</returns>
<remarks> <remarks>
<para> <para>
Creates a new TopLevel Window object, using the string title argument to specify the Window title. Creates a new TopLevel Window object, using <paramref name="string" /> as the title. You get the same if you use the public Window ( Gtk.WindowType type ) constructor and later set the string Title property.
You get the same if you use the public Window ( Gtk.WindowType type ) constructor and later </para>
set the string Title property.
</para>
</remarks> </remarks>
</Docs> </Docs>
</Member> </Member>
@ -832,15 +939,15 @@
<Parameters></Parameters> <Parameters></Parameters>
<Docs> <Docs>
<summary>Sets if a Window will be decorated or not ( borderless ).</summary> <summary>Sets if a Window will be decorated or not ( borderless ).</summary>
<param name="value">an object of type <see cref="T:System.Boolean" /></param> <param name="value">A <see cref="T:System.Boolean" />.</param>
<returns>an object of type <see cref="T:System.Boolean" /></returns> <returns><see langword="true" /> to decorate the window or if the window has been set to have decorations.</returns>
<remarks> <remarks>
<para>With this property you control if a window will be decorated or not.</para> <para>
<para> With this property you control if a window will be decorated or not.
By default, windows are decorated with a title bar and resize controls. Some window managers </para>
allow to disable these decorations, creating a borderless Window. If you set this property as false, <para>
Gtk# will try to convince the window manager not to decorate the Window. By default, windows are decorated with a title bar and resize controls. Some window managers allow to disable these decorations, creating a borderless Window. If you set this property as false, Gtk# will try to convince the window manager not to decorate the Window.
</para> </para>
</remarks> </remarks>
</Docs> </Docs>
</Member> </Member>
@ -856,10 +963,9 @@
<param name="value">an object of type <see cref="T:System.Boolean" /></param> <param name="value">an object of type <see cref="T:System.Boolean" /></param>
<returns>an object of type <see cref="T:System.Boolean" /></returns> <returns>an object of type <see cref="T:System.Boolean" /></returns>
<remarks> <remarks>
<para> <para>
By default, windows are resizable, so you can change the size of them. But if you set this property By default, windows are resizable, so you can change the size of them. But if you set this property to false, the user won't be able to change the size of them.
to false, the user won't be able to change the size of them. </para>
</para>
</remarks> </remarks>
</Docs> </Docs>
</Member> </Member>
@ -875,10 +981,9 @@
<param name="value">an object of type <see cref="T:Gtk.WindowPosition" /></param> <param name="value">an object of type <see cref="T:Gtk.WindowPosition" /></param>
<returns>an object of type <see cref="T:Gtk.WindowPosition" /></returns> <returns>an object of type <see cref="T:Gtk.WindowPosition" /></returns>
<remarks> <remarks>
<para> <para>
This property will alow you to define where a Window must be displayed on the screen. This property will alow you to define where a Window must be displayed on the screen. It work with the Gtk.WindowPosition enum, soy maybe you should check it before use it.
It work with the Gtk.WindowPosition enum, soy maybe you should check it before use it. </para>
</para>
</remarks> </remarks>
</Docs> </Docs>
</Member> </Member>
@ -894,11 +999,9 @@
<param name="value">an object of type <see cref="T:System.Int32" /></param> <param name="value">an object of type <see cref="T:System.Int32" /></param>
<returns>an object of type <see cref="T:System.Int32" /></returns> <returns>an object of type <see cref="T:System.Int32" /></returns>
<remarks> <remarks>
<para> <para>
This property will allow you to define the default height for your Window. This property will allow you to define the default height for your Window. It only define the default one, so if the Window is resized, it won't be able to do anything.
It only define the default one, so if the Window is resized, it won't be able to do </para>
anything.
</para>
</remarks> </remarks>
</Docs> </Docs>
</Member> </Member>
@ -956,13 +1059,9 @@
<param name="value">an object of type <see cref="T:System.String" /></param> <param name="value">an object of type <see cref="T:System.String" /></param>
<returns>an object of type <see cref="T:System.String" /></returns> <returns>an object of type <see cref="T:System.String" /></returns>
<remarks> <remarks>
<para> <para>
This property will allow you to set the Window Title. The Title of a window This property will allow you to set the Window Title. The Title of a window will be displayed in its title bar. Since the title bar is rendered by the window managers on X Window System, the way it appears will depend on the user preferences. This title should help the users to distinguish a window from others opened. A good title will have the application name an the actual document, for example.
will be displayed in its title bar. Since the title bar is rendered by the window managers on </para>
X Window System, the way it appears will depend on the user preferences. This title should help
the users to distinguish a window from others opened. A good title will have the application name
an the actual document, for example.
</para>
</remarks> </remarks>
</Docs> </Docs>
</Member> </Member>
@ -1104,7 +1203,9 @@
<param name="gtype">GLib type for the type</param> <param name="gtype">GLib type for the type</param>
<returns>Creates a new instance of Window, using the GLib-provided type</returns> <returns>Creates a new instance of Window, using the GLib-provided type</returns>
<remarks> <remarks>
<para>This is a constructor used by derivative types of <see cref="T:Gtk.Window" /> that would have their own GLib type assigned to it. This is not typically used by C# code.</para> <para>
This is a constructor used by derivative types of <see cref="T:Gtk.Window" /> that would have their own GLib type assigned to it. This is not typically used by C# code.
</para>
</remarks> </remarks>
</Docs> </Docs>
</Member> </Member>
@ -1283,4 +1384,4 @@
</Docs> </Docs>
</Member> </Member>
</Members> </Members>
</Type> </Type>