summaryrefslogtreecommitdiff
path: root/indra/newview/rlvhandler.cpp
diff options
context:
space:
mode:
authorErik Kundiman <erik@megapahit.org>2025-06-30 09:32:20 +0800
committerErik Kundiman <erik@megapahit.org>2025-06-30 09:32:20 +0800
commit6ad39e2c3b3df0ebc54f1056f4659b1a51b62f1e (patch)
treeb5ce5ef5b03d32da0a26065e0e12c47bc76446b8 /indra/newview/rlvhandler.cpp
parente87685aacfd2873f6b41b8036ee63a9ed67e2be2 (diff)
Basic scaffolding to support add/remove commands
plus reorder header inclusions alphabetically.
Diffstat (limited to 'indra/newview/rlvhandler.cpp')
-rw-r--r--indra/newview/rlvhandler.cpp17
1 files changed, 16 insertions, 1 deletions
diff --git a/indra/newview/rlvhandler.cpp b/indra/newview/rlvhandler.cpp
index 3394362c93..869ada40ab 100644
--- a/indra/newview/rlvhandler.cpp
+++ b/indra/newview/rlvhandler.cpp
@@ -29,8 +29,8 @@
#include "llagent.h"
#include "llstartup.h"
#include "llviewercontrol.h"
-#include "llviewerobject.h"
#include "llviewermenu.h"
+#include "llviewerobject.h"
#include "rlvcommon.h"
#include "rlvhandler.h"
@@ -111,6 +111,8 @@ ECmdRet RlvHandler::processCommand(std::reference_wrapper<const RlvCommand> rlvC
{
case EParamType::Reply:
case EParamType::Force:
+ case EParamType::Remove:
+ case EParamType::Add:
eRet = rlvCmd.get().processCommand();
break;
case EParamType::Unknown:
@@ -245,4 +247,17 @@ ECmdRet ForceHandler<EBehaviour::Unsit>::onCommand(const RlvCommand& rlvCmd)
return ECmdRet::Succeeded;
}
+// AddRem
+
+ECmdRet CommandHandlerBaseImpl<EParamType::AddRem>::processCommand(const RlvCommand& rlvCmd, BhvrHandlerFunc* pHandler, BhvrToggleHandlerFunc* pToggleHandler)
+{
+ auto param = rlvCmd.getParam();
+ bool toggle = false;
+ if (param == "y")
+ toggle = true;
+ else if (param != "n")
+ return ECmdRet::FailedParam;
+ return (*pHandler)(rlvCmd, toggle);
+}
+
// ============================================================================