glibmm 2.31.18
Public Member Functions | Static Public Member Functions | Protected Member Functions | Related Functions
Gio::SimpleAction Class Reference

SimpleAction - A simple Action implementation. More...

#include <giomm/simpleaction.h>

Inheritance diagram for Gio::SimpleAction:
Inheritance graph
[legend]

List of all members.

Public Member Functions

virtual ~SimpleAction ()
GSimpleAction* gobj ()
 Provides access to the underlying C GObject.
const GSimpleAction* gobj () const
 Provides access to the underlying C GObject.
GSimpleAction* gobj_copy ()
 Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs.
void set_enabled (bool enabled)
 Sets the action as enabled or not.
void set_state (const Glib::VariantBase&value)
 Sets the state of the action.
Glib::PropertyProxy_ReadOnly
< bool > 
property_enabled () const
 If the action can be activated.
Glib::PropertyProxy_ReadOnly
< Glib::ustring
property_name () const
 The name used to invoke the action.
Glib::PropertyProxy_ReadOnly
< Glib::VariantType
property_parameter_type () const
 The type of GVariant passed to activate().
Glib::PropertyProxy_ReadOnly
< Glib::VariantBase
property_state () const
 The state the action is in.
Glib::PropertyProxy_ReadOnly
< Glib::VariantType
property_state_type () const
 The type of the state kept by the action.
Glib::SignalProxy1< void,
const Glib::VariantBase& > 
signal_activate ()
Glib::SignalProxy1< void,
const Glib::VariantBase& > 
signal_change_state ()

Static Public Member Functions

static Glib::RefPtr< SimpleActioncreate (const Glib::ustring& name, const Glib::VariantType& parameter_type)
 Creates a new action.
static Glib::RefPtr< SimpleActioncreate (const Glib::ustring& name, const Glib::VariantType& parameter_type, const Glib::VariantBase& sate)
 Creates a new stateful action.

Protected Member Functions

 SimpleAction (const Glib::ustring& name, const Glib::VariantType& parameter_type)
 SimpleAction (const Glib::ustring& name, const Glib::VariantType& parameter_type, const Glib::VariantBase& sate)

Related Functions

(Note that these are not member functions.)

Glib::RefPtr< Gio::SimpleActionwrap (GSimpleAction* object, bool take_copy=false)
 A Glib::wrap() method for this object.

Detailed Description

SimpleAction - A simple Action implementation.

A SimpleAction is the obvious simple implementation of the Action interface. This is the easiest way to create an action for purposes of adding it to a SimpleActionGroup.

See also Gtk::Action.

Since glibmm 2.32:

Constructor & Destructor Documentation

virtual Gio::SimpleAction::~SimpleAction ( ) [virtual]
Gio::SimpleAction::SimpleAction ( const Glib::ustring name,
const Glib::VariantType parameter_type 
) [explicit, protected]
Gio::SimpleAction::SimpleAction ( const Glib::ustring name,
const Glib::VariantType parameter_type,
const Glib::VariantBase sate 
) [explicit, protected]

Member Function Documentation

static Glib::RefPtr<SimpleAction> Gio::SimpleAction::create ( const Glib::ustring name,
const Glib::VariantType parameter_type 
) [static]

Creates a new action.

The created action is stateless. See g_simple_action_new_stateful().

Since glibmm 2.28:
Parameters:
nameThe name of the action.
parameter_typeThe type of parameter to the activate function.
Returns:
A new SimpleAction.
static Glib::RefPtr<SimpleAction> Gio::SimpleAction::create ( const Glib::ustring name,
const Glib::VariantType parameter_type,
const Glib::VariantBase sate 
) [static]

Creates a new stateful action.

state is the initial state of the action. All future state values must have the same VariantType as the initial state.

If the state GVariant is floating, it is consumed.

Since glibmm 2.28:
Parameters:
nameThe name of the action.
parameter_typeThe type of the parameter to the activate function.
stateThe initial state of the action.
Returns:
A new SimpleAction.
const GSimpleAction* Gio::SimpleAction::gobj ( ) const [inline]

Provides access to the underlying C GObject.

Reimplemented from Gio::Action.

GSimpleAction* Gio::SimpleAction::gobj ( ) [inline]

Provides access to the underlying C GObject.

Reimplemented from Gio::Action.

GSimpleAction* Gio::SimpleAction::gobj_copy ( )

Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs.

Glib::PropertyProxy_ReadOnly< bool > Gio::SimpleAction::property_enabled ( ) const

If the action can be activated.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Reimplemented from Gio::Action.

Glib::PropertyProxy_ReadOnly< Glib::ustring > Gio::SimpleAction::property_name ( ) const

The name used to invoke the action.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Reimplemented from Gio::Action.

Glib::PropertyProxy_ReadOnly< Glib::VariantType > Gio::SimpleAction::property_parameter_type ( ) const

The type of GVariant passed to activate().

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Reimplemented from Gio::Action.

Glib::PropertyProxy_ReadOnly< Glib::VariantBase > Gio::SimpleAction::property_state ( ) const

The state the action is in.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Reimplemented from Gio::Action.

Glib::PropertyProxy_ReadOnly< Glib::VariantType > Gio::SimpleAction::property_state_type ( ) const

The type of the state kept by the action.

You rarely need to use properties because there are get_ and set_ methods for almost all of them.

Returns:
A PropertyProxy that allows you to get or set the property of the value, or receive notification when the value of the property changes.

Reimplemented from Gio::Action.

void Gio::SimpleAction::set_enabled ( bool  enabled)

Sets the action as enabled or not.

An action must be enabled in order to be activated or in order to have its state changed from outside callers.

This should only be called by the implementor of the action. Users of the action should not attempt to modify its enabled flag.

Since glibmm 2.28:
Parameters:
enabledWhether the action is enabled.
void Gio::SimpleAction::set_state ( const Glib::VariantBase value)

Sets the state of the action.

This directly updates the 'state' property to the given value.

This should only be called by the implementor of the action. Users of the action should not attempt to directly modify the 'state' property. Instead, they should call g_action_change_state() to request the change.

Since glibmm 2.30:
Parameters:
valueThe new Variant for the state.
Glib::SignalProxy1< void,const Glib::VariantBase& > Gio::SimpleAction::signal_activate ( )
Slot Prototype:
void on_my_activate(const Glib::VariantBase& parameter)

Indicates that the action was just activated.

will always be of the expected type. In the event that an incorrect type was given, no signal will be emitted.

Since glibmm 2.28:
Parameters:
parameterThe parameter to the activation.
Glib::SignalProxy1< void,const Glib::VariantBase& > Gio::SimpleAction::signal_change_state ( )
Slot Prototype:
void on_my_change_state(const Glib::VariantBase& value)

Indicates that the action just received a request to change its state.

value will always be of the correct state type. In the event that an incorrect type was given, no signal will be emitted.

If no handler is connected to this signal then the default behaviour is to call g_simple_action_set_state() to set the state to the requested value. If you connect a signal handler then no default action is taken. If the state should change then you must call g_simple_action_set_state() from the handler.

<title>Example 'change-state' handler</title>

static void change_volume_state (GSimpleAction *action, GVariant *value, gpointer user_data) { int requested;

requested = g_variant_get_int32 (value);

// Volume only goes from 0 to 10 if (0 <= requested&& requested <= 10) g_simple_action_set_state (action, value); }

The handler need not set the state to the requested value. It could set it to any value at all, or take some other action.

Since glibmm 2.30:
Parameters:
valueThe requested value for the state.

Friends And Related Function Documentation

Glib::RefPtr< Gio::SimpleAction > wrap ( GSimpleAction *  object,
bool  take_copy = false 
) [related]

A Glib::wrap() method for this object.

Parameters:
objectThe C instance.
take_copyFalse if the result should take ownership of the C instance. True if it should take a new copy or ref.
Returns:
A C++ instance that wraps this C instance.