297 lines
14 KiB
HTML
297 lines
14 KiB
HTML
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||
<html>
|
||
<head>
|
||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||
<title>GtkFixed: GTK+ 3 Reference Manual</title>
|
||
<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot">
|
||
<link rel="home" href="index.html" title="GTK+ 3 Reference Manual">
|
||
<link rel="up" href="LayoutContainers.html" title="Layout Containers">
|
||
<link rel="prev" href="GtkAspectFrame.html" title="GtkAspectFrame">
|
||
<link rel="next" href="DisplayWidgets.html" title="Display Widgets">
|
||
<meta name="generator" content="GTK-Doc V1.33.1 (XML mode)">
|
||
<link rel="stylesheet" href="style.css" type="text/css">
|
||
</head>
|
||
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
|
||
<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
|
||
<td width="100%" align="left" class="shortcuts">
|
||
<a href="#" class="shortcut">Top</a><span id="nav_description"> <span class="dim">|</span>
|
||
<a href="#GtkFixed.description" class="shortcut">Description</a></span><span id="nav_hierarchy"> <span class="dim">|</span>
|
||
<a href="#GtkFixed.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_interfaces"> <span class="dim">|</span>
|
||
<a href="#GtkFixed.implemented-interfaces" class="shortcut">Implemented Interfaces</a></span><span id="nav_child_properties"> <span class="dim">|</span>
|
||
<a href="#GtkFixed.child-properties" class="shortcut">Child Properties</a></span>
|
||
</td>
|
||
<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
|
||
<td><a accesskey="u" href="LayoutContainers.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
|
||
<td><a accesskey="p" href="GtkAspectFrame.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
|
||
<td><a accesskey="n" href="DisplayWidgets.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
|
||
</tr></table>
|
||
<div class="refentry">
|
||
<a name="GtkFixed"></a><div class="titlepage"></div>
|
||
<div class="refnamediv"><table width="100%"><tr>
|
||
<td valign="top">
|
||
<h2><span class="refentrytitle"><a name="GtkFixed.top_of_page"></a>GtkFixed</span></h2>
|
||
<p>GtkFixed — A container which allows you to position
|
||
widgets at fixed coordinates</p>
|
||
</td>
|
||
<td class="gallery_image" valign="top" align="right"></td>
|
||
</tr></table></div>
|
||
<div class="refsect1">
|
||
<a name="GtkFixed.functions"></a><h2>Functions</h2>
|
||
<div class="informaltable"><table class="informaltable" width="100%" border="0">
|
||
<colgroup>
|
||
<col width="150px" class="functions_proto_type">
|
||
<col class="functions_proto_name">
|
||
</colgroup>
|
||
<tbody>
|
||
<tr>
|
||
<td class="function_type">
|
||
<a class="link" href="GtkWidget.html" title="GtkWidget"><span class="returnvalue">GtkWidget</span></a> *
|
||
</td>
|
||
<td class="function_name">
|
||
<a class="link" href="GtkFixed.html#gtk-fixed-new" title="gtk_fixed_new ()">gtk_fixed_new</a> <span class="c_punctuation">()</span>
|
||
</td>
|
||
</tr>
|
||
<tr>
|
||
<td class="function_type">
|
||
<span class="returnvalue">void</span>
|
||
</td>
|
||
<td class="function_name">
|
||
<a class="link" href="GtkFixed.html#gtk-fixed-put" title="gtk_fixed_put ()">gtk_fixed_put</a> <span class="c_punctuation">()</span>
|
||
</td>
|
||
</tr>
|
||
<tr>
|
||
<td class="function_type">
|
||
<span class="returnvalue">void</span>
|
||
</td>
|
||
<td class="function_name">
|
||
<a class="link" href="GtkFixed.html#gtk-fixed-move" title="gtk_fixed_move ()">gtk_fixed_move</a> <span class="c_punctuation">()</span>
|
||
</td>
|
||
</tr>
|
||
</tbody>
|
||
</table></div>
|
||
</div>
|
||
<div class="refsect1">
|
||
<a name="GtkFixed.child-properties"></a><h2>Child Properties</h2>
|
||
<div class="informaltable"><table class="informaltable" border="0">
|
||
<colgroup>
|
||
<col width="150px" class="child_properties_type">
|
||
<col width="300px" class="child_properties_name">
|
||
<col width="200px" class="child_properties_flags">
|
||
</colgroup>
|
||
<tbody>
|
||
<tr>
|
||
<td class="property_type"><span class="type">int</span></td>
|
||
<td class="property_name"><a class="link" href="GtkFixed.html#GtkFixed--c-x" title="The “x” child property">x</a></td>
|
||
<td class="property_flags">Read / Write</td>
|
||
</tr>
|
||
<tr>
|
||
<td class="property_type"><span class="type">int</span></td>
|
||
<td class="property_name"><a class="link" href="GtkFixed.html#GtkFixed--c-y" title="The “y” child property">y</a></td>
|
||
<td class="property_flags">Read / Write</td>
|
||
</tr>
|
||
</tbody>
|
||
</table></div>
|
||
</div>
|
||
<div class="refsect1">
|
||
<a name="GtkFixed.other"></a><h2>Types and Values</h2>
|
||
<div class="informaltable"><table class="informaltable" width="100%" border="0">
|
||
<colgroup>
|
||
<col width="150px" class="other_proto_type">
|
||
<col class="other_proto_name">
|
||
</colgroup>
|
||
<tbody><tr>
|
||
<td class="datatype_keyword">struct</td>
|
||
<td class="function_name"><a class="link" href="GtkFixed.html#GtkFixed-struct" title="struct GtkFixed">GtkFixed</a></td>
|
||
</tr></tbody>
|
||
</table></div>
|
||
</div>
|
||
<div class="refsect1">
|
||
<a name="GtkFixed.object-hierarchy"></a><h2>Object Hierarchy</h2>
|
||
<pre class="screen"> GObject
|
||
<span class="lineart">╰──</span> GInitiallyUnowned
|
||
<span class="lineart">╰──</span> <a class="link" href="GtkWidget.html" title="GtkWidget">GtkWidget</a>
|
||
<span class="lineart">╰──</span> <a class="link" href="GtkContainer.html" title="GtkContainer">GtkContainer</a>
|
||
<span class="lineart">╰──</span> GtkFixed
|
||
</pre>
|
||
</div>
|
||
<div class="refsect1">
|
||
<a name="GtkFixed.implemented-interfaces"></a><h2>Implemented Interfaces</h2>
|
||
<p>
|
||
GtkFixed implements
|
||
AtkImplementorIface and <a class="link" href="GtkBuildable.html" title="GtkBuildable">GtkBuildable</a>.</p>
|
||
</div>
|
||
<div class="refsect1">
|
||
<a name="GtkFixed.includes"></a><h2>Includes</h2>
|
||
<pre class="synopsis">#include <gtk/gtk.h>
|
||
</pre>
|
||
</div>
|
||
<div class="refsect1">
|
||
<a name="GtkFixed.description"></a><h2>Description</h2>
|
||
<p>The <a class="link" href="GtkFixed.html" title="GtkFixed"><span class="type">GtkFixed</span></a> widget is a container which can place child widgets
|
||
at fixed positions and with fixed sizes, given in pixels. <a class="link" href="GtkFixed.html" title="GtkFixed"><span class="type">GtkFixed</span></a>
|
||
performs no automatic layout management.</p>
|
||
<p>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 <a class="link" href="GtkFixed.html" title="GtkFixed"><span class="type">GtkFixed</span></a>, the following
|
||
things will result in truncated text, overlapping widgets, and
|
||
other display bugs:</p>
|
||
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
|
||
<li class="listitem"><p>Themes, which may change widget sizes.</p></li>
|
||
<li class="listitem"><p>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 a different OS that provides different fonts.</p></li>
|
||
<li class="listitem"><p>Translation of text into other languages changes its size. Also,
|
||
display of non-English text will use a different font in many
|
||
cases.</p></li>
|
||
</ul></div>
|
||
<p>In addition, <a class="link" href="GtkFixed.html" title="GtkFixed"><span class="type">GtkFixed</span></a> does not pay attention to text direction and thus may
|
||
produce unwanted results if your app is run under right-to-left languages
|
||
such as Hebrew or Arabic. That is: normally GTK+ will order containers
|
||
appropriately for the text direction, e.g. to put labels to the right of the
|
||
thing they label when using an RTL language, but it can’t do that with
|
||
<a class="link" href="GtkFixed.html" title="GtkFixed"><span class="type">GtkFixed</span></a>. So if you need to reorder widgets depending on the text direction,
|
||
you would need to manually detect it and adjust child positions accordingly.</p>
|
||
<p>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.</p>
|
||
<p>If you know none of these things are an issue for your application,
|
||
and prefer the simplicity of <a class="link" href="GtkFixed.html" title="GtkFixed"><span class="type">GtkFixed</span></a>, by all means use the
|
||
widget. But you should be aware of the tradeoffs.</p>
|
||
<p>See also <a class="link" href="GtkLayout.html" title="GtkLayout"><span class="type">GtkLayout</span></a>, which shares the ability to perform fixed positioning
|
||
of child widgets and additionally adds custom drawing and scrollability.</p>
|
||
</div>
|
||
<div class="refsect1">
|
||
<a name="GtkFixed.functions_details"></a><h2>Functions</h2>
|
||
<div class="refsect2">
|
||
<a name="gtk-fixed-new"></a><h3>gtk_fixed_new ()</h3>
|
||
<pre class="programlisting"><a class="link" href="GtkWidget.html" title="GtkWidget"><span class="returnvalue">GtkWidget</span></a> *
|
||
gtk_fixed_new (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
|
||
<p>Creates a new <a class="link" href="GtkFixed.html" title="GtkFixed"><span class="type">GtkFixed</span></a>.</p>
|
||
<div class="refsect3">
|
||
<a name="gtk-fixed-new.returns"></a><h4>Returns</h4>
|
||
<p> a new <a class="link" href="GtkFixed.html" title="GtkFixed"><span class="type">GtkFixed</span></a>.</p>
|
||
</div>
|
||
</div>
|
||
<hr>
|
||
<div class="refsect2">
|
||
<a name="gtk-fixed-put"></a><h3>gtk_fixed_put ()</h3>
|
||
<pre class="programlisting"><span class="returnvalue">void</span>
|
||
gtk_fixed_put (<em class="parameter"><code><a class="link" href="GtkFixed.html" title="GtkFixed"><span class="type">GtkFixed</span></a> *fixed</code></em>,
|
||
<em class="parameter"><code><a class="link" href="GtkWidget.html" title="GtkWidget"><span class="type">GtkWidget</span></a> *widget</code></em>,
|
||
<em class="parameter"><code><span class="type">gint</span> x</code></em>,
|
||
<em class="parameter"><code><span class="type">gint</span> y</code></em>);</pre>
|
||
<p>Adds a widget to a <a class="link" href="GtkFixed.html" title="GtkFixed"><span class="type">GtkFixed</span></a> container at the given position.</p>
|
||
<div class="refsect3">
|
||
<a name="gtk-fixed-put.parameters"></a><h4>Parameters</h4>
|
||
<div class="informaltable"><table class="informaltable" width="100%" border="0">
|
||
<colgroup>
|
||
<col width="150px" class="parameters_name">
|
||
<col class="parameters_description">
|
||
<col width="200px" class="parameters_annotations">
|
||
</colgroup>
|
||
<tbody>
|
||
<tr>
|
||
<td class="parameter_name"><p>fixed</p></td>
|
||
<td class="parameter_description"><p>a <a class="link" href="GtkFixed.html" title="GtkFixed"><span class="type">GtkFixed</span></a>.</p></td>
|
||
<td class="parameter_annotations"> </td>
|
||
</tr>
|
||
<tr>
|
||
<td class="parameter_name"><p>widget</p></td>
|
||
<td class="parameter_description"><p>the widget to add.</p></td>
|
||
<td class="parameter_annotations"> </td>
|
||
</tr>
|
||
<tr>
|
||
<td class="parameter_name"><p>x</p></td>
|
||
<td class="parameter_description"><p>the horizontal position to place the widget at.</p></td>
|
||
<td class="parameter_annotations"> </td>
|
||
</tr>
|
||
<tr>
|
||
<td class="parameter_name"><p>y</p></td>
|
||
<td class="parameter_description"><p>the vertical position to place the widget at.</p></td>
|
||
<td class="parameter_annotations"> </td>
|
||
</tr>
|
||
</tbody>
|
||
</table></div>
|
||
</div>
|
||
</div>
|
||
<hr>
|
||
<div class="refsect2">
|
||
<a name="gtk-fixed-move"></a><h3>gtk_fixed_move ()</h3>
|
||
<pre class="programlisting"><span class="returnvalue">void</span>
|
||
gtk_fixed_move (<em class="parameter"><code><a class="link" href="GtkFixed.html" title="GtkFixed"><span class="type">GtkFixed</span></a> *fixed</code></em>,
|
||
<em class="parameter"><code><a class="link" href="GtkWidget.html" title="GtkWidget"><span class="type">GtkWidget</span></a> *widget</code></em>,
|
||
<em class="parameter"><code><span class="type">gint</span> x</code></em>,
|
||
<em class="parameter"><code><span class="type">gint</span> y</code></em>);</pre>
|
||
<p>Moves a child of a <a class="link" href="GtkFixed.html" title="GtkFixed"><span class="type">GtkFixed</span></a> container to the given position.</p>
|
||
<div class="refsect3">
|
||
<a name="gtk-fixed-move.parameters"></a><h4>Parameters</h4>
|
||
<div class="informaltable"><table class="informaltable" width="100%" border="0">
|
||
<colgroup>
|
||
<col width="150px" class="parameters_name">
|
||
<col class="parameters_description">
|
||
<col width="200px" class="parameters_annotations">
|
||
</colgroup>
|
||
<tbody>
|
||
<tr>
|
||
<td class="parameter_name"><p>fixed</p></td>
|
||
<td class="parameter_description"><p>a <a class="link" href="GtkFixed.html" title="GtkFixed"><span class="type">GtkFixed</span></a>.</p></td>
|
||
<td class="parameter_annotations"> </td>
|
||
</tr>
|
||
<tr>
|
||
<td class="parameter_name"><p>widget</p></td>
|
||
<td class="parameter_description"><p>the child widget.</p></td>
|
||
<td class="parameter_annotations"> </td>
|
||
</tr>
|
||
<tr>
|
||
<td class="parameter_name"><p>x</p></td>
|
||
<td class="parameter_description"><p>the horizontal position to move the widget to.</p></td>
|
||
<td class="parameter_annotations"> </td>
|
||
</tr>
|
||
<tr>
|
||
<td class="parameter_name"><p>y</p></td>
|
||
<td class="parameter_description"><p>the vertical position to move the widget to.</p></td>
|
||
<td class="parameter_annotations"> </td>
|
||
</tr>
|
||
</tbody>
|
||
</table></div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="refsect1">
|
||
<a name="GtkFixed.other_details"></a><h2>Types and Values</h2>
|
||
<div class="refsect2">
|
||
<a name="GtkFixed-struct"></a><h3>struct GtkFixed</h3>
|
||
<pre class="programlisting">struct GtkFixed;</pre>
|
||
</div>
|
||
</div>
|
||
<div class="refsect1">
|
||
<a name="GtkFixed.child-property-details"></a><h2>Child Property Details</h2>
|
||
<div class="refsect2">
|
||
<a name="GtkFixed--c-x"></a><h3>The <code class="literal">“x”</code> child property</h3>
|
||
<pre class="programlisting"> “x” <span class="type">int</span></pre>
|
||
<p>X position of child widget.</p>
|
||
<p>Owner: GtkFixed</p>
|
||
<p>Flags: Read / Write</p>
|
||
<p>Default value: 0</p>
|
||
</div>
|
||
<hr>
|
||
<div class="refsect2">
|
||
<a name="GtkFixed--c-y"></a><h3>The <code class="literal">“y”</code> child property</h3>
|
||
<pre class="programlisting"> “y” <span class="type">int</span></pre>
|
||
<p>Y position of child widget.</p>
|
||
<p>Owner: GtkFixed</p>
|
||
<p>Flags: Read / Write</p>
|
||
<p>Default value: 0</p>
|
||
</div>
|
||
</div>
|
||
<div class="refsect1">
|
||
<a name="GtkFixed.see-also"></a><h2>See Also</h2>
|
||
<p><a class="link" href="GtkLayout.html" title="GtkLayout"><span class="type">GtkLayout</span></a></p>
|
||
</div>
|
||
</div>
|
||
<div class="footer">
|
||
<hr>Generated by GTK-Doc V1.33.1</div>
|
||
</body>
|
||
</html> |