本文整理汇总了C++中UndoManager::registerOperation方法的典型用法代码示例。如果您正苦于以下问题:C++ UndoManager::registerOperation方法的具体用法?C++ UndoManager::registerOperation怎么用?C++ UndoManager::registerOperation使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类UndoManager
的用法示例。
在下文中一共展示了UndoManager::registerOperation方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: onMouseButtonRelease
void SelectionPlugin::onMouseButtonRelease( const MouseButtonEvent& event )
{
if( event.button != MouseButton::Left )
return;
SceneDocument* sceneDocument = (SceneDocument*) editor->getDocument();
sceneDocument->getRenderWindow()->setCursorCapture(false);
editor->getDocument()->getWindow()->flagRedraw();
SelectionOperation* selection = nullptr;
if(selections->dragRectangle)
selection = processDragSelection(event);
else
selection = processSelection(event);
if( !selection ) return;
const SelectionCollection& selected = selections->getSelections();
// Prevent duplication of selection events.
if( selected.isSame(selection->selections) )
{
LogDebug("Ignoring duplicated selection");
Deallocate(selection);
return;
}
selection->redo();
UndoManager* undoManager = sceneDocument->getUndoManager();
undoManager->registerOperation(selection);
}