本文整理汇总了C++中CanRedo函数的典型用法代码示例。如果您正苦于以下问题:C++ CanRedo函数的具体用法?C++ CanRedo怎么用?C++ CanRedo使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了CanRedo函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: BBAssertDebug
void BatchCommand::Redo()
{
BBAssertDebug(CanRedo());
for (RestorableCommandCollection::iterator it = restorableCommands.begin(); it != restorableCommands.end(); ++it)
(*it)->Redo();
}
示例2: Redo
// Redo the last command
void PaintModel::Redo() {
if (CanRedo()) {
mUndoStack.push(mRedoStack.top());
mUndoStack.top()->Redo(shared_from_this());
mRedoStack.pop();
}
}
示例3: Redo
void wxTextCtrl::Redo()
{
if (CanRedo())
{
::SendMessage(GetBuddyHwnd(), EM_UNDO, 0, 0);
}
}
示例4: wxCHECK_RET
void wxTextEntry::Redo()
{
wxCHECK_RET( GetTextPeer(), "Must create the control first" );
if (CanRedo())
GetTextPeer()->Redo() ;
}
示例5: CheckState
bool UTransBuffer::Redo()
{
CheckState();
if (!CanRedo())
{
RedoDelegate.Broadcast(FUndoSessionContext(), false);
return false;
}
// Apply the redo changes.
GIsTransacting = true;
{
FTransaction& Transaction = UndoBuffer[ UndoBuffer.Num() - UndoCount-- ];
UE_LOG(LogEditorTransaction, Log, TEXT("Redo %s"), *Transaction.GetTitle().ToString() );
CurrentTransaction = &Transaction;
BeforeRedoUndoDelegate.Broadcast(Transaction.GetContext());
Transaction.Apply();
RedoDelegate.Broadcast(Transaction.GetContext(), true);
CurrentTransaction = nullptr;
}
GIsTransacting = false;
CheckState();
return true;
}
示例6: InternalRollForward
bool History::InternalRollForward(void)
{
if(!CanRedo())return false;
Undoable *u = *m_curpos;
u->Run(true);
m_curpos++;
return true;
}
示例7:
BString
UndoContext::RedoLabel() const
{
if (CanRedo())
return ((Action*)fHistory->ItemAt(fAt))->Label();
else
return "";
}
示例8: Redo
void CHistory::Redo()
{
if (CanRedo())
{
m_commands[m_nextCommandIndex]->Execute(); // может выбросить исключение
++m_nextCommandIndex;
}
}
示例9: Redo
void wxTextCtrl::Redo()
{
if (CanRedo())
{
if (m_bIsMLE)
::WinSendMsg(GetHwnd(), MLM_UNDO, 0, 0);
// Simple entryfields cannot be undone
}
} // end of wxTextCtrl::Redo
示例10: OnMenuRedo
void ProjectManager::OnMenuRedo()
{
if(CanRedo())
{
projetConfig=configHistory[configHistory.size()-currentHistoryNavigation];
currentHistoryNavigation--;
LoadCurrentProject(false);
Init();
}
}
示例11:
bool cActionManager::Redo()
{
if (CanRedo())
{
cAction* action = mRedoList.front();
RemoveTopAction(REDO);
action->Accept( cRedoActionVisitor::Global() );
AddAction(UNDO, action);
return true;
}
return false;
}
示例12: UICommandAction
void CUICommandHistory::UICommandAction(CommandType type)
{
CUICommandNode* pOldNode;
CUICommandNode* pNewNode;
if(type == cmdRedo)
{
if(!CanRedo())
return;
pOldNode = m_lstCommandNodes.GetAt(m_lstCommandNodes.FindIndex(m_nCommandIndex));
pNewNode = new CUICommandNode(pOldNode->m_pBefore, pOldNode->m_pAfter, pOldNode->m_ActionType);
m_nCommandIndex++;
}
else
{
if(!CanUndo())
return;
m_nCommandIndex--;
pOldNode = m_lstCommandNodes.GetAt(m_lstCommandNodes.FindIndex(m_nCommandIndex));
ActionType action;
switch(pOldNode->m_ActionType)
{
case actionAdd:
action = actionDelete;
break;
case actionModify:
action = actionModify;
break;
case actionDelete:
action = actionAdd;
break;
}
pNewNode = new CUICommandNode(pOldNode->m_pAfter, pOldNode->m_pBefore, action);
}
switch(pNewNode->m_ActionType)
{
case actionAdd:
ActionAdd(pNewNode->m_pAfter);
break;
case actionModify:
ActionModify(pNewNode->m_pAfter);
break;
case actionDelete:
ActionDelete(pNewNode->m_pBefore);
break;
}
delete pNewNode;
}
示例13: GetRedoContext
FUndoSessionContext UTransBuffer::GetRedoContext()
{
FUndoSessionContext Context;
FText Title;
if( !CanRedo( &Title ) )
{
Context.Title = Title;
return Context;
}
const FTransaction* Transaction = &UndoBuffer[ UndoBuffer.Num() - UndoCount ];
return Transaction->GetContext();
}
示例14: Redo
void CEditWnd::Redo()
{
if (!CanRedo()) return;
CPoint ptCursorPos;
if (m_pTextBuffer->Redo(ptCursorPos))
{
ASSERT_VALIDTEXTPOS(ptCursorPos);
SetAnchor(ptCursorPos);
SetSelection(ptCursorPos, ptCursorPos);
SetCursorPos(ptCursorPos);
EnsureVisible(ptCursorPos);
}
}
示例15: Redo
//-----------------------------------------------------------------------------
// Purpose:
// Input : *exp -
//-----------------------------------------------------------------------------
void CExpression::Redo( void )
{
if ( !CanRedo() )
return;
Assert( m_nUndoCurrent >= 1 );
Assert( m_nUndoCurrent <= undo.Size() );
CExpUndoInfo *u = undo[ --m_nUndoCurrent ];
Assert( u );
memcpy( setting, u->redosetting, GLOBAL_STUDIO_FLEX_CONTROL_COUNT * sizeof( float ) );
memcpy( weight, u->redoweight, GLOBAL_STUDIO_FLEX_CONTROL_COUNT * sizeof( float ) );
}