gtk3/docs/reference/gtk/html/GtkAspectFrame.html
2019-09-04 16:25:11 +01:00

332 lines
16 KiB
HTML
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>GtkAspectFrame: 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="gtk3-Orientable.html" title="GtkOrientable">
<link rel="next" href="GtkFixed.html" title="GtkFixed">
<meta name="generator" content="GTK-Doc V1.29 (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="#GtkAspectFrame.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
<a href="#GtkAspectFrame.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_interfaces">  <span class="dim">|</span> 
<a href="#GtkAspectFrame.implemented-interfaces" class="shortcut">Implemented Interfaces</a></span><span id="nav_properties">  <span class="dim">|</span> 
<a href="#GtkAspectFrame.properties" class="shortcut">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="gtk3-Orientable.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
<td><a accesskey="n" href="GtkFixed.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
</tr></table>
<div class="refentry">
<a name="GtkAspectFrame"></a><div class="titlepage"></div>
<div class="refnamediv"><table width="100%"><tr>
<td valign="top">
<h2><span class="refentrytitle"><a name="GtkAspectFrame.top_of_page"></a>GtkAspectFrame</span></h2>
<p>GtkAspectFrame — A frame that constrains its child to a particular aspect ratio</p>
</td>
<td class="gallery_image" valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
<a name="GtkAspectFrame.functions"></a><h2>Functions</h2>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="functions_return">
<col class="functions_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="GtkAspectFrame.html#gtk-aspect-frame-new" title="gtk_aspect_frame_new ()">gtk_aspect_frame_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="GtkAspectFrame.html#gtk-aspect-frame-set" title="gtk_aspect_frame_set ()">gtk_aspect_frame_set</a> <span class="c_punctuation">()</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect1">
<a name="GtkAspectFrame.properties"></a><h2>Properties</h2>
<div class="informaltable"><table class="informaltable" border="0">
<colgroup>
<col width="150px" class="properties_type">
<col width="300px" class="properties_name">
<col width="200px" class="properties_flags">
</colgroup>
<tbody>
<tr>
<td class="property_type"><span class="type">gboolean</span></td>
<td class="property_name"><a class="link" href="GtkAspectFrame.html#GtkAspectFrame--obey-child" title="The “obey-child” property">obey-child</a></td>
<td class="property_flags">Read / Write</td>
</tr>
<tr>
<td class="property_type"><span class="type">gfloat</span></td>
<td class="property_name"><a class="link" href="GtkAspectFrame.html#GtkAspectFrame--ratio" title="The “ratio” property">ratio</a></td>
<td class="property_flags">Read / Write</td>
</tr>
<tr>
<td class="property_type"><span class="type">gfloat</span></td>
<td class="property_name"><a class="link" href="GtkAspectFrame.html#GtkAspectFrame--xalign" title="The “xalign” property">xalign</a></td>
<td class="property_flags">Read / Write</td>
</tr>
<tr>
<td class="property_type"><span class="type">gfloat</span></td>
<td class="property_name"><a class="link" href="GtkAspectFrame.html#GtkAspectFrame--yalign" title="The “yalign” property">yalign</a></td>
<td class="property_flags">Read / Write</td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect1">
<a name="GtkAspectFrame.other"></a><h2>Types and Values</h2>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="name">
<col class="description">
</colgroup>
<tbody>
<tr>
<td class="datatype_keyword">struct</td>
<td class="function_name"><a class="link" href="GtkAspectFrame.html#GtkAspectFrame-struct" title="struct GtkAspectFrame">GtkAspectFrame</a></td>
</tr>
<tr>
<td class="datatype_keyword">struct</td>
<td class="function_name"><a class="link" href="GtkAspectFrame.html#GtkAspectFrameClass" title="struct GtkAspectFrameClass">GtkAspectFrameClass</a></td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect1">
<a name="GtkAspectFrame.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> <a class="link" href="GtkBin.html" title="GtkBin">GtkBin</a>
<span class="lineart">╰──</span> <a class="link" href="GtkFrame.html" title="GtkFrame">GtkFrame</a>
<span class="lineart">╰──</span> GtkAspectFrame
</pre>
</div>
<div class="refsect1">
<a name="GtkAspectFrame.implemented-interfaces"></a><h2>Implemented Interfaces</h2>
<p>
GtkAspectFrame implements
AtkImplementorIface and <a class="link" href="GtkBuildable.html" title="GtkBuildable">GtkBuildable</a>.</p>
</div>
<div class="refsect1">
<a name="GtkAspectFrame.includes"></a><h2>Includes</h2>
<pre class="synopsis">#include &lt;gtk/gtk.h&gt;
</pre>
</div>
<div class="refsect1">
<a name="GtkAspectFrame.description"></a><h2>Description</h2>
<p>The <a class="link" href="GtkAspectFrame.html" title="GtkAspectFrame"><span class="type">GtkAspectFrame</span></a> is useful when you want
pack a widget so that it can resize but always retains
the same aspect ratio. For instance, one might be
drawing a small preview of a larger image. <a class="link" href="GtkAspectFrame.html" title="GtkAspectFrame"><span class="type">GtkAspectFrame</span></a>
derives from <a class="link" href="GtkFrame.html" title="GtkFrame"><span class="type">GtkFrame</span></a>, so it can draw a label and
a frame around the child. The frame will be
“shrink-wrapped” to the size of the child.</p>
<div class="refsect2">
<a name="id-1.3.7.19.9.3"></a><h3>CSS nodes</h3>
<p>GtkAspectFrame uses a CSS node with name frame.</p>
</div>
</div>
<div class="refsect1">
<a name="GtkAspectFrame.functions_details"></a><h2>Functions</h2>
<div class="refsect2">
<a name="gtk-aspect-frame-new"></a><h3>gtk_aspect_frame_new ()</h3>
<pre class="programlisting"><a class="link" href="GtkWidget.html" title="GtkWidget"><span class="returnvalue">GtkWidget</span></a> *
gtk_aspect_frame_new (<em class="parameter"><code>const <span class="type">gchar</span> *label</code></em>,
<em class="parameter"><code><span class="type">gfloat</span> xalign</code></em>,
<em class="parameter"><code><span class="type">gfloat</span> yalign</code></em>,
<em class="parameter"><code><span class="type">gfloat</span> ratio</code></em>,
<em class="parameter"><code><span class="type">gboolean</span> obey_child</code></em>);</pre>
<p>Create a new <a class="link" href="GtkAspectFrame.html" title="GtkAspectFrame"><span class="type">GtkAspectFrame</span></a>.</p>
<div class="refsect3">
<a name="gtk-aspect-frame-new.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>label</p></td>
<td class="parameter_description"><p>Label text. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
</tr>
<tr>
<td class="parameter_name"><p>xalign</p></td>
<td class="parameter_description"><p>Horizontal alignment of the child within the allocation of
the <a class="link" href="GtkAspectFrame.html" title="GtkAspectFrame"><span class="type">GtkAspectFrame</span></a>. This ranges from 0.0 (left aligned)
to 1.0 (right aligned)</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>yalign</p></td>
<td class="parameter_description"><p>Vertical alignment of the child within the allocation of
the <a class="link" href="GtkAspectFrame.html" title="GtkAspectFrame"><span class="type">GtkAspectFrame</span></a>. This ranges from 0.0 (top aligned)
to 1.0 (bottom aligned)</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>ratio</p></td>
<td class="parameter_description"><p>The desired aspect ratio.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>obey_child</p></td>
<td class="parameter_description"><p>If <code class="literal">TRUE</code>, <em class="parameter"><code>ratio</code></em>
is ignored, and the aspect
ratio is taken from the requistion of the child.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gtk-aspect-frame-new.returns"></a><h4>Returns</h4>
<p> the new <a class="link" href="GtkAspectFrame.html" title="GtkAspectFrame"><span class="type">GtkAspectFrame</span></a>.</p>
</div>
</div>
<hr>
<div class="refsect2">
<a name="gtk-aspect-frame-set"></a><h3>gtk_aspect_frame_set ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gtk_aspect_frame_set (<em class="parameter"><code><a class="link" href="GtkAspectFrame.html" title="GtkAspectFrame"><span class="type">GtkAspectFrame</span></a> *aspect_frame</code></em>,
<em class="parameter"><code><span class="type">gfloat</span> xalign</code></em>,
<em class="parameter"><code><span class="type">gfloat</span> yalign</code></em>,
<em class="parameter"><code><span class="type">gfloat</span> ratio</code></em>,
<em class="parameter"><code><span class="type">gboolean</span> obey_child</code></em>);</pre>
<p>Set parameters for an existing <a class="link" href="GtkAspectFrame.html" title="GtkAspectFrame"><span class="type">GtkAspectFrame</span></a>.</p>
<div class="refsect3">
<a name="gtk-aspect-frame-set.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>aspect_frame</p></td>
<td class="parameter_description"><p>a <a class="link" href="GtkAspectFrame.html" title="GtkAspectFrame"><span class="type">GtkAspectFrame</span></a></p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>xalign</p></td>
<td class="parameter_description"><p>Horizontal alignment of the child within the allocation of
the <a class="link" href="GtkAspectFrame.html" title="GtkAspectFrame"><span class="type">GtkAspectFrame</span></a>. This ranges from 0.0 (left aligned)
to 1.0 (right aligned)</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>yalign</p></td>
<td class="parameter_description"><p>Vertical alignment of the child within the allocation of
the <a class="link" href="GtkAspectFrame.html" title="GtkAspectFrame"><span class="type">GtkAspectFrame</span></a>. This ranges from 0.0 (top aligned)
to 1.0 (bottom aligned)</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>ratio</p></td>
<td class="parameter_description"><p>The desired aspect ratio.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>obey_child</p></td>
<td class="parameter_description"><p>If <code class="literal">TRUE</code>, <em class="parameter"><code>ratio</code></em>
is ignored, and the aspect
ratio is taken from the requistion of the child.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
</div>
</div>
<div class="refsect1">
<a name="GtkAspectFrame.other_details"></a><h2>Types and Values</h2>
<div class="refsect2">
<a name="GtkAspectFrame-struct"></a><h3>struct GtkAspectFrame</h3>
<pre class="programlisting">struct GtkAspectFrame;</pre>
</div>
<hr>
<div class="refsect2">
<a name="GtkAspectFrameClass"></a><h3>struct GtkAspectFrameClass</h3>
<pre class="programlisting">struct GtkAspectFrameClass {
GtkFrameClass parent_class;
};
</pre>
<div class="refsect3">
<a name="GtkAspectFrameClass.members"></a><h4>Members</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="300px" class="struct_members_name">
<col class="struct_members_description">
<col width="200px" class="struct_members_annotations">
</colgroup>
<tbody></tbody>
</table></div>
</div>
</div>
</div>
<div class="refsect1">
<a name="GtkAspectFrame.property-details"></a><h2>Property Details</h2>
<div class="refsect2">
<a name="GtkAspectFrame--obey-child"></a><h3>The <code class="literal">“obey-child”</code> property</h3>
<pre class="programlisting"> “obey-child” <span class="type">gboolean</span></pre>
<p>Force aspect ratio to match that of the frame's child.</p>
<p>Flags: Read / Write</p>
<p>Default value: TRUE</p>
</div>
<hr>
<div class="refsect2">
<a name="GtkAspectFrame--ratio"></a><h3>The <code class="literal">“ratio”</code> property</h3>
<pre class="programlisting"> “ratio” <span class="type">gfloat</span></pre>
<p>Aspect ratio if obey_child is FALSE.</p>
<p>Flags: Read / Write</p>
<p>Allowed values: [0.0001,10000]</p>
<p>Default value: 1</p>
</div>
<hr>
<div class="refsect2">
<a name="GtkAspectFrame--xalign"></a><h3>The <code class="literal">“xalign”</code> property</h3>
<pre class="programlisting"> “xalign” <span class="type">gfloat</span></pre>
<p>X alignment of the child.</p>
<p>Flags: Read / Write</p>
<p>Allowed values: [0,1]</p>
<p>Default value: 0.5</p>
</div>
<hr>
<div class="refsect2">
<a name="GtkAspectFrame--yalign"></a><h3>The <code class="literal">“yalign”</code> property</h3>
<pre class="programlisting"> “yalign” <span class="type">gfloat</span></pre>
<p>Y alignment of the child.</p>
<p>Flags: Read / Write</p>
<p>Allowed values: [0,1]</p>
<p>Default value: 0.5</p>
</div>
</div>
</div>
<div class="footer">
<hr>Generated by GTK-Doc V1.29</div>
</body>
</html>