summaryrefslogtreecommitdiff
path: root/plugins/NewXstatusNotify/src
diff options
context:
space:
mode:
authordartraiden <wowemuh@gmail.com>2019-07-21 19:59:18 +0300
committerdartraiden <wowemuh@gmail.com>2019-07-21 19:59:18 +0300
commitb078dfb78c89aea87cd422eae52694738e473cf3 (patch)
treeca896e82a8a5ce81f80d041f4aee7fdeeb007162 /plugins/NewXstatusNotify/src
parentee7e29d02e94e969c1154515cd0c408c591a2414 (diff)
Restore "Free for chat" status support (fixes #1963)
Diffstat (limited to 'plugins/NewXstatusNotify/src')
-rw-r--r--plugins/NewXstatusNotify/src/indsnd.cpp2
-rw-r--r--plugins/NewXstatusNotify/src/main.cpp12
-rw-r--r--plugins/NewXstatusNotify/src/resource.h14
-rw-r--r--plugins/NewXstatusNotify/src/utils.cpp1
4 files changed, 23 insertions, 6 deletions
diff --git a/plugins/NewXstatusNotify/src/indsnd.cpp b/plugins/NewXstatusNotify/src/indsnd.cpp
index 65224d27af..ba3d8cedc7 100644
--- a/plugins/NewXstatusNotify/src/indsnd.cpp
+++ b/plugins/NewXstatusNotify/src/indsnd.cpp
@@ -137,7 +137,7 @@ INT_PTR CALLBACK DlgProcSoundUIPage(HWND hwndDlg, UINT msg, WPARAM wParam, LPARA
for (int i = ID_STATUS_MAX; i >= ID_STATUS_MIN; i--) {
int flags = CallProtoService(szProto, PS_GETCAPS, PFLAGNUM_2, 0);
if (flags == 0)
- flags = PF2_ONLINE | PF2_INVISIBLE | PF2_SHORTAWAY | PF2_LONGAWAY | PF2_LIGHTDND | PF2_HEAVYDND;
+ flags = PF2_ONLINE | PF2_INVISIBLE | PF2_SHORTAWAY | PF2_LONGAWAY | PF2_LIGHTDND | PF2_HEAVYDND | PF2_FREECHAT;
if ((flags & Proto_Status2Flag(i)) || i == ID_STATUS_OFFLINE) {
LV_ITEM lvi = { 0 };
diff --git a/plugins/NewXstatusNotify/src/main.cpp b/plugins/NewXstatusNotify/src/main.cpp
index a1a1187bdb..c79d025169 100644
--- a/plugins/NewXstatusNotify/src/main.cpp
+++ b/plugins/NewXstatusNotify/src/main.cpp
@@ -880,6 +880,18 @@ void InitStatusList()
mir_wstrncpy(StatusList[index].lpzSkinSoundFile, L"invisible.wav", MAX_PATH);
StatusList[index].colorBack = g_plugin.getDword("40078bg", COLOR_BG_AVAILDEFAULT);
StatusList[index].colorText = g_plugin.getDword("40078tx", COLOR_TX_DEFAULT);
+
+ //Free for chat
+ index = Index(ID_STATUS_FREECHAT);
+ mir_wstrncpy(StatusList[index].lpzMStatusText, TranslateT("(M) feels talkative!"), MAX_STATUSTEXT);
+ mir_wstrncpy(StatusList[index].lpzFStatusText, TranslateT("(F) feels talkative!"), MAX_STATUSTEXT);
+ mir_wstrncpy(StatusList[index].lpzUStatusText, TranslateT("(U) feels talkative!"), MAX_STATUSTEXT);
+ mir_wstrncpy(StatusList[index].lpzStandardText, TranslateT("Free for chat"), MAX_STANDARDTEXT);
+ mir_strncpy(StatusList[index].lpzSkinSoundName, "UserFreeForChat", MAX_SKINSOUNDNAME);
+ mir_wstrncpy(StatusList[index].lpzSkinSoundDesc, LPGENW("User: Free for chat"), MAX_SKINSOUNDDESC);
+ mir_wstrncpy(StatusList[index].lpzSkinSoundFile, L"free4chat.wav", MAX_PATH);
+ StatusList[index].colorBack = g_plugin.getDword("40077bg", COLOR_BG_AVAILDEFAULT);
+ StatusList[index].colorText = g_plugin.getDword("40077tx", COLOR_TX_DEFAULT);
//Away
index = Index(ID_STATUS_AWAY);
diff --git a/plugins/NewXstatusNotify/src/resource.h b/plugins/NewXstatusNotify/src/resource.h
index 8a89753da3..a9c756c42e 100644
--- a/plugins/NewXstatusNotify/src/resource.h
+++ b/plugins/NewXstatusNotify/src/resource.h
@@ -146,7 +146,8 @@
#define IDC_CHK_DND 40074
#define IDC_CHK_NA 40075
#define IDC_CHK_OCCUPIED 40076
-#define IDC_CHK_INVISIBLE 40077
+#define IDC_CHK_FREECHAT 40077
+#define IDC_CHK_INVISIBLE 40078
#define IDC_CHK_XSTATUS 40081
#define IDC_CHK_STATUS_MESSAGE 40082
#define IDC_CHK_FROMOFFLINE 40083
@@ -156,6 +157,7 @@
#define IDC_DND_TX 41074
#define IDC_NA_TX 41075
#define IDC_OCCUPIED_TX 41076
+#define IDC_FREEFORCHAT_TX 41077
#define IDC_INVISIBLE_TX 41078
#define IDC_XSTATUS_TX 41081
#define IDC_STATUSMSG_TX 41082
@@ -170,10 +172,12 @@
#define IDC_CHK_NA2 42075
#define IDC_OCCUPIED_BG 42076
#define IDC_CHK_OCCUPIED2 42076
-#define IDC_INVISIBLE_BG 42077
-#define IDC_CHK_INVISIBLE2 42077
-#define IDC_XSTATUS_BG 42078
-#define IDC_STATUSMSG_BG 42079
+#define IDC_FREEFORCHAT_BG 42077
+#define IDC_CHK_FREECHAT2 42077
+#define IDC_INVISIBLE_BG 42078
+#define IDC_CHK_INVISIBLE2 42078
+#define IDC_XSTATUS_BG 42079
+#define IDC_STATUSMSG_BG 42080
// Next default values for new objects
//
diff --git a/plugins/NewXstatusNotify/src/utils.cpp b/plugins/NewXstatusNotify/src/utils.cpp
index 2133bcda7e..cce0b55f51 100644
--- a/plugins/NewXstatusNotify/src/utils.cpp
+++ b/plugins/NewXstatusNotify/src/utils.cpp
@@ -66,6 +66,7 @@ BOOL StatusHasAwayMessage(char *szProto, int status)
case ID_STATUS_NA:
case ID_STATUS_OCCUPIED:
case ID_STATUS_DND:
+ case ID_STATUS_FREECHAT:
return TRUE;
default: