FBMenuManager Class Reference

#include <mobu-python-api.h>

Class Description

The menu manager allows access to MotionBuilder menu bar.

It can be used to retrieve the item corresponding to a menu path in the menu bar. A menu path is similar to a file path but it specifies the location of menu item in a hierarchy of menu. ex: to retrieve the item corresponding to MoBu Save item: item = menuMgr.GetMenu("File/Save") Other menu items in MoBu menu bar include the following: "File", "Edit","Animation","Window","Settings", "Layout","Help" The menu manager can be used to insert new menu item in the menubar. You have to specify the menu path at which to insert the menu (to insert a new root menu, use NULL or None as the menu path)

#Insert a new Root Menu before the Help menu
menuMgr.InsertBefore(None, "Help", "before menu")
#Insert a new Root Menu after the Help menu
menuMgr.InsertAfter(None, "Help", "After menu")

As a convenience operation, you can from the menu manager enable and disable menu item (instead of retrieving their corresponding item).

+ Inheritance diagram for FBMenuManager:

Public Member Functions

 __reduce__ ()
 
object GetMenu (FBMenuManager arg1, str arg2)
 Get the Menu (NOT menu item) corresponding to a menu path. More...
 
 __init__ (object arg1)
 Constructor. More...
 
object InsertFirst (FBMenuManager arg1, str arg2, str arg3)
 Insert a new menu at the first position of a specific path. More...
 
object InsertLast (FBMenuManager arg1, str arg2, str arg3)
 Insert a new menu at the last position of a specific path. More...
 
object InsertAfter (FBMenuManager arg1, str arg2, str arg3, str arg4)
 Insert a new menu at a specific path AFTER another item. More...
 
object InsertBefore (FBMenuManager arg1, str arg2, str arg3, str arg4)
 Insert a new menu at a specific path BEFORE another item. More...
 
 SetItemEnable (FBMenuManager arg1, str arg2, object arg3, object arg4)
 Enable or disable a specific menu item. More...
 
bool IsItemEnable (FBMenuManager arg1, str arg2, object arg3)
 Check if a particular item is enabled or disabled. More...
 
bool ExecuteMenuItem (FBMenuManager arg1, str arg2, object arg3)
 Execute a particular menu item. More...
 
bool ExecuteMenuItemFromFullPath (FBMenuManager arg1, str arg2)
 Execute a particular menu item. More...
 
- Public Member Functions inherited from FBComponent
 __reduce__ ()
 
FBPropertyList PropertyGetModifiedList (FBComponent arg1, FBPlugModificationFlag arg2)
 Get list of properties which have been modified since last loading. More...
 
str ClassName (FBComponent arg1)
 Get the class name. More...
 
 DisableObjectFlags (FBComponent arg1, FBObjectFlag arg2)
 Disable a specific Object Flags. More...
 
 EnableObjectFlags (FBComponent arg1, FBObjectFlag arg2)
 Enable a specific Object Flags. More...
 
bool FBCreate (FBComponent arg1)
 Open Reality Creation function. More...
 
 FBDelete (FBComponent arg1)
 Open Reality deletion function. More...
 
 FBDestroy (FBComponent arg1)
 Open Reality destruction function. More...
 
FBObjectFlag GetObjectFlags (FBComponent arg1)
 Get all Object Flags (concatenated). More...
 
bool GetObjectStatus (FBComponent arg1, FBObjectStatus arg2)
 Check to see if an object status is enabled. More...
 
bool HasObjectFlags (FBComponent arg1, FBObjectFlag arg2)
 Check whether a specific object flag is enabled. More...
 
bool Is (FBComponent arg1, object arg2)
 Returns true if object is of type TypeId. More...
 
bool ProcessNamespaceHierarchy (FBComponent arg1, FBNamespaceAction arg2, str arg3, str arg4, object arg5)
 ProcessNamespaceHierarchy. More...
 
bool ProcessObjectNamespace (FBComponent arg1, FBNamespaceAction arg2, str arg3, str arg4, object arg5)
 ProcessObjectNamespace. More...
 
int PropertyAdd (FBComponent arg1, FBProperty arg2)
 Add a property to the component's property manager. More...
 
bool PropertyAddReferenceProperty (FBComponent arg1, FBProperty arg2)
 Add a reference property to the component's property manager. More...
 
object PropertyCreate (FBComponent arg1, str arg2, FBPropertyType arg3, str arg4, object arg5, object arg6, FBProperty arg7)
 Create user or dynamic property. More...
 
 PropertyRemove (FBComponent arg1, FBProperty arg2)
 Remove a Property from the component's Property manager. More...
 
 SetObjectFlags (FBComponent arg1, FBObjectFlag arg2)
 SetObjectFlags. More...
 
 SetObjectStatus (FBComponent arg1, FBObjectStatus arg2, object arg3)
 Enable/Disable a specific Object Status. More...
 
 HardSelect (FBComponent arg1)
 HardSelect. More...
 
object GetOwnerFileReference (FBComponent arg1)
 Get the owner FileReference object. More...
 
 __init__ (...)
 Constructor. More...
 
- Public Member Functions inherited from FBPlug
 __reduce__ ()
 
bool BeginChange (FBPlug arg1)
 Begins a change on multiple plugs. More...
 
str ClassName (FBPlug arg1)
 internal System vars. More...
 
bool ConnectDst (FBPlug arg1, FBPlug arg2, FBConnectionType arg3)
 Add a destination connection. More...
 
bool ConnectDstAt (FBPlug arg1, object arg2, FBPlug arg3, FBConnectionType arg4)
 Add a destination connection. More...
 
bool ConnectSrc (FBPlug arg1, FBPlug arg2, FBConnectionType arg3)
 Add a source connection. More...
 
bool ConnectSrcAt (FBPlug arg1, object arg2, FBPlug arg3, FBConnectionType arg4)
 Add a source connection. More...
 
 DisconnectAllDst (FBPlug arg1)
 Remove all destination connections. More...
 
 DisconnectAllSrc (FBPlug arg1)
 Remove all source connections. More...
 
bool DisconnectDst (FBPlug arg1, FBPlug arg2)
 Remove a destination connection. More...
 
bool DisconnectDstAt (FBPlug arg1, object arg2)
 Remove a destination connection at a specified index. More...
 
bool DisconnectSrc (FBPlug arg1, FBPlug arg2)
 Remove a source connection. More...
 
bool DisconnectSrcAt (FBPlug arg1, object arg2)
 Remove a source connection at a specified index. More...
 
 EndChange (FBPlug arg1)
 Ends a change on multiple plugs. More...
 
object GetDst (FBPlug arg1, object arg2)
 Get a destination connection's plug at specified index. More...
 
int GetDstCount (FBPlug arg1)
 Get destination connection count. More...
 
FBConnectionType GetDstType (FBPlug arg1, object arg2)
 Get a destination connection's type at specified index. More...
 
object GetOwned (FBPlug arg1, object arg2)
 Get the owned plug at specified index. More...
 
int GetOwnedCount (FBPlug arg1)
 Get the owned plug count. More...
 
object GetOwner (FBPlug arg1)
 Get the owner of this plug. More...
 
object GetSrc (FBPlug arg1, object arg2)
 Get a source connection's plug at specified index. More...
 
int GetSrcCount (FBPlug arg1)
 Get source connection count. More...
 
FBConnectionType GetSrcType (FBPlug arg1, object arg2)
 Get a source connection's type at specified index. More...
 
bool Is (FBPlug arg1, object arg2)
 Is( int pTypeId ) More...
 
bool IsSDKComponent (FBPlug arg1)
 Return whether or not item is an SDK component. More...
 
 MoveSrcAt (...)
 
bool ReplaceDstAt (FBPlug arg1, object arg2, FBPlug arg3)
 Replace a destination connection at a specified index. More...
 
bool ReplaceSrcAt (FBPlug arg1, object arg2, FBPlug arg3)
 Replace a source connection at a specified index. More...
 
bool SwapSrc (FBPlug arg1, object arg2, object arg3)
 Swap source connection at index A with source connection at index B. More...
 
 SetSelfModified (FBPlug arg1, FBPlugModificationFlag arg2, object arg3)
 Set the plug's self modification flag. More...
 
bool GetSelfModified (FBPlug arg1, FBPlugModificationFlag arg2)
 Tell if the plug's self has changed. More...
 
 SetContentModified (FBPlug arg1, FBPlugModificationFlag arg2, object arg3)
 Set the plug's owned property/object's modification flag. More...
 
bool GetContentModified (FBPlug arg1, FBPlugModificationFlag arg2)
 Tell if the plug's content has changed. More...
 
int GetPlugConnectionModifiedList (FBPlug arg1, FBPlugList arg2, FBPlugModificationFlag arg3, object arg4)
 Get plug's modified src/dst property/object connection added/removed List. More...
 
bool RevertModification (FBPlug arg1, FBPlugModificationFlag arg2)
 Revert the plug's modification to original status. More...
 
 __init__ (...)
 
method staticmethod (function)
 
- Public Member Functions inherited from FBPythonWrapper
 __reduce__ ()
 
 __init__ (...)
 

Additional Inherited Members

- Public Attributes inherited from FBComponent
object OwnerNamespace
 
ORSDK2018::FBPropertyListComponent Components
 List: List of components. More...
 
ORSDK2018::FBPropertyString Name
 Read Write Property: Unique name of object. More...
 
ORSDK2018::FBPropertyString LongName
 Read Write Property: Name and namespace for object. More...
 
object FullName
 
ORSDK2018::FBPropertyListComponent Parents
 List: Parents. More...
 
ORSDK2018::FBPropertyManager PropertyList
 Read Only Property: Manages all of the properties for the component. More...
 
FBPropertyBool Selected
 Read Write Property: Selected property. More...
 
- Public Attributes inherited from FBPythonWrapper
object OnUnbind
 

Member Function Documentation

__init__ ( object  arg1)

Constructor.

Python Docstring:

__init__( (object)arg1) -> None 

C++ Signature:

 FBMenuManager() 

There is only one MenuManager in MotionBuilder, creating multiple FBMenuManager always return the same handle to the same global menu manager.

__reduce__ ( )
bool ExecuteMenuItem ( FBMenuManager  arg1,
str  arg2,
object  arg3 
)

Execute a particular menu item.

Python Docstring:

ExecuteMenuItem( (FBMenuManager)arg1, (str)arg2, (object)arg3) -> bool 

C++ Signature:

bool ExecuteMenuItem(const char * pMenuPath, int pMenuItemID) 

The menu path specifies the menu containing the menu item to execute. The ID specifies which menu item to execute in the menu.

Parameters
pMenuPathPath containing the menu item to execute.
pMenuItemIDUnique ID of the menu item to execute.
Returns
True if the menu item has been executed, false otherwise. It could returns false if the menu item cannot be found or if the menu item is found but is disabled or is a separator.
bool ExecuteMenuItemFromFullPath ( FBMenuManager  arg1,
str  arg2 
)

Execute a particular menu item.

Python Docstring:

ExecuteMenuItemFromFullPath( (FBMenuManager)arg1, (str)arg2) -> bool 

C++ Signature:

bool ExecuteMenuItemFromFullPath(const char * pMenuItemFullPath) 

The menu path specifies the menu item (NOT menu) to execute. Don't forget that most menu path already in MotionBuilder have a "&" as the first letter of their name. You have to use the "/" character as a separator in the specified menu path (ex: "Settings/&Preferences..."), and exactly what is written in the menu item (ex: "Edit/D&eselect\tShift+D").

Parameters
pMenuItemPathPath of the menu item to execute.
Returns
True if the menu item has been executed, false otherwise. It could returns false if the menu item cannot be found or if the menu item is found but is disabled or is a separator.
# This example shows how to display the About Box, as if the user opened it via the main menu Help > About MotionBuilder:
menuManager = FBMenuManager()
aboutBoxFullPath = "Help/&About MotionBuilder"
menuManager.ExecuteMenuItemFromFullPath( aboutBoxFullPath )
object GetMenu ( FBMenuManager  arg1,
str  arg2 
)

Get the Menu (NOT menu item) corresponding to a menu path.

Python Docstring:

GetMenu( (FBMenuManager)arg1, (str)arg2) -> object 

C++ Signature:

ORSDK2018::FBGenericMenu * GetMenu(const char * pPath) 

Don't forget that most menu path already in MotionBuilder have a "&" character as the first letter of their name. You have to use the "/" character as a separator in the specified menu path (ex: "Help/&Communities").

Parameters
pPathPath of the menu to retrieve
Returns
the FBGenericMenu at this path./
object InsertAfter ( FBMenuManager  arg1,
str  arg2,
str  arg3,
str  arg4 
)

Insert a new menu at a specific path AFTER another item.

Python Docstring:

InsertAfter( (FBMenuManager)arg1, (str)arg2, (str)arg3, (str)arg4) -> object 

C++ Signature:

ORSDK2018::FBGenericMenuItem * InsertAfter(const char * pMenuPath, const char * pBeforeMenuName, const char * pMenuName) 
Parameters
pMenuPathPath where to insert the menu. If this is NULL (None) it will insert a new root menu.
pBeforeMenuNameName of the menu item AFTER which we will insert the new item.
Returns
Returns the menu item corresponding to the newly inserted menu.
object InsertBefore ( FBMenuManager  arg1,
str  arg2,
str  arg3,
str  arg4 
)

Insert a new menu at a specific path BEFORE another item.

Python Docstring:

InsertBefore( (FBMenuManager)arg1, (str)arg2, (str)arg3, (str)arg4) -> object 

C++ Signature:

ORSDK2018::FBGenericMenuItem * InsertBefore(const char * pMenuPath, const char * pAfterMenuName, const char * pMenuName) 
Parameters
pMenuPathPath where to insert the menu. If this is NULL (None) it will insert a new root menu.
pAfterMenuNameName of the menu item BEFORE which we will insert the new item.
Returns
Returns the menu item corresponding to the newly inserted menu.
object InsertFirst ( FBMenuManager  arg1,
str  arg2,
str  arg3 
)

Insert a new menu at the first position of a specific path.

Python Docstring:

InsertFirst( (FBMenuManager)arg1, (str)arg2, (str)arg3) -> object 

C++ Signature:

ORSDK2018::FBGenericMenuItem * InsertFirst(const char * pMenuPath, const char * pMenuName) 
Parameters
pMenuPathPath where to insert the menu. If this is NULL (None) it will insert a new root menu.
pMenuNameName (Caption) of the newly inserted menu.
Returns
Returns the menu item corresponding to the newly inserted menu.
object InsertLast ( FBMenuManager  arg1,
str  arg2,
str  arg3 
)

Insert a new menu at the last position of a specific path.

Python Docstring:

InsertLast( (FBMenuManager)arg1, (str)arg2, (str)arg3) -> object 

C++ Signature:

ORSDK2018::FBGenericMenuItem * InsertLast(const char * pMenuPath, const char * pMenuName) 
Parameters
pMenuPathPath where to insert the menu. If this is NULL (None) it will insert a new root menu.
pMenuNameName (Caption) of the newly inserted menu.
Returns
Returns the menu item corresponding to the newly inserted menu.
bool IsItemEnable ( FBMenuManager  arg1,
str  arg2,
object  arg3 
)

Check if a particular item is enabled or disabled.

Python Docstring:

IsItemEnable( (FBMenuManager)arg1, (str)arg2, (object)arg3) -> bool 

C++ Signature:

bool IsItemEnable(const char * pMenuPath, int pItemId) 

The menu path specifies the menu where we find the item to be enabled/disabled. The Id specifies which item in the menu.

Parameters
pMenuPathPath where to find the menu to check
pItemIdId of the item to check.
Returns
Is the item enable or not.
SetItemEnable ( FBMenuManager  arg1,
str  arg2,
object  arg3,
object  arg4 
)

Enable or disable a specific menu item.

Python Docstring:

SetItemEnable( (FBMenuManager)arg1, (str)arg2, (object)arg3, (object)arg4) -> None 

C++ Signature:

void SetItemEnable(const char * pMenuPath, int pItemId, bool pEnable) 

The menu path specifies the menu where we find the item to be enabled/disabled. The Id specifies which item in the menu.

Parameters
pMenuPathPath where to find the menu to enable/disable
pItemIdId of the item in the menu to disable.
pEnableEnable (true) or disable (false) a menu item.