ContextMenu

class omni.kit.widget.stage.ContextMenu

Bases: object

Class for mananging context menu and menu items for the Stage widget.

Methods

__init__()

Creates the ContextMenu instance.

add_create_menu(menu_dict)

Adds the menu to the end of the stage context create menu.

add_menu(menu_dict)

Adds the menu to the end of the context menu.

bind_material_to_prim_dialog()

Displays the dialog where users can select materials and bind to selected prims.

bind_material_to_selected_prims()

Binds the hovered material prim to selected prims.

clear_default_prim()

Clears the default prim of the stage.

collapse_all()

Collapses all hovered or selected prims.

collapse_to(kind)

Collapses the hovered or selected prims recursively if the kind matches the given Kind.

destroy()

Destroys the ContextMenu instance, resets the function list.

expand_all()

Expands all hovered or selected prims.

expand_to(kind)

Expands the hovered or selected prims recursively if the kind matches the given Kind.

has_default_prim()

Checks if the selected prim is the default prim of the stage.

has_rename_function()

Checks whether there's a provided rename function in the current context object.

is_hovered_prim_material()

Checks if the hoved prim is a USD Material prim.

is_prim_active()

Checks if the selected prim is active.

is_prim_not_active()

Checks if the selected prim is NOT active.

is_prim_sudo_root()

Checks if the selected prim is at the root level of the stage.

link_selected(layer_identifier, hierarchy, ...)

Lock or unlink selected prims.

lock_selected(hierarchy, objects)

Lock or unlock selected prims.

no_default_prim()

Checks if the selected prim is NOT the default prim of the stage.

on_mouse_event(event)

ContextMenuEvent handler for the current context menu.

rename_prim()

Runs the provided 'rename_item' function on a prim.

select_linked_prims()

Select all linked prims in the current usd context.

select_locked_prims()

Select all locked prims in the current usd context.

set_default_prim()

Sets the (first) selected prim as the default prim of the stage.

show_close_tree()

If the collapsion related context menu items should be shown for the (first) selected prim.

show_create_menu()

Builds and shows the "Create" and "Add" menu.

show_open_tree()

If the expansion related context menu items should be shown for the (first) selected prim.

__init__()

Creates the ContextMenu instance.

static add_create_menu(menu_dict)

Adds the menu to the end of the stage context create menu. Returns the MenuSubscription object that should be alive all the time. Once the returned object is destroyed, the added menu will be destroyed as well.

Parameters

menu_dict – A dictionary containing menu settings. See ContextMenuExtension docs for information on values.

Returns

MenuSubscription. Keep a copy of this as the custom menu will be removed when `release()` is explicitly

called or when this is garbage collected.

static add_menu(menu_dict)

Adds the menu to the end of the context menu. Returns the MenuSubscription object that should be alive all the time. Once the returned object is destroyed, the added menu will be destroyed as well.

Parameters

menu_dict – A dictionary containing menu settings. See ContextMenuExtension docs for information on values.

Returns

MenuSubscription. Keep a copy of this as the custom menu will be removed when `release()` is explicitly

called or when this is garbage collected.

bind_material_to_prim_dialog()

Displays the dialog where users can select materials and bind to selected prims. Will not show the dialog if no prims are selected.

Parameters

objects (Dict) – The context object.

bind_material_to_selected_prims()

Binds the hovered material prim to selected prims. If either the hovered prim or the prim list is empty, no operation will be done.

Parameters

objects (Dict) – The context object.

clear_default_prim()

Clears the default prim of the stage.

Parameters

objects (Dict) – The context object.

collapse_all()

Collapses all hovered or selected prims.

Parameters

objects (Dict) – The context object.

collapse_to(kind)

Collapses the hovered or selected prims recursively if the kind matches the given Kind.

Parameters
  • objects (Dict) – The context object.

  • kind (str) – The USD Kind to collapse.

destroy()

Destroys the ContextMenu instance, resets the function list.

expand_all()

Expands all hovered or selected prims.

Parameters

objects (Dict) – The context object.

expand_to(kind)

Expands the hovered or selected prims recursively if the kind matches the given Kind.

Parameters
  • objects (Dict) – The context object.

  • kind (str) – The USD Kind to collapse.

has_default_prim()

Checks if the selected prim is the default prim of the stage. If the prim selection is not a single prim (eg. empty selection or multiple selected), returns False. If the stage doesn’t have a default prim, also returns False.

Parameters

objects (Dict) – The context object.

Returns

Whether the selected prim is the default prim. If the prim selection is not a single prim, returns False.

Return type

bool

has_rename_function()

Checks whether there’s a provided rename function in the current context object.

Parameters

objects (Dict) – The context object.

Returns

True if ‘rename_item’ is in function list

Return type

bool

is_hovered_prim_material()

Checks if the hoved prim is a USD Material prim. If no hovered prim detected, returns False.

Parameters

objects (Dict) – The context object.

Returns

Whether the hovered prim is a USD Material prim. If no hovered prim detected, returns False.

Return type

bool

is_prim_active()

Checks if the selected prim is active. If the prim selection is not a single prim (eg. empty selection or multiple selected), returns False.

Parameters

objects (Dict) – The context object.

Returns

Whether the selected prim is active. If the prim selection is not a single prim, returns False.

Return type

bool

is_prim_not_active()

Checks if the selected prim is NOT active. If the prim selection is not a single prim (eg. empty selection or multiple selected), returns True.

Parameters

objects (Dict) – The context object.

Returns

Whether the selected prim is NOT active. If the prim selection is not a single prim, returns True.

Return type

bool

is_prim_sudo_root()

Checks if the selected prim is at the root level of the stage. If the prim selection is not a single prim (eg. empty selection or multiple selected), returns False.

Parameters

objects (Dict) – The context object.

Returns

Whether the selected prim is at root level. If the prim selection is not a single prim, returns False.

Return type

bool

Lock or unlink selected prims.

Parameters
  • link_or_unlink (bool) – Links the spec paths if True, else the operation is unlink.

  • layer_identifiers (Union[str, List[str]]) – List of layer identifiers or single layer identifier.

  • hierarchy (bool) – Linking/Unlinking descendant specs or not.

  • objects – The context object.

lock_selected(hierarchy, objects)

Lock or unlock selected prims.

Parameters
  • lock_or_unlock (bool) – Locks the spec paths if True, else the operation is unlock.

  • hierarchy (bool) – Locking/Unlocking descendant specs or not.

  • objects – The context object.

no_default_prim()

Checks if the selected prim is NOT the default prim of the stage. If the prim selection is not a single prim (eg. empty selection or multiple selected), returns True. If the stage doesn’t have a default prim, also returns True.

Parameters

objects (Dict) – The context object.

Returns

Whether the selected prim is NOT the default prim. If the prim selection is not a single prim,

returns False.

Return type

bool

on_mouse_event(event)

ContextMenuEvent handler for the current context menu.

Parameters

event (omni.kit.widget.stage.stage_delegate.ContextMenuEvent) – The incoming ContextMenuEvent. It contains information of the stage, prim path and node expansion status in its payload.

rename_prim()

Runs the provided ‘rename_item’ function on a prim. If the prim list provided in the context is empty or of multiple prims, it returns False without applying any rename function.

Parameters

objects (Dict) – The context object.

Returns

False if the prim list provided is empty or is of multiple prims. Otherwise if a rename

function is provided, it will run the function without returning.

Return type

Optional[bool]

select_linked_prims()

Select all linked prims in the current usd context.

Parameters

objects (Dict) – The context object. Unused.

select_locked_prims()

Select all locked prims in the current usd context.

Parameters

objects (Dict) – The context object. Unused.

set_default_prim()

Sets the (first) selected prim as the default prim of the stage.

Parameters

objects (Dict) – The context object.

show_close_tree()

If the collapsion related context menu items should be shown for the (first) selected prim. If the prim is a light or camera and doesn’t have multiple children, items should not be shown. Otherwise, if the prim doesn’t have any children, items should not be shown. If the current prim’s associated tree node item is open, then items should be shown.

Args:

objects (Dict): The context object.

Returns

Whether the collapsion related context menu items should be shown for the (first) selected prim.

Return type

bool

show_create_menu()

Builds and shows the “Create” and “Add” menu.

Parameters

objects (Dict) – The context object.

show_open_tree()

If the expansion related context menu items should be shown for the (first) selected prim. If the prim is a light or camera and doesn’t have multiple children, items should not be shown. Otherwise, if the prim doesn’t have any children, items should not be shown. If the current prim’s associated tree node item is open, then items should not be shown.

Args:

objects (Dict): The context object.

Returns

Whether the expansion related context menu items should be shown for the (first) selected prim.

Return type

bool