summaryrefslogtreecommitdiff
path: root/protocols/Yahoo/util.cpp
diff options
context:
space:
mode:
authorKirill Volinsky <mataes2007@gmail.com>2012-10-14 08:19:21 +0000
committerKirill Volinsky <mataes2007@gmail.com>2012-10-14 08:19:21 +0000
commite179ffc995c96568bfdce46ac73f58d569166f05 (patch)
treeee2dfd530b75ef4ae06cb7079c923fe7e2fbafa8 /protocols/Yahoo/util.cpp
parentd722261be7a0cd3aa259aa285aea7f936c0e2f0e (diff)
Yahoo: folders restructurization
git-svn-id: http://svn.miranda-ng.org/main/trunk@1918 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c
Diffstat (limited to 'protocols/Yahoo/util.cpp')
-rw-r--r--protocols/Yahoo/util.cpp351
1 files changed, 0 insertions, 351 deletions
diff --git a/protocols/Yahoo/util.cpp b/protocols/Yahoo/util.cpp
deleted file mode 100644
index 977d0b43cc..0000000000
--- a/protocols/Yahoo/util.cpp
+++ /dev/null
@@ -1,351 +0,0 @@
-/*
- * $Id: util.cpp 13557 2011-04-09 02:26:58Z borkra $
- *
- * myYahoo Miranda Plugin
- *
- * Authors: Gennady Feldman (aka Gena01)
- * Laurent Marechal (aka Peorth)
- *
- * This code is under GPL and is based on AIM, MSN and Miranda source code.
- * I want to thank Robert Rainwater and George Hazan for their code and support
- * and for answering some of my questions during development of this plugin.
- */
-#include "yahoo.h"
-#include <windowsx.h>
-#include <m_popup.h>
-#include <m_protomod.h>
-#include <m_protosvc.h>
-#include <m_langpack.h>
-#include <m_skin.h>
-#include <m_utils.h>
-#include <m_options.h>
-
-#include "resource.h"
-
-void CYahooProto::YCreateService( const char* szService, YServiceFunc serviceProc )
-{
- char str[ 255 ];
- unsigned int len;
-
- len = snprintf(str, sizeof(str), "%s%s", m_szModuleName, szService);
-
- if (len >= sizeof(str)) {
- DebugLog("[YCreateService] Failed Registering Service: %s. Reason: buffer too small?", szService);
- return;
- }
-
- ::CreateServiceFunctionObj( str, ( MIRANDASERVICEOBJ )*( void** )&serviceProc, this );
-}
-
-void CYahooProto::YForkThread( YThreadFunc pFunc, void *param )
-{
- UINT lthreadID;
-
- CloseHandle(( HANDLE )::mir_forkthreadowner(( pThreadFuncOwner ) *( void** )&pFunc, this, param, &lthreadID));
-}
-
-void CYahooProto::YHookEvent( const char* szEvent, YEventFunc handler )
-{
- ::HookEventObj( szEvent, ( MIRANDAHOOKOBJ )*( void** )&handler, this );
-}
-
-int CYahooProto::DebugLog( const char *fmt, ... )
-{
- char str[ 4096 ];
- va_list vararg;
- va_start( vararg, fmt );
-
- int tBytes = _vsnprintf( str, sizeof( str ), fmt, vararg );
- if ( tBytes > 0 )
- str[ tBytes ] = 0;
-
- va_end( vararg );
-
- return CallService( MS_NETLIB_LOG, ( WPARAM )m_hNetlibUser, ( LPARAM )str );
-}
-
-extern HANDLE g_hNetlibUser;
-
-int DebugLog( const char *fmt, ... )
-{
- char str[ 4096 ];
- va_list vararg;
- va_start( vararg, fmt );
-
- int tBytes = _vsnprintf( str, sizeof( str ), fmt, vararg );
- if ( tBytes > 0 )
- str[ tBytes ] = 0;
-
- va_end( vararg );
-
- return CallService( MS_NETLIB_LOG, ( WPARAM )g_hNetlibUser, ( LPARAM )str );
-}
-
-int CYahooProto::GetByte( const char* valueName, int parDefltValue )
-{
- return DBGetContactSettingByte( NULL, m_szModuleName, valueName, parDefltValue );
-}
-
-int CYahooProto::SetByte( const char* valueName, int parValue )
-{
- return DBWriteContactSettingByte( NULL, m_szModuleName, valueName, parValue );
-}
-
-int CYahooProto::GetByte( HANDLE hContact, const char* valueName, int parDefltValue )
-{
- return DBGetContactSettingByte( hContact, m_szModuleName, valueName, parDefltValue );
-}
-
-int CYahooProto::SetByte( HANDLE hContact, const char* valueName, int parValue )
-{
- return DBWriteContactSettingByte( hContact, m_szModuleName, valueName, parValue );
-}
-
-
-DWORD CYahooProto::GetDword( HANDLE hContact, const char* valueName, DWORD parDefltValue )
-{
- return DBGetContactSettingDword( hContact, m_szModuleName, valueName, parDefltValue );
-}
-
-DWORD CYahooProto::SetDword( const char* valueName, DWORD parValue )
-{
- return DBWriteContactSettingDword( NULL, m_szModuleName, valueName, parValue);
-}
-
-DWORD CYahooProto::GetDword( const char* valueName, DWORD parDefltValue )
-{
- return DBGetContactSettingDword( NULL, m_szModuleName, valueName, parDefltValue );
-}
-
-DWORD CYahooProto::SetDword( HANDLE hContact, const char* valueName, DWORD parValue )
-{
- return DBWriteContactSettingDword( hContact, m_szModuleName, valueName, parValue);
-}
-
-
-WORD CYahooProto::SetWord( HANDLE hContact, const char* valueName, int parValue )
-{
- return DBWriteContactSettingWord( hContact, m_szModuleName, valueName, parValue );
-}
-
-WORD CYahooProto::GetWord( HANDLE hContact, const char* valueName, int parDefltValue )
-{
- return DBGetContactSettingWord( hContact, m_szModuleName, valueName, parDefltValue );
-}
-
-DWORD CYahooProto::Set_Protocol( HANDLE hContact, int protocol )
-{
- char *s=NULL;
-
- SetWord(hContact, "yprotoid", protocol);
-
- switch (protocol) {
- case YAHOO_IM_YAHOO: s = "Yahoo"; break; /* Yahoo, nothing special here */
- case YAHOO_IM_MSN: s = "Windows Live (MSN)"; break;
- case YAHOO_IM_LCS: s = "LCS"; break;
- case YAHOO_IM_SAMETIME: s = "Lotus Sametime"; break;
- }
-
- if (protocol != YAHOO_IM_YAHOO)
- SetString(hContact, "MirVer", s);
-
- SetString(hContact, "Transport", s);
- return 0;
-}
-
-int CYahooProto::SendBroadcast( HANDLE hContact, int type, int result, HANDLE hProcess, LPARAM lParam )
-{
- ACKDATA ack;
-
- ZeroMemory(&ack, sizeof(ack));
-
- ack.cbSize = sizeof( ACKDATA );
- ack.szModule = m_szModuleName;
- ack.hContact = hContact;
- ack.type = type;
- ack.result = result;
- ack.hProcess = hProcess;
- ack.lParam = lParam;
- return CallService( MS_PROTO_BROADCASTACK, 0, ( LPARAM )&ack );
-}
-
-int CYahooProto::GetString( const char* name, DBVARIANT* result )
-{ return DBGetContactSettingString( NULL, m_szModuleName, name, result );
-}
-
-int CYahooProto::GetString( HANDLE hContact, const char* name, DBVARIANT* result )
-{ return DBGetContactSettingString( hContact, m_szModuleName, name, result );
-}
-
-int CYahooProto::GetStringUtf( HANDLE hContact, const char* name, DBVARIANT* result )
-{ return DBGetContactSettingStringUtf(hContact, m_szModuleName, name, result);
-}
-
-void CYahooProto::SetString( const char* name, const char* value )
-{ DBWriteContactSettingString(NULL, m_szModuleName, name, value );
-}
-
-void CYahooProto::SetString( HANDLE hContact, const char* name, const char* value )
-{ DBWriteContactSettingString(hContact, m_szModuleName, name, value );
-}
-
-void CYahooProto::SetStringT( HANDLE hContact, const char* name, const TCHAR* value )
-{ DBWriteContactSettingTString(hContact, m_szModuleName, name, value );
-}
-
-DWORD CYahooProto::SetStringUtf( HANDLE hContact, const char* valueName, const char* parValue )
-{
- return DBWriteContactSettingStringUtf( hContact, m_szModuleName, valueName, parValue );
-}
-
-/////////////////////////////////////////////////////////////////////////////////////////
-// Popups
-
-static int CALLBACK PopupWindowProc( HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam )
-{
- switch( message ) {
- case WM_COMMAND:
- DebugLog("[PopupWindowProc] WM_COMMAND");
- if ( HIWORD( wParam ) == STN_CLICKED) {
- char *szURL = (char *)PUGetPluginData( hWnd );
- if ( szURL != NULL )
- CallService( MS_UTILS_OPENURL, TRUE, ( LPARAM )szURL );
-
- PUDeletePopUp( hWnd );
- return 0;
- }
- break;
-
- case WM_CONTEXTMENU:
- DebugLog("[PopupWindowProc] WM_CONTEXTMENU");
- PUDeletePopUp( hWnd );
- return TRUE;
-
- case UM_FREEPLUGINDATA:
- DebugLog("[PopupWindowProc] UM_FREEPLUGINDATA");
- {
- char *szURL = (char *)PUGetPluginData( hWnd );
- if ( szURL != NULL )
- free(szURL);
- }
-
- return TRUE;
- }
-
- return DefWindowProc(hWnd, message, wParam, lParam);
-}
-
-int CYahooProto::ShowPopup( const char* nickname, const char* msg, const char *szURL )
-{
- POPUPDATAEX ppd;
-
- if ( !ServiceExists( MS_POPUP_ADDPOPUPEX ))
- return 0;
-
- ZeroMemory(&ppd, sizeof(ppd));
- lstrcpyA( ppd.lpzContactName, nickname );
- lstrcpyA( ppd.lpzText, msg );
-
- ppd.PluginWindowProc = ( WNDPROC )PopupWindowProc;
-
- if (szURL != NULL) {
- if (lstrcmpiA(szURL, "http://mail.yahoo.com") == 0) {
- ppd.lchIcon = LoadIconEx( "mail" );
- } else {
- ppd.lchIcon = LoadIconEx( "calendar" );
- }
-
- ppd.PluginData = (void *) strdup( szURL );
- } else {
- ppd.lchIcon = LoadIconEx( "yahoo" );
- }
-
- DebugLog("[MS_POPUP_ADDPOPUPEX] Generating a popup for [%s] %s", nickname, msg);
-
- CallService( MS_POPUP_ADDPOPUPEX, (WPARAM)&ppd, 0 );
-
- return 1;
-}
-
-int CYahooProto::ShowNotification(const char *title, const char *info, DWORD flags)
-{
- if (ServiceExists(MS_CLIST_SYSTRAY_NOTIFY)) {
- MIRANDASYSTRAYNOTIFY err;
- int ret;
-
- err.szProto = m_szModuleName;
- err.cbSize = sizeof(err);
- err.szInfoTitle = (char *)title;
- err.szInfo = (char *)info;
- err.dwInfoFlags = flags;
- err.uTimeout = 1000 * 3;
- ret = CallService(MS_CLIST_SYSTRAY_NOTIFY, 0, (LPARAM) & err);
-
- if (ret == 0)
- return 1;
- }
-
- MessageBoxA(NULL, info, title, MB_OK | MB_ICONINFORMATION);
- return 0;
-}
-
-void CYahooProto::ShowError(const char *title, const char *buff)
-{
- if (GetByte( "ShowErrors", 1 ))
- if (!ShowPopup(title, buff, NULL))
- ShowNotification(title, buff, NIIF_ERROR);
-}
-
-int __cdecl CYahooProto::OnSettingChanged(WPARAM wParam, LPARAM lParam)
-{
- DBCONTACTWRITESETTING *cws = (DBCONTACTWRITESETTING *) lParam;
-
- if (!wParam || !m_bLoggedIn)
- return 0;
-
- if (!strcmp(cws->szSetting, "ApparentMode")) {
- DBVARIANT dbv;
-
- DebugLog("DB Setting changed. YAHOO user's visible setting changed.");
-
- if (!GetString((HANDLE)wParam, YAHOO_LOGINID, &dbv)) {
- int iAdd = (ID_STATUS_OFFLINE == GetWord((HANDLE) wParam, "ApparentMode", 0));
- stealth(dbv.pszVal, iAdd);
- DBFreeVariant(&dbv);
- }
- }
- return 0;
-}
-
-bool CYahooProto::IsMyContact(HANDLE hContact)
-{
- if (!hContact) return false;
-
- char* szProto = (char*)CallService(MS_PROTO_GETCONTACTBASEPROTO, (WPARAM)hContact, 0);
- return szProto && !strcmp(szProto, m_szModuleName);
-}
-
-char* YAHOO_GetContactName( HANDLE hContact )
-{
- return ( char* )CallService( MS_CLIST_GETCONTACTDISPLAYNAME, (WPARAM) hContact, 0 );
-}
-
-extern PLUGININFOEX pluginInfo;
-
-/*
- * Thanks Robert for the following function. Copied from AIM plugin.
- */
-void CYahooProto::YAHOO_utils_logversion()
-{
- char str[256];
- _snprintf(str, sizeof(str), "Yahoo v%d.%d.%d.%d", (pluginInfo.version >> 24) & 0xFF, (pluginInfo.version >> 16) & 0xFF,
- (pluginInfo.version >> 8) & 0xFF, pluginInfo.version & 0xFF);
- DebugLog(str);
-}
-
-void SetButtonCheck(HWND hwndDlg, int CtrlID, BOOL bCheck)
-{
- HWND hwndCtrl = GetDlgItem(hwndDlg, CtrlID);
-
- Button_SetCheck(hwndCtrl, (bCheck)?BST_CHECKED:BST_UNCHECKED);
-}