summaryrefslogtreecommitdiff
path: root/indra/llui/llundo.cpp
diff options
context:
space:
mode:
authorAndrey Lihatskiy <alihatskiy@productengine.com>2024-05-15 11:16:27 +0300
committerAndrey Lihatskiy <alihatskiy@productengine.com>2024-05-15 11:16:27 +0300
commitbccc10db9a90d365c353baebf443fde2030ce970 (patch)
tree2c2e1fd94b29667a809f8d7285d049f5ff5d424d /indra/llui/llundo.cpp
parent531cd34f670170ade57f8813fe48012b61a1d3c2 (diff)
parentbb3c36f5cbc0c3b542045fd27255eee24e03da22 (diff)
Merge branch 'main' into marchcat/x-b-merge
# Conflicts: # autobuild.xml # indra/cmake/ConfigurePkgConfig.cmake # indra/cmake/ICU4C.cmake # indra/media_plugins/gstreamer010/llmediaimplgstreamer_syms.cpp # indra/media_plugins/gstreamer010/llmediaimplgstreamer_syms.h # indra/media_plugins/gstreamer010/llmediaimplgstreamertriviallogging.h # indra/media_plugins/gstreamer010/llmediaimplgstreamervidplug.cpp # indra/media_plugins/gstreamer010/llmediaimplgstreamervidplug.h # indra/media_plugins/gstreamer010/media_plugin_gstreamer010.cpp # indra/newview/llappviewerlinux_api.h # indra/newview/llappviewerlinux_api_dbus.cpp # indra/newview/llappviewerlinux_api_dbus.h # indra/newview/llfloateremojipicker.cpp # indra/newview/lloutfitslist.cpp
Diffstat (limited to 'indra/llui/llundo.cpp')
-rw-r--r--indra/llui/llundo.cpp176
1 files changed, 88 insertions, 88 deletions
diff --git a/indra/llui/llundo.cpp b/indra/llui/llundo.cpp
index 7c4c183a30..d5ff70d31a 100644
--- a/indra/llui/llundo.cpp
+++ b/indra/llui/llundo.cpp
@@ -1,24 +1,24 @@
-/**
+/**
* @file llundo.cpp
*
* $LicenseInfo:firstyear=2001&license=viewerlgpl$
* Second Life Viewer Source Code
* Copyright (C) 2010, Linden Research, Inc.
- *
+ *
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation;
* version 2.1 of the License only.
- *
+ *
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
- *
+ *
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- *
+ *
* Linden Research, Inc., 945 Battery Street, San Francisco, CA 94111 USA
* $/LicenseInfo$
*/
@@ -36,24 +36,24 @@
//-----------------------------------------------------------------------------
LLUndoBuffer::LLUndoBuffer( LLUndoAction (*create_func()), S32 initial_count )
{
- mNextAction = 0;
- mLastAction = 0;
- mFirstAction = 0;
- mOperationID = 0;
-
- mNumActions = initial_count;
-
- mActions = new LLUndoAction *[initial_count];
-
- //initialize buffer with actions
- for (S32 i = 0; i < initial_count; i++)
- {
- mActions[i] = create_func();
- if (!mActions[i])
- {
- LL_ERRS() << "Unable to create action for undo buffer" << LL_ENDL;
- }
- }
+ mNextAction = 0;
+ mLastAction = 0;
+ mFirstAction = 0;
+ mOperationID = 0;
+
+ mNumActions = initial_count;
+
+ mActions = new LLUndoAction *[initial_count];
+
+ //initialize buffer with actions
+ for (S32 i = 0; i < initial_count; i++)
+ {
+ mActions[i] = create_func();
+ if (!mActions[i])
+ {
+ LL_ERRS() << "Unable to create action for undo buffer" << LL_ENDL;
+ }
+ }
}
//-----------------------------------------------------------------------------
@@ -61,12 +61,12 @@ LLUndoBuffer::LLUndoBuffer( LLUndoAction (*create_func()), S32 initial_count )
//-----------------------------------------------------------------------------
LLUndoBuffer::~LLUndoBuffer()
{
- for (S32 i = 0; i < mNumActions; i++)
- {
- delete mActions[i];
- }
+ for (S32 i = 0; i < mNumActions; i++)
+ {
+ delete mActions[i];
+ }
- delete [] mActions;
+ delete [] mActions;
}
//-----------------------------------------------------------------------------
@@ -74,24 +74,24 @@ LLUndoBuffer::~LLUndoBuffer()
//-----------------------------------------------------------------------------
LLUndoBuffer::LLUndoAction* LLUndoBuffer::getNextAction(BOOL setClusterBegin)
{
- LLUndoAction *nextAction = mActions[mNextAction];
+ LLUndoAction *nextAction = mActions[mNextAction];
- if (setClusterBegin)
- {
- mOperationID++;
- }
- mActions[mNextAction]->mClusterID = mOperationID;
+ if (setClusterBegin)
+ {
+ mOperationID++;
+ }
+ mActions[mNextAction]->mClusterID = mOperationID;
- mNextAction = (mNextAction + 1) % mNumActions;
- mLastAction = mNextAction;
+ mNextAction = (mNextAction + 1) % mNumActions;
+ mLastAction = mNextAction;
- if (mNextAction == mFirstAction)
- {
- mActions[mFirstAction]->cleanup();
- mFirstAction = (mFirstAction + 1) % mNumActions;
- }
+ if (mNextAction == mFirstAction)
+ {
+ mActions[mFirstAction]->cleanup();
+ mFirstAction = (mFirstAction + 1) % mNumActions;
+ }
- return nextAction;
+ return nextAction;
}
//-----------------------------------------------------------------------------
@@ -99,35 +99,35 @@ LLUndoBuffer::LLUndoAction* LLUndoBuffer::getNextAction(BOOL setClusterBegin)
//-----------------------------------------------------------------------------
BOOL LLUndoBuffer::undoAction()
{
- if (!canUndo())
- {
- return FALSE;
- }
+ if (!canUndo())
+ {
+ return FALSE;
+ }
- S32 prevAction = (mNextAction + mNumActions - 1) % mNumActions;
+ S32 prevAction = (mNextAction + mNumActions - 1) % mNumActions;
- while(mActions[prevAction]->mClusterID == mOperationID)
- {
- // go ahead and decrement action index
- mNextAction = prevAction;
+ while(mActions[prevAction]->mClusterID == mOperationID)
+ {
+ // go ahead and decrement action index
+ mNextAction = prevAction;
- // undo this action
- mActions[mNextAction]->undo();
+ // undo this action
+ mActions[mNextAction]->undo();
- // we're at the first action, so we don't know if we've actually undid everything
- if (mNextAction == mFirstAction)
- {
- mOperationID--;
- return FALSE;
- }
+ // we're at the first action, so we don't know if we've actually undid everything
+ if (mNextAction == mFirstAction)
+ {
+ mOperationID--;
+ return FALSE;
+ }
- // do wrap-around of index, but avoid negative numbers for modulo operator
- prevAction = (mNextAction + mNumActions - 1) % mNumActions;
- }
+ // do wrap-around of index, but avoid negative numbers for modulo operator
+ prevAction = (mNextAction + mNumActions - 1) % mNumActions;
+ }
- mOperationID--;
+ mOperationID--;
- return TRUE;
+ return TRUE;
}
//-----------------------------------------------------------------------------
@@ -135,27 +135,27 @@ BOOL LLUndoBuffer::undoAction()
//-----------------------------------------------------------------------------
BOOL LLUndoBuffer::redoAction()
{
- if (!canRedo())
- {
- return FALSE;
- }
+ if (!canRedo())
+ {
+ return FALSE;
+ }
- mOperationID++;
+ mOperationID++;
- while(mActions[mNextAction]->mClusterID == mOperationID)
- {
- if (mNextAction == mLastAction)
- {
- return FALSE;
- }
+ while(mActions[mNextAction]->mClusterID == mOperationID)
+ {
+ if (mNextAction == mLastAction)
+ {
+ return FALSE;
+ }
- mActions[mNextAction]->redo();
+ mActions[mNextAction]->redo();
- // do wrap-around of index
- mNextAction = (mNextAction + 1) % mNumActions;
- }
+ // do wrap-around of index
+ mNextAction = (mNextAction + 1) % mNumActions;
+ }
- return TRUE;
+ return TRUE;
}
//-----------------------------------------------------------------------------
@@ -163,12 +163,12 @@ BOOL LLUndoBuffer::redoAction()
//-----------------------------------------------------------------------------
void LLUndoBuffer::flushActions()
{
- for (S32 i = 0; i < mNumActions; i++)
- {
- mActions[i]->cleanup();
- }
- mNextAction = 0;
- mLastAction = 0;
- mFirstAction = 0;
- mOperationID = 0;
+ for (S32 i = 0; i < mNumActions; i++)
+ {
+ mActions[i]->cleanup();
+ }
+ mNextAction = 0;
+ mLastAction = 0;
+ mFirstAction = 0;
+ mOperationID = 0;
}