<?xml version="1.0"?>
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN"
               "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
<!ENTITY % local.common.attrib "xmlns:xi  CDATA  #FIXED 'http://www.w3.org/2003/XInclude'">
<!ENTITY version SYSTEM "version.xml">
<!ENTITY pi "&#960;">
<!ENTITY solidus "&#8260;">
]>
<refentry id="GtkShortcutsShortcut">
<refmeta>
<refentrytitle role="top_of_page" id="GtkShortcutsShortcut.top_of_page">GtkShortcutsShortcut</refentrytitle>
<manvolnum>3</manvolnum>
<refmiscinfo>GTK4 Library</refmiscinfo>
</refmeta>
<refnamediv>
<refname>GtkShortcutsShortcut</refname>
<refpurpose>Represents a keyboard shortcut in a GtkShortcutsWindow</refpurpose>
</refnamediv>

<refsect1 id="GtkShortcutsShortcut.properties" role="properties">
<title role="properties.title">Properties</title>
<informaltable frame="none">
<tgroup cols="3">
<colspec colname="properties_type" colwidth="150px"/>
<colspec colname="properties_name" colwidth="300px"/>
<colspec colname="properties_flags" colwidth="200px"/>
<tbody>
<row><entry role="property_type"><link linkend="GtkSizeGroup"><type>GtkSizeGroup</type></link>&#160;*</entry><entry role="property_name"><link linkend="GtkShortcutsShortcut--accel-size-group">accel-size-group</link></entry><entry role="property_flags">Write</entry></row>
<row><entry role="property_type"><link linkend="gchar"><type>gchar</type></link>&#160;*</entry><entry role="property_name"><link linkend="GtkShortcutsShortcut--accelerator">accelerator</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gchar"><type>gchar</type></link>&#160;*</entry><entry role="property_name"><link linkend="GtkShortcutsShortcut--action-name">action-name</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="GtkTextDirection"><type>GtkTextDirection</type></link></entry><entry role="property_name"><link linkend="GtkShortcutsShortcut--direction">direction</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="GIcon"><type>GIcon</type></link>&#160;*</entry><entry role="property_name"><link linkend="GtkShortcutsShortcut--icon">icon</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gboolean"><type>gboolean</type></link></entry><entry role="property_name"><link linkend="GtkShortcutsShortcut--icon-set">icon-set</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="GtkShortcutType"><type>GtkShortcutType</type></link></entry><entry role="property_name"><link linkend="GtkShortcutsShortcut--shortcut-type">shortcut-type</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gchar"><type>gchar</type></link>&#160;*</entry><entry role="property_name"><link linkend="GtkShortcutsShortcut--subtitle">subtitle</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gboolean"><type>gboolean</type></link></entry><entry role="property_name"><link linkend="GtkShortcutsShortcut--subtitle-set">subtitle-set</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="gchar"><type>gchar</type></link>&#160;*</entry><entry role="property_name"><link linkend="GtkShortcutsShortcut--title">title</link></entry><entry role="property_flags">Read / Write</entry></row>
<row><entry role="property_type"><link linkend="GtkSizeGroup"><type>GtkSizeGroup</type></link>&#160;*</entry><entry role="property_name"><link linkend="GtkShortcutsShortcut--title-size-group">title-size-group</link></entry><entry role="property_flags">Write</entry></row>

</tbody>
</tgroup>
</informaltable>
</refsect1>
<refsect1 id="GtkShortcutsShortcut.other" role="other_proto">
<title role="other_proto.title">Types and Values</title>
<informaltable pgwide="1" frame="none">
<tgroup cols="2">
<colspec colname="other_proto_type" colwidth="150px"/>
<colspec colname="other_proto_name"/>
<tbody>
<row><entry role="datatype_keyword"></entry><entry role="function_name"><link linkend="GtkShortcutsShortcut-struct">GtkShortcutsShortcut</link></entry></row>
<row><entry role="datatype_keyword">enum</entry><entry role="function_name"><link linkend="GtkShortcutType">GtkShortcutType</link></entry></row>

</tbody>
</tgroup>
</informaltable>
</refsect1>
<refsect1 id="GtkShortcutsShortcut.object-hierarchy" role="object_hierarchy">
<title role="object_hierarchy.title">Object Hierarchy</title>
<screen>    <link linkend="GObject">GObject</link>
    <phrase role="lineart">&#9584;&#9472;&#9472;</phrase> <link linkend="GInitiallyUnowned">GInitiallyUnowned</link>
        <phrase role="lineart">&#9584;&#9472;&#9472;</phrase> <link linkend="GtkWidget">GtkWidget</link>
            <phrase role="lineart">&#9584;&#9472;&#9472;</phrase> GtkShortcutsShortcut
</screen>
</refsect1>
<refsect1 id="GtkShortcutsShortcut.implemented-interfaces" role="impl_interfaces">
<title role="impl_interfaces.title">Implemented Interfaces</title>
<para>
GtkShortcutsShortcut implements
 <link linkend="AtkImplementorIface">AtkImplementorIface</link>,  <link linkend="GtkBuildable">GtkBuildable</link> and  <link linkend="GtkConstraintTarget">GtkConstraintTarget</link>.</para>

</refsect1>

<refsect1 id="GtkShortcutsShortcut.includes"><title>Includes</title><synopsis>#include &lt;gtk/gtk.h&gt;
</synopsis></refsect1>

<refsect1 id="GtkShortcutsShortcut.description" role="desc">
<title role="desc.title">Description</title>
<para>A GtkShortcutsShortcut represents a single keyboard shortcut or gesture
with a short text. This widget is only meant to be used with <link linkend="GtkShortcutsWindow"><type>GtkShortcutsWindow</type></link>.</para>

</refsect1>
<refsect1 id="GtkShortcutsShortcut.functions_details" role="details">
<title role="details.title">Functions</title>
<para />
</refsect1>
<refsect1 id="GtkShortcutsShortcut.other_details" role="details">
<title role="details.title">Types and Values</title>
<refsect2 id="GtkShortcutsShortcut-struct" role="struct">
<title>GtkShortcutsShortcut</title>
<indexterm zone="GtkShortcutsShortcut-struct"><primary>GtkShortcutsShortcut</primary></indexterm>
<programlisting language="C">typedef struct _GtkShortcutsShortcut GtkShortcutsShortcut;</programlisting>
</refsect2>
<refsect2 id="GtkShortcutType" role="enum">
<title>enum GtkShortcutType</title>
<indexterm zone="GtkShortcutType"><primary>GtkShortcutType</primary></indexterm>
<para>GtkShortcutType specifies the kind of shortcut that is being described.
More values may be added to this enumeration over time.</para>
<refsect3 id="GtkShortcutType.members" role="enum_members">
<title>Members</title>
<informaltable role="enum_members_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="enum_members_name" colwidth="300px"/>
<colspec colname="enum_members_description"/>
<colspec colname="enum_members_annotations" colwidth="200px"/>
<tbody>
<row role="constant"><entry role="enum_member_name"><para id="GTK-SHORTCUT-ACCELERATOR:CAPS">GTK_SHORTCUT_ACCELERATOR</para></entry>
<entry role="enum_member_description"><para>The shortcut is a keyboard accelerator. The <link linkend="GtkShortcutsShortcut--accelerator"><type>“accelerator”</type></link>
property will be used.</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
<row role="constant"><entry role="enum_member_name"><para id="GTK-SHORTCUT-GESTURE-PINCH:CAPS">GTK_SHORTCUT_GESTURE_PINCH</para></entry>
<entry role="enum_member_description"><para>The shortcut is a pinch gesture. GTK+ provides an icon and subtitle.</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
<row role="constant"><entry role="enum_member_name"><para id="GTK-SHORTCUT-GESTURE-STRETCH:CAPS">GTK_SHORTCUT_GESTURE_STRETCH</para></entry>
<entry role="enum_member_description"><para>The shortcut is a stretch gesture. GTK+ provides an icon and subtitle.</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
<row role="constant"><entry role="enum_member_name"><para id="GTK-SHORTCUT-GESTURE-ROTATE-CLOCKWISE:CAPS">GTK_SHORTCUT_GESTURE_ROTATE_CLOCKWISE</para></entry>
<entry role="enum_member_description"><para>The shortcut is a clockwise rotation gesture. GTK+ provides an icon and subtitle.</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
<row role="constant"><entry role="enum_member_name"><para id="GTK-SHORTCUT-GESTURE-ROTATE-COUNTERCLOCKWISE:CAPS">GTK_SHORTCUT_GESTURE_ROTATE_COUNTERCLOCKWISE</para></entry>
<entry role="enum_member_description"><para>The shortcut is a counterclockwise rotation gesture. GTK+ provides an icon and subtitle.</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
<row role="constant"><entry role="enum_member_name"><para id="GTK-SHORTCUT-GESTURE-TWO-FINGER-SWIPE-LEFT:CAPS">GTK_SHORTCUT_GESTURE_TWO_FINGER_SWIPE_LEFT</para></entry>
<entry role="enum_member_description"><para>The shortcut is a two-finger swipe gesture. GTK+ provides an icon and subtitle.</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
<row role="constant"><entry role="enum_member_name"><para id="GTK-SHORTCUT-GESTURE-TWO-FINGER-SWIPE-RIGHT:CAPS">GTK_SHORTCUT_GESTURE_TWO_FINGER_SWIPE_RIGHT</para></entry>
<entry role="enum_member_description"><para>The shortcut is a two-finger swipe gesture. GTK+ provides an icon and subtitle.</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
<row role="constant"><entry role="enum_member_name"><para id="GTK-SHORTCUT-GESTURE:CAPS">GTK_SHORTCUT_GESTURE</para></entry>
<entry role="enum_member_description"><para>The shortcut is a gesture. The <link linkend="GtkShortcutsShortcut--icon"><type>“icon”</type></link> property will be
used.</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
<row role="constant"><entry role="enum_member_name"><para id="GTK-SHORTCUT-GESTURE-SWIPE-LEFT:CAPS">GTK_SHORTCUT_GESTURE_SWIPE_LEFT</para></entry>
<entry role="enum_member_description"><para>The shortcut is a swipe gesture. GTK+ provides an icon and subtitle.</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
<row role="constant"><entry role="enum_member_name"><para id="GTK-SHORTCUT-GESTURE-SWIPE-RIGHT:CAPS">GTK_SHORTCUT_GESTURE_SWIPE_RIGHT</para></entry>
<entry role="enum_member_description"><para>The shortcut is a swipe gesture. GTK+ provides an icon and subtitle.</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
</tbody></tgroup></informaltable>
</refsect3></refsect2>

</refsect1>
<refsect1 id="GtkShortcutsShortcut.property-details" role="property_details">
<title role="property_details.title">Property Details</title>
<refsect2 id="GtkShortcutsShortcut--accel-size-group" role="property"><title>The <literal>“accel-size-group”</literal> property</title>
<indexterm zone="GtkShortcutsShortcut--accel-size-group"><primary>GtkShortcutsShortcut:accel-size-group</primary></indexterm>
<programlisting>  “accel-size-group”         <link linkend="GtkSizeGroup"><type>GtkSizeGroup</type></link>&#160;*</programlisting>
<para>The size group for the accelerator portion of this shortcut.</para>
<para>This is used internally by GTK+, and must not be modified by applications.</para>
<para>Owner: GtkShortcutsShortcut</para>
<para>Flags: Write</para>
</refsect2>
<refsect2 id="GtkShortcutsShortcut--accelerator" role="property"><title>The <literal>“accelerator”</literal> property</title>
<indexterm zone="GtkShortcutsShortcut--accelerator"><primary>GtkShortcutsShortcut:accelerator</primary></indexterm>
<programlisting>  “accelerator”              <link linkend="gchar"><type>gchar</type></link>&#160;*</programlisting>
<para>The accelerator(s) represented by this object. This property is used
if <link linkend="GtkShortcutsShortcut--shortcut-type"><type>“shortcut-type”</type></link> is set to <link linkend="GTK-SHORTCUT-ACCELERATOR:CAPS"><type>GTK_SHORTCUT_ACCELERATOR</type></link>.</para>
<para>The syntax of this property is (an extension of) the syntax understood by
<link linkend="gtk-accelerator-parse"><function>gtk_accelerator_parse()</function></link>. Multiple accelerators can be specified by separating
them with a space, but keep in mind that the available width is limited.
It is also possible to specify ranges of shortcuts, using ... between the keys.
Sequences of keys can be specified using a + or &amp; between the keys.</para>
<para>Examples:</para>
<itemizedlist>
<listitem><para>A single shortcut: &lt;ctl>&lt;alt>delete</para></listitem>
<listitem><para>Two alternative shortcuts: &lt;shift>a Home</para></listitem>
<listitem><para>A range of shortcuts: &lt;alt>1...&lt;alt>9</para></listitem>
<listitem><para>Several keys pressed together: Control_L&amp;Control_R</para></listitem>
<listitem>
<para>A sequence of shortcuts or keys: &lt;ctl>c+&lt;ctl>x</para>
</listitem>
</itemizedlist>
<para>Use + instead of &amp; when the keys may (or have to be) pressed sequentially (e.g
use t+t for 'press the t key twice').</para>
<para>Note that &lt;, &gt; and &amp; need to be escaped as &lt;, &gt; and &amp; when used
in .ui files.</para>
<para>Owner: GtkShortcutsShortcut</para>
<para>Flags: Read / Write</para>
<para>Default value: NULL</para>
</refsect2>
<refsect2 id="GtkShortcutsShortcut--action-name" role="property"><title>The <literal>“action-name”</literal> property</title>
<indexterm zone="GtkShortcutsShortcut--action-name"><primary>GtkShortcutsShortcut:action-name</primary></indexterm>
<programlisting>  “action-name”              <link linkend="gchar"><type>gchar</type></link>&#160;*</programlisting>
<para>A detailed action name. If this is set for a shortcut
of type <link linkend="GTK-SHORTCUT-ACCELERATOR:CAPS"><literal>GTK_SHORTCUT_ACCELERATOR</literal></link>, then GTK+ will use
the accelerators that are associated with the action
via <link linkend="gtk-application-set-accels-for-action"><function>gtk_application_set_accels_for_action()</function></link>, and setting
<link linkend="GtkShortcutsShortcut--accelerator"><type>“accelerator”</type></link> is not necessary.</para>
<para>Owner: GtkShortcutsShortcut</para>
<para>Flags: Read / Write</para>
<para>Default value: NULL</para>
</refsect2>
<refsect2 id="GtkShortcutsShortcut--direction" role="property"><title>The <literal>“direction”</literal> property</title>
<indexterm zone="GtkShortcutsShortcut--direction"><primary>GtkShortcutsShortcut:direction</primary></indexterm>
<programlisting>  “direction”                <link linkend="GtkTextDirection"><type>GtkTextDirection</type></link></programlisting>
<para>The text direction for which this shortcut is active. If the shortcut
is used regardless of the text direction, set this property to
<link linkend="GTK-TEXT-DIR-NONE:CAPS"><type>GTK_TEXT_DIR_NONE</type></link>.</para>
<para>Owner: GtkShortcutsShortcut</para>
<para>Flags: Read / Write</para>
<para>Default value: GTK_TEXT_DIR_NONE</para>
</refsect2>
<refsect2 id="GtkShortcutsShortcut--icon" role="property"><title>The <literal>“icon”</literal> property</title>
<indexterm zone="GtkShortcutsShortcut--icon"><primary>GtkShortcutsShortcut:icon</primary></indexterm>
<programlisting>  “icon”                     <link linkend="GIcon"><type>GIcon</type></link>&#160;*</programlisting>
<para>An icon to represent the shortcut or gesture. This property is used if
<link linkend="GtkShortcutsShortcut--shortcut-type"><type>“shortcut-type”</type></link> is set to <link linkend="GTK-SHORTCUT-GESTURE:CAPS"><type>GTK_SHORTCUT_GESTURE</type></link>.
For the other predefined gesture types, GTK+ provides an icon on its own.</para>
<para>Owner: GtkShortcutsShortcut</para>
<para>Flags: Read / Write</para>
</refsect2>
<refsect2 id="GtkShortcutsShortcut--icon-set" role="property"><title>The <literal>“icon-set”</literal> property</title>
<indexterm zone="GtkShortcutsShortcut--icon-set"><primary>GtkShortcutsShortcut:icon-set</primary></indexterm>
<programlisting>  “icon-set”                 <link linkend="gboolean"><type>gboolean</type></link></programlisting>
<para><link linkend="TRUE:CAPS"><literal>TRUE</literal></link> if an icon has been set.</para>
<para>Owner: GtkShortcutsShortcut</para>
<para>Flags: Read / Write</para>
<para>Default value: FALSE</para>
</refsect2>
<refsect2 id="GtkShortcutsShortcut--shortcut-type" role="property"><title>The <literal>“shortcut-type”</literal> property</title>
<indexterm zone="GtkShortcutsShortcut--shortcut-type"><primary>GtkShortcutsShortcut:shortcut-type</primary></indexterm>
<programlisting>  “shortcut-type”            <link linkend="GtkShortcutType"><type>GtkShortcutType</type></link></programlisting>
<para>The type of shortcut that is represented.</para>
<para>Owner: GtkShortcutsShortcut</para>
<para>Flags: Read / Write</para>
<para>Default value: GTK_SHORTCUT_ACCELERATOR</para>
</refsect2>
<refsect2 id="GtkShortcutsShortcut--subtitle" role="property"><title>The <literal>“subtitle”</literal> property</title>
<indexterm zone="GtkShortcutsShortcut--subtitle"><primary>GtkShortcutsShortcut:subtitle</primary></indexterm>
<programlisting>  “subtitle”                 <link linkend="gchar"><type>gchar</type></link>&#160;*</programlisting>
<para>The subtitle for the shortcut or gesture.</para>
<para>This is typically used for gestures and should be a short, one-line
text that describes the gesture itself. For the predefined gesture
types, GTK+ provides a subtitle on its own.</para>
<para>Owner: GtkShortcutsShortcut</para>
<para>Flags: Read / Write</para>
<para>Default value: ""</para>
</refsect2>
<refsect2 id="GtkShortcutsShortcut--subtitle-set" role="property"><title>The <literal>“subtitle-set”</literal> property</title>
<indexterm zone="GtkShortcutsShortcut--subtitle-set"><primary>GtkShortcutsShortcut:subtitle-set</primary></indexterm>
<programlisting>  “subtitle-set”             <link linkend="gboolean"><type>gboolean</type></link></programlisting>
<para><link linkend="TRUE:CAPS"><literal>TRUE</literal></link> if a subtitle has been set.</para>
<para>Owner: GtkShortcutsShortcut</para>
<para>Flags: Read / Write</para>
<para>Default value: FALSE</para>
</refsect2>
<refsect2 id="GtkShortcutsShortcut--title" role="property"><title>The <literal>“title”</literal> property</title>
<indexterm zone="GtkShortcutsShortcut--title"><primary>GtkShortcutsShortcut:title</primary></indexterm>
<programlisting>  “title”                    <link linkend="gchar"><type>gchar</type></link>&#160;*</programlisting>
<para>The textual description for the shortcut or gesture represented by
this object. This should be a short string that can fit in a single line.</para>
<para>Owner: GtkShortcutsShortcut</para>
<para>Flags: Read / Write</para>
<para>Default value: ""</para>
</refsect2>
<refsect2 id="GtkShortcutsShortcut--title-size-group" role="property"><title>The <literal>“title-size-group”</literal> property</title>
<indexterm zone="GtkShortcutsShortcut--title-size-group"><primary>GtkShortcutsShortcut:title-size-group</primary></indexterm>
<programlisting>  “title-size-group”         <link linkend="GtkSizeGroup"><type>GtkSizeGroup</type></link>&#160;*</programlisting>
<para>The size group for the textual portion of this shortcut.</para>
<para>This is used internally by GTK+, and must not be modified by applications.</para>
<para>Owner: GtkShortcutsShortcut</para>
<para>Flags: Write</para>
</refsect2>

</refsect1>

</refentry>
