From 6ad39e2c3b3df0ebc54f1056f4659b1a51b62f1e Mon Sep 17 00:00:00 2001 From: Erik Kundiman Date: Mon, 30 Jun 2025 09:32:20 +0800 Subject: Basic scaffolding to support add/remove commands plus reorder header inclusions alphabetically. --- indra/newview/rlvhandler.cpp | 17 ++++++++++++++++- indra/newview/rlvhelper.cpp | 2 ++ 2 files changed, 18 insertions(+), 1 deletion(-) 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 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::onCommand(const RlvCommand& rlvCmd) return ECmdRet::Succeeded; } +// AddRem + +ECmdRet CommandHandlerBaseImpl::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); +} + // ============================================================================ diff --git a/indra/newview/rlvhelper.cpp b/indra/newview/rlvhelper.cpp index a0a98d796e..01a0b84eb5 100644 --- a/indra/newview/rlvhelper.cpp +++ b/indra/newview/rlvhelper.cpp @@ -58,6 +58,8 @@ BehaviourDictionary::BehaviourDictionary() addEntry(new ForceProcessor("sit")); addEntry(new ForceProcessor("unsit")); + // AddRem + // Populate mString2InfoMap (the tuple should be unique) for (const BehaviourInfo* bhvr_info_p : mBhvrInfoList) { -- cgit v1.3