GtkAspectFrame
GtkAspectFrame — A frame that constrains its child to a particular aspect ratio
Functions
| GtkWidget * | gtk_aspect_frame_new () |
| void | gtk_aspect_frame_set () |
Properties
| gboolean | obey-child | Read / Write |
| float | ratio | Read / Write |
| float | xalign | Read / Write |
| float | yalign | Read / Write |
Types and Values
| struct | GtkAspectFrame |
| struct | GtkAspectFrameClass |
Object Hierarchy
GObject
╰── GInitiallyUnowned
╰── GtkWidget
╰── GtkContainer
╰── GtkBin
╰── GtkFrame
╰── GtkAspectFrame
Implemented Interfaces
GtkAspectFrame implements AtkImplementorIface and GtkBuildable.
Includes
#include <gtk/gtk.h>
Description
The GtkAspectFrame 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. GtkAspectFrame derives from GtkFrame, so it can draw a label and a frame around the child. The frame will be “shrink-wrapped” to the size of the child.
CSS nodes
GtkAspectFrame uses a CSS node with name frame.
Functions
gtk_aspect_frame_new ()
GtkWidget * gtk_aspect_frame_new (const gchar *label,gfloat xalign,gfloat yalign,gfloat ratio,gboolean obey_child);
Create a new GtkAspectFrame.
Parameters
label | Label text. | [allow-none] |
xalign | Horizontal alignment of the child within the allocation of the GtkAspectFrame. This ranges from 0.0 (left aligned) to 1.0 (right aligned) | |
yalign | Vertical alignment of the child within the allocation of the GtkAspectFrame. This ranges from 0.0 (top aligned) to 1.0 (bottom aligned) | |
ratio | The desired aspect ratio. | |
obey_child | If |
Returns
the new GtkAspectFrame.
gtk_aspect_frame_set ()
void gtk_aspect_frame_set (GtkAspectFrame *aspect_frame,gfloat xalign,gfloat yalign,gfloat ratio,gboolean obey_child);
Set parameters for an existing GtkAspectFrame.
Parameters
aspect_frame | ||
xalign | Horizontal alignment of the child within the allocation of the GtkAspectFrame. This ranges from 0.0 (left aligned) to 1.0 (right aligned) | |
yalign | Vertical alignment of the child within the allocation of the GtkAspectFrame. This ranges from 0.0 (top aligned) to 1.0 (bottom aligned) | |
ratio | The desired aspect ratio. | |
obey_child | If |
Types and Values
struct GtkAspectFrame
struct GtkAspectFrame;
struct GtkAspectFrameClass
struct GtkAspectFrameClass {
GtkFrameClass parent_class;
};
Members
Property Details
The “obey-child” property
“obey-child” gboolean
Force aspect ratio to match that of the frame's child.
Owner: GtkAspectFrame
Flags: Read / Write
Default value: TRUE
The “ratio” property
“ratio” float
Aspect ratio if obey_child is FALSE.
Owner: GtkAspectFrame
Flags: Read / Write
Allowed values: [0.0001,10000]
Default value: 1
The “xalign” property
“xalign” float
X alignment of the child.
Owner: GtkAspectFrame
Flags: Read / Write
Allowed values: [0,1]
Default value: 0.5
The “yalign” property
“yalign” float
Y alignment of the child.
Owner: GtkAspectFrame
Flags: Read / Write
Allowed values: [0,1]
Default value: 0.5
© 2005–2020 The GNOME Project
Licensed under the GNU Lesser General Public License version 2.1 or later.
https://developer.gnome.org/gtk3/3.24/GtkAspectFrame.html