L_AnnAddUndoNode

#include "l_bitmap.h"

L_LTANN_API L_INT L_AnnAddUndoNode(hObject);

Manually adds an undo node to the automation object.

Parameters

HANNOBJECT hObject

Handle to the automation object.

Returns

Value Meaning
SUCCESS The function was successful.
< 1 An error occurred. Refer to Return Codes.

Comments

This function allows you to programmatically add a node to the undo stack maintained by the automation object hObject. This function can only be called for automation objects.

This function should be called before making any changes programmatically to the objects inside the container linked to the automation object. That way, these changes can be reversed using the Undo menu brought up by the automation or by calling L_AnnUndo.

The number of actions that can be undone should be set with L_AnnSetUndoDepth before calling this function.

Calling L_AnnSetAutoUndoEnable(FALSE) disables the undo mechanism of the automation object. Therefore the automation object cannot change the undo stack until the undo mechanism is enabled by calling L_AnnSetAutoUndoEnable(TRUE).

ERROR_NO_UNDO_STACK will be returned if L_AnnSetUndoDepth has not been called before this function or if L_AnnSetUndoDepth has been called with uUndoLevels set to 0;

ERROR_UNDO_DISABLED will be returned if the undo has been disabled by calling L_AnnSetAutoUndoEnable(hObject, FALSE).

Basically, the process is as follows:

  1. Call L_AnnSetUndoDepth to set the number of undo actions that can take place.

  2. Call L_AnnAddUndoNode to add an undo node to the automation object.

  3. Disable the undo feature by calling L_AnnSetAutoUndoEnable(FALSE).

  4. Perform the operations to be combined into one undo.

  5. Re-enable the undo feature by calling L_AnnSetAutoUndoEnable(TRUE).

Now, all three operations can be undone with one call to L_AnnUndo instead of three calls to L_AnnUndo.

Required DLLs and Libraries

Platforms

Win32, x64.

Help Version 20.0.2020.4.3
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2020 LEAD Technologies, Inc. All Rights Reserved.

LEADTOOLS Raster Imaging C API Help