### Class

# Gio SimpleAction

since: 2.0

#### Description

    final class Gio.SimpleAction : GObject.Object
      implements Gio.Action {
      /* No available fields */
    }

A `GSimpleAction` is the obvious simple implementation of the `GAction` interface. This is the easiest way to create an action for purposes of adding it to a `GSimpleActionGroup`.

Available since: 2.0

#### Ancestors

- GObject

#### Implements

- GAction

#### Constructors

###### g_simple_action_new

Creates a new action.

since: 2.28

###### g_simple_action_new_stateful

Creates a new stateful action.

since: 2.28

#### Instance methods

###### g_simple_action_set_enabled

Sets the action as enabled or not.

since: 2.28

###### g_simple_action_set_state

Sets the state of the action.

since: 2.30

###### g_simple_action_set_state_hint

Sets the state hint for the action.

since: 2.44

##### Methods inherited from GObject (43)

Please see GObject for a full list of methods.

##### Methods inherited from GAction (8)

###### g_action_activate

Activates the action.

since: 2.28

###### g_action_change_state

Request for the state of `action` to be changed to `value`.

since: 2.30

###### g_action_get_enabled

Checks if `action` is currently enabled.

since: 2.28

###### g_action_get_name

Queries the name of `action`.

since: 2.28

###### g_action_get_parameter_type

Queries the type of the parameter that must be given when activating `action`.

since: 2.28

###### g_action_get_state

Queries the current state of `action`.

since: 2.28

###### g_action_get_state_hint

Requests a hint about the valid range of values for the state of `action`.

since: 2.28

###### g_action_get_state_type

Queries the type of the state of `action`.

since: 2.28

#### Properties

###### Gio.SimpleAction:enabled

If `action` is currently enabled.

since: 2.28

###### Gio.SimpleAction:name

The name of the action. This is mostly meaningful for identifying the action once it has been added to a `GSimpleActionGroup`.

since: 2.28

###### Gio.SimpleAction:parameter-type

The type of the parameter that must be given when activating the action.

since: 2.28

###### Gio.SimpleAction:state

The state of the action, or `NULL` if the action is stateless.

since: 2.28

###### Gio.SimpleAction:state-type

The `GVariantType` of the state that the action has, or `NULL` if the action is stateless.

since: 2.28

##### Properties inherited from GAction (5)

###### GAction:enabled

If `action` is currently enabled.

since: 2.28

###### GAction:name

The name of the action. This is mostly meaningful for identifying the action once it has been added to a `GActionGroup`. It is immutable.

since: 2.28

###### GAction:parameter-type

The type of the parameter that must be given when activating the action. This is immutable, and may be `NULL` if no parameter is needed when activating the action.

since: 2.28

###### GAction:state

The state of the action, or `NULL` if the action is stateless.

since: 2.28

###### GAction:state-type

The `GVariantType` of the state that the action has, or `NULL` if the action is stateless. This is immutable.

since: 2.28

#### Signals

###### Gio.SimpleAction::activate

Indicates that the action was just activated.

since: 2.28

###### Gio.SimpleAction::change-state

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

since: 2.30

##### Signals inherited from GObject (1)

###### GObject::notify

The notify signal is emitted on an object when one of its properties has its value set through g_object_set_property(), g_object_set(), et al.

since: 2.0