AccelLabelRef
public struct AccelLabelRef : AccelLabelProtocol, GWeakCapturing
The GtkAccelLabel widget is a subclass of GtkLabel that also displays an
accelerator key on the right of the label text, e.g. “Ctrl+S”.
It is commonly used in menus to show the keyboard short-cuts for commands.
The accelerator key to display is typically not set explicitly (although it
can be, with gtk_accel_label_set_accel()). Instead, the GtkAccelLabel displays
the accelerators which have been added to a particular widget. This widget is
set by calling gtk_accel_label_set_accel_widget().
For example, a GtkMenuItem widget may have an accelerator added to emit
the “activate” signal when the “Ctrl+S” key combination is pressed.
A GtkAccelLabel is created and added to the GtkMenuItem, and
gtk_accel_label_set_accel_widget() is called with the GtkMenuItem as the
second argument. The GtkAccelLabel will now display “Ctrl+S” after its label.
Note that creating a GtkMenuItem with gtk_menu_item_new_with_label() (or
one of the similar functions for GtkCheckMenuItem and GtkRadioMenuItem)
automatically adds a GtkAccelLabel to the GtkMenuItem and calls
gtk_accel_label_set_accel_widget() to set it up for you.
A GtkAccelLabel will only display accelerators which have GTK_ACCEL_VISIBLE
set (see GtkAccelFlags).
A GtkAccelLabel can display multiple accelerators and even signal names,
though it is almost always used to display just one accelerator key.
Creating a simple menu item with an accelerator key.
(C Language Example):
GtkWidget *window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
GtkWidget *menu = gtk_menu_new ();
GtkWidget *save_item;
GtkAccelGroup *accel_group;
// Create a GtkAccelGroup and add it to the window.
accel_group = gtk_accel_group_new ();
gtk_window_add_accel_group (GTK_WINDOW (window), accel_group);
// Create the menu item using the convenience function.
save_item = gtk_menu_item_new_with_label ("Save");
gtk_widget_show (save_item);
gtk_container_add (GTK_CONTAINER (menu), save_item);
// Now add the accelerator to the GtkMenuItem. Note that since we
// called gtk_menu_item_new_with_label() to create the GtkMenuItem
// the GtkAccelLabel is automatically set up to display the
// GtkMenuItem accelerators. We just need to make sure we use
// GTK_ACCEL_VISIBLE here.
gtk_widget_add_accelerator (save_item, "activate", accel_group,
GDK_KEY_s, GDK_CONTROL_MASK, GTK_ACCEL_VISIBLE);
CSS nodes
(plain Language Example):
label
╰── accelerator
Like GtkLabel, GtkAccelLabel has a main CSS node with the name label.
It adds a subnode with name accelerator.
The AccelLabelRef type acts as a lightweight Swift reference to an underlying GtkAccelLabel instance.
It exposes methods that can operate on this data type through AccelLabelProtocol conformance.
Use AccelLabelRef only as an unowned reference to an existing GtkAccelLabel instance.
-
Untyped pointer to the underlying `GtkAccelLabel` instance.For type-safe access, use the generated, typed pointer
accel_label_ptrproperty instead.Declaration
Swift
public let ptr: UnsafeMutableRawPointer!
-
Designated initialiser from the underlying
Cdata typeDeclaration
Swift
@inlinable init(_ p: UnsafeMutablePointer<GtkAccelLabel>) -
Designated initialiser from a constant pointer to the underlying
Cdata typeDeclaration
Swift
@inlinable init(_ p: UnsafePointer<GtkAccelLabel>) -
Conditional initialiser from an optional pointer to the underlying
Cdata typeDeclaration
Swift
@inlinable init!(_ maybePointer: UnsafeMutablePointer<GtkAccelLabel>?) -
Conditional initialiser from an optional, non-mutable pointer to the underlying
Cdata typeDeclaration
Swift
@inlinable init!(_ maybePointer: UnsafePointer<GtkAccelLabel>?) -
Conditional initialiser from an optional
gpointerDeclaration
Swift
@inlinable init!(gpointer g: gpointer?) -
Conditional initialiser from an optional, non-mutable
gconstpointerDeclaration
Swift
@inlinable init!(gconstpointer g: gconstpointer?) -
Reference intialiser for a related type that implements
AccelLabelProtocolDeclaration
Swift
@inlinable init<T>(_ other: T) where T : AccelLabelProtocol -
This factory is syntactic sugar for setting weak pointers wrapped in
GWeak<T>Declaration
Swift
@inlinable static func unowned<T>(_ other: T) -> AccelLabelRef where T : AccelLabelProtocol -
Unsafe typed initialiser. Do not use unless you know the underlying data type the pointer points to conforms to
AccelLabelProtocol.Declaration
Swift
@inlinable init<T>(cPointer: UnsafeMutablePointer<T>) -
Unsafe typed initialiser. Do not use unless you know the underlying data type the pointer points to conforms to
AccelLabelProtocol.Declaration
Swift
@inlinable init<T>(constPointer: UnsafePointer<T>) -
Unsafe untyped initialiser. Do not use unless you know the underlying data type the pointer points to conforms to
AccelLabelProtocol.Declaration
Swift
@inlinable init(mutating raw: UnsafeRawPointer) -
Unsafe untyped initialiser. Do not use unless you know the underlying data type the pointer points to conforms to
AccelLabelProtocol.Declaration
Swift
@inlinable init(raw: UnsafeMutableRawPointer) -
Unsafe untyped initialiser. Do not use unless you know the underlying data type the pointer points to conforms to
AccelLabelProtocol.Declaration
Swift
@inlinable init(opaquePointer: OpaquePointer) -
Creates a new
GtkAccelLabel.Declaration
Swift
@inlinable init(string: UnsafePointer<gchar>!)
View on GitHub
Install in Dash
AccelLabelRef Structure Reference