C++ API Reference

Base class for context creation commands. More...

#include <MPxContextCommand.h>

+ Inheritance diagram for MPxContextCommand:

Public Member Functions

 MPxContextCommand ()
 Class constructor.
 
virtual ~MPxContextCommand ()
 Class destructor.
 
virtual MStatus doEditFlags ()
 This method is called when the command is called in edit mode. More...
 
virtual MStatus doQueryFlags ()
 This method is called when the command is called in query mode. More...
 
virtual MPxContextmakeObj ()
 This function is used to instantiate a proxy context. More...
 
virtual MStatus appendSyntax ()
 This method should be overridden to append syntax to the context command. More...
 
MStatus setResult (bool result)
 This method should be called when the result of the context command is a boolean. More...
 
MStatus setResult (int result)
 This method should be called when the result of the context command is an integer. More...
 
MStatus setResult (double result)
 This method should be called when the result of the context command is a double. More...
 
MStatus setResult (const MString &result)
 This method should be called when the result of the context command a string. More...
 

Static Public Member Functions

static const char * className ()
 Returns the name of this class. More...
 

Protected Member Functions

MSyntax syntax (MStatus *ReturnStatus=NULL) const
 USE _syntax() IN SCRIPT. More...
 
MArgParser parser (MStatus *ReturnStatus=NULL) const
 USE _parser() IN SCRIPT. More...
 

Detailed Description

Base class for context creation commands.

This is the base class for context creation commands.

The purpose of this command class is to create instances of user contexts derived from MPxContext, and to allow the MEL programmer to edit and query various properties of the context related to this command.

The user will derive off of this class and override the makeObj method which will be called when this command is invoked in Maya.

The context command is registered in Maya using MFnPlugin::registerContextCommand

Examples:
componentScaleManip/componentScaleManip.cpp, customAttrManip/customAttrManip.cpp, grabUVMain.cpp, helixTool/helixTool.cpp, lassoTool/lassoTool.cpp, manipOverride/customTriadManip.h, manipOverride/manipOverride.cpp, marqueeTool/marqueeTool.cpp, moveManip/moveManip.cpp, moveNumericTool/moveNumericTool.cpp, moveTool/moveTool.cpp, richSelectionTool/richSelectionTool.cpp, rotateManip/rotateManip.cpp, and surfaceBumpManip/surfaceBumpManip.cpp.

Member Function Documentation

MStatus doEditFlags ( )
virtual

This method is called when the command is called in edit mode.

This method should be overridden by context commands to determine which edit flags are set in conjunction with the argument parser for this command. The argument parser for this command can be obtained by calling the parser method. If the command is called with both the edit flag and the query flag, then the query flag will be ignored.

Returns
  • MS::kSuccess operation successful
  • MS::kFailure operation failed
Examples:
grabUVMain.cpp, and helixTool/helixTool.cpp.
MStatus doQueryFlags ( )
virtual

This method is called when the command is called in query mode.

This method should be overridden by context commands to determine which query flags are set in conjunction with the argument parser for this command. The argument parser for this command can be obtained by calling the parser method. If the command is called with both the edit flag and the query flag, then the query flag will be ignored.

Returns
  • MS::kSuccess operation successful
  • MS::kFailure operation failed
Examples:
grabUVMain.cpp, and helixTool/helixTool.cpp.
MStatus appendSyntax ( )
virtual

This method should be overridden to append syntax to the context command.

The syntax object can be obtained by calling the syntax method. The following flags cannot be used as user-defined flags as they are reserved for edit and query: "-e", "-edit", "-q", "-query".

Returns
  • MS::kSuccess operation successful
  • MS::kFailure operation failed
Examples:
grabUVMain.cpp, and helixTool/helixTool.cpp.
MStatus setResult ( bool  result)

This method should be called when the result of the context command is a boolean.

Parameters
[in]resultthe boolean result
Returns
  • MS::kSuccess operation successful
  • MS::kFailure operation failed
MStatus setResult ( int  result)

This method should be called when the result of the context command is an integer.

Parameters
[in]resultthe integer result
Returns
  • MS::kSuccess operation successful
  • MS::kFailure operation failed
MStatus setResult ( double  result)

This method should be called when the result of the context command is a double.

Parameters
[in]resultthe double result
Returns
  • MS::kSuccess operation successful
  • MS::kFailure operation failed
MStatus setResult ( const MString result)

This method should be called when the result of the context command a string.

Parameters
[in]resultthe string result
Returns
  • MS::kSuccess operation successful
  • MS::kFailure operation failed
const char * className ( )
static

Returns the name of this class.

Returns
Name of this class.
MSyntax syntax ( MStatus ReturnStatus = NULL) const
protected

USE _syntax() IN SCRIPT.

This method returns the syntax object of this context command.

From an overridden version of the appendSyntax method you may append to the syntax object.

Parameters
[out]ReturnStatusreturn status
Returns
The syntax object
Status Codes:
  • MS::kSuccess operation successful
  • MS::kFailure operation failed
MArgParser parser ( MStatus ReturnStatus = NULL) const
protected

USE _parser() IN SCRIPT.

This method returns the argument parser of this context command.

The argument parser can be used in the overridden versions of doEditFlags and doQueryFlags to determine which flags are set.

Parameters
[out]ReturnStatusreturn status
Returns
The argument parser
Status Codes:
  • MS::kSuccess operation successful
  • MS::kFailure operation failed

The documentation for this class was generated from the following files: