diff options
author | Kirill Volinsky <mataes2007@gmail.com> | 2015-07-24 06:41:22 +0000 |
---|---|---|
committer | Kirill Volinsky <mataes2007@gmail.com> | 2015-07-24 06:41:22 +0000 |
commit | f89df847a0c592b93bf15a8d37d0727d379d4d5b (patch) | |
tree | c99aaf9f2497982cafc5931de7a57b19f82c1abc /plugins/ClientChangeNotify/src/stdafx.h | |
parent | 76b87a97dac6b2171de069009e7a111b1d468381 (diff) |
clientchangenotify: common project
git-svn-id: http://svn.miranda-ng.org/main/trunk@14660 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c
Diffstat (limited to 'plugins/ClientChangeNotify/src/stdafx.h')
-rw-r--r-- | plugins/ClientChangeNotify/src/stdafx.h | 148 |
1 files changed, 148 insertions, 0 deletions
diff --git a/plugins/ClientChangeNotify/src/stdafx.h b/plugins/ClientChangeNotify/src/stdafx.h new file mode 100644 index 0000000000..a733839dc9 --- /dev/null +++ b/plugins/ClientChangeNotify/src/stdafx.h @@ -0,0 +1,148 @@ +/*
+ ClientChangeNotify - Plugin for Miranda IM
+ Copyright (c) 2006-2008 Chervov Dmitry
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program 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 General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+*/
+
+#pragma once
+
+#define WIN32_LEAN_AND_MEAN
+
+#define CHARARRAY_CONVERT
+
+#include <windows.h>
+#include <commctrl.h>
+#include <stdlib.h>
+#include <crtdbg.h>
+#include <shellapi.h>
+#include <commdlg.h>
+
+#include "newpluginapi.h"
+#include "statusmodes.h"
+#include "m_popup.h"
+#include "m_skin.h"
+#include "m_langpack.h"
+#include "m_options.h"
+#include "m_clist.h"
+#include "m_system.h"
+#include "m_message.h"
+#include "m_userinfo.h"
+#include "m_history.h"
+#include "m_protocols.h"
+#include "m_protosvc.h"
+#include "m_icolib.h"
+#include "m_genmenu.h"
+#include "win2k.h"
+#include "m_metacontacts.h"
+
+#include "m_fingerprint.h"
+
+#include "CommonLibs\TMyArray.h"
+#include "CommonLibs\Options.h"
+#include "CommonLibs\CString.h"
+#include "CommonLibs\pcre.h"
+
+#include "resource.h"
+#include "Misc.h"
+#include "Version.h"
+
+// Actions on popup click
+#define PCA_OPENMESSAGEWND 0 // open message window
+#define PCA_CLOSEPOPUP 1 // close popup
+#define PCA_OPENDETAILS 2 // open contact details window
+#define PCA_OPENMENU 3 // open contact menu
+#define PCA_OPENHISTORY 4 // open contact history
+#define PCA_DONOTHING 6 // do nothing
+
+#define POPUP_DEF_LCLICKACTION PCA_OPENMESSAGEWND
+#define POPUP_DEF_RCLICKACTION PCA_CLOSEPOPUP
+#define POPUP_DEF_POPUP_BGCOLOUR 0xEAFFFB
+#define POPUP_DEF_POPUP_TEXTCOLOUR 0
+#define POPUP_DEF_USEDEFBGCOLOUR 0
+#define POPUP_DEF_USEDEFTEXTCOLOUR 0
+#define POPUP_DEF_POPUPDELAY 0
+
+#define IGNORESTRINGS_MAX_LEN 2048
+#define MAX_MSG_LEN 8192
+
+#define NOTIFYTIMER_INTERVAL 3500
+
+#define MOD_NAME "ClientChangeNotify"
+#define LOG_ID MOD_NAME
+#define LOG_PREFIX MOD_NAME ": " // for netlib.log
+
+#define MS_NETLIB_LOG "Netlib/Log"
+
+#define DB_MIRVER "MirVer"
+#define DB_OLDMIRVER "OldMirVer"
+#define DB_NO_FINGERPRINT_ERROR "NoFingerprintError"
+#define DB_IGNORESUBSTRINGS "IgnoreSubstrings"
+#define DB_SETTINGSVER "SettingsVer"
+
+#define DB_CCN_NOTIFY "Notify" // database key name used for per-contact settings; 0 = ignore, 1 = notify always, 2 = use global settings
+#define NOTIFY_IGNORE 0
+#define NOTIFY_ALMOST_ALWAYS 1 // don't notify only when CCN popups are disabled globally in the plugin
+#define NOTIFY_ALWAYS 2
+#define NOTIFY_USEGLOBAL 3
+
+#define CLIENTCHANGED_SOUND "ClientChanged"
+
+extern HINSTANCE g_hInstance;
+extern BOOL bPopupExists, bFingerprintExists;
+
+extern COptPage g_PopupOptPage;
+extern COptPage *g_PreviewOptPage;
+
+#define MS_VARS_FORMATSTRING "Vars/FormatString"
+#define MS_CCN_TOGGLEPOPUPS "ClientChangeNotify/TogglePopups"
+
+
+static __inline CString LogMessage(const char *Format, ...)
+{
+ va_list va;
+ char szText[8096];
+ mir_strcpy(szText, LOG_PREFIX);
+ va_start(va, Format);
+ mir_vsnprintf(szText + (lengthof(LOG_PREFIX) - 1), sizeof(szText) - (lengthof(LOG_PREFIX) - 1), Format, va);
+ va_end(va);
+ CallService(MS_NETLIB_LOG, NULL, (LPARAM)szText);
+ return CString(szText);
+}
+
+
+// ClientChangeNotify.cpp
+
+struct PLUGIN_DATA
+{
+ HICON hIcon; // needed here to destroy its handle on UM_FREEPLUGINDATA
+ int PopupLClickAction;
+ int PopupRClickAction;
+};
+
+struct SHOWPOPUP_DATA
+{
+ MCONTACT hContact;
+ TCString OldMirVer;
+ TCString MirVer;
+ COptPage *PopupOptPage;
+};
+
+
+int ContactSettingChanged(WPARAM wParam, LPARAM lParam);
+
+// OptDlg.cpp
+int OptionsDlgInit(WPARAM wParam, LPARAM lParam);
+void InitOptions();
|