summaryrefslogtreecommitdiff
path: root/gtalkext
diff options
context:
space:
mode:
Diffstat (limited to 'gtalkext')
-rw-r--r--gtalkext/GTalkExt.cpp96
-rw-r--r--gtalkext/GTalkExt.dep325
-rw-r--r--gtalkext/GTalkExt.dsp268
-rw-r--r--gtalkext/GTalkExt.dsw29
-rw-r--r--gtalkext/GTalkExt.mak782
-rw-r--r--gtalkext/GTalkExt.sln37
-rw-r--r--gtalkext/GTalkExt.vcproj522
-rw-r--r--gtalkext/GTalkExt.vcxproj385
-rw-r--r--gtalkext/GTalkExt.vcxproj.filters102
-rw-r--r--gtalkext/avatar.cpp212
-rw-r--r--gtalkext/avatar.h25
-rw-r--r--gtalkext/db.cpp100
-rw-r--r--gtalkext/db.h31
-rw-r--r--gtalkext/dllmain.cpp62
-rw-r--r--gtalkext/handlers.cpp433
-rw-r--r--gtalkext/handlers.h27
-rw-r--r--gtalkext/inbox.cpp402
-rw-r--r--gtalkext/inbox.h25
-rw-r--r--gtalkext/include/m_utils.h1
-rw-r--r--gtalkext/menu.cpp95
-rw-r--r--gtalkext/menu.h24
-rw-r--r--gtalkext/notifications.cpp414
-rw-r--r--gtalkext/notifications.h42
-rw-r--r--gtalkext/options.cpp297
-rw-r--r--gtalkext/options.h39
-rw-r--r--gtalkext/popups.cpp104
-rw-r--r--gtalkext/popups.h25
-rw-r--r--gtalkext/res/PopupIcon.icobin1406 -> 0 bytes
-rw-r--r--gtalkext/res/pseudoava.pngbin21935 -> 0 bytes
-rw-r--r--gtalkext/res/settings.rc84
-rw-r--r--gtalkext/resources.h67
-rw-r--r--gtalkext/stdafx.cpp25
-rw-r--r--gtalkext/stdafx.h73
-rw-r--r--gtalkext/targetver.h47
-rw-r--r--gtalkext/tipper_items.cpp157
-rw-r--r--gtalkext/tipper_items.h24
36 files changed, 0 insertions, 5381 deletions
diff --git a/gtalkext/GTalkExt.cpp b/gtalkext/GTalkExt.cpp
deleted file mode 100644
index ae7e06b..0000000
--- a/gtalkext/GTalkExt.cpp
+++ /dev/null
@@ -1,96 +0,0 @@
-//***************************************************************************************
-//
-// Google Extension plugin for the Miranda IM's Jabber protocol
-// Copyright (c) 2011 bems@jabber.org, George Hazan (ghazan@jabber.ru)
-//
-// 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.
-//
-//***************************************************************************************
-// GTalkExt.cpp : Defines the exported functions for the DLL application.
-//***************************************************************************************
-
-#include "stdafx.h"
-#include "options.h"
-#include "handlers.h"
-#include "tipper_items.h"
-#include "avatar.h"
-#include "menu.h"
-
-PLUGINLINK *pluginLink;
-
-#define MIID_PLUGINIFACE {0x08B86253, 0xEC6E, 0x4d09, { 0xB7, 0xA9, 0x64, 0xAC, 0xDF, 0x06, 0x27, 0xB8 }}
-
-PLUGININFOEX pluginInfo={
- sizeof(PLUGININFOEX),
- PLUGIN_DESCRIPTION,
- PLUGIN_VERSION_DWORD,
- "Currently only mail notifications implemented",
- "bems",
- "bems@vingrad.ru",
- COPYRIGHT_STRING,
- "http://miranda-planet.com/forum/index.php?autocom=downloads&showfile=1400",
- UNICODE_AWARE,
- 0, //doesn't replace anything built-in
- MIID_PLUGINIFACE //{08B86253-EC6E-4d09-B7A9-64ACDF0627B8}
-};
-
-extern DWORD g_mirandaVersion;
-
-extern "C" __declspec(dllexport) PLUGININFOEX* MirandaPluginInfoEx(DWORD mirandaVersion)
-{
- g_mirandaVersion = mirandaVersion;
- return &pluginInfo;
-}
-
-static const MUUID interfaces[] = {MIID_PLUGINIFACE, MIID_LAST};
-extern "C" __declspec(dllexport) const MUUID* MirandaPluginInterfaces(void)
-{
- return interfaces;
-}
-
-HANDLE hModulesLoaded = 0;
-HANDLE hAccListChanged = 0;
-
-extern "C" int __declspec(dllexport) Unload(void)
-{
- UnhookOptionsInitialization();
- InitMenus(FALSE);
- InitAvaUnit(FALSE);
- if (hAccListChanged) UnhookEvent(hAccListChanged);
- if (hModulesLoaded) UnhookEvent(hModulesLoaded);
- return 0;
-}
-
-HICON g_hPopupIcon = 0;
-extern HINSTANCE hInst;
-
-extern "C" int __declspec(dllexport) Load(PLUGINLINK *link)
-{
- g_hPopupIcon = LoadIcon(hInst, MAKEINTRESOURCE(IDI_POPUP));
-
- pluginLink = link;
- if (
- !mir_getXI(&xi) ||
- !(hModulesLoaded = HookEvent(ME_SYSTEM_MODULESLOADED, ModulesLoaded)) ||
- !(hAccListChanged = HookEvent(ME_PROTO_ACCLISTCHANGED, AccListChanged)) ||
- !InitAvaUnit(TRUE) ||
- !InitMenus(TRUE)
- )
- {Unload(); return 1;};
-
- AddTipperItem();
-
- return 0;
-} \ No newline at end of file
diff --git a/gtalkext/GTalkExt.dep b/gtalkext/GTalkExt.dep
deleted file mode 100644
index 2f87f61..0000000
--- a/gtalkext/GTalkExt.dep
+++ /dev/null
@@ -1,325 +0,0 @@
-# Microsoft Developer Studio Generated Dependency File, included by GTalkExt.mak
-
-.\avatar.cpp : \
- "..\..\include\m_avatars.h"\
- "..\..\include\m_clist.h"\
- "..\..\include\m_database.h"\
- "..\..\include\m_jabber.h"\
- "..\..\include\m_langpack.h"\
- "..\..\include\m_netlib.h"\
- "..\..\include\m_options.h"\
- "..\..\include\m_plugins.h"\
- "..\..\include\m_popup.h"\
- "..\..\include\m_protocols.h"\
- "..\..\include\m_protomod.h"\
- "..\..\include\m_protosvc.h"\
- "..\..\include\m_system.h"\
- "..\..\include\m_utils.h"\
- "..\..\include\m_xml.h"\
- "..\..\include\newpluginapi.h"\
- "..\..\include\statusmodes.h"\
- ".\avatar.h"\
- ".\options.h"\
- ".\resources.h"\
- ".\stdafx.h"\
- ".\targetver.h"\
- {$(INCLUDE)}"psapi.h"\
-
-
-.\db.cpp : \
- "..\..\include\m_avatars.h"\
- "..\..\include\m_clist.h"\
- "..\..\include\m_database.h"\
- "..\..\include\m_jabber.h"\
- "..\..\include\m_langpack.h"\
- "..\..\include\m_netlib.h"\
- "..\..\include\m_options.h"\
- "..\..\include\m_plugins.h"\
- "..\..\include\m_popup.h"\
- "..\..\include\m_protocols.h"\
- "..\..\include\m_protomod.h"\
- "..\..\include\m_protosvc.h"\
- "..\..\include\m_system.h"\
- "..\..\include\m_utils.h"\
- "..\..\include\m_xml.h"\
- "..\..\include\newpluginapi.h"\
- "..\..\include\statusmodes.h"\
- ".\options.h"\
- ".\resources.h"\
- ".\stdafx.h"\
- ".\targetver.h"\
- {$(INCLUDE)}"psapi.h"\
-
-
-.\dllmain.cpp : \
- "..\..\include\m_avatars.h"\
- "..\..\include\m_clist.h"\
- "..\..\include\m_database.h"\
- "..\..\include\m_jabber.h"\
- "..\..\include\m_langpack.h"\
- "..\..\include\m_netlib.h"\
- "..\..\include\m_options.h"\
- "..\..\include\m_plugins.h"\
- "..\..\include\m_popup.h"\
- "..\..\include\m_protocols.h"\
- "..\..\include\m_protomod.h"\
- "..\..\include\m_protosvc.h"\
- "..\..\include\m_system.h"\
- "..\..\include\m_utils.h"\
- "..\..\include\m_xml.h"\
- "..\..\include\newpluginapi.h"\
- "..\..\include\statusmodes.h"\
- ".\notifications.h"\
- ".\options.h"\
- ".\popups.h"\
- ".\resources.h"\
- ".\stdafx.h"\
- ".\targetver.h"\
- {$(INCLUDE)}"psapi.h"\
-
-
-.\GTalkExt.cpp : \
- "..\..\include\m_avatars.h"\
- "..\..\include\m_clist.h"\
- "..\..\include\m_database.h"\
- "..\..\include\m_jabber.h"\
- "..\..\include\m_langpack.h"\
- "..\..\include\m_netlib.h"\
- "..\..\include\m_options.h"\
- "..\..\include\m_plugins.h"\
- "..\..\include\m_popup.h"\
- "..\..\include\m_protocols.h"\
- "..\..\include\m_protomod.h"\
- "..\..\include\m_protosvc.h"\
- "..\..\include\m_system.h"\
- "..\..\include\m_utils.h"\
- "..\..\include\m_xml.h"\
- "..\..\include\newpluginapi.h"\
- "..\..\include\statusmodes.h"\
- ".\avatar.h"\
- ".\handlers.h"\
- ".\menu.h"\
- ".\options.h"\
- ".\resources.h"\
- ".\stdafx.h"\
- ".\targetver.h"\
- ".\tipper_items.h"\
- {$(INCLUDE)}"psapi.h"\
-
-
-.\handlers.cpp : \
- "..\..\include\m_avatars.h"\
- "..\..\include\m_clist.h"\
- "..\..\include\m_database.h"\
- "..\..\include\m_jabber.h"\
- "..\..\include\m_langpack.h"\
- "..\..\include\m_netlib.h"\
- "..\..\include\m_options.h"\
- "..\..\include\m_plugins.h"\
- "..\..\include\m_popup.h"\
- "..\..\include\m_protocols.h"\
- "..\..\include\m_protomod.h"\
- "..\..\include\m_protosvc.h"\
- "..\..\include\m_system.h"\
- "..\..\include\m_utils.h"\
- "..\..\include\m_xml.h"\
- "..\..\include\newpluginapi.h"\
- "..\..\include\statusmodes.h"\
- ".\db.h"\
- ".\handlers.h"\
- ".\notifications.h"\
- ".\options.h"\
- ".\popups.h"\
- ".\resources.h"\
- ".\stdafx.h"\
- ".\targetver.h"\
- {$(INCLUDE)}"psapi.h"\
-
-
-.\inbox.cpp : \
- "..\..\include\m_avatars.h"\
- "..\..\include\m_clist.h"\
- "..\..\include\m_database.h"\
- "..\..\include\m_jabber.h"\
- "..\..\include\m_langpack.h"\
- "..\..\include\m_netlib.h"\
- "..\..\include\m_options.h"\
- "..\..\include\m_plugins.h"\
- "..\..\include\m_popup.h"\
- "..\..\include\m_protocols.h"\
- "..\..\include\m_protomod.h"\
- "..\..\include\m_protosvc.h"\
- "..\..\include\m_system.h"\
- "..\..\include\m_utils.h"\
- "..\..\include\m_xml.h"\
- "..\..\include\newpluginapi.h"\
- "..\..\include\statusmodes.h"\
- ".\db.h"\
- ".\inbox.h"\
- ".\notifications.h"\
- ".\options.h"\
- ".\resources.h"\
- ".\stdafx.h"\
- ".\targetver.h"\
- {$(INCLUDE)}"psapi.h"\
-
-
-.\menu.cpp : \
- "..\..\include\m_avatars.h"\
- "..\..\include\m_clist.h"\
- "..\..\include\m_database.h"\
- "..\..\include\m_jabber.h"\
- "..\..\include\m_langpack.h"\
- "..\..\include\m_netlib.h"\
- "..\..\include\m_options.h"\
- "..\..\include\m_plugins.h"\
- "..\..\include\m_popup.h"\
- "..\..\include\m_protocols.h"\
- "..\..\include\m_protomod.h"\
- "..\..\include\m_protosvc.h"\
- "..\..\include\m_system.h"\
- "..\..\include\m_utils.h"\
- "..\..\include\m_xml.h"\
- "..\..\include\newpluginapi.h"\
- "..\..\include\statusmodes.h"\
- ".\inbox.h"\
- ".\menu.h"\
- ".\options.h"\
- ".\resources.h"\
- ".\stdafx.h"\
- ".\targetver.h"\
- {$(INCLUDE)}"psapi.h"\
-
-
-.\notifications.cpp : \
- "..\..\include\m_avatars.h"\
- "..\..\include\m_clist.h"\
- "..\..\include\m_database.h"\
- "..\..\include\m_jabber.h"\
- "..\..\include\m_langpack.h"\
- "..\..\include\m_netlib.h"\
- "..\..\include\m_options.h"\
- "..\..\include\m_plugins.h"\
- "..\..\include\m_popup.h"\
- "..\..\include\m_protocols.h"\
- "..\..\include\m_protomod.h"\
- "..\..\include\m_protosvc.h"\
- "..\..\include\m_system.h"\
- "..\..\include\m_utils.h"\
- "..\..\include\m_xml.h"\
- "..\..\include\newpluginapi.h"\
- "..\..\include\statusmodes.h"\
- ".\avatar.h"\
- ".\db.h"\
- ".\inbox.h"\
- ".\notifications.h"\
- ".\options.h"\
- ".\resources.h"\
- ".\stdafx.h"\
- ".\targetver.h"\
- {$(INCLUDE)}"psapi.h"\
-
-
-.\options.cpp : \
- "..\..\include\m_avatars.h"\
- "..\..\include\m_clist.h"\
- "..\..\include\m_database.h"\
- "..\..\include\m_jabber.h"\
- "..\..\include\m_langpack.h"\
- "..\..\include\m_netlib.h"\
- "..\..\include\m_options.h"\
- "..\..\include\m_plugins.h"\
- "..\..\include\m_popup.h"\
- "..\..\include\m_protocols.h"\
- "..\..\include\m_protomod.h"\
- "..\..\include\m_protosvc.h"\
- "..\..\include\m_system.h"\
- "..\..\include\m_utils.h"\
- "..\..\include\m_xml.h"\
- "..\..\include\newpluginapi.h"\
- "..\..\include\statusmodes.h"\
- ".\options.h"\
- ".\resources.h"\
- ".\stdafx.h"\
- ".\targetver.h"\
- {$(INCLUDE)}"psapi.h"\
-
-
-.\popups.cpp : \
- "..\..\include\m_avatars.h"\
- "..\..\include\m_clist.h"\
- "..\..\include\m_database.h"\
- "..\..\include\m_jabber.h"\
- "..\..\include\m_langpack.h"\
- "..\..\include\m_netlib.h"\
- "..\..\include\m_options.h"\
- "..\..\include\m_plugins.h"\
- "..\..\include\m_popup.h"\
- "..\..\include\m_protocols.h"\
- "..\..\include\m_protomod.h"\
- "..\..\include\m_protosvc.h"\
- "..\..\include\m_system.h"\
- "..\..\include\m_utils.h"\
- "..\..\include\m_xml.h"\
- "..\..\include\newpluginapi.h"\
- "..\..\include\statusmodes.h"\
- ".\options.h"\
- ".\popups.h"\
- ".\resources.h"\
- ".\stdafx.h"\
- ".\targetver.h"\
- {$(INCLUDE)}"psapi.h"\
-
-
-.\stdafx.cpp : \
- "..\..\include\m_avatars.h"\
- "..\..\include\m_clist.h"\
- "..\..\include\m_database.h"\
- "..\..\include\m_jabber.h"\
- "..\..\include\m_langpack.h"\
- "..\..\include\m_netlib.h"\
- "..\..\include\m_options.h"\
- "..\..\include\m_plugins.h"\
- "..\..\include\m_popup.h"\
- "..\..\include\m_protocols.h"\
- "..\..\include\m_protomod.h"\
- "..\..\include\m_protosvc.h"\
- "..\..\include\m_system.h"\
- "..\..\include\m_utils.h"\
- "..\..\include\m_xml.h"\
- "..\..\include\newpluginapi.h"\
- "..\..\include\statusmodes.h"\
- ".\stdafx.h"\
- ".\targetver.h"\
- {$(INCLUDE)}"psapi.h"\
-
-
-.\tipper_items.cpp : \
- "..\..\include\m_avatars.h"\
- "..\..\include\m_clist.h"\
- "..\..\include\m_database.h"\
- "..\..\include\m_jabber.h"\
- "..\..\include\m_langpack.h"\
- "..\..\include\m_netlib.h"\
- "..\..\include\m_options.h"\
- "..\..\include\m_plugins.h"\
- "..\..\include\m_popup.h"\
- "..\..\include\m_protocols.h"\
- "..\..\include\m_protomod.h"\
- "..\..\include\m_protosvc.h"\
- "..\..\include\m_system.h"\
- "..\..\include\m_utils.h"\
- "..\..\include\m_xml.h"\
- "..\..\include\newpluginapi.h"\
- "..\..\include\statusmodes.h"\
- ".\resources.h"\
- ".\stdafx.h"\
- ".\targetver.h"\
- ".\tipper_items.h"\
- {$(INCLUDE)}"psapi.h"\
-
-
-.\res\settings.rc : \
- ".\include\m_utils.h"\
- ".\resources.h"\
-
diff --git a/gtalkext/GTalkExt.dsp b/gtalkext/GTalkExt.dsp
deleted file mode 100644
index 90e3e7a..0000000
--- a/gtalkext/GTalkExt.dsp
+++ /dev/null
@@ -1,268 +0,0 @@
-# Microsoft Developer Studio Project File - Name="GTalkExt" - Package Owner=<4>
-# Microsoft Developer Studio Generated Build File, Format Version 6.00
-# ** DO NOT EDIT **
-
-# TARGTYPE "Win32 (x86) Dynamic-Link Library" 0x0102
-
-CFG=GTalkExt - Win32 Debug Unicode
-!MESSAGE This is not a valid makefile. To build this project using NMAKE,
-!MESSAGE use the Export Makefile command and run
-!MESSAGE
-!MESSAGE NMAKE /f "GTalkExt.mak".
-!MESSAGE
-!MESSAGE You can specify a configuration when running NMAKE
-!MESSAGE by defining the macro CFG on the command line. For example:
-!MESSAGE
-!MESSAGE NMAKE /f "GTalkExt.mak" CFG="GTalkExt - Win32 Debug Unicode"
-!MESSAGE
-!MESSAGE Possible choices for configuration are:
-!MESSAGE
-!MESSAGE "GTalkExt - Win32 Release" (based on "Win32 (x86) Dynamic-Link Library")
-!MESSAGE "GTalkExt - Win32 Debug" (based on "Win32 (x86) Dynamic-Link Library")
-!MESSAGE "GTalkExt - Win32 Release Unicode" (based on "Win32 (x86) Dynamic-Link Library")
-!MESSAGE "GTalkExt - Win32 Debug Unicode" (based on "Win32 (x86) Dynamic-Link Library")
-!MESSAGE
-
-# Begin Project
-# PROP AllowPerConfigDependencies 0
-# PROP Scc_ProjName ""
-# PROP Scc_LocalPath ""
-CPP=cl.exe
-MTL=midl.exe
-RSC=rc.exe
-
-!IF "$(CFG)" == "GTalkExt - Win32 Release"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "Release"
-# PROP BASE Intermediate_Dir "Release"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 0
-# PROP Output_Dir "Release"
-# PROP Intermediate_Dir "Release"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /MT /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "GTalkExt_EXPORTS" /YX /FD /c
-# ADD CPP /nologo /MD /W3 /Zi /O1 /I "../../include" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "GTalkExt_EXPORTS" /Yu"stdafx.h" /FD /c
-# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /win32
-# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /win32
-# ADD BASE RSC /l 0x809 /d "NDEBUG"
-# ADD RSC /l 0x809 /d "NDEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /machine:I386
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /base:"0x5130000" /dll /map /debug /machine:I386 /out:"../../bin/release/plugins/GTalkExt.dll" /IGNORE:4089
-# SUBTRACT LINK32 /pdb:none /incremental:yes
-
-!ELSEIF "$(CFG)" == "GTalkExt - Win32 Debug"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "Debug"
-# PROP BASE Intermediate_Dir "Debug"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir "Debug"
-# PROP Intermediate_Dir "Debug"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /MTd /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "GTalkExt_EXPORTS" /YX /FD /GZ /c
-# ADD CPP /nologo /MDd /W3 /Gm /ZI /Od /I "../../include" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "GTalkExt_EXPORTS" /Fr /Yu"stdafx.h" /FD /GZ /c
-# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /win32
-# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /win32
-# ADD BASE RSC /l 0x809 /d "_DEBUG"
-# ADD RSC /l 0x809 /d "_DEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /debug /machine:I386 /pdbtype:sept
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /map /debug /machine:I386 /out:"../../bin/debug/plugins/GTalkExt.dll" /pdbtype:sept
-# SUBTRACT LINK32 /pdb:none /incremental:no
-
-!ELSEIF "$(CFG)" == "GTalkExt - Win32 Release Unicode"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "GTalkExt___Win32_Release_Unicode"
-# PROP BASE Intermediate_Dir "GTalkExt___Win32_Release_Unicode"
-# PROP BASE Ignore_Export_Lib 0
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 0
-# PROP Output_Dir "Release_Unicode"
-# PROP Intermediate_Dir "Release_Unicode"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /MD /W3 /Zi /O1 /I "../../include" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "GTalkExt_EXPORTS" /Yu"commonheaders.h" /FD /c
-# ADD CPP /nologo /MD /W3 /Zi /O1 /I "../../include" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "UNICODE" /D "_USRDLL" /D "GTalkExt_EXPORTS" /Yu"stdafx.h" /FD /c
-# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /win32
-# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /win32
-# ADD BASE RSC /l 0x809 /d "NDEBUG"
-# ADD RSC /l 0x809 /d "NDEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /base:"0x5130000" /dll /map /debug /machine:I386 /out:"../../bin/release/plugins/GTalkExt.dll" /IGNORE:4089
-# SUBTRACT BASE LINK32 /pdb:none /incremental:yes
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /base:"0x5130000" /dll /map /debug /machine:I386 /out:"../../bin/release unicode/plugins/GTalkExt.dll" /IGNORE:4089
-# SUBTRACT LINK32 /pdb:none /incremental:yes
-
-!ELSEIF "$(CFG)" == "GTalkExt - Win32 Debug Unicode"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "GTalkExt___Win32_Debug_Unicode"
-# PROP BASE Intermediate_Dir "GTalkExt___Win32_Debug_Unicode"
-# PROP BASE Ignore_Export_Lib 0
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir "Debug_Unicode"
-# PROP Intermediate_Dir "Debug_Unicode"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /MDd /W3 /Gm /ZI /Od /I "../../include" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "GTalkExt_EXPORTS" /Fr /Yu"commonheaders.h" /FD /GZ /c
-# ADD CPP /nologo /MDd /W3 /Gm /ZI /Od /I "../../include" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "UNICODE" /D "_USRDLL" /D "GTalkExt_EXPORTS" /Fr /Yu"stdafx.h" /FD /GZ /c
-# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /win32
-# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /win32
-# ADD BASE RSC /l 0x809 /d "_DEBUG"
-# ADD RSC /l 0x809 /d "_DEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /map /debug /machine:I386 /out:"../../bin/debug/plugins/GTalkExt.dll" /pdbtype:sept
-# SUBTRACT BASE LINK32 /pdb:none /incremental:no
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /map /debug /machine:I386 /out:"../../bin/debug Unicode/plugins/GTalkExt.dll" /pdbtype:sept
-# SUBTRACT LINK32 /pdb:none /incremental:no
-
-!ENDIF
-
-# Begin Target
-
-# Name "GTalkExt - Win32 Release"
-# Name "GTalkExt - Win32 Debug"
-# Name "GTalkExt - Win32 Release Unicode"
-# Name "GTalkExt - Win32 Debug Unicode"
-# Begin Group "Source Files"
-
-# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
-# Begin Source File
-
-SOURCE=.\avatar.cpp
-# End Source File
-# Begin Source File
-
-SOURCE=.\db.cpp
-# End Source File
-# Begin Source File
-
-SOURCE=.\dllmain.cpp
-# End Source File
-# Begin Source File
-
-SOURCE=.\GTalkExt.cpp
-# End Source File
-# Begin Source File
-
-SOURCE=.\handlers.cpp
-# End Source File
-# Begin Source File
-
-SOURCE=.\inbox.cpp
-# End Source File
-# Begin Source File
-
-SOURCE=.\menu.cpp
-# End Source File
-# Begin Source File
-
-SOURCE=.\notifications.cpp
-# End Source File
-# Begin Source File
-
-SOURCE=.\options.cpp
-# End Source File
-# Begin Source File
-
-SOURCE=.\popups.cpp
-# End Source File
-# Begin Source File
-
-SOURCE=.\stdafx.cpp
-# ADD CPP /Yc"stdafx.h"
-# End Source File
-# Begin Source File
-
-SOURCE=.\tipper_items.cpp
-# End Source File
-# End Group
-# Begin Group "Header Files"
-
-# PROP Default_Filter "h;hpp;hxx;hm;inl"
-# Begin Source File
-
-SOURCE=.\avatar.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\db.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\handlers.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\inbox.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\menu.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\notifications.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\options.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\popups.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\resources.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\stdafx.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\targetver.h
-# End Source File
-# Begin Source File
-
-SOURCE=.\tipper_items.h
-# End Source File
-# End Group
-# Begin Group "Resource Files"
-
-# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
-# Begin Source File
-
-SOURCE=.\res\settings.rc
-# End Source File
-# End Group
-# End Target
-# End Project
diff --git a/gtalkext/GTalkExt.dsw b/gtalkext/GTalkExt.dsw
deleted file mode 100644
index 7fccd10..0000000
--- a/gtalkext/GTalkExt.dsw
+++ /dev/null
@@ -1,29 +0,0 @@
-Microsoft Developer Studio Workspace File, Format Version 6.00
-# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
-
-###############################################################################
-
-Project: "GTalkExt"=.\GTalkExt.dsp - Package Owner=<4>
-
-Package=<5>
-{{{
-}}}
-
-Package=<4>
-{{{
-}}}
-
-###############################################################################
-
-Global:
-
-Package=<5>
-{{{
-}}}
-
-Package=<3>
-{{{
-}}}
-
-###############################################################################
-
diff --git a/gtalkext/GTalkExt.mak b/gtalkext/GTalkExt.mak
deleted file mode 100644
index 1746490..0000000
--- a/gtalkext/GTalkExt.mak
+++ /dev/null
@@ -1,782 +0,0 @@
-# Microsoft Developer Studio Generated NMAKE File, Based on GTalkExt.dsp
-!IF "$(CFG)" == ""
-CFG=GTalkExt - Win32 Release Unicode
-!MESSAGE No configuration specified. Defaulting to GTalkExt - Win32 Release Unicode.
-!ENDIF
-
-!IF "$(CFG)" != "GTalkExt - Win32 Release" && "$(CFG)" != "GTalkExt - Win32 Debug" && "$(CFG)" != "GTalkExt - Win32 Release Unicode" && "$(CFG)" != "GTalkExt - Win32 Debug Unicode"
-!MESSAGE Invalid configuration "$(CFG)" specified.
-!MESSAGE You can specify a configuration when running NMAKE
-!MESSAGE by defining the macro CFG on the command line. For example:
-!MESSAGE
-!MESSAGE NMAKE /f "GTalkExt.mak" CFG="GTalkExt - Win32 Debug Unicode"
-!MESSAGE
-!MESSAGE Possible choices for configuration are:
-!MESSAGE
-!MESSAGE "GTalkExt - Win32 Release" (based on "Win32 (x86) Dynamic-Link Library")
-!MESSAGE "GTalkExt - Win32 Debug" (based on "Win32 (x86) Dynamic-Link Library")
-!MESSAGE "GTalkExt - Win32 Release Unicode" (based on "Win32 (x86) Dynamic-Link Library")
-!MESSAGE "GTalkExt - Win32 Debug Unicode" (based on "Win32 (x86) Dynamic-Link Library")
-!MESSAGE
-!ERROR An invalid configuration is specified.
-!ENDIF
-
-!IF "$(OS)" == "Windows_NT"
-NULL=
-!ELSE
-NULL=nul
-!ENDIF
-
-CPP=cl.exe
-MTL=midl.exe
-RSC=rc.exe
-
-!IF "$(CFG)" == "GTalkExt - Win32 Release"
-
-OUTDIR=.\Release
-INTDIR=.\Release
-
-ALL : "..\..\bin\release\plugins\GTalkExt.dll"
-
-
-CLEAN :
- -@erase "$(INTDIR)\avatar.obj"
- -@erase "$(INTDIR)\db.obj"
- -@erase "$(INTDIR)\dllmain.obj"
- -@erase "$(INTDIR)\GTalkExt.obj"
- -@erase "$(INTDIR)\GTalkExt.pch"
- -@erase "$(INTDIR)\handlers.obj"
- -@erase "$(INTDIR)\inbox.obj"
- -@erase "$(INTDIR)\menu.obj"
- -@erase "$(INTDIR)\notifications.obj"
- -@erase "$(INTDIR)\options.obj"
- -@erase "$(INTDIR)\popups.obj"
- -@erase "$(INTDIR)\settings.res"
- -@erase "$(INTDIR)\stdafx.obj"
- -@erase "$(INTDIR)\tipper_items.obj"
- -@erase "$(INTDIR)\vc60.idb"
- -@erase "$(INTDIR)\vc60.pdb"
- -@erase "$(OUTDIR)\GTalkExt.exp"
- -@erase "$(OUTDIR)\GTalkExt.lib"
- -@erase "$(OUTDIR)\GTalkExt.map"
- -@erase "$(OUTDIR)\GTalkExt.pdb"
- -@erase "..\..\bin\release\plugins\GTalkExt.dll"
-
-"$(OUTDIR)" :
- if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
-
-CPP_PROJ=/nologo /MD /W3 /Zi /O1 /I "../../include" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "GTalkExt_EXPORTS" /Fp"$(INTDIR)\GTalkExt.pch" /Yu"stdafx.h" /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\\" /FD /c
-MTL_PROJ=/nologo /D "NDEBUG" /mktyplib203 /win32
-RSC_PROJ=/l 0x809 /fo"$(INTDIR)\settings.res" /d "NDEBUG"
-BSC32=bscmake.exe
-BSC32_FLAGS=/nologo /o"$(OUTDIR)\GTalkExt.bsc"
-BSC32_SBRS= \
-
-LINK32=link.exe
-LINK32_FLAGS=kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /base:"0x5130000" /dll /incremental:no /pdb:"$(OUTDIR)\GTalkExt.pdb" /map:"$(INTDIR)\GTalkExt.map" /debug /machine:I386 /out:"../../bin/release/plugins/GTalkExt.dll" /implib:"$(OUTDIR)\GTalkExt.lib" /IGNORE:4089
-LINK32_OBJS= \
- "$(INTDIR)\tipper_items.obj" \
- "$(INTDIR)\avatar.obj" \
- "$(INTDIR)\db.obj" \
- "$(INTDIR)\dllmain.obj" \
- "$(INTDIR)\GTalkExt.obj" \
- "$(INTDIR)\handlers.obj" \
- "$(INTDIR)\inbox.obj" \
- "$(INTDIR)\menu.obj" \
- "$(INTDIR)\notifications.obj" \
- "$(INTDIR)\options.obj" \
- "$(INTDIR)\popups.obj" \
- "$(INTDIR)\stdafx.obj" \
- "$(INTDIR)\settings.res"
-
-"..\..\bin\release\plugins\GTalkExt.dll" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS)
- $(LINK32) @<<
- $(LINK32_FLAGS) $(LINK32_OBJS)
-<<
-
-!ELSEIF "$(CFG)" == "GTalkExt - Win32 Debug"
-
-OUTDIR=.\Debug
-INTDIR=.\Debug
-# Begin Custom Macros
-OutDir=.\Debug
-# End Custom Macros
-
-ALL : "..\..\bin\debug\plugins\GTalkExt.dll" "$(OUTDIR)\GTalkExt.bsc"
-
-
-CLEAN :
- -@erase "$(INTDIR)\avatar.obj"
- -@erase "$(INTDIR)\avatar.sbr"
- -@erase "$(INTDIR)\db.obj"
- -@erase "$(INTDIR)\db.sbr"
- -@erase "$(INTDIR)\dllmain.obj"
- -@erase "$(INTDIR)\dllmain.sbr"
- -@erase "$(INTDIR)\GTalkExt.obj"
- -@erase "$(INTDIR)\GTalkExt.pch"
- -@erase "$(INTDIR)\GTalkExt.sbr"
- -@erase "$(INTDIR)\handlers.obj"
- -@erase "$(INTDIR)\handlers.sbr"
- -@erase "$(INTDIR)\inbox.obj"
- -@erase "$(INTDIR)\inbox.sbr"
- -@erase "$(INTDIR)\menu.obj"
- -@erase "$(INTDIR)\menu.sbr"
- -@erase "$(INTDIR)\notifications.obj"
- -@erase "$(INTDIR)\notifications.sbr"
- -@erase "$(INTDIR)\options.obj"
- -@erase "$(INTDIR)\options.sbr"
- -@erase "$(INTDIR)\popups.obj"
- -@erase "$(INTDIR)\popups.sbr"
- -@erase "$(INTDIR)\settings.res"
- -@erase "$(INTDIR)\stdafx.obj"
- -@erase "$(INTDIR)\stdafx.sbr"
- -@erase "$(INTDIR)\tipper_items.obj"
- -@erase "$(INTDIR)\tipper_items.sbr"
- -@erase "$(INTDIR)\vc60.idb"
- -@erase "$(INTDIR)\vc60.pdb"
- -@erase "$(OUTDIR)\GTalkExt.exp"
- -@erase "$(OUTDIR)\GTalkExt.lib"
- -@erase "$(OUTDIR)\GTalkExt.map"
- -@erase "$(OUTDIR)\GTalkExt.pdb"
- -@erase "$(OUTDIR)\GTalkExt.bsc"
- -@erase "..\..\bin\debug\plugins\GTalkExt.dll"
- -@erase "..\..\bin\debug\plugins\GTalkExt.ilk"
-
-"$(OUTDIR)" :
- if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
-
-CPP_PROJ=/nologo /MDd /W3 /Gm /ZI /Od /I "../../include" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "GTalkExt_EXPORTS" /Fr"$(INTDIR)\\" /Fp"$(INTDIR)\GTalkExt.pch" /Yu"stdafx.h" /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\\" /FD /GZ /c
-MTL_PROJ=/nologo /D "_DEBUG" /mktyplib203 /win32
-RSC_PROJ=/l 0x809 /fo"$(INTDIR)\settings.res" /d "_DEBUG"
-BSC32=bscmake.exe
-BSC32_FLAGS=/nologo /o"$(OUTDIR)\GTalkExt.bsc"
-BSC32_SBRS= \
- "$(INTDIR)\tipper_items.sbr" \
- "$(INTDIR)\avatar.sbr" \
- "$(INTDIR)\db.sbr" \
- "$(INTDIR)\dllmain.sbr" \
- "$(INTDIR)\GTalkExt.sbr" \
- "$(INTDIR)\handlers.sbr" \
- "$(INTDIR)\inbox.sbr" \
- "$(INTDIR)\menu.sbr" \
- "$(INTDIR)\notifications.sbr" \
- "$(INTDIR)\options.sbr" \
- "$(INTDIR)\popups.sbr" \
- "$(INTDIR)\stdafx.sbr"
-
-"$(OUTDIR)\GTalkExt.bsc" : "$(OUTDIR)" $(BSC32_SBRS)
- $(BSC32) @<<
- $(BSC32_FLAGS) $(BSC32_SBRS)
-<<
-
-LINK32=link.exe
-LINK32_FLAGS=kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /incremental:yes /pdb:"$(OUTDIR)\GTalkExt.pdb" /map:"$(INTDIR)\GTalkExt.map" /debug /machine:I386 /out:"../../bin/debug/plugins/GTalkExt.dll" /implib:"$(OUTDIR)\GTalkExt.lib" /pdbtype:sept
-LINK32_OBJS= \
- "$(INTDIR)\tipper_items.obj" \
- "$(INTDIR)\avatar.obj" \
- "$(INTDIR)\db.obj" \
- "$(INTDIR)\dllmain.obj" \
- "$(INTDIR)\GTalkExt.obj" \
- "$(INTDIR)\handlers.obj" \
- "$(INTDIR)\inbox.obj" \
- "$(INTDIR)\menu.obj" \
- "$(INTDIR)\notifications.obj" \
- "$(INTDIR)\options.obj" \
- "$(INTDIR)\popups.obj" \
- "$(INTDIR)\stdafx.obj" \
- "$(INTDIR)\settings.res"
-
-"..\..\bin\debug\plugins\GTalkExt.dll" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS)
- $(LINK32) @<<
- $(LINK32_FLAGS) $(LINK32_OBJS)
-<<
-
-!ELSEIF "$(CFG)" == "GTalkExt - Win32 Release Unicode"
-
-OUTDIR=.\Release_Unicode
-INTDIR=.\Release_Unicode
-
-ALL : "..\..\bin\release unicode\plugins\GTalkExt.dll"
-
-
-CLEAN :
- -@erase "$(INTDIR)\avatar.obj"
- -@erase "$(INTDIR)\db.obj"
- -@erase "$(INTDIR)\dllmain.obj"
- -@erase "$(INTDIR)\GTalkExt.obj"
- -@erase "$(INTDIR)\GTalkExt.pch"
- -@erase "$(INTDIR)\handlers.obj"
- -@erase "$(INTDIR)\inbox.obj"
- -@erase "$(INTDIR)\menu.obj"
- -@erase "$(INTDIR)\notifications.obj"
- -@erase "$(INTDIR)\options.obj"
- -@erase "$(INTDIR)\popups.obj"
- -@erase "$(INTDIR)\settings.res"
- -@erase "$(INTDIR)\stdafx.obj"
- -@erase "$(INTDIR)\tipper_items.obj"
- -@erase "$(INTDIR)\vc60.idb"
- -@erase "$(INTDIR)\vc60.pdb"
- -@erase "$(OUTDIR)\GTalkExt.exp"
- -@erase "$(OUTDIR)\GTalkExt.lib"
- -@erase "$(OUTDIR)\GTalkExt.map"
- -@erase "$(OUTDIR)\GTalkExt.pdb"
- -@erase "..\..\bin\release unicode\plugins\GTalkExt.dll"
-
-"$(OUTDIR)" :
- if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
-
-CPP_PROJ=/nologo /MD /W3 /Zi /O1 /I "../../include" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "UNICODE" /D "_USRDLL" /D "GTalkExt_EXPORTS" /Fp"$(INTDIR)\GTalkExt.pch" /Yu"stdafx.h" /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\\" /FD /c
-MTL_PROJ=/nologo /D "NDEBUG" /mktyplib203 /win32
-RSC_PROJ=/l 0x809 /fo"$(INTDIR)\settings.res" /d "NDEBUG"
-BSC32=bscmake.exe
-BSC32_FLAGS=/nologo /o"$(OUTDIR)\GTalkExt.bsc"
-BSC32_SBRS= \
-
-LINK32=link.exe
-LINK32_FLAGS=kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /base:"0x5130000" /dll /incremental:no /pdb:"$(OUTDIR)\GTalkExt.pdb" /map:"$(INTDIR)\GTalkExt.map" /debug /machine:I386 /out:"../../bin/release unicode/plugins/GTalkExt.dll" /implib:"$(OUTDIR)\GTalkExt.lib" /IGNORE:4089
-LINK32_OBJS= \
- "$(INTDIR)\tipper_items.obj" \
- "$(INTDIR)\avatar.obj" \
- "$(INTDIR)\db.obj" \
- "$(INTDIR)\dllmain.obj" \
- "$(INTDIR)\GTalkExt.obj" \
- "$(INTDIR)\handlers.obj" \
- "$(INTDIR)\inbox.obj" \
- "$(INTDIR)\menu.obj" \
- "$(INTDIR)\notifications.obj" \
- "$(INTDIR)\options.obj" \
- "$(INTDIR)\popups.obj" \
- "$(INTDIR)\stdafx.obj" \
- "$(INTDIR)\settings.res"
-
-"..\..\bin\release unicode\plugins\GTalkExt.dll" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS)
- $(LINK32) @<<
- $(LINK32_FLAGS) $(LINK32_OBJS)
-<<
-
-!ELSEIF "$(CFG)" == "GTalkExt - Win32 Debug Unicode"
-
-OUTDIR=.\Debug_Unicode
-INTDIR=.\Debug_Unicode
-# Begin Custom Macros
-OutDir=.\Debug_Unicode
-# End Custom Macros
-
-ALL : "..\..\bin\debug Unicode\plugins\GTalkExt.dll" "$(OUTDIR)\GTalkExt.bsc"
-
-
-CLEAN :
- -@erase "$(INTDIR)\avatar.obj"
- -@erase "$(INTDIR)\avatar.sbr"
- -@erase "$(INTDIR)\db.obj"
- -@erase "$(INTDIR)\db.sbr"
- -@erase "$(INTDIR)\dllmain.obj"
- -@erase "$(INTDIR)\dllmain.sbr"
- -@erase "$(INTDIR)\GTalkExt.obj"
- -@erase "$(INTDIR)\GTalkExt.pch"
- -@erase "$(INTDIR)\GTalkExt.sbr"
- -@erase "$(INTDIR)\handlers.obj"
- -@erase "$(INTDIR)\handlers.sbr"
- -@erase "$(INTDIR)\inbox.obj"
- -@erase "$(INTDIR)\inbox.sbr"
- -@erase "$(INTDIR)\menu.obj"
- -@erase "$(INTDIR)\menu.sbr"
- -@erase "$(INTDIR)\notifications.obj"
- -@erase "$(INTDIR)\notifications.sbr"
- -@erase "$(INTDIR)\options.obj"
- -@erase "$(INTDIR)\options.sbr"
- -@erase "$(INTDIR)\popups.obj"
- -@erase "$(INTDIR)\popups.sbr"
- -@erase "$(INTDIR)\settings.res"
- -@erase "$(INTDIR)\stdafx.obj"
- -@erase "$(INTDIR)\stdafx.sbr"
- -@erase "$(INTDIR)\tipper_items.obj"
- -@erase "$(INTDIR)\tipper_items.sbr"
- -@erase "$(INTDIR)\vc60.idb"
- -@erase "$(INTDIR)\vc60.pdb"
- -@erase "$(OUTDIR)\GTalkExt.exp"
- -@erase "$(OUTDIR)\GTalkExt.lib"
- -@erase "$(OUTDIR)\GTalkExt.map"
- -@erase "$(OUTDIR)\GTalkExt.pdb"
- -@erase "$(OUTDIR)\GTalkExt.bsc"
- -@erase "..\..\bin\debug Unicode\plugins\GTalkExt.dll"
- -@erase "..\..\bin\debug Unicode\plugins\GTalkExt.ilk"
-
-"$(OUTDIR)" :
- if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
-
-CPP_PROJ=/nologo /MDd /W3 /Gm /ZI /Od /I "../../include" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "UNICODE" /D "_USRDLL" /D "GTalkExt_EXPORTS" /Fr"$(INTDIR)\\" /Fp"$(INTDIR)\GTalkExt.pch" /Yu"stdafx.h" /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\\" /FD /GZ /c
-MTL_PROJ=/nologo /D "_DEBUG" /mktyplib203 /win32
-RSC_PROJ=/l 0x809 /fo"$(INTDIR)\settings.res" /d "_DEBUG"
-BSC32=bscmake.exe
-BSC32_FLAGS=/nologo /o"$(OUTDIR)\GTalkExt.bsc"
-BSC32_SBRS= \
- "$(INTDIR)\tipper_items.sbr" \
- "$(INTDIR)\avatar.sbr" \
- "$(INTDIR)\db.sbr" \
- "$(INTDIR)\dllmain.sbr" \
- "$(INTDIR)\GTalkExt.sbr" \
- "$(INTDIR)\handlers.sbr" \
- "$(INTDIR)\inbox.sbr" \
- "$(INTDIR)\menu.sbr" \
- "$(INTDIR)\notifications.sbr" \
- "$(INTDIR)\options.sbr" \
- "$(INTDIR)\popups.sbr" \
- "$(INTDIR)\stdafx.sbr"
-
-"$(OUTDIR)\GTalkExt.bsc" : "$(OUTDIR)" $(BSC32_SBRS)
- $(BSC32) @<<
- $(BSC32_FLAGS) $(BSC32_SBRS)
-<<
-
-LINK32=link.exe
-LINK32_FLAGS=kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /incremental:yes /pdb:"$(OUTDIR)\GTalkExt.pdb" /map:"$(INTDIR)\GTalkExt.map" /debug /machine:I386 /out:"../../bin/debug Unicode/plugins/GTalkExt.dll" /implib:"$(OUTDIR)\GTalkExt.lib" /pdbtype:sept
-LINK32_OBJS= \
- "$(INTDIR)\tipper_items.obj" \
- "$(INTDIR)\avatar.obj" \
- "$(INTDIR)\db.obj" \
- "$(INTDIR)\dllmain.obj" \
- "$(INTDIR)\GTalkExt.obj" \
- "$(INTDIR)\handlers.obj" \
- "$(INTDIR)\inbox.obj" \
- "$(INTDIR)\menu.obj" \
- "$(INTDIR)\notifications.obj" \
- "$(INTDIR)\options.obj" \
- "$(INTDIR)\popups.obj" \
- "$(INTDIR)\stdafx.obj" \
- "$(INTDIR)\settings.res"
-
-"..\..\bin\debug Unicode\plugins\GTalkExt.dll" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS)
- $(LINK32) @<<
- $(LINK32_FLAGS) $(LINK32_OBJS)
-<<
-
-!ENDIF
-
-.c{$(INTDIR)}.obj::
- $(CPP) @<<
- $(CPP_PROJ) $<
-<<
-
-.cpp{$(INTDIR)}.obj::
- $(CPP) @<<
- $(CPP_PROJ) $<
-<<
-
-.cxx{$(INTDIR)}.obj::
- $(CPP) @<<
- $(CPP_PROJ) $<
-<<
-
-.c{$(INTDIR)}.sbr::
- $(CPP) @<<
- $(CPP_PROJ) $<
-<<
-
-.cpp{$(INTDIR)}.sbr::
- $(CPP) @<<
- $(CPP_PROJ) $<
-<<
-
-.cxx{$(INTDIR)}.sbr::
- $(CPP) @<<
- $(CPP_PROJ) $<
-<<
-
-
-!IF "$(NO_EXTERNAL_DEPS)" != "1"
-!IF EXISTS("GTalkExt.dep")
-!INCLUDE "GTalkExt.dep"
-!ELSE
-!MESSAGE Warning: cannot find "GTalkExt.dep"
-!ENDIF
-!ENDIF
-
-
-!IF "$(CFG)" == "GTalkExt - Win32 Release" || "$(CFG)" == "GTalkExt - Win32 Debug" || "$(CFG)" == "GTalkExt - Win32 Release Unicode" || "$(CFG)" == "GTalkExt - Win32 Debug Unicode"
-SOURCE=.\avatar.cpp
-
-!IF "$(CFG)" == "GTalkExt - Win32 Release"
-
-
-"$(INTDIR)\avatar.obj" : $(SOURCE) "$(INTDIR)" "$(INTDIR)\GTalkExt.pch"
-
-
-!ELSEIF "$(CFG)" == "GTalkExt - Win32 Debug"
-
-
-"$(INTDIR)\avatar.obj" "$(INTDIR)\avatar.sbr" : $(SOURCE) "$(INTDIR)" "$(INTDIR)\GTalkExt.pch"
-
-
-!ELSEIF "$(CFG)" == "GTalkExt - Win32 Release Unicode"
-
-
-"$(INTDIR)\avatar.obj" : $(SOURCE) "$(INTDIR)" "$(INTDIR)\GTalkExt.pch"
-
-
-!ELSEIF "$(CFG)" == "GTalkExt - Win32 Debug Unicode"
-
-
-"$(INTDIR)\avatar.obj" "$(INTDIR)\avatar.sbr" : $(SOURCE) "$(INTDIR)" "$(INTDIR)\GTalkExt.pch"
-
-
-!ENDIF
-
-SOURCE=.\db.cpp
-
-!IF "$(CFG)" == "GTalkExt - Win32 Release"
-
-
-"$(INTDIR)\db.obj" : $(SOURCE) "$(INTDIR)" "$(INTDIR)\GTalkExt.pch"
-
-
-!ELSEIF "$(CFG)" == "GTalkExt - Win32 Debug"
-
-
-"$(INTDIR)\db.obj" "$(INTDIR)\db.sbr" : $(SOURCE) "$(INTDIR)" "$(INTDIR)\GTalkExt.pch"
-
-
-!ELSEIF "$(CFG)" == "GTalkExt - Win32 Release Unicode"
-
-
-"$(INTDIR)\db.obj" : $(SOURCE) "$(INTDIR)" "$(INTDIR)\GTalkExt.pch"
-
-
-!ELSEIF "$(CFG)" == "GTalkExt - Win32 Debug Unicode"
-
-
-"$(INTDIR)\db.obj" "$(INTDIR)\db.sbr" : $(SOURCE) "$(INTDIR)" "$(INTDIR)\GTalkExt.pch"
-
-
-!ENDIF
-
-SOURCE=.\dllmain.cpp
-
-!IF "$(CFG)" == "GTalkExt - Win32 Release"
-
-
-"$(INTDIR)\dllmain.obj" : $(SOURCE) "$(INTDIR)" "$(INTDIR)\GTalkExt.pch"
-
-
-!ELSEIF "$(CFG)" == "GTalkExt - Win32 Debug"
-
-
-"$(INTDIR)\dllmain.obj" "$(INTDIR)\dllmain.sbr" : $(SOURCE) "$(INTDIR)" "$(INTDIR)\GTalkExt.pch"
-
-
-!ELSEIF "$(CFG)" == "GTalkExt - Win32 Release Unicode"
-
-
-"$(INTDIR)\dllmain.obj" : $(SOURCE) "$(INTDIR)" "$(INTDIR)\GTalkExt.pch"
-
-
-!ELSEIF "$(CFG)" == "GTalkExt - Win32 Debug Unicode"
-
-
-"$(INTDIR)\dllmain.obj" "$(INTDIR)\dllmain.sbr" : $(SOURCE) "$(INTDIR)" "$(INTDIR)\GTalkExt.pch"
-
-
-!ENDIF
-
-SOURCE=.\GTalkExt.cpp
-
-!IF "$(CFG)" == "GTalkExt - Win32 Release"
-
-
-"$(INTDIR)\GTalkExt.obj" : $(SOURCE) "$(INTDIR)" "$(INTDIR)\GTalkExt.pch"
-
-
-!ELSEIF "$(CFG)" == "GTalkExt - Win32 Debug"
-
-
-"$(INTDIR)\GTalkExt.obj" "$(INTDIR)\GTalkExt.sbr" : $(SOURCE) "$(INTDIR)" "$(INTDIR)\GTalkExt.pch"
-
-
-!ELSEIF "$(CFG)" == "GTalkExt - Win32 Release Unicode"
-
-
-"$(INTDIR)\GTalkExt.obj" : $(SOURCE) "$(INTDIR)" "$(INTDIR)\GTalkExt.pch"
-
-
-!ELSEIF "$(CFG)" == "GTalkExt - Win32 Debug Unicode"
-
-
-"$(INTDIR)\GTalkExt.obj" "$(INTDIR)\GTalkExt.sbr" : $(SOURCE) "$(INTDIR)" "$(INTDIR)\GTalkExt.pch"
-
-
-!ENDIF
-
-SOURCE=.\handlers.cpp
-
-!IF "$(CFG)" == "GTalkExt - Win32 Release"
-
-
-"$(INTDIR)\handlers.obj" : $(SOURCE) "$(INTDIR)" "$(INTDIR)\GTalkExt.pch"
-
-
-!ELSEIF "$(CFG)" == "GTalkExt - Win32 Debug"
-
-
-"$(INTDIR)\handlers.obj" "$(INTDIR)\handlers.sbr" : $(SOURCE) "$(INTDIR)" "$(INTDIR)\GTalkExt.pch"
-
-
-!ELSEIF "$(CFG)" == "GTalkExt - Win32 Release Unicode"
-
-
-"$(INTDIR)\handlers.obj" : $(SOURCE) "$(INTDIR)" "$(INTDIR)\GTalkExt.pch"
-
-
-!ELSEIF "$(CFG)" == "GTalkExt - Win32 Debug Unicode"
-
-
-"$(INTDIR)\handlers.obj" "$(INTDIR)\handlers.sbr" : $(SOURCE) "$(INTDIR)" "$(INTDIR)\GTalkExt.pch"
-
-
-!ENDIF
-
-SOURCE=.\inbox.cpp
-
-!IF "$(CFG)" == "GTalkExt - Win32 Release"
-
-
-"$(INTDIR)\inbox.obj" : $(SOURCE) "$(INTDIR)" "$(INTDIR)\GTalkExt.pch"
-
-
-!ELSEIF "$(CFG)" == "GTalkExt - Win32 Debug"
-
-
-"$(INTDIR)\inbox.obj" "$(INTDIR)\inbox.sbr" : $(SOURCE) "$(INTDIR)" "$(INTDIR)\GTalkExt.pch"
-
-
-!ELSEIF "$(CFG)" == "GTalkExt - Win32 Release Unicode"
-
-
-"$(INTDIR)\inbox.obj" : $(SOURCE) "$(INTDIR)" "$(INTDIR)\GTalkExt.pch"
-
-
-!ELSEIF "$(CFG)" == "GTalkExt - Win32 Debug Unicode"
-
-
-"$(INTDIR)\inbox.obj" "$(INTDIR)\inbox.sbr" : $(SOURCE) "$(INTDIR)" "$(INTDIR)\GTalkExt.pch"
-
-
-!ENDIF
-
-SOURCE=.\menu.cpp
-
-!IF "$(CFG)" == "GTalkExt - Win32 Release"
-
-
-"$(INTDIR)\menu.obj" : $(SOURCE) "$(INTDIR)" "$(INTDIR)\GTalkExt.pch"
-
-
-!ELSEIF "$(CFG)" == "GTalkExt - Win32 Debug"
-
-
-"$(INTDIR)\menu.obj" "$(INTDIR)\menu.sbr" : $(SOURCE) "$(INTDIR)" "$(INTDIR)\GTalkExt.pch"
-
-
-!ELSEIF "$(CFG)" == "GTalkExt - Win32 Release Unicode"
-
-
-"$(INTDIR)\menu.obj" : $(SOURCE) "$(INTDIR)" "$(INTDIR)\GTalkExt.pch"
-
-
-!ELSEIF "$(CFG)" == "GTalkExt - Win32 Debug Unicode"
-
-
-"$(INTDIR)\menu.obj" "$(INTDIR)\menu.sbr" : $(SOURCE) "$(INTDIR)" "$(INTDIR)\GTalkExt.pch"
-
-
-!ENDIF
-
-SOURCE=.\notifications.cpp
-
-!IF "$(CFG)" == "GTalkExt - Win32 Release"
-
-
-"$(INTDIR)\notifications.obj" : $(SOURCE) "$(INTDIR)" "$(INTDIR)\GTalkExt.pch"
-
-
-!ELSEIF "$(CFG)" == "GTalkExt - Win32 Debug"
-
-
-"$(INTDIR)\notifications.obj" "$(INTDIR)\notifications.sbr" : $(SOURCE) "$(INTDIR)" "$(INTDIR)\GTalkExt.pch"
-
-
-!ELSEIF "$(CFG)" == "GTalkExt - Win32 Release Unicode"
-
-
-"$(INTDIR)\notifications.obj" : $(SOURCE) "$(INTDIR)" "$(INTDIR)\GTalkExt.pch"
-
-
-!ELSEIF "$(CFG)" == "GTalkExt - Win32 Debug Unicode"
-
-
-"$(INTDIR)\notifications.obj" "$(INTDIR)\notifications.sbr" : $(SOURCE) "$(INTDIR)" "$(INTDIR)\GTalkExt.pch"
-
-
-!ENDIF
-
-SOURCE=.\options.cpp
-
-!IF "$(CFG)" == "GTalkExt - Win32 Release"
-
-
-"$(INTDIR)\options.obj" : $(SOURCE) "$(INTDIR)" "$(INTDIR)\GTalkExt.pch"
-
-
-!ELSEIF "$(CFG)" == "GTalkExt - Win32 Debug"
-
-
-"$(INTDIR)\options.obj" "$(INTDIR)\options.sbr" : $(SOURCE) "$(INTDIR)" "$(INTDIR)\GTalkExt.pch"
-
-
-!ELSEIF "$(CFG)" == "GTalkExt - Win32 Release Unicode"
-
-
-"$(INTDIR)\options.obj" : $(SOURCE) "$(INTDIR)" "$(INTDIR)\GTalkExt.pch"
-
-
-!ELSEIF "$(CFG)" == "GTalkExt - Win32 Debug Unicode"
-
-
-"$(INTDIR)\options.obj" "$(INTDIR)\options.sbr" : $(SOURCE) "$(INTDIR)" "$(INTDIR)\GTalkExt.pch"
-
-
-!ENDIF
-
-SOURCE=.\popups.cpp
-
-!IF "$(CFG)" == "GTalkExt - Win32 Release"
-
-
-"$(INTDIR)\popups.obj" : $(SOURCE) "$(INTDIR)" "$(INTDIR)\GTalkExt.pch"
-
-
-!ELSEIF "$(CFG)" == "GTalkExt - Win32 Debug"
-
-
-"$(INTDIR)\popups.obj" "$(INTDIR)\popups.sbr" : $(SOURCE) "$(INTDIR)" "$(INTDIR)\GTalkExt.pch"
-
-
-!ELSEIF "$(CFG)" == "GTalkExt - Win32 Release Unicode"
-
-
-"$(INTDIR)\popups.obj" : $(SOURCE) "$(INTDIR)" "$(INTDIR)\GTalkExt.pch"
-
-
-!ELSEIF "$(CFG)" == "GTalkExt - Win32 Debug Unicode"
-
-
-"$(INTDIR)\popups.obj" "$(INTDIR)\popups.sbr" : $(SOURCE) "$(INTDIR)" "$(INTDIR)\GTalkExt.pch"
-
-
-!ENDIF
-
-SOURCE=.\stdafx.cpp
-
-!IF "$(CFG)" == "GTalkExt - Win32 Release"
-
-CPP_SWITCHES=/nologo /MD /W3 /Zi /O1 /I "../../include" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "GTalkExt_EXPORTS" /Fp"$(INTDIR)\GTalkExt.pch" /Yc"stdafx.h" /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\\" /FD /c
-
-"$(INTDIR)\stdafx.obj" "$(INTDIR)\GTalkExt.pch" : $(SOURCE) "$(INTDIR)"
- $(CPP) @<<
- $(CPP_SWITCHES) $(SOURCE)
-<<
-
-
-!ELSEIF "$(CFG)" == "GTalkExt - Win32 Debug"
-
-CPP_SWITCHES=/nologo /MDd /W3 /Gm /ZI /Od /I "../../include" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "GTalkExt_EXPORTS" /Fr"$(INTDIR)\\" /Fp"$(INTDIR)\GTalkExt.pch" /Yc"stdafx.h" /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\\" /FD /GZ /c
-
-"$(INTDIR)\stdafx.obj" "$(INTDIR)\stdafx.sbr" "$(INTDIR)\GTalkExt.pch" : $(SOURCE) "$(INTDIR)"
- $(CPP) @<<
- $(CPP_SWITCHES) $(SOURCE)
-<<
-
-
-!ELSEIF "$(CFG)" == "GTalkExt - Win32 Release Unicode"
-
-CPP_SWITCHES=/nologo /MD /W3 /Zi /O1 /I "../../include" /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "UNICODE" /D "_USRDLL" /D "GTalkExt_EXPORTS" /Fp"$(INTDIR)\GTalkExt.pch" /Yc"stdafx.h" /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\\" /FD /c
-
-"$(INTDIR)\stdafx.obj" "$(INTDIR)\GTalkExt.pch" : $(SOURCE) "$(INTDIR)"
- $(CPP) @<<
- $(CPP_SWITCHES) $(SOURCE)
-<<
-
-
-!ELSEIF "$(CFG)" == "GTalkExt - Win32 Debug Unicode"
-
-CPP_SWITCHES=/nologo /MDd /W3 /Gm /ZI /Od /I "../../include" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "UNICODE" /D "_USRDLL" /D "GTalkExt_EXPORTS" /Fr"$(INTDIR)\\" /Fp"$(INTDIR)\GTalkExt.pch" /Yc"stdafx.h" /Fo"$(INTDIR)\\" /Fd"$(INTDIR)\\" /FD /GZ /c
-
-"$(INTDIR)\stdafx.obj" "$(INTDIR)\stdafx.sbr" "$(INTDIR)\GTalkExt.pch" : $(SOURCE) "$(INTDIR)"
- $(CPP) @<<
- $(CPP_SWITCHES) $(SOURCE)
-<<
-
-
-!ENDIF
-
-SOURCE=.\tipper_items.cpp
-
-!IF "$(CFG)" == "GTalkExt - Win32 Release"
-
-
-"$(INTDIR)\tipper_items.obj" : $(SOURCE) "$(INTDIR)" "$(INTDIR)\GTalkExt.pch"
-
-
-!ELSEIF "$(CFG)" == "GTalkExt - Win32 Debug"
-
-
-"$(INTDIR)\tipper_items.obj" "$(INTDIR)\tipper_items.sbr" : $(SOURCE) "$(INTDIR)" "$(INTDIR)\GTalkExt.pch"
-
-
-!ELSEIF "$(CFG)" == "GTalkExt - Win32 Release Unicode"
-
-
-"$(INTDIR)\tipper_items.obj" : $(SOURCE) "$(INTDIR)" "$(INTDIR)\GTalkExt.pch"
-
-
-!ELSEIF "$(CFG)" == "GTalkExt - Win32 Debug Unicode"
-
-
-"$(INTDIR)\tipper_items.obj" "$(INTDIR)\tipper_items.sbr" : $(SOURCE) "$(INTDIR)" "$(INTDIR)\GTalkExt.pch"
-
-
-!ENDIF
-
-SOURCE=.\res\settings.rc
-
-!IF "$(CFG)" == "GTalkExt - Win32 Release"
-
-
-"$(INTDIR)\settings.res" : $(SOURCE) "$(INTDIR)"
- $(RSC) /l 0x809 /fo"$(INTDIR)\settings.res" /i "res" /d "NDEBUG" $(SOURCE)
-
-
-!ELSEIF "$(CFG)" == "GTalkExt - Win32 Debug"
-
-
-"$(INTDIR)\settings.res" : $(SOURCE) "$(INTDIR)"
- $(RSC) /l 0x809 /fo"$(INTDIR)\settings.res" /i "res" /d "_DEBUG" $(SOURCE)
-
-
-!ELSEIF "$(CFG)" == "GTalkExt - Win32 Release Unicode"
-
-
-"$(INTDIR)\settings.res" : $(SOURCE) "$(INTDIR)"
- $(RSC) /l 0x809 /fo"$(INTDIR)\settings.res" /i "res" /d "NDEBUG" $(SOURCE)
-
-
-!ELSEIF "$(CFG)" == "GTalkExt - Win32 Debug Unicode"
-
-
-"$(INTDIR)\settings.res" : $(SOURCE) "$(INTDIR)"
- $(RSC) /l 0x809 /fo"$(INTDIR)\settings.res" /i "res" /d "_DEBUG" $(SOURCE)
-
-
-!ENDIF
-
-
-!ENDIF
diff --git a/gtalkext/GTalkExt.sln b/gtalkext/GTalkExt.sln
deleted file mode 100644
index 9e7a697..0000000
--- a/gtalkext/GTalkExt.sln
+++ /dev/null
@@ -1,37 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 11.00
-# Visual C++ Express 2010
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "GTalkExt", "GTalkExt.vcxproj", "{2A737817-2443-48FF-A2E8-CA8D69E450F3}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug Unicode|Win32 = Debug Unicode|Win32
- Debug Unicode|x64 = Debug Unicode|x64
- Debug|Win32 = Debug|Win32
- Debug|x64 = Debug|x64
- Release Unicode|Win32 = Release Unicode|Win32
- Release Unicode|x64 = Release Unicode|x64
- Release|Win32 = Release|Win32
- Release|x64 = Release|x64
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {2A737817-2443-48FF-A2E8-CA8D69E450F3}.Debug Unicode|Win32.ActiveCfg = Debug Unicode|Win32
- {2A737817-2443-48FF-A2E8-CA8D69E450F3}.Debug Unicode|Win32.Build.0 = Debug Unicode|Win32
- {2A737817-2443-48FF-A2E8-CA8D69E450F3}.Debug Unicode|x64.ActiveCfg = Debug Unicode|x64
- {2A737817-2443-48FF-A2E8-CA8D69E450F3}.Debug Unicode|x64.Build.0 = Debug Unicode|x64
- {2A737817-2443-48FF-A2E8-CA8D69E450F3}.Debug|Win32.ActiveCfg = Debug|Win32
- {2A737817-2443-48FF-A2E8-CA8D69E450F3}.Debug|Win32.Build.0 = Debug|Win32
- {2A737817-2443-48FF-A2E8-CA8D69E450F3}.Debug|x64.ActiveCfg = Debug|x64
- {2A737817-2443-48FF-A2E8-CA8D69E450F3}.Debug|x64.Build.0 = Debug|x64
- {2A737817-2443-48FF-A2E8-CA8D69E450F3}.Release Unicode|Win32.ActiveCfg = Release Unicode|Win32
- {2A737817-2443-48FF-A2E8-CA8D69E450F3}.Release Unicode|Win32.Build.0 = Release Unicode|Win32
- {2A737817-2443-48FF-A2E8-CA8D69E450F3}.Release Unicode|x64.ActiveCfg = Release Unicode|x64
- {2A737817-2443-48FF-A2E8-CA8D69E450F3}.Release Unicode|x64.Build.0 = Release Unicode|x64
- {2A737817-2443-48FF-A2E8-CA8D69E450F3}.Release|Win32.ActiveCfg = Release|Win32
- {2A737817-2443-48FF-A2E8-CA8D69E450F3}.Release|Win32.Build.0 = Release|Win32
- {2A737817-2443-48FF-A2E8-CA8D69E450F3}.Release|x64.ActiveCfg = Release|x64
- {2A737817-2443-48FF-A2E8-CA8D69E450F3}.Release|x64.Build.0 = Release|x64
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
diff --git a/gtalkext/GTalkExt.vcproj b/gtalkext/GTalkExt.vcproj
deleted file mode 100644
index a529494..0000000
--- a/gtalkext/GTalkExt.vcproj
+++ /dev/null
@@ -1,522 +0,0 @@
-<?xml version="1.0" encoding="windows-1251"?>
-<VisualStudioProject
- ProjectType="Visual C++"
- Version="9,00"
- Name="GTalkExt"
- ProjectGUID="{2A737817-2443-48FF-A2E8-CA8D69E450F3}"
- RootNamespace="GTalkExt"
- Keyword="Win32Proj"
- TargetFrameworkVersion="196613"
- >
- <Platforms>
- <Platform
- Name="Win32"
- />
- </Platforms>
- <ToolFiles>
- </ToolFiles>
- <Configurations>
- <Configuration
- Name="Debug|Win32"
- OutputDirectory="$(SolutionDir)$(ConfigurationName)/Plugins"
- IntermediateDirectory="$(SolutionDir)$(ConfigurationName)/Obj/$(ProjectName)"
- ConfigurationType="2"
- CharacterSet="1"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories="../../include"
- PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;GTALKEXT_EXPORTS"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- UsePrecompiledHeader="2"
- WarningLevel="3"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- ShowProgress="1"
- LinkIncremental="2"
- AdditionalLibraryDirectories=""
- GenerateDebugInformation="true"
- SubSystem="2"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release|Win32"
- OutputDirectory="$(SolutionDir)$(ConfigurationName)/Plugins"
- IntermediateDirectory="$(SolutionDir)$(ConfigurationName)/Obj/$(ProjectName)"
- ConfigurationType="2"
- CharacterSet="1"
- WholeProgramOptimization="1"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="2"
- EnableIntrinsicFunctions="true"
- AdditionalIncludeDirectories="../../include"
- PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_USRDLL;GTALKEXT_EXPORTS"
- StringPooling="true"
- RuntimeLibrary="2"
- EnableFunctionLevelLinking="true"
- UsePrecompiledHeader="2"
- WarningLevel="3"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="2"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Debug Unicode|Win32"
- OutputDirectory="$(SolutionDir)$(ConfigurationName)/Plugins"
- IntermediateDirectory="$(SolutionDir)$(ConfigurationName)/Obj/$(ProjectName)"
- ConfigurationType="2"
- CharacterSet="1"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="0"
- AdditionalIncludeDirectories="../../include"
- PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;GTALKEXT_EXPORTS"
- MinimalRebuild="true"
- BasicRuntimeChecks="3"
- RuntimeLibrary="3"
- UsePrecompiledHeader="2"
- WarningLevel="3"
- DebugInformationFormat="4"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- ShowProgress="1"
- LinkIncremental="2"
- AdditionalLibraryDirectories=""
- GenerateDebugInformation="true"
- SubSystem="2"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- <Configuration
- Name="Release Unicode|Win32"
- OutputDirectory="$(SolutionDir)$(ConfigurationName)/Plugins"
- IntermediateDirectory="$(SolutionDir)$(ConfigurationName)/Obj/$(ProjectName)"
- ConfigurationType="2"
- CharacterSet="1"
- WholeProgramOptimization="1"
- >
- <Tool
- Name="VCPreBuildEventTool"
- />
- <Tool
- Name="VCCustomBuildTool"
- />
- <Tool
- Name="VCXMLDataGeneratorTool"
- />
- <Tool
- Name="VCWebServiceProxyGeneratorTool"
- />
- <Tool
- Name="VCMIDLTool"
- />
- <Tool
- Name="VCCLCompilerTool"
- Optimization="3"
- EnableIntrinsicFunctions="true"
- FavorSizeOrSpeed="2"
- AdditionalIncludeDirectories="../../include"
- PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_USRDLL;GTALKEXT_EXPORTS"
- StringPooling="true"
- ExceptionHandling="0"
- RuntimeLibrary="2"
- EnableFunctionLevelLinking="true"
- UsePrecompiledHeader="2"
- WarningLevel="3"
- DebugInformationFormat="3"
- />
- <Tool
- Name="VCManagedResourceCompilerTool"
- />
- <Tool
- Name="VCResourceCompilerTool"
- />
- <Tool
- Name="VCPreLinkEventTool"
- />
- <Tool
- Name="VCLinkerTool"
- LinkIncremental="1"
- GenerateDebugInformation="true"
- SubSystem="2"
- OptimizeReferences="2"
- EnableCOMDATFolding="2"
- TargetMachine="1"
- />
- <Tool
- Name="VCALinkTool"
- />
- <Tool
- Name="VCManifestTool"
- />
- <Tool
- Name="VCXDCMakeTool"
- />
- <Tool
- Name="VCBscMakeTool"
- />
- <Tool
- Name="VCFxCopTool"
- />
- <Tool
- Name="VCAppVerifierTool"
- />
- <Tool
- Name="VCPostBuildEventTool"
- />
- </Configuration>
- </Configurations>
- <References>
- </References>
- <Files>
- <Filter
- Name="Source Files"
- Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"
- UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
- >
- <File
- RelativePath=".\avatar.cpp"
- >
- </File>
- <File
- RelativePath=".\db.cpp"
- >
- </File>
- <File
- RelativePath=".\dllmain.cpp"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- UsePrecompiledHeader="0"
- CompileAsManaged="0"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- UsePrecompiledHeader="0"
- CompileAsManaged="0"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug Unicode|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- UsePrecompiledHeader="0"
- CompileAsManaged="0"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release Unicode|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- UsePrecompiledHeader="0"
- CompileAsManaged="0"
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath=".\GTalkExt.cpp"
- >
- </File>
- <File
- RelativePath=".\handlers.cpp"
- >
- </File>
- <File
- RelativePath=".\inbox.cpp"
- >
- </File>
- <File
- RelativePath=".\menu.cpp"
- >
- </File>
- <File
- RelativePath=".\notifications.cpp"
- >
- </File>
- <File
- RelativePath=".\options.cpp"
- >
- </File>
- <File
- RelativePath=".\popups.cpp"
- >
- </File>
- <File
- RelativePath=".\stdafx.cpp"
- >
- <FileConfiguration
- Name="Debug|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- UsePrecompiledHeader="1"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- UsePrecompiledHeader="1"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Debug Unicode|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- UsePrecompiledHeader="1"
- />
- </FileConfiguration>
- <FileConfiguration
- Name="Release Unicode|Win32"
- >
- <Tool
- Name="VCCLCompilerTool"
- UsePrecompiledHeader="1"
- />
- </FileConfiguration>
- </File>
- <File
- RelativePath=".\tipper_items.cpp"
- >
- </File>
- </Filter>
- <Filter
- Name="Header Files"
- Filter="h;hpp;hxx;hm;inl;inc;xsd"
- UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"
- >
- <File
- RelativePath=".\avatar.h"
- >
- </File>
- <File
- RelativePath=".\db.h"
- >
- </File>
- <File
- RelativePath=".\handlers.h"
- >
- </File>
- <File
- RelativePath=".\inbox.h"
- >
- </File>
- <File
- RelativePath=".\menu.h"
- >
- </File>
- <File
- RelativePath=".\notifications.h"
- >
- </File>
- <File
- RelativePath=".\options.h"
- >
- </File>
- <File
- RelativePath=".\popups.h"
- >
- </File>
- <File
- RelativePath=".\resources.h"
- >
- </File>
- <File
- RelativePath=".\stdafx.h"
- >
- </File>
- <File
- RelativePath=".\targetver.h"
- >
- </File>
- <File
- RelativePath=".\tipper_items.h"
- >
- </File>
- </Filter>
- <Filter
- Name="Resource Files"
- Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav"
- UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"
- >
- <File
- RelativePath=".\res\settings.rc"
- >
- </File>
- </Filter>
- <File
- RelativePath=".\langpack_GTalkExt_russian.txt"
- >
- </File>
- <File
- RelativePath=".\ReadMe.txt"
- >
- </File>
- </Files>
- <Globals>
- </Globals>
-</VisualStudioProject>
diff --git a/gtalkext/GTalkExt.vcxproj b/gtalkext/GTalkExt.vcxproj
deleted file mode 100644
index e2b305c..0000000
--- a/gtalkext/GTalkExt.vcxproj
+++ /dev/null
@@ -1,385 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
- <ItemGroup Label="ProjectConfigurations">
- <ProjectConfiguration Include="Debug Unicode|Win32">
- <Configuration>Debug Unicode</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Debug Unicode|x64">
- <Configuration>Debug Unicode</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Debug|Win32">
- <Configuration>Debug</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Debug|x64">
- <Configuration>Debug</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Release Unicode|Win32">
- <Configuration>Release Unicode</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Release Unicode|x64">
- <Configuration>Release Unicode</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Release|Win32">
- <Configuration>Release</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="Release|x64">
- <Configuration>Release</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- </ItemGroup>
- <PropertyGroup Label="Globals">
- <ProjectGuid>{2A737817-2443-48FF-A2E8-CA8D69E450F3}</ProjectGuid>
- <RootNamespace>GTalkExt</RootNamespace>
- <Keyword>Win32Proj</Keyword>
- </PropertyGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <CharacterSet>MultiByte</CharacterSet>
- <WholeProgramOptimization>true</WholeProgramOptimization>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <CharacterSet>MultiByte</CharacterSet>
- <WholeProgramOptimization>true</WholeProgramOptimization>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release Unicode|Win32'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- <WholeProgramOptimization>true</WholeProgramOptimization>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release Unicode|x64'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- <WholeProgramOptimization>true</WholeProgramOptimization>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <CharacterSet>MultiByte</CharacterSet>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <CharacterSet>MultiByte</CharacterSet>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug Unicode|Win32'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug Unicode|x64'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <CharacterSet>Unicode</CharacterSet>
- </PropertyGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
- <ImportGroup Label="ExtensionSettings">
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release Unicode|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release Unicode|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug Unicode|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug Unicode|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <PropertyGroup Label="UserMacros" />
- <PropertyGroup>
- <_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)$(Configuration)/Plugins\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)$(Configuration)/Plugins\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug Unicode|Win32'">$(SolutionDir)$(Configuration)/Plugins\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Debug Unicode|x64'">$(SolutionDir)$(Configuration)/Plugins\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)$(Configuration)/Obj/$(ProjectName)\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)$(Configuration)/Obj/$(ProjectName)\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug Unicode|Win32'">$(SolutionDir)$(Configuration)/Obj/$(ProjectName)\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Debug Unicode|x64'">$(SolutionDir)$(Configuration)/Obj/$(ProjectName)\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug Unicode|Win32'">true</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug Unicode|x64'">true</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)$(Configuration)/Plugins\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)$(Configuration)/Plugins\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Release Unicode|Win32'">$(SolutionDir)$(Configuration)/Plugins\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='Release Unicode|x64'">$(SolutionDir)$(Configuration)/Plugins\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)$(Configuration)/Obj/$(ProjectName)\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)$(Configuration)/Obj/$(ProjectName)\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Release Unicode|Win32'">$(SolutionDir)$(Configuration)/Obj/$(ProjectName)\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='Release Unicode|x64'">$(SolutionDir)$(Configuration)/Obj/$(ProjectName)\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release Unicode|Win32'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release Unicode|x64'">false</LinkIncremental>
- <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
- <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
- <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug Unicode|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
- <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug Unicode|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
- <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
- <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
- <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug Unicode|Win32'" />
- <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug Unicode|x64'" />
- <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
- <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
- <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug Unicode|Win32'" />
- <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug Unicode|x64'" />
- <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
- <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
- <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release Unicode|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
- <CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release Unicode|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
- <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
- <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
- <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release Unicode|Win32'" />
- <CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release Unicode|x64'" />
- <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
- <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
- <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release Unicode|Win32'" />
- <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release Unicode|x64'" />
- </PropertyGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>../include;../ExternalAPI;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;GTALKEXT_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
- <PrecompiledHeader>Use</PrecompiledHeader>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
- </ClCompile>
- <Link>
- <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <SubSystem>Windows</SubSystem>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>../../include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;GTALKEXT_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <PrecompiledHeader>Use</PrecompiledHeader>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <Link>
- <ShowProgress>LinkVerbose</ShowProgress>
- <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <SubSystem>Windows</SubSystem>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug Unicode|Win32'">
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>../include;../ExternalAPI;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;GTALKEXT_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
- <PrecompiledHeader>Use</PrecompiledHeader>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
- </ClCompile>
- <Link>
- <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <SubSystem>Windows</SubSystem>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug Unicode|x64'">
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>../../include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;GTALKEXT_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <PrecompiledHeader>Use</PrecompiledHeader>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <Link>
- <ShowProgress>LinkVerbose</ShowProgress>
- <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <SubSystem>Windows</SubSystem>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
- <ClCompile>
- <Optimization>Full</Optimization>
- <IntrinsicFunctions>true</IntrinsicFunctions>
- <PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;GTALKEXT_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <PrecompiledHeader>Use</PrecompiledHeader>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- <AdditionalIncludeDirectories>../include;../ExternalAPI;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <FavorSizeOrSpeed>Size</FavorSizeOrSpeed>
- </ClCompile>
- <Link>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <SubSystem>Windows</SubSystem>
- <OptimizeReferences>true</OptimizeReferences>
- <EnableCOMDATFolding>true</EnableCOMDATFolding>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <IntrinsicFunctions>true</IntrinsicFunctions>
- <PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;GTALKEXT_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <PrecompiledHeader>Use</PrecompiledHeader>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- <AdditionalIncludeDirectories>../../include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ClCompile>
- <Link>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <SubSystem>Windows</SubSystem>
- <OptimizeReferences>true</OptimizeReferences>
- <EnableCOMDATFolding>true</EnableCOMDATFolding>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release Unicode|Win32'">
- <ClCompile>
- <Optimization>Full</Optimization>
- <PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;GTALKEXT_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <PrecompiledHeader>Use</PrecompiledHeader>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- <AdditionalIncludeDirectories>../include;../ExternalAPI;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <FavorSizeOrSpeed>Size</FavorSizeOrSpeed>
- <StringPooling>true</StringPooling>
- </ClCompile>
- <Link>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <SubSystem>Windows</SubSystem>
- <OptimizeReferences>true</OptimizeReferences>
- <EnableCOMDATFolding>true</EnableCOMDATFolding>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release Unicode|x64'">
- <ClCompile>
- <Optimization>Full</Optimization>
- <PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;GTALKEXT_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <PrecompiledHeader>Use</PrecompiledHeader>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- <AdditionalIncludeDirectories>../../include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <FavorSizeOrSpeed>Size</FavorSizeOrSpeed>
- <StringPooling>true</StringPooling>
- </ClCompile>
- <Link>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <SubSystem>Windows</SubSystem>
- <OptimizeReferences>true</OptimizeReferences>
- <EnableCOMDATFolding>true</EnableCOMDATFolding>
- </Link>
- </ItemDefinitionGroup>
- <ItemGroup>
- <ClCompile Include="avatar.cpp" />
- <ClCompile Include="db.cpp" />
- <ClCompile Include="dllmain.cpp">
- <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
- </PrecompiledHeader>
- <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
- </PrecompiledHeader>
- <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug Unicode|Win32'">
- </PrecompiledHeader>
- <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug Unicode|x64'">
- </PrecompiledHeader>
- <CompileAsManaged Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">false</CompileAsManaged>
- <CompileAsManaged Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</CompileAsManaged>
- <CompileAsManaged Condition="'$(Configuration)|$(Platform)'=='Debug Unicode|Win32'">false</CompileAsManaged>
- <CompileAsManaged Condition="'$(Configuration)|$(Platform)'=='Debug Unicode|x64'">false</CompileAsManaged>
- <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
- </PrecompiledHeader>
- <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
- </PrecompiledHeader>
- <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release Unicode|Win32'">
- </PrecompiledHeader>
- <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release Unicode|x64'">
- </PrecompiledHeader>
- <CompileAsManaged Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</CompileAsManaged>
- <CompileAsManaged Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</CompileAsManaged>
- <CompileAsManaged Condition="'$(Configuration)|$(Platform)'=='Release Unicode|Win32'">false</CompileAsManaged>
- <CompileAsManaged Condition="'$(Configuration)|$(Platform)'=='Release Unicode|x64'">false</CompileAsManaged>
- </ClCompile>
- <ClCompile Include="GTalkExt.cpp" />
- <ClCompile Include="handlers.cpp" />
- <ClCompile Include="inbox.cpp" />
- <ClCompile Include="menu.cpp" />
- <ClCompile Include="notifications.cpp" />
- <ClCompile Include="options.cpp" />
- <ClCompile Include="popups.cpp" />
- <ClCompile Include="stdafx.cpp">
- <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Create</PrecompiledHeader>
- <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Create</PrecompiledHeader>
- <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug Unicode|Win32'">Create</PrecompiledHeader>
- <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug Unicode|x64'">Create</PrecompiledHeader>
- <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Create</PrecompiledHeader>
- <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Create</PrecompiledHeader>
- <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release Unicode|Win32'">Create</PrecompiledHeader>
- <PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release Unicode|x64'">Create</PrecompiledHeader>
- </ClCompile>
- <ClCompile Include="tipper_items.cpp" />
- </ItemGroup>
- <ItemGroup>
- <ClInclude Include="avatar.h" />
- <ClInclude Include="db.h" />
- <ClInclude Include="handlers.h" />
- <ClInclude Include="inbox.h" />
- <ClInclude Include="menu.h" />
- <ClInclude Include="notifications.h" />
- <ClInclude Include="options.h" />
- <ClInclude Include="popups.h" />
- <ClInclude Include="resources.h" />
- <ClInclude Include="stdafx.h" />
- <ClInclude Include="targetver.h" />
- <ClInclude Include="tipper_items.h" />
- </ItemGroup>
- <ItemGroup>
- <ResourceCompile Include="res\settings.rc" />
- </ItemGroup>
- <ItemGroup>
- <None Include="langpack_GTalkExt_russian.txt" />
- <None Include="ReadMe.txt" />
- </ItemGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
- <ImportGroup Label="ExtensionTargets">
- </ImportGroup>
-</Project> \ No newline at end of file
diff --git a/gtalkext/GTalkExt.vcxproj.filters b/gtalkext/GTalkExt.vcxproj.filters
deleted file mode 100644
index 6575ce7..0000000
--- a/gtalkext/GTalkExt.vcxproj.filters
+++ /dev/null
@@ -1,102 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
- <ItemGroup>
- <Filter Include="Source Files">
- <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
- <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
- </Filter>
- <Filter Include="Header Files">
- <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
- <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
- </Filter>
- <Filter Include="Resource Files">
- <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
- <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav</Extensions>
- </Filter>
- </ItemGroup>
- <ItemGroup>
- <ClCompile Include="avatar.cpp">
- <Filter>Source Files</Filter>
- </ClCompile>
- <ClCompile Include="db.cpp">
- <Filter>Source Files</Filter>
- </ClCompile>
- <ClCompile Include="dllmain.cpp">
- <Filter>Source Files</Filter>
- </ClCompile>
- <ClCompile Include="GTalkExt.cpp">
- <Filter>Source Files</Filter>
- </ClCompile>
- <ClCompile Include="handlers.cpp">
- <Filter>Source Files</Filter>
- </ClCompile>
- <ClCompile Include="inbox.cpp">
- <Filter>Source Files</Filter>
- </ClCompile>
- <ClCompile Include="menu.cpp">
- <Filter>Source Files</Filter>
- </ClCompile>
- <ClCompile Include="notifications.cpp">
- <Filter>Source Files</Filter>
- </ClCompile>
- <ClCompile Include="options.cpp">
- <Filter>Source Files</Filter>
- </ClCompile>
- <ClCompile Include="popups.cpp">
- <Filter>Source Files</Filter>
- </ClCompile>
- <ClCompile Include="stdafx.cpp">
- <Filter>Source Files</Filter>
- </ClCompile>
- <ClCompile Include="tipper_items.cpp">
- <Filter>Source Files</Filter>
- </ClCompile>
- </ItemGroup>
- <ItemGroup>
- <ClInclude Include="avatar.h">
- <Filter>Header Files</Filter>
- </ClInclude>
- <ClInclude Include="db.h">
- <Filter>Header Files</Filter>
- </ClInclude>
- <ClInclude Include="handlers.h">
- <Filter>Header Files</Filter>
- </ClInclude>
- <ClInclude Include="inbox.h">
- <Filter>Header Files</Filter>
- </ClInclude>
- <ClInclude Include="menu.h">
- <Filter>Header Files</Filter>
- </ClInclude>
- <ClInclude Include="notifications.h">
- <Filter>Header Files</Filter>
- </ClInclude>
- <ClInclude Include="options.h">
- <Filter>Header Files</Filter>
- </ClInclude>
- <ClInclude Include="popups.h">
- <Filter>Header Files</Filter>
- </ClInclude>
- <ClInclude Include="resources.h">
- <Filter>Header Files</Filter>
- </ClInclude>
- <ClInclude Include="stdafx.h">
- <Filter>Header Files</Filter>
- </ClInclude>
- <ClInclude Include="targetver.h">
- <Filter>Header Files</Filter>
- </ClInclude>
- <ClInclude Include="tipper_items.h">
- <Filter>Header Files</Filter>
- </ClInclude>
- </ItemGroup>
- <ItemGroup>
- <ResourceCompile Include="res\settings.rc">
- <Filter>Resource Files</Filter>
- </ResourceCompile>
- </ItemGroup>
- <ItemGroup>
- <None Include="langpack_GTalkExt_russian.txt" />
- <None Include="ReadMe.txt" />
- </ItemGroup>
-</Project> \ No newline at end of file
diff --git a/gtalkext/avatar.cpp b/gtalkext/avatar.cpp
deleted file mode 100644
index 3f98188..0000000
--- a/gtalkext/avatar.cpp
+++ /dev/null
@@ -1,212 +0,0 @@
-//***************************************************************************************
-//
-// Google Extension plugin for the Miranda IM's Jabber protocol
-// Copyright (c) 2011 bems@jabber.org, George Hazan (ghazan@jabber.ru)
-//
-// 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 "stdafx.h"
-#include "avatar.h"
-#include "resources.h"
-#include "options.h"
-
-static const LPSTR AVA_FILE_NAME_FORMAT = "%s\\%s\\AvatarCache\\Jabber\\" SHORT_PLUGIN_NAME ".pseudoava.png";
-static const LPTSTR AVA_RES_TYPE = _T("PNG");
-static const LPSTR SRMM_MODULE_NAME = "SRMM";
-static const LPSTR SRMM_AVATAR_SETTING_NAME = "Avatar";
-
-static const int SET_AVATAR_INTERVAL = 2000;
-
-void ForceDir(LPSTR dir, int len)
-{
- if (GetFileAttributesA(dir) != INVALID_FILE_ATTRIBUTES) return;
- for (int i = len - 1; i >= 0; i--)
- if ('\\' == dir[i]) {
- dir[i] = 0;
- __try {
- ForceDir(dir, i);
- }
- __finally {
- dir[i] = '\\';
- }
- CreateDirectoryA(dir, NULL);
- }
-}
-
-void ForceFileDir(LPSTR file)
-{
- for (int i = lstrlenA(file) - 1; i >= 0; i--)
- if ('\\' == file[i]) {
- file[i] = 0;
- __try {
- ForceDir(file, i);
- }
- __finally {
- file[i] = '\\';
- }
- break;
- }
-}
-
-LPSTR CreateAvaFile(HANDLE *hFile)
-{
- char name[MAX_PATH + 2];
- char path[MAX_PATH + 2];
- char full[MAX_PATH + 2];
-
- if (CallService(MS_DB_GETPROFILENAME, (WPARAM)sizeof(name), (LPARAM)&name))
- return NULL;
- for (int i = lstrlenA(name); i >= 0; i--)
- if ('.' == name[i]) {
- name[i] = 0;
- break;
- }
-
- if (CallService(MS_DB_GETPROFILEPATH, (WPARAM)sizeof(path), (LPARAM)&path))
- return NULL;
- sprintf(&full[0], AVA_FILE_NAME_FORMAT, path, name);
-
- ForceFileDir(&full[0]);
-
- HANDLE h = 0;
- __try {
- h = CreateFileA(&full[0], GENERIC_WRITE, FILE_SHARE_READ, NULL, CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, 0);
- if (INVALID_HANDLE_VALUE == h) return NULL;
-
- if (hFile) *hFile = h; else CloseHandle(h);
- h = 0;
- return _strdup(&full[0]);
- }
- __finally {
- CloseHandle(h);
- }
-}
-
-extern HINSTANCE hInst;
-
-BOOL SaveAvatar(HANDLE hFile)
-{
- HRSRC hres = FindResource(hInst, MAKEINTRESOURCE(IDI_PSEUDOAVA), AVA_RES_TYPE);
- if (!hres) return FALSE;
-
- HGLOBAL hglob = LoadResource(hInst, hres);
- if (!hglob) return FALSE;
-
- PVOID p = LockResource(hglob);
- if (!p) return FALSE;
-
- DWORD l = SizeofResource(hInst, hres);
- if (!l) return FALSE;
-
- DWORD written;
- if (!WriteFile(hFile, p, l, &written, NULL)) return FALSE;
- return written == l;
-}
-
-struct AVACHANGED {
- HANDLE hTimer;
- HANDLE hContact;
-};
-
-VOID CALLBACK CallSetAvatar(PVOID lpParameter, BOOLEAN TimerOrWaitFired)
-{
- CallService(MS_SYSTEM_THREAD_PUSH, 0, 0);
- __try {
- AVACHANGED *ach = (AVACHANGED*)lpParameter;
- __try {
- SetAvatar(ach->hContact);
- DeleteTimerQueueTimer(NULL, ach->hTimer, NULL);
- }
- __finally {
- free(ach);
- }
- }
- __finally {
- CallService(MS_SYSTEM_THREAD_POP, 0, 0);
- }
-}
-
-int AvaChanged(WPARAM wParam, LPARAM lParam)
-{
- if (!lParam && DBGetContactSettingByte((HANDLE)wParam, SHORT_PLUGIN_NAME, PSEUDOCONTACT_FLAG, 0)) {
- BOOL enqueued = FALSE;
- AVACHANGED *ach = (AVACHANGED*)malloc(sizeof(AVACHANGED));
- __try {
- ach->hContact = (HANDLE)wParam;
- enqueued = CreateTimerQueueTimer(&ach->hTimer, NULL, CallSetAvatar, ach, SET_AVATAR_INTERVAL, 0, WT_EXECUTEONLYONCE);
- }
- __finally {
- if (!enqueued) free(ach);
- }
- }
- return 0;
-}
-
-CRITICAL_SECTION g_csSetAvatar;
-HANDLE hAvaChanged = 0;
-BOOL initialized = FALSE;
-
-BOOL InitAvaUnit(BOOL init)
-{
- if (init) {
- hAvaChanged = HookEvent(ME_AV_AVATARCHANGED, AvaChanged);
- InitializeCriticalSection(&g_csSetAvatar);
- initialized = TRUE;
- return hAvaChanged != 0;
- }
- else {
- if (initialized) {
- initialized = FALSE;
- DeleteCriticalSection(&g_csSetAvatar);
- }
- if (hAvaChanged) {
- UnhookEvent(hAvaChanged);
- hAvaChanged = 0;
- }
- return TRUE;
- }
-}
-
-void SetAvatar(HANDLE hContact)
-{
- EnterCriticalSection(&g_csSetAvatar);
- __try {
- avatarCacheEntry *ava = (avatarCacheEntry*)CallService(MS_AV_GETAVATARBITMAP, (WPARAM)hContact, 0);
- if (ava && GetFileAttributesA(&ava->szFilename[0]) != INVALID_FILE_ATTRIBUTES)
- return;
-
- HANDLE hFile;
- LPSTR avaFile = CreateAvaFile(&hFile);
- if (avaFile)
- __try {
- BOOL saved = SaveAvatar(hFile);
- CloseHandle(hFile); hFile = 0;
- if (saved){
- if (ava) CallService(MS_AV_SETAVATAR, (WPARAM)hContact, (LPARAM)"");
- CallService(MS_AV_SETAVATAR, (WPARAM)hContact, (LPARAM)avaFile);
- DBWriteContactSettingString(hContact, SRMM_MODULE_NAME, SRMM_AVATAR_SETTING_NAME, avaFile);
- }
- }
- __finally {
- free(avaFile);
- CloseHandle(hFile);
- }
- }
- __finally {
- LeaveCriticalSection(&g_csSetAvatar);
- }
-} \ No newline at end of file
diff --git a/gtalkext/avatar.h b/gtalkext/avatar.h
deleted file mode 100644
index f07631d..0000000
--- a/gtalkext/avatar.h
+++ /dev/null
@@ -1,25 +0,0 @@
-//***************************************************************************************
-//
-// Google Extension plugin for the Miranda IM's Jabber protocol
-// Copyright (c) 2011 bems@jabber.org, George Hazan (ghazan@jabber.ru)
-//
-// 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
-
-void SetAvatar(HANDLE hContact);
-BOOL InitAvaUnit(BOOL init); \ No newline at end of file
diff --git a/gtalkext/db.cpp b/gtalkext/db.cpp
deleted file mode 100644
index a99101f..0000000
--- a/gtalkext/db.cpp
+++ /dev/null
@@ -1,100 +0,0 @@
-//***************************************************************************************
-//
-// Google Extension plugin for the Miranda IM's Jabber protocol
-// Copyright (c) 2011 bems@jabber.org, George Hazan (ghazan@jabber.ru)
-//
-// 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 "StdAfx.h"
-#include "options.h"
-
-char *WtoA(LPCTSTR W)
-{
- char* result = (char*)malloc(lstrlen(W) + 1);
- __try {
- int i;
- for (i = 0; W[i]; i++) {
- result[i] = W[i];
- }
-
- result[i] = 0;
- }
- __except(
- free(result),
- EXCEPTION_CONTINUE_SEARCH
- ){}
- return result;
-}
-
-LPTSTR ReadJidSetting(LPCSTR name, LPCTSTR jid)
-{
- char *ansiJid = WtoA(jid);
- __try {
- DBVARIANT dbv = {0};
- __try {
- if (DBGetContactSettingTString(0, name, ansiJid, &dbv))
- {
- LPTSTR result = (LPTSTR)malloc(2 * sizeof(TCHAR));
- result[0] = '0';
- result[1] = NULL;
- return result;
- }
-
- return _tcsdup(dbv.ptszVal);
- }
- __finally {
- DBFreeVariant(&dbv);
- }
- }
- __finally {
- free(ansiJid);
- }
-
- assert(false);
- return NULL; // relax compiler
-}
-
-void WriteJidSetting(LPCSTR name, LPCTSTR jid, LPCTSTR setting)
-{
- char *ansiJid = WtoA(jid);
- __try {
- DBWriteContactSettingTString(0, name, ansiJid, setting);
- }
- __finally {
- free(ansiJid);
- }
-}
-
-void RenewPseudocontactHandles()
-{
- int count = 0;
- PROTOCOLDESCRIPTOR **protos;
- CallService(MS_PROTO_ENUMPROTOCOLS, (WPARAM)&count, (LPARAM)&protos);
- for (int i = 0; i < count; i++) {
- DBDeleteContactSetting(0, protos[i]->szName, PSEUDOCONTACT_LINK);
- DBDeleteContactSetting(0, protos[i]->szName, "GMailExtNotifyContact"); // remove this
- }
-
- HANDLE hContact = (HANDLE)CallService(MS_DB_CONTACT_FINDFIRST, 0, 0);
- while (hContact) {
- if (DBGetContactSettingByte(hContact, SHORT_PLUGIN_NAME, PSEUDOCONTACT_FLAG, 0)) {
- LPCSTR proto = (LPCSTR)CallService(MS_PROTO_GETCONTACTBASEPROTO, (WPARAM)hContact, 0);
- DBWriteContactSettingDword(0, proto, PSEUDOCONTACT_LINK, (DWORD)hContact);
- }
- hContact = (HANDLE)CallService(MS_DB_CONTACT_FINDNEXT, (WPARAM)hContact, 0);
- };
-} \ No newline at end of file
diff --git a/gtalkext/db.h b/gtalkext/db.h
deleted file mode 100644
index 9db6cc9..0000000
--- a/gtalkext/db.h
+++ /dev/null
@@ -1,31 +0,0 @@
-//***************************************************************************************
-//
-// Google Extension plugin for the Miranda IM's Jabber protocol
-// Copyright (c) 2011 bems@jabber.org, George Hazan (ghazan@jabber.ru)
-//
-// 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
-#include "resources.h"
-
-static const LPSTR LAST_MAIL_TIME_FROM_JID = SHORT_PLUGIN_NAME ".LastMailTimeFromJid";
-static const LPSTR LAST_THREAD_ID_FROM_JID = SHORT_PLUGIN_NAME ".LastThreadIdFromJid";
-
-LPTSTR ReadJidSetting(LPCSTR name, LPCTSTR jid);
-void WriteJidSetting(LPCSTR name, LPCTSTR jid, LPCTSTR setting);
-char *WtoA(LPCTSTR W);
-void RenewPseudocontactHandles();
diff --git a/gtalkext/dllmain.cpp b/gtalkext/dllmain.cpp
deleted file mode 100644
index e1097a3..0000000
--- a/gtalkext/dllmain.cpp
+++ /dev/null
@@ -1,62 +0,0 @@
-//***************************************************************************************
-//
-// Google Extension plugin for the Miranda IM's Jabber protocol
-// Copyright (c) 2011 bems@jabber.org, George Hazan (ghazan@jabber.ru)
-//
-// 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 "stdafx.h"
-#include "notifications.h"
-#include "options.h"
-#include "popups.h"
-
-HINSTANCE hInst = 0;
-
-DWORD itlsSettings = TLS_OUT_OF_INDEXES;
-DWORD itlsRecursion = TLS_OUT_OF_INDEXES;
-DWORD itlsPopupHook = TLS_OUT_OF_INDEXES;
-
-BOOL WINAPI DllMain(HINSTANCE hinstDLL,DWORD fdwReason,LPVOID lpvReserved)
-{
- hInst = hinstDLL;
-
- switch (fdwReason) {
- case DLL_PROCESS_ATTACH:
- if (((itlsSettings = TlsAlloc()) == TLS_OUT_OF_INDEXES) ||
- ((itlsRecursion = TlsAlloc()) == TLS_OUT_OF_INDEXES) ||
- ((itlsPopupHook = TlsAlloc()) == TLS_OUT_OF_INDEXES))
- return FALSE;
- break;
-
- case DLL_THREAD_ATTACH:
- TlsSetValue(itlsPopupHook,
- (PVOID)SetWindowsHookEx(WH_CALLWNDPROCRET, PopupHookProc, NULL, GetCurrentThreadId()));
- break;
-
- case DLL_THREAD_DETACH:
- UnhookWindowsHookEx((HHOOK)TlsGetValue(itlsPopupHook));
- break;
-
- case DLL_PROCESS_DETACH:
- TlsFree(itlsSettings);
- TlsFree(itlsRecursion);
- TlsFree(itlsPopupHook);
- break;
- }
-
- return TRUE;
-}
diff --git a/gtalkext/handlers.cpp b/gtalkext/handlers.cpp
deleted file mode 100644
index 879e5ee..0000000
--- a/gtalkext/handlers.cpp
+++ /dev/null
@@ -1,433 +0,0 @@
-//***************************************************************************************
-//
-// Google Extension plugin for the Miranda IM's Jabber protocol
-// Copyright (c) 2011 bems@jabber.org, George Hazan (ghazan@jabber.ru)
-//
-// 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 "StdAfx.h"
-#include "handlers.h"
-#include "db.h"
-#include "notifications.h"
-#include "options.h"
-#include "popups.h"
-
-static const LPCTSTR JABBER_IQID = _T("mir_");
-static const LPCTSTR JABBER_IQID_FORMAT = _T("mir_%d");
-
-static const LPCTSTR NOTIFY_FEATURE_XMLNS = _T("google:mail:notify");
-static const LPCTSTR SETTING_FEATURE_XMLNS = _T("google:setting");
-static const LPCTSTR DISCOVERY_XMLNS = _T("http://jabber.org/protocol/disco#info");
-
-static const LPCTSTR MESSAGE_URL_FORMAT_STANDARD = _T("%s/#inbox/%x%08x");
-static const LPCTSTR MESSAGE_URL_FORMAT_HTML = _T("%s/h/?v=c&th=%x%08x");
-
-static const LPCTSTR ATTRNAME_TYPE = _T("type");
-static const LPCTSTR ATTRNAME_FROM = _T("from");
-static const LPCTSTR ATTRNAME_TO = _T("to");
-static const LPCTSTR ATTRNAME_URL = _T("url");
-static const LPCTSTR ATTRNAME_TID = _T("tid");
-static const LPCTSTR ATTRNAME_UNREAD = _T("unread");
-static const LPCTSTR ATTRNAME_XMLNS = _T("xmlns");
-static const LPCTSTR ATTRNAME_ID = _T("id");
-static const LPCTSTR ATTRNAME_TOTAL_MATCHED = _T("total-matched");
-static const LPCTSTR ATTRNAME_NAME = _T("name");
-static const LPCTSTR ATTRNAME_ADDRESS = _T("address");
-static const LPCTSTR ATTRNAME_RESULT_TIME = _T("result-time");
-static const LPCTSTR ATTRNAME_NEWER_THAN_TIME = _T("newer-than-time");
-static const LPCTSTR ATTRNAME_NEWER_THAN_TID = _T("newer-than-tid");
-static const LPCTSTR ATTRNAME_VALUE = _T("value");
-static const LPCTSTR ATTRNAME_VAR = _T("var");
-
-static const LPCTSTR IQTYPE_RESULT = _T("result");
-static const LPCTSTR IQTYPE_SET = _T("set");
-static const LPCTSTR IQTYPE_GET = _T("get");
-
-static const LPCTSTR NODENAME_MAILBOX = _T("mailbox");
-static const LPCTSTR NODENAME_QUERY = _T("query");
-static const LPCTSTR NODENAME_IQ = _T("iq");
-static const LPCTSTR NODENAME_USERSETTING = _T("usersetting");
-static const LPCTSTR NODENAME_MAILNOTIFICATIONS = _T("mailnotifications");
-static const LPCTSTR NODENAME_SUBJECT = _T("subject");
-static const LPCTSTR NODENAME_SNIPPET = _T("snippet");
-static const LPCTSTR NODENAME_SENDERS = _T("senders");
-static const LPCTSTR NODENAME_FEATURE = _T("feature");
-static const LPCTSTR NODENAME_NEW_MAIL = _T("new-mail");
-
-static const LPCTSTR SETTING_TRUE = _T("true");
-
-static const DWORD RESPONSE_TIMEOUT = 1000 * 60 * 60;
-static const DWORD TIMER_INTERVAL = 1000 * 60 * 2;
-
-XML_API xi = {0};
-
-#include <tchar.h>
-
-void FormatMessageUrl(LPCTSTR format, LPTSTR buf, LPCTSTR mailbox, LPCTSTR tid)
-{
- ULARGE_INTEGER iTid; iTid.QuadPart = _tstoi64(tid);
- int l = lstrlen(buf);
- wsprintf(buf, format, mailbox, iTid.HighPart, iTid.LowPart);
- assert(l >= lstrlen(buf));
-}
-
-void MakeUrlHex(LPTSTR url, LPCTSTR tid)
-{
- ULARGE_INTEGER iTid; iTid.QuadPart = _tstoi64(tid);
- LPTSTR tidInUrl = _tcsstr(url, tid);
- LPTSTR trail = tidInUrl + lstrlen(tid);
- wsprintf(tidInUrl, _T("%x%08x"), iTid.HighPart, iTid.LowPart);
- wmemmove(tidInUrl + lstrlen(tidInUrl), trail, lstrlen(trail) + 1);
-}
-
-LPTSTR ExtractJid(LPCTSTR jidWithRes)
-{
- int l;
- for (l = 0; jidWithRes[l] && jidWithRes[l] != '/'; l++) {};
- assert('/' == jidWithRes[l]);
-
- LPTSTR result = (LPTSTR)malloc((l + 1) * sizeof(TCHAR));
- __try {
- memcpy(result, jidWithRes, l * sizeof(TCHAR));
- result[l] = 0;
- }
- __except (
- free(result),
- EXCEPTION_CONTINUE_SEARCH
- ) {};
-
- return result;
-}
-
-BOOL TimerHandler(IJabberInterface *ji, HXML node, void *pUserData);
-
-BOOL InternalListHandler(IJabberInterface *ji, HXML node, LPCTSTR jid, LPCTSTR mailboxUrl)
-{
- ULONGLONG maxTid = 0;
- LPCTSTR sMaxTid = NULL;
- int unreadCount = 0;
- for (int i = 0; i < xi.getChildCount(node); i++) {
- LPCTSTR sTid = xi.getAttrValue(xi.getChild(node, i), ATTRNAME_TID);
- ULONGLONG tid = _tcstoui64(sTid, NULL, 10);
- if (tid > maxTid) {
- maxTid = tid;
- sMaxTid = sTid;
- }
-
- HXML senders = xi.getChildByPath(xi.getChild(node, i), NODENAME_SENDERS, FALSE);
- for (int j = 0; j < xi.getChildCount(senders); j++)
- if (xi.getAttrValue(xi.getChild(senders, j), ATTRNAME_UNREAD)) {
- unreadCount++;
- break;
- }
- }
-
- LPCSTR acc = GetJidAcc(jid);
- if (!acc) return FALSE;
-
- if (!unreadCount) {
- SetupPseudocontact(jid, xi.getAttrValue(node, ATTRNAME_TOTAL_MATCHED), acc);
- return TRUE;
- }
-
- DWORD settings = ReadNotificationSettings(acc);
-
- if (unreadCount > 5) {
- CloseNotifications(acc, mailboxUrl, jid, FALSE);
- UnreadMailNotification(acc, jid, mailboxUrl, xi.getAttrValue(node, ATTRNAME_TOTAL_MATCHED));
- }
- else
- for (int i = 0; i < xi.getChildCount(node); i++) {
- MAIL_THREAD_NOTIFICATION mtn = {0};
- HXML thread = xi.getChild(node, i);
-
- mtn.subj = xi.getText(xi.getChildByPath(thread, NODENAME_SUBJECT, FALSE));
- mtn.snip = xi.getText(xi.getChildByPath(thread, NODENAME_SNIPPET, FALSE));
-
- int threadUnreadCount = 0;
- HXML senders = xi.getChildByPath(thread, NODENAME_SENDERS, FALSE);
- for (int j = 0; threadUnreadCount < SENDER_COUNT && j < xi.getChildCount(senders); j++) {
- HXML sender = xi.getChild(senders, j);
- if (xi.getAttrValue(sender, ATTRNAME_UNREAD)) {
- mtn.senders[threadUnreadCount].name = xi.getAttrValue(sender, ATTRNAME_NAME);
- mtn.senders[threadUnreadCount].addr = xi.getAttrValue(sender, ATTRNAME_ADDRESS);
- threadUnreadCount++;
- }
- }
-
- LPCTSTR url = xi.getAttrValue(thread, ATTRNAME_URL);
- LPCTSTR tid = xi.getAttrValue(thread, ATTRNAME_TID);
-
- if (ReadCheckbox(0, IDC_STANDARDVIEW, settings))
- FormatMessageUrl(MESSAGE_URL_FORMAT_STANDARD, (LPTSTR)url, mailboxUrl, tid);
- else
- if (ReadCheckbox(0, IDC_HTMLVIEW, settings))
- FormatMessageUrl(MESSAGE_URL_FORMAT_HTML, (LPTSTR)url, mailboxUrl, tid);
- else
- MakeUrlHex((LPTSTR)url, tid);
-
- CloseNotifications(acc, url, jid, i);
- UnreadThreadNotification(acc, jid, url, xi.getAttrValue(node, ATTRNAME_TOTAL_MATCHED), &mtn);
- }
-
- LPCTSTR time = xi.getAttrValue(node, ATTRNAME_RESULT_TIME);
- WriteJidSetting(LAST_MAIL_TIME_FROM_JID, jid, time);
- WriteJidSetting(LAST_THREAD_ID_FROM_JID, jid, sMaxTid);
- return TRUE;
-}
-
-BOOL MailListHandler(IJabberInterface *ji, HXML node, void *pUserData)
-{
- LPCTSTR jidWithRes = xi.getAttrValue(node, ATTRNAME_TO);
- __try {
- if (!node || lstrcmp(xi.getAttrValue(node, ATTRNAME_TYPE), IQTYPE_RESULT)) return TRUE;
-
- LPCTSTR jid = xi.getAttrValue(node, ATTRNAME_FROM);
- assert(jid);
-
- node = xi.getChildByPath(node, NODENAME_MAILBOX, FALSE);
- if (!node) return TRUE; // empty list
-
- LPCTSTR url = xi.getAttrValue(node, ATTRNAME_URL);
-
- return InternalListHandler(ji, node, jid, url);
- }
- __finally {
- if (jidWithRes)
- ji->Net()->AddTemporaryIqHandler(TimerHandler, JABBER_IQ_TYPE_RESULT, 0,
- (PVOID)_tcsdup(jidWithRes), TIMER_INTERVAL);
- // Never get a real result stanza. Results elapsed request after WAIT_TIMER_INTERVAL ms
- }
-}
-
-void RequestMail(LPCTSTR jidWithRes, IJabberInterface *ji)
-{
- HXML child = NULL;
- HXML node = xi.createNode(NODENAME_IQ, NULL, FALSE);
- __try {
- xi.addAttr(node, ATTRNAME_TYPE, IQTYPE_GET);
- xi.addAttr(node, ATTRNAME_FROM, jidWithRes);
-
- UINT uID;
- LPTSTR lastMailTime = NULL;
- LPTSTR lastThreadId = NULL;
- __try {
- LPTSTR jid = ExtractJid(jidWithRes);
- __try {
- xi.addAttr(node, ATTRNAME_TO, jid);
- lastMailTime = ReadJidSetting(LAST_MAIL_TIME_FROM_JID, jid);
- lastThreadId = ReadJidSetting(LAST_THREAD_ID_FROM_JID, jid);
- }
- __finally {
- free(jid);
- }
-
- LPTSTR id = (LPTSTR)malloc((_tcslen(JABBER_IQID) + 10 + 1) * sizeof(id[0])); // max int fits 10 chars
- __try {
- wsprintf(id, JABBER_IQID_FORMAT, uID = ji->Net()->SerialNext());
- xi.addAttr(node, ATTRNAME_ID, id);
- }
- __finally {
- free(id);
- }
-
- child = xi.addChild(node, NODENAME_QUERY, NULL);
- xi.addAttr(child, ATTRNAME_XMLNS, NOTIFY_FEATURE_XMLNS);
- xi.addAttr(child, ATTRNAME_NEWER_THAN_TIME, lastMailTime);
- xi.addAttr(child, ATTRNAME_NEWER_THAN_TID, lastThreadId);
- }
- __finally {
- if (lastMailTime) free(lastMailTime);
- if (lastThreadId) free(lastThreadId);
- }
-
- IJabberNetInterface* piNet = ji->Net();
- if ( piNet )
- if (piNet->SendXmlNode(node))
- piNet->AddTemporaryIqHandler(MailListHandler, JABBER_IQ_TYPE_RESULT, (int)uID, NULL, RESPONSE_TIMEOUT);
- }
- __finally {
- if (child) xi.destroyNode(child);
- if (node) xi.destroyNode(node);
- }
-}
-
-BOOL TimerHandler(IJabberInterface *ji, HXML node, void *pUserData)
-{
- __try {
- assert(!node); // should not intercept real "mir_0" id
- RequestMail((LPCTSTR)pUserData, ji);
- return FALSE;
- }
- __finally {
- free(pUserData);
- }
-}
-
-BOOL NewMailHandler(IJabberInterface *ji, HXML node, void *pUserData)
-{
- HXML response = xi.createNode(NODENAME_IQ, NULL, FALSE);
- __try {
- xi.addAttr(response, ATTRNAME_TYPE, IQTYPE_RESULT);
-
- LPCTSTR attr = xi.getAttrValue(node, ATTRNAME_ID);
- if (!attr) return FALSE;
- xi.addAttr(response, ATTRNAME_ID, attr);
-
- attr = xi.getAttrValue(node, ATTRNAME_FROM);
- if (attr) xi.addAttr(response, ATTRNAME_TO, attr);
-
- attr = xi.getAttrValue(node, ATTRNAME_TO);
- if (!attr) return FALSE;
- xi.addAttr(response, ATTRNAME_FROM, attr);
-
- int bytesSent = ji->Net()->SendXmlNode(response);
- RequestMail(attr, ji);
- return bytesSent > 0;
- }
- __finally {
- xi.destroyNode(response);
- }
-}
-
-void SetNotificationSetting(LPCTSTR jidWithResource, IJabberInterface *ji)
-{
- HXML child = NULL;
- HXML node = xi.createNode(NODENAME_IQ, NULL, FALSE);
- __try {
- xi.addAttr(node, ATTRNAME_TYPE, IQTYPE_SET);
- xi.addAttr(node, ATTRNAME_FROM, jidWithResource);
-
- LPTSTR jid = ExtractJid(jidWithResource);
- __try {
- xi.addAttr(node, ATTRNAME_TO, jid);
- }
- __finally {
- free(jid);
- }
-
- LPTSTR id = (LPTSTR)malloc((_tcslen(JABBER_IQID) + 10 + 1) * sizeof(id[0])); // max int fits 10 chars
- __try {
- wsprintf(id, JABBER_IQID_FORMAT, ji->Net()->SerialNext());
- xi.addAttr(node, ATTRNAME_ID, id);
- }
- __finally {
- free(id);
- }
-
- child = xi.addChild(node, NODENAME_USERSETTING, NULL);
- xi.addAttr(child, ATTRNAME_XMLNS, SETTING_FEATURE_XMLNS);
-
- child = xi.addChild(child, NODENAME_MAILNOTIFICATIONS, NULL);
- xi.addAttr(child, ATTRNAME_VALUE, SETTING_TRUE);
-
- ji->Net()->SendXmlNode(node);
- }
- __finally {
- if (child) xi.destroyNode(child);
- if (node) xi.destroyNode(node);
- }
-}
-
-BOOL DiscoverHandler(IJabberInterface *ji, HXML node, void *pUserData)
-{
- if (!node) return FALSE;
-
- LPCTSTR jid = xi.getAttrValue(node, ATTRNAME_TO);
- assert(jid);
- node = xi.getChildByAttrValue(node, NODENAME_QUERY, ATTRNAME_XMLNS, DISCOVERY_XMLNS);
-
- HXML child = xi.getChildByAttrValue(node, NODENAME_FEATURE, ATTRNAME_VAR, SETTING_FEATURE_XMLNS);
- if (child) SetNotificationSetting(jid, ji);
-
- child = xi.getChildByAttrValue(node, NODENAME_FEATURE, ATTRNAME_VAR, NOTIFY_FEATURE_XMLNS);
- if (child) {
- ji->Net()->AddIqHandler(NewMailHandler, JABBER_IQ_TYPE_SET, NOTIFY_FEATURE_XMLNS, NODENAME_NEW_MAIL);
- RequestMail(jid, ji);
- }
-
- return FALSE;
-}
-
-extern DWORD itlsRecursion;
-
-BOOL SendHandler(IJabberInterface *ji, HXML node, void *pUserData)
-{
- HXML queryNode = xi.getChildByAttrValue(node, NODENAME_QUERY, ATTRNAME_XMLNS, DISCOVERY_XMLNS);
- if (!queryNode) return FALSE;
- if (lstrcmp(xi.getName(node), NODENAME_IQ)) return FALSE;
- if (lstrcmp(xi.getAttrValue(node, ATTRNAME_TYPE), IQTYPE_GET)) return FALSE;
-
- if (TlsGetValue(itlsRecursion)) return FALSE;
- TlsSetValue(itlsRecursion, (PVOID)TRUE);
- __try {
- UINT id = ji->Net()->SerialNext();
- HXML newNode = xi.createNode(NODENAME_IQ, NULL, FALSE);
- __try {
- xi.addAttr(newNode, ATTRNAME_TYPE, IQTYPE_GET);
- xi.addAttr(newNode, ATTRNAME_TO, xi.getAttrValue(node, ATTRNAME_TO));
-
- LPTSTR idAttr = (LPTSTR)malloc(((int)_tcslen(JABBER_IQID) + 10) * sizeof(TCHAR));
- __try {
- wsprintf(idAttr, JABBER_IQID_FORMAT, id);
- xi.addAttr(newNode, ATTRNAME_ID, idAttr);
- }
- __finally {
- free(idAttr);
- }
-
- xi.addAttr(xi.addChild(newNode, NODENAME_QUERY, NULL), ATTRNAME_XMLNS, DISCOVERY_XMLNS);
- ji->Net()->SendXmlNode(newNode);
- }
- __finally {
- xi.destroyNode(newNode);
- }
-
- ji->Net()->AddTemporaryIqHandler(DiscoverHandler, JABBER_IQ_TYPE_RESULT, id, NULL, RESPONSE_TIMEOUT);
- return FALSE;
- }
- __finally {
- TlsSetValue(itlsRecursion, (PVOID)FALSE);
- }
-}
-
-int AccListChanged(WPARAM wParam, LPARAM lParam)
-{
- if (PRAC_ADDED == wParam) {
- IJabberInterface *japi = getJabberApi(((PROTOACCOUNT*)lParam)->szModuleName);
- if (japi) japi->Net()->AddSendHandler(SendHandler);
- }
- return 0;
-}
-
-int ModulesLoaded(WPARAM wParam, LPARAM lParam)
-{
- RenewPseudocontactHandles();
- DetectPopupModule();
-
- int count;
- PROTOCOLDESCRIPTOR **protos;
- CallService(MS_PROTO_ENUMPROTOCOLS, (WPARAM)&count, (LPARAM)&protos);
- for (int i = 0; i < count; i++) {
- IJabberInterface *japi = getJabberApi(protos[i]->szName);
- if (japi) japi->Net()->AddSendHandler(SendHandler);
- }
-
- HookOptionsInitialization();
-
- return 0;
-} \ No newline at end of file
diff --git a/gtalkext/handlers.h b/gtalkext/handlers.h
deleted file mode 100644
index 10ffa8c..0000000
--- a/gtalkext/handlers.h
+++ /dev/null
@@ -1,27 +0,0 @@
-//***************************************************************************************
-//
-// Google Extension plugin for the Miranda IM's Jabber protocol
-// Copyright (c) 2011 bems@jabber.org, George Hazan (ghazan@jabber.ru)
-//
-// 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
-
-extern HANDLE hModulesLoaded;
-
-int ModulesLoaded(WPARAM wParam, LPARAM lParam);
-int AccListChanged(WPARAM wParam, LPARAM lParam); \ No newline at end of file
diff --git a/gtalkext/inbox.cpp b/gtalkext/inbox.cpp
deleted file mode 100644
index 9317fbc..0000000
--- a/gtalkext/inbox.cpp
+++ /dev/null
@@ -1,402 +0,0 @@
-//***************************************************************************************
-//
-// Google Extension plugin for the Miranda IM's Jabber protocol
-// Copyright (c) 2011 bems@jabber.org, George Hazan (ghazan@jabber.ru)
-//
-// 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 "stdafx.h"
-#include "inbox.h"
-#include "notifications.h"
-#include "db.h"
-#include "options.h"
-
-static const LPTSTR COMMON_GMAIL_HOST1 = _T("gmail.com");
-static const LPTSTR COMMON_GMAIL_HOST2 = _T("googlemail.com");
-
-static const LPSTR AUTH_REQUEST_URL = "https://www.google.com/accounts/ClientAuth";
-static const LPSTR AUTH_REQUEST_PARAMS = "Email=%s&Passwd=%s&"
- "accountType=HOSTED_OR_GOOGLE&"
- "skipvpage=true&"
- "PersistentCookie=false";
-
-static const LPSTR ISSUE_TOKEN_REQUEST_URL = "https://www.google.com/accounts/IssueAuthToken";
-static const LPSTR ISSUE_TOKEN_REQUEST_PARAMS = "SID=%s&LSID=%s&"
- "Session=true&"
- "skipvpage=true&"
- "service=gaia";
-
-static const LPSTR TOKEN_AUTH_URL = "https://www.google.com/accounts/TokenAuth?"\
- "auth=%s&"
- "service=mail&"
- "continue=%s&"
- "source=googletalk";
-
-
-static const NETLIBHTTPHEADER HEADER_URL_ENCODED = {"Content-Type", "application/x-www-form-urlencoded"};
-static const int HTTP_OK = 200;
-
-static const LPSTR SID_KEY_NAME = "SID=";
-static const LPSTR LSID_KEY_NAME = "LSID=";
-
-static const LPSTR LOGIN_PASS_SETTING_NAME = "LoginPassword";
-
-static const LPTSTR INBOX_URL_FORMAT = _T("https://mail.google.com/%s%s/#inbox");
-
-static const DWORD SIZE_OF_JABBER_OPTIONS = 243 * sizeof(DWORD);
-
-// 3 lines from netlib.h
-#define GetNetlibHandleType(h) (h?*(int*)h:NLH_INVALID)
-#define NLH_INVALID 0
-#define NLH_USER 'USER'
-
-char to_hex(char code) {
- static char hex[] = "0123456789abcdef";
- return hex[code & 15];
-}
-
-char *url_encode(char *str) {
- char *pstr = str, *buf = (char*)malloc(strlen(str) * 3 + 1), *pbuf = buf;
- while (*pstr) {
- if (isalnum(*pstr) || *pstr == '-' || *pstr == '_' || *pstr == '.' || *pstr == ',' || *pstr == '~')
- *pbuf++ = *pstr;
- else if (*pstr == ' ')
- *pbuf++ = '+';
- else
- *pbuf++ = '%', *pbuf++ = to_hex(*pstr >> 4), *pbuf++ = to_hex(*pstr & 15);
- pstr++;
- }
- *pbuf = '\0';
- return buf;
-}
-
-LPSTR HttpPost(HANDLE hUser, LPSTR reqUrl, LPSTR reqParams)
-{
- NETLIBHTTPREQUEST nlhr = {0};
- nlhr.cbSize = sizeof(nlhr);
- nlhr.requestType = REQUEST_POST;
- nlhr.flags = NLHRF_GENERATEHOST | NLHRF_SMARTAUTHHEADER | NLHRF_HTTP11 | NLHRF_SSL | NLHRF_NODUMP | NLHRF_NODUMPHEADERS;
- nlhr.szUrl = reqUrl;
- nlhr.headers = (NETLIBHTTPHEADER*)&HEADER_URL_ENCODED;
- nlhr.headersCount = 1;
- nlhr.pData = reqParams;
- nlhr.dataLength = lstrlenA(reqParams);
-
- NETLIBHTTPREQUEST *pResp = (NETLIBHTTPREQUEST*)CallService(MS_NETLIB_HTTPTRANSACTION, (WPARAM)hUser, (LPARAM)&nlhr);
- if (!pResp) return NULL;
- __try {
- if (HTTP_OK == pResp->resultCode)
- return _strdup(pResp->pData);
- else
- return NULL;
- }
- __finally {
- CallService(MS_NETLIB_FREEHTTPREQUESTSTRUCT, 0, (LPARAM)pResp);
- }
-}
-
-LPSTR MakeRequest(HANDLE hUser, LPSTR reqUrl, LPSTR reqParamsFormat, LPSTR p1, LPSTR p2)
-{
- LPSTR encodedP1 = url_encode(p1);
- __try {
- LPSTR encodedP2 = url_encode(p2);
- __try {
- LPSTR reqParams = (LPSTR)malloc(lstrlenA(reqParamsFormat) + 1 + lstrlenA(encodedP1) + lstrlenA(encodedP2));
- __try {
- sprintf(reqParams, reqParamsFormat, encodedP1, encodedP2);
- return HttpPost(hUser, reqUrl, reqParams);
- }
- __finally {
- free(reqParams);
- }
- }
- __finally {
- free(encodedP2);
- }
- }
- __finally {
- free(encodedP1);
- }
-}
-
-LPSTR FindSid(LPSTR resp, LPSTR *LSID)
-{
- LPSTR SID = strstr(resp, SID_KEY_NAME);
- *LSID = strstr(resp, LSID_KEY_NAME);
- if (!SID || !*LSID) return NULL;
-
- if (SID - 1 == *LSID) SID = strstr(SID + 1, SID_KEY_NAME);
- if (!SID) return NULL;
-
- SID += lstrlenA(SID_KEY_NAME);
- LPSTR term = strstr(SID, "\n");
- if (term) term[0] = 0;
-
- *LSID += lstrlenA(LSID_KEY_NAME);
- term = strstr(*LSID, "\n");
- if (term) term[0] = 0;
-
- return SID;
-}
-
-void DoOpenUrl(LPSTR tokenResp, LPSTR url)
-{
- LPSTR encodedUrl = url_encode(url);
- __try {
- LPSTR encodedToken = url_encode(tokenResp);
- __try {
- LPSTR composedUrl = (LPSTR)malloc(lstrlenA(TOKEN_AUTH_URL) + 1 + lstrlenA(encodedToken) + lstrlenA(encodedUrl));
- __try {
- sprintf(composedUrl, TOKEN_AUTH_URL, encodedToken, encodedUrl);
- ShellExecuteA(0, NULL, composedUrl, NULL, NULL, SW_SHOW);
- }
- __finally {
- free(composedUrl);
- }
- }
- __finally {
- free(encodedToken);
- }
- }
- __finally {
- free(encodedUrl);
- }
-}
-
-BOOL AuthAndOpen(HANDLE hUser, LPSTR url, LPSTR mailbox, LPSTR pwd)
-{
- LPSTR authResp = MakeRequest(hUser, AUTH_REQUEST_URL, AUTH_REQUEST_PARAMS, mailbox, pwd);
- if (!authResp) return FALSE;
-
- __try {
- LPSTR LSID;
- LPSTR SID = FindSid(authResp, &LSID);
- LPSTR tokenResp = MakeRequest(hUser, ISSUE_TOKEN_REQUEST_URL, ISSUE_TOKEN_REQUEST_PARAMS, SID, LSID);
- if (!tokenResp) return FALSE;
-
- __try {
- DoOpenUrl(tokenResp, url);
- return TRUE;
- }
- __finally {
- free(tokenResp);
- }
- }
- __finally {
- free(authResp);
- }
-}
-
-struct OPEN_URL_HEADER {
- LPSTR url;
- LPSTR mailbox;
- LPSTR pwd;
- LPCSTR acc;
-};
-
-HANDLE FindNetUserHandle(LPCSTR acc)
-{
- IJabberInterface *ji = getJabberApi(acc);
- if (!ji) return NULL;
-
- PBYTE m_psProto = *(PBYTE*)((PBYTE)ji + sizeof(*ji)); // see CJabberInterface in jabber_proto.h
-
- PHANDLE pResult = (PHANDLE)(m_psProto + // see CJabberProto in jabber_proto.h
- sizeof(PVOID) + // skip vtable ptr
- sizeof(PVOID) + // skip m_ThreadInfo
- SIZE_OF_JABBER_OPTIONS); // skip m_options
-
- for (int i=0; i < 100; i++) {
- __try {
- if (GetNetlibHandleType(*pResult) == NLH_USER)
- break;
- }
- __except (EXCEPTION_EXECUTE_HANDLER){
- }
- pResult++;
- }
-
- assert(GetNetlibHandleType(*pResult) == NLH_USER);
- return *pResult;
-}
-
-unsigned __stdcall OpenUrlThread(OPEN_URL_HEADER* data)
-{
- __try {
- HANDLE hUser = FindNetUserHandle(data->acc);
- if (!hUser || !AuthAndOpen(hUser, data->url, data->mailbox, data->pwd))
- ShellExecuteA(0, NULL, data->url, NULL, NULL, SW_SHOW);
- }
- __finally {
- free(data);
- }
- return 0;
-}
-
-void __forceinline DecryptString(LPSTR str, int len)
-{
- for (--len; len >= 0; len--)
- {
- const char c = str[len] ^ 0xc3;
- if (c) str[len] = c;
- }
-}
-
-int GetMailboxPwd(LPCSTR acc, LPCTSTR mailbox, LPSTR *pwd, int buffSize)
-{
- char buff[256];
-
- DBCONTACTGETSETTING cgs;
- DBVARIANT dbv;
- cgs.szModule = acc;
- cgs.szSetting = LOGIN_PASS_SETTING_NAME;
- cgs.pValue = &dbv;
- dbv.type = DBVT_ASCIIZ;
- dbv.pszVal = &buff[0];
- dbv.cchVal = sizeof(buff);
- if (CallService(MS_DB_CONTACT_GETSETTINGSTATIC, 0, (LPARAM)&cgs))
- return 0;
-
- int result = dbv.cchVal;
-
- if (pwd) {
- if (buffSize < result + 1) result = buffSize - 1;
- memcpy(*pwd, &buff, result + 1);
- DecryptString(*pwd, result);
- }
-
- return result;
-}
-
-BOOL OpenUrlWithAuth(LPCSTR acc, LPCTSTR mailbox, LPCTSTR url)
-{
- int pwdLen = GetMailboxPwd(acc, mailbox, NULL, 0);
- if (!pwdLen++) return FALSE;
-
- int urlLen = lstrlen(url) + 1;
- int mailboxLen = lstrlen(mailbox) + 1;
-
- OPEN_URL_HEADER *data = (OPEN_URL_HEADER*)malloc(sizeof(OPEN_URL_HEADER) + urlLen + mailboxLen + pwdLen);
- __try {
- data->url = (LPSTR)data + sizeof(OPEN_URL_HEADER);
- LPSTR ansi = WtoA(url);
- __try {
- memcpy(data->url, ansi, urlLen);
- }
- __finally {
- free(ansi);
- }
-
- data->mailbox = data->url + urlLen;
- ansi = WtoA(mailbox);
- __try {
- memcpy(data->mailbox, ansi, mailboxLen);
- }
- __finally {
- free(ansi);
- }
-
- data->pwd = data->mailbox + mailboxLen;
- if (!GetMailboxPwd(acc, mailbox, &data->pwd, pwdLen)) return FALSE;
-
- data->acc = acc;
-
- if (HANDLE h = mir_forkthreadex((pThreadFuncEx)OpenUrlThread, data, 0, NULL)) {
- CloseHandle(h);
- data = NULL;
- }
- else return FALSE;
- }
- __finally {
- free(data);
- }
-
- return TRUE;
-}
-
-unsigned __stdcall ShellExecuteThread(PVOID param)
-{
- __try {
- ShellExecute(0, NULL, (LPTSTR)param, NULL, NULL, SW_SHOW);
- }
- __finally {
- free(param);
- }
- return 0;
-}
-
-void StartShellExecuteThread(LPCTSTR url)
-{
- LPTSTR urlCopy = _tcsdup(url);
- __try {
- if (HANDLE h = mir_forkthreadex(ShellExecuteThread, urlCopy, 0, NULL)) {
- CloseHandle(h);
- urlCopy = NULL;
- }
- }
- __finally {
- free(urlCopy);
- }
-}
-
-void OpenUrl(LPCSTR acc, LPCTSTR mailbox, LPCTSTR url)
-{
- extern DWORD itlsSettings;
- if (!ReadCheckbox(0, IDC_AUTHONMAILBOX, (DWORD)TlsGetValue(itlsSettings)) ||
- !OpenUrlWithAuth(acc, mailbox, url))
- StartShellExecuteThread(url);
-}
-
-LPTSTR CraftInboxUrl(LPTSTR jid)
-{
- LPTSTR host = _tcsstr(jid, _T("@")) + 1;
-
- LPTSTR result = (LPTSTR)malloc((lstrlen(INBOX_URL_FORMAT) + 1 + lstrlen(jid)) * sizeof(TCHAR));
- __try {
- if (lstrcmpi(host, COMMON_GMAIL_HOST1) && lstrcmpi(host, COMMON_GMAIL_HOST2))
- wsprintf(result, INBOX_URL_FORMAT, _T("a/"), host); // hosted
- else
- wsprintf(result, INBOX_URL_FORMAT, NULL, _T("mail")); // common
- }
- __except (
- free(result),
- EXCEPTION_CONTINUE_SEARCH
- ) {}
-
- return result;
-}
-
-void OpenContactInbox(HANDLE hContact)
-{
- LPSTR acc = (LPSTR)CallService(MS_PROTO_GETCONTACTBASEPROTO, (WPARAM)hContact, 0);
- if (!acc) return;
-
- DBVARIANT dbv;
- if (!DBGetContactSettingTString(0, acc, "jid", &dbv))
- __try {
- LPTSTR url = CraftInboxUrl(dbv.ptszVal);
- __try {
- OpenUrl(acc, dbv.ptszVal, url);
- }
- __finally {
- free(url);
- }
- }
- __finally {
- DBFreeVariant(&dbv);
- }
-} \ No newline at end of file
diff --git a/gtalkext/inbox.h b/gtalkext/inbox.h
deleted file mode 100644
index 0b00128..0000000
--- a/gtalkext/inbox.h
+++ /dev/null
@@ -1,25 +0,0 @@
-//***************************************************************************************
-//
-// Google Extension plugin for the Miranda IM's Jabber protocol
-// Copyright (c) 2011 bems@jabber.org, George Hazan (ghazan@jabber.ru)
-//
-// 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
-
-void OpenUrl(LPCSTR acc, LPCTSTR mailbox, LPCTSTR url);
-void OpenContactInbox(HANDLE hContact); \ No newline at end of file
diff --git a/gtalkext/include/m_utils.h b/gtalkext/include/m_utils.h
deleted file mode 100644
index ce7e0d3..0000000
--- a/gtalkext/include/m_utils.h
+++ /dev/null
@@ -1 +0,0 @@
-#define WNDCLASS_COLOURPICKER "ColourPicker"
diff --git a/gtalkext/menu.cpp b/gtalkext/menu.cpp
deleted file mode 100644
index fc1a2f5..0000000
--- a/gtalkext/menu.cpp
+++ /dev/null
@@ -1,95 +0,0 @@
-//***************************************************************************************
-//
-// Google Extension plugin for the Miranda IM's Jabber protocol
-// Copyright (c) 2011 bems@jabber.org, George Hazan (ghazan@jabber.ru)
-//
-// 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 "stdafx.h"
-#include "menu.h"
-#include "resources.h"
-#include "options.h"
-#include "inbox.h"
-
-static const LPSTR MS_GTALKEXT_OPENMAILBOX = SHORT_PLUGIN_NAME "/OpenMailbox";
-static const LPTSTR _T(OPEN_MAILBOX_ITEM_CAPTION) = _T("Open mailbox");
-
-HANDLE hOpenMailboxService = 0;
-HANDLE hOpenMailboxMenuItem = 0;
-HANDLE hOnPrebuildMenu = 0;
-
-INT_PTR OpenMailboxMenuHandler(WPARAM wParam, LPARAM lParam)
-{
- if (DBGetContactSettingByte((HANDLE)wParam, SHORT_PLUGIN_NAME, PSEUDOCONTACT_FLAG, 0))
- OpenContactInbox((HANDLE)wParam);
- return 0;
-}
-
-int OnPrebuildMenu(WPARAM wParam, LPARAM lParam)
-{
- CLISTMENUITEM cmi = {0};
- cmi.cbSize = sizeof(cmi);
- cmi.flags = CMIM_FLAGS;
- if (!DBGetContactSettingByte((HANDLE)wParam, SHORT_PLUGIN_NAME, PSEUDOCONTACT_FLAG, 0))
- cmi.flags |= CMIF_HIDDEN;
- CallService(MS_CLIST_MODIFYMENUITEM, (WPARAM)hOpenMailboxMenuItem, (LPARAM)&cmi);
- return 0;
-}
-
-BOOL InitMenus(BOOL init)
-{
- if (init) {
- hOpenMailboxService = (HANDLE)CreateServiceFunction(MS_GTALKEXT_OPENMAILBOX, OpenMailboxMenuHandler);
- if (!hOpenMailboxService) {
- InitMenus(FALSE);
- return FALSE;
- }
-
- extern HICON g_hPopupIcon;
-
- CLISTMENUITEM cmi = {0};
- cmi.cbSize = sizeof(cmi);
- cmi.flags = CMIF_TCHAR;
- cmi.hIcon = g_hPopupIcon;
- cmi.ptszName = _T(OPEN_MAILBOX_ITEM_CAPTION);
- cmi.pszService = MS_GTALKEXT_OPENMAILBOX;
- hOpenMailboxMenuItem = (HANDLE)CallService(MS_CLIST_ADDCONTACTMENUITEM, 0, (LPARAM)&cmi);
-
- if (!hOpenMailboxMenuItem) {
- InitMenus(FALSE);
- return FALSE;
- }
-
- hOnPrebuildMenu = HookEvent(ME_CLIST_PREBUILDCONTACTMENU, OnPrebuildMenu);
- if (!hOnPrebuildMenu) {
- InitMenus(FALSE);
- return FALSE;
- }
- }
- else {
- if (hOnPrebuildMenu) {
- UnhookEvent(hOnPrebuildMenu);
- hOnPrebuildMenu = 0;
- }
- if (hOpenMailboxService) {
- DestroyServiceFunction(hOpenMailboxService);
- hOpenMailboxService = 0;
- }
- }
-
- return TRUE;
-} \ No newline at end of file
diff --git a/gtalkext/menu.h b/gtalkext/menu.h
deleted file mode 100644
index c064576..0000000
--- a/gtalkext/menu.h
+++ /dev/null
@@ -1,24 +0,0 @@
-//***************************************************************************************
-//
-// Google Extension plugin for the Miranda IM's Jabber protocol
-// Copyright (c) 2011 bems@jabber.org, George Hazan (ghazan@jabber.ru)
-//
-// 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
-
-BOOL InitMenus(BOOL init); \ No newline at end of file
diff --git a/gtalkext/notifications.cpp b/gtalkext/notifications.cpp
deleted file mode 100644
index 70c15ce..0000000
--- a/gtalkext/notifications.cpp
+++ /dev/null
@@ -1,414 +0,0 @@
-//***************************************************************************************
-//
-// Google Extension plugin for the Miranda IM's Jabber protocol
-// Copyright (c) 2011 bems@jabber.org, George Hazan (ghazan@jabber.ru)
-//
-// 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 "StdAfx.h"
-#include "notifications.h"
-#include "db.h"
-#include "options.h"
-#include "avatar.h"
-#include "inbox.h"
-
-static const LPTSTR TEMP_WINDOW_CLASS_NAME = _T("AntiShittyFullscreenDetectionWindowClass");
-static const LPTSTR _T(NUMBER_EMAILS_MESSAGE) = _T("You've received an e-mail\n%s unread threads");
-
-static const LPTSTR PLUGIN_DATA_PROP_NAME = _T("{DB5CE833-C3AC-4851-831C-DDEBD9FA0508}");
-static const LPTSTR EVT_DELETED_HOOK_PROP_NAME = _T("{87CBD2BC-8806-413C-8FD5-1D61ABCA4AF8}");
-
-#define EVENT_DELETED_MSG RegisterWindowMessage(_T("{B9B00536-86A0-4BCE-B2FE-4ABD409C22AE}"))
-#define MESSAGE_CLOSEPOPUP RegisterWindowMessage(_T("{7A60EA87-3E77-41DF-8A69-59B147F0C9C6}"))
-
-static const LPSTR CLIST_MODULE_NAME = "CList";
-static const LPSTR CONTACT_DISPLAY_NAME_SETTING = "MyHandle";
-static const LPSTR STATUS_MSG_SETTING = "StatusMsg";
-static const LPSTR UNREAD_THREADS_SETTING = "UnreadThreads";
-
-struct POPUP_DATA_HEADER {
- BOOL MarkRead;
- HANDLE hDbEvent;
- HANDLE hContact;
- LPTSTR jid;
- LPTSTR url;
-};
-
-extern DWORD itlsSettings;
-BOOL isOriginalPopups = FALSE;
-
-LRESULT CALLBACK WndProc(HWND wnd, UINT msg, WPARAM wParam, LPARAM lParam)
-{
- switch (msg) {
- case WM_NCCREATE:
- return 1;
-
- case WM_GETMINMAXINFO:
- PMINMAXINFO info = (PMINMAXINFO)lParam;
- info->ptMaxPosition.x = -100;
- info->ptMaxPosition.y = -100;
- info->ptMaxSize.x = 10;
- info->ptMaxSize.y = 10;
- info->ptMaxTrackSize.x = 10;
- info->ptMaxTrackSize.y = 10;
- info->ptMinTrackSize.x = 10;
- info->ptMinTrackSize.y = 10;
- return 0;
- }
- return DefWindowProc(wnd, msg, wParam, lParam);
-}
-
-LPCSTR GetJidAcc(LPCTSTR jid)
-{
- int count = 0;
- PROTOCOLDESCRIPTOR **protos;
- CallService(MS_PROTO_ENUMPROTOCOLS, (WPARAM)&count, (LPARAM)&protos);
-
- DBVARIANT dbv;
- for (int i = 0; i < count; i++)
- if (getJabberApi(protos[i]->szName))
- if (!DBGetContactSettingTString(0, protos[i]->szName, "jid", &dbv))
- __try {
- if (!lstrcmpi(jid, dbv.ptszVal)) return protos[i]->szName;
- }
- __finally {
- DBFreeVariant(&dbv);
- }
-
- return NULL;
-}
-
-void MarkEventRead(HANDLE hCnt, HANDLE hEvt)
-{
- DWORD settings = (DWORD)TlsGetValue(itlsSettings);
- if (ReadCheckbox(0, IDC_POPUPSENABLED, settings) &&
- ReadCheckbox(0, IDC_PSEUDOCONTACTENABLED, settings) &&
- ReadCheckbox(0, IDC_MARKEVENTREAD, settings) &&
- (CallService(MS_DB_EVENT_MARKREAD, (WPARAM)hCnt, (LPARAM)hEvt) != (INT_PTR)-1))
- CallService(MS_CLIST_REMOVEEVENT, (WPARAM)hCnt, (LPARAM)hEvt);
-
-}
-
-int OnEventDeleted(WPARAM hContact, LPARAM hDbEvent, LPARAM wnd)
-{
- if (DBGetContactSettingByte((HANDLE)hContact, SHORT_PLUGIN_NAME, PSEUDOCONTACT_FLAG, 0)) {
- CallService(MS_CLIST_REMOVEEVENT, hContact, hDbEvent);
- PostMessage((HWND)wnd, EVENT_DELETED_MSG, hContact, hDbEvent);
- }
-
- return 0;
-}
-
-LRESULT CALLBACK PopupProc(HWND wnd, UINT msg, WPARAM wParam, LPARAM lParam)
-{
- if (EVENT_DELETED_MSG == msg) {
- POPUP_DATA_HEADER *ppdh = (POPUP_DATA_HEADER*)PUGetPluginData(wnd);
- if ((HANDLE)lParam == ppdh->hDbEvent) ppdh->hDbEvent = NULL;
- return 0;
- }
- else
- if (MESSAGE_CLOSEPOPUP == msg) {
- POPUP_DATA_HEADER *ppdh = (POPUP_DATA_HEADER*)PUGetPluginData(wnd);
- ppdh->MarkRead = TRUE;
- PUDeletePopUp(wnd);
- }
-
- switch (msg) {
- case UM_INITPOPUP: {
- POPUP_DATA_HEADER *ppdh = (POPUP_DATA_HEADER*)PUGetPluginData(wnd);
- SetProp(wnd, PLUGIN_DATA_PROP_NAME, (HANDLE)ppdh);
- SetProp(wnd, EVT_DELETED_HOOK_PROP_NAME,
- HookEventParam(ME_DB_EVENT_DELETED, OnEventDeleted, (LPARAM)wnd));
- return 0;
- }
-
- case UM_FREEPLUGINDATA: {
- HANDLE hHook = GetProp(wnd, EVT_DELETED_HOOK_PROP_NAME);
- RemoveProp(wnd, EVT_DELETED_HOOK_PROP_NAME);
- UnhookEvent(hHook);
-
- LPCSTR acc = NULL;
- POPUP_DATA_HEADER *ppdh = (POPUP_DATA_HEADER*)PUGetPluginData(wnd);
- __try {
- if (ppdh->MarkRead && ppdh->hDbEvent && (acc = GetJidAcc(ppdh->jid))) {
- ReadNotificationSettings(acc);
- MarkEventRead(ppdh->hContact, ppdh->hDbEvent);
- CallService(MS_CLIST_REMOVEEVENT, (WPARAM)ppdh->hContact, (LPARAM)ppdh->hDbEvent);
- }
-
- }
- __finally {
- RemoveProp(wnd, PLUGIN_DATA_PROP_NAME);
- free(ppdh);
- }
-
- return 0;
- }
-
- case WM_LBUTTONUP: {
- LPCSTR acc = NULL;
- POPUP_DATA_HEADER *ppdh = (POPUP_DATA_HEADER*)PUGetPluginData(wnd);
- __try {
- if (!(acc = GetJidAcc(ppdh->jid))) return 0;
-
- ReadNotificationSettings(acc);
- OpenUrl(acc, ppdh->jid, ppdh->url);
- }
- __finally {
- CloseNotifications(acc, ppdh->url, ppdh->jid, TRUE);
- }
- return 0;
- }
-
- case WM_RBUTTONUP:
- SendMessage(wnd, MESSAGE_CLOSEPOPUP, 0, 0);
- return 0;
- }
- return DefWindowProc(wnd, msg, wParam, lParam);
-}
-
-HWND DoAddPopup(POPUPDATAT *data)
-{
- WNDCLASS cls = {0};
- cls.lpfnWndProc = WndProc;
- cls.lpszClassName = TEMP_WINDOW_CLASS_NAME;
-
- HWND result = 0;
- HWND handle = 0;
- __try {
- if (ReadCheckbox(0, IDC_POPUPSINFULLSCREEN, (DWORD)TlsGetValue(itlsSettings))) {
- RegisterClass(&cls);
- handle = CreateWindowEx(WS_EX_TOOLWINDOW, TEMP_WINDOW_CLASS_NAME, NULL, WS_OVERLAPPED | WS_VISIBLE,
- -100, -100, 10, 10, NULL, NULL, NULL, NULL);
- if (handle) {
- ShowWindow(handle, SW_MINIMIZE);
- ShowWindow(handle, SW_RESTORE);
- }
- }
- result = (HWND)CallService(MS_POPUP_ADDPOPUPT, (WPARAM) data, APF_RETURN_HWND);
- }
- __finally {
- if (handle) DestroyWindow(handle);
- }
-
- return result;
-}
-
-void FormatPseudocontactDisplayName(LPTSTR buff, LPCTSTR jid, LPCTSTR unreadCount)
-{
- if (lstrcmp(unreadCount, _T("0")))
- wsprintf(buff, _T("%s [%s]"), jid, unreadCount);
- else
- wsprintf(buff, _T("%s"), jid);
-}
-
-HANDLE SetupPseudocontact(LPCTSTR jid, LPCTSTR unreadCount, LPCSTR acc, LPCTSTR displayName)
-{
- HANDLE result = (HANDLE)DBGetContactSettingDword(0, acc, PSEUDOCONTACT_LINK, 0);
- if (!result || !DBGetContactSettingByte(result, SHORT_PLUGIN_NAME, PSEUDOCONTACT_FLAG, 0)) {
- result = (HANDLE)CallService(MS_DB_CONTACT_ADD, 0, 0);
- DBWriteContactSettingDword(0, acc, PSEUDOCONTACT_LINK, (DWORD)result);
- DBWriteContactSettingByte(result, SHORT_PLUGIN_NAME, PSEUDOCONTACT_FLAG, 1);
- CallService(MS_PROTO_ADDTOCONTACT, (WPARAM)result, (LPARAM)acc);
- }
-
- SetAvatar(result);
-
- BOOL allocateName = !displayName;
- __try {
- if (allocateName) {
- displayName = (LPCTSTR)malloc((lstrlen(jid) + lstrlen(unreadCount) + 3 + 1) * sizeof(TCHAR));
- FormatPseudocontactDisplayName((LPTSTR)displayName, jid, unreadCount);
- }
-
- DBWriteContactSettingTString(result, CLIST_MODULE_NAME, CONTACT_DISPLAY_NAME_SETTING, displayName);
- }
- __finally {
- if (allocateName) free((PVOID)displayName);
- }
-
- DBWriteContactSettingTString(result, CLIST_MODULE_NAME, STATUS_MSG_SETTING, TranslateT(MAIL_NOTIFICATIONS));
- DBWriteContactSettingTString(result, SHORT_PLUGIN_NAME, UNREAD_THREADS_SETTING, unreadCount);
-
- return result;
-}
-
-HANDLE AddCListNotification(HANDLE hContact, LPCSTR acc, POPUPDATAT *data, LPCTSTR jid, LPCTSTR url, LPCTSTR unreadCount)
-{
- int lurl = (lstrlen(url) + 1) * sizeof(WCHAR);
- LPSTR utf8 = (LPSTR)malloc(sizeof(data->lptzText) + sizeof(WCHAR) * 2 + lurl);
- __try {
- DBEVENTINFO dbei = {0};
-
- dbei.cbBlob = WideCharToMultiByte(CP_UTF8, 0, &data->lptzText[0], -1, utf8, sizeof(data->lptzText), NULL, NULL) - 1;
-
- if (utf8[dbei.cbBlob - 1] != 10) {
- utf8[dbei.cbBlob++] = 13;
- utf8[dbei.cbBlob++] = 10;
- }
-
- dbei.cbBlob += WideCharToMultiByte(CP_UTF8, 0, url, -1, utf8 + dbei.cbBlob, lurl, NULL, NULL);
-
- dbei.pBlob = (PBYTE)utf8;
- dbei.cbSize = sizeof(dbei);
- dbei.szModule = (LPSTR)acc;
- dbei.timestamp = time(NULL);
- dbei.flags = DBEF_UTF;
- dbei.eventType = EVENTTYPE_MESSAGE;
- return (HANDLE)CallService(MS_DB_EVENT_ADD, (WPARAM)hContact, (LPARAM)&dbei);
- }
- __finally {
- free(utf8);
- }
-}
-
-BOOL UsePopups()
-{
- return ServiceExists(MS_POPUP_QUERY) &&
- CallService(MS_POPUP_QUERY, PUQS_GETSTATUS, 0) &&
- ReadCheckbox(0, IDC_POPUPSENABLED, (DWORD)TlsGetValue(itlsSettings));
-}
-
-void ShowNotification(LPCSTR acc, POPUPDATAT *data, LPCTSTR jid, LPCTSTR url, LPCTSTR unreadCount)
-{
- HANDLE hCnt = SetupPseudocontact(jid, unreadCount, acc, &data->lptzContactName[0]);
- HANDLE hEvt = ReadCheckbox(0, IDC_PSEUDOCONTACTENABLED, (DWORD)TlsGetValue(itlsSettings))
- ? AddCListNotification(hCnt, acc, data, jid, url, unreadCount) : NULL;
-
- if (!UsePopups()) return;
-
- extern HICON g_hPopupIcon;
- data->lchIcon = g_hPopupIcon;
- data->iSeconds = (int)DBGetContactSettingDword(0, SHORT_PLUGIN_NAME, TIMEOUT_SETTING, 0);
- data->colorBack = (COLORREF)DBGetContactSettingDword(0, SHORT_PLUGIN_NAME, BACK_COLOR_SETTING, 0);
- data->colorText = (COLORREF)DBGetContactSettingDword(0, SHORT_PLUGIN_NAME, TEXT_COLOR_SETTING, 0);
- if (data->colorBack == data->colorText) {
- data->colorBack = 0;
- data->colorText = 0;
- }
-
- data->PluginWindowProc = PopupProc;
- int lurl = (lstrlen(url) + 1) * sizeof(TCHAR);
- int ljid = (lstrlen(jid) + 1) * sizeof(TCHAR);
- data->PluginData = malloc(sizeof(POPUP_DATA_HEADER) + lurl + ljid);
- __try {
- POPUP_DATA_HEADER *ppdh = (POPUP_DATA_HEADER*)data->PluginData;
-
- ppdh->MarkRead = FALSE;
- ppdh->hContact = hCnt;
- ppdh->hDbEvent = hEvt;
-
- ppdh->jid = (LPTSTR)((PBYTE)ppdh + sizeof(*ppdh));
- memcpy(ppdh->jid, jid, ljid);
-
- ppdh->url = (LPTSTR)((PBYTE)ppdh->jid + ljid);
- memcpy(ppdh->url, url, lurl);
-
- HWND code = DoAddPopup(data);
- if ((code == (HWND)-1) || (isOriginalPopups && !code))
- return;
- data->PluginData = NULL; // freed in popup wndproc
- }
- __finally {
- free(data->PluginData);
- }
-}
-
-void UnreadMailNotification(LPCSTR acc, LPCTSTR jid, LPCTSTR url, LPCTSTR unreadCount)
-{
- POPUPDATAT data = {0};
-
- FormatPseudocontactDisplayName(&data.lptzContactName[0], jid, unreadCount);
- wsprintf(&data.lptzText[0], TranslateT(NUMBER_EMAILS_MESSAGE), unreadCount);
-
- ShowNotification(acc, &data, jid, url, unreadCount);
-}
-
-void UnreadThreadNotification(LPCSTR acc, LPCTSTR jid, LPCTSTR url, LPCTSTR unreadCount, const MAIL_THREAD_NOTIFICATION *mtn)
-{
- POPUPDATAT data = {0};
-
- FormatPseudocontactDisplayName(&data.lptzContactName[0], jid, unreadCount);
- LPTSTR senders = (LPTSTR)malloc(SENDER_COUNT * 100 * sizeof(TCHAR));
- LPTSTR currSender = senders;
- __try {
- for (int i = 0; i < SENDER_COUNT && mtn->senders[i].addr; i++) {
- wsprintf(currSender, _T(" %s <%s>\n"), mtn->senders[i].name, mtn->senders[i].addr);
- currSender += lstrlen(currSender);
- }
-
- if (ReadCheckbox(0, IDC_ADDSNIP, (DWORD)TlsGetValue(itlsSettings)))
- wsprintf(&data.lptzText[0], TranslateT(FULL_NOTIFICATION_FORMAT), mtn->subj, senders, mtn->snip);
- else
- wsprintf(&data.lptzText[0], TranslateT(SHORT_NOTIFICATION_FORMAT), mtn->subj, senders);
- }
- __finally {
- free(senders);
- }
-
- ShowNotification(acc, &data, jid, url, unreadCount);
-}
-
-void ClearNotificationContactHistory(LPCSTR acc)
-{
- HANDLE hEvent = 0;
- HANDLE hContact = (HANDLE)DBGetContactSettingDword(0, acc, PSEUDOCONTACT_LINK, 0);
- if (hContact && DBGetContactSettingByte(hContact, SHORT_PLUGIN_NAME, PSEUDOCONTACT_FLAG, 0))
- while ((hEvent = (HANDLE)CallService(MS_DB_EVENT_FINDLAST, (WPARAM)hContact, 0)) &&
- !CallService(MS_DB_EVENT_DELETE, (WPARAM)hContact, (LPARAM)hEvent)){};
-}
-
-DWORD ReadNotificationSettings(LPCSTR acc)
-{
- DWORD result = ReadCheckboxes(0, acc);
- TlsSetValue(itlsSettings, (PVOID)result);
- return result;
-}
-
-struct POPUP_IDENT_STRINGS {
- LPCTSTR url;
- LPCTSTR jid;
-};
-
-BOOL CALLBACK ClosePopupFunc(__in HWND hwnd, __in LPARAM lParam)
-{
- DWORD pid = 0;
- GetWindowThreadProcessId(hwnd, &pid);
- if (pid != GetCurrentProcessId()) return TRUE;
-
- POPUP_IDENT_STRINGS *ppis = (POPUP_IDENT_STRINGS*)lParam;
- POPUP_DATA_HEADER *ppdh = (POPUP_DATA_HEADER*)GetProp(hwnd, PLUGIN_DATA_PROP_NAME);
- if (!ppdh) return TRUE;
-
- if (!lstrcmpi(ppis->url, ppdh->url) && !lstrcmpi(ppis->jid, ppdh->jid))
- SendMessage(hwnd, MESSAGE_CLOSEPOPUP, 0, 0);
-
- return TRUE;
-}
-
-void CloseNotifications(LPCSTR acc, LPCTSTR url, LPCTSTR jid, BOOL PopupsOnly)
-{
- DWORD settings = (DWORD)TlsGetValue(itlsSettings);
- if (acc &&
- !PopupsOnly &&
- ReadCheckbox(0, IDC_PSEUDOCONTACTENABLED, settings) &&
- ReadCheckbox(0, IDC_CLEARPSEUDOCONTACTLOG, settings))
- ClearNotificationContactHistory(acc);
-
- POPUP_IDENT_STRINGS pis = {url, jid};
- EnumWindows(ClosePopupFunc, (LPARAM)&pis);
-} \ No newline at end of file
diff --git a/gtalkext/notifications.h b/gtalkext/notifications.h
deleted file mode 100644
index 94d6e63..0000000
--- a/gtalkext/notifications.h
+++ /dev/null
@@ -1,42 +0,0 @@
-//***************************************************************************************
-//
-// Google Extension plugin for the Miranda IM's Jabber protocol
-// Copyright (c) 2011 bems@jabber.org, George Hazan (ghazan@jabber.ru)
-//
-// 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
-
-static const int SENDER_COUNT = 10;
-
-struct SENDER {
- LPCTSTR name;
- LPCTSTR addr;
-};
-
-struct MAIL_THREAD_NOTIFICATION {
- LPCTSTR subj;
- LPCTSTR snip;
- SENDER senders[SENDER_COUNT];
-};
-
-void UnreadMailNotification(LPCSTR acc, LPCTSTR jid, LPCTSTR url, LPCTSTR unreadCount);
-void UnreadThreadNotification(LPCSTR acc, LPCTSTR jid, LPCTSTR url, LPCTSTR unreadCount, const MAIL_THREAD_NOTIFICATION *mtn);
-void CloseNotifications(LPCSTR acc, LPCTSTR url, LPCTSTR jid, BOOL PopupsOnly);
-DWORD ReadNotificationSettings(LPCSTR acc);
-HANDLE SetupPseudocontact(LPCTSTR jid, LPCTSTR unreadCount, LPCSTR acc, LPCTSTR displayName = NULL);
-LPCSTR GetJidAcc(LPCTSTR jid); \ No newline at end of file
diff --git a/gtalkext/options.cpp b/gtalkext/options.cpp
deleted file mode 100644
index c7321de..0000000
--- a/gtalkext/options.cpp
+++ /dev/null
@@ -1,297 +0,0 @@
-//***************************************************************************************
-//
-// Google Extension plugin for the Miranda IM's Jabber protocol
-// Copyright (c) 2011 bems@jabber.org, George Hazan (ghazan@jabber.ru)
-//
-// 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 "stdafx.h"
-#include "options.h"
-
-static const LPTSTR ACCOUNT_PROP_NAME = _T("{BF447EBA-27AE-4DB7-893C-FC42A3F74D75}");
-static const LPTSTR DIALOG_INITIALIZED_PROP_NAME = _T("{5EE59FE5-679A-4A29-B0A1-03092E7AC20E}");
-
-static const LPTSTR POPUPS_OPTIONS_GROUP = _T("Popups");
-static const LPTSTR NETWORK_OPTIONS_GROUP = _T("Network");
-
-static const LPSTR NOTIFY_SETTINGS_FROM_MOD_NAME = SHORT_PLUGIN_NAME ".NotifySettingsFromModName";
-
-static const LPTSTR TEST_LETTER_SUBJECT = _T("Why C sucks");
-static const LPTSTR TEST_LETTER_INBOX = _T("brickstrace@gmail.com [1]");
-static const LPTSTR TEST_LETTER_SENDER = _T(" bems <bems@vingrad.ru>\n");
-static const LPTSTR TEST_LETTER_SNIP =
- _T("* Primitive type system\n")
- _T("* No overloading\n")
- _T("* Limited possibility of data abstraction, polymorphism, subtyping and code reuse\n")
- _T("* No metaprogramming except preprocessor macros\n")
- _T("* No exceptions");
-
-HANDLE hOptionsHook = 0;
-extern HINSTANCE hInst;
-
-void CheckControlsEnabled(HWND wnd)
-{
- BOOL PopupsEnabled = (SendMessage(GetDlgItem(wnd, IDC_POPUPSENABLED), BM_GETSTATE, 0, 0) & BST_CHECKED) == BST_CHECKED;
- EnableWindow(GetDlgItem(wnd, IDC_POPUPSINFULLSCREEN), PopupsEnabled);
- EnableWindow(GetDlgItem(wnd, IDC_POPUPSINFULLSCREENLABEL), PopupsEnabled);
-
- BOOL CListEnabled = (SendMessage(GetDlgItem(wnd, IDC_PSEUDOCONTACTENABLED), BM_GETSTATE, 0, 0) & BST_CHECKED) == BST_CHECKED;
- EnableWindow(GetDlgItem(wnd, IDC_CLEARPSEUDOCONTACTLOG), CListEnabled);
- EnableWindow(GetDlgItem(wnd, IDC_SUPRESSFOREIGN), CListEnabled);
-
- EnableWindow(GetDlgItem(wnd, IDC_MARKEVENTREAD), PopupsEnabled && CListEnabled);
- EnableWindow(GetDlgItem(wnd, IDC_ADDSNIP), PopupsEnabled || CListEnabled);
-
- EnableWindow(GetDlgItem(wnd, IDC_MAILBOXVIEWLABEL), PopupsEnabled || CListEnabled);
- EnableWindow(GetDlgItem(wnd, IDC_UNKNOWNVIEW), PopupsEnabled || CListEnabled);
- EnableWindow(GetDlgItem(wnd, IDC_STANDARDVIEW), PopupsEnabled || CListEnabled);
- EnableWindow(GetDlgItem(wnd, IDC_HTMLVIEW), PopupsEnabled || CListEnabled);
-}
-
-BOOL ReadCheckbox(HWND wnd, int id, DWORD controls)
-{
- BOOL result = ((controls >> (id - IDC_BASE)) & 1);
- if (id != IDC_STANDARDVIEW && id != IDC_HTMLVIEW) result = !result;
- if (wnd) Button_SetCheck(GetDlgItem(wnd, id), result);
- return result;
-}
-
-DWORD ReadCheckboxes(HWND wnd, LPCSTR mod)
-{
- DWORD controls = DBGetContactSettingDword(0, NOTIFY_SETTINGS_FROM_MOD_NAME, mod, 0);
- ReadCheckbox(wnd, IDC_POPUPSENABLED, controls);
- ReadCheckbox(wnd, IDC_PSEUDOCONTACTENABLED, controls);
- ReadCheckbox(wnd, IDC_CLEARPSEUDOCONTACTLOG, controls);
- ReadCheckbox(wnd, IDC_POPUPSINFULLSCREEN, controls);
- ReadCheckbox(wnd, IDC_SUPRESSFOREIGN, controls);
- ReadCheckbox(wnd, IDC_MARKEVENTREAD, controls);
- ReadCheckbox(wnd, IDC_AUTHONMAILBOX, controls);
- ReadCheckbox(wnd, IDC_ADDSNIP, controls);
- ReadCheckbox(wnd, IDC_UNKNOWNVIEW, controls);
- ReadCheckbox(wnd, IDC_STANDARDVIEW, controls);
- ReadCheckbox(wnd, IDC_HTMLVIEW, controls);
- return controls;
-}
-
-DWORD GetCheckboxSaveValue(HWND wnd, int id)
-{
- BOOL val = Button_GetCheck(GetDlgItem(wnd, id));
- if (id != IDC_STANDARDVIEW && id != IDC_HTMLVIEW) val = !val;
- return val ? (1 << (id - IDC_BASE)) : 0;
-}
-
-void SaveControls(HWND wnd, LPCSTR mod)
-{
- DWORD controls = GetCheckboxSaveValue(wnd, IDC_CLEARPSEUDOCONTACTLOG) |
- GetCheckboxSaveValue(wnd, IDC_POPUPSINFULLSCREEN) |
- GetCheckboxSaveValue(wnd, IDC_POPUPSENABLED) |
- GetCheckboxSaveValue(wnd, IDC_PSEUDOCONTACTENABLED) |
- GetCheckboxSaveValue(wnd, IDC_SUPRESSFOREIGN) |
- GetCheckboxSaveValue(wnd, IDC_MARKEVENTREAD) |
- GetCheckboxSaveValue(wnd, IDC_AUTHONMAILBOX) |
- GetCheckboxSaveValue(wnd, IDC_ADDSNIP) |
- GetCheckboxSaveValue(wnd, IDC_UNKNOWNVIEW) |
- GetCheckboxSaveValue(wnd, IDC_STANDARDVIEW) |
- GetCheckboxSaveValue(wnd, IDC_HTMLVIEW);
-
- DBWriteContactSettingDword(0, NOTIFY_SETTINGS_FROM_MOD_NAME, mod, controls);
-}
-
-INT_PTR CALLBACK AccOptionsDlgProc(HWND wnd, UINT msg, WPARAM wParam, LPARAM lParam)
-{
- switch (msg) {
- case WM_INITDIALOG:
- SetProp(wnd, ACCOUNT_PROP_NAME, (HANDLE)lParam);
- TranslateDialogDefault(wnd);
- ReadCheckboxes(wnd, (LPCSTR)lParam);
- CheckControlsEnabled(wnd);
- break;
-
- case WM_CTLCOLORSTATIC:
- if (GetDlgItem(wnd, IDC_WARNBAR) == (HWND)lParam)
- return (INT_PTR)CreateSolidBrush(0x55AAFF); // orange
- break;
-
- case WM_COMMAND:
- switch (LOWORD(wParam)) {
- case IDC_POPUPSENABLED:
- case IDC_PSEUDOCONTACTENABLED:
- if (HIWORD(wParam) == BN_CLICKED) CheckControlsEnabled(wnd);
- // no break
-
- case IDC_CLEARPSEUDOCONTACTLOG:
- case IDC_POPUPSINFULLSCREEN:
- case IDC_SUPRESSFOREIGN:
- case IDC_MARKEVENTREAD:
- case IDC_AUTHONMAILBOX:
- case IDC_ADDSNIP:
- case IDC_UNKNOWNVIEW:
- case IDC_STANDARDVIEW:
- case IDC_HTMLVIEW:
- if (HIWORD(wParam) == BN_CLICKED) PropSheet_Changed(GetParent(wnd), wnd);
- }
- break;
-
- case WM_NOTIFY:
- if (!((LPNMHDR)lParam)->idFrom && ((LPNMHDR)lParam)->code == PSN_APPLY)
- SaveControls(wnd, (LPCSTR)GetProp(wnd, ACCOUNT_PROP_NAME));
- break;
- }
- return 0;
-}
-
-void ShowTestPopup(HWND wnd)
-{
- POPUPDATAT data = {0};
- wsprintf(&data.lptzContactName[0], TEST_LETTER_INBOX);
- wsprintf(&data.lptzText[0], TranslateT(FULL_NOTIFICATION_FORMAT),
- TEST_LETTER_SUBJECT, TEST_LETTER_SENDER, TEST_LETTER_SNIP);
-
- int len = SendMessage(GetDlgItem(wnd, IDC_TIMEOUTEDIT), WM_GETTEXTLENGTH, 0, 0) + 1;
- LPTSTR timeout = (LPTSTR)malloc(len * sizeof(TCHAR));
- __try {
- SendMessage(GetDlgItem(wnd, IDC_TIMEOUTEDIT), WM_GETTEXT, len, (LPARAM)timeout);
- data.iSeconds = _ttoi(timeout);
- }
- __finally {
- free(timeout);
- }
-
- extern HICON g_hPopupIcon;
- data.lchIcon = g_hPopupIcon;
- data.colorBack = (COLORREF)SendMessage(GetDlgItem(wnd, IDC_BACKCOLORPICKER), CPM_GETCOLOUR, 0, 0);
- data.colorText = (COLORREF)SendMessage(GetDlgItem(wnd, IDC_TEXTCOLORPICKER), CPM_GETCOLOUR, 0, 0);
- if (data.colorBack == data.colorText) {
- data.colorBack = 0;
- data.colorText = 0;
- }
- CallService(MS_POPUP_ADDPOPUPT, (WPARAM)&data, 0);
-}
-
-INT_PTR CALLBACK PopupsOptionsDlgProc(HWND wnd, UINT msg, WPARAM wParam, LPARAM lParam)
-{
- switch (msg) {
- case WM_INITDIALOG:
- TranslateDialogDefault(wnd);
- SendMessage(GetDlgItem(wnd, IDC_BACKCOLORPICKER), CPM_SETCOLOUR, 0,
- (LPARAM)DBGetContactSettingDword(0, SHORT_PLUGIN_NAME, BACK_COLOR_SETTING, 0));
- SendMessage(GetDlgItem(wnd, IDC_TEXTCOLORPICKER), CPM_SETCOLOUR, 0,
- (LPARAM)DBGetContactSettingDword(0, SHORT_PLUGIN_NAME, TEXT_COLOR_SETTING, 0));
-
- {LPTSTR timeout = (LPTSTR)malloc(11 * sizeof(TCHAR));
- __try {
- wsprintf(timeout, _T("%d"), DBGetContactSettingDword(0, SHORT_PLUGIN_NAME, TIMEOUT_SETTING, 0));
- SendMessage(GetDlgItem(wnd, IDC_TIMEOUTEDIT), WM_SETTEXT, 0, (LPARAM)timeout);
- }
- __finally {
- free(timeout);
- }}
-
- SetProp(wnd, DIALOG_INITIALIZED_PROP_NAME, (HANDLE)TRUE);
- break;
-
- case WM_COMMAND:
- if (LOWORD(wParam) == IDC_TESTBUTTON && HIWORD(wParam) == BN_CLICKED)
- ShowTestPopup(wnd);
-
- if (GetProp(wnd, DIALOG_INITIALIZED_PROP_NAME))
- switch (LOWORD(wParam)) {
- case IDC_BACKCOLORPICKER:
- case IDC_TEXTCOLORPICKER:
- if (HIWORD(wParam) == CPN_COLOURCHANGED) PropSheet_Changed(GetParent(wnd), wnd);
- break;
-
- case IDC_TIMEOUTEDIT:
- if (HIWORD(wParam) == EN_CHANGE) PropSheet_Changed(GetParent(wnd), wnd);
- }
- break;
-
- case WM_NOTIFY:
- if (!((LPNMHDR)lParam)->idFrom && ((LPNMHDR)lParam)->code == PSN_APPLY)
- DBWriteContactSettingDword(0, SHORT_PLUGIN_NAME, BACK_COLOR_SETTING,
- (DWORD)SendMessage(GetDlgItem(wnd, IDC_BACKCOLORPICKER), CPM_GETCOLOUR, 0, 0));
- DBWriteContactSettingDword(0, SHORT_PLUGIN_NAME, TEXT_COLOR_SETTING,
- (DWORD)SendMessage(GetDlgItem(wnd, IDC_TEXTCOLORPICKER), CPM_GETCOLOUR, 0, 0));
-
- int len = SendMessage(GetDlgItem(wnd, IDC_TIMEOUTEDIT), WM_GETTEXTLENGTH, 0, 0) + 1;
- LPTSTR timeout = (LPTSTR)malloc(len * sizeof(TCHAR));
- __try {
- SendMessage(GetDlgItem(wnd, IDC_TIMEOUTEDIT), WM_GETTEXT, len, (LPARAM)timeout);
- DBWriteContactSettingDword(0, SHORT_PLUGIN_NAME, TIMEOUT_SETTING, _ttoi(timeout));
- }
- __finally {
- free(timeout);
- }
- break;
- }
- return 0;
-}
-
-void AddPopupsPage(WPARAM wParam)
-{
- OPTIONSDIALOGPAGE odp = {0};
- odp.cbSize = sizeof(odp);
- odp.ptszTitle = _T(MAIL_NOTIFICATIONS);
- odp.pfnDlgProc = PopupsOptionsDlgProc;
- odp.pszTemplate = MAKEINTRESOURCEA(IDD_POPUPSETTINGS);
- odp.hInstance = hInst;
- odp.ptszGroup = POPUPS_OPTIONS_GROUP;
- odp.flags = ODPF_UNICODE | ODPF_USERINFOTAB;
-
- CallService(MS_OPT_ADDPAGE, wParam, (LPARAM)&odp);
-}
-
-void AddAccPage(LPCTSTR acc, LPCSTR mod, WPARAM wParam)
-{
- OPTIONSDIALOGPAGE odp = {0};
- odp.cbSize = sizeof(odp);
- odp.pszTitle = (LPSTR)acc;
- odp.pfnDlgProc = AccOptionsDlgProc;
- odp.pszTemplate = MAKEINTRESOURCEA(IDD_MAILSETTINGS);
- odp.hInstance = hInst;
- odp.ptszGroup = NETWORK_OPTIONS_GROUP;
- odp.flags = ODPF_UNICODE | ODPF_USERINFOTAB;
- odp.ptszTab =_T(MAIL_NOTIFICATIONS);
- odp.dwInitParam = (LPARAM)mod;
-
- CallService(MS_OPT_ADDPAGE, wParam, (LPARAM)&odp);
-}
-
-int OptionsInitialization(WPARAM wParam, LPARAM lParam)
-{
- int count;
- PROTOACCOUNT **accs;
- CallService(MS_PROTO_ENUMACCOUNTS, (WPARAM)&count, (LPARAM)&accs);
- for (int i = 0; i < count; i++)
- if (getJabberApi(accs[i]->szModuleName)) AddAccPage(accs[i]->tszAccountName, accs[i]->szModuleName, wParam);
-
- if (ServiceExists(MS_POPUP_ADDPOPUPT)) AddPopupsPage(wParam);
- return FALSE;
-}
-
-BOOL HookOptionsInitialization()
-{
- return (hOptionsHook = HookEvent(ME_OPT_INITIALISE, OptionsInitialization)) != 0;
-}
-
-void UnhookOptionsInitialization()
-{
- if (hOptionsHook) {
- UnhookEvent(hOptionsHook);
- hOptionsHook = 0;
- }
-} \ No newline at end of file
diff --git a/gtalkext/options.h b/gtalkext/options.h
deleted file mode 100644
index d213bcb..0000000
--- a/gtalkext/options.h
+++ /dev/null
@@ -1,39 +0,0 @@
-//***************************************************************************************
-//
-// Google Extension plugin for the Miranda IM's Jabber protocol
-// Copyright (c) 2011 bems@jabber.org, George Hazan (ghazan@jabber.ru)
-//
-// 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
-
-#include "resources.h"
-
-static const LPTSTR _T(MAIL_NOTIFICATIONS) = _T("GMail notifications");
-static const LPTSTR _T(FULL_NOTIFICATION_FORMAT) = _T("subject\n %s\nfrom\n%s\n%s\n");
-static const LPTSTR _T(SHORT_NOTIFICATION_FORMAT) = _T("subject\n %s\nfrom\n%s");
-
-static const LPSTR PSEUDOCONTACT_LINK = "GTalkExtNotifyContact";
-static const LPSTR PSEUDOCONTACT_FLAG = "IsNotifyContact";
-static const LPSTR BACK_COLOR_SETTING = "BackColor";
-static const LPSTR TEXT_COLOR_SETTING = "TextColor";
-static const LPSTR TIMEOUT_SETTING = "Timeout";
-
-BOOL HookOptionsInitialization();
-void UnhookOptionsInitialization();
-DWORD ReadCheckboxes(HWND wnd, LPCSTR mod);
-BOOL ReadCheckbox(HWND wnd, int id, DWORD controls); \ No newline at end of file
diff --git a/gtalkext/popups.cpp b/gtalkext/popups.cpp
deleted file mode 100644
index 99ab944..0000000
--- a/gtalkext/popups.cpp
+++ /dev/null
@@ -1,104 +0,0 @@
-//***************************************************************************************
-//
-// Google Extension plugin for the Miranda IM's Jabber protocol
-// Copyright (c) 2011 bems@jabber.org, George Hazan (ghazan@jabber.ru)
-//
-// 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 "stdafx.h"
-#include "popups.h"
-#include "options.h"
-
-static const LPTSTR YAPP_WND_CLASS1 = _T("YAPPYAPPWindowClass");
-static const LPTSTR YAPP_WND_CLASS2 = _T("YAPPWinClass");
-
-extern BOOL isOriginalPopups;
-
-LRESULT CALLBACK PopupHookProc(int nCode, WPARAM wParam, LPARAM lParam)
-{
- PCWPRETSTRUCT cs = (PCWPRETSTRUCT)lParam;
- if ((HC_ACTION == nCode) &&
- (WM_CREATE == cs->message) &&
- (-1 != cs->lResult) &&
- ServiceExists(MS_POPUP_GETCONTACT)) {
-
- // with YAPP we can't call MS_POPUP_GETCONTACT on a random window
- TCHAR ClassName[32];
- GetClassName(cs->hwnd, ClassName, sizeof(ClassName) / sizeof(TCHAR));
- if (isOriginalPopups ||
- !lstrcmp(YAPP_WND_CLASS1, ClassName) ||
- !lstrcmp(YAPP_WND_CLASS2, ClassName)) {
-
- HANDLE hContact = (HANDLE)CallService(MS_POPUP_GETCONTACT, (WPARAM)cs->hwnd, 0);
- if (hContact != (HANDLE)-1 &&
- hContact != (HANDLE)0x80000000 &&
- DBGetContactSettingByte(hContact, SHORT_PLUGIN_NAME, PSEUDOCONTACT_FLAG, 0)) {
- LPCSTR proto = (LPCSTR)CallService(MS_PROTO_GETCONTACTBASEPROTO, (WPARAM)hContact, 0);
- DWORD checkboxes = ReadCheckboxes(0, proto);
- if (ReadCheckbox(0, IDC_PSEUDOCONTACTENABLED, checkboxes) &&
- ReadCheckbox(0, IDC_SUPRESSFOREIGN, checkboxes))
- PostMessage(cs->hwnd, WM_CLOSE, 0, 0);
- }
- }
- }
- return CallNextHookEx(0, nCode, wParam, lParam);
-}
-
-typedef PLUGININFOEX* (MIRANDAPLUGININFOEX) (DWORD mirandaVersion);
-
-static GUID POPUP_GUID1 = {0x26a9125d, 0x7863, 0x4e01, {0xaf, 0xe, 0xd1, 0x4e, 0xf9, 0x5c, 0x50, 0x54}};
-static GUID POPUP_GUID2 = {0x26a9125d, 0x7863, 0x4e01, {0xaf, 0xe, 0xd1, 0x4e, 0xf9, 0x5c, 0x50, 0x53}};
-
-DWORD g_mirandaVersion = 0;
-
-BOOL IsOriginalPopupModule(HMODULE hMod)
-{
- MIRANDAPLUGININFOEX *MirandaPluginInfoEx = (MIRANDAPLUGININFOEX*)GetProcAddress(hMod, "MirandaPluginInfoEx");
- if (!MirandaPluginInfoEx) return FALSE;
-
- PLUGININFOEX *PluginInfoEx = MirandaPluginInfoEx(g_mirandaVersion);
- if (!PluginInfoEx) return FALSE;
-
- GUID *guid1 = (GUID*)&PluginInfoEx->uuid;
- GUID *guid2 = (GUID*)&POPUP_GUID1;
- GUID *guid3 = (GUID*)&POPUP_GUID2;
- return (IsEqualGUID(*guid1, *guid2) || IsEqualGUID(*guid1, *guid3));
-}
-
-extern BOOL isOriginalPopups;
-
-void DetectPopupModule()
-{
- DWORD bytesNeeded;
- if (!EnumProcessModules(GetCurrentProcess(), NULL, 0, &bytesNeeded))
- return;
-
- HMODULE *mods = (HMODULE*)malloc(bytesNeeded);
- __try {
- if (!EnumProcessModules(GetCurrentProcess(), mods, bytesNeeded, &bytesNeeded))
- return;
-
- for (DWORD i = 0; i < (bytesNeeded / sizeof(HMODULE)); i++)
- if (IsOriginalPopupModule(mods[i])) {
- isOriginalPopups = TRUE;
- break;
- }
- }
- __finally {
- free(mods);
- }
-}
diff --git a/gtalkext/popups.h b/gtalkext/popups.h
deleted file mode 100644
index f9e142e..0000000
--- a/gtalkext/popups.h
+++ /dev/null
@@ -1,25 +0,0 @@
-//***************************************************************************************
-//
-// Google Extension plugin for the Miranda IM's Jabber protocol
-// Copyright (c) 2011 bems@jabber.org, George Hazan (ghazan@jabber.ru)
-//
-// 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
-
-LRESULT CALLBACK PopupHookProc(int nCode, WPARAM wParam, LPARAM lParam);
-void DetectPopupModule(); \ No newline at end of file
diff --git a/gtalkext/res/PopupIcon.ico b/gtalkext/res/PopupIcon.ico
deleted file mode 100644
index 7cf441b..0000000
--- a/gtalkext/res/PopupIcon.ico
+++ /dev/null
Binary files differ
diff --git a/gtalkext/res/pseudoava.png b/gtalkext/res/pseudoava.png
deleted file mode 100644
index 26f7b8f..0000000
--- a/gtalkext/res/pseudoava.png
+++ /dev/null
Binary files differ
diff --git a/gtalkext/res/settings.rc b/gtalkext/res/settings.rc
deleted file mode 100644
index d1466cd..0000000
--- a/gtalkext/res/settings.rc
+++ /dev/null
@@ -1,84 +0,0 @@
-#include "resources.h"
-#include "winres.h"
-#include "include\m_utils.h"
-
-IDD_MAILSETTINGS DIALOGEX 0, 0, 304, 228
-STYLE DS_SETFONT | DS_FIXEDSYS | WS_CHILD
-EXSTYLE WS_EX_CONTROLPARENT
-FONT 8, "MS Shell Dlg", 0, 0, 0x1
-{
- CONTROL "", IDC_WARNBAR, STATIC, SS_LEFT, 30, 9, 3, 26
- CONTROL "NOTE\n\nThis will work only if this Jabber account is actually GTalk", IDC_NOTE, STATIC, SS_LEFT, 40, 9, 230, 26
- CONTROL "Popup notifications (needs popup plugin)", IDC_POPUPSENABLED, BUTTON, BS_AUTOCHECKBOX | WS_TABSTOP, 3, 36, 271, 14
- CONTROL "Notify in fullscreen mode too", IDC_POPUPSINFULLSCREEN, BUTTON, BS_AUTOCHECKBOX | WS_TABSTOP, 17, 51, 254, 15
- CONTROL "Use this if your popup plugin does not correctly detect fullscreen mode. It will take away your keyboard focus", IDC_POPUPSINFULLSCREENLABEL, STATIC, SS_LEFT, 30, 65, 270, 22
- CONTROL "Notify in contact list", IDC_PSEUDOCONTACTENABLED, BUTTON, BS_AUTOCHECKBOX | WS_TABSTOP, 3, 83, 271, 14
- CONTROL "Clear pseudocontact history before adding new events", IDC_CLEARPSEUDOCONTACTLOG, BUTTON, BS_AUTOCHECKBOX | WS_TABSTOP, 17, 97, 254, 15
- CONTROL "Supress foreign popups for pseudocontact", IDC_SUPRESSFOREIGN, BUTTON, BS_AUTOCHECKBOX | WS_TABSTOP, 17, 111, 254, 15
- CONTROL "Mark history event read when popup closed", IDC_MARKEVENTREAD, BUTTON, BS_AUTOCHECKBOX | WS_TABSTOP, 3, 128, 300, 15
- CONTROL "Add message snip to notification", IDC_ADDSNIP, BUTTON, BS_AUTOCHECKBOX | WS_TABSTOP, 3, 146, 300, 15
- CONTROL "Try to login before open mailbox", IDC_AUTHONMAILBOX, BUTTON, BS_AUTOCHECKBOX | WS_TABSTOP, 3, 164, 300, 15
- CONTROL "This works only if password is saved in the database. Has no effect on links in pseudocontact message log", IDC_AUTHONMAILBOXLABEL, STATIC, SS_LEFT, 15, 178, 280, 26
- CONTROL "Choose GMail view you use in web interface", IDC_MAILBOXVIEWLABEL, STATIC, SS_LEFT, 3, 200, 280, 15
- CONTROL "I don't know", IDC_UNKNOWNVIEW, BUTTON, BS_AUTORADIOBUTTON | WS_TABSTOP, 17, 212, 50, 8
- CONTROL "Standard view", IDC_STANDARDVIEW, BUTTON, BS_AUTORADIOBUTTON | WS_TABSTOP, 80, 212, 60, 8
- CONTROL "Basic HTML", IDC_HTMLVIEW, BUTTON, BS_AUTORADIOBUTTON | WS_TABSTOP, 150, 212, 60, 8
-}
-
-IDD_POPUPSETTINGS DIALOGEX 0, 0, 304, 55
-STYLE DS_SETFONT | DS_FIXEDSYS | WS_CHILD
-EXSTYLE WS_EX_CONTROLPARENT
-FONT 8, "MS Shell Dlg", 0, 0, 0x1
-{
- GROUPBOX "", IDC_GROUP, 0, 0, 304, 55
- CONTROL "Background color", IDC_BACKCOLORLABEL, STATIC, SS_LEFT, 10, 10, 60, 15
- CONTROL "", IDC_BACKCOLORPICKER, WNDCLASS_COLOURPICKER, WS_TABSTOP, 70, 10, 39, 10
- CONTROL "Text color", IDC_TEXTCOLORLABEL, STATIC, SS_LEFT, 10, 25, 50, 15
- CONTROL "", IDC_TEXTCOLORPICKER, WNDCLASS_COLOURPICKER, WS_TABSTOP, 70, 25, 39, 10
- CONTROL "Timeout", IDC_TIMEOUTLABEL, STATIC, SS_LEFT, 10, 40, 50, 13
- CONTROL "", IDC_TIMEOUTEDIT, EDIT, WS_TABSTOP | WS_BORDER | ES_NUMBER, 70, 40, 39, 10
- CONTROL "If both colors set to the same value, default colors will be used", IDC_DEFCOLORSLABEL, STATIC, SS_LEFT, 120, 10, 120, 25
- CONTROL "0 means default timeout", IDC_DEFTIMEOUTLABEL, STATIC, SS_LEFT, 120, 40, 120, 10
- CONTROL "Test", IDC_TESTBUTTON, BUTTON, WS_TABSTOP, 245, 17, 50, 25
-}
-
-LANGUAGE LANG_ENGLISH,SUBLANG_ENGLISH_US
-
-
-
-
-VS_VERSION_INFO VERSIONINFO
- FILEVERSION PLUGIN_FILE_VERSION
- PRODUCTVERSION PLUGIN_FILE_VERSION
- FILEFLAGSMASK 0x3fL
-#ifdef _DEBUG
- FILEFLAGS 0x1L
-#else
- FILEFLAGS 0x0L
-#endif
- FILEOS 0x40004L
- FILETYPE 0x2L
- FILESUBTYPE 0x0L
-{
- BLOCK "StringFileInfo"
- {
- BLOCK "040904b0"
- {
- VALUE "FileDescription", PLUGIN_DESCRIPTION
- VALUE "FileVersion", PLUGIN_VERSION_STRING
- VALUE "InternalName", SHORT_PLUGIN_NAME
- VALUE "LegalCopyright", COPYRIGHT_STRING
- VALUE "OriginalFilename", SHORT_PLUGIN_NAME ".dll"
- VALUE "PrivateBuild", "Yes"
- VALUE "ProductName", PLUGIN_DESCRIPTION
- VALUE "ProductVersion", PLUGIN_VERSION_STRING
- }
- }
- BLOCK "VarFileInfo"
- {
- VALUE "Translation", 0x409, 1200
- }
-}
-
-IDI_POPUP ICON "res\\PopupIcon.ico"
-IDI_PSEUDOAVA PNG "res\\pseudoava.png" \ No newline at end of file
diff --git a/gtalkext/resources.h b/gtalkext/resources.h
deleted file mode 100644
index d72e34d..0000000
--- a/gtalkext/resources.h
+++ /dev/null
@@ -1,67 +0,0 @@
-//***************************************************************************************
-//
-// Google Extension plugin for the Miranda IM's Jabber protocol
-// Copyright (c) 2011 bems@jabber.org, George Hazan (ghazan@jabber.ru)
-//
-// 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 SHORT_PLUGIN_NAME "GTalkExt"
-
-#define IDD_MAILSETTINGS 2001
-
-#define IDC_BASE 1001
-#define IDC_POPUPSENABLED IDC_BASE + 0
-#define IDC_PSEUDOCONTACTENABLED IDC_BASE + 1
-#define IDC_CLEARPSEUDOCONTACTLOG IDC_BASE + 2
-#define IDC_POPUPSINFULLSCREEN IDC_BASE + 3
-#define IDC_SUPRESSFOREIGN IDC_BASE + 4
-#define IDC_MARKEVENTREAD IDC_BASE + 5
-#define IDC_AUTHONMAILBOX IDC_BASE + 6
-#define IDC_ADDSNIP IDC_BASE + 7
-#define IDC_UNKNOWNVIEW IDC_BASE + 8
-#define IDC_STANDARDVIEW IDC_BASE + 9
-#define IDC_HTMLVIEW IDC_BASE + 10
-#define IDC_POPUPSINFULLSCREENLABEL IDC_BASE + 32
-#define IDC_NOTE IDC_BASE + 33
-#define IDC_WARNBAR IDC_BASE + 34
-#define IDC_AUTHONMAILBOXLABEL IDC_BASE + 35
-#define IDC_MAILBOXVIEWLABEL IDC_BASE + 36
-
-#define IDD_POPUPSETTINGS 2002
-
-#define IDC_BACKCOLORLABEL 1001
-#define IDC_BACKCOLORPICKER 1002
-#define IDC_TEXTCOLORLABEL 1003
-#define IDC_TEXTCOLORPICKER 1004
-#define IDC_TIMEOUTLABEL 1005
-#define IDC_TIMEOUTEDIT 1006
-#define IDC_DEFCOLORSLABEL 1007
-#define IDC_DEFTIMEOUTLABEL 1008
-#define IDC_TESTBUTTON 1009
-#define IDC_GROUP 1010
-
-#define IDI_POPUP 3001
-#define IDI_PSEUDOAVA 3002
-
-#define PLUGIN_VERSION_STRING "0.0.0.20 BETA"
-#define PLUGIN_FILE_VERSION 0, 0, 0, 20
-#define PLUGIN_VERSION_DWORD PLUGIN_MAKE_VERSION(0, 0, 0, 20)
-
-#define PLUGIN_DESCRIPTION "GTalk extensions for Jabber protocol"
-#define COPYRIGHT_STRING "2010, 11 bems"
diff --git a/gtalkext/stdafx.cpp b/gtalkext/stdafx.cpp
deleted file mode 100644
index bdf32c5..0000000
--- a/gtalkext/stdafx.cpp
+++ /dev/null
@@ -1,25 +0,0 @@
-//***************************************************************************************
-//
-// Google Extension plugin for the Miranda IM's Jabber protocol
-// Copyright (c) 2011 bems@jabber.org, George Hazan (ghazan@jabber.ru)
-//
-// 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 "stdafx.h"
-
-// TODO: reference any additional headers you need in STDAFX.H
-// and not in this file
diff --git a/gtalkext/stdafx.h b/gtalkext/stdafx.h
deleted file mode 100644
index 0b5b27d..0000000
--- a/gtalkext/stdafx.h
+++ /dev/null
@@ -1,73 +0,0 @@
-//***************************************************************************************
-//
-// Google Extension plugin for the Miranda IM's Jabber protocol
-// Copyright (c) 2011 bems@jabber.org, George Hazan (ghazan@jabber.ru)
-//
-// 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
-
-#include "targetver.h"
-
-#define WIN32_LEAN_AND_MEAN // Exclude rarely-used stuff from Windows headers
-#define _CRT_SECURE_NO_WARNINGS
-
-#if defined( UNICODE ) && !defined( _UNICODE )
- #define _UNICODE
-#endif
-
-#include <assert.h>
-#include <malloc.h>
-#include <time.h>
-#include <stdlib.h>
-#include <tchar.h>
-
-// Windows Header Files:
-#include <windows.h>
-#include <windowsx.h>
-#include <PrSht.h>
-#include <shellapi.h>
-
-#include <psapi.h>
-#pragma comment(lib, "psapi.lib")
-
-#include <winsock.h>
-
-// Miranda&Plugins API
-#include <newpluginapi.h>
-#include <m_database.h>
-
-#pragma warning(push)
-#pragma warning(disable:4996)
-
-#include <m_system.h>
-#include <m_popup.h>
-#include <m_jabber.h>
-#include <m_langpack.h>
-#include <m_protosvc.h>
-#include <m_protomod.h>
-#include <m_options.h>
-#include <m_utils.h>
-#include <m_clist.h>
-#include <m_avatars.h>
-#include <m_netlib.h>
-#pragma warning(pop)
-
-#if _MSC_VER < 1400
- #define _tstoi64 _ttoi
- #define _tcstoui64(A,B,C) _ttoi(A)
-#endif \ No newline at end of file
diff --git a/gtalkext/targetver.h b/gtalkext/targetver.h
deleted file mode 100644
index 710b059..0000000
--- a/gtalkext/targetver.h
+++ /dev/null
@@ -1,47 +0,0 @@
-//***************************************************************************************
-//
-// Google Extension plugin for the Miranda IM's Jabber protocol
-// Copyright (c) 2011 bems@jabber.org, George Hazan (ghazan@jabber.ru)
-//
-// 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
-
-// The following macros define the minimum required platform. The minimum required platform
-// is the earliest version of Windows, Internet Explorer etc. that has the necessary features to run
-// your application. The macros work by enabling all features available on platform versions up to and
-// including the version specified.
-
-// Modify the following defines if you have to target a platform prior to the ones specified below.
-// Refer to MSDN for the latest info on corresponding values for different platforms.
-#ifndef WINVER // Specifies that the minimum required platform is Windows Vista.
-#define WINVER 0x0600 // Change this to the appropriate value to target other versions of Windows.
-#endif
-
-#ifndef _WIN32_WINNT // Specifies that the minimum required platform is Windows Vista.
-#define _WIN32_WINNT 0x0600 // Change this to the appropriate value to target other versions of Windows.
-#endif
-
-#ifndef _WIN32_WINDOWS // Specifies that the minimum required platform is Windows 98.
-#define _WIN32_WINDOWS 0x0410 // Change this to the appropriate value to target Windows Me or later.
-#endif
-
-#ifndef _WIN32_IE // Specifies that the minimum required platform is Internet Explorer 7.0.
-#define _WIN32_IE 0x0700 // Change this to the appropriate value to target other versions of IE.
-#endif
-
-#define MIRANDA_VER 0x800
diff --git a/gtalkext/tipper_items.cpp b/gtalkext/tipper_items.cpp
deleted file mode 100644
index f09be10..0000000
--- a/gtalkext/tipper_items.cpp
+++ /dev/null
@@ -1,157 +0,0 @@
-//***************************************************************************************
-//
-// Google Extension plugin for the Miranda IM's Jabber protocol
-// Copyright (c) 2011 bems@jabber.org, George Hazan (ghazan@jabber.ru)
-//
-// 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 "StdAfx.h"
-#include "tipper_items.h"
-#include "resources.h"
-
-static const int MAX_TIPPER_ITEM_PROP = 6 ;
-
-static const LPSTR VALUE_SETTING_PROP = "DIValue%d";
-static const LPSTR LABEL_SETTING_PROP = "DILabel%d";
-
-static const LPSTR LAST_WRITTEN_LABEL_SETTING = "LastWrittenTipperLabel";
-
-static LPSTR TipperItemProps[MAX_TIPPER_ITEM_PROP] = {
- LABEL_SETTING_PROP,
- "DILineAbove%d",
- "DITipperVarsFirst%d",
- "DIValNewline%d",
- VALUE_SETTING_PROP,
- "DIVisible%d"
-};
-
-static const LPSTR TIPPER_ITEMS_MOD_NAME = "Tipper_Items";
-static const LPSTR TIPPER_ITEM_COUNT_SETTING = "DINumValues";
-static const LPTSTR UNREAD_THREADS_RAW = _T("%raw:") _T(SHORT_PLUGIN_NAME) _T("/UnreadThreads%");
-static const LPTSTR UNREAD_THREADS_LABEL = _T("Unread threads:");
-
-void ShiftTipperSettings(LPSTR buff, int count, LPSTR format)
-{
- for (int i = count; i > 0; i--) {
- DBCONTACTWRITESETTING cws;
- DBCONTACTGETSETTING cgs;
- cgs.szModule = TIPPER_ITEMS_MOD_NAME;
- sprintf(buff, format, i - 1);
- cgs.szSetting = buff;
- cgs.pValue = &cws.value;
-
- if (CallService(MS_DB_CONTACT_GETSETTING, 0, (LPARAM)&cgs)) break;
- __try {
- if (DBVT_ASCIIZ == cws.value.type) {
- DBFreeVariant(&cws.value);
- cws.value.type = DBVT_WCHAR;
- if (CallService(MS_DB_CONTACT_GETSETTING_STR, 0, (LPARAM)&cgs)) break;
- }
-
- if (CallService(MS_DB_CONTACT_GETSETTING_STR, 0, (LPARAM)&cgs)) break;
-
- cws.szModule = TIPPER_ITEMS_MOD_NAME;
- sprintf(buff, format, i);
- cws.szSetting = buff;
- CallService(MS_DB_CONTACT_WRITESETTING, 0, (LPARAM)&cws);
- }
- __finally {
- DBFreeVariant(&cws.value);
- }
- }
-}
-
-void SetLabelProp(int index, LPSTR setting)
-{
- sprintf(setting, LABEL_SETTING_PROP, index);
-
- DBVARIANT dbv1 = {0};
- if (!DBGetContactSettingTString(0, TIPPER_ITEMS_MOD_NAME, setting, &dbv1))
- __try {
- DBVARIANT dbv2 = {0};
- if (!DBGetContactSettingTString(0, SHORT_PLUGIN_NAME, LAST_WRITTEN_LABEL_SETTING, &dbv2))
- __try {
- if (!lstrcmp(dbv1.ptszVal, dbv2.ptszVal)) {
- LPTSTR label = TranslateTS(UNREAD_THREADS_LABEL);
- DBWriteContactSettingTString(0, SHORT_PLUGIN_NAME, LAST_WRITTEN_LABEL_SETTING, label);
- DBWriteContactSettingTString(0, TIPPER_ITEMS_MOD_NAME, setting, label);
- }
- }
- __finally {
- DBFreeVariant(&dbv2);
- }
- }
- __finally {
- DBFreeVariant(&dbv1);
- }
-}
-
-void AddTipperItem()
-{
- unsigned short itemCount = DBGetContactSettingWord(0, TIPPER_ITEMS_MOD_NAME,
- TIPPER_ITEM_COUNT_SETTING , unsigned short(-1));
- if (unsigned short(-1) == itemCount) return;
-
- int i, l = 0;
- for (i = itemCount; i > 0; i /= 10) l++; // var setting path
- l += 30; // const setting part
-
- LPSTR setting = (LPSTR)malloc(l * sizeof(TCHAR));
- __try {
- for (i = 0; i < itemCount; i++) {
- sprintf(setting, VALUE_SETTING_PROP, i);
-
- DBVARIANT dbv = {0};
- if (!DBGetContactSettingTString(0, TIPPER_ITEMS_MOD_NAME, setting, &dbv))
- __try {
- if (!lstrcmp(UNREAD_THREADS_RAW, dbv.ptszVal)) {
- SetLabelProp(i, setting);
- return;
- }
- }
- __finally {
- DBFreeVariant(&dbv);
- }
- }
-
- for (i = 0; i < MAX_TIPPER_ITEM_PROP; i++)
- ShiftTipperSettings(setting, itemCount, TipperItemProps[i]);
-
- #define WRITE_TIPPER_PROP(type, index, value)\
- sprintf(setting, TipperItemProps[##index##], 0);\
- DBWriteContactSetting##type##(0, TIPPER_ITEMS_MOD_NAME, setting, ##value##)
-
- LPTSTR label = TranslateTS(UNREAD_THREADS_LABEL);
-
- DBWriteContactSettingTString(0, SHORT_PLUGIN_NAME, LAST_WRITTEN_LABEL_SETTING, label);
-
- WRITE_TIPPER_PROP(TString, 0, label);
- WRITE_TIPPER_PROP(Byte, 1, 0);
- WRITE_TIPPER_PROP(Byte, 2, 0);
- WRITE_TIPPER_PROP(Byte, 3, 0);
- WRITE_TIPPER_PROP(TString, 4, UNREAD_THREADS_RAW);
- WRITE_TIPPER_PROP(Byte, 5, 1);
-
- #undef WRITE_TIPPER_PROP
- }
- __finally {
- free(setting);
- }
-
- DBWriteContactSettingWord(0, TIPPER_ITEMS_MOD_NAME,
- TIPPER_ITEM_COUNT_SETTING, itemCount + 1);
-} \ No newline at end of file
diff --git a/gtalkext/tipper_items.h b/gtalkext/tipper_items.h
deleted file mode 100644
index 0b94d1f..0000000
--- a/gtalkext/tipper_items.h
+++ /dev/null
@@ -1,24 +0,0 @@
-//***************************************************************************************
-//
-// Google Extension plugin for the Miranda IM's Jabber protocol
-// Copyright (c) 2011 bems@jabber.org, George Hazan (ghazan@jabber.ru)
-//
-// 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
-
-void AddTipperItem(); \ No newline at end of file