|
Packit |
ae235b |
|
|
Packit |
ae235b |
<html>
|
|
Packit |
ae235b |
<head>
|
|
Packit |
ae235b |
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
|
Packit |
ae235b |
<title>GActionMap: GIO Reference Manual</title>
|
|
Packit |
ae235b |
<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot">
|
|
Packit |
ae235b |
<link rel="home" href="index.html" title="GIO Reference Manual">
|
|
Packit |
ae235b |
<link rel="up" href="application.html" title="Application support">
|
|
Packit |
ae235b |
<link rel="prev" href="GActionGroup.html" title="GActionGroup">
|
|
Packit |
ae235b |
<link rel="next" href="GSimpleActionGroup.html" title="GSimpleActionGroup">
|
|
Packit |
ae235b |
<meta name="generator" content="GTK-Doc V1.27 (XML mode)">
|
|
Packit |
ae235b |
<link rel="stylesheet" href="style.css" type="text/css">
|
|
Packit |
ae235b |
</head>
|
|
Packit |
ae235b |
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
Top |
|
|
Packit |
ae235b |
Description |
|
|
Packit |
ae235b |
Object Hierarchy |
|
|
Packit |
ae235b |
Prerequisites |
|
|
Packit |
ae235b |
Known Implementations
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
GActionMap
|
|
Packit |
ae235b |
GActionMap — Interface for action containers
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
Functions
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
GAction *
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
g_action_map_lookup_action ()
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
void
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
g_action_map_add_action_entries ()
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
void
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
g_action_map_add_action ()
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
void
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
g_action_map_remove_action ()
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
Types and Values
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
GActionMap
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
struct
|
|
Packit |
ae235b |
GActionMapInterface
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
struct
|
|
Packit |
ae235b |
GActionEntry
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
Object Hierarchy
|
|
Packit |
ae235b |
GInterface
|
|
Packit |
ae235b |
╰── GActionMap
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
Prerequisites
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
GActionMap requires
|
|
Packit |
ae235b |
GObject.
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
Known Implementations
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
GActionMap is implemented by
|
|
Packit |
ae235b |
GApplication and GSimpleActionGroup.
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
Includes
|
|
Packit |
ae235b |
#include <gio/gio.h>
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
Description
|
|
Packit |
ae235b |
The GActionMap interface is implemented by GActionGroup
|
|
Packit |
ae235b |
implementations that operate by containing a number of
|
|
Packit |
ae235b |
named GAction instances, such as GSimpleActionGroup.
|
|
Packit |
ae235b |
One useful application of this interface is to map the
|
|
Packit |
ae235b |
names of actions from various action groups to unique,
|
|
Packit |
ae235b |
prefixed names (e.g. by prepending "app." or "win.").
|
|
Packit |
ae235b |
This is the motivation for the 'Map' part of the interface
|
|
Packit |
ae235b |
name.
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
Functions
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
g_action_map_lookup_action ()
|
|
Packit |
ae235b |
GAction *
|
|
Packit |
ae235b |
g_action_map_lookup_action (GActionMap *action_map ,
|
|
Packit |
ae235b |
const gchar *action_name );
|
|
Packit |
ae235b |
Looks up the action with the name action_name
|
|
Packit |
ae235b |
in action_map
|
|
Packit |
ae235b |
.
|
|
Packit |
ae235b |
If no such action exists, returns NULL .
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
Parameters
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
action_map
|
|
Packit |
ae235b |
a GActionMap
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
action_name
|
|
Packit |
ae235b |
the name of an action
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
Returns
|
|
Packit |
ae235b |
a GAction, or NULL .
|
|
Packit |
ae235b |
[transfer none]
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
Since: 2.32
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
g_action_map_add_action_entries ()
|
|
Packit |
ae235b |
void
|
|
Packit |
ae235b |
g_action_map_add_action_entries (GActionMap *action_map ,
|
|
Packit |
ae235b |
const GActionEntry *entries ,
|
|
Packit |
ae235b |
gint n_entries ,
|
|
Packit |
ae235b |
gpointer user_data );
|
|
Packit |
ae235b |
A convenience function for creating multiple GSimpleAction instances
|
|
Packit |
ae235b |
and adding them to a GActionMap.
|
|
Packit |
ae235b |
Each action is constructed as per one GActionEntry.
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
1
|
|
Packit |
ae235b |
2
|
|
Packit |
ae235b |
3
|
|
Packit |
ae235b |
4
|
|
Packit |
ae235b |
5
|
|
Packit |
ae235b |
6
|
|
Packit |
ae235b |
7
|
|
Packit |
ae235b |
8
|
|
Packit |
ae235b |
9
|
|
Packit |
ae235b |
10
|
|
Packit |
ae235b |
11
|
|
Packit |
ae235b |
12
|
|
Packit |
ae235b |
13
|
|
Packit |
ae235b |
14
|
|
Packit |
ae235b |
15
|
|
Packit |
ae235b |
16
|
|
Packit |
ae235b |
17
|
|
Packit |
ae235b |
18
|
|
Packit |
ae235b |
19
|
|
Packit |
ae235b |
20
|
|
Packit |
ae235b |
21
|
|
Packit |
ae235b |
22
|
|
Packit |
ae235b |
23
|
|
Packit |
ae235b |
24
|
|
Packit |
ae235b |
25
|
|
Packit |
ae235b |
26
|
|
Packit |
ae235b |
27
|
|
Packit |
ae235b |
28
|
|
Packit |
ae235b |
29
|
|
Packit |
ae235b |
30
|
|
Packit |
ae235b |
static void
|
|
Packit |
ae235b |
activate_quit (GSimpleAction *simple,
|
|
Packit |
ae235b |
GVariant *parameter,
|
|
Packit |
ae235b |
gpointer user_data)
|
|
Packit |
ae235b |
{
|
|
Packit |
ae235b |
exit (0);
|
|
Packit |
ae235b |
}
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
static void
|
|
Packit |
ae235b |
activate_print_string (GSimpleAction *simple,
|
|
Packit |
ae235b |
GVariant *parameter,
|
|
Packit |
ae235b |
gpointer user_data)
|
|
Packit |
ae235b |
{
|
|
Packit |
ae235b |
g_print ("%s\n", g_variant_get_string (parameter, NULL));
|
|
Packit |
ae235b |
}
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
static GActionGroup *
|
|
Packit |
ae235b |
create_action_group (void)
|
|
Packit |
ae235b |
{
|
|
Packit |
ae235b |
const GActionEntry entries[] = {
|
|
Packit |
ae235b |
{ "quit", activate_quit },
|
|
Packit |
ae235b |
{ "print-string", activate_print_string, "s" }
|
|
Packit |
ae235b |
};
|
|
Packit |
ae235b |
GSimpleActionGroup *group;
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
group = g_simple_action_group_new ();
|
|
Packit |
ae235b |
g_action_map_add_action_entries (G_ACTION_MAP (group), entries, G_N_ELEMENTS (entries), NULL);
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
return G_ACTION_GROUP (group);
|
|
Packit |
ae235b |
}
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
Parameters
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
action_map
|
|
Packit |
ae235b |
a GActionMap
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
entries
|
|
Packit |
ae235b |
a pointer to
|
|
Packit |
ae235b |
the first item in an array of GActionEntry structs.
|
|
Packit |
ae235b |
[array length=n_entries][element-type GActionEntry]
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
n_entries
|
|
Packit |
ae235b |
the length of entries
|
|
Packit |
ae235b |
, or -1 if entries
|
|
Packit |
ae235b |
is NULL -terminated
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
user_data
|
|
Packit |
ae235b |
the user data for signal connections
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
Since: 2.32
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
g_action_map_add_action ()
|
|
Packit |
ae235b |
void
|
|
Packit |
ae235b |
g_action_map_add_action (GActionMap *action_map ,
|
|
Packit |
ae235b |
GAction *action );
|
|
Packit |
ae235b |
Adds an action to the action_map
|
|
Packit |
ae235b |
.
|
|
Packit |
ae235b |
If the action map already contains an action with the same name
|
|
Packit |
ae235b |
as action
|
|
Packit |
ae235b |
then the old action is dropped from the action map.
|
|
Packit |
ae235b |
The action map takes its own reference on action
|
|
Packit |
ae235b |
.
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
Parameters
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
action_map
|
|
Packit |
ae235b |
a GActionMap
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
action
|
|
Packit |
ae235b |
a GAction
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
Since: 2.32
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
g_action_map_remove_action ()
|
|
Packit |
ae235b |
void
|
|
Packit |
ae235b |
g_action_map_remove_action (GActionMap *action_map ,
|
|
Packit |
ae235b |
const gchar *action_name );
|
|
Packit |
ae235b |
Removes the named action from the action map.
|
|
Packit |
ae235b |
If no action of this name is in the map then nothing happens.
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
Parameters
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
action_map
|
|
Packit |
ae235b |
a GActionMap
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
action_name
|
|
Packit |
ae235b |
the name of the action
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
Since: 2.32
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
Types and Values
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
GActionMap
|
|
Packit |
ae235b |
typedef struct _GActionMap GActionMap;
|
|
Packit |
ae235b |
GActionMap is an opaque data structure and can only be accessed
|
|
Packit |
ae235b |
using the following functions.
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
struct GActionMapInterface
|
|
Packit |
ae235b |
struct GActionMapInterface {
|
|
Packit |
ae235b |
GTypeInterface g_iface;
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
GAction * (* lookup_action) (GActionMap *action_map,
|
|
Packit |
ae235b |
const gchar *action_name);
|
|
Packit |
ae235b |
void (* add_action) (GActionMap *action_map,
|
|
Packit |
ae235b |
GAction *action);
|
|
Packit |
ae235b |
void (* remove_action) (GActionMap *action_map,
|
|
Packit |
ae235b |
const gchar *action_name);
|
|
Packit |
ae235b |
};
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
The virtual function table for GActionMap.
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
Members
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
lookup_action ()
|
|
Packit |
ae235b |
the virtual function pointer for g_action_map_lookup_action()
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
add_action ()
|
|
Packit |
ae235b |
the virtual function pointer for g_action_map_add_action()
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
remove_action ()
|
|
Packit |
ae235b |
the virtual function pointer for g_action_map_remove_action()
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
Since: 2.32
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
struct GActionEntry
|
|
Packit |
ae235b |
struct GActionEntry {
|
|
Packit |
ae235b |
const gchar *name;
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
void (* activate) (GSimpleAction *action,
|
|
Packit |
ae235b |
GVariant *parameter,
|
|
Packit |
ae235b |
gpointer user_data);
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
const gchar *parameter_type;
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
const gchar *state;
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
void (* change_state) (GSimpleAction *action,
|
|
Packit |
ae235b |
GVariant *value,
|
|
Packit |
ae235b |
gpointer user_data);
|
|
Packit |
ae235b |
};
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
This struct defines a single action. It is for use with
|
|
Packit |
ae235b |
g_action_map_add_action_entries() .
|
|
Packit |
ae235b |
The order of the items in the structure are intended to reflect
|
|
Packit |
ae235b |
frequency of use. It is permissible to use an incomplete initialiser
|
|
Packit |
ae235b |
in order to leave some of the later values as NULL . All values
|
|
Packit |
ae235b |
after name
|
|
Packit |
ae235b |
are optional. Additional optional fields may be added in
|
|
Packit |
ae235b |
the future.
|
|
Packit |
ae235b |
See g_action_map_add_action_entries() for an example.
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
Members
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
const gchar *name ;
|
|
Packit |
ae235b |
the name of the action
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
activate ()
|
|
Packit |
ae235b |
the callback to connect to the "activate" signal of the
|
|
Packit |
ae235b |
action. Since GLib 2.40, this can be NULL for stateful
|
|
Packit |
ae235b |
actions, in which case the default handler is used. For
|
|
Packit |
ae235b |
boolean-stated actions with no parameter, this is a
|
|
Packit |
ae235b |
toggle. For other state types (and parameter type equal
|
|
Packit |
ae235b |
to the state type) this will be a function that
|
|
Packit |
ae235b |
just calls change_state
|
|
Packit |
ae235b |
(which you should provide).
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
const gchar *parameter_type ;
|
|
Packit |
ae235b |
the type of the parameter that must be passed to the
|
|
Packit |
ae235b |
activate function for this action, given as a single
|
|
Packit |
ae235b |
GVariant type string (or NULL for no parameter)
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
const gchar *state ;
|
|
Packit |
ae235b |
the initial state for this action, given in
|
|
Packit |
ae235b |
GVariant text format. The state is parsed
|
|
Packit |
ae235b |
with no extra type information, so type tags must be added to
|
|
Packit |
ae235b |
the string if they are necessary. Stateless actions should
|
|
Packit |
ae235b |
give NULL here.
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
change_state ()
|
|
Packit |
ae235b |
the callback to connect to the "change-state" signal
|
|
Packit |
ae235b |
of the action. All stateful actions should provide a
|
|
Packit |
ae235b |
handler here; stateless actions should not.
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
|
|
Packit |
ae235b |
Generated by GTK-Doc V1.27
|
|
Packit |
ae235b |
</body>
|
|
Packit |
ae235b |
</html>
|