MxFocusManager

## MxFocusManager MxFocusManager |

## Synopsis

    struct              MxFocusManager;
    MxFocusManager *    mx_focus_manager_get_for_stage      (ClutterStage *stage);
    ClutterStage *      mx_focus_manager_get_stage          (MxFocusManager *manager);
    MxFocusable *       mx_focus_manager_get_focused        (MxFocusManager *manager);
    void                mx_focus_manager_push_focus         (MxFocusManager *manager,
                                                             MxFocusable *focusable);
    void                mx_focus_manager_move_focus         (MxFocusManager *manager,
                                                             MxFocusDirection direction);

## Object Hierarchy

      GObject
       +----MxFocusManager

## Properties

      "focused"                  ClutterActor*         : Read
      "stage"                    ClutterStage*         : Read

## Description

## Details

### struct MxFocusManager

    struct MxFocusManager;

The contents of this structure are private and should only be accessed through the public API.

### mx_focus_manager_get_for_stage ()

    MxFocusManager *    mx_focus_manager_get_for_stage      (ClutterStage *stage);

Get the MxFocusManager associated with a stage, or create one if none exist for the specified stage.

`stage` : | A ClutterStage
Returns : | An MxFocusManager. [transfer none]

### mx_focus_manager_get_stage ()

    ClutterStage *      mx_focus_manager_get_stage          (MxFocusManager *manager);

Get the stage the MxFocusManager is associated with

`manager` : | A MxFocusManager
Returns : | A ClutterStage. [transfer none]

### mx_focus_manager_get_focused ()

    MxFocusable *       mx_focus_manager_get_focused        (MxFocusManager *manager);

Get the currently focused MxFocusable

`manager` : | A MxFocusManager
Returns : | MxFocusable. [transfer none]

### mx_focus_manager_push_focus ()

    void                mx_focus_manager_push_focus         (MxFocusManager *manager,
                                                             MxFocusable *focusable);

Note: the final focused object may not be the same as `focusable` if `focusable` does not accept focus directly.

`manager` : | the focus manager
`focusable` : | the object to set focus on

### mx_focus_manager_move_focus ()

    void                mx_focus_manager_move_focus         (MxFocusManager *manager,
                                                             MxFocusDirection direction);

Moves the current focus in the given direction.

`manager` : | the focus manager
`direction` : | The direction to move focus in

## Property Details

### The `"focused"` property

      "focused"                  ClutterActor*         : Read

The object that currently has focus.

### The `"stage"` property

      "stage"                    ClutterStage*         : Read

Top level container for focusables.