diff options
Diffstat (limited to 'src/modules/srurl/url.cpp')
-rw-r--r-- | src/modules/srurl/url.cpp | 182 |
1 files changed, 0 insertions, 182 deletions
diff --git a/src/modules/srurl/url.cpp b/src/modules/srurl/url.cpp deleted file mode 100644 index ba1b025296..0000000000 --- a/src/modules/srurl/url.cpp +++ /dev/null @@ -1,182 +0,0 @@ -/*
-
-Miranda IM: the free IM client for Microsoft* Windows*
-
-Copyright 2000-2009 Miranda ICQ/IM project,
-all portions of this codebase are copyrighted to the people
-listed in contributors.txt.
-
-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.
-*/
-#include "..\..\core\commonheaders.h"
-#include <m_url.h>
-#include "url.h"
-
-HANDLE hUrlWindowList = NULL;
-static HANDLE hEventContactSettingChange = NULL;
-static HANDLE hContactDeleted = NULL;
-static HANDLE hSRUrlMenuItem = NULL;
-
-INT_PTR CALLBACK DlgProcUrlSend(HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM lParam);
-INT_PTR CALLBACK DlgProcUrlRecv(HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM lParam);
-
-static INT_PTR ReadUrlCommand(WPARAM, LPARAM lParam)
-{
- CreateDialogParam(hInst, MAKEINTRESOURCE(IDD_URLRECV), NULL, DlgProcUrlRecv, lParam);
- return 0;
-}
-
-static int UrlEventAdded(WPARAM wParam, LPARAM lParam)
-{
- CLISTEVENT cle;
- DBEVENTINFO dbei;
- TCHAR szTooltip[256];
-
- ZeroMemory(&dbei, sizeof(dbei));
- dbei.cbSize = sizeof(dbei);
- dbei.cbBlob = 0;
- CallService(MS_DB_EVENT_GET, lParam, (LPARAM)&dbei);
- if (dbei.flags&(DBEF_SENT|DBEF_READ) || dbei.eventType != EVENTTYPE_URL) return 0;
-
- SkinPlaySound("RecvUrl");
- ZeroMemory(&cle, sizeof(cle));
- cle.cbSize = sizeof(cle);
- cle.flags = CLEF_TCHAR;
- cle.hContact = (HANDLE)wParam;
- cle.hDbEvent = (HANDLE)lParam;
- cle.hIcon = LoadSkinIcon(SKINICON_EVENT_URL);
- cle.pszService = "SRUrl/ReadUrl";
- mir_sntprintf(szTooltip, SIZEOF(szTooltip), TranslateT("URL from %s"), cli.pfnGetContactDisplayName((HANDLE)wParam, 0));
- cle.ptszTooltip = szTooltip;
- CallService(MS_CLIST_ADDEVENT, 0, (LPARAM)&cle);
- return 0;
-}
-
-static INT_PTR SendUrlCommand(WPARAM wParam, LPARAM)
-{
- CreateDialogParam(hInst, MAKEINTRESOURCE(IDD_URLSEND), NULL, DlgProcUrlSend, wParam);
- return 0;
-}
-
-static void RestoreUnreadUrlAlerts(void)
-{
- CLISTEVENT cle = {0};
- DBEVENTINFO dbei = {0};
- TCHAR toolTip[256];
- HANDLE hDbEvent, hContact;
-
- dbei.cbSize = sizeof(dbei);
- cle.cbSize = sizeof(cle);
- cle.hIcon = LoadSkinIcon(SKINICON_EVENT_URL);
- cle.pszService = "SRUrl/ReadUrl";
-
- hContact = (HANDLE)CallService(MS_DB_CONTACT_FINDFIRST, 0, 0);
- while (hContact) {
- hDbEvent = (HANDLE)CallService(MS_DB_EVENT_FINDFIRSTUNREAD, (WPARAM)hContact, 0);
- while (hDbEvent) {
- dbei.cbBlob = 0;
- CallService(MS_DB_EVENT_GET, (WPARAM)hDbEvent, (LPARAM)&dbei);
- if ( !(dbei.flags&(DBEF_SENT|DBEF_READ)) && dbei.eventType == EVENTTYPE_URL) {
- cle.hContact = hContact;
- cle.hDbEvent = hDbEvent;
- cle.flags = CLEF_TCHAR;
- mir_sntprintf(toolTip, SIZEOF(toolTip), TranslateT("URL from %s"), cli.pfnGetContactDisplayName(hContact, 0));
- cle.ptszTooltip = toolTip;
- CallService(MS_CLIST_ADDEVENT, 0, (LPARAM)&cle);
- }
- hDbEvent = (HANDLE)CallService(MS_DB_EVENT_FINDNEXT, (WPARAM)hDbEvent, 0);
- }
- hContact = (HANDLE)CallService(MS_DB_CONTACT_FINDNEXT, (WPARAM)hContact, 0);
- }
-}
-
-static int ContactSettingChanged(WPARAM wParam, LPARAM lParam)
-{
- DBCONTACTWRITESETTING *cws = (DBCONTACTWRITESETTING*)lParam;
- char *szProto;
-
- szProto = (char*)CallService(MS_PROTO_GETCONTACTBASEPROTO, wParam, 0);
- if (lstrcmpA(cws->szModule, "CList") && (szProto == NULL || lstrcmpA(cws->szModule, szProto))) return 0;
- WindowList_Broadcast(hUrlWindowList, DM_UPDATETITLE, 0, 0);
- return 0;
-}
-
-static int SRUrlPreBuildMenu(WPARAM wParam, LPARAM)
-{
- CLISTMENUITEM mi = { 0 };
- mi.cbSize = sizeof(mi);
- mi.flags = CMIM_FLAGS | CMIF_HIDDEN;
-
- char *szProto = (char*)CallService(MS_PROTO_GETCONTACTBASEPROTO, wParam, 0);
- if (szProto != NULL)
- if (CallProtoServiceInt(NULL,szProto, PS_GETCAPS, PFLAGNUM_1, 0) & PF1_URLSEND)
- mi.flags = CMIM_FLAGS;
-
- CallService(MS_CLIST_MODIFYMENUITEM, (WPARAM)hSRUrlMenuItem, (LPARAM)&mi);
- return 0;
-}
-
-static int SRUrlModulesLoaded(WPARAM, LPARAM)
-{
- CLISTMENUITEM mi = { 0 };
- mi.cbSize = sizeof(mi);
- mi.position = -2000040000;
- mi.flags = CMIF_ICONFROMICOLIB;
- mi.icolibItem = GetSkinIconHandle(SKINICON_EVENT_URL);
- mi.pszName = LPGEN("Web Page Address (&URL)");
- mi.pszService = MS_URL_SENDURL;
- hSRUrlMenuItem = Menu_AddContactMenuItem(&mi);
-
- RestoreUnreadUrlAlerts();
- return 0;
-}
-
-static int SRUrlShutdown(WPARAM, LPARAM)
-{
- if (hEventContactSettingChange)
- UnhookEvent(hEventContactSettingChange);
-
- if (hContactDeleted)
- UnhookEvent(hContactDeleted);
-
- if (hUrlWindowList)
- WindowList_BroadcastAsync(hUrlWindowList, WM_CLOSE, 0, 0);
-
- return 0;
-}
-
-int UrlContactDeleted(WPARAM wParam, LPARAM)
-{
- HWND h = WindowList_Find(hUrlWindowList, (HANDLE)wParam);
- if (h)
- SendMessage(h, WM_CLOSE, 0, 0);
-
- return 0;
-}
-
-int LoadSendRecvUrlModule(void)
-{
- hUrlWindowList = (HANDLE)CallService(MS_UTILS_ALLOCWINDOWLIST, 0, 0);
- HookEvent(ME_SYSTEM_MODULESLOADED, SRUrlModulesLoaded);
- HookEvent(ME_DB_EVENT_ADDED, UrlEventAdded);
- HookEvent(ME_CLIST_PREBUILDCONTACTMENU, SRUrlPreBuildMenu);
- hEventContactSettingChange = HookEvent(ME_DB_CONTACT_SETTINGCHANGED, ContactSettingChanged);
- hContactDeleted = HookEvent(ME_DB_CONTACT_DELETED, UrlContactDeleted);
- HookEvent(ME_SYSTEM_PRESHUTDOWN, SRUrlShutdown);
- CreateServiceFunction(MS_URL_SENDURL, SendUrlCommand);
- CreateServiceFunction("SRUrl/ReadUrl", ReadUrlCommand);
- SkinAddNewSoundEx("RecvUrl", LPGEN("URL"), LPGEN("Incoming"));
- return 0;
-}
|