Copyright | Will Thompson and Iñaki García Etxebarria |
---|---|
License | LGPL-2.1 |
Maintainer | Iñaki García Etxebarria |
Safe Haskell | None |
Language | Haskell2010 |
GI.Gio.Interfaces.ActionMap
Description
GActionMap
is an interface for action containers.
The GActionMap
interface is implemented by ActionGroup
implementations that operate by containing a number of named
Action
instances, such as SimpleActionGroup
.
One useful application of this interface is to map the names of actions from various action groups to unique, prefixed names (e.g. by prepending "app." or "win."). This is the motivation for the ‘Map’ part of the interface name.
Since: 2.32
Synopsis
- newtype ActionMap = ActionMap (ManagedPtr ActionMap)
- class (GObject o, IsDescendantOf ActionMap o) => IsActionMap o
- toActionMap :: (MonadIO m, IsActionMap o) => o -> m ActionMap
- type family ResolveActionMapMethod (t :: Symbol) o where ...
- data ActionMapAddActionMethodInfo
- actionMapAddAction :: (HasCallStack, MonadIO m, IsActionMap a, IsAction b) => a -> b -> m ()
- data ActionMapAddActionEntriesMethodInfo
- actionMapAddActionEntries :: (HasCallStack, MonadIO m, IsActionMap a) => a -> [ActionEntry] -> Ptr () -> m ()
- data ActionMapLookupActionMethodInfo
- actionMapLookupAction :: (HasCallStack, MonadIO m, IsActionMap a) => a -> Text -> m (Maybe Action)
- data ActionMapRemoveActionMethodInfo
- actionMapRemoveAction :: (HasCallStack, MonadIO m, IsActionMap a) => a -> Text -> m ()
- data ActionMapRemoveActionEntriesMethodInfo
- actionMapRemoveActionEntries :: (HasCallStack, MonadIO m, IsActionMap a) => a -> [ActionEntry] -> m ()
Exported types
Memory-managed wrapper type.
Constructors
ActionMap (ManagedPtr ActionMap) |
Instances
class (GObject o, IsDescendantOf ActionMap o) => IsActionMap o Source #
Type class for types which can be safely cast to ActionMap
, for instance with toActionMap
.
Instances
(GObject o, IsDescendantOf ActionMap o) => IsActionMap o Source # | |
Defined in GI.Gio.Interfaces.ActionMap |
toActionMap :: (MonadIO m, IsActionMap o) => o -> m ActionMap Source #
Methods
Click to display all available methods, including inherited ones
Methods
addAction, addActionEntries, bindProperty, bindPropertyFull, forceFloating, freezeNotify, getv, isFloating, lookupAction, notify, notifyByPspec, ref, refSink, removeAction, removeActionEntries, runDispose, stealData, stealQdata, thawNotify, unref, watchClosure.
Getters
getData, getProperty, getQdata.
Setters
type family ResolveActionMapMethod (t :: Symbol) o where ... Source #
Equations
addAction
data ActionMapAddActionMethodInfo Source #
Instances
(signature ~ (b -> m ()), MonadIO m, IsActionMap a, IsAction b) => OverloadedMethod ActionMapAddActionMethodInfo a signature Source # | |
Defined in GI.Gio.Interfaces.ActionMap Methods overloadedMethod :: a -> signature # | |
OverloadedMethodInfo ActionMapAddActionMethodInfo (a :: Type) Source # | |
Defined in GI.Gio.Interfaces.ActionMap Methods |
Arguments
:: (HasCallStack, MonadIO m, IsActionMap a, IsAction b) | |
=> a |
|
-> b |
|
-> m () |
Adds an action to the actionMap
.
If the action map already contains an action with the same name
as action
then the old action is dropped from the action map.
The action map takes its own reference on action
.
Since: 2.32
addActionEntries
data ActionMapAddActionEntriesMethodInfo Source #
Instances
(signature ~ ([ActionEntry] -> Ptr () -> m ()), MonadIO m, IsActionMap a) => OverloadedMethod ActionMapAddActionEntriesMethodInfo a signature Source # | |
Defined in GI.Gio.Interfaces.ActionMap Methods overloadedMethod :: a -> signature # | |
OverloadedMethodInfo ActionMapAddActionEntriesMethodInfo (a :: Type) Source # | |
Defined in GI.Gio.Interfaces.ActionMap Methods |
actionMapAddActionEntries Source #
Arguments
:: (HasCallStack, MonadIO m, IsActionMap a) | |
=> a |
|
-> [ActionEntry] |
|
-> Ptr () |
|
-> m () |
A convenience function for creating multiple SimpleAction
instances and adding them to a ActionMap
.
Each action is constructed as per one ActionEntry
.
c code
static void activate_quit (GSimpleAction *simple, GVariant *parameter, gpointer user_data) { exit (0); } static void activate_print_string (GSimpleAction *simple, GVariant *parameter, gpointer user_data) { g_print ("%s\n", g_variant_get_string (parameter, NULL)); } static GActionGroup * create_action_group (void) { const GActionEntry entries[] = { { "quit", activate_quit }, { "print-string", activate_print_string, "s" } }; GSimpleActionGroup *group; group = g_simple_action_group_new (); g_action_map_add_action_entries (G_ACTION_MAP (group), entries, G_N_ELEMENTS (entries), NULL); return G_ACTION_GROUP (group); }
Since: 2.32
lookupAction
data ActionMapLookupActionMethodInfo Source #
Instances
(signature ~ (Text -> m (Maybe Action)), MonadIO m, IsActionMap a) => OverloadedMethod ActionMapLookupActionMethodInfo a signature Source # | |
Defined in GI.Gio.Interfaces.ActionMap Methods overloadedMethod :: a -> signature # | |
OverloadedMethodInfo ActionMapLookupActionMethodInfo (a :: Type) Source # | |
Defined in GI.Gio.Interfaces.ActionMap Methods |
actionMapLookupAction Source #
Arguments
:: (HasCallStack, MonadIO m, IsActionMap a) | |
=> a |
|
-> Text |
|
-> m (Maybe Action) | Returns: a |
Looks up the action with the name actionName
in actionMap
.
If no such action exists, returns NULL
.
Since: 2.32
removeAction
data ActionMapRemoveActionMethodInfo Source #
Instances
(signature ~ (Text -> m ()), MonadIO m, IsActionMap a) => OverloadedMethod ActionMapRemoveActionMethodInfo a signature Source # | |
Defined in GI.Gio.Interfaces.ActionMap Methods overloadedMethod :: a -> signature # | |
OverloadedMethodInfo ActionMapRemoveActionMethodInfo (a :: Type) Source # | |
Defined in GI.Gio.Interfaces.ActionMap Methods |
actionMapRemoveAction Source #
Arguments
:: (HasCallStack, MonadIO m, IsActionMap a) | |
=> a |
|
-> Text |
|
-> m () |
Removes the named action from the action map.
If no action of this name is in the map then nothing happens.
Since: 2.32
removeActionEntries
data ActionMapRemoveActionEntriesMethodInfo Source #
Instances
(signature ~ ([ActionEntry] -> m ()), MonadIO m, IsActionMap a) => OverloadedMethod ActionMapRemoveActionEntriesMethodInfo a signature Source # | |
Defined in GI.Gio.Interfaces.ActionMap Methods overloadedMethod :: a -> signature # | |
OverloadedMethodInfo ActionMapRemoveActionEntriesMethodInfo (a :: Type) Source # | |
Defined in GI.Gio.Interfaces.ActionMap Methods |
actionMapRemoveActionEntries Source #
Arguments
:: (HasCallStack, MonadIO m, IsActionMap a) | |
=> a |
|
-> [ActionEntry] |
|
-> m () |
Remove actions from a ActionMap
. This is meant as the reverse of
actionMapAddActionEntries
.
c code
static const GActionEntry entries[] = { { "quit", activate_quit }, { "print-string", activate_print_string, "s" } }; void add_actions (GActionMap *map) { g_action_map_add_action_entries (map, entries, G_N_ELEMENTS (entries), NULL); } void remove_actions (GActionMap *map) { g_action_map_remove_action_entries (map, entries, G_N_ELEMENTS (entries)); }
Since: 2.78