MUiMessage Class Reference
[OpenMayaUI - API module for user interface]

#include <MUiMessage.h>
Inheritance diagram for MUiMessage:
Inheritance graph
[legend]
Collaboration diagram for MUiMessage:
Collaboration graph
[legend]

List of all members.


Detailed Description

UI messages.

This class is used to register callbacks to track the deletion of UI objects.

The first parameter passed to the add callback method is the name of the UI that will trigger the callback.

The method returns an id which is used to remove the callback.

To remove a callback use MMessage::removeCallback.

All callbacks that are registered by a plug-in must be removed by that plug-in when it is unloaded. Failure to do so will result in a fatal error.


Public Types

typedef void(*  MStringFunction )(const MString &str, void *clientData)
  Pointer to a callback function which takes a string.

Static Public Member Functions

static MCallbackId  addUiDeletedCallback (const MString &uiName, MMessage::MBasicFunction func, void *clientData=NULL, MStatus *ReturnStatus=NULL)
static MCallbackId  addCameraChangedCallback (const MString &panelName, MMessage::MStringNode func, void *clientData=NULL, MStatus *ReturnStatus=NULL)
static MCallbackId  add3dViewDestroyMsgCallback (const MString &panelName, MUiMessage::MStringFunction func, void *clientData=NULL, MStatus *ReturnStatus=NULL)
static MCallbackId  add3dViewPreRenderMsgCallback (const MString &panelName, MUiMessage::MStringFunction func, void *clientData=NULL, MStatus *ReturnStatus=NULL)
static MCallbackId  add3dViewPostRenderMsgCallback (const MString &panelName, MUiMessage::MStringFunction func, void *clientData=NULL, MStatus *ReturnStatus=NULL)
static MCallbackId  add3dViewPreMultipleDrawPassMsgCallback (const MString &panelName, MUiMessage::MStringIndexFunction func, void *clientData=NULL, MStatus *ReturnStatus=NULL)
static MCallbackId  add3dViewPostMultipleDrawPassMsgCallback (const MString &panelName, MUiMessage::MStringIndexFunction func, void *clientData=NULL, MStatus *ReturnStatus=NULL)

Member Typedef Documentation

typedef void(* MUiMessage::MStringFunction)(const MString &str, void *clientData)

Pointer to a callback function which takes a string.

Parameters:
[in]  str  Meaning depends upon the message for which the callback was registered.
[in]  clientData  Pointer to user-defined data supplied when the callback was registered.

Reimplemented from MMessage.


Member Function Documentation

MCallbackId MUiMessage::addUiDeletedCallback ( const MString uiName,
MMessage::MBasicFunction  func,
void *  clientData = NULL,
MStatus ReturnStatus = NULL  
) [static]

This method registers a callback for UI deleted messages.

The callback function will be passed any client data that was provided when the callback was registered.

Parameters:
[in]  uiName  the name of the UI object to register the callback for
[in]  func  the callback function
  • clientData User defined data passed to the callback function
param[in] clientData User defined data that will be passed to the callback function param[out] ReturnStatus status code
Returns:
Identifier used for removing the callback.
Status Codes:

MCallbackId MUiMessage::addCameraChangedCallback ( const MString panelName,
MMessage::MStringNode  func,
void *  clientData = NULL,
MStatus ReturnStatus = NULL  
) [static]

This method registers a callback for cameras being changed in 3d views. The callback is called when the camera changes for the given panel, not when attributes on the panel's camera change.

The callback function will be passed any client data that was provided when the callback was registered.

Parameters:
[in]  func  the callback function
  • panelName The name of the panel that had the camera change.
  • camera The current camera used by the panel.
  • clientData User defined data passed to the callback function
[in]  clientData  User defined data that will be passed to the callback function
[out]  ReturnStatus  status code
Returns:
Identifier used for removing the callback.
Status Codes:

MCallbackId MUiMessage::add3dViewDestroyMsgCallback ( const MString panelName,
MUiMessage::MStringFunction  func,
void *  clientData = NULL,
MStatus ReturnStatus = NULL  
) [static]

This method registers a callback for when a particular 3d view gets destroyed. The callback is called before the destruction of the view.

The callback function will be passed any client data that was provided when the callback was registered.

Parameters:
[in]  func  the callback function
  • panelName The name of the panel that contains the 3d view.
  • clientData User defined data passed to the callback function
[in]  clientData  User defined data that will be passed to the callback function
[out]  ReturnStatus  status code
Returns:
Identifier used for removing the callback.
Status Codes:
Examples:

MCallbackId MUiMessage::add3dViewPreRenderMsgCallback ( const MString panelName,
MUiMessage::MStringFunction  func,
void *  clientData = NULL,
MStatus ReturnStatus = NULL  
) [static]

This method registers a callback for when a particular 3d view is about to render it's contents. It is called before the scene is drawn, but after the background has been drawn.

The callback function will be passed any client data that was provided when the callback was registered.

Parameters:
[in]  func  the callback function
  • panelName The name of the panel that contains the 3d view.
  • clientData User defined data passed to the callback function
[in]  clientData  User defined data that will be passed to the callback function
[out]  ReturnStatus  status code
Returns:
Identifier used for removing the callback.
Status Codes:
Examples:

MCallbackId MUiMessage::add3dViewPostRenderMsgCallback ( const MString panelName,
MUiMessage::MStringFunction  func,
void *  clientData = NULL,
MStatus ReturnStatus = NULL  
) [static]

This method registers a callback for when the 3d view is about to display it's rendered contents to the viewport. It is called for every refresh of the view, after the scene is drawn, but before any 2d adornments are drawn.

The callback function will be passed any client data that was provided when the callback was registered.

Parameters:
[in]  func  the callback function
  • panelName The name of the panel that contains the 3d view.
  • clientData User defined data passed to the callback function
[in]  clientData  User defined data that will be passed to the callback function
[out]  ReturnStatus  status code
Returns:
Identifier used for removing the callback.
Status Codes:
Examples:

MCallbackId MUiMessage::add3dViewPreMultipleDrawPassMsgCallback ( const MString panelName,
MUiMessage::MStringIndexFunction  func,
void *  clientData = NULL,
MStatus ReturnStatus = NULL  
) [static]

This method registers a callback for when a particular 3d view's specific pass is about to be drawn when multiple drawing is enabled.

The 3D view callbacks are called in the following order:

                PreRender() callback
                   PreMultipleDrawPass( 0 ) callback
                                MPx3dModelView::preMultipleDrawPass( 0 ) [If available]
                                        Render()
                                MPx3dModelView::postMultipleDrawPass( 0 ) [If available]
                        PostMultipleDrawPass( 0 ) callback
                   PreMultipleDrawPass( 1 ) callback
                                MPx3dModelView::preMultipleDrawPass( 1 ) [If available]
                                        Render()
                                MPx3dModelView::postMultipleDrawPass( 1 ) [If available]
                        PostMultipleDrawPass( 1 ) callback
                        ...
           PostRender callback  
        

The callback function will be passed any client data that was provided when the callback was registered.

Parameters:
[in] func the callback function
  • panelName The name of the panel that contains the 3d view.
  • clientData User defined data passed to the callback function
[in] clientData User defined data that will be passed to the callback function
[out] ReturnStatus status code
Returns:
Identifier used for removing the callback.
Status Codes:

MCallbackId MUiMessage::add3dViewPostMultipleDrawPassMsgCallback ( const MString panelName,
MUiMessage::MStringIndexFunction  func,
void *  clientData = NULL,
MStatus ReturnStatus = NULL  
) [static]

This method registers a callback for when a particular 3d view's specified pass is finshed when multiple drawing is enabled.

See add3dViewPreMultipleDrawPassMsgCallback for the order in which 3D view callbacks are called.

The callback function will be passed any client data that was provided when the callback was registered.

Parameters:
[in]  func  the callback function
  • panelName The name of the panel that contains the 3d view.
  • clientData User defined data passed to the callback function
[in]  clientData  User defined data that will be passed to the callback function
[out]  ReturnStatus  status code
Returns:
Identifier used for removing the callback.
Status Codes:

Autodesk® Maya® 2011 © 1997-2010 Autodesk, Inc. All rights reserved. Generated with doxygen 1.5.6