mirror of
https://gitlab.gnome.org/GNOME/gtk.git
synced 2025-01-15 23:00:08 +00:00
Move GtkFixed docs inline
Also remove incorrect documentation of opaque GtkFixed class struct.
This commit is contained in:
parent
2f207ca749
commit
2bd38dc7f5
1
docs/reference/gtk/tmpl/.gitignore
vendored
1
docs/reference/gtk/tmpl/.gitignore
vendored
@ -26,6 +26,7 @@ gtkenum.sgml
|
|||||||
gtkeventbox.sgml
|
gtkeventbox.sgml
|
||||||
gtkexpander.sgml
|
gtkexpander.sgml
|
||||||
gtkfeatures.sgml
|
gtkfeatures.sgml
|
||||||
|
gtkfixed.sgml
|
||||||
gtkhbox.sgml
|
gtkhbox.sgml
|
||||||
gtkiconview.sgml
|
gtkiconview.sgml
|
||||||
gtkimcontextsimple.sgml
|
gtkimcontextsimple.sgml
|
||||||
|
@ -1,133 +0,0 @@
|
|||||||
<!-- ##### SECTION Title ##### -->
|
|
||||||
GtkFixed
|
|
||||||
|
|
||||||
<!-- ##### SECTION Short_Description ##### -->
|
|
||||||
A container which allows you to position widgets at fixed coordinates
|
|
||||||
|
|
||||||
<!-- ##### SECTION Long_Description ##### -->
|
|
||||||
<para>
|
|
||||||
The #GtkFixed widget is a container which can place child widgets at fixed
|
|
||||||
positions and with fixed sizes, given in pixels. #GtkFixed performs no
|
|
||||||
automatic layout management.
|
|
||||||
</para>
|
|
||||||
|
|
||||||
<para>
|
|
||||||
For most applications, you should not use this container! It keeps
|
|
||||||
you from having to learn about the other GTK+ containers, but it
|
|
||||||
results in broken applications.
|
|
||||||
With #GtkFixed, the following things will result in truncated text,
|
|
||||||
overlapping widgets, and other display bugs:
|
|
||||||
<itemizedlist>
|
|
||||||
<listitem>
|
|
||||||
<para>Themes, which may change widget sizes.
|
|
||||||
</para>
|
|
||||||
</listitem>
|
|
||||||
<listitem>
|
|
||||||
<para>Fonts other than the one you used to write the app will of
|
|
||||||
course change the size of widgets containing text; keep in mind that
|
|
||||||
users may use a larger font because of difficulty reading the default,
|
|
||||||
or they may be using Windows or the framebuffer port of GTK+, where
|
|
||||||
different fonts are available.
|
|
||||||
</para>
|
|
||||||
</listitem>
|
|
||||||
<listitem>
|
|
||||||
<para>
|
|
||||||
Translation of text into other languages changes its size. Also,
|
|
||||||
display of non-English text will use a different font in many cases.
|
|
||||||
</para>
|
|
||||||
</listitem>
|
|
||||||
</itemizedlist>
|
|
||||||
</para>
|
|
||||||
|
|
||||||
<para>
|
|
||||||
In addition, the fixed widget can't properly be mirrored in
|
|
||||||
right-to-left languages such as Hebrew and Arabic. i.e. normally GTK+
|
|
||||||
will flip the interface to put labels to the right of the thing they
|
|
||||||
label, but it can't do that with #GtkFixed. So your application will
|
|
||||||
not be usable in right-to-left languages.
|
|
||||||
</para>
|
|
||||||
|
|
||||||
<para>
|
|
||||||
Finally, fixed positioning makes it kind of annoying to add/remove GUI
|
|
||||||
elements, since you have to reposition all the other elements. This is
|
|
||||||
a long-term maintenance problem for your application.
|
|
||||||
</para>
|
|
||||||
|
|
||||||
<para>
|
|
||||||
If you know none of these things are an issue for your application,
|
|
||||||
and prefer the simplicity of #GtkFixed, by all means use the
|
|
||||||
widget. But you should be aware of the tradeoffs.
|
|
||||||
</para>
|
|
||||||
|
|
||||||
<!-- ##### SECTION See_Also ##### -->
|
|
||||||
<para>
|
|
||||||
|
|
||||||
</para>
|
|
||||||
|
|
||||||
<!-- ##### SECTION Stability_Level ##### -->
|
|
||||||
|
|
||||||
|
|
||||||
<!-- ##### SECTION Image ##### -->
|
|
||||||
|
|
||||||
|
|
||||||
<!-- ##### STRUCT GtkFixed ##### -->
|
|
||||||
<para>
|
|
||||||
The #GtkFixed-struct struct contains the following fields.
|
|
||||||
(These fields should be considered read-only. They should never be set by
|
|
||||||
an application.)
|
|
||||||
|
|
||||||
<informaltable pgwide="1" frame="none" role="struct">
|
|
||||||
<tgroup cols="2"><colspec colwidth="2*"/><colspec colwidth="8*"/>
|
|
||||||
<tbody>
|
|
||||||
|
|
||||||
<row>
|
|
||||||
<entry>#GList *children;</entry>
|
|
||||||
<entry>a list of #GtkFixedChild elements, containing the child widgets and
|
|
||||||
their positions.</entry>
|
|
||||||
</row>
|
|
||||||
|
|
||||||
</tbody></tgroup></informaltable>
|
|
||||||
</para>
|
|
||||||
|
|
||||||
|
|
||||||
<!-- ##### ARG GtkFixed:x ##### -->
|
|
||||||
<para>
|
|
||||||
|
|
||||||
</para>
|
|
||||||
|
|
||||||
<!-- ##### ARG GtkFixed:y ##### -->
|
|
||||||
<para>
|
|
||||||
|
|
||||||
</para>
|
|
||||||
|
|
||||||
<!-- ##### FUNCTION gtk_fixed_new ##### -->
|
|
||||||
<para>
|
|
||||||
Creates a new #GtkFixed.
|
|
||||||
</para>
|
|
||||||
|
|
||||||
@void:
|
|
||||||
@Returns: a new #GtkFixed.
|
|
||||||
|
|
||||||
|
|
||||||
<!-- ##### FUNCTION gtk_fixed_put ##### -->
|
|
||||||
<para>
|
|
||||||
Adds a widget to a #GtkFixed container at the given position.
|
|
||||||
</para>
|
|
||||||
|
|
||||||
@fixed: a #GtkFixed.
|
|
||||||
@widget: the widget to add.
|
|
||||||
@x: the horizontal position to place the widget at.
|
|
||||||
@y: the vertical position to place the widget at.
|
|
||||||
|
|
||||||
|
|
||||||
<!-- ##### FUNCTION gtk_fixed_move ##### -->
|
|
||||||
<para>
|
|
||||||
Moves a child of a #GtkFixed container to the given position.
|
|
||||||
</para>
|
|
||||||
|
|
||||||
@fixed: a #GtkFixed.
|
|
||||||
@widget: the child widget.
|
|
||||||
@x: the horizontal position to move the widget to.
|
|
||||||
@y: the vertical position to move the widget to.
|
|
||||||
|
|
||||||
|
|
@ -24,6 +24,55 @@
|
|||||||
* GTK+ at ftp://ftp.gtk.org/pub/gtk/.
|
* GTK+ at ftp://ftp.gtk.org/pub/gtk/.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* SECTION:gtkfixed
|
||||||
|
* @Short_description: A container which allows you to position
|
||||||
|
* widgets at fixed coordinates
|
||||||
|
* @Title: GtkFixed
|
||||||
|
*
|
||||||
|
* The #GtkFixed widget is a container which can place child widgets
|
||||||
|
* at fixed positions and with fixed sizes, given in pixels. #GtkFixed
|
||||||
|
* performs no automatic layout management.
|
||||||
|
*
|
||||||
|
* For most applications, you should not use this container! It keeps
|
||||||
|
* you from having to learn about the other GTK+ containers, but it
|
||||||
|
* results in broken applications. With #GtkFixed, the following
|
||||||
|
* things will result in truncated text, overlapping widgets, and
|
||||||
|
* other display bugs:
|
||||||
|
* <itemizedlist>
|
||||||
|
* <listitem><para>
|
||||||
|
* Themes, which may change widget sizes.
|
||||||
|
* </para></listitem>
|
||||||
|
* <listitem><para>
|
||||||
|
* Fonts other than the one you used to write the app will of course
|
||||||
|
* change the size of widgets containing text; keep in mind that
|
||||||
|
* users may use a larger font because of difficulty reading the
|
||||||
|
* default, or they may be using Windows or the framebuffer port of
|
||||||
|
* GTK+, where different fonts are available.
|
||||||
|
* </para></listitem>
|
||||||
|
* <listitem><para>
|
||||||
|
* Translation of text into other languages changes its size. Also,
|
||||||
|
* display of non-English text will use a different font in many
|
||||||
|
* cases.
|
||||||
|
* </para></listitem>
|
||||||
|
* </itemizedlist>
|
||||||
|
*
|
||||||
|
* In addition, the fixed widget can't properly be mirrored in
|
||||||
|
* right-to-left languages such as Hebrew and Arabic. i.e. normally
|
||||||
|
* GTK+ will flip the interface to put labels to the right of the
|
||||||
|
* thing they label, but it can't do that with #GtkFixed. So your
|
||||||
|
* application will not be usable in right-to-left languages.
|
||||||
|
*
|
||||||
|
* Finally, fixed positioning makes it kind of annoying to add/remove
|
||||||
|
* GUI elements, since you have to reposition all the other
|
||||||
|
* elements. This is a long-term maintenance problem for your
|
||||||
|
* application.
|
||||||
|
*
|
||||||
|
* If you know none of these things are an issue for your application,
|
||||||
|
* and prefer the simplicity of #GtkFixed, by all means use the
|
||||||
|
* widget. But you should be aware of the tradeoffs.
|
||||||
|
*/
|
||||||
|
|
||||||
#include "config.h"
|
#include "config.h"
|
||||||
|
|
||||||
#include "gtkfixed.h"
|
#include "gtkfixed.h"
|
||||||
@ -132,6 +181,13 @@ gtk_fixed_init (GtkFixed *fixed)
|
|||||||
fixed->priv->children = NULL;
|
fixed->priv->children = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* gtk_fixed_new:
|
||||||
|
*
|
||||||
|
* Creates a new #GtkFixed.
|
||||||
|
*
|
||||||
|
* Returns: a new #GtkFixed.
|
||||||
|
*/
|
||||||
GtkWidget*
|
GtkWidget*
|
||||||
gtk_fixed_new (void)
|
gtk_fixed_new (void)
|
||||||
{
|
{
|
||||||
@ -158,6 +214,15 @@ get_child (GtkFixed *fixed,
|
|||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* gtk_fixed_put:
|
||||||
|
* @fixed: a #GtkFixed.
|
||||||
|
* @widget: the widget to add.
|
||||||
|
* @x: the horizontal position to place the widget at.
|
||||||
|
* @y: the vertical position to place the widget at.
|
||||||
|
*
|
||||||
|
* Adds a widget to a #GtkFixed container at the given position.
|
||||||
|
*/
|
||||||
void
|
void
|
||||||
gtk_fixed_put (GtkFixed *fixed,
|
gtk_fixed_put (GtkFixed *fixed,
|
||||||
GtkWidget *widget,
|
GtkWidget *widget,
|
||||||
@ -210,6 +275,15 @@ gtk_fixed_move_internal (GtkFixed *fixed,
|
|||||||
gtk_widget_queue_resize (GTK_WIDGET (fixed));
|
gtk_widget_queue_resize (GTK_WIDGET (fixed));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* gtk_fixed_move:
|
||||||
|
* @fixed: a #GtkFixed.
|
||||||
|
* @widget: the child widget.
|
||||||
|
* @x: the horizontal position to move the widget to.
|
||||||
|
* @y: the vertical position to move the widget to.
|
||||||
|
*
|
||||||
|
* Moves a child of a #GtkFixed container to the given position.
|
||||||
|
*/
|
||||||
void
|
void
|
||||||
gtk_fixed_move (GtkFixed *fixed,
|
gtk_fixed_move (GtkFixed *fixed,
|
||||||
GtkWidget *widget,
|
GtkWidget *widget,
|
||||||
|
Loading…
Reference in New Issue
Block a user