summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2014-12-12 18:40:43 +0300
committerAndrei Karas <akaras@inbox.ru>2014-12-12 18:40:43 +0300
commitcc06df44833d5e39b32065bb7892e787f6a1f54c (patch)
tree51073ec246786f4bab68113f83c63f2d6def581d
parentabce183c65e7f6966d3778f4da6d627ea9cdf619 (diff)
downloadmanaplus-cc06df44833d5e39b32065bb7892e787f6a1f54c.tar.gz
manaplus-cc06df44833d5e39b32065bb7892e787f6a1f54c.tar.bz2
manaplus-cc06df44833d5e39b32065bb7892e787f6a1f54c.tar.xz
manaplus-cc06df44833d5e39b32065bb7892e787f6a1f54c.zip
Add chat command to show "/w NICK" message or open whisper tab (depend on settings)
New chat command: /whispertext NICK Aliases: /wt NICK /msgtext NICK
-rw-r--r--src/actions/chat.cpp17
-rw-r--r--src/actions/chat.h1
-rw-r--r--src/input/inputaction.h1
-rw-r--r--src/input/inputactionmap.h9
4 files changed, 28 insertions, 0 deletions
diff --git a/src/actions/chat.cpp b/src/actions/chat.cpp
index 2c7d84f91..59b69b911 100644
--- a/src/actions/chat.cpp
+++ b/src/actions/chat.cpp
@@ -20,6 +20,7 @@
#include "actions/chat.h"
+#include "configuration.h"
#include "guildmanager.h"
#include "actions/actiondef.h"
@@ -244,6 +245,22 @@ impHandler(msg)
return true;
}
+impHandler(msgText)
+{
+ if (!chatWindow)
+ return false;
+
+ if (config.getBoolValue("whispertab"))
+ {
+ chatWindow->localChatInput("/q " + event.args);
+ }
+ else
+ {
+ chatWindow->addInputText(std::string("/w \"").append(
+ event.args).append("\" "));
+ }
+}
+
impHandler(msg2)
{
std::string recvnick;
diff --git a/src/actions/chat.h b/src/actions/chat.h
index 459ee675d..c42e4940b 100644
--- a/src/actions/chat.h
+++ b/src/actions/chat.h
@@ -36,6 +36,7 @@ namespace Actions
decHandler(scrollChatUp);
decHandler(scrollChatDown);
decHandler(msg);
+ decHandler(msgText);
decHandler(msg2);
decHandler(query);
decHandler(clearChatTab);
diff --git a/src/input/inputaction.h b/src/input/inputaction.h
index 28bb44fd8..0287e3f42 100644
--- a/src/input/inputaction.h
+++ b/src/input/inputaction.h
@@ -497,6 +497,7 @@ namespace InputAction
NUKE,
USE,
CHAT_ADD,
+ WHISPER_TEXT,
TOTAL
};
} // namespace InputAction
diff --git a/src/input/inputactionmap.h b/src/input/inputactionmap.h
index b25dfe848..08d7bbf7a 100644
--- a/src/input/inputactionmap.h
+++ b/src/input/inputactionmap.h
@@ -4216,6 +4216,15 @@ static const InputActionData inputActionData[InputAction::TOTAL] = {
InputCondition::INGAME,
"addchat|chatadd",
true},
+ {"keyWhisperText",
+ InputType::UNKNOWN, InputAction::NO_VALUE,
+ InputType::UNKNOWN, InputAction::NO_VALUE,
+ Input::GRP_DEFAULT,
+ &Actions::msgText,
+ InputAction::NO_VALUE, 50,
+ InputCondition::INGAME,
+ "wt|whispertext|msgtext",
+ true},
};
#endif // INPUT_INPUTACTIONMAP_H