diff options
author | sje <sje@4f64403b-2f21-0410-a795-97e2b3489a10> | 2007-07-08 17:27:12 +0000 |
---|---|---|
committer | sje <sje@4f64403b-2f21-0410-a795-97e2b3489a10> | 2007-07-08 17:27:12 +0000 |
commit | 37be3cf3d8e43198e577a85a6f2c6e12e8dd59db (patch) | |
tree | eec4448e7a3fdc127be1c508a6685f6d3ff67fe9 /MySpace/notifications.cpp | |
parent | 6b0cd0f2c3077d45cf86f413fdb35d2de2f1ae2e (diff) |
added profile comment and friend request notifications
git-svn-id: https://server.scottellis.com.au/svn/mim_plugs@260 4f64403b-2f21-0410-a795-97e2b3489a10
Diffstat (limited to 'MySpace/notifications.cpp')
-rw-r--r-- | MySpace/notifications.cpp | 220 |
1 files changed, 220 insertions, 0 deletions
diff --git a/MySpace/notifications.cpp b/MySpace/notifications.cpp new file mode 100644 index 0000000..3e01416 --- /dev/null +++ b/MySpace/notifications.cpp @@ -0,0 +1,220 @@ +#include "common.h"
+#include "notifications.h"
+#include "resource.h"
+
+HWND hWndMailPopup = 0, hWndBlogPopup = 0;
+
+LRESULT CALLBACK MailPopupWindowProc( HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam )
+{
+ switch( message ) {
+ case UM_INITPOPUP:
+ hWndMailPopup = hWnd;
+ break;
+
+ case WM_COMMAND:
+ CallService(MS_UTILS_OPENURL, (WPARAM)TRUE, (LPARAM)"http://messaging.myspace.com/index.cfm?fuseaction=mail.inbox");
+
+ hWndMailPopup = 0;
+ PUDeletePopUp( hWnd );
+ return TRUE;
+
+ case WM_CONTEXTMENU:
+
+ hWndMailPopup = 0;
+ PUDeletePopUp( hWnd );
+ return TRUE;
+
+ case UM_FREEPLUGINDATA:
+ {
+ HICON hIcon = (HICON)PUGetPluginData(hWnd);
+ DestroyIcon(hIcon);
+ }
+ return TRUE;
+ }
+
+ return DefWindowProc(hWnd, message, wParam, lParam);
+}
+
+
+void NotifyMail() {
+ if (!ServiceExists( MS_POPUP_ADDPOPUPT)) return;
+ if(hWndMailPopup) return;
+
+ POPUPDATAT ppd = {0};
+ TCHAR wproto[256];
+#ifndef _UNICODE
+ strncpy(wproto, MODULE, 256);
+#else
+ MultiByteToWideChar(code_page, 0, MODULE, -1, wproto, 256);
+#endif
+
+ _tcsncpy(ppd.lptzContactName, wproto, 256);
+ _tcscpy(ppd.lptzText, TranslateT("You have unread mail"));
+ ppd.lchIcon = (HICON)LoadImage(hInst, MAKEINTRESOURCE(IDI_MYSPACE), IMAGE_ICON, SM_CXSMICON, SM_CYSMICON, 0);
+ ppd.PluginWindowProc = ( WNDPROC )MailPopupWindowProc;
+ ppd.PluginData = ppd.lchIcon;
+ ppd.iSeconds = -1;
+
+ PUAddPopUpT(&ppd);
+}
+
+
+LRESULT CALLBACK BlogCommentPopupWindowProc( HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam )
+{
+ switch( message ) {
+ case UM_INITPOPUP:
+ hWndBlogPopup = hWnd;
+ break;
+ case WM_COMMAND:
+ CallService(MS_UTILS_OPENURL, (WPARAM)TRUE, (LPARAM)"http://blog.myspace.com/index.cfm?fuseaction=blog");
+
+ hWndBlogPopup = 0;
+ PUDeletePopUp( hWnd );
+ return TRUE;
+
+ case WM_CONTEXTMENU:
+ hWndBlogPopup = 0;
+ PUDeletePopUp( hWnd );
+ return TRUE;
+
+ case UM_FREEPLUGINDATA:
+ {
+ HICON hIcon = (HICON)PUGetPluginData(hWnd);
+ DestroyIcon(hIcon);
+ }
+ return TRUE;
+ }
+
+ return DefWindowProc(hWnd, message, wParam, lParam);
+}
+
+void NotifyBlogComment() {
+
+ if (!ServiceExists( MS_POPUP_ADDPOPUPT)) return;
+ if(hWndBlogPopup) return;
+
+ POPUPDATAT ppd = {0};
+ TCHAR wproto[256];
+#ifndef _UNICODE
+ strncpy(wproto, MODULE, 256);
+#else
+ MultiByteToWideChar(code_page, 0, MODULE, -1, wproto, 256);
+#endif
+
+ _tcsncpy(ppd.lptzContactName, wproto, 256);
+ _tcscpy(ppd.lptzText, TranslateT("You have unread blog comments"));
+ ppd.lchIcon = (HICON)LoadImage(hInst, MAKEINTRESOURCE(IDI_MYSPACE), IMAGE_ICON, SM_CXSMICON, SM_CYSMICON, 0);
+ ppd.PluginWindowProc = ( WNDPROC )BlogCommentPopupWindowProc;
+ ppd.PluginData = ppd.lchIcon;
+ ppd.iSeconds = -1;
+
+ PUAddPopUpT(&ppd);
+}
+
+LRESULT CALLBACK ProfileCommentPopupWindowProc( HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam )
+{
+ switch( message ) {
+ case UM_INITPOPUP:
+ hWndBlogPopup = hWnd;
+ break;
+ case WM_COMMAND:
+ {
+ char url[1024];
+ mir_snprintf(url, 1024, "http://comment.myspace.com/index.cfm?fuseaction=user.viewComments&friendID=%d", DBGetContactSettingDword(0, MODULE, "UID", 0));
+ CallService(MS_UTILS_OPENURL, (WPARAM)TRUE, (LPARAM)url);
+ }
+
+ hWndBlogPopup = 0;
+ PUDeletePopUp( hWnd );
+ return TRUE;
+
+ case WM_CONTEXTMENU:
+ hWndBlogPopup = 0;
+ PUDeletePopUp( hWnd );
+ return TRUE;
+
+ case UM_FREEPLUGINDATA:
+ {
+ HICON hIcon = (HICON)PUGetPluginData(hWnd);
+ DestroyIcon(hIcon);
+ }
+ return TRUE;
+ }
+
+ return DefWindowProc(hWnd, message, wParam, lParam);
+}
+
+void NotifyProfileComment() {
+
+ if (!ServiceExists( MS_POPUP_ADDPOPUPT)) return;
+ if(hWndBlogPopup) return;
+
+ POPUPDATAT ppd = {0};
+ TCHAR wproto[256];
+#ifndef _UNICODE
+ strncpy(wproto, MODULE, 256);
+#else
+ MultiByteToWideChar(code_page, 0, MODULE, -1, wproto, 256);
+#endif
+
+ _tcsncpy(ppd.lptzContactName, wproto, 256);
+ _tcscpy(ppd.lptzText, TranslateT("You have unread profile comments"));
+ ppd.lchIcon = (HICON)LoadImage(hInst, MAKEINTRESOURCE(IDI_MYSPACE), IMAGE_ICON, SM_CXSMICON, SM_CYSMICON, 0);
+ ppd.PluginWindowProc = ( WNDPROC )ProfileCommentPopupWindowProc;
+ ppd.PluginData = ppd.lchIcon;
+ ppd.iSeconds = -1;
+
+ PUAddPopUpT(&ppd);
+}
+
+LRESULT CALLBACK FriendRequestPopupWindowProc( HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam )
+{
+ switch( message ) {
+ case UM_INITPOPUP:
+ hWndBlogPopup = hWnd;
+ break;
+ case WM_COMMAND:
+ CallService(MS_UTILS_OPENURL, (WPARAM)TRUE, (LPARAM)"http://messaging.myspace.com/index.cfm?fuseaction=mail.friendRequests");
+
+ hWndBlogPopup = 0;
+ PUDeletePopUp( hWnd );
+ return TRUE;
+
+ case WM_CONTEXTMENU:
+ hWndBlogPopup = 0;
+ PUDeletePopUp( hWnd );
+ return TRUE;
+
+ case UM_FREEPLUGINDATA:
+ {
+ HICON hIcon = (HICON)PUGetPluginData(hWnd);
+ DestroyIcon(hIcon);
+ }
+ return TRUE;
+ }
+
+ return DefWindowProc(hWnd, message, wParam, lParam);
+}
+
+void NotifyFriendRequest() {
+
+ if (!ServiceExists( MS_POPUP_ADDPOPUPT)) return;
+ if(hWndBlogPopup) return;
+
+ POPUPDATAT ppd = {0};
+ TCHAR wproto[256];
+#ifndef _UNICODE
+ strncpy(wproto, MODULE, 256);
+#else
+ MultiByteToWideChar(code_page, 0, MODULE, -1, wproto, 256);
+#endif
+
+ _tcsncpy(ppd.lptzContactName, wproto, 256);
+ _tcscpy(ppd.lptzText, TranslateT("You have new friend requests"));
+ ppd.lchIcon = (HICON)LoadImage(hInst, MAKEINTRESOURCE(IDI_MYSPACE), IMAGE_ICON, SM_CXSMICON, SM_CYSMICON, 0);
+ ppd.PluginWindowProc = ( WNDPROC )FriendRequestPopupWindowProc;
+ ppd.PluginData = ppd.lchIcon;
+ ppd.iSeconds = -1;
+
+ PUAddPopUpT(&ppd);
+}
|