diff options
Diffstat (limited to 'NewStatusNotify/newstatusnotify.h')
-rw-r--r-- | NewStatusNotify/newstatusnotify.h | 118 |
1 files changed, 118 insertions, 0 deletions
diff --git a/NewStatusNotify/newstatusnotify.h b/NewStatusNotify/newstatusnotify.h new file mode 100644 index 0000000..a24e94d --- /dev/null +++ b/NewStatusNotify/newstatusnotify.h @@ -0,0 +1,118 @@ +/*
+===============================================================================
+ NewStatusNotify plugin
+
+This plugin notifies you when a contact changes his/hers status with a PopUp.
+You can customize its look (style of popup, font, text...) and behaviour (the
+position in the screen, the time to live, the action on a mouse click).
+
+This file contains:
+- definitions,
+- structures,
+- macros
+which can be useful to different modules (example EventNotify) but mainly
+useful to me in order to split my Plugin on different files :-)
+
+Written by: Hrk (Luca Santarelli) (2002-2004), Vasilich (2005-2008)
+
+Miranda IM can be found here:
+http://miranda-im.org/
+
+===============================================================================
+*/
+
+#ifndef NEWSTATUSNOTIFY_H
+#define NEWSTATUSNOTIFY_H
+
+#include "commonheaders.h"
+#include "res\resource.h"
+
+#define NAME_OF_UIPAGE "Status Notify"
+
+#define LASTPOPUPTEXT "LastPopupText"
+#define MAX_STATUSTEXT 36
+#define MAX_STANDARDTEXT 36
+#define MAX_SKINSOUNDNAME 36
+#define MAX_SKINSOUNDDESC 36
+
+#define MAX_PROTONAMELEN 64
+
+//=== Objects =====
+//This one is used to easily tie status id, icon, text...
+typedef struct tagaStatus{
+ int ID;
+ int Icon;
+ TCHAR lpzMStatusText[MAX_STATUSTEXT];
+ TCHAR lpzFStatusText[MAX_STATUSTEXT];
+ TCHAR lpzUStatusText[MAX_STATUSTEXT];
+ TCHAR lpzStandardText[MAX_STANDARDTEXT];
+ char lpzSkinSoundName[MAX_SKINSOUNDNAME];
+ char lpzSkinSoundDesc[MAX_SKINSOUNDDESC];
+ char lpzSkinSoundFile[MAX_PATH];
+ DWORD dwProtoFlag;
+ COLORREF colorBack;
+ COLORREF colorText;
+} aStatus;
+
+#define Index(ID_STATUS) ID_STATUS - 40071
+#define ID_STATUS_MIN ID_STATUS_OFFLINE
+#define ID_STATUS_MAX ID_STATUS_OUTTOLUNCH
+
+#define byCOLOR_OWN 0x1
+#define byCOLOR_WINDOWS 0x2
+#define byCOLOR_POPUP 0x3
+#define DEFAULT_COLORS byCOLOR_OWN
+
+//===== Options flags
+typedef struct tagMYOPTIONS {
+ BYTE Colors;
+ //BYTE UseWinColors;
+ BYTE UseDullText;
+ BYTE ReadAwayMsg;
+ BYTE ShowPreviousStatus;
+ BYTE TempDisable;
+ BYTE AutoDisable;
+ BYTE FromOffline;
+ BYTE FromOfflinePopup;
+ BYTE EnableSoundForMyCurrentStatus;
+ BYTE EnablePopupForMyCurrentStatus;
+ BYTE UseSpeaker;
+ BYTE AvoidClipping;
+ BYTE HiddenContactsToo;
+ BYTE Log;
+ BYTE UseIndSnd;
+ BYTE ShowGroup;
+ BYTE BlinkIcon;
+ BYTE BlinkIcon_Status;
+ BYTE byTimeout;
+ int iTimeout;
+} MYOPTIONS;
+
+#define DB_READ_SUCCESS 0
+#define DB_READ_FAIL -1
+
+typedef struct tagPLUGINDATA {
+ WORD newStatus;
+ WORD oldStatus;
+ HANDLE hAwayMsgProcess;
+ HANDLE hAwayMsgHook;
+} PLUGINDATA;
+
+typedef struct tagPUWinItem
+{
+ HANDLE hWnd;
+ TCHAR StatMsg[MAX_SECONDLINE];
+ HANDLE hContact;
+ int Status;
+ time_t TimeStamp;
+} PUWinItem;
+
+#ifndef MIID_NSN
+#ifdef _UNICODE
+#define MIID_NSN { 0x481e45c3, 0xde03, 0x4ac6, { 0x80, 0x7b, 0xe3, 0x6d, 0xa2, 0xc8, 0xbb, 0x31 } } // {481E45C3-DE03-4ac6-807B-E36DA2C8BB31}
+#else
+#define MIID_NSN { 0x90c33425, 0x3bcf, 0x4aeb, { 0xa7, 0xc9, 0x33, 0x64, 0x6b, 0x2f, 0x65, 0xec } } // {90C33425-3BCF-4aeb-A7C9-33646B2F65EC}
+#endif
+#endif
+
+#endif //NEWSTATUSNOTIFY_H
|