## BtInteractionControllerMenu

BtInteractionControllerMenu — class for the interaction controller assignment popup menu

## Functions

BtInteractionControllerMenu * | bt_interaction_controller_menu_new ()

## Properties

BtMachine * | machine | Write / Construct Only
BtIcControl * | selected-control | Read / Write
GstObject * | selected-object | Read / Write
BtParameterGroup * | selected-parameter-group | Read / Write
gchar * | selected-property-name | Read / Write
BtInteractionControllerMenuType | type | Read / Write / Construct Only

## Types and Values

struct | BtInteractionControllerMenu
enum | BtInteractionControllerMenuType

## Object Hierarchy

        GObject
        ╰── GInitiallyUnowned
            ╰── GtkWidget
                ╰── GtkContainer
                    ╰── GtkMenuShell
                        ╰── GtkMenu
                            ╰── BtInteractionControllerMenu

## Implemented Interfaces

BtInteractionControllerMenu implements AtkImplementorIface and GtkBuildable.

## Includes

    #include "bt-edit.h"

## Description

Build a menu with available interaction controllers of a type to be used for a specified machine.

The menu will show whether a control is bound or not and if it is bound the label will include the currently bound target.

## Functions

### bt_interaction_controller_menu_new ()

    BtInteractionControllerMenu *
    bt_interaction_controller_menu_new (BtInteractionControllerMenuType type,
                                        BtMachine *machine);

Create a new instance.

#### Parameters

type | for which kind of controllers make a menu |
machine | to which machine we want to bind controllers |

#### Returns

the new instance

## Types and Values

### struct BtInteractionControllerMenu

    struct BtInteractionControllerMenu;

the machine selection sub-menu for the canvas page context menu

### enum BtInteractionControllerMenuType

BtInteractionControllerMenu can generate a menu showing different controller types.

#### Members

BT_INTERACTION_CONTROLLER_RANGE_MENU | range controllers |
BT_INTERACTION_CONTROLLER_TRIGGER_MENU | trigger controllers |

## Property Details

### The `“machine”` property

      “machine”                  BtMachine *

Set machine object, the menu handles.

Flags: Write / Construct Only

### The `“selected-control”` property

      “selected-control”         BtIcControl *

control after menu selection.

Flags: Read / Write

### The `“selected-object”` property

      “selected-object”          GstObject *

object the menu is invoked on.

Flags: Read / Write

### The `“selected-parameter-group”` property

      “selected-parameter-group” BtParameterGroup *

object-parameter-group the menu is invoked on.

Flags: Read / Write

### The `“selected-property-name”` property

      “selected-property-name”   gchar *

object-property-name the menu is invoked on.

Flags: Read / Write

Default value: NULL

### The `“type”` property

      “type”                     BtInteractionControllerMenuType

control types to list in the menu.

Flags: Read / Write / Construct Only

Default value: BT_INTERACTION_CONTROLLER_RANGE_MENU