A table of action items that can be used by plug-ins to export tables of action items that can be used by the UI to attach to keyboard shortcuts, assigned to toolbar buttons, and add to menus.
3ds Max's core code exports several ActionTables for built-in operations in 3ds Max. Plug-ins can also export their own action tables via methods available in ClassDesc.
Every ActionTable also has an ActionContextId associated with it. This ActionContextId can be shared with other tables. When assigning keyboard shortcuts to items in an ActionTable, tables that share a unique context id are forced to have unique shortcuts. Tables with different context ids can have overlapping keyboard shortcut assignments.
All methods of this class are implemented by the system. Note that this class may be sub-classed if required and that many functions can be overridden. See the topic Action System for details on sub-classing this class and ActionItem. For details on implementing an ActionTable please refer to the sample at /maxsdk/samples/modifiers/ffd.
- Version
- 4.0
- See also
- Class FPMixinInterface, Class ClassDesc, Structure ActionDescription, Class ActionItem, Class ActionCallback, Class ActionContext, Class IActionManager, Class DynamicMenu, Class DynamicMenuCallback, Class Interface.
|
CoreExport | ActionTable (ActionTableId id, ActionContextId contextId, MSTR &name, HACCEL hDefaults, int numIds, ActionDescription *pOps, HINSTANCE hInst) |
| This constructor builds the action table using an array of descriptors. More...
|
|
CoreExport | ActionTable (ActionTableId id, ActionContextId contextId, MSTR &name) |
| This constructor builds a new empty action table with the given ID, context ID and name. More...
|
|
virtual CoreExport | ~ActionTable () |
| Deletes all the operations maintained by the table and deletes the keyboard accelerator table if in use. More...
|
|
virtual CoreExport MSTR & | GetName () |
| Returns the name of the action table. More...
|
|
virtual CoreExport ActionTableId | GetId () |
| Returns the ActionTableID. More...
|
|
virtual CoreExport ActionContextId | GetContextId () |
| Returns the ActionContextId. More...
|
|
virtual CoreExport ActionCallback * | GetCallback () |
| Get the current callback associated with this table. More...
|
|
virtual CoreExport void | SetCallback (ActionCallback *pCallback) |
| Sets the callback object used by this ActionTable. More...
|
|
virtual CoreExport int | Count () |
| Returns the number of ActionItems in the table. More...
|
|
virtual CoreExport ActionItem * | operator[] (int i) |
| Returns a pointer to the nth ActionItem. More...
|
|
virtual CoreExport ActionItem * | GetAction (int cmdId) |
| Returns a pointer to the ActionItem associated with the command ID passed. More...
|
|
virtual CoreExport ActionItem * | GetActionByIndex (int index) |
| Returns a pointer to the nth ActionItem using the same algorithm as the operator[]. More...
|
|
virtual CoreExport void | AppendOperation (ActionItem *pAction) |
| Appends an ActionItem to the table. More...
|
|
virtual CoreExport BOOL | DeleteOperation (ActionItem *pAction) |
| Removes an operation from the table. More...
|
|
virtual CoreExport void | DeleteThis () |
| Deletes this ActionItem. More...
|
|
virtual CoreExport BOOL | GetButtonText (int cmdId, MSTR &buttonText) |
| Retrieves the text that will be used when the ActionItem is on a text button. More...
|
|
virtual CoreExport BOOL | GetMenuText (int cmdId, MSTR &menuText) |
| Retrieves the text to use when the item is on a menu (either Quad menu or main menu bar). More...
|
|
virtual CoreExport BOOL | GetDescriptionText (int cmdId, MSTR &descText) |
| Retrieves the text that is used for tool tips and menu help. More...
|
|
virtual CoreExport BOOL | IsChecked (int cmdId) |
| Returns TRUE if the menu item should be checked or a CUI button should be in the pressed state. More...
|
|
virtual CoreExport BOOL | IsIndeterminate (int cmdId) |
| Returns TRUE if the menu item should be indeterminate. More...
|
|
virtual CoreExport BOOL | IsItemVisible (int cmdId) |
| Determines if an item is to be visible on a menu. More...
|
|
virtual CoreExport BOOL | IsEnabled (int cmdId) |
| Determines if the operation is currently enabled and available. More...
|
|
virtual CoreExport void | WritePersistentActionId (int cmdId, MSTR &idString) |
| Converts an action item identifier to a string representation The textual representation of action item ids are used in .CUI and .KBD files. More...
|
|
virtual CoreExport int | ReadPersistentActionId (MSTR &idString) |
| Converts an action table string id to the action items numeric id. More...
|
|
virtual CoreExport MaxIcon * | GetIcon (int cmdId) |
| Returns an optional icon for the command, or NULL if there is none. More...
|
|
CoreExport void | BuildActionTable (HACCEL hDefaults, int numIds, ActionDescription *pOps, HINSTANCE hInst) |
| Fills the action table with the given action descriptions. More...
|
|
virtual CoreExport ActionItem * | GetCurrentAssignment (ACCEL accel) |
| Gets the action assigned to the given accelerator, if any. More...
|
|
virtual CoreExport void | AssignKey (int cmdId, ACCEL accel) |
| Assigns the command to the given accelerator. More...
|
|
virtual CoreExport void | RemoveShortcutFromTable (ACCEL accel) |
| Removes the given assignment from the shortcut table. More...
|
|
CoreExport FPInterfaceDesc * | GetDescByID (Interface_ID id) |
|
CoreExport FPInterfaceDesc * | GetDesc () |
|
virtual CoreExport BaseInterface * | GetInterface (Interface_ID id) |
|
virtual CoreExport Interface_ID | GetID () |
|
|
virtual CoreExport HACCEL | GetHAccel () |
| Returns the handle of the current keyboard accelerator for the table. More...
|
|
virtual CoreExport void | SetHAccel (HACCEL hAccel) |
| Sets the current keyboard accelerator for the table. More...
|
|
virtual CoreExport HACCEL | GetDefaultHAccel () |
| Gets the default keyboard accelerator table used when the user has not assigned any accelerators. More...
|
|
virtual CoreExport void | SetDefaultHAccel (HACCEL accel) |
| Sets the default keyboard accelerator table used when the user has not assigned any accelerators. More...
|
|
| FPMixinInterface () |
|
virtual LifetimeType | LifetimeControl () |
|
virtual CoreExport bool | RegisterNotifyCallback (InterfaceNotifyCallback *incb) |
|
virtual void | UnRegisterNotifyCallback (InterfaceNotifyCallback *incb) |
|
CoreExport | ~FPMixinInterface () |
|
virtual CoreExport FPStatus | Invoke (FunctionID fid, TimeValue t=0, FPParams *params=NULL) |
|
virtual FPStatus | Invoke (FunctionID fid, FPParams *params) |
|
virtual CoreExport FPStatus | Invoke (FunctionID fid, TimeValue t, FPValue &result, FPParams *params=NULL) |
|
virtual FPStatus | Invoke (FunctionID fid, FPValue &result, FPParams *params=NULL) |
|
virtual CoreExport FunctionID | FindFn (const MCHAR *name) |
|
virtual CoreExport BOOL | IsEnabled (FunctionID actionID) |
|
virtual CoreExport BOOL | IsChecked (FunctionID actionID) |
|
virtual CoreExport BOOL | IsVisible (FunctionID actionID) |
|
virtual CoreExport FunctionID | GetIsEnabled (FunctionID actionID) |
|
virtual CoreExport FunctionID | GetIsChecked (FunctionID actionID) |
|
virtual CoreExport FunctionID | GetIsVisible (FunctionID actionID) |
|
virtual ActionTable * | GetActionTable () |
|
virtual void | EnableActions (BOOL onOff) |
|
virtual UtilExport | ~BaseInterface () |
| Destructor. More...
|
|
virtual BaseInterface * | AcquireInterface () |
|
virtual void | ReleaseInterface () |
|
virtual void | DeleteInterface () |
|
virtual BaseInterface * | CloneInterface (void *remapDir=NULL) |
|
virtual UtilExport | ~InterfaceServer () |
| Destructor. More...
|
|
|
static UtilExport void * | operator new (size_t size) |
| Standard new operator used to allocate objects If there is insufficient memory, an exception will be thrown. More...
|
|
static UtilExport void * | operator new (size_t size, const std::nothrow_t &e) |
| Standard new operator used to allocate objects if there is insufficient memory, NULL will be returned. More...
|
|
static UtilExport void * | operator new (size_t size, const char *filename, int line) |
| New operator used to allocate objects that takes the filename and line number where the new was called If there is insufficient memory, an exception will be thrown. More...
|
|
static UtilExport void * | operator new (size_t size, int block_type, const char *filename, int line) |
| New operator used to allocate objects that takes the type of memory, filename and line number where the new was called If there is insufficient memory, an exception will be thrown. More...
|
|
static UtilExport void * | operator new (size_t size, const std::nothrow_t &e, const char *filename, int line) |
| New operator used to allocate objects that takes the filename and line number where the new was called If there is insufficient memory, NULL will be returned. More...
|
|
static UtilExport void * | operator new (size_t size, unsigned long flags) |
| New operator used to allocate objects that takes extra flags to specify special operations If there is insufficient memory, an exception will be thrown. More...
|
|
static UtilExport void * | operator new (size_t size, const std::nothrow_t &e, unsigned long flags) |
| New operator used to allocate objects that takes extra flags to specify special operations If there is insufficient memory, NULL will be returned. More...
|
|
static UtilExport void * | operator new[] (size_t size) |
| New operator used to allocate arrays of objects If there is insufficient memory, an exception will be thrown. More...
|
|
static UtilExport void * | operator new[] (size_t size, const std::nothrow_t &e) |
| New operator used to allocate arrays of objects If there is insufficient memory, NULL will be returned. More...
|
|
static UtilExport void * | operator new[] (size_t size, const char *filename, int line) |
| New operator used to allocate arrays of objects If there is insufficient memory, an exception will be thrown. More...
|
|
static UtilExport void * | operator new[] (size_t size, int block_type, const char *filename, int line) |
| New operator used to allocate arrays of objects. More...
|
|
static UtilExport void * | operator new[] (size_t size, const std::nothrow_t &e, const char *filename, int line) |
| New operator used to allocate arrays of objects If there is insufficient memory, NULL will be returned. More...
|
|
static UtilExport void * | operator new[] (size_t size, unsigned long flags) |
| New operator used to allocate arrays of objects If there is insufficient memory, an exception will be thrown. More...
|
|
static UtilExport void * | operator new[] (size_t size, const std::nothrow_t &e, unsigned long flags) |
| New operator used to allocate arrays of objects If there is insufficient memory, NULL will be returned. More...
|
|
static UtilExport void | operator delete (void *ptr) |
| Standard delete operator used to deallocate an object If the pointer is invalid, an exception will be thrown. More...
|
|
static UtilExport void | operator delete (void *ptr, const std::nothrow_t &e) |
| Standard delete operator used to deallocate an object If the pointer is invalid, nothing will happen. More...
|
|
static UtilExport void | operator delete (void *ptr, const char *filename, int line) |
| Delete operator used to deallocate an object that takes the filename and line number where the delete was called If the pointer is invalid, an exception will be thrown. More...
|
|
static UtilExport void | operator delete (void *ptr, int block_type, const char *filename, int line) |
| Delete operator used to deallocate an object that takes the type of memory, filename and line number where the delete was called If the pointer is invalid, an exception will be thrown. More...
|
|
static UtilExport void | operator delete (void *ptr, const std::nothrow_t &e, const char *filename, int line) |
| Delete operator used to deallocate an object that takes the filename and line number where the delete was called If the pointer is invalid, nothing will happen. More...
|
|
static UtilExport void | operator delete (void *ptr, unsigned long flags) |
| Delete operator used to deallocate an object that takes extra flags to specify special operations If the pointer is invalid, an exception will be thrown. More...
|
|
static UtilExport void | operator delete (void *ptr, const std::nothrow_t &e, unsigned long flags) |
| Delete operator used to deallocate an object that takes extra flags to specify special operations If the pointer is invalid, nothing will happen. More...
|
|
static UtilExport void | operator delete[] (void *ptr) |
| Standard delete operator used to deallocate an array of objects If the pointer is invalid, an exception will be thrown. More...
|
|
static UtilExport void | operator delete[] (void *ptr, const std::nothrow_t &e) |
| Standard delete operator used to deallocate an array of objects If the pointer is invalid, nothing will happen. More...
|
|
static UtilExport void | operator delete[] (void *ptr, const char *filename, int line) |
| Delete operator used to deallocate an array of objects that takes the filename and line number where the delete was called If the pointer is invalid, an exception will be thrown. More...
|
|
static UtilExport void | operator delete[] (void *ptr, int block_type, const char *filename, int line) |
| Delete operator used to deallocate an array of objects that takes the type of memory, filename and line number where the delete was called If the pointer is invalid, an exception will be thrown. More...
|
|
static UtilExport void | operator delete[] (void *ptr, const std::nothrow_t &e, const char *filename, int line) |
| Delete operator used to deallocate an array of objects that takes the filename and line number where the delete was called If the pointer is invalid, nothing will happen. More...
|
|
static UtilExport void | operator delete[] (void *ptr, unsigned long flags) |
| Delete operator used to deallocate an array of objects that takes extra flags to specify special operations If the pointer is invalid, an exception will be thrown. More...
|
|
static UtilExport void | operator delete[] (void *ptr, const std::nothrow_t &e, unsigned long flags) |
| Delete operator used to deallocate an array of objects that takes extra flags to specify special operations If the pointer is invalid, an exception will be thrown. More...
|
|
static UtilExport void * | operator new (size_t size, void *placement_ptr) |
| Placement new operator. More...
|
|
static UtilExport void | operator delete (void *ptr, void *placement_ptr) |
| Placement delete operator. More...
|
|
static CoreExport FPInterfaceDesc | nullInterface |
|