Undo


Description

Optional. Fired when a custom command is being undone. The return value is ignored.

Note This callback is only supported in the C++ API (no support for scripting).

Applies To

Custom Commands implemented with the C++ API.


Syntax

CStatus <command_name>_Undo( CRef& in_context ) 
{ 
        ... 
}

<command_name> is the name specified in the call to PluginRegistrar.RegisterCommand, with any spaces converted to underscores.


Parameters

Parameter Language Type Description
C++ CRef& A reference to the Context object. Context::GetSource returns the Command.

Context Attributes

Attribute Description
UndoRedoData Allows you to retrieve the action to undo from the stack. See Undoing and Redoing Custom Commands.

Examples

// Taken from the SimpleUndoRedoCommand example (for the complete example, 
// click the link in the See Also section below)
SICALLBACK SimpleUndoRedoCommand_Undo( CRef& in_ctxt )
{
        Context ctxt( in_ctxt );

        CMoveViewTask* p = (CMoveViewTask*)(CValue::siPtrType)ctxt.GetAttribute(L"UndoRedoData");
        p->Undo( );

        return CStatus::OK;
}

See Also