diff options
101 files changed, 2213 insertions, 3023 deletions
diff --git a/include/m_icq.h b/include/m_icq.h index 3afb3b7b42..a3b5855619 100644 --- a/include/m_icq.h +++ b/include/m_icq.h @@ -186,4 +186,24 @@ typedef struct { // -1 delayed (rate control) - sequence unknown
#define PS_ICQ_REQUESTCUSTOMSTATUS "/RequestXStatusDetails"
+#define MAX_CAPNAME 64 +typedef struct +{ + int cbSize; + char caps[0x10]; + HANDLE hIcon; + char name[MAX_CAPNAME]; +} ICQ_CUSTOMCAP; + +// Add a custom icq capability. +// wParam = 0; +// lParam = (LPARAM)(ICQ_CUSTOMCAP *)&icqCustomCap; +#define PS_ICQ_ADDCAPABILITY "/IcqAddCapability" + +// Check if capability is supportes. Only icqCustomCap.caps does matter. +// wParam = (WPARAM)(HANDLE)hContact; +// lParam = (LPARAM)(ICQ_CUSTOMCAP *)&icqCustomCap; +// returns non-zero if capability is supported +#define PS_ICQ_CHECKCAPABILITY "/IcqCheckCapability" +
#endif // M_ICQ_H__
diff --git a/plugins/ExternalAPI/delphi/imgdecoder.pas b/plugins/!Deprecated/ExternalAPI/delphi/imgdecoder.pas index eea6ec2610..eea6ec2610 100644 --- a/plugins/ExternalAPI/delphi/imgdecoder.pas +++ b/plugins/!Deprecated/ExternalAPI/delphi/imgdecoder.pas diff --git a/plugins/ExternalAPI/delphi/m_DataAsMessage.inc b/plugins/!Deprecated/ExternalAPI/delphi/m_DataAsMessage.inc index 71bfcc059d..71bfcc059d 100644 --- a/plugins/ExternalAPI/delphi/m_DataAsMessage.inc +++ b/plugins/!Deprecated/ExternalAPI/delphi/m_DataAsMessage.inc diff --git a/plugins/ExternalAPI/delphi/m_anismiley.inc b/plugins/!Deprecated/ExternalAPI/delphi/m_anismiley.inc index f16005fe51..f16005fe51 100644 --- a/plugins/ExternalAPI/delphi/m_anismiley.inc +++ b/plugins/!Deprecated/ExternalAPI/delphi/m_anismiley.inc diff --git a/plugins/ExternalAPI/delphi/m_autoreplacer.inc b/plugins/!Deprecated/ExternalAPI/delphi/m_autoreplacer.inc index bc1d528463..bc1d528463 100644 --- a/plugins/ExternalAPI/delphi/m_autoreplacer.inc +++ b/plugins/!Deprecated/ExternalAPI/delphi/m_autoreplacer.inc diff --git a/plugins/ExternalAPI/delphi/m_contactdir.inc b/plugins/!Deprecated/ExternalAPI/delphi/m_contactdir.inc index 1b21717753..1b21717753 100644 --- a/plugins/ExternalAPI/delphi/m_contactdir.inc +++ b/plugins/!Deprecated/ExternalAPI/delphi/m_contactdir.inc diff --git a/plugins/ExternalAPI/delphi/m_db3xsa.inc b/plugins/!Deprecated/ExternalAPI/delphi/m_db3xsa.inc index 77ac666967..77ac666967 100644 --- a/plugins/ExternalAPI/delphi/m_db3xsa.inc +++ b/plugins/!Deprecated/ExternalAPI/delphi/m_db3xsa.inc diff --git a/plugins/ExternalAPI/delphi/m_ersatz.inc b/plugins/!Deprecated/ExternalAPI/delphi/m_ersatz.inc index 553194eee2..553194eee2 100644 --- a/plugins/ExternalAPI/delphi/m_ersatz.inc +++ b/plugins/!Deprecated/ExternalAPI/delphi/m_ersatz.inc diff --git a/plugins/ExternalAPI/delphi/m_fuse.inc b/plugins/!Deprecated/ExternalAPI/delphi/m_fuse.inc index 82b002b5db..82b002b5db 100644 --- a/plugins/ExternalAPI/delphi/m_fuse.inc +++ b/plugins/!Deprecated/ExternalAPI/delphi/m_fuse.inc diff --git a/plugins/ExternalAPI/delphi/m_help(plugin).inc b/plugins/!Deprecated/ExternalAPI/delphi/m_help(plugin).inc index 0eb63615d9..0eb63615d9 100644 --- a/plugins/ExternalAPI/delphi/m_help(plugin).inc +++ b/plugins/!Deprecated/ExternalAPI/delphi/m_help(plugin).inc diff --git a/plugins/ExternalAPI/delphi/m_historyevents.inc b/plugins/!Deprecated/ExternalAPI/delphi/m_historyevents.inc index ae582f0eef..ae582f0eef 100644 --- a/plugins/ExternalAPI/delphi/m_historyevents.inc +++ b/plugins/!Deprecated/ExternalAPI/delphi/m_historyevents.inc diff --git a/plugins/ExternalAPI/delphi/m_ircscript.inc b/plugins/!Deprecated/ExternalAPI/delphi/m_ircscript.inc index 0157443e30..0157443e30 100644 --- a/plugins/ExternalAPI/delphi/m_ircscript.inc +++ b/plugins/!Deprecated/ExternalAPI/delphi/m_ircscript.inc diff --git a/plugins/ExternalAPI/delphi/m_keybindings.inc b/plugins/!Deprecated/ExternalAPI/delphi/m_keybindings.inc index e0c31c31e5..e0c31c31e5 100644 --- a/plugins/ExternalAPI/delphi/m_keybindings.inc +++ b/plugins/!Deprecated/ExternalAPI/delphi/m_keybindings.inc diff --git a/plugins/ExternalAPI/delphi/m_langman.inc b/plugins/!Deprecated/ExternalAPI/delphi/m_langman.inc index 4f0079719d..4f0079719d 100644 --- a/plugins/ExternalAPI/delphi/m_langman.inc +++ b/plugins/!Deprecated/ExternalAPI/delphi/m_langman.inc diff --git a/plugins/ExternalAPI/delphi/m_mathmodule.inc b/plugins/!Deprecated/ExternalAPI/delphi/m_mathmodule.inc index a4d10edfa6..a4d10edfa6 100644 --- a/plugins/ExternalAPI/delphi/m_mathmodule.inc +++ b/plugins/!Deprecated/ExternalAPI/delphi/m_mathmodule.inc diff --git a/plugins/ExternalAPI/delphi/m_motd.inc b/plugins/!Deprecated/ExternalAPI/delphi/m_motd.inc index 3b986bf02e..3b986bf02e 100644 --- a/plugins/ExternalAPI/delphi/m_motd.inc +++ b/plugins/!Deprecated/ExternalAPI/delphi/m_motd.inc diff --git a/plugins/ExternalAPI/delphi/m_nickhistory.inc b/plugins/!Deprecated/ExternalAPI/delphi/m_nickhistory.inc index 240fc73b29..240fc73b29 100644 --- a/plugins/ExternalAPI/delphi/m_nickhistory.inc +++ b/plugins/!Deprecated/ExternalAPI/delphi/m_nickhistory.inc diff --git a/plugins/ExternalAPI/delphi/m_simpleaway.inc b/plugins/!Deprecated/ExternalAPI/delphi/m_simpleaway.inc index 16bf2328fb..16bf2328fb 100644 --- a/plugins/ExternalAPI/delphi/m_simpleaway.inc +++ b/plugins/!Deprecated/ExternalAPI/delphi/m_simpleaway.inc diff --git a/plugins/ExternalAPI/delphi/m_smh.inc b/plugins/!Deprecated/ExternalAPI/delphi/m_smh.inc index 134b2075e8..134b2075e8 100644 --- a/plugins/ExternalAPI/delphi/m_smh.inc +++ b/plugins/!Deprecated/ExternalAPI/delphi/m_smh.inc diff --git a/plugins/ExternalAPI/delphi/m_smr.inc b/plugins/!Deprecated/ExternalAPI/delphi/m_smr.inc index d8feacfc6a..d8feacfc6a 100644 --- a/plugins/ExternalAPI/delphi/m_smr.inc +++ b/plugins/!Deprecated/ExternalAPI/delphi/m_smr.inc diff --git a/plugins/ExternalAPI/delphi/m_snapping_windows.inc b/plugins/!Deprecated/ExternalAPI/delphi/m_snapping_windows.inc index e3c513482a..e3c513482a 100644 --- a/plugins/ExternalAPI/delphi/m_snapping_windows.inc +++ b/plugins/!Deprecated/ExternalAPI/delphi/m_snapping_windows.inc diff --git a/plugins/ExternalAPI/delphi/m_spamfilter.inc b/plugins/!Deprecated/ExternalAPI/delphi/m_spamfilter.inc index 54c4729a81..54c4729a81 100644 --- a/plugins/ExternalAPI/delphi/m_spamfilter.inc +++ b/plugins/!Deprecated/ExternalAPI/delphi/m_spamfilter.inc diff --git a/plugins/ExternalAPI/delphi/m_speak.inc b/plugins/!Deprecated/ExternalAPI/delphi/m_speak.inc index 7badc4e0a4..7badc4e0a4 100644 --- a/plugins/ExternalAPI/delphi/m_speak.inc +++ b/plugins/!Deprecated/ExternalAPI/delphi/m_speak.inc diff --git a/plugins/ExternalAPI/delphi/m_voice.inc b/plugins/!Deprecated/ExternalAPI/delphi/m_voice.inc index 5e97094e34..5e97094e34 100644 --- a/plugins/ExternalAPI/delphi/m_voice.inc +++ b/plugins/!Deprecated/ExternalAPI/delphi/m_voice.inc diff --git a/plugins/ExternalAPI/delphi/m_voiceservice.inc b/plugins/!Deprecated/ExternalAPI/delphi/m_voiceservice.inc index ab5872d8d3..ab5872d8d3 100644 --- a/plugins/ExternalAPI/delphi/m_voiceservice.inc +++ b/plugins/!Deprecated/ExternalAPI/delphi/m_voiceservice.inc diff --git a/plugins/ExternalAPI/delphi/m_w7ui.inc b/plugins/!Deprecated/ExternalAPI/delphi/m_w7ui.inc index 3841319ac7..3841319ac7 100644 --- a/plugins/ExternalAPI/delphi/m_w7ui.inc +++ b/plugins/!Deprecated/ExternalAPI/delphi/m_w7ui.inc diff --git a/plugins/ExternalAPI/delphi/m_webcam.inc b/plugins/!Deprecated/ExternalAPI/delphi/m_webcam.inc index 592e28a479..592e28a479 100644 --- a/plugins/ExternalAPI/delphi/m_webcam.inc +++ b/plugins/!Deprecated/ExternalAPI/delphi/m_webcam.inc diff --git a/plugins/ExternalAPI/m_ContactSettings.h b/plugins/!Deprecated/ExternalAPI/m_ContactSettings.h index 1b497ab479..1b497ab479 100644 --- a/plugins/ExternalAPI/m_ContactSettings.h +++ b/plugins/!Deprecated/ExternalAPI/m_ContactSettings.h diff --git a/plugins/ExternalAPI/m_DataAsMessage.h b/plugins/!Deprecated/ExternalAPI/m_DataAsMessage.h index 2f1f2eb441..2f1f2eb441 100644 --- a/plugins/ExternalAPI/m_DataAsMessage.h +++ b/plugins/!Deprecated/ExternalAPI/m_DataAsMessage.h diff --git a/plugins/ExternalAPI/m_LogService.h b/plugins/!Deprecated/ExternalAPI/m_LogService.h index 3acd6be1d6..3acd6be1d6 100644 --- a/plugins/ExternalAPI/m_LogService.h +++ b/plugins/!Deprecated/ExternalAPI/m_LogService.h diff --git a/plugins/ExternalAPI/m_MagneticWindows.h b/plugins/!Deprecated/ExternalAPI/m_MagneticWindows.h index e011c773fd..e011c773fd 100644 --- a/plugins/ExternalAPI/m_MagneticWindows.h +++ b/plugins/!Deprecated/ExternalAPI/m_MagneticWindows.h diff --git a/plugins/ExternalAPI/m_MathModule.h b/plugins/!Deprecated/ExternalAPI/m_MathModule.h index 04ae06a7f7..04ae06a7f7 100644 --- a/plugins/ExternalAPI/m_MathModule.h +++ b/plugins/!Deprecated/ExternalAPI/m_MathModule.h diff --git a/plugins/ExternalAPI/m_autoreplacer.h b/plugins/!Deprecated/ExternalAPI/m_autoreplacer.h index a169edb10c..a169edb10c 100644 --- a/plugins/ExternalAPI/m_autoreplacer.h +++ b/plugins/!Deprecated/ExternalAPI/m_autoreplacer.h diff --git a/plugins/ExternalAPI/m_db3xsa.h b/plugins/!Deprecated/ExternalAPI/m_db3xsa.h index f1e5334fc4..f1e5334fc4 100644 --- a/plugins/ExternalAPI/m_db3xsa.h +++ b/plugins/!Deprecated/ExternalAPI/m_db3xsa.h diff --git a/plugins/ExternalAPI/m_dbx_tree.h b/plugins/!Deprecated/ExternalAPI/m_dbx_tree.h index 073f56043b..073f56043b 100644 --- a/plugins/ExternalAPI/m_dbx_tree.h +++ b/plugins/!Deprecated/ExternalAPI/m_dbx_tree.h diff --git a/plugins/ExternalAPI/m_fortunemsg.h b/plugins/!Deprecated/ExternalAPI/m_fortunemsg.h index bf13dc422c..bf13dc422c 100644 --- a/plugins/ExternalAPI/m_fortunemsg.h +++ b/plugins/!Deprecated/ExternalAPI/m_fortunemsg.h diff --git a/plugins/ExternalAPI/m_hddinfo.h b/plugins/!Deprecated/ExternalAPI/m_hddinfo.h index 3f529ec1ff..3f529ec1ff 100644 --- a/plugins/ExternalAPI/m_hddinfo.h +++ b/plugins/!Deprecated/ExternalAPI/m_hddinfo.h diff --git a/plugins/ExternalAPI/m_help.h b/plugins/!Deprecated/ExternalAPI/m_help.h index ea8557628c..ea8557628c 100644 --- a/plugins/ExternalAPI/m_help.h +++ b/plugins/!Deprecated/ExternalAPI/m_help.h diff --git a/plugins/ExternalAPI/m_icqplus.h b/plugins/!Deprecated/ExternalAPI/m_icqplus.h index 30c5b44a82..30c5b44a82 100755..100644 --- a/plugins/ExternalAPI/m_icqplus.h +++ b/plugins/!Deprecated/ExternalAPI/m_icqplus.h diff --git a/plugins/ExternalAPI/m_ircscript.h b/plugins/!Deprecated/ExternalAPI/m_ircscript.h index ddab3b96bb..ddab3b96bb 100644 --- a/plugins/ExternalAPI/m_ircscript.h +++ b/plugins/!Deprecated/ExternalAPI/m_ircscript.h diff --git a/plugins/ExternalAPI/m_langman.h b/plugins/!Deprecated/ExternalAPI/m_langman.h index 1a7b5bf9c2..1a7b5bf9c2 100644 --- a/plugins/ExternalAPI/m_langman.h +++ b/plugins/!Deprecated/ExternalAPI/m_langman.h diff --git a/plugins/ExternalAPI/m_script.h b/plugins/!Deprecated/ExternalAPI/m_script.h index 2388bbaad1..2388bbaad1 100644 --- a/plugins/ExternalAPI/m_script.h +++ b/plugins/!Deprecated/ExternalAPI/m_script.h diff --git a/plugins/ExternalAPI/m_simpleaway.h b/plugins/!Deprecated/ExternalAPI/m_simpleaway.h index e70dcbf4ac..e70dcbf4ac 100644 --- a/plugins/ExternalAPI/m_simpleaway.h +++ b/plugins/!Deprecated/ExternalAPI/m_simpleaway.h diff --git a/plugins/ExternalAPI/m_snappingwindows.h b/plugins/!Deprecated/ExternalAPI/m_snappingwindows.h index fcfd679913..fcfd679913 100644 --- a/plugins/ExternalAPI/m_snappingwindows.h +++ b/plugins/!Deprecated/ExternalAPI/m_snappingwindows.h diff --git a/plugins/ExternalAPI/m_voice.h b/plugins/!Deprecated/ExternalAPI/m_voice.h index 5adf159f05..5adf159f05 100644 --- a/plugins/ExternalAPI/m_voice.h +++ b/plugins/!Deprecated/ExternalAPI/m_voice.h diff --git a/plugins/ExternalAPI/m_voiceservice.h b/plugins/!Deprecated/ExternalAPI/m_voiceservice.h index 98c3580aea..98c3580aea 100644 --- a/plugins/ExternalAPI/m_voiceservice.h +++ b/plugins/!Deprecated/ExternalAPI/m_voiceservice.h diff --git a/plugins/ExternalAPI/m_w7ui.h b/plugins/!Deprecated/ExternalAPI/m_w7ui.h index 6d8ee28b92..6d8ee28b92 100644 --- a/plugins/ExternalAPI/m_w7ui.h +++ b/plugins/!Deprecated/ExternalAPI/m_w7ui.h diff --git a/plugins/AutoShutdown/res/resource.rc b/plugins/AutoShutdown/res/resource.rc index 222c63cecb..6739278fdc 100644 --- a/plugins/AutoShutdown/res/resource.rc +++ b/plugins/AutoShutdown/res/resource.rc @@ -71,8 +71,6 @@ BEGIN LTEXT "Automatically shutdown the computer and turn the power off when one of the following occurs:",IDC_STATIC,12,128,273,18,SS_NOPREFIX
CONTROL "&Thunderstorm warning is issued (Weather)",IDC_CHECK_WEATHER,
"Button",BS_AUTOCHECKBOX | BS_TOP | WS_DISABLED | WS_TABSTOP,12,150,273,11
- CONTROL "&Harddrive overheats (HDD Info)",IDC_CHECK_HDDOVERHEAT,
- "Button",BS_AUTOCHECKBOX | WS_DISABLED | WS_TABSTOP,12,163,273,10
END
IDD_SETTINGS DIALOGEX 0, 0, 239, 286
diff --git a/plugins/AutoShutdown/src/common.h b/plugins/AutoShutdown/src/common.h index 7a59d8961f..e2cd8a8264 100644 --- a/plugins/AutoShutdown/src/common.h +++ b/plugins/AutoShutdown/src/common.h @@ -59,11 +59,8 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. #include <m_hotkeys.h>
#include <m_weather.h>
-#include <m_hddinfo.h>
#include <m_toptoolbar.h>
-#include <m_autoreplacer.h>
-#include <m_snappingwindows.h>
-#include "m_shutdown.h"
+#include <m_shutdown.h>
#include "cpuusage.h"
#include "frame.h"
diff --git a/plugins/AutoShutdown/src/options.cpp b/plugins/AutoShutdown/src/options.cpp index 4cadbe61c4..fbd8da2d41 100644 --- a/plugins/AutoShutdown/src/options.cpp +++ b/plugins/AutoShutdown/src/options.cpp @@ -50,10 +50,6 @@ static INT_PTR CALLBACK ShutdownOptDlgProc(HWND hwndDlg,UINT msg,WPARAM wParam,L {
BOOL enabled = ServiceIsTypeEnabled(SDSDT_SHUTDOWN,0);
if (enabled) {
- if (ServiceExists(MS_SYSINFO_HDDTEMP)) {
- EnableWindow(GetDlgItem(hwndDlg,IDC_CHECK_HDDOVERHEAT),TRUE);
- CheckDlgButton(hwndDlg,IDC_CHECK_HDDOVERHEAT,db_get_b(NULL,"AutoShutdown","HddOverheatShutdown",SETTING_HDDOVERHEATSHUTDOWN_DEFAULT) != 0);
- }
if (ServiceExists(MS_WEATHER_UPDATE)) {
EnableWindow(GetDlgItem(hwndDlg,IDC_CHECK_WEATHER),TRUE);
CheckDlgButton(hwndDlg,IDC_CHECK_WEATHER,db_get_b(NULL,"AutoShutdown","WeatherShutdown",SETTING_WEATHERSHUTDOWN_DEFAULT) != 0);
@@ -100,8 +96,6 @@ static INT_PTR CALLBACK ShutdownOptDlgProc(HWND hwndDlg,UINT msg,WPARAM wParam,L db_set_b(NULL,"AutoShutdown","SmartOfflineCheck",(BYTE)(IsDlgButtonChecked(hwndDlg,IDC_CHECK_SMARTOFFLINECHECK) != 0));
if (IsWindowEnabled(GetDlgItem(hwndDlg,IDC_CHECK_WEATHER)))
db_set_b(NULL,"AutoShutdown","WeatherShutdown",(BYTE)(IsDlgButtonChecked(hwndDlg,IDC_CHECK_WEATHER) != 0));
- if (IsWindowEnabled(GetDlgItem(hwndDlg,IDC_CHECK_HDDOVERHEAT)))
- db_set_b(NULL,"AutoShutdown","HddOverheatShutdown",(BYTE)(IsDlgButtonChecked(hwndDlg,IDC_CHECK_HDDOVERHEAT) != 0));
return TRUE;
}
break;
diff --git a/plugins/AutoShutdown/src/resource.h b/plugins/AutoShutdown/src/resource.h index f379eb3aab..78a764d908 100644 --- a/plugins/AutoShutdown/src/resource.h +++ b/plugins/AutoShutdown/src/resource.h @@ -43,7 +43,6 @@ #define IDC_CHECK_REMEMBERONRESTART 1033
#define IDC_CHECK_SMARTOFFLINECHECK 1034
#define IDC_CHECK_WEATHER 1035
-#define IDC_CHECK_HDDOVERHEAT 1036
// Next default values for new objects
//
diff --git a/plugins/AutoShutdown/src/settingsdlg.cpp b/plugins/AutoShutdown/src/settingsdlg.cpp index 1f3fad458e..f18255283a 100644 --- a/plugins/AutoShutdown/src/settingsdlg.cpp +++ b/plugins/AutoShutdown/src/settingsdlg.cpp @@ -130,8 +130,6 @@ static INT_PTR CALLBACK SettingsDlgProc(HWND hwndDlg,UINT msg,WPARAM wParam,LPAR SetDlgItemText(hwndDlg,IDC_EDIT_MESSAGE,dbv.ptszVal);
mir_free(dbv.ptszVal);
}
- if (ServiceExists(MS_AUTOREPLACER_ADDWINHANDLE))
- CallService(MS_AUTOREPLACER_ADDWINHANDLE,0,(LPARAM)GetDlgItem(hwndDlg,IDC_EDIT_MESSAGE));
}
/* cpuusage threshold */
{
@@ -181,8 +179,6 @@ static INT_PTR CALLBACK SettingsDlgProc(HWND hwndDlg,UINT msg,WPARAM wParam,LPAR }
case WM_DESTROY:
{
- if (ServiceExists(MS_AUTOREPLACER_ADDWINHANDLE))
- CallService(MS_AUTOREPLACER_REMWINHANDLE,0,(LPARAM)GetDlgItem(hwndDlg,IDC_EDIT_MESSAGE));
Utils_SaveWindowPosition(hwndDlg,NULL,"AutoShutdown","SettingsDlg_");
HICON hIcon=(HICON)SendDlgItemMessage(hwndDlg,IDC_ICON_HEADER,STM_SETIMAGE,IMAGE_ICON,0);
HFONT hFont=(HFONT)SendDlgItemMessage(hwndDlg,IDC_TEXT_HEADER,WM_GETFONT,0,0);
@@ -395,7 +391,6 @@ static INT_PTR CALLBACK SettingsDlgProc(HWND hwndDlg,UINT msg,WPARAM wParam,LPAR }
break;
}
- CallSnappingWindowProc(hwndDlg,msg,wParam,lParam); /* Snapping Windows plugin */
return FALSE;
}
diff --git a/plugins/AutoShutdown/src/watcher.cpp b/plugins/AutoShutdown/src/watcher.cpp index 70111eaa44..61686744f4 100644 --- a/plugins/AutoShutdown/src/watcher.cpp +++ b/plugins/AutoShutdown/src/watcher.cpp @@ -31,8 +31,6 @@ static HANDLE hHookIdleChanged; static HANDLE hHookSettingChanged;
/* Weather Shutdown */
static HANDLE hHookWeatherUpdated;
-/* Overheat Shutdown */
-static HANDLE hHookHddOverheat;
/* Services */
static HANDLE hServiceStartWatcher,hServiceStopWatcher,hServiceIsEnabled;
static HANDLE hEventWatcherChanged;
@@ -246,15 +244,6 @@ static int WeatherUpdated(WPARAM wParam,LPARAM lParam) return 0;
}
-/************************* Overheat Shutdown **************************/
-
-static int HddOverheat(WPARAM wParam,LPARAM lParam)
-{
- if (db_get_b(NULL,"AutoShutdown","HddOverheatShutdown",SETTING_HDDOVERHEATSHUTDOWN_DEFAULT))
- ServiceShutdown(SDSDT_SHUTDOWN,TRUE);
- return 0;
-}
-
/************************* Services ***********************************/
INT_PTR ServiceStartWatcher(WPARAM wParam,LPARAM lParam)
@@ -329,9 +318,6 @@ void WatcherModulesLoaded(void) /* Weather Shutdown */
if (ServiceExists(MS_WEATHER_UPDATE))
hHookWeatherUpdated=HookEvent(ME_WEATHER_UPDATED,WeatherUpdated);
- /* Overheat Shutdown */
- if (ServiceExists(MS_SYSINFO_HDDTEMP))
- hHookHddOverheat=HookEvent(ME_SYSINFO_HDDOVERHEAT,HddOverheat);
/* restore watcher if it was running on last exit */
if (db_get_b(NULL,"AutoShutdown","RememberOnRestart",0)==SDROR_RUNNING) {
@@ -356,8 +342,6 @@ void InitWatcher(void) hHookProtoAck=HookEvent(ME_PROTO_ACK,ProtoAck);
/* Weather Shutdown */
hHookWeatherUpdated=NULL;
- /* Overheat Shutdown */
- hHookHddOverheat=NULL;
/* Services */
hEventWatcherChanged=CreateHookableEvent(ME_AUTOSHUTDOWN_WATCHERCHANGED);
hServiceStartWatcher = CreateServiceFunction(MS_AUTOSHUTDOWN_STARTWATCHER, ServiceStartWatcher);
@@ -383,8 +367,6 @@ void UninitWatcher(void) mir_free(transfers); /* does NULL check */
/* Weather Shutdown */
UnhookEvent(hHookWeatherUpdated); /* does NULL check */
- /* Overheat Shutdown */
- UnhookEvent(hHookHddOverheat); /* does NULL check */
/* Services */
DestroyServiceFunction(hServiceStartWatcher);
DestroyServiceFunction(hServiceStopWatcher);
diff --git a/plugins/ClientChangeNotify/src/ClientChangeNotify.cpp b/plugins/ClientChangeNotify/src/ClientChangeNotify.cpp index 2aaa9463b2..55c09e6d4d 100644 --- a/plugins/ClientChangeNotify/src/ClientChangeNotify.cpp +++ b/plugins/ClientChangeNotify/src/ClientChangeNotify.cpp @@ -105,22 +105,6 @@ void Popup_DoAction(HWND hWnd, BYTE Action, PLUGIN_DATA *pdata) CallServiceSync(MS_HISTORY_SHOWCONTACTHISTORY, hContact, 0);
break;
- case PCA_OPENLOG: // open log file
- {
- TCString LogFilePath;
- LS_LOGINFO li = {0};
- li.cbSize = sizeof(li);
- li.szID = LOG_ID;
- li.hContact = hContact;
- li.Flags = LSLI_TCHAR;
- li.tszLogPath = LogFilePath.GetBuffer(MAX_PATH);
- if (!CallService(MS_LOGSERVICE_GETLOGINFO, (WPARAM)&li, 0)) {
- LogFilePath.ReleaseBuffer();
- ShowLog(LogFilePath);
- }
- else LogFilePath.ReleaseBuffer();
- break;
- }
case PCA_CLOSEPOPUP: // close popup
PUDeletePopup(hWnd);
break;
@@ -276,50 +260,11 @@ int ContactSettingChanged(WPARAM hContact, LPARAM lParam) ClientName.ReleaseBuffer();
}
else ClientName = sd.MirVer;
-
- if (bVariablesExists)
- logservice_log(LOG_ID, hContact, ClientName);
- else {
- _ASSERT(szProto);
- TCString szUID(_T(""));
- char *uid = (char*)CallProtoService(szProto, PS_GETCAPS, PFLAG_UNIQUEIDSETTING, 0);
- if (uid && (INT_PTR)uid != CALLSERVICE_NOTFOUND)
- szUID = DBGetContactSettingAsString(hContact, szProto, uid, _T(""));
-
- logservice_log(LOG_ID, hContact, TCString((TCHAR*)CallService(MS_CLIST_GETCONTACTDISPLAYNAME, hContact, GCDNF_TCHAR)) + _T(" (") + szUID + TranslateT(") changed client to ") + ClientName);
- }
}
_ASSERT(sd.MirVer.GetLen()); // save the last known MirVer value even if the new one is empty
return 0;
}
-static int ContactSettingsInit(WPARAM wParam, LPARAM lParam)
-{
- CONTACTSETTINGSINIT *csi = (CONTACTSETTINGSINIT*)wParam;
- char *szProto = (csi->Type == CSIT_CONTACT) ? GetContactProto(csi->hContact) : NULL;
- if ((csi->Type == CSIT_GROUP) || (szProto && csi->Type == CSIT_CONTACT)) {
- int Flag1 = (csi->Type == CSIT_CONTACT) ? CallProtoService(szProto, PS_GETCAPS, PFLAGNUM_1, 0) : PF1_IM; // if it's a group settings dialog, we assume that there are possibly some contacts in the group with PF1_IM capability
- if (Flag1 & (PF1_IMRECV | PF1_URLRECV | PF1_FILERECV)) { // I hope, these flags are sufficient to describe which protocols can theoretically have a client
- CONTACTSETTINGSCONTROL csc = {0};
- csc.cbSize = sizeof(csc);
- csc.cbStateSize = sizeof(CSCONTROLSTATE);
- csc.Position = CSPOS_SORTBYALPHABET;
- csc.Flags = CSCF_TCHAR;
- csc.ControlType = CSCT_COMBOBOX;
- csc.ptszTitle = LPGENT("Client change notifications:");
- csc.ptszGroup = CSGROUP_NOTIFICATIONS;
- csc.szModule = MOD_NAME;
- csc.szSetting = DB_CCN_NOTIFY;
- csc.StateNum = 4;
- csc.DefState = 3;
- CSCONTROLSTATE States[] = {CSCONTROLSTATE(LPGENT("Never, ignore client changes for this contact"), (BYTE)NOTIFY_IGNORE), CSCONTROLSTATE(LPGENT("Always except when client change notifications are disabled globally"), (BYTE)NOTIFY_ALMOST_ALWAYS), CSCONTROLSTATE(LPGENT("Always, even when client change notifications are disabled globally"), (BYTE)NOTIFY_ALWAYS), CSCONTROLSTATE(LPGENT("Use global settings (default)"), (BYTE)NOTIFY_USEGLOBAL)};
- csc.pStates = States;
- CallService(MS_CONTACTSETTINGS_ADDCONTROL, wParam, (LPARAM)&csc);
- }
- }
- return 0;
-}
-
static INT_PTR srvTogglePopups(WPARAM wParam, LPARAM lParam)
{
g_PopupOptPage.SetDBValueCopy(IDC_POPUPOPTDLG_POPUPNOTIFY, !g_PopupOptPage.GetDBValueCopy(IDC_POPUPOPTDLG_POPUPNOTIFY));
@@ -385,7 +330,6 @@ int MirandaLoaded(WPARAM wParam, LPARAM lParam) HookEvent(ME_SYSTEM_MODULELOAD, ModuleLoad);
HookEvent(ME_SYSTEM_MODULEUNLOAD, ModuleLoad);
HookEvent(ME_DB_CONTACT_SETTINGCHANGED, ContactSettingChanged);
- HookEvent(ME_CONTACTSETTINGS_INITIALISE, ContactSettingsInit);
SkinAddNewSoundEx(CLIENTCHANGED_SOUND, NULL, LPGEN("ClientChangeNotify: Client changed"));
if (bPopupExists) {
@@ -408,7 +352,6 @@ int MirandaLoaded(WPARAM wParam, LPARAM lParam) if (!bFingerprintExists && !db_get_b(NULL, MOD_NAME, DB_NO_FINGERPRINT_ERROR, 0))
CreateDialog(g_hInstance, MAKEINTRESOURCE(IDD_CCN_ERROR), NULL, CCNErrorDlgProc);
- logservice_register(LOG_ID, LPGENT("ClientChangeNotify"), _T("ClientChangeNotify?puts(p,?dbsetting(%subject%,Protocol,p))?if2(_?dbsetting(,?get(p),?pinfo(?get(p),uidsetting)),).log"), TranslateT("`[`!cdate()-!ctime()`]` ?cinfo(%subject%,display) (?cinfo(%subject%,ID)) changed client to %extratext%"));
return 0;
}
diff --git a/plugins/ClientChangeNotify/src/Common.h b/plugins/ClientChangeNotify/src/Common.h index d29080795b..2dbe3efbfd 100644 --- a/plugins/ClientChangeNotify/src/Common.h +++ b/plugins/ClientChangeNotify/src/Common.h @@ -38,7 +38,6 @@ #include "m_langpack.h"
#include "m_options.h"
#include "m_clist.h"
-#include "m_LogService.h"
#include "m_system.h"
#include "m_message.h"
#include "m_userinfo.h"
@@ -51,7 +50,6 @@ #include "m_fingerprint.h"
#include "m_metacontacts.h"
-#include "m_ContactSettings.h"
#include "CommonLibs\TMyArray.h"
#include "CommonLibs\Options.h"
@@ -68,7 +66,6 @@ #define PCA_OPENDETAILS 2 // open contact details window
#define PCA_OPENMENU 3 // open contact menu
#define PCA_OPENHISTORY 4 // open contact history
-#define PCA_OPENLOG 5 // open log file
#define PCA_DONOTHING 6 // do nothing
#define POPUP_DEF_LCLICKACTION PCA_OPENMESSAGEWND
diff --git a/plugins/ClientChangeNotify/src/OptDlg.cpp b/plugins/ClientChangeNotify/src/OptDlg.cpp index 96a96ccc20..711ba11a39 100644 --- a/plugins/ClientChangeNotify/src/OptDlg.cpp +++ b/plugins/ClientChangeNotify/src/OptDlg.cpp @@ -78,7 +78,6 @@ PopupActions[] = LPGENT("Open contact details window"), PCA_OPENDETAILS,
LPGENT("Open contact menu"), PCA_OPENMENU,
LPGENT("Open contact history"), PCA_OPENHISTORY,
- LPGENT("Open log file"), PCA_OPENLOG,
LPGENT("Do nothing"), PCA_DONOTHING
};
diff --git a/plugins/ExternalAPI/m_shutdown.h b/plugins/ExternalAPI/m_shutdown.h index 239a728d82..74c32d7830 100644 --- a/plugins/ExternalAPI/m_shutdown.h +++ b/plugins/ExternalAPI/m_shutdown.h @@ -157,7 +157,6 @@ Unused, return always 0 here. #define SETTING_SHOWCONFIRMDLG_DEFAULT 1
#define SETTING_CONFIRMDLGCOUNTDOWN_DEFAULT 30 // seconds
#define SETTING_WEATHERSHUTDOWN_DEFAULT 0
-#define SETTING_HDDOVERHEATSHUTDOWN_DEFAULT 1
#define SETTING_SMARTOFFLINECHECK_DEFAULT 1
#define SETTING_SHUTDOWNTYPE_DEFAULT SDSDT_SHUTDOWN
diff --git a/plugins/ExternalAPI/m_svc_dbepp.h b/plugins/ExternalAPI/m_svc_dbepp.h deleted file mode 100644 index d728de9ddc..0000000000 --- a/plugins/ExternalAPI/m_svc_dbepp.h +++ /dev/null @@ -1,42 +0,0 @@ -/*
-
-Miranda NG: the free IM client for Microsoft* Windows*
-
-Copyright (c) 2012-14 Miranda NG project (http://miranda-ng.org),
-Copyright (c) 2003-11 Bio, Jonathan Gordon
-
-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.
-*/
-
-#ifndef M_DBEDITOR
-#define M_DBEDITOR
-
-/*
-Open user tree in DBE++
-wParam=(HANDLE)hContact
-lParam=0
-always returns 0
-*/
-#define MS_DBEDIT_MENUCOMMAND "DBEditorpp/MenuCommand"
-
-/*
-Import settings\contacts from file
-wParam=(HANDLE)hContact
-lParam=(char*)FilePath
-always returns 0
-*/
-#define MS_DBEDIT_IMPORT "DBEditorpp/Import"
-
-#endif
\ No newline at end of file diff --git a/plugins/IEView/res/ieview.rc b/plugins/IEView/res/ieview.rc index 09852a0d95..6aac7db2ce 100644 --- a/plugins/IEView/res/ieview.rc +++ b/plugins/IEView/res/ieview.rc @@ -7,7 +7,8 @@ //
// Generated from the TEXTINCLUDE 2 resource.
//
-#include "afxres.h"
+#include "afxres.h"
+
/////////////////////////////////////////////////////////////////////////////
#undef APSTUDIO_READONLY_SYMBOLS
@@ -70,7 +71,6 @@ BEGIN "Button",BS_AUTOCHECKBOX | WS_TABSTOP,14,46,279,10
CONTROL "Enable workaround for PNG transparency",IDC_ENABLE_PNGHACK,
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,14,61,279,10
- CONTROL "Enable MathModule support",IDC_ENABLE_MATHMODULE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,14,76,279,10
CONTROL "Replace smileys in user names",IDC_SMILEYS_IN_NAMES,
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,14,91,279,10
CONTROL "Hide window border",IDC_NO_BORDER,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,14,106,279,10
@@ -168,7 +168,8 @@ END //
// Generated from the TEXTINCLUDE 3 resource.
//
-
+
+
/////////////////////////////////////////////////////////////////////////////
#endif // not APSTUDIO_INVOKED
diff --git a/plugins/IEView/src/HTMLBuilder.cpp b/plugins/IEView/src/HTMLBuilder.cpp index 716cb584f3..8545f34264 100644 --- a/plugins/IEView/src/HTMLBuilder.cpp +++ b/plugins/IEView/src/HTMLBuilder.cpp @@ -57,12 +57,6 @@ bool HTMLBuilder::encode(MCONTACT hContact, const char *proto, const wchar_t *te break;
}
level++;
- case 2:
- if ((Options::getGeneralFlags()&Options::GENERAL_ENABLE_MATHMODULE) && Options::isMathModule()) {
- token = TextToken::tokenizeMath(text);
- break;
- }
- level++;
case 3:
token = TextToken::tokenizeLinks(text);
break;
diff --git a/plugins/IEView/src/Options.cpp b/plugins/IEView/src/Options.cpp index 7be2656e0d..a6b7ca5ca9 100644 --- a/plugins/IEView/src/Options.cpp +++ b/plugins/IEView/src/Options.cpp @@ -477,9 +477,6 @@ static INT_PTR CALLBACK IEViewGeneralOptDlgProc(HWND hwndDlg, UINT msg, WPARAM w if (Options::getGeneralFlags() & Options::GENERAL_ENABLE_FLASH) {
CheckDlgButton(hwndDlg, IDC_ENABLE_FLASH, TRUE);
}
- if (Options::getGeneralFlags() & Options::GENERAL_ENABLE_MATHMODULE) {
- CheckDlgButton(hwndDlg, IDC_ENABLE_MATHMODULE, TRUE);
- }
if (Options::getGeneralFlags() & Options::GENERAL_ENABLE_PNGHACK) {
CheckDlgButton(hwndDlg, IDC_ENABLE_PNGHACK, TRUE);
}
@@ -492,7 +489,6 @@ static INT_PTR CALLBACK IEViewGeneralOptDlgProc(HWND hwndDlg, UINT msg, WPARAM w if (Options::getGeneralFlags() & Options::GENERAL_ENABLE_EMBED) {
CheckDlgButton(hwndDlg, IDC_ENABLE_EMBED, TRUE);
}
- EnableWindow(GetDlgItem(hwndDlg, IDC_ENABLE_MATHMODULE), Options::isMathModule());
EnableWindow(GetDlgItem(hwndDlg, IDC_SMILEYS_IN_NAMES), Options::isSmileyAdd());
EnableWindow(GetDlgItem(hwndDlg, IDC_EMBED_SIZE), IsDlgButtonChecked(hwndDlg, IDC_ENABLE_EMBED));
TCHAR* size[] = { _T("320 x 205"), _T("480 x 385") , _T("560 x 349"), _T("640 x 390")};
@@ -508,7 +504,6 @@ static INT_PTR CALLBACK IEViewGeneralOptDlgProc(HWND hwndDlg, UINT msg, WPARAM w switch (LOWORD(wParam)) {
case IDC_ENABLE_BBCODES:
case IDC_ENABLE_FLASH:
- case IDC_ENABLE_MATHMODULE:
case IDC_ENABLE_PNGHACK:
case IDC_SMILEYS_IN_NAMES:
case IDC_NO_BORDER:
@@ -533,9 +528,6 @@ static INT_PTR CALLBACK IEViewGeneralOptDlgProc(HWND hwndDlg, UINT msg, WPARAM w if (IsDlgButtonChecked(hwndDlg, IDC_ENABLE_FLASH)) {
i |= Options::GENERAL_ENABLE_FLASH;
}
- if (IsDlgButtonChecked(hwndDlg, IDC_ENABLE_MATHMODULE)) {
- i |= Options::GENERAL_ENABLE_MATHMODULE;
- }
if (IsDlgButtonChecked(hwndDlg, IDC_ENABLE_PNGHACK)) {
i |= Options::GENERAL_ENABLE_PNGHACK;
}
@@ -964,7 +956,6 @@ static INT_PTR CALLBACK IEViewGroupChatsOptDlgProc(HWND hwndDlg, UINT msg, WPARA }
bool Options::isInited = false;
-bool Options::bMathModule = false;
bool Options::bSmileyAdd = false;
int Options::avatarServiceFlags = 0;
int Options::generalFlags;
@@ -1600,7 +1591,6 @@ void Options::init() lastProto = proto;
}
- bMathModule = 0 != ServiceExists(MTH_GET_GIF_UNICODE);
bSmileyAdd = 0 != ServiceExists(MS_SMILEYADD_BATCHPARSE);
avatarServiceFlags = 0;
if (ServiceExists(MS_AV_GETAVATARBITMAP))
@@ -1642,11 +1632,6 @@ int Options::getEmbedsize() return db_get_dw(NULL, ieviewModuleName, "Embedsize", 0);
}
-bool Options::isMathModule()
-{
- return bMathModule;
-}
-
bool Options::isSmileyAdd()
{
return bSmileyAdd;
diff --git a/plugins/IEView/src/Options.h b/plugins/IEView/src/Options.h index 58f758ceaf..4fbf6fe4a1 100644 --- a/plugins/IEView/src/Options.h +++ b/plugins/IEView/src/Options.h @@ -195,7 +195,6 @@ class Options { private:
static int generalFlags;
static bool isInited;
- static bool bMathModule;
static bool bSmileyAdd;
static int avatarServiceFlags;
static ProtocolSettings* protocolList;
@@ -207,7 +206,6 @@ public: };
enum OPTIONS {
GENERAL_ENABLE_BBCODES = 0x000001,
- GENERAL_ENABLE_MATHMODULE = 0x000002,
GENERAL_ENABLE_FLASH = 0x000004,
GENERAL_ENABLE_PNGHACK = 0x000008,
GENERAL_SMILEYINNAMES = 0x000010,
@@ -235,7 +233,6 @@ public: static void setEmbedsize(int size);
static int getEmbedsize();
- static bool isMathModule();
static bool isSmileyAdd();
static int getAvatarServiceFlags();
static void init();
diff --git a/plugins/IEView/src/TextToken.cpp b/plugins/IEView/src/TextToken.cpp index 7b27e70614..40fb816bde 100644 --- a/plugins/IEView/src/TextToken.cpp +++ b/plugins/IEView/src/TextToken.cpp @@ -127,7 +127,7 @@ void TextToken::setLink(const wchar_t *_link) static int countNoWhitespace(const wchar_t *str)
{
int c;
- for (c=0; *str!='\n' && *str!='\r' && *str!='\t' && *str!=' ' && *str!='\0'; str++, c++);
+ for (c = 0; *str != '\n' && *str != '\r' && *str != '\t' && *str != ' ' && *str != '\0'; str++, c++);
return c;
}
@@ -135,125 +135,38 @@ TextToken* TextToken::tokenizeBBCodes(const wchar_t *text) { return tokenizeBBCodes(text, (int)wcslen(text));
}
-TextToken* TextToken::tokenizeMath(const wchar_t *text) {
- TextToken *firstToken = NULL, *lastToken = NULL, *mathToken = NULL;
- static bool mathModInitialized = false;
- static wchar_t *mathTagName[] = {NULL, NULL};
- static int mathTagLen[] = {0, 0};
- int i;
- if (!mathModInitialized) {
- if (ServiceExists(MATH_GET_PARAMS)) {
- char* mthDelStart = (char *)CallService(MATH_GET_PARAMS, (WPARAM)MATH_PARAM_STARTDELIMITER, 0);
- char* mthDelEnd = (char *)CallService(MATH_GET_PARAMS, (WPARAM)MATH_PARAM_ENDDELIMITER, 0);
- if (mthDelStart!=NULL) {
- mathTagName[0] = mir_a2t(mthDelStart);
- mathTagLen[0] = (int)wcslen(mathTagName[0]);
- }
- if (mthDelEnd!=NULL) {
- mathTagName[1] = mir_a2t(mthDelEnd);
- mathTagLen[1] = (int)wcslen(mathTagName[1]);
- }
- CallService(MTH_FREE_MATH_BUFFER,0, (LPARAM) mthDelStart);
- CallService(MTH_FREE_MATH_BUFFER,0, (LPARAM) mthDelEnd);
- }
- mathModInitialized = true;
- }
- int textLen = 0;
- int l = (int)wcslen(text);
- for (i=0; i<=l;) {
- bool mathFound = false;
- int k = 0, tagDataStart=0, newTokenType = 0, newTokenSize = 0;
- if (mathTagName[0] != NULL && mathTagName[1] != NULL) {
- if (!wcsnicmp(text+i, mathTagName[0], mathTagLen[0])) {
- k = tagDataStart = i + mathTagLen[0];
- for (; k < l; k++) {
- if (!wcsnicmp(text+k, mathTagName[1], mathTagLen[1])) {
- k += mathTagLen[1];
- mathFound = true;
- break;
- }
- }
- }
- }
- if (mathFound) {
- mathToken = new TextToken(MATH, text + tagDataStart, k - mathTagLen[1] - tagDataStart);
- char* mathPath=(char*)CallService(MTH_GET_GIF_UNICODE, 0, (LPARAM) mathToken->getTextW());
- if (mathPath!=NULL) {
- mathToken->setLink(mathPath);
- CallService(MTH_FREE_GIFPATH, 0, (LPARAM) mathPath);
- } else {
- mathToken->setLink("");
- }
- mathToken->setEnd(false);
- newTokenType = MATH;
- newTokenSize = k - i;
- } else {
- if (i==l) {
- newTokenType = END;
- newTokenSize = 1;
- } else {
- newTokenType = TEXT;
- newTokenSize = 1;
- }
- }
- if (newTokenType != TEXT) {
- if (textLen >0 ) {
- TextToken *newToken = new TextToken(TEXT, text+i-textLen, textLen);
- textLen = 0;
- if (lastToken == NULL) {
- firstToken = newToken;
- } else {
- lastToken->setNext(newToken);
- }
- lastToken = newToken;
- }
- if (newTokenType == MATH) {
- if (lastToken == NULL) {
- firstToken = mathToken;
- } else {
- lastToken->setNext(mathToken);
- }
- lastToken = mathToken;
- }
- } else {
- textLen += newTokenSize;
- }
- i += newTokenSize;
- }
- return firstToken;
-}
// TODO: Add the following BBCodes: code
#define BB_TAG_NUM 10
TextToken* TextToken::tokenizeBBCodes(const wchar_t *text, int l) {
- static const wchar_t *bbTagName[] = {L"b", L"i", L"u", L"s", L"img", L"color", L"size", L"bimg", L"url", L"code"};
- static int bbTagNameLen[] = {1, 1, 1, 1, 3, 5, 4, 4, 3, 4};
- static int bbTagArg[] = {0, 0, 0, 0, 0, 1, 1, 0, 1, 0};
- static int bbTagId[] = {BB_B, BB_I, BB_U, BB_S, BB_IMG, BB_COLOR, BB_SIZE, BB_BIMG, BB_URL, BB_CODE};
+ static const wchar_t *bbTagName[] = { L"b", L"i", L"u", L"s", L"img", L"color", L"size", L"bimg", L"url", L"code" };
+ static int bbTagNameLen[] = { 1, 1, 1, 1, 3, 5, 4, 4, 3, 4 };
+ static int bbTagArg[] = { 0, 0, 0, 0, 0, 1, 1, 0, 1, 0 };
+ static int bbTagId[] = { BB_B, BB_I, BB_U, BB_S, BB_IMG, BB_COLOR, BB_SIZE, BB_BIMG, BB_URL, BB_CODE };
static int bbTagEnd[BB_TAG_NUM];
static int bbTagCount[BB_TAG_NUM];
- int i,j;
- TextToken *firstToken = NULL, *lastToken = NULL, * bbToken = NULL;
+ int i, j;
+ TextToken *firstToken = NULL, *lastToken = NULL, *bbToken = NULL;
int textLen = 0;
for (j = 0; j < BB_TAG_NUM; j++) {
bbTagCount[j] = 0;
bbTagEnd[j] = 0;
}
for (i = 0; i <= l;) {
- int k, tagArgStart=0, tagArgEnd=0, tagDataStart=0, newTokenType = 0, newTokenSize = 0;
+ int k, tagArgStart = 0, tagArgEnd = 0, tagDataStart = 0, newTokenType = 0, newTokenSize = 0;
bool bbFound = false;
if (text[i] == '[') {
- if (text[i+1] != '/') {
+ if (text[i + 1] != '/') {
for (j = 0; j < BB_TAG_NUM; j++) {
k = i + 1;
- if (!wcsnicmp(text+k, bbTagName[j], bbTagNameLen[j])) {
+ if (!wcsnicmp(text + k, bbTagName[j], bbTagNameLen[j])) {
tagArgStart = tagArgEnd = 0;
k += bbTagNameLen[j];
if (bbTagArg[j]) {
if (text[k] != '=') continue;
k++;
tagArgStart = k;
- for (; text[k]!='\0'; k++) {
- if (text[k]==']') break;
+ for (; text[k] != '\0'; k++) {
+ if (text[k] == ']') break;
}
tagArgEnd = k;
}
@@ -262,9 +175,9 @@ TextToken* TextToken::tokenizeBBCodes(const wchar_t *text, int l) { tagDataStart = k;
if (k < bbTagEnd[j]) k = bbTagEnd[j];
for (; k < l; k++) {
- if (text[k] == '[' && text[k+1] == '/') {
+ if (text[k] == '[' && text[k + 1] == '/') {
k += 2;
- if (!wcsnicmp(text+k, bbTagName[j], bbTagNameLen[j])) {
+ if (!wcsnicmp(text + k, bbTagName[j], bbTagNameLen[j])) {
k += bbTagNameLen[j];
if (text[k] == ']') {
k++;
@@ -291,7 +204,8 @@ TextToken* TextToken::tokenizeBBCodes(const wchar_t *text, int l) { bbTagCount[j]++;
if (bbTagArg[j]) {
bbToken = new TextToken(BBCODE, text + tagArgStart, tagArgEnd - tagArgStart);
- } else {
+ }
+ else {
bbToken = new TextToken(BBCODE, bbTagName[j], bbTagNameLen[j]);
}
bbToken->setTag(bbTagId[j]);
@@ -315,10 +229,11 @@ TextToken* TextToken::tokenizeBBCodes(const wchar_t *text, int l) { break;
}
}
- } else {
+ }
+ else {
for (j = 0; j < BB_TAG_NUM; j++) {
k = i + 2;
- if (bbTagCount[j]>0 && !wcsnicmp(text+k, bbTagName[j], bbTagNameLen[j])) {
+ if (bbTagCount[j]>0 && !wcsnicmp(text + k, bbTagName[j], bbTagNameLen[j])) {
k += bbTagNameLen[j];
if (text[k] == ']') {
k++;
@@ -338,21 +253,23 @@ TextToken* TextToken::tokenizeBBCodes(const wchar_t *text, int l) { }
}
if (!bbFound) {
- if (i==l) {
+ if (i == l) {
newTokenType = END;
newTokenSize = 1;
- } else {
+ }
+ else {
newTokenType = TEXT;
newTokenSize = 1;
}
}
if (newTokenType != TEXT) {
- if (textLen >0 ) {
- TextToken *newToken = new TextToken(TEXT, text+i-textLen, textLen);
+ if (textLen > 0) {
+ TextToken *newToken = new TextToken(TEXT, text + i - textLen, textLen);
textLen = 0;
if (lastToken == NULL) {
firstToken = newToken;
- } else {
+ }
+ else {
lastToken->setNext(newToken);
}
lastToken = newToken;
@@ -360,12 +277,14 @@ TextToken* TextToken::tokenizeBBCodes(const wchar_t *text, int l) { if (newTokenType == BBCODE) {
if (lastToken == NULL) {
firstToken = bbToken;
- } else {
+ }
+ else {
lastToken->setNext(bbToken);
}
lastToken = bbToken;
}
- } else {
+ }
+ else {
textLen += newTokenSize;
}
i += newTokenSize;
@@ -377,47 +296,54 @@ TextToken* TextToken::tokenizeLinks(const wchar_t *text) { TextToken *firstToken = NULL, *lastToken = NULL;
int textLen = 0;
int l = (int)wcslen(text);
- for (int i=0; i<=l;) {
+ for (int i = 0; i <= l;) {
int newTokenType, newTokenSize;
- int urlLen = Utils::detectURL(text+i);
+ int urlLen = Utils::detectURL(text + i);
if (i == l) {
newTokenType = END;
newTokenSize = 1;
- } else if (urlLen > 0) {
+ }
+ else if (urlLen > 0) {
newTokenType = LINK;
newTokenSize = urlLen;
- } else if (!wcsncmp(text+i, L"www.", 4)) {
+ }
+ else if (!wcsncmp(text + i, L"www.", 4)) {
newTokenType = WWWLINK;
- newTokenSize = countNoWhitespace(text+i);
- } else if (!wcsncmp(text+i, L"mailto:", 7)) {
+ newTokenSize = countNoWhitespace(text + i);
+ }
+ else if (!wcsncmp(text + i, L"mailto:", 7)) {
newTokenType = LINK;
- newTokenSize = countNoWhitespace(text+i);
- } else {
+ newTokenSize = countNoWhitespace(text + i);
+ }
+ else {
newTokenType = TEXT;
newTokenSize = 1;
}
if (newTokenType != TEXT) {
- if (textLen >0 ) {
- TextToken *newToken = new TextToken(TEXT, text+i-textLen, textLen);
+ if (textLen > 0) {
+ TextToken *newToken = new TextToken(TEXT, text + i - textLen, textLen);
textLen = 0;
if (lastToken == NULL) {
firstToken = newToken;
- } else {
+ }
+ else {
lastToken->setNext(newToken);
}
lastToken = newToken;
}
if (newTokenType == WWWLINK || newTokenType == LINK) {
- TextToken *newToken = new TextToken(newTokenType, text+i, newTokenSize);
+ TextToken *newToken = new TextToken(newTokenType, text + i, newTokenSize);
newToken->setLink(newToken->getText());
if (lastToken == NULL) {
firstToken = newToken;
- } else {
+ }
+ else {
lastToken->setNext(newToken);
}
lastToken = newToken;
}
- } else {
+ }
+ else {
textLen += newTokenSize;
}
i += newTokenSize;
@@ -438,29 +364,32 @@ TextToken* TextToken::tokenizeSmileys(MCONTACT hContact, const char *proto, cons sp.flag = SAFL_PATH | SAFL_UNICODE | (isSent ? SAFL_OUTGOING : 0);
sp.wstr = (wchar_t *)text;
sp.hContact = hContact;
- spRes = (SMADD_BATCHPARSERES *) CallService(MS_SMILEYADD_BATCHPARSE, 0, (LPARAM)&sp);
+ spRes = (SMADD_BATCHPARSERES *)CallService(MS_SMILEYADD_BATCHPARSE, 0, (LPARAM)&sp);
int last_pos = 0;
if (spRes != NULL) {
for (int i = 0; i < (int)sp.numSmileys; i++) {
if (spRes[i].filepath != NULL && strlen((char *)spRes[i].filepath) > 0) {
if ((int)spRes[i].startChar - last_pos > 0) {
- TextToken *newToken = new TextToken(TEXT, text+last_pos, spRes[i].startChar-last_pos);
+ TextToken *newToken = new TextToken(TEXT, text + last_pos, spRes[i].startChar - last_pos);
if (lastToken == NULL) {
firstToken = newToken;
- } else {
+ }
+ else {
lastToken->setNext(newToken);
}
lastToken = newToken;
}
- TextToken *newToken = new TextToken(SMILEY, text+spRes[i].startChar, spRes[i].size);
+ TextToken *newToken = new TextToken(SMILEY, text + spRes[i].startChar, spRes[i].size);
if (sp.oflag & SAFL_UNICODE) {
newToken->setLink((wchar_t *)spRes[i].filepath);
- } else {
+ }
+ else {
newToken->setLink((char *)spRes[i].filepath);
}
if (lastToken == NULL) {
firstToken = newToken;
- } else {
+ }
+ else {
lastToken->setNext(newToken);
}
lastToken = newToken;
@@ -470,10 +399,11 @@ TextToken* TextToken::tokenizeSmileys(MCONTACT hContact, const char *proto, cons CallService(MS_SMILEYADD_BATCHFREE, 0, (LPARAM)spRes);
}
if (last_pos < l) {
- TextToken *newToken = new TextToken(TEXT, text+last_pos, l-last_pos);
+ TextToken *newToken = new TextToken(TEXT, text + last_pos, l - last_pos);
if (lastToken == NULL) {
firstToken = newToken;
- } else {
+ }
+ else {
lastToken->setNext(newToken);
}
lastToken = newToken;
@@ -486,7 +416,7 @@ TextToken* TextToken::tokenizeChatFormatting(const wchar_t *text) { int textLen = 0;
int l = (int)wcslen(text);
wchar_t* tokenBuffer = new wchar_t[l + 1];
- for (int i=0; i<=l;) {
+ for (int i = 0; i <= l;) {
int newTokenType = TEXT;
int newTokenSize = 1;
int newTokenTag = 0;
@@ -495,66 +425,68 @@ TextToken* TextToken::tokenizeChatFormatting(const wchar_t *text) { bool endToken = false;
- if (i==l) {
+ if (i == l) {
newTokenType = END;
- } else {
+ }
+ else {
if (text[i] == '%') {
newTokenSize = 2;
switch (text[i + 1]) {
- case '%':
- break;
- case 'B':
- endToken = true;
- case 'b':
- newTokenType = BBCODE;
- newTokenTag = BB_B;
- break;
- case 'U':
- endToken = true;
- case 'u':
- newTokenType = BBCODE;
- newTokenTag = BB_U;
- break;
- case 'I':
- endToken = true;
- case 'i':
- newTokenType = BBCODE;
- newTokenTag = BB_I;
- break;
- case 'C':
- endToken = true;
- case 'c':
- newTokenType = BBCODE;
- newTokenTag = BB_COLOR;
- if (!endToken) {
- newTokenText = text + i + 2;
- newTokenTextLen = 7;
- newTokenSize = 9;
- }
- break;
- case 'F':
- endToken = true;
- case 'f':
- newTokenType = BBCODE;
- newTokenTag = BB_BACKGROUND;
- if (!endToken) {
- newTokenText = text + i + 2;
- newTokenTextLen = 7;
- newTokenSize = 9;
- }
- break;
- default:
- newTokenSize = 1;
+ case '%':
+ break;
+ case 'B':
+ endToken = true;
+ case 'b':
+ newTokenType = BBCODE;
+ newTokenTag = BB_B;
+ break;
+ case 'U':
+ endToken = true;
+ case 'u':
+ newTokenType = BBCODE;
+ newTokenTag = BB_U;
+ break;
+ case 'I':
+ endToken = true;
+ case 'i':
+ newTokenType = BBCODE;
+ newTokenTag = BB_I;
+ break;
+ case 'C':
+ endToken = true;
+ case 'c':
+ newTokenType = BBCODE;
+ newTokenTag = BB_COLOR;
+ if (!endToken) {
+ newTokenText = text + i + 2;
+ newTokenTextLen = 7;
+ newTokenSize = 9;
+ }
+ break;
+ case 'F':
+ endToken = true;
+ case 'f':
+ newTokenType = BBCODE;
+ newTokenTag = BB_BACKGROUND;
+ if (!endToken) {
+ newTokenText = text + i + 2;
+ newTokenTextLen = 7;
+ newTokenSize = 9;
+ }
+ break;
+ default:
+ newTokenSize = 1;
}
}
}
if (newTokenType != TEXT) {
- if (textLen >0 ) {
+ if (textLen > 0) {
TextToken *newToken = new TextToken(TEXT, tokenBuffer, textLen);
textLen = 0;
if (lastToken == NULL) {
firstToken = newToken;
- } else {
+ }
+ else {
lastToken->setNext(newToken);
}
lastToken = newToken;
@@ -565,12 +497,14 @@ TextToken* TextToken::tokenizeChatFormatting(const wchar_t *text) { newToken->setTag(newTokenTag);
if (lastToken == NULL) {
firstToken = newToken;
- } else {
+ }
+ else {
lastToken->setNext(newToken);
}
lastToken = newToken;
}
- } else {
+ }
+ else {
tokenBuffer[textLen] = text[i];
textLen++;
}
@@ -586,46 +520,48 @@ wchar_t *TextToken::htmlEncode(const wchar_t *str) if (str == NULL)
return NULL;
int c = 0;
- for (ptr=str; *ptr!='\0'; ptr++) {
+ for (ptr = str; *ptr != '\0'; ptr++) {
bool wasSpace = false;
- if (*ptr==' ' && wasSpace) {
+ if (*ptr == ' ' && wasSpace) {
wasSpace = true;
c += 6;
- } else {
+ }
+ else {
wasSpace = false;
switch (*ptr) {
- case '\n': c += 4; break;
- case '\r': break;
- case '&': c += 5; break;
- case '>': c += 4; break;
- case '<': c += 4; break;
- case '"': c += 6; break;
- case ' ': wasSpace = true;
- default: c += 1; break;
+ case '\n': c += 4; break;
+ case '\r': break;
+ case '&': c += 5; break;
+ case '>': c += 4; break;
+ case '<': c += 4; break;
+ case '"': c += 6; break;
+ case ' ': wasSpace = true;
+ default: c += 1; break;
}
}
}
- wchar_t *output = new wchar_t[c+1];
- for (out=output, ptr=str; *ptr!='\0'; ptr++) {
+ wchar_t *output = new wchar_t[c + 1];
+ for (out = output, ptr = str; *ptr != '\0'; ptr++) {
bool wasSpace = false;
- if (*ptr==' ' && wasSpace) {
+ if (*ptr == ' ' && wasSpace) {
wcscpy(out, L" ");
out += 6;
- } else {
+ }
+ else {
wasSpace = false;
switch (*ptr) {
- case '\n': wcscpy(out, L"<br>"); out += 4; break;
- case '\r': break;
- case '&': wcscpy(out, L"&"); out += 5; break;
- case '>': wcscpy(out, L">"); out += 4; break;
- case '<': wcscpy(out, L"<"); out += 4; break;
- case '"': wcscpy(out, L"""); out += 6; break;
- case ' ': wasSpace = true;
- default: *out = *ptr; out += 1; break;
+ case '\n': wcscpy(out, L"<br>"); out += 4; break;
+ case '\r': break;
+ case '&': wcscpy(out, L"&"); out += 5; break;
+ case '>': wcscpy(out, L">"); out += 4; break;
+ case '<': wcscpy(out, L"<"); out += 4; break;
+ case '"': wcscpy(out, L"""); out += 6; break;
+ case ' ': wasSpace = true;
+ default: *out = *ptr; out += 1; break;
}
}
}
- *out = '\0';
+ *out = '\0';
return output;
}
@@ -633,190 +569,199 @@ void TextToken::toString(wchar_t **str, int *sizeAlloced) {
wchar_t *eText = NULL, *eLink = NULL;
switch (type) {
- case TEXT:
- eText = htmlEncode(wtext);
- Utils::appendText(str, sizeAlloced, L"%s", eText);
- break;
- case WWWLINK:
- case LINK:
- {
- eText = htmlEncode(wtext);
- eLink = htmlEncode(wlink);
- const wchar_t *linkPrefix = type == WWWLINK ? L"http://" : L"";
- if ((Options::getGeneralFlags()&Options::GENERAL_ENABLE_EMBED)) {
- wchar_t *match = wcsstr(wlink, L"youtube.com");
- if (match != NULL) {
- match = wcsstr(match + 11, L"v=");
- if (match != NULL) {
- match += 2;
- wchar_t *match2 = wcsstr(match, L"&");
- int len = match2 != NULL ? match2 - match : (int)wcslen(match);
- match = mir_wstrdup(match);
- match[len] = 0;
- int width ;
- int height;
- int Embedsize = Options::getEmbedsize();
- switch (Embedsize){
- case 0:
- width = 320;
- height = 205;
- break;
- case 1:
- width = 480;
- height = 385;
- break;
- case 2:
- width = 560;
- height = 349;
- break;
- case 3:
- width = 640;
- height = 390;
- break;
-
- };
-
- Utils::appendText(str, sizeAlloced, L"<div><object width=\"%d\" height=\"%d\">\
- <param name=\"movie\" value=\"http://www.youtube.com/v/%s&feature=player_embedded&version=3\"/>\
- <param name=\"allowFullScreen\" value=\"true\"/>\
- <param name=\"allowScriptAccess\" value=\"true\"/>\
- <embed src=\"http://www.youtube.com/v/%s&feature=player_embedded&version=3\" type=\"application/x-shockwave-flash\" allowfullscreen=\"true\" allowScriptAccess=\"always\" width=\"%d\" height=\"%d\"/>\
- </object></div>", width, height, match, match, width, height);
- mir_free(match);
- break;
- }
- }
+ case TEXT:
+ eText = htmlEncode(wtext);
+ Utils::appendText(str, sizeAlloced, L"%s", eText);
+ break;
+ case WWWLINK:
+ case LINK:
+ {
+ eText = htmlEncode(wtext);
+ eLink = htmlEncode(wlink);
+ const wchar_t *linkPrefix = type == WWWLINK ? L"http://" : L"";
+ if ((Options::getGeneralFlags()&Options::GENERAL_ENABLE_EMBED)) {
+ wchar_t *match = wcsstr(wlink, L"youtube.com");
+ if (match != NULL) {
+ match = wcsstr(match + 11, L"v=");
+ if (match != NULL) {
+ match += 2;
+ wchar_t *match2 = wcsstr(match, L"&");
+ int len = match2 != NULL ? match2 - match : (int)wcslen(match);
+ match = mir_wstrdup(match);
+ match[len] = 0;
+ int width;
+ int height;
+ int Embedsize = Options::getEmbedsize();
+ switch (Embedsize){
+ case 0:
+ width = 320;
+ height = 205;
+ break;
+ case 1:
+ width = 480;
+ height = 385;
+ break;
+ case 2:
+ width = 560;
+ height = 349;
+ break;
+ case 3:
+ width = 640;
+ height = 390;
+ break;
+
+ };
+
+ Utils::appendText(str, sizeAlloced, L"<div><object width=\"%d\" height=\"%d\">\
+ <param name=\"movie\" value=\"http://www.youtube.com/v/%s&feature=player_embedded&version=3\"/>\
+ <param name=\"allowFullScreen\" value=\"true\"/>\
+ <param name=\"allowScriptAccess\" value=\"true\"/>\
+ <embed src=\"http://www.youtube.com/v/%s&feature=player_embedded&version=3\" type=\"application/x-shockwave-flash\" allowfullscreen=\"true\" allowScriptAccess=\"always\" width=\"%d\" height=\"%d\"/>\
+ </object></div>", width, height, match, match, width, height);
+ mir_free(match);
+ break;
}
- Utils::appendText(str, sizeAlloced, L"<a class=\"link\" target=\"_self\" href=\"%s%s\">%s</a>", linkPrefix, eLink, eText);
- }
- break;
- case SMILEY:
- eText = htmlEncode(wtext);
- if ((Options::getGeneralFlags()&Options::GENERAL_ENABLE_FLASH) && (wcsstr(wlink, L".swf")!=NULL)) {
- Utils::appendText(str, sizeAlloced,
- L"<span title=\"%s\" class=\"img\"><object classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\" \
- codebase=\"http://active.macromedia.com/flash2/cabs/swflash.cab#version=4,0,0,0\" >\
- <param NAME=\"movie\" VALUE=\"%s\"><param NAME=\"quality\" VALUE=\"high\"><PARAM NAME=\"loop\" VALUE=\"true\"></object></span><span style=\"position:absolute; visibility:hidden;\">%s</span>",
- eText, wlink, eText);
- } else if ((Options::getGeneralFlags()&Options::GENERAL_ENABLE_PNGHACK) && (wcsstr(wlink, L".png")!=NULL)) {
- Utils::appendText(str, sizeAlloced, L"<img class=\"img\" style=\"height:1px;width:1px;filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='%s',sizingMethod='image');\" title=\"%s\" alt=\"%s\"/><span style=\"position:absolute; visibility:hidden;\">%s</span>", wlink, eText, eText, eText);
- } else {
- Utils::appendText(str, sizeAlloced, L"<img class=\"img\" src=\"file://%s\" title=\"%s\" alt=\"%s\" /><span style=\"position:absolute; visibility:hidden;\">%s</span>", wlink, eText, eText, eText);
}
- break;
- case MATH:
- eText = htmlEncode(wtext);
- if ((Options::getGeneralFlags()&Options::GENERAL_ENABLE_PNGHACK) && (wcsstr(wlink, L".png")!=NULL)) {
- Utils::appendText(str, sizeAlloced, L"<img class=\"img\" style=\"height:1px;width:1px;filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='%s',sizingMethod='image');\" alt=\"%s\" /><span style=\"position:absolute; visibility:hidden;\">%s</span>",wlink , eText, eText);
- } else {
- Utils::appendText(str, sizeAlloced, L"<img class=\"img\" src=\"file://%s\" alt=\"%s\" /><span style=\"position:absolute; visibility:hidden;\">%s</span>", wlink, eText, eText);
- }
- break;
- case BBCODE:
- if (!end) {
- switch (tag) {
- case BB_B:
- //Utils::appendText(str, sizeAlloced, L"<span style=\"font-weight: bold;\">");
- Utils::appendText(str, sizeAlloced, L"<b>");
- break;
- case BB_I:
- //Utils::appendText(str, sizeAlloced, L"<span style=\"font-style: italic;\">");
- Utils::appendText(str, sizeAlloced, L"<i>");
- break;
- case BB_U:
- //Utils::appendText(str, sizeAlloced, L"<span style=\"text-decoration: underline;\">");
- Utils::appendText(str, sizeAlloced, L"<u>");
- break;
- case BB_S:
- //Utils::appendText(str, sizeAlloced, L"<span style=\"font-style: italic;\">");
- Utils::appendText(str, sizeAlloced, L"<s>");
- break;
- case BB_CODE:
- //Utils::appendText(str, sizeAlloced, L"<span style=\"font-style: italic;\">");
- Utils::appendText(str, sizeAlloced, L"<pre class=\"code\">");
- break;
- case BB_IMG:
- eText = htmlEncode(wtext);
- if ((Options::getGeneralFlags()&Options::GENERAL_ENABLE_FLASH) && eText != NULL && (wcsstr(eText, L".swf")!=NULL)) {
- Utils::appendText(str, sizeAlloced,
- L"<div style=\"width: 100%%; border: 0; overflow: hidden;\"><object classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\" \
- codebase=\"http://active.macromedia.com/flash2/cabs/swflash.cab#version=4,0,0,0\" width=\"100%%\" >\
- <param NAME=\"movie\" VALUE=\"%s\"><param NAME=\"quality\" VALUE=\"high\"><PARAM NAME=\"loop\" VALUE=\"true\"></object></div>",
- eText);
- } else if ((Options::getGeneralFlags()&Options::GENERAL_ENABLE_PNGHACK) && eText != NULL && (wcsstr(eText, L".png")!=NULL)) {
- Utils::appendText(str, sizeAlloced, L"<img class=\"img\" style=\"height:1px;width:1px;filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='%s',sizingMethod='image');\" />", eText);
- } else {
- if (eText != NULL && wcsncmp(eText, L"http://", 7)) {
- Utils::appendText(str, sizeAlloced, L"<div style=\"width: 100%%; border: 0; overflow: hidden;\"><img class=\"img\" style=\"width: expression((maxw = this.parentNode.offsetWidth ) > this.width ? 'auto' : maxw);\" src=\"file://%s\" /></div>", eText);
- } else {
- Utils::appendText(str, sizeAlloced, L"<div style=\"width: 100%%; border: 0; overflow: hidden;\"><img class=\"img\" style=\"width: expression((maxw = this.parentNode.offsetWidth ) > this.width ? 'auto' : maxw);\" src=\"%s\" /></div>", eText);
- }
- }
- break;
- case BB_BIMG:
- eText = htmlEncode(mir_ptr<wchar_t>(Utils::toAbsolute(wtext)));
-
- if ((Options::getGeneralFlags()&Options::GENERAL_ENABLE_FLASH) && (wcsstr(eText, L".swf")!=NULL)) {
- Utils::appendText(str, sizeAlloced,
- L"<div style=\"width: 100%%; border: 0; overflow: hidden;\"><object classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\" \
- codebase=\"http://active.macromedia.com/flash2/cabs/swflash.cab#version=4,0,0,0\" width=\"100%%\" >\
- <param NAME=\"movie\" VALUE=\"%s\"><param NAME=\"quality\" VALUE=\"high\"><PARAM NAME=\"loop\" VALUE=\"true\"></object></div>",
- eText);
- } else if ((Options::getGeneralFlags()&Options::GENERAL_ENABLE_PNGHACK) && (wcsstr(eText, L".png")!=NULL)) {
- Utils::appendText(str, sizeAlloced, L"<img class=\"img\" style=\"height:1px;width:1px;filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='%s',sizingMethod='image');\" />", eText);
- } else {
+ }
+ Utils::appendText(str, sizeAlloced, L"<a class=\"link\" target=\"_self\" href=\"%s%s\">%s</a>", linkPrefix, eLink, eText);
+ }
+ break;
+ case SMILEY:
+ eText = htmlEncode(wtext);
+ if ((Options::getGeneralFlags()&Options::GENERAL_ENABLE_FLASH) && (wcsstr(wlink, L".swf") != NULL)) {
+ Utils::appendText(str, sizeAlloced,
+ L"<span title=\"%s\" class=\"img\"><object classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\" \
+ codebase=\"http://active.macromedia.com/flash2/cabs/swflash.cab#version=4,0,0,0\" >\
+ <param NAME=\"movie\" VALUE=\"%s\"><param NAME=\"quality\" VALUE=\"high\"><PARAM NAME=\"loop\" VALUE=\"true\"></object></span><span style=\"position:absolute; visibility:hidden;\">%s</span>",
+ eText, wlink, eText);
+ }
+ else if ((Options::getGeneralFlags()&Options::GENERAL_ENABLE_PNGHACK) && (wcsstr(wlink, L".png") != NULL)) {
+ Utils::appendText(str, sizeAlloced, L"<img class=\"img\" style=\"height:1px;width:1px;filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='%s',sizingMethod='image');\" title=\"%s\" alt=\"%s\"/><span style=\"position:absolute; visibility:hidden;\">%s</span>", wlink, eText, eText, eText);
+ }
+ else {
+ Utils::appendText(str, sizeAlloced, L"<img class=\"img\" src=\"file://%s\" title=\"%s\" alt=\"%s\" /><span style=\"position:absolute; visibility:hidden;\">%s</span>", wlink, eText, eText, eText);
+ }
+ break;
+ case MATH:
+ eText = htmlEncode(wtext);
+ if ((Options::getGeneralFlags()&Options::GENERAL_ENABLE_PNGHACK) && (wcsstr(wlink, L".png") != NULL)) {
+ Utils::appendText(str, sizeAlloced, L"<img class=\"img\" style=\"height:1px;width:1px;filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='%s',sizingMethod='image');\" alt=\"%s\" /><span style=\"position:absolute; visibility:hidden;\">%s</span>", wlink, eText, eText);
+ }
+ else {
+ Utils::appendText(str, sizeAlloced, L"<img class=\"img\" src=\"file://%s\" alt=\"%s\" /><span style=\"position:absolute; visibility:hidden;\">%s</span>", wlink, eText, eText);
+ }
+ break;
+ case BBCODE:
+ if (!end) {
+ switch (tag) {
+ case BB_B:
+ //Utils::appendText(str, sizeAlloced, L"<span style=\"font-weight: bold;\">");
+ Utils::appendText(str, sizeAlloced, L"<b>");
+ break;
+ case BB_I:
+ //Utils::appendText(str, sizeAlloced, L"<span style=\"font-style: italic;\">");
+ Utils::appendText(str, sizeAlloced, L"<i>");
+ break;
+ case BB_U:
+ //Utils::appendText(str, sizeAlloced, L"<span style=\"text-decoration: underline;\">");
+ Utils::appendText(str, sizeAlloced, L"<u>");
+ break;
+ case BB_S:
+ //Utils::appendText(str, sizeAlloced, L"<span style=\"font-style: italic;\">");
+ Utils::appendText(str, sizeAlloced, L"<s>");
+ break;
+ case BB_CODE:
+ //Utils::appendText(str, sizeAlloced, L"<span style=\"font-style: italic;\">");
+ Utils::appendText(str, sizeAlloced, L"<pre class=\"code\">");
+ break;
+ case BB_IMG:
+ eText = htmlEncode(wtext);
+ if ((Options::getGeneralFlags()&Options::GENERAL_ENABLE_FLASH) && eText != NULL && (wcsstr(eText, L".swf") != NULL)) {
+ Utils::appendText(str, sizeAlloced,
+ L"<div style=\"width: 100%%; border: 0; overflow: hidden;\"><object classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\" \
+ codebase=\"http://active.macromedia.com/flash2/cabs/swflash.cab#version=4,0,0,0\" width=\"100%%\" >\
+ <param NAME=\"movie\" VALUE=\"%s\"><param NAME=\"quality\" VALUE=\"high\"><PARAM NAME=\"loop\" VALUE=\"true\"></object></div>",
+ eText);
+ }
+ else if ((Options::getGeneralFlags()&Options::GENERAL_ENABLE_PNGHACK) && eText != NULL && (wcsstr(eText, L".png") != NULL)) {
+ Utils::appendText(str, sizeAlloced, L"<img class=\"img\" style=\"height:1px;width:1px;filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='%s',sizingMethod='image');\" />", eText);
+ }
+ else {
+ if (eText != NULL && wcsncmp(eText, L"http://", 7)) {
Utils::appendText(str, sizeAlloced, L"<div style=\"width: 100%%; border: 0; overflow: hidden;\"><img class=\"img\" style=\"width: expression((maxw = this.parentNode.offsetWidth ) > this.width ? 'auto' : maxw);\" src=\"file://%s\" /></div>", eText);
}
- break;
- case BB_URL:
- eText = htmlEncode(wtext);
- eLink = htmlEncode(wlink);
- Utils::appendText(str, sizeAlloced, L"<a href =\"%s\">%s</a>", eLink, eText);
- break;
- case BB_COLOR:
- eText = htmlEncode(wtext);
- //Utils::appendText(str, sizeAlloced, L"<span style=\"color: %s;\">", eText);
- Utils::appendText(str, sizeAlloced, L"<font color =\"%s\">", eText);
- break;
- case BB_BACKGROUND:
- eText = htmlEncode(wtext);
- Utils::appendText(str, sizeAlloced, L"<span style=\"background: %s;\">", eText);
- break;
- case BB_SIZE:
- eText = htmlEncode(wtext);
- Utils::appendText(str, sizeAlloced, L"<span style=\"font-size: %s;\">", eText);
- break;
+ else {
+ Utils::appendText(str, sizeAlloced, L"<div style=\"width: 100%%; border: 0; overflow: hidden;\"><img class=\"img\" style=\"width: expression((maxw = this.parentNode.offsetWidth ) > this.width ? 'auto' : maxw);\" src=\"%s\" /></div>", eText);
+ }
}
- } else {
- switch (tag) {
- case BB_B:
- Utils::appendText(str, sizeAlloced, L"</b>");
- break;
- case BB_I:
- Utils::appendText(str, sizeAlloced, L"</i>");
- break;
- case BB_U:
- Utils::appendText(str, sizeAlloced, L"</u>");
- break;
- case BB_S:
- Utils::appendText(str, sizeAlloced, L"</s>");
- break;
- case BB_CODE:
- Utils::appendText(str, sizeAlloced, L"</pre>");
- break;
- case BB_COLOR:
- Utils::appendText(str, sizeAlloced, L"</font>");
- break;
- case BB_SIZE:
- Utils::appendText(str, sizeAlloced, L"</span>");
- break;
- case BB_BACKGROUND:
- Utils::appendText(str, sizeAlloced, L"</span>");
- break;
+ break;
+ case BB_BIMG:
+ eText = htmlEncode(mir_ptr<wchar_t>(Utils::toAbsolute(wtext)));
+
+ if ((Options::getGeneralFlags()&Options::GENERAL_ENABLE_FLASH) && (wcsstr(eText, L".swf") != NULL)) {
+ Utils::appendText(str, sizeAlloced,
+ L"<div style=\"width: 100%%; border: 0; overflow: hidden;\"><object classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\" \
+ codebase=\"http://active.macromedia.com/flash2/cabs/swflash.cab#version=4,0,0,0\" width=\"100%%\" >\
+ <param NAME=\"movie\" VALUE=\"%s\"><param NAME=\"quality\" VALUE=\"high\"><PARAM NAME=\"loop\" VALUE=\"true\"></object></div>",
+ eText);
+ }
+ else if ((Options::getGeneralFlags()&Options::GENERAL_ENABLE_PNGHACK) && (wcsstr(eText, L".png") != NULL)) {
+ Utils::appendText(str, sizeAlloced, L"<img class=\"img\" style=\"height:1px;width:1px;filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='%s',sizingMethod='image');\" />", eText);
+ }
+ else {
+ Utils::appendText(str, sizeAlloced, L"<div style=\"width: 100%%; border: 0; overflow: hidden;\"><img class=\"img\" style=\"width: expression((maxw = this.parentNode.offsetWidth ) > this.width ? 'auto' : maxw);\" src=\"file://%s\" /></div>", eText);
}
+ break;
+ case BB_URL:
+ eText = htmlEncode(wtext);
+ eLink = htmlEncode(wlink);
+ Utils::appendText(str, sizeAlloced, L"<a href =\"%s\">%s</a>", eLink, eText);
+ break;
+ case BB_COLOR:
+ eText = htmlEncode(wtext);
+ //Utils::appendText(str, sizeAlloced, L"<span style=\"color: %s;\">", eText);
+ Utils::appendText(str, sizeAlloced, L"<font color =\"%s\">", eText);
+ break;
+ case BB_BACKGROUND:
+ eText = htmlEncode(wtext);
+ Utils::appendText(str, sizeAlloced, L"<span style=\"background: %s;\">", eText);
+ break;
+ case BB_SIZE:
+ eText = htmlEncode(wtext);
+ Utils::appendText(str, sizeAlloced, L"<span style=\"font-size: %s;\">", eText);
+ break;
+ }
+ }
+ else {
+ switch (tag) {
+ case BB_B:
+ Utils::appendText(str, sizeAlloced, L"</b>");
+ break;
+ case BB_I:
+ Utils::appendText(str, sizeAlloced, L"</i>");
+ break;
+ case BB_U:
+ Utils::appendText(str, sizeAlloced, L"</u>");
+ break;
+ case BB_S:
+ Utils::appendText(str, sizeAlloced, L"</s>");
+ break;
+ case BB_CODE:
+ Utils::appendText(str, sizeAlloced, L"</pre>");
+ break;
+ case BB_COLOR:
+ Utils::appendText(str, sizeAlloced, L"</font>");
+ break;
+ case BB_SIZE:
+ Utils::appendText(str, sizeAlloced, L"</span>");
+ break;
+ case BB_BACKGROUND:
+ Utils::appendText(str, sizeAlloced, L"</span>");
+ break;
}
- break;
+ }
+ break;
}
- if (eText!=NULL) delete eText;
- if (eLink!=NULL) delete eLink;
+ if (eText != NULL) delete eText;
+ if (eLink != NULL) delete eLink;
}
diff --git a/plugins/IEView/src/TextToken.h b/plugins/IEView/src/TextToken.h index e9b2417ca4..68e607cd69 100644 --- a/plugins/IEView/src/TextToken.h +++ b/plugins/IEView/src/TextToken.h @@ -84,7 +84,6 @@ public: static TextToken* tokenizeLinks(const wchar_t *wtext);
static TextToken* tokenizeSmileys(MCONTACT hContact, const char *proto, const wchar_t *wtext, bool isSent);
static TextToken* tokenizeBBCodes(const wchar_t *text);
- static TextToken* tokenizeMath(const wchar_t *text);
static TextToken* tokenizeChatFormatting(const wchar_t *text);
};
#endif
diff --git a/plugins/IEView/src/ieview_common.h b/plugins/IEView/src/ieview_common.h index fbfb60b3ec..fe3301f549 100644 --- a/plugins/IEView/src/ieview_common.h +++ b/plugins/IEView/src/ieview_common.h @@ -53,7 +53,6 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. #include <m_smileyadd.h>
#include <m_ieview.h>
-#include <m_MathModule.h>
#include <m_metacontacts.h>
#include "IEView.h"
diff --git a/plugins/IEView/src/resource.h b/plugins/IEView/src/resource.h index 073073f64e..ce77e9d24f 100644 --- a/plugins/IEView/src/resource.h +++ b/plugins/IEView/src/resource.h @@ -33,7 +33,6 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. #define IDC_SCROLL_BACKGROUND_IMAGE 1003
#define IDC_ENABLE_BBCODES 1004
#define IDC_ENABLE_FLASH 1005
-#define IDC_ENABLE_MATHMODULE 1006
#define IDC_ENABLE_PNGHACK 1007
#define IDC_SMILEYS_IN_NAMES 1008
#define IDC_NO_BORDER 1009
diff --git a/plugins/MyDetails/src/commons.h b/plugins/MyDetails/src/commons.h index 408feb8ba8..ee2e8c56eb 100644 --- a/plugins/MyDetails/src/commons.h +++ b/plugins/MyDetails/src/commons.h @@ -46,7 +46,6 @@ Boston, MA 02111-1307, USA. #include <m_proto_listeningto.h>
#include <m_listeningto.h>
#include <m_statusplugins.h>
-#include <m_simpleaway.h>
#include <m_smileyadd.h>
#include <m_mydetails.h>
#include <m_skin_eng.h>
diff --git a/plugins/MyDetails/src/data.cpp b/plugins/MyDetails/src/data.cpp index c6afc471e8..8244c6e7b2 100644 --- a/plugins/MyDetails/src/data.cpp +++ b/plugins/MyDetails/src/data.cpp @@ -219,10 +219,6 @@ void Protocol::GetStatusMsg(int aStatus, TCHAR *msg, size_t msg_size) ptrT tmp((TCHAR *)CallProtoService(name, PS_GETMYAWAYMSG, 0, SGMA_TCHAR));
lcopystr(msg, tmp == NULL ? _T("") : tmp, msg_size);
}
- else if (ServiceExists(MS_AWAYMSG_GETSTATUSMSGT)) {
- ptrT tmp((TCHAR*)CallService(MS_AWAYMSG_GETSTATUSMSGT, (WPARAM)aStatus, 0));
- lcopystr(msg, tmp == NULL ? _T("") : tmp, msg_size);
- }
}
TCHAR* Protocol::GetStatusMsg()
@@ -443,13 +439,6 @@ Protocol *ProtocolArray::Get(const char *name) return NULL;
}
-
-bool ProtocolArray::CanSetStatusMsgPerProtocol()
-{
- return ServiceExists(MS_SA_CHANGESTATUSMSG) != 0;
-}
-
-
void ProtocolArray::GetAvatars()
{
for (int i = 0; i < buffer_len; i++)
@@ -558,12 +547,6 @@ TCHAR *ProtocolArray::GetDefaultStatusMsg(int status) if (status == ID_STATUS_CONNECTING)
status = ID_STATUS_OFFLINE;
- TCHAR *tmp = (TCHAR *)CallService(MS_AWAYMSG_GETSTATUSMSGT, (WPARAM)status, 0);
- if (tmp != NULL) {
- lstrcpyn(default_status_message, tmp, SIZEOF(default_status_message));
- mir_free(tmp);
- }
-
return default_status_message;
}
diff --git a/plugins/MyDetails/src/data.h b/plugins/MyDetails/src/data.h index 53bc6ade9d..803c6ecc23 100644 --- a/plugins/MyDetails/src/data.h +++ b/plugins/MyDetails/src/data.h @@ -134,8 +134,6 @@ public: void GetStatuses();
int GetGlobalStatus();
- bool CanSetStatusMsgPerProtocol();
-
void GetDefaultNick(); // Copy to cache
void GetDefaultAvatar(); // Copy to cache
TCHAR *GetDefaultStatusMsg(); // Copy to cache
diff --git a/plugins/MyDetails/src/frame.cpp b/plugins/MyDetails/src/frame.cpp index 2469e22728..3e1309edd8 100644 --- a/plugins/MyDetails/src/frame.cpp +++ b/plugins/MyDetails/src/frame.cpp @@ -1806,26 +1806,6 @@ LRESULT CALLBACK FrameWindowProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lPar HMENU submenu = GetSubMenu(menu, 3);
TranslateMenu(submenu);
- if (protocols->CanSetStatusMsgPerProtocol()) {
- // Add this proto to menu
- mir_sntprintf(tmp, SIZEOF(tmp), TranslateT("Set my status message for %s..."), proto->description);
-
- MENUITEMINFO mii = {0};
- mii.cbSize = sizeof(mii);
- mii.fMask = MIIM_ID | MIIM_TYPE;
- mii.fType = MFT_STRING;
- mii.dwTypeData = tmp;
- mii.cch = (int)_tcslen(tmp);
- mii.wID = 1;
-
- if (!proto->CanSetStatusMsg()) {
- mii.fMask |= MIIM_STATE;
- mii.fState = MFS_DISABLED;
- }
-
- InsertMenuItem(submenu, 0, TRUE, &mii);
- }
-
// Add this to menu
mir_sntprintf(tmp, SIZEOF(tmp), TranslateT("Set my status message for %s..."),
CallService(MS_CLIST_GETSTATUSMODEDESCRIPTION, proto->status, GSMDF_TCHAR));
@@ -1927,26 +1907,6 @@ LRESULT CALLBACK FrameWindowProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lPar InsertMenuItem(submenu, 0, TRUE, &mii);
- if (protocols->CanSetStatusMsgPerProtocol()) {
- // Add this proto to menu
- mir_sntprintf(tmp, SIZEOF(tmp), TranslateT("Set my status message for %s..."), proto->description);
-
- ZeroMemory(&mii, sizeof(mii));
- mii.cbSize = sizeof(mii);
- mii.fMask = MIIM_ID | MIIM_TYPE;
- mii.fType = MFT_STRING;
- mii.dwTypeData = tmp;
- mii.cch = (int)_tcslen(tmp);
- mii.wID = 3;
-
- if ( !proto->CanSetStatusMsg()) {
- mii.fMask |= MIIM_STATE;
- mii.fState = MFS_DISABLED;
- }
-
- InsertMenuItem(submenu, 0, TRUE, &mii);
- }
-
mir_sntprintf(tmp, SIZEOF(tmp), TranslateT("Set my nickname for %s..."), proto->description);
ZeroMemory(&mii, sizeof(mii));
diff --git a/plugins/MyDetails/src/mydetails.cpp b/plugins/MyDetails/src/mydetails.cpp index 7b8d6bf2f3..5316f302eb 100644 --- a/plugins/MyDetails/src/mydetails.cpp +++ b/plugins/MyDetails/src/mydetails.cpp @@ -488,19 +488,9 @@ static INT_PTR PluginCommand_SetMyStatusMessageUI(WPARAM wParam, LPARAM lParam) if (proto_num == -1)
return -1;
- if (protocols->CanSetStatusMsgPerProtocol() && !proto->CanSetStatusMsg())
+ if (!proto->CanSetStatusMsg())
return -2;
}
- else if (ServiceExists(MS_SA_CHANGESTATUSMSG)) {
- if (proto == NULL && status == 0)
- CallService(MS_SA_CHANGESTATUSMSG, protocols->GetGlobalStatus(), NULL);
- else if (status == 0)
- CallService(MS_SA_CHANGESTATUSMSG, proto->status, (LPARAM)proto_name);
- else
- CallService(MS_SA_CHANGESTATUSMSG, status, (LPARAM)proto_name);
-
- return 0;
- }
if (proto == NULL || proto->status != ID_STATUS_OFFLINE) {
if (!status_msg_dialog_open) {
diff --git a/plugins/NewAwaySysMod/NewAwaySys_12.vcxproj b/plugins/NewAwaySysMod/NewAwaySys_12.vcxproj index e0731ab734..c4d959a7d7 100644 --- a/plugins/NewAwaySysMod/NewAwaySys_12.vcxproj +++ b/plugins/NewAwaySysMod/NewAwaySys_12.vcxproj @@ -82,7 +82,6 @@ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<PrecompiledHeader>Use</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
<PrecompiledHeaderFile>Common.h</PrecompiledHeaderFile>
</ClCompile>
<Link>
@@ -91,6 +90,7 @@ <SubSystem>Windows</SubSystem>
<RandomizedBaseAddress>false</RandomizedBaseAddress>
<AdditionalLibraryDirectories>$(ProfileDir)..\..\bin12\lib</AdditionalLibraryDirectories>
+ <AdditionalDependencies>comctl32.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
<ResourceCompile>
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -114,6 +114,7 @@ <SubSystem>Windows</SubSystem>
<RandomizedBaseAddress>false</RandomizedBaseAddress>
<AdditionalLibraryDirectories>$(ProfileDir)..\..\bin12\lib</AdditionalLibraryDirectories>
+ <AdditionalDependencies>comctl32.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
<ResourceCompile>
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -143,6 +144,7 @@ <SubSystem>Windows</SubSystem>
<RandomizedBaseAddress>false</RandomizedBaseAddress>
<AdditionalLibraryDirectories>$(ProfileDir)..\..\bin12\lib</AdditionalLibraryDirectories>
+ <AdditionalDependencies>comctl32.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -172,6 +174,7 @@ <SubSystem>Windows</SubSystem>
<RandomizedBaseAddress>false</RandomizedBaseAddress>
<AdditionalLibraryDirectories>$(ProfileDir)..\..\bin12\lib</AdditionalLibraryDirectories>
+ <AdditionalDependencies>comctl32.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
diff --git a/plugins/NewAwaySysMod/src/AwaySys.cpp b/plugins/NewAwaySysMod/src/AwaySys.cpp index 0dae3e2a38..225620bdce 100644 --- a/plugins/NewAwaySysMod/src/AwaySys.cpp +++ b/plugins/NewAwaySysMod/src/AwaySys.cpp @@ -34,7 +34,6 @@ #include "m_idle.h"
#include "m_statusplugins.h"
#include "m_NewAwaySys.h"
-#include "m_ContactSettings.h"
#include "MsgTree.h"
#include "ContactList.h"
#include "Properties.h"
@@ -159,32 +158,6 @@ int StatusMsgReq(WPARAM wParam, LPARAM lParam, CString &szProto) if (!iMode)
VarParseData.Flags |= VPF_XSTATUS;
- TCString LogMsg;
- if (!iMode) { // if it's an xstatus message request
- LogMsg = db_get_s(NULL, szProto, "XStatusName", _T(""));
- TCString XMsg(db_get_s(NULL, szProto, "XStatusMsg", _T("")));
- if (XMsg.GetLen()) {
- if (LogMsg.GetLen())
- LogMsg += _T("\r\n");
-
- LogMsg += XMsg;
- }
- }
- else LogMsg = VarParseData.Message;
-
- if (ServiceExists(MS_VARS_FORMATSTRING))
- logservice_log(LOG_ID, hFoundContact, LogMsg);
- else {
- TCString szUIN;
- _ultot(lParam, szUIN.GetBuffer(16), 10);
- szUIN.ReleaseBuffer();
- TCHAR *szStatDesc = iMode ? pcli->pfnGetStatusModeDescription(iMode, 0) : STR_XSTATUSDESC;
- if (!szStatDesc) {
- _ASSERT(0);
- szStatDesc = _T("");
- }
- logservice_log(LOG_ID, hFoundContact, TCString(pcli->pfnGetContactDisplayName(hFoundContact, 0)) + _T(" (") + szUIN + TranslateT(") read your ") + szStatDesc + TranslateT(" message:\r\n") + LogMsg);
- }
return 0;
}
@@ -473,70 +446,6 @@ static int IconsChanged(WPARAM, LPARAM) return 0;
}
-static int ContactSettingsInit(WPARAM wParam, LPARAM)
-{
- CONTACTSETTINGSINIT *csi = (CONTACTSETTINGSINIT*)wParam;
- char *szProto = (csi->Type == CSIT_CONTACT) ? GetContactProto(csi->hContact) : NULL;
- if ((csi->Type == CSIT_GROUP) || szProto) {
- int Flag1 = (csi->Type == CSIT_CONTACT) ? CallProtoService(szProto, PS_GETCAPS, PFLAGNUM_1, 0) : PF1_IM; // we assume that there can be some contacts in the group with PF1_IM capability
- if ((Flag1 & PF1_IM) == PF1_IM || Flag1 & PF1_INDIVMODEMSG) { // does contact's protocol supports message sending/receiving or individual status messages?
- CONTACTSETTINGSCONTROL csc = { 0 };
- csc.cbSize = sizeof(csc);
- csc.cbStateSize = sizeof(CSCONTROLSTATE);
- csc.Position = CSPOS_SORTBYALPHABET;
- csc.ControlType = CSCT_CHECKBOX;
- csc.szModule = MOD_NAME;
- csc.StateNum = 3;
- csc.DefState = 2; // these settings are used for all controls below
-
- int StatusMode = 0;
- if (csi->Type == CSIT_CONTACT) {
- CContactSettings CSettings(0, csi->hContact);
- StatusMode = CSettings.Status;
- }
- else {
- _ASSERT(csi->Type == CSIT_GROUP);
- StatusMode = g_ProtoStates[(char*)NULL].Status;
- }
-
- if (StatusMode == ID_STATUS_OFFLINE)
- StatusMode = ID_STATUS_AWAY;
-
- CString Setting;
- TCHAR Title[128];
- csc.Flags = CSCF_TCHAR | CSCF_DONT_TRANSLATE_STRINGS; // these Flags and ptszGroup are used for both controls below
- csc.ptszGroup = TranslateT("New Away System");
-
- if (g_MoreOptPage.GetDBValueCopy(IDC_MOREOPTDLG_PERSTATUSPERSONALSETTINGS)) {
- mir_sntprintf(Title, SIZEOF(Title), TranslateT("Enable autoreply when you are %s"), pcli->pfnGetStatusModeDescription(StatusMode, 0));
- csc.ptszTitle = Title;
- csc.ptszTooltip = TranslateT("\"Store contact autoreply/ignore settings for each status separately\" is enabled, so this setting is per-contact AND per-status.");
- }
- else {
- csc.ptszTitle = TranslateT("Enable autoreply");
- csc.ptszTooltip = NULL;
- }
- Setting = StatusToDBSetting(StatusMode, DB_ENABLEREPLY, IDC_MOREOPTDLG_PERSTATUSPERSONALSETTINGS);
- csc.szSetting = Setting;
- CallService(MS_CONTACTSETTINGS_ADDCONTROL, wParam, (LPARAM)&csc);
-
- if (g_MoreOptPage.GetDBValueCopy(IDC_MOREOPTDLG_PERSTATUSPERSONALSETTINGS)) {
- mir_sntprintf(Title, SIZEOF(Title), TranslateT("Don't send status message when you are %s"), pcli->pfnGetStatusModeDescription(StatusMode, 0));
- csc.ptszTitle = Title;
- csc.ptszTooltip = TranslateT("Ignore status message requests from this contact and don't send an autoreply.\r\n\"Store contact autoreply/ignore settings for each status separately\" is enabled, so this setting is per-contact AND per-status.");
- }
- else {
- csc.ptszTitle = TranslateT("Don't send status message");
- csc.ptszTooltip = TranslateT("Ignore status message requests from this contact and don't send an autoreply");
- }
- Setting = StatusToDBSetting(StatusMode, DB_IGNOREREQUESTS, IDC_MOREOPTDLG_PERSTATUSPERSONALSETTINGS);
- csc.szSetting = Setting;
- CallService(MS_CONTACTSETTINGS_ADDCONTROL, wParam, (LPARAM)&csc);
- }
- }
- return 0;
-}
-
/////////////////////////////////////////////////////////////////////////////////////////
// variables
@@ -700,7 +609,6 @@ int MirandaLoaded(WPARAM, LPARAM) HookEvent(ME_CLIST_PREBUILDCONTACTMENU, PreBuildContactMenu);
HookEvent(ME_SKIN_ICONSCHANGED, IconsChanged);
HookEvent(ME_IDLE_CHANGED, IdleChangeEvent);
- HookEvent(ME_CONTACTSETTINGS_INITIALISE, ContactSettingsInit);
g_hReadWndList = WindowList_Create();
@@ -801,8 +709,6 @@ extern "C" int __declspec(dllexport) Load(void) InitCommonControls();
InitOptions(); // must be called before we hook CallService
- logservice_register(LOG_ID, LPGENT("New Away System"), _T("NewAwaySys?puts(p,?dbsetting(%subject%,Protocol,p))?if2(_?dbsetting(,?get(p),?pinfo(?get(p),uidsetting)),).log"), TranslateT("`[`!cdate()-!ctime()`]` ?cinfo(%subject%,display) (?cinfo(%subject%,id)) read your %nas_statdesc% message:\r\n%extratext%\r\n\r\n"));
-
if (db_get_b(NULL, MOD_NAME, DB_SETTINGSVER, 0) < 1) { // change all %nas_message% variables to %extratext% if it wasn't done before
TCString Str = db_get_s(NULL, MOD_NAME, "PopupsFormat", _T(""));
if (Str.GetLen())
diff --git a/plugins/NewAwaySysMod/src/Common.h b/plugins/NewAwaySysMod/src/Common.h index 95d3268684..f9ca1ef548 100644 --- a/plugins/NewAwaySysMod/src/Common.h +++ b/plugins/NewAwaySysMod/src/Common.h @@ -67,9 +67,6 @@ #include "m_toptoolbar.h"
#include "m_popup.h"
#include "m_metacontacts.h"
-#include "m_LogService.h"
-
-#pragma comment(lib,"comctl32.lib")
#include "CString.h"
#include "Options.h"
diff --git a/plugins/New_GPG/src/commonheaders.h b/plugins/New_GPG/src/commonheaders.h index 01a1d59ff5..5af43c1c9e 100644 --- a/plugins/New_GPG/src/commonheaders.h +++ b/plugins/New_GPG/src/commonheaders.h @@ -62,7 +62,7 @@ using std::fstream; #include <m_skin.h> #include <m_protomod.h> #include <m_jabber.h> -#include <m_icqplus.h> +#include <m_icq.h> #include <m_message.h> #include <m_cluiframes.h> #include <m_icolib.h> diff --git a/plugins/NotifyAnything/src/common.h b/plugins/NotifyAnything/src/common.h index ff1f9c2588..0b44f0e8db 100644 --- a/plugins/NotifyAnything/src/common.h +++ b/plugins/NotifyAnything/src/common.h @@ -16,8 +16,6 @@ #include "m_database.h"
#include "m_popup.h"
-#include "m_LogService.h"
-
#include "resource.h"
#include "Version.h"
@@ -49,5 +47,4 @@ void load_settings(); int OptionsInitialize(WPARAM wParam, LPARAM lParam);
extern std::string g_mirandaDir;
-extern bool IsLogService;
#define LOG_ID LPGEN("NotifyAnything")
diff --git a/plugins/NotifyAnything/src/main.cpp b/plugins/NotifyAnything/src/main.cpp index dc93702c32..a545a16518 100644 --- a/plugins/NotifyAnything/src/main.cpp +++ b/plugins/NotifyAnything/src/main.cpp @@ -17,30 +17,18 @@ back to the main thread. void cslog(const char *what, const char *file, int line)
{
- if (IsLogService){
- std::string LogString;
- char buf[10];
- LogString = what;
- LogString += ": ";
- LogString += file;
- LogString += ":";
- LogString += itoa(line, buf, 10);
- logservice_log(LOG_ID, NULL, (TCHAR *) LogString.c_str());
- }
- else {
- if (g_settings.log_to_file) {
- time_t t_;
- time(&t_);
- tm *t = localtime(&t_);
- //FILE *f = fopen("na.log", "a");
- FILE *f = fopen(g_settings.log_filename.c_str(), "a");
- if (f) {
- //fprintf(f, "%s: %s:%i\n", what, file, line);
- fprintf(f, "[%04i-%02i-%02i %02i:%02i:%02i cs] %s: %s:%i\n",
- int(t->tm_year+1900), int(t->tm_mon), int(t->tm_mday),
- int(t->tm_hour), int(t->tm_min), int(t->tm_sec), what, file, line);
- fclose(f);
- }
+ if (g_settings.log_to_file) {
+ time_t t_;
+ time(&t_);
+ tm *t = localtime(&t_);
+ //FILE *f = fopen("na.log", "a");
+ FILE *f = fopen(g_settings.log_filename.c_str(), "a");
+ if (f) {
+ //fprintf(f, "%s: %s:%i\n", what, file, line);
+ fprintf(f, "[%04i-%02i-%02i %02i:%02i:%02i cs] %s: %s:%i\n",
+ int(t->tm_year + 1900), int(t->tm_mon), int(t->tm_mday),
+ int(t->tm_hour), int(t->tm_min), int(t->tm_sec), what, file, line);
+ fclose(f);
}
}
}
@@ -64,7 +52,6 @@ SOCKET g_udp_socket, g_tcp_socket; volatile bool g_exit_threads, g_firstrun;
std::string g_mirandaDir;
CRITICAL_SECTION g_wsocklock;
-bool IsLogService;
HINSTANCE hInst;
int hLangpack;
@@ -80,7 +67,7 @@ PLUGININFOEX pluginInfo = { __AUTHORWEB,
UNICODE_AWARE,
// {E92874EC-594A-4A2F-BDED-C0BE8B5A45D1}
- {0xe92874ec, 0x594a, 0x4a2f, {0xbd, 0xed, 0xc0, 0xbe, 0x8b, 0x5a, 0x45, 0xd1}}
+ { 0xe92874ec, 0x594a, 0x4a2f, { 0xbd, 0xed, 0xc0, 0xbe, 0x8b, 0x5a, 0x45, 0xd1 } }
};
BOOL WINAPI DllMain(HINSTANCE hi, DWORD, LPVOID)
@@ -117,8 +104,8 @@ std::string strip(std::string str) {
while (!str.empty() && isspace(str[0]))
str.erase(0, 1);
- while (!str.empty() && isspace(*(str.end()-1)))
- str.erase(str.size()-1);
+ while (!str.empty() && isspace(*(str.end() - 1)))
+ str.erase(str.size() - 1);
return str;
}
@@ -127,23 +114,18 @@ void dbg_msg(std::string str, int type) str = strip(str);
if (g_settings.debug_messages)
- CallServiceSync(MS_POPUP_SHOWMESSAGE, (WPARAM) const_cast<char *>(str.c_str()), (LPARAM) type);
-
- if (IsLogService){
- logservice_log(LOG_ID, NULL, (TCHAR *) str.c_str());
- }
- else {
- if (g_settings.log_to_file) {
- time_t t_;
- time(&t_);
- tm *t = localtime(&t_);
- FILE *f = fopen(g_settings.log_filename.c_str(), "a");
- if (f) {
- fprintf(f, "[%04i-%02i-%02i %02i:%02i:%02i dbg_msg] %s\n",
- int(t->tm_year+1900), int(t->tm_mon), int(t->tm_mday),
- int(t->tm_hour), int(t->tm_min), int(t->tm_sec), str.c_str());
- fclose(f);
- }
+ CallServiceSync(MS_POPUP_SHOWMESSAGE, (WPARAM) const_cast<char *>(str.c_str()), (LPARAM)type);
+
+ if (g_settings.log_to_file) {
+ time_t t_;
+ time(&t_);
+ tm *t = localtime(&t_);
+ FILE *f = fopen(g_settings.log_filename.c_str(), "a");
+ if (f) {
+ fprintf(f, "[%04i-%02i-%02i %02i:%02i:%02i dbg_msg] %s\n",
+ int(t->tm_year + 1900), int(t->tm_mon), int(t->tm_mday),
+ int(t->tm_hour), int(t->tm_min), int(t->tm_sec), str.c_str());
+ fclose(f);
}
}
}
@@ -153,10 +135,10 @@ void showLastError() int err = GetLastError();
LPVOID lpMsgBuf;
- FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER|FORMAT_MESSAGE_FROM_SYSTEM|FORMAT_MESSAGE_IGNORE_INSERTS,
- NULL, err, MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), (LPTSTR) &lpMsgBuf, 0, NULL);
+ FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM | FORMAT_MESSAGE_IGNORE_INSERTS,
+ NULL, err, MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), (LPTSTR)&lpMsgBuf, 0, NULL);
- dbg_msg((char *) lpMsgBuf, SM_WARNING);
+ dbg_msg((char *)lpMsgBuf, SM_WARNING);
LocalFree(lpMsgBuf);
}
@@ -169,7 +151,7 @@ struct enum_icons_t { BOOL CALLBACK enum_icons_func(HMODULE, LPCTSTR, LPTSTR name, LONG_PTR data)
{
- enum_icons_t *info = (enum_icons_t *) data;
+ enum_icons_t *info = (enum_icons_t *)data;
if (!--info->nr) {
info->found = true;
info->name = name;
@@ -232,8 +214,8 @@ HICON getIcon(const std::string &name) if (p == name.npos) {
// try to load icon file
HANDLE h = LoadImageA(NULL, name.c_str(), IMAGE_ICON, 16, 16, LR_LOADFROMFILE);
- if (h != NULL)
- return icons[name] = (HICON) h;
+ if (h != NULL)
+ return icons[name] = (HICON)h;
showLastError();
return deficon;
@@ -241,7 +223,7 @@ HICON getIcon(const std::string &name) std::tstring file((TCHAR*)_A2T(name.c_str()), 0, p);
- std::tstring rname(file.c_str(), p+1);
+ std::tstring rname(file.c_str(), p + 1);
if (rname.empty()) {
dbg_msg(Translate("No resource name given."), SM_WARNING);
return deficon;
@@ -262,8 +244,8 @@ HICON getIcon(const std::string &name) dbg_msg("Icon indices start at 1.", SM_WARNING);
return deficon;
}
-
- BOOL ok = EnumResourceNames(module, RT_GROUP_ICON, enum_icons_func, (LONG_PTR) &info);
+
+ BOOL ok = EnumResourceNames(module, RT_GROUP_ICON, enum_icons_func, (LONG_PTR)&info);
if (!info.found) {
if (!ok) {
if (GetLastError()) {
@@ -277,7 +259,7 @@ HICON getIcon(const std::string &name) resname = info.name;
}
- HICON icon = (HICON) LoadImage(module, resname, IMAGE_ICON, 16, 16, 0);
+ HICON icon = (HICON)LoadImage(module, resname, IMAGE_ICON, 16, 16, 0);
FreeLibrary(module);
if (!icon) {
@@ -285,7 +267,7 @@ HICON getIcon(const std::string &name) return deficon;
}
- return icons[name] = (HICON) icon;
+ return icons[name] = (HICON)icon;
}
bool getNext(std::string &out, std::string &in, char sep)
@@ -297,18 +279,18 @@ bool getNext(std::string &out, std::string &in, char sep) while (!in.empty()) {
if (in[0] == sep) {
- in.erase(0,1);
+ in.erase(0, 1);
return true;
}
if (in[0] == '\"') {
- in.erase(0,1);
+ in.erase(0, 1);
size_t p = in.find('\"');
if (p == in.npos)
throw "Unterminated quote: \"" + in;
out += '"';
out.append(in, 0, p);
out += '"';
- in.erase(0, p+1);
+ in.erase(0, p + 1);
return true;
}
if (!in.compare(0, 3, "<[[")) {
@@ -317,12 +299,12 @@ bool getNext(std::string &out, std::string &in, char sep) if (p == in.npos)
throw "Unterminated \"<[[\": <[[" + in;
out.append(in, 0, p);
- in.erase(0, p+3);
+ in.erase(0, p + 3);
return true;
}
out += in[0];
- in.erase(0,1);
+ in.erase(0, 1);
return true;
}
return false;
@@ -341,9 +323,9 @@ void getAll(std::vector<std::string> &out, std::string &in, char sep, bool unquo std::string arg;
while (getNext(arg, in, sep))
if (!arg.empty()) {
- if (unquote_)
- arg = unquote(arg);
- out.push_back(arg);
+ if (unquote_)
+ arg = unquote(arg);
+ out.push_back(arg);
}
}
@@ -380,7 +362,7 @@ void processSingleAction(const std::string &what, bool &closeflag) throw "Insufficient arguments: " + what;
std::vector<const char *> cargs;
- for (std::vector<std::string>::iterator i=args.begin(), e=args.end(); i!=e; ++i)
+ for (std::vector<std::string>::iterator i = args.begin(), e = args.end(); i != e; ++i)
cargs.push_back(i->c_str());
cargs.push_back(0);
@@ -404,10 +386,11 @@ void processSingleAction(const std::string &what, bool &closeflag) const char *cargs = decode_se_arg(args);
- if ((int) ShellExecuteA(0, "open", file.c_str(), cargs, 0, SW_SHOWNORMAL) <= 32)
+ if ((int)ShellExecuteA(0, "open", file.c_str(), cargs, 0, SW_SHOWNORMAL) <= 32)
throw "Failed to open: " + file + " " + args;
- } else if (!what.compare(0, 6, "shell:")) {
+ }
+ else if (!what.compare(0, 6, "shell:")) {
if (!g_settings.allow_execute) {
dbg_msg(Translate("Application launching is disabled."), SM_WARNING);
return;
@@ -427,10 +410,11 @@ void processSingleAction(const std::string &what, bool &closeflag) args = strip(args);
dir = /*unquote(*/strip(dir)/*)*/;
- if ((int) ShellExecuteA(0, decode_se_arg(verb), decode_se_arg(file),
+ if ((int)ShellExecuteA(0, decode_se_arg(verb), decode_se_arg(file),
decode_se_arg(args), decode_se_arg(dir), SW_SHOWNORMAL) <= 32)
throw "Failed: " + what;
- } else if (what == "close")
+ }
+ else if (what == "close")
closeflag = true;
else
throw "Action not recognized: " + what;
@@ -456,47 +440,47 @@ void processAction(const std::string &what, bool &closeflag) static int CALLBACK PopupDlgProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{
popup_t *pd = 0;
- pd = (popup_t *) CallService(MS_POPUP_GETPLUGINDATA, (WPARAM) hWnd, (LPARAM) pd);
+ pd = (popup_t *)CallService(MS_POPUP_GETPLUGINDATA, (WPARAM)hWnd, (LPARAM)pd);
if (!pd)
return FALSE;
switch (message) {
case WM_COMMAND:
- {
- EnterCS(&g_popups_cs);
- std::string left;
- if (pd)
- left = pd->left;
- LeaveCS(&g_popups_cs);
+ {
+ EnterCS(&g_popups_cs);
+ std::string left;
+ if (pd)
+ left = pd->left;
+ LeaveCS(&g_popups_cs);
- if (left.empty())
+ if (left.empty())
+ PUDeletePopup(hWnd);
+ else {
+ bool closeflag = false;
+ processAction(left, closeflag);
+ if (closeflag)
PUDeletePopup(hWnd);
- else {
- bool closeflag = false;
- processAction(left, closeflag);
- if (closeflag)
- PUDeletePopup(hWnd);
- }
}
+ }
return TRUE;
case WM_CONTEXTMENU:
- {
- EnterCS(&g_popups_cs);
- std::string right;
- if (pd)
- right = pd->right;
- LeaveCS(&g_popups_cs);
+ {
+ EnterCS(&g_popups_cs);
+ std::string right;
+ if (pd)
+ right = pd->right;
+ LeaveCS(&g_popups_cs);
- if (right.empty())
+ if (right.empty())
+ PUDeletePopup(hWnd);
+ else {
+ bool closeflag = false;
+ processAction(right, closeflag);
+ if (closeflag)
PUDeletePopup(hWnd);
- else {
- bool closeflag = false;
- processAction(right, closeflag);
- if (closeflag)
- PUDeletePopup(hWnd);
- }
}
+ }
return TRUE;
case UM_INITPOPUP:
@@ -534,7 +518,7 @@ int showMessage(const popup_t &msg) ppd.colorBack = msg.background;
ppd.colorText = msg.foreground;
ppd.lchIcon = getIcon(msg.icon);
- ppd.PluginWindowProc = (WNDPROC) PopupDlgProc;
+ ppd.PluginWindowProc = (WNDPROC)PopupDlgProc;
ppd.iSeconds = msg.delay;
EnterCS(&g_popups_cs);
@@ -605,23 +589,25 @@ inline int dehex(int c) { COLORREF parseColor(const std::string &buf, bool &ok)
{
ok = false;
- for (int i=0; i!=buf.size(); ++i)
+ for (int i = 0; i != buf.size(); ++i)
if (!isxdigit(buf[i]))
- return RGB(0,0,0);
+ return RGB(0, 0, 0);
if (buf.size() == 6) {
int r = (dehex(buf[0]) << 4) + dehex(buf[1]);
int g = (dehex(buf[2]) << 4) + dehex(buf[3]);
int b = (dehex(buf[4]) << 4) + dehex(buf[5]);
ok = true;
- return RGB(r,g,b);
- } else if (buf.size() == 3) {
- int r = dehex(buf[0])*17;
- int g = dehex(buf[1])*17;
- int b = dehex(buf[2])*17;
+ return RGB(r, g, b);
+ }
+ else if (buf.size() == 3) {
+ int r = dehex(buf[0]) * 17;
+ int g = dehex(buf[1]) * 17;
+ int b = dehex(buf[2]) * 17;
ok = true;
- return RGB(r,g,b);
- } else
- return RGB(0,0,0);
+ return RGB(r, g, b);
+ }
+ else
+ return RGB(0, 0, 0);
}
void loadDefaults(popup_t &msg, char ch)
@@ -632,16 +618,16 @@ void loadDefaults(popup_t &msg, char ch) switch (ch) {
case '%':
msg.icon = "message";
- msg.background = RGB(173,206,247);
- msg.foreground = RGB(0,0,0);
+ msg.background = RGB(173, 206, 247);
+ msg.foreground = RGB(0, 0, 0);
msg.contact = "Message";
msg.beep = true;
msg.sound = "Message";
return;
case '!':
msg.icon = "exclamation";
- msg.background = RGB(191,0,0);
- msg.foreground = RGB(255,245,225);
+ msg.background = RGB(191, 0, 0);
+ msg.foreground = RGB(255, 245, 225);
msg.contact = "Error";
msg.beep = true;
msg.sound = "Error";
@@ -649,8 +635,8 @@ void loadDefaults(popup_t &msg, char ch) case ' ':
default:
msg.icon = "information";
- msg.background = RGB(255,245,225);
- msg.foreground = RGB(0,0,0);
+ msg.background = RGB(255, 245, 225);
+ msg.foreground = RGB(0, 0, 0);
msg.contact = "Notice";
msg.beep = true;
msg.sound = "Notice";
@@ -665,7 +651,7 @@ bool parseSimpleMessage(const std::string &buf, popup_t &msg, char sep) msg.message = buf;
else {
msg.contact.assign(buf, 0, p);
- msg.message.assign(buf, p+1, buf.npos);
+ msg.message.assign(buf, p + 1, buf.npos);
}
return true;
}
@@ -692,17 +678,18 @@ bool parseComplexMessage(const std::string &buf, popup_t &msg, char sep) std::string what(p, wend);
std::string arg;
if (wend == cpos && wend && npos)
- arg.assign(cpos+1, npos);
+ arg.assign(cpos + 1, npos);
else if (!cpos)
arg.erase();
else
- arg = cpos+1;
+ arg = cpos + 1;
if (!g_settings.password.empty() && !passok) {
if (what == "passwd" && arg == g_settings.password) {
passok = true;
continue;
- } else
+ }
+ else
return false;
}
@@ -714,13 +701,15 @@ bool parseComplexMessage(const std::string &buf, popup_t &msg, char sep) if (!cpos) {
dbg_msg(Translate("No argument given to msg option."), SM_WARNING);
return false;
- } else if (msg.replace != xno && msg.id.empty()) {
+ }
+ else if (msg.replace != xno && msg.id.empty()) {
dbg_msg(Translate("ID is required for replacement."), SM_WARNING);
return false;
}
msg.message = arg;
return true;
- } else if (what == "replace") {
+ }
+ else if (what == "replace") {
if (arg == "yes")
msg.replace = xreplace;
else if (arg == "append")
@@ -731,7 +720,8 @@ bool parseComplexMessage(const std::string &buf, popup_t &msg, char sep) msg.replace = xno;
else
dbg_msg(Translate("Invalid argument for replace option: ") + arg, SM_WARNING);
- } else if (what == "sound") {
+ }
+ else if (what == "sound") {
if (arg.empty())
msg.beep = false;
else {
@@ -739,43 +729,54 @@ bool parseComplexMessage(const std::string &buf, popup_t &msg, char sep) msg.sound = arg;
registerSound(arg);
}
- } else if (what == "left") {
+ }
+ else if (what == "left") {
msg.left = arg;
- } else if (what == "right") {
+ }
+ else if (what == "right") {
msg.right = arg;
- } else if (what == "opened") {
+ }
+ else if (what == "opened") {
msg.opened = arg;
- } else if (what == "closed") {
+ }
+ else if (what == "closed") {
msg.closed = arg;
- } else if (what == "delay") {
+ }
+ else if (what == "delay") {
msg.delay = atoi(arg.c_str());
- } else if (what == "id") {
+ }
+ else if (what == "id") {
msg.id = arg;
- } else if (what == "bg") {
+ }
+ else if (what == "bg") {
bool ok;
msg.background = parseColor(arg, ok);
if (!ok)
dbg_msg("Invalid color: " + arg, SM_WARNING);
- } else if (what == "fg") {
+ }
+ else if (what == "fg") {
bool ok;
msg.foreground = parseColor(arg, ok);
if (!ok)
dbg_msg("Invalid color: " + arg, SM_WARNING);
- } else if (what == "from")
+ }
+ else if (what == "from")
msg.contact = arg;
else if (what == "sep") {
if (arg.size() == 1)
sep = arg[0];
else
dbg_msg("Invalid argument for sep option: " + arg, SM_WARNING);
- } else if (what == "beep") {
+ }
+ else if (what == "beep") {
if (arg == "1")
msg.beep = true;
else if (arg == "0")
msg.beep = false;
else
dbg_msg("Invalid argument for beep option: " + arg, SM_WARNING);
- } else
+ }
+ else
dbg_msg("Unknown option: " + what, SM_NOTIFY);
}
return true;
@@ -799,7 +800,8 @@ bool parseMessage(const std::string &abuf, popup_t &msg) if (buf.size() < 2) return false;
loadDefaults(msg, buf[0]);
buf.erase(0, 1);
- } else
+ }
+ else
loadDefaults(msg, ' ');
if (buf[0] == sep)
@@ -812,24 +814,20 @@ bool parseMessage(const std::string &abuf, popup_t &msg) void processMessage(std::string buf)
{
- if (IsLogService){
- logservice_log(LOG_ID, NULL, (TCHAR *) buf.c_str());
- }
- else {
- if (g_settings.log_to_file) {
- time_t t_;
- time(&t_);
- tm *t = localtime(&t_);
- FILE *f = fopen(g_settings.log_filename.c_str(), "a");
- if (f) {
- bool err = fprintf(f, "[%04i-%02i-%02i %02i:%02i:%02i] %s\n",
- int(t->tm_year+1900), int(t->tm_mon+1), int(t->tm_mday),
- int(t->tm_hour), int(t->tm_min), int(t->tm_sec), buf.c_str()) < 0;
- if (fclose(f) == EOF || err)
- dbg_msg(Translate("Failed to write to log file."), SM_WARNING);
- } else
- dbg_msg(Translate("Failed to open log file."), SM_WARNING);
+ if (g_settings.log_to_file) {
+ time_t t_;
+ time(&t_);
+ tm *t = localtime(&t_);
+ FILE *f = fopen(g_settings.log_filename.c_str(), "a");
+ if (f) {
+ bool err = fprintf(f, "[%04i-%02i-%02i %02i:%02i:%02i] %s\n",
+ int(t->tm_year + 1900), int(t->tm_mon + 1), int(t->tm_mday),
+ int(t->tm_hour), int(t->tm_min), int(t->tm_sec), buf.c_str()) < 0;
+ if (fclose(f) == EOF || err)
+ dbg_msg(Translate("Failed to write to log file."), SM_WARNING);
}
+ else
+ dbg_msg(Translate("Failed to open log file."), SM_WARNING);
}
popup_t msg;
@@ -925,7 +923,8 @@ DWORD udptcpThreadFunc(LPVOID useUdp) if (err > 0)
processMessage(buf);
}
- } else {
+ }
+ else {
listen(sock, SOMAXCONN);
while (!g_exit_threads) {
int fromSize = sizeof from;
@@ -944,7 +943,8 @@ DWORD udptcpThreadFunc(LPVOID useUdp) if (err < 0) {
totalbuf.clear();
break;
- } else if (err == 0)
+ }
+ else if (err == 0)
break;
else {
totallen += err;
@@ -974,7 +974,8 @@ DWORD udptcpThreadFunc(LPVOID useUdp) t += Translate("N/A: FormatMessage failed, error code was 0x");
char tbuf[10];
t += itoa(ec, tbuf, 16);
- } else
+ }
+ else
t += buf;
MessageBoxA(0, t.c_str(), Translate("Error"), MB_OK);
@@ -986,10 +987,10 @@ void start_threads() {
g_exit_threads = false;
DWORD id;
- g_udp_thread = CreateThread(NULL, 0,
- (LPTHREAD_START_ROUTINE) udptcpThreadFunc, (LPVOID) 1, 0, &id);
- g_tcp_thread = CreateThread(NULL, 0,
- (LPTHREAD_START_ROUTINE) udptcpThreadFunc, NULL, 0, &id);
+ g_udp_thread = CreateThread(NULL, 0,
+ (LPTHREAD_START_ROUTINE)udptcpThreadFunc, (LPVOID)1, 0, &id);
+ g_tcp_thread = CreateThread(NULL, 0,
+ (LPTHREAD_START_ROUTINE)udptcpThreadFunc, NULL, 0, &id);
}
void stop_threads()
@@ -1003,17 +1004,13 @@ void stop_threads() WaitForSingleObject(g_tcp_thread, INFINITE);
}
-extern "C" __declspec(dllexport) PLUGININFOEX* MirandaPluginInfoEx(DWORD mirandaVersion)
+extern "C" __declspec(dllexport) PLUGININFOEX* MirandaPluginInfoEx(DWORD mirandaVersion)
{
return &pluginInfo;
}
int ModulesLoaded(WPARAM wParam, LPARAM lParam)
{
- IsLogService = ServiceExists(MS_LOGSERVICE_REGISTER) != 0;
- if (IsLogService)
- logservice_register(LOG_ID, LPGENT(LOG_ID), NULL, NULL);
-
return 0;
}
@@ -1022,7 +1019,7 @@ extern "C" int __declspec(dllexport) Load() g_firstrun = true;
mir_getLP(&pluginInfo);
- char buf[MAX_PATH+1];
+ char buf[MAX_PATH + 1];
strcpy(buf, ".");
g_mirandaDir = getcwd(buf, MAX_PATH);
diff --git a/plugins/NotifyAnything/src/options.cpp b/plugins/NotifyAnything/src/options.cpp index 69468f95e5..47cdaeecf6 100644 --- a/plugins/NotifyAnything/src/options.cpp +++ b/plugins/NotifyAnything/src/options.cpp @@ -11,30 +11,8 @@ INT_PTR CALLBACK DlgProcOpts(HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM lPara char buf[10];
CheckDlgButton(hwndDlg, NA_LOCAL_CHECK, g_settings.local_only ? BST_CHECKED : BST_UNCHECKED);
CheckDlgButton(hwndDlg, NA_DEBUG_MSG_CHECK, g_settings.debug_messages ? BST_CHECKED : BST_UNCHECKED);
- if (IsLogService) {
- LS_LOGINFO pli;
- pli.szID = LOG_ID;
- pli.hContact = NULL;
- pli.szLogPath = NULL;
- pli.Flags = 0;
- pli.cbSize = sizeof(LS_LOGINFO);
- if (!CallService(MS_LOGSERVICE_GETLOGINFO, (WPARAM)(LS_LOGINFO *) &pli, 0)) {
- CheckDlgButton(hwndDlg, NA_LOG_CHECK, (pli.Flags && LSLI_LOGENABLED) ? BST_CHECKED : BST_UNCHECKED);
- }
- std::tstring InLogService = TranslateT("Services");
- InLogService += _T(" -> ");
- InLogService += TranslateT("LogService");
- InLogService += _T(" -> ");
- InLogService += TranslateT(LOG_ID);
- SetDlgItemText(hwndDlg, NA_LOG_FILENAME, InLogService.c_str());
- }
- else {
- CheckDlgButton(hwndDlg, NA_LOG_CHECK, g_settings.log_to_file ? BST_CHECKED : BST_UNCHECKED);
- SetDlgItemTextA(hwndDlg, NA_LOG_FILENAME, g_settings.log_filename.c_str());
- }
- EnableWindow(GetDlgItem(hwndDlg, NA_LOG_CHECK), !IsLogService);
- EnableWindow(GetDlgItem(hwndDlg, NA_LOG_FILENAME), !IsLogService);
- EnableWindow(GetDlgItem(hwndDlg, NA_LOG_BROWSE), !IsLogService);
+ CheckDlgButton(hwndDlg, NA_LOG_CHECK, g_settings.log_to_file ? BST_CHECKED : BST_UNCHECKED);
+ SetDlgItemTextA(hwndDlg, NA_LOG_FILENAME, g_settings.log_filename.c_str());
EnableWindow(GetDlgItem(hwndDlg, NA_DEBUG_MSG_CHECK), IsDlgButtonChecked(hwndDlg, NA_LOG_CHECK) ? 1 : 0);
CheckDlgButton(hwndDlg, NA_PCSPEAKER_CHECK, g_settings.use_pcspeaker ? BST_CHECKED : BST_UNCHECKED);
CheckDlgButton(hwndDlg, NA_ALLOW_EXECUTE, g_settings.allow_execute ? BST_CHECKED : BST_UNCHECKED);
@@ -134,12 +112,6 @@ INT_PTR CALLBACK DlgProcOpts(HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM lPara buf[0] = '\0';
s.password = _T2A(buf);
- if (!IsLogService) {
- if (!GetDlgItemText(hwndDlg, NA_LOG_FILENAME, buf, sizeof buf - 1))
- buf[0] = '\0';
- s.log_filename = _T2A(buf);
- }
-
g_settings = s;
save_settings();
stop_threads();
diff --git a/plugins/QuickContacts/res/resource.rc b/plugins/QuickContacts/res/resource.rc index 0f173ee773..75b589855f 100644 --- a/plugins/QuickContacts/res/resource.rc +++ b/plugins/QuickContacts/res/resource.rc @@ -73,7 +73,6 @@ BEGIN 176,11
CONTROL "",IDC_MESSAGE,"MButtonClass",0x0,41,36,17,15,
0x18000000L
- CONTROL "",IDC_VOICE,"MButtonClass",0x0,62,36,17,15,0x18000000L
CONTROL "",IDC_FILE,"MButtonClass",0x0,83,36,17,15,0x18000000L
CONTROL "",IDC_URL,"MButtonClass",0x0,104,36,17,15,0x18000000L
CONTROL "",IDC_USERINFO,"MButtonClass",0x0,125,36,17,15,
@@ -119,7 +118,6 @@ BEGIN "I", HOTKEY_INFO, VIRTKEY, CONTROL, NOINVERT
"M", HOTKEY_MENU, VIRTKEY, CONTROL, NOINVERT
"U", HOTKEY_URL, VIRTKEY, CONTROL, NOINVERT
- "V", HOTKEY_VOICE, VIRTKEY, CONTROL, NOINVERT
END
#ifdef APSTUDIO_INVOKED
diff --git a/plugins/QuickContacts/src/commons.h b/plugins/QuickContacts/src/commons.h index b9c41b88e9..ab0397762f 100644 --- a/plugins/QuickContacts/src/commons.h +++ b/plugins/QuickContacts/src/commons.h @@ -44,7 +44,6 @@ Boston, MA 02111-1307, USA. #include <win2k.h>
#include <m_metacontacts.h>
-#include <m_voiceservice.h>
#include <m_quickcontacts.h>
#include "../utils/mir_options.h"
diff --git a/plugins/QuickContacts/src/quickcontacts.cpp b/plugins/QuickContacts/src/quickcontacts.cpp index 6cd7065ba3..fe69dea394 100644 --- a/plugins/QuickContacts/src/quickcontacts.cpp +++ b/plugins/QuickContacts/src/quickcontacts.cpp @@ -132,12 +132,6 @@ int ModulesLoaded(WPARAM wParam, LPARAM lParam) hkd.pszService = NULL;
- hkd.lParam = HOTKEY_VOICE;
- hkd.DefHotKey = HOTKEYCODE(HOTKEYF_CONTROL, 'V');
- hkd.pszName = "Quick Contacts/Voice";
- hkd.ptszDescription = LPGENT("Make a voice call");
- Hotkey_Register(&hkd);
-
hkd.lParam = HOTKEY_FILE;
hkd.DefHotKey = HOTKEYCODE(HOTKEYF_CONTROL, 'F');
hkd.pszName = "Quick Contacts/File";
@@ -443,7 +437,6 @@ void EnableButtons(HWND hwndDlg, MCONTACT hContact) if (hContact == NULL)
{
EnableWindow(GetDlgItem(hwndDlg, IDC_MESSAGE), FALSE);
- EnableWindow(GetDlgItem(hwndDlg, IDC_VOICE), FALSE);
EnableWindow(GetDlgItem(hwndDlg, IDC_FILE), FALSE);
EnableWindow(GetDlgItem(hwndDlg, IDC_URL), FALSE);
EnableWindow(GetDlgItem(hwndDlg, IDC_USERINFO), FALSE);
@@ -466,11 +459,7 @@ void EnableButtons(HWND hwndDlg, MCONTACT hContact) if (pszProto != NULL)
caps = CallProtoService(pszProto, PS_GETCAPS, PFLAGNUM_1, 0);
- BOOL voice = (ServiceExists(MS_VOICESERVICE_CAN_CALL)
- && CallService(MS_VOICESERVICE_CAN_CALL, hContact, 0) > 0);
-
EnableWindow(GetDlgItem(hwndDlg, IDC_MESSAGE), caps & PF1_IMSEND ? TRUE : FALSE);
- EnableWindow(GetDlgItem(hwndDlg, IDC_VOICE), voice);
EnableWindow(GetDlgItem(hwndDlg, IDC_FILE), caps & PF1_FILESEND ? TRUE : FALSE);
EnableWindow(GetDlgItem(hwndDlg, IDC_URL), caps & PF1_URLSEND ? TRUE : FALSE);
EnableWindow(GetDlgItem(hwndDlg, IDC_USERINFO), TRUE);
@@ -770,17 +759,6 @@ static INT_PTR CALLBACK MainDlgProc(HWND hwndDlg, UINT msg, WPARAM wParam, LPARA // Buttons
FillCheckbox(hwndDlg, IDC_SHOW_ALL_CONTACTS, LPGENT("Show all contacts"), hasNewHotkeyModule ? NULL : _T("Ctrl+A"));
FillButton(hwndDlg, IDC_MESSAGE, LPGENT("Send message"), NULL, LoadSkinnedIcon(SKINICON_EVENT_MESSAGE));
-
- if (ServiceExists(MS_VOICESERVICE_CAN_CALL))
- FillButton(hwndDlg, IDC_VOICE, LPGENT("Make a voice call"), hasNewHotkeyModule ? NULL : _T("Ctrl+V"), Skin_GetIcon("vca_call"));
- else
- {
- GetWindowRect(GetDlgItem(hwndDlg, IDC_VOICE), &rc);
- ScreenToClient(hwndDlg, &rc);
- MoveWindow(GetDlgItem(hwndDlg, IDC_MESSAGE), rc, FALSE);
- ShowWindow(GetDlgItem(hwndDlg, IDC_VOICE), SW_HIDE);
- }
-
FillButton(hwndDlg, IDC_FILE, LPGENT("Send file"), hasNewHotkeyModule ? NULL : _T("Ctrl+F"), LoadSkinnedIcon(SKINICON_EVENT_FILE));
FillButton(hwndDlg, IDC_URL, LPGENT("Send URL"), hasNewHotkeyModule ? NULL : _T("Ctrl+U"), LoadSkinnedIcon(SKINICON_EVENT_URL));
FillButton(hwndDlg, IDC_USERINFO, LPGENT("Open user info"), hasNewHotkeyModule ? NULL : _T("Ctrl+I"), LoadSkinnedIcon(SKINICON_OTHER_USERDETAILS));
@@ -848,30 +826,6 @@ static INT_PTR CALLBACK MainDlgProc(HWND hwndDlg, UINT msg, WPARAM wParam, LPARA SendMessage(hwndDlg, WM_CLOSE, 0, 0);
break;
}
- case HOTKEY_VOICE:
- case IDC_VOICE:
- {
- MCONTACT hContact = GetSelectedContact(hwndDlg);
- if (hContact == NULL)
- {
- SetDlgItemText(hwndDlg, IDC_USERNAME, _T(""));
- SetFocus(GetDlgItem(hwndDlg, IDC_USERNAME));
- break;
- }
-
- // Is button enabled?
- if (!IsWindowEnabled(GetDlgItem(hwndDlg, IDC_VOICE)))
- break;
-
- if (!ServiceExists(MS_VOICESERVICE_CALL))
- break;
-
- CallService(MS_VOICESERVICE_CALL, (WPARAM) hContact, 0);
-
- db_set_dw(NULL, MODULE_NAME, "LastSentTo", (DWORD) hContact);
- SendMessage(hwndDlg, WM_CLOSE, 0, 0);
- }
- break;
case HOTKEY_FILE:
case IDC_FILE:
diff --git a/plugins/QuickContacts/src/resource.h b/plugins/QuickContacts/src/resource.h index f7f6a0142f..38fd6df5cb 100644 --- a/plugins/QuickContacts/src/resource.h +++ b/plugins/QuickContacts/src/resource.h @@ -23,15 +23,12 @@ #define IDC_USERINFO 1065
#define IDC_HISTORY 1066
#define IDC_MENU 1067
-#define IDC_VOICE 1068
#define HOTKEY_FILE 40001
#define HOTKEY_URL 40002
#define HOTKEY_INFO 40003
#define HOTKEY_HISTORY 40004
#define HOTKEY_ALL_CONTACTS 40005
#define HOTKEY_MENU 40006
-#define HOTKEY_VOICE 40007
-#define IDC_STATIC -1
// Next default values for new objects
//
diff --git a/plugins/SimpleStatusMsg/src/awaymsg.cpp b/plugins/SimpleStatusMsg/src/awaymsg.cpp index 81442e02e1..17b43b5381 100644 --- a/plugins/SimpleStatusMsg/src/awaymsg.cpp +++ b/plugins/SimpleStatusMsg/src/awaymsg.cpp @@ -446,9 +446,5 @@ int LoadAwayMsgModule(void) HookEvent(ME_CLIST_PREBUILDCONTACTMENU, AwayMsgPreBuildMenu);
- // Deprecated SimpleAway services
- CreateServiceFunction(MS_SA_COPYAWAYMSG, CopyAwayMsgCommand);
- CreateServiceFunction(MS_SA_GOTOURLMSG, GoToURLMsgCommand);
-
return 0;
}
diff --git a/plugins/SimpleStatusMsg/src/commonheaders.h b/plugins/SimpleStatusMsg/src/commonheaders.h index 30b7b51e82..b709b87837 100644 --- a/plugins/SimpleStatusMsg/src/commonheaders.h +++ b/plugins/SimpleStatusMsg/src/commonheaders.h @@ -42,7 +42,6 @@ with this program; if not, write to the Free Software Foundation, Inc., #include <m_statusplugins.h>
#include <m_toptoolbar.h>
#include <m_variables.h>
-#include <m_simpleaway.h>
#include <m_simplestatusmsg.h>
#include "simplestatusmsg.h"
diff --git a/plugins/SimpleStatusMsg/src/main.cpp b/plugins/SimpleStatusMsg/src/main.cpp index 530c769fa2..4e9ff62d91 100644 --- a/plugins/SimpleStatusMsg/src/main.cpp +++ b/plugins/SimpleStatusMsg/src/main.cpp @@ -1184,66 +1184,6 @@ static INT_PTR ChangeStatusMsg(WPARAM wParam, LPARAM lParam) return 0;
}
-static INT_PTR SetOfflineStatus(WPARAM wParam, LPARAM lParam)
-{
- ChangeStatusMessage((WPARAM)ID_STATUS_OFFLINE, 0);
- return 0;
-}
-
-static INT_PTR SetOnlineStatus(WPARAM wParam, LPARAM lParam)
-{
- ChangeStatusMessage((WPARAM)ID_STATUS_ONLINE, 0);
- return 0;
-}
-
-static INT_PTR SetAwayStatus(WPARAM wParam, LPARAM lParam)
-{
- ChangeStatusMessage((WPARAM)ID_STATUS_AWAY, 0);
- return 0;
-}
-
-static INT_PTR SetDNDStatus(WPARAM wParam, LPARAM lParam)
-{
- ChangeStatusMessage((WPARAM)ID_STATUS_DND, 0);
- return 0;
-}
-
-static INT_PTR SetNAStatus(WPARAM wParam, LPARAM lParam)
-{
- ChangeStatusMessage((WPARAM)ID_STATUS_NA, 0);
- return 0;
-}
-
-static INT_PTR SetOccupiedStatus(WPARAM wParam, LPARAM lParam)
-{
- ChangeStatusMessage((WPARAM)ID_STATUS_OCCUPIED, 0);
- return 0;
-}
-
-static INT_PTR SetFreeChatStatus(WPARAM wParam, LPARAM lParam)
-{
- ChangeStatusMessage((WPARAM)ID_STATUS_FREECHAT, 0);
- return 0;
-}
-
-static INT_PTR SetInvisibleStatus(WPARAM wParam, LPARAM lParam)
-{
- ChangeStatusMessage((WPARAM)ID_STATUS_INVISIBLE, 0);
- return 0;
-}
-
-static INT_PTR SetOnThePhoneStatus(WPARAM wParam, LPARAM lParam)
-{
- ChangeStatusMessage((WPARAM)ID_STATUS_ONTHEPHONE, 0);
- return 0;
-}
-
-static INT_PTR SetOutToLunchStatus(WPARAM wParam, LPARAM lParam)
-{
- ChangeStatusMessage((WPARAM)ID_STATUS_OUTTOLUNCH, 0);
- return 0;
-}
-
static int ProcessProtoAck(WPARAM wParam,LPARAM lParam)
{
ACKDATA *ack = (ACKDATA *)lParam;
@@ -1965,11 +1905,6 @@ static int OnPreShutdown(WPARAM wParam, LPARAM lParam) return 0;
}
-static INT_PTR IsSARunning(WPARAM wParam, LPARAM lParam)
-{
- return 1;
-}
-
//remember to mir_free() the return value
static INT_PTR sttGetAwayMessageT(WPARAM wParam, LPARAM lParam)
{
@@ -1995,24 +1930,6 @@ extern "C" int __declspec(dllexport) Load(void) CreateServiceFunction(MS_SIMPLESTATUSMSG_CHANGESTATUSMSG, ChangeStatusMsg);
CreateServiceFunction(MS_SIMPLESTATUSMSG_SHOWDIALOGINT, ShowStatusMessageDialogInternal); // internal use ONLY
- // Deprecated SimpleAway services
- CreateServiceFunction(MS_SA_ISSARUNNING, IsSARunning);
- CreateServiceFunction(MS_SA_CHANGESTATUSMSG, ChangeStatusMsg);
- CreateServiceFunction(MS_SA_TTCHANGESTATUSMSG, ShowStatusMessageDialogInternal);
- CreateServiceFunction(MS_SA_SHOWSTATUSMSGDIALOG, ShowStatusMessageDialog);
- CreateServiceFunction(MS_SA_SETSTATUSMODE, SetStatusModeFromExtern);
-
- CreateServiceFunction(MS_SA_SETOFFLINESTATUS, SetOfflineStatus);
- CreateServiceFunction(MS_SA_SETONLINESTATUS, SetOnlineStatus);
- CreateServiceFunction(MS_SA_SETAWAYSTATUS, SetAwayStatus);
- CreateServiceFunction(MS_SA_SETDNDSTATUS, SetDNDStatus);
- CreateServiceFunction(MS_SA_SETNASTATUS, SetNAStatus);
- CreateServiceFunction(MS_SA_SETOCCUPIEDSTATUS, SetOccupiedStatus);
- CreateServiceFunction(MS_SA_SETFREECHATSTATUS, SetFreeChatStatus);
- CreateServiceFunction(MS_SA_SETINVISIBLESTATUS, SetInvisibleStatus);
- CreateServiceFunction(MS_SA_SETONTHEPHONESTATUS, SetOnThePhoneStatus);
- CreateServiceFunction(MS_SA_SETOUTTOLUNCHSTATUS, SetOutToLunchStatus);
-
HookEvent(ME_SYSTEM_OKTOEXIT, OnOkToExit);
HookEvent(ME_SYSTEM_PRESHUTDOWN, OnPreShutdown);
diff --git a/plugins/SimpleStatusMsg/src/simplestatusmsg.h b/plugins/SimpleStatusMsg/src/simplestatusmsg.h index f78f04dcbc..c1ca255b19 100644 --- a/plugins/SimpleStatusMsg/src/simplestatusmsg.h +++ b/plugins/SimpleStatusMsg/src/simplestatusmsg.h @@ -34,6 +34,9 @@ PROTOACCOUNTS; extern PROTOACCOUNTS *accounts;
+// Represents status that a protocol(s) is/are currently in
+#define ID_STATUS_CURRENT 40082
+
#define DLG_SHOW_STATUS 1
#define DLG_SHOW_STATUS_ICONS 2
#define DLG_SHOW_LIST_ICONS 4
diff --git a/plugins/UserInfoEx/src/commonheaders.h b/plugins/UserInfoEx/src/commonheaders.h index a44ad92343..e4ed409e68 100644 --- a/plugins/UserInfoEx/src/commonheaders.h +++ b/plugins/UserInfoEx/src/commonheaders.h @@ -76,7 +76,6 @@ using namespace std; #include <m_extraicons.h>
#include <m_avatars.h>
#include <m_contacts.h>
-#include <m_db3xSA.h>
#include <m_icolib.h>
#include <m_string.h>
#include <m_popup.h>
diff --git a/plugins/UserInfoEx/src/ex_import/dlg_ExImOpenSaveFile.cpp b/plugins/UserInfoEx/src/ex_import/dlg_ExImOpenSaveFile.cpp index 6dab5f380d..0d59af26ec 100644 --- a/plugins/UserInfoEx/src/ex_import/dlg_ExImOpenSaveFile.cpp +++ b/plugins/UserInfoEx/src/ex_import/dlg_ExImOpenSaveFile.cpp @@ -211,13 +211,6 @@ static void GetInitialDir(LPSTR pszInitialDir) if (!PathToAbsolute(szRelative, pszInitialDir))
strcpy(pszInitialDir, szRelative);
}
- else if (//try to use environment variables supported by pathpatch of db3xSA
- !ServiceExists(MS_DB_GETPROFILEPATH_BASIC) ||
- !PathToAbsolute(PROFILEPATH "\\" PROFILENAME, pszInitialDir)) {
- // use standard path to absolute
- if ( !PathToAbsolute("", pszInitialDir))
- *pszInitialDir = 0;
- }
else *pszInitialDir = 0;
}
diff --git a/protocols/IRCG/src/irc.h b/protocols/IRCG/src/irc.h index 27ef8bc750..89f2edd82d 100644 --- a/protocols/IRCG/src/irc.h +++ b/protocols/IRCG/src/irc.h @@ -73,8 +73,6 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. #include "m_string.h"
#include "win2k.h"
-#include "m_ircscript.h"
-
#include "resource.h"
#define IRC_QUICKCONNECT "/QuickConnectMenu"
@@ -459,10 +457,6 @@ struct CIrcProto : public PROTO<CIrcProto> INT_PTR __cdecl Scripting_InsertGuiIn(WPARAM wParam,LPARAM lParam);
INT_PTR __cdecl Scripting_InsertGuiOut(WPARAM wParam,LPARAM lParam);
INT_PTR __cdecl Scripting_GetIrcData(WPARAM wparam, LPARAM lparam);
- BOOL Scripting_TriggerMSPRawIn(char ** pszRaw);
- BOOL Scripting_TriggerMSPRawOut(char ** pszRaw);
- BOOL Scripting_TriggerMSPGuiIn(WPARAM * wparam, GCEVENT *gce);
- BOOL Scripting_TriggerMSPGuiOut(GCHOOK * gch);
// services.cpp
void ConnectToServer(void);
@@ -654,10 +648,6 @@ HICON LoadIconEx(int iIndex, bool big = false); HANDLE GetIconHandle(int iconId);
void ReleaseIconEx(HICON hIcon);
-// services.cpp
-
-extern BOOL bChatInstalled, m_bMbotInstalled;
-
//tools.cpp
int __stdcall WCCmp(const TCHAR* wild, const TCHAR* string);
char* __stdcall IrcLoadFile(TCHAR * szPath);
diff --git a/protocols/IRCG/src/irclib.cpp b/protocols/IRCG/src/irclib.cpp index 369d2ff6ed..0e1fc195b6 100644 --- a/protocols/IRCG/src/irclib.cpp +++ b/protocols/IRCG/src/irclib.cpp @@ -276,13 +276,13 @@ void CIrcProto::Notify(const CIrcMessage* pmsg) int CIrcProto::NLSend(const unsigned char* buf, int cbBuf)
{
- if (m_bMbotInstalled && m_scriptingEnabled) {
+ if (m_scriptingEnabled) {
int iVal = NULL;
char * pszTemp = 0;
pszTemp = (char*)mir_alloc(lstrlenA((const char *)buf) + 1);
lstrcpynA(pszTemp, (const char *)buf, lstrlenA((const char *)buf) + 1);
- if (Scripting_TriggerMSPRawOut(&pszTemp) && pszTemp) {
+ if (pszTemp) {
if (con)
iVal = Netlib_Send(con, (const char*)pszTemp, lstrlenA(pszTemp), MSG_DUMPASTEXT);
}
@@ -413,10 +413,10 @@ void CIrcProto::DoReceive() // process single message by monitor objects
if (*pStart) {
- if (m_bMbotInstalled && m_scriptingEnabled) {
+ if (m_scriptingEnabled) {
char* pszTemp = mir_strdup(pStart);
- if (Scripting_TriggerMSPRawIn(&pszTemp) && pszTemp) {
+ if (pszTemp) {
char* p1 = pszTemp;
// replace end-of-line with NULLs
while (*p1 != '\0') {
diff --git a/protocols/IRCG/src/ircproto.cpp b/protocols/IRCG/src/ircproto.cpp index e6a93a0d42..a212afdfdb 100644 --- a/protocols/IRCG/src/ircproto.cpp +++ b/protocols/IRCG/src/ircproto.cpp @@ -26,18 +26,18 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. static volatile LONG g_msgid = 1;
-static int CompareSessions( const CDccSession* p1, const CDccSession* p2 )
+static int CompareSessions(const CDccSession* p1, const CDccSession* p2)
{
- return INT_PTR( p1->di->hContact ) - INT_PTR( p2->di->hContact );
+ return INT_PTR(p1->di->hContact) - INT_PTR(p2->di->hContact);
}
CIrcProto::CIrcProto(const char* szModuleName, const TCHAR* tszUserName) :
- PROTO<CIrcProto>(szModuleName, tszUserName),
- m_dcc_chats( 10, CompareSessions ),
- m_dcc_xfers( 10, CompareSessions ),
- m_ignoreItems( 10 ),
- vUserhostReasons( 10 ),
- vWhoInProgress( 10 )
+PROTO<CIrcProto>(szModuleName, tszUserName),
+m_dcc_chats(10, CompareSessions),
+m_dcc_xfers(10, CompareSessions),
+m_ignoreItems(10),
+vUserhostReasons(10),
+vWhoInProgress(10)
{
InitializeCriticalSection(&cs);
InitializeCriticalSection(&m_gchook);
@@ -77,69 +77,69 @@ CIrcProto::CIrcProto(const char* szModuleName, const TCHAR* tszUserName) : CList_SetAllOffline(true);
IRC_MAP_ENTRY("PING", PING)
- IRC_MAP_ENTRY("JOIN", JOIN)
- IRC_MAP_ENTRY("QUIT", QUIT)
- IRC_MAP_ENTRY("KICK", KICK)
- IRC_MAP_ENTRY("MODE", MODE)
- IRC_MAP_ENTRY("NICK", NICK)
- IRC_MAP_ENTRY("PART", PART)
- IRC_MAP_ENTRY("PRIVMSG", PRIVMSG)
- IRC_MAP_ENTRY("TOPIC", TOPIC)
- IRC_MAP_ENTRY("NOTICE", NOTICE)
- IRC_MAP_ENTRY("PING", PINGPONG)
- IRC_MAP_ENTRY("PONG", PINGPONG)
- IRC_MAP_ENTRY("INVITE", INVITE)
- IRC_MAP_ENTRY("ERROR", ERROR)
- IRC_MAP_ENTRY("001", WELCOME)
- IRC_MAP_ENTRY("002", YOURHOST)
- IRC_MAP_ENTRY("005", SUPPORT)
- IRC_MAP_ENTRY("223", WHOIS_OTHER) //CodePage info
- IRC_MAP_ENTRY("254", NOOFCHANNELS)
- IRC_MAP_ENTRY("263", TRYAGAIN)
- IRC_MAP_ENTRY("264", WHOIS_OTHER) //Encryption info (SSL connect)
- IRC_MAP_ENTRY("301", WHOIS_AWAY)
- IRC_MAP_ENTRY("302", USERHOST_REPLY)
- IRC_MAP_ENTRY("305", BACKFROMAWAY)
- IRC_MAP_ENTRY("306", SETAWAY)
- IRC_MAP_ENTRY("307", WHOIS_AUTH)
- IRC_MAP_ENTRY("310", WHOIS_OTHER)
- IRC_MAP_ENTRY("311", WHOIS_NAME)
- IRC_MAP_ENTRY("312", WHOIS_SERVER)
- IRC_MAP_ENTRY("313", WHOIS_OTHER)
- IRC_MAP_ENTRY("315", WHO_END)
- IRC_MAP_ENTRY("317", WHOIS_IDLE)
- IRC_MAP_ENTRY("318", WHOIS_END)
- IRC_MAP_ENTRY("319", WHOIS_CHANNELS)
- IRC_MAP_ENTRY("320", WHOIS_AUTH)
- IRC_MAP_ENTRY("321", LISTSTART)
- IRC_MAP_ENTRY("322", LIST)
- IRC_MAP_ENTRY("323", LISTEND)
- IRC_MAP_ENTRY("324", MODEQUERY)
- IRC_MAP_ENTRY("330", WHOIS_AUTH)
- IRC_MAP_ENTRY("332", INITIALTOPIC)
- IRC_MAP_ENTRY("333", INITIALTOPICNAME)
- IRC_MAP_ENTRY("352", WHO_REPLY)
- IRC_MAP_ENTRY("353", NAMES)
- IRC_MAP_ENTRY("366", ENDNAMES)
- IRC_MAP_ENTRY("367", BANLIST)
- IRC_MAP_ENTRY("368", BANLISTEND)
- IRC_MAP_ENTRY("346", BANLIST)
- IRC_MAP_ENTRY("347", BANLISTEND)
- IRC_MAP_ENTRY("348", BANLIST)
- IRC_MAP_ENTRY("349", BANLISTEND)
- IRC_MAP_ENTRY("371", WHOIS_OTHER)
- IRC_MAP_ENTRY("376", ENDMOTD)
- IRC_MAP_ENTRY("401", WHOIS_NO_USER)
- IRC_MAP_ENTRY("403", JOINERROR)
- IRC_MAP_ENTRY("416", WHOTOOLONG)
- IRC_MAP_ENTRY("421", UNKNOWN)
- IRC_MAP_ENTRY("422", ENDMOTD)
- IRC_MAP_ENTRY("433", NICK_ERR)
- IRC_MAP_ENTRY("471", JOINERROR)
- IRC_MAP_ENTRY("473", JOINERROR)
- IRC_MAP_ENTRY("474", JOINERROR)
- IRC_MAP_ENTRY("475", JOINERROR)
- IRC_MAP_ENTRY("671", WHOIS_OTHER) //Encryption info (SSL connect)
+ IRC_MAP_ENTRY("JOIN", JOIN)
+ IRC_MAP_ENTRY("QUIT", QUIT)
+ IRC_MAP_ENTRY("KICK", KICK)
+ IRC_MAP_ENTRY("MODE", MODE)
+ IRC_MAP_ENTRY("NICK", NICK)
+ IRC_MAP_ENTRY("PART", PART)
+ IRC_MAP_ENTRY("PRIVMSG", PRIVMSG)
+ IRC_MAP_ENTRY("TOPIC", TOPIC)
+ IRC_MAP_ENTRY("NOTICE", NOTICE)
+ IRC_MAP_ENTRY("PING", PINGPONG)
+ IRC_MAP_ENTRY("PONG", PINGPONG)
+ IRC_MAP_ENTRY("INVITE", INVITE)
+ IRC_MAP_ENTRY("ERROR", ERROR)
+ IRC_MAP_ENTRY("001", WELCOME)
+ IRC_MAP_ENTRY("002", YOURHOST)
+ IRC_MAP_ENTRY("005", SUPPORT)
+ IRC_MAP_ENTRY("223", WHOIS_OTHER) //CodePage info
+ IRC_MAP_ENTRY("254", NOOFCHANNELS)
+ IRC_MAP_ENTRY("263", TRYAGAIN)
+ IRC_MAP_ENTRY("264", WHOIS_OTHER) //Encryption info (SSL connect)
+ IRC_MAP_ENTRY("301", WHOIS_AWAY)
+ IRC_MAP_ENTRY("302", USERHOST_REPLY)
+ IRC_MAP_ENTRY("305", BACKFROMAWAY)
+ IRC_MAP_ENTRY("306", SETAWAY)
+ IRC_MAP_ENTRY("307", WHOIS_AUTH)
+ IRC_MAP_ENTRY("310", WHOIS_OTHER)
+ IRC_MAP_ENTRY("311", WHOIS_NAME)
+ IRC_MAP_ENTRY("312", WHOIS_SERVER)
+ IRC_MAP_ENTRY("313", WHOIS_OTHER)
+ IRC_MAP_ENTRY("315", WHO_END)
+ IRC_MAP_ENTRY("317", WHOIS_IDLE)
+ IRC_MAP_ENTRY("318", WHOIS_END)
+ IRC_MAP_ENTRY("319", WHOIS_CHANNELS)
+ IRC_MAP_ENTRY("320", WHOIS_AUTH)
+ IRC_MAP_ENTRY("321", LISTSTART)
+ IRC_MAP_ENTRY("322", LIST)
+ IRC_MAP_ENTRY("323", LISTEND)
+ IRC_MAP_ENTRY("324", MODEQUERY)
+ IRC_MAP_ENTRY("330", WHOIS_AUTH)
+ IRC_MAP_ENTRY("332", INITIALTOPIC)
+ IRC_MAP_ENTRY("333", INITIALTOPICNAME)
+ IRC_MAP_ENTRY("352", WHO_REPLY)
+ IRC_MAP_ENTRY("353", NAMES)
+ IRC_MAP_ENTRY("366", ENDNAMES)
+ IRC_MAP_ENTRY("367", BANLIST)
+ IRC_MAP_ENTRY("368", BANLISTEND)
+ IRC_MAP_ENTRY("346", BANLIST)
+ IRC_MAP_ENTRY("347", BANLISTEND)
+ IRC_MAP_ENTRY("348", BANLIST)
+ IRC_MAP_ENTRY("349", BANLISTEND)
+ IRC_MAP_ENTRY("371", WHOIS_OTHER)
+ IRC_MAP_ENTRY("376", ENDMOTD)
+ IRC_MAP_ENTRY("401", WHOIS_NO_USER)
+ IRC_MAP_ENTRY("403", JOINERROR)
+ IRC_MAP_ENTRY("416", WHOTOOLONG)
+ IRC_MAP_ENTRY("421", UNKNOWN)
+ IRC_MAP_ENTRY("422", ENDMOTD)
+ IRC_MAP_ENTRY("433", NICK_ERR)
+ IRC_MAP_ENTRY("471", JOINERROR)
+ IRC_MAP_ENTRY("473", JOINERROR)
+ IRC_MAP_ENTRY("474", JOINERROR)
+ IRC_MAP_ENTRY("475", JOINERROR)
+ IRC_MAP_ENTRY("671", WHOIS_OTHER) //Encryption info (SSL connect)
}
CIrcProto::~CIrcProto()
@@ -170,7 +170,7 @@ CIrcProto::~CIrcProto() ////////////////////////////////////////////////////////////////////////////////////////
// OnModulesLoaded - performs hook registration
-static COLORREF crCols[16] = {0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15};
+static COLORREF crCols[16] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 };
static int sttCheckPerform(const char *szSetting, LPARAM lParam)
{
@@ -207,42 +207,30 @@ int CIrcProto::OnModulesLoaded(WPARAM, LPARAM) nlu.ptszDescriptiveName = name;
hNetlibDCC = (HANDLE)CallService(MS_NETLIB_REGISTERUSER, 0, (LPARAM)&nlu);
- if (ServiceExists("MBot/GetFcnTable")) {
- CallService(MS_MBOT_REGISTERIRC, 0, (LPARAM)m_szModuleName);
- m_bMbotInstalled = TRUE;
- }
-
- if (ServiceExists(MS_GC_REGISTER)) {
- GCREGISTER gcr = { sizeof(GCREGISTER) };
- gcr.dwFlags = GC_CHANMGR | GC_BOLD | GC_ITALICS | GC_UNDERLINE | GC_COLOR | GC_BKGCOLOR;
- gcr.nColors = 16;
- gcr.pColors = colors;
- gcr.ptszDispName = m_tszUserName;
- gcr.pszModule = m_szModuleName;
- CallServiceSync(MS_GC_REGISTER, NULL, (LPARAM)&gcr);
-
- HookProtoEvent(ME_GC_EVENT, &CIrcProto::GCEventHook);
- HookProtoEvent(ME_GC_BUILDMENU, &CIrcProto::GCMenuHook);
-
- GCSESSION gcw = { sizeof(GCSESSION) };
- gcw.iType = GCW_SERVER;
- gcw.ptszID = SERVERWINDOW;
- gcw.pszModule = m_szModuleName;
- gcw.ptszName = NEWTSTR_ALLOCA((TCHAR*)_A2T(m_network));
- CallServiceSync(MS_GC_NEWSESSION, 0, (LPARAM)&gcw);
-
- GCDEST gcd = { m_szModuleName, SERVERWINDOW, GC_EVENT_CONTROL };
- GCEVENT gce = { sizeof(gce), &gcd };
- if (m_useServer && !m_hideServerWindow)
- CallChatEvent(WINDOW_VISIBLE, (LPARAM)&gce);
- else
- CallChatEvent(WINDOW_HIDDEN, (LPARAM)&gce);
- bChatInstalled = TRUE;
- }
- else {
- if (IDYES == MessageBox(0, TranslateT("The IRC protocol depends on another plugin called 'Chat'\n\nDo you want to download it from the Miranda NG web site now?"), TranslateT("Information"), MB_YESNO | MB_ICONINFORMATION))
- CallService(MS_UTILS_OPENURL, 1, (LPARAM)"http://miranda-ng.org/");
- }
+ GCREGISTER gcr = { sizeof(GCREGISTER) };
+ gcr.dwFlags = GC_CHANMGR | GC_BOLD | GC_ITALICS | GC_UNDERLINE | GC_COLOR | GC_BKGCOLOR;
+ gcr.nColors = 16;
+ gcr.pColors = colors;
+ gcr.ptszDispName = m_tszUserName;
+ gcr.pszModule = m_szModuleName;
+ CallServiceSync(MS_GC_REGISTER, NULL, (LPARAM)&gcr);
+
+ HookProtoEvent(ME_GC_EVENT, &CIrcProto::GCEventHook);
+ HookProtoEvent(ME_GC_BUILDMENU, &CIrcProto::GCMenuHook);
+
+ GCSESSION gcw = { sizeof(GCSESSION) };
+ gcw.iType = GCW_SERVER;
+ gcw.ptszID = SERVERWINDOW;
+ gcw.pszModule = m_szModuleName;
+ gcw.ptszName = NEWTSTR_ALLOCA((TCHAR*)_A2T(m_network));
+ CallServiceSync(MS_GC_NEWSESSION, 0, (LPARAM)&gcw);
+
+ GCDEST gcd = { m_szModuleName, SERVERWINDOW, GC_EVENT_CONTROL };
+ GCEVENT gce = { sizeof(gce), &gcd };
+ if (m_useServer && !m_hideServerWindow)
+ CallChatEvent(WINDOW_VISIBLE, (LPARAM)&gce);
+ else
+ CallChatEvent(WINDOW_HIDDEN, (LPARAM)&gce);
TCHAR szTemp[MAX_PATH];
mir_sntprintf(szTemp, SIZEOF(szTemp), _T("%%miranda_path%%\\Plugins\\%S_perform.ini"), m_szModuleName);
@@ -774,7 +762,7 @@ struct TFakeAckParam {
__inline TFakeAckParam(MCONTACT _hContact, int _msgid) :
hContact(_hContact), msgid(_msgid)
- {}
+ {}
MCONTACT hContact;
int msgid;
@@ -861,9 +849,6 @@ int __cdecl CIrcProto::SetStatus(int iNewStatus) int CIrcProto::SetStatusInternal(int iNewStatus, bool bIsInternal)
{
- if (!bChatInstalled)
- return 0;
-
if (iNewStatus != ID_STATUS_OFFLINE && !m_network[0]) {
if (m_nick[0] && !m_disableDefaultServer) {
CQuickDlg* dlg = new CQuickDlg(this);
diff --git a/protocols/IRCG/src/options.cpp b/protocols/IRCG/src/options.cpp index 5ffdac047a..a5805e266f 100644 --- a/protocols/IRCG/src/options.cpp +++ b/protocols/IRCG/src/options.cpp @@ -1026,7 +1026,6 @@ void COtherPrefsDlg::OnInitDialog() m_quitMessage.SetText(m_proto->m_quitMessage);
m_perform.SetState(m_proto->m_perform);
m_scripting.SetState(m_proto->m_scriptingEnabled);
- m_scripting.Enable(m_bMbotInstalled);
m_performCombo.Enable(m_proto->m_perform);
m_pertormEdit.Enable(m_proto->m_perform);
m_add.Enable(m_proto->m_perform);
diff --git a/protocols/IRCG/src/scripting.cpp b/protocols/IRCG/src/scripting.cpp index 84dfcc8203..484a2b6739 100644 --- a/protocols/IRCG/src/scripting.cpp +++ b/protocols/IRCG/src/scripting.cpp @@ -25,7 +25,7 @@ INT_PTR __cdecl CIrcProto::Scripting_InsertRawIn(WPARAM, LPARAM lParam) {
char* pszRaw = (char*)lParam;
- if (m_bMbotInstalled && m_scriptingEnabled && pszRaw && IsConnected()) {
+ if (m_scriptingEnabled && pszRaw && IsConnected()) {
TCHAR* p = mir_a2t(pszRaw);
InsertIncomingEvent(p);
mir_free(p);
@@ -38,7 +38,7 @@ INT_PTR __cdecl CIrcProto::Scripting_InsertRawIn(WPARAM, LPARAM lParam) INT_PTR __cdecl CIrcProto::Scripting_InsertRawOut( WPARAM, LPARAM lParam )
{
char* pszRaw = (char*)lParam;
- if (m_bMbotInstalled && m_scriptingEnabled && pszRaw && IsConnected()) {
+ if (m_scriptingEnabled && pszRaw && IsConnected()) {
String S = pszRaw;
ReplaceString(S, "%", "%%%%");
NLSendNoScript((const unsigned char *)S.c_str(), lstrlenA(S.c_str()));
@@ -75,7 +75,7 @@ INT_PTR __cdecl CIrcProto::Scripting_InsertGuiOut(WPARAM, LPARAM lParam) {
GCHOOK* gch = (GCHOOK*)lParam;
- if (m_bMbotInstalled && m_scriptingEnabled && gch) {
+ if (m_scriptingEnabled && gch) {
GCHOOK* gchook = new GCHOOK;
gchook->pDest = new GCDEST;
@@ -107,54 +107,9 @@ INT_PTR __cdecl CIrcProto::Scripting_InsertGuiOut(WPARAM, LPARAM lParam) return 1;
}
-BOOL CIrcProto::Scripting_TriggerMSPRawIn(char** pszRaw)
-{
- int iVal = CallService(MS_MBOT_IRC_RAW_IN, (WPARAM)m_szModuleName, (LPARAM)pszRaw);
- if (iVal == 0)
- return TRUE;
-
- return iVal > 0 ? FALSE : TRUE;
-}
-
-BOOL CIrcProto::Scripting_TriggerMSPRawOut(char ** pszRaw)
-{
- int iVal = CallService(MS_MBOT_IRC_RAW_OUT, (WPARAM)m_szModuleName, (LPARAM)pszRaw);
- if (iVal == 0)
- return TRUE;
-
- return iVal > 0 ? FALSE : TRUE;
-}
-
-BOOL CIrcProto::Scripting_TriggerMSPGuiIn(WPARAM * wparam, GCEVENT *gce)
-{
- WPARAM_GUI_IN wgi = { 0 };
-
- wgi.pszModule = m_szModuleName;
- wgi.wParam = *wparam;
- if (gce->time == 0)
- gce->time = time(0);
-
- int iVal = CallService(MS_MBOT_IRC_GUI_IN, (WPARAM)&wgi, (LPARAM)gce);
- if (iVal == 0) {
- *wparam = wgi.wParam;
- return TRUE;
- }
-
- return iVal > 0 ? FALSE : TRUE;
-}
-
-BOOL CIrcProto::Scripting_TriggerMSPGuiOut(GCHOOK* gch)
-{
- int iVal = CallService(MS_MBOT_IRC_GUI_OUT, (WPARAM)m_szModuleName, (LPARAM)gch);
- if (iVal == 0)
- return TRUE;
-
- return iVal > 0 ? FALSE : TRUE;
-}
-
INT_PTR __cdecl CIrcProto::Scripting_GetIrcData(WPARAM, LPARAM lparam)
{
- if (m_bMbotInstalled && m_scriptingEnabled && lparam) {
+ if (m_scriptingEnabled && lparam) {
String sString = (char*)lparam, sRequest;
CMString sOutput, sChannel;
diff --git a/protocols/IRCG/src/services.cpp b/protocols/IRCG/src/services.cpp index 1b922570d8..c7aa5a6be6 100644 --- a/protocols/IRCG/src/services.cpp +++ b/protocols/IRCG/src/services.cpp @@ -21,8 +21,6 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. #include "irc.h"
-BOOL bChatInstalled = FALSE, m_bMbotInstalled = FALSE;
-
void CIrcProto::InitMainMenus(void)
{
char temp[MAXMODULELABELLENGTH];
@@ -31,58 +29,56 @@ void CIrcProto::InitMainMenus(void) CLISTMENUITEM mi = { sizeof(mi) };
mi.pszService = temp;
- if (bChatInstalled) {
- HGENMENU hRoot = MO_GetProtoRootMenu(m_szModuleName);
- if (hRoot == NULL) {
- // Root popupmenuitem
- mi.ptszName = m_tszUserName;
- mi.position = -1999901010;
- mi.hParentMenu = HGENMENU_ROOT;
- mi.flags = CMIF_ROOTPOPUP | CMIF_TCHAR | CMIF_KEEPUNTRANSLATED;
- mi.icolibItem = GetIconHandle(IDI_MAIN);
- hRoot = hMenuRoot = Menu_AddProtoMenuItem(&mi);
- }
- else {
- if (hMenuRoot)
- CallService(MS_CLIST_REMOVEMAINMENUITEM, (WPARAM)hMenuRoot, 0);
- hMenuRoot = NULL;
- }
-
- mi.flags = CMIF_CHILDPOPUP;
- mi.pszName = LPGEN("&Quick connect");
- mi.icolibItem = GetIconHandle(IDI_QUICK);
- strcpy(d, IRC_QUICKCONNECT);
- mi.position = 201001;
- mi.hParentMenu = hRoot;
- hMenuQuick = Menu_AddProtoMenuItem(&mi);
-
- if (m_iStatus != ID_STATUS_OFFLINE) mi.flags |= CMIF_GRAYED;
-
- mi.pszName = LPGEN("&Join channel");
- mi.icolibItem = LoadSkinnedIconHandle(SKINICON_CHAT_JOIN);//GetIconHandle(IDI_JOIN);
- strcpy(d, IRC_JOINCHANNEL);
- mi.position = 201002;
- hMenuJoin = Menu_AddProtoMenuItem(&mi);
-
- mi.pszName = LPGEN("&Change your nickname");
- mi.icolibItem = GetIconHandle(IDI_RENAME);
- strcpy(d, IRC_CHANGENICK);
- mi.position = 201003;
- hMenuNick = Menu_AddProtoMenuItem(&mi);
-
- mi.pszName = LPGEN("Show the &list of available channels");
- mi.icolibItem = GetIconHandle(IDI_LIST);
- strcpy(d, IRC_SHOWLIST);
- mi.position = 201004;
- hMenuList = Menu_AddProtoMenuItem(&mi);
-
- if (m_useServer) mi.flags &= ~CMIF_GRAYED;
- mi.pszName = LPGEN("&Show the server window");
- mi.icolibItem = GetIconHandle(IDI_SERVER);
- strcpy(d, IRC_SHOWSERVER);
- mi.position = 201005;
- hMenuServer = Menu_AddProtoMenuItem(&mi);
+ HGENMENU hRoot = MO_GetProtoRootMenu(m_szModuleName);
+ if (hRoot == NULL) {
+ // Root popupmenuitem
+ mi.ptszName = m_tszUserName;
+ mi.position = -1999901010;
+ mi.hParentMenu = HGENMENU_ROOT;
+ mi.flags = CMIF_ROOTPOPUP | CMIF_TCHAR | CMIF_KEEPUNTRANSLATED;
+ mi.icolibItem = GetIconHandle(IDI_MAIN);
+ hRoot = hMenuRoot = Menu_AddProtoMenuItem(&mi);
}
+ else {
+ if (hMenuRoot)
+ CallService(MS_CLIST_REMOVEMAINMENUITEM, (WPARAM)hMenuRoot, 0);
+ hMenuRoot = NULL;
+ }
+
+ mi.flags = CMIF_CHILDPOPUP;
+ mi.pszName = LPGEN("&Quick connect");
+ mi.icolibItem = GetIconHandle(IDI_QUICK);
+ strcpy(d, IRC_QUICKCONNECT);
+ mi.position = 201001;
+ mi.hParentMenu = hRoot;
+ hMenuQuick = Menu_AddProtoMenuItem(&mi);
+
+ if (m_iStatus != ID_STATUS_OFFLINE) mi.flags |= CMIF_GRAYED;
+
+ mi.pszName = LPGEN("&Join channel");
+ mi.icolibItem = LoadSkinnedIconHandle(SKINICON_CHAT_JOIN);//GetIconHandle(IDI_JOIN);
+ strcpy(d, IRC_JOINCHANNEL);
+ mi.position = 201002;
+ hMenuJoin = Menu_AddProtoMenuItem(&mi);
+
+ mi.pszName = LPGEN("&Change your nickname");
+ mi.icolibItem = GetIconHandle(IDI_RENAME);
+ strcpy(d, IRC_CHANGENICK);
+ mi.position = 201003;
+ hMenuNick = Menu_AddProtoMenuItem(&mi);
+
+ mi.pszName = LPGEN("Show the &list of available channels");
+ mi.icolibItem = GetIconHandle(IDI_LIST);
+ strcpy(d, IRC_SHOWLIST);
+ mi.position = 201004;
+ hMenuList = Menu_AddProtoMenuItem(&mi);
+
+ if (m_useServer) mi.flags &= ~CMIF_GRAYED;
+ mi.pszName = LPGEN("&Show the server window");
+ mi.icolibItem = GetIconHandle(IDI_SERVER);
+ strcpy(d, IRC_SHOWSERVER);
+ mi.position = 201005;
+ hMenuServer = Menu_AddProtoMenuItem(&mi);
}
/////////////////////////////////////////////////////////////////////////////////////////
@@ -97,8 +93,8 @@ static CIrcProto* IrcGetInstanceByHContact(MCONTACT hContact) return NULL;
for (int i = 0; i < g_Instances.getCount(); i++)
- if (!strcmp(szProto, g_Instances[i]->m_szModuleName))
- return g_Instances[i];
+ if (!strcmp(szProto, g_Instances[i]->m_szModuleName))
+ return g_Instances[i];
return NULL;
}
@@ -439,12 +435,12 @@ static void DoChatFormatting(TCHAR* pszText) break;
case 'c':
{
- lstrcpy(InsertThis, _T("\003"));
- iRemoveChars = 2;
+ lstrcpy(InsertThis, _T("\003"));
+ iRemoveChars = 2;
- TCHAR szTemp[3];
- lstrcpyn(szTemp, p1 + 2, 3);
- iFG = _ttoi(szTemp);
+ TCHAR szTemp[3];
+ lstrcpyn(szTemp, p1 + 2, 3);
+ iFG = _ttoi(szTemp);
}
break;
case 'C':
@@ -534,9 +530,9 @@ int __cdecl CIrcProto::GCEventHook(WPARAM wParam, LPARAM lParam) case GC_USER_PRIVMESS:
{
- TCHAR szTemp[4000];
- mir_sntprintf(szTemp, SIZEOF(szTemp), _T("/QUERY %s"), gch->ptszUID);
- PostIrcMessageWnd(p1, NULL, szTemp);
+ TCHAR szTemp[4000];
+ mir_sntprintf(szTemp, SIZEOF(szTemp), _T("/QUERY %s"), gch->ptszUID);
+ PostIrcMessageWnd(p1, NULL, szTemp);
}
break;
@@ -576,29 +572,29 @@ int __cdecl CIrcProto::GCEventHook(WPARAM wParam, LPARAM lParam) PostIrcMessage(_T("/nickserv DROP"));
break;
case 8: // nickserv Identify
- {
- CQuestionDlg* dlg = new CQuestionDlg(this);
- dlg->Show();
- HWND question_hWnd = dlg->GetHwnd();
- HWND hEditCtrl = GetDlgItem(question_hWnd, IDC_EDIT);
- SetDlgItemText(question_hWnd, IDC_CAPTION, TranslateT("Identify nick"));
- SetWindowText(GetDlgItem(question_hWnd, IDC_TEXT), TranslateT("Please enter your password"));
- SetDlgItemText(question_hWnd, IDC_HIDDENEDIT, _T("/nickserv IDENTIFY %question=\"%s\",\"%s\""));
- SetWindowLongPtr(GetDlgItem(question_hWnd, IDC_EDIT), GWL_STYLE,
- (LONG)GetWindowLongPtr(GetDlgItem(question_hWnd, IDC_EDIT), GWL_STYLE) | ES_PASSWORD);
- SendMessage(hEditCtrl, EM_SETPASSWORDCHAR, (WPARAM)_T('*'), 0);
- SetFocus(hEditCtrl);
- dlg->Activate();
- }
+ {
+ CQuestionDlg* dlg = new CQuestionDlg(this);
+ dlg->Show();
+ HWND question_hWnd = dlg->GetHwnd();
+ HWND hEditCtrl = GetDlgItem(question_hWnd, IDC_EDIT);
+ SetDlgItemText(question_hWnd, IDC_CAPTION, TranslateT("Identify nick"));
+ SetWindowText(GetDlgItem(question_hWnd, IDC_TEXT), TranslateT("Please enter your password"));
+ SetDlgItemText(question_hWnd, IDC_HIDDENEDIT, _T("/nickserv IDENTIFY %question=\"%s\",\"%s\""));
+ SetWindowLongPtr(GetDlgItem(question_hWnd, IDC_EDIT), GWL_STYLE,
+ (LONG)GetWindowLongPtr(GetDlgItem(question_hWnd, IDC_EDIT), GWL_STYLE) | ES_PASSWORD);
+ SendMessage(hEditCtrl, EM_SETPASSWORDCHAR, (WPARAM)_T('*'), 0);
+ SetFocus(hEditCtrl);
+ dlg->Activate();
+ }
break;
case 9: // nickserv remind password
- {
- DBVARIANT dbv;
- if (!getTString("Nick", &dbv)) {
- PostIrcMessage(_T("/nickserv SENDPASS %s"), dbv.ptszVal);
- db_free(&dbv);
- }
+ {
+ DBVARIANT dbv;
+ if (!getTString("Nick", &dbv)) {
+ PostIrcMessage(_T("/nickserv SENDPASS %s"), dbv.ptszVal);
+ db_free(&dbv);
}
+ }
break;
case 10: // nickserv set new password
PostIrcMessage(_T("/nickserv SET PASSWORD %%question=\"%s\",\"%s\""),
@@ -701,12 +697,12 @@ int __cdecl CIrcProto::GCEventHook(WPARAM wParam, LPARAM lParam) case 10:
PostIrcMessage(_T("/WHOIS %s %s"), gch->ptszUID, gch->ptszUID);
break;
- // case 11:
- // DoUserhostWithReason(1, "I", true, "%s", gch->ptszUID );
- // break;
- // case 12:
- // DoUserhostWithReason(1, "J", true, "%s", gch->ptszUID );
- // break;
+ // case 11:
+ // DoUserhostWithReason(1, "I", true, "%s", gch->ptszUID );
+ // break;
+ // case 12:
+ // DoUserhostWithReason(1, "J", true, "%s", gch->ptszUID );
+ // break;
case 13:
PostIrcMessage(_T("/DCC CHAT %s"), gch->ptszUID);
break;
@@ -743,19 +739,19 @@ int __cdecl CIrcProto::GCEventHook(WPARAM wParam, LPARAM lParam) gch->ptszUID, TranslateT("Please enter the channel name to invite to"), TranslateT("Invite to channel"));
break;
case 30:
- {
- PROTOSEARCHRESULT psr = { 0 };
- psr.cbSize = sizeof(psr);
- psr.flags = PSR_TCHAR;
- psr.id = gch->ptszUID;
- psr.nick = gch->ptszUID;
-
- ADDCONTACTSTRUCT acs = { 0 };
- acs.handleType = HANDLE_SEARCHRESULT;
- acs.szProto = m_szModuleName;
- acs.psr = &psr;
- CallService(MS_ADDCONTACT_SHOW, 0, (LPARAM)&acs);
- }
+ {
+ PROTOSEARCHRESULT psr = { 0 };
+ psr.cbSize = sizeof(psr);
+ psr.flags = PSR_TCHAR;
+ psr.id = gch->ptszUID;
+ psr.nick = gch->ptszUID;
+
+ ADDCONTACTSTRUCT acs = { 0 };
+ acs.handleType = HANDLE_SEARCHRESULT;
+ acs.szProto = m_szModuleName;
+ acs.psr = &psr;
+ CallService(MS_ADDCONTACT_SHOW, 0, (LPARAM)&acs);
+ }
break;
case 31: //slap
PostIrcMessageWnd(p1, NULL, CMString(FORMAT, _T("/slap %s"), gch->ptszUID));
@@ -780,74 +776,74 @@ int __cdecl CIrcProto::GCEventHook(WPARAM wParam, LPARAM lParam) /////////////////////////////////////////////////////////////////////////////////////////
static gc_item logItems[] = {
- { LPGENT("&Change your nickname" ), 1, MENU_ITEM, FALSE },
- { LPGENT("Channel &settings" ), 2, MENU_ITEM, FALSE },
- { _T(""), 0, MENU_SEPARATOR, FALSE },
- { LPGENT("NickServ"), 0, MENU_NEWPOPUP, FALSE },
- { LPGENT("Register nick" ), 5, MENU_POPUPITEM, TRUE },
- { LPGENT("Auth nick" ), 6, MENU_POPUPITEM, FALSE },
- { LPGENT("Delete nick" ), 7, MENU_POPUPITEM, FALSE },
- { LPGENT("Identify nick" ), 8, MENU_POPUPITEM, FALSE },
- { LPGENT("Remind password" ), 9, MENU_POPUPITEM, FALSE },
- { LPGENT("Set new password" ), 10, MENU_POPUPITEM, TRUE },
- { LPGENT("Set language" ), 11, MENU_POPUPITEM, FALSE },
- { LPGENT("Set homepage" ), 12, MENU_POPUPITEM, FALSE },
- { LPGENT("Set e-mail" ), 13, MENU_POPUPITEM, FALSE },
- { LPGENT("Set info" ), 14, MENU_POPUPITEM, FALSE },
- { _T("" ), 0, MENU_POPUPSEPARATOR, FALSE },
- { LPGENT("Hide e-mail from info" ), 20, MENU_POPUPITEM, FALSE },
- { LPGENT("Show e-mail in info" ), 21, MENU_POPUPITEM, FALSE },
- { _T("" ), 0, MENU_POPUPSEPARATOR, FALSE },
- { LPGENT("Set security for nick" ), 22, MENU_POPUPITEM, FALSE },
- { LPGENT("Remove security for nick" ), 23, MENU_POPUPITEM, FALSE },
- { _T("" ), 0, MENU_POPUPSEPARATOR, FALSE },
- { LPGENT("Link nick to current" ), 24, MENU_POPUPITEM, FALSE },
- { LPGENT("Unlink nick from current" ), 25, MENU_POPUPITEM, FALSE },
- { LPGENT("Set main nick" ), 26, MENU_POPUPITEM, FALSE },
- { LPGENT("List all your nicks" ), 27, MENU_POPUPITEM, FALSE },
- { LPGENT("List your channels" ), 28, MENU_POPUPITEM, FALSE },
- { _T("" ), 0, MENU_POPUPSEPARATOR, FALSE },
- { LPGENT("Kill unauthorized: off" ), 15, MENU_POPUPITEM, FALSE },
- { LPGENT("Kill unauthorized: on" ), 16, MENU_POPUPITEM, FALSE },
- { LPGENT("Kill unauthorized: quick" ), 17, MENU_POPUPITEM, FALSE },
- { _T("" ), 0, MENU_POPUPSEPARATOR, FALSE },
- { LPGENT("Hide nick from list" ), 18, MENU_POPUPITEM, FALSE },
- { LPGENT("Show nick to list" ), 19, MENU_POPUPITEM, FALSE },
- { LPGENT("Show the server &window" ), 4, MENU_ITEM, FALSE },
- { _T(""), 0, MENU_SEPARATOR, FALSE },
- { LPGENT("&Leave the channel" ), 3, MENU_ITEM, FALSE }
-};
-
-static gc_item nickItems[] = {
- { LPGENT("&WhoIs info"), 10, MENU_ITEM, FALSE }, //0
- { LPGENT("&Invite to channel"), 23, MENU_ITEM, FALSE },
- { LPGENT("Send ¬ice"), 22, MENU_ITEM, FALSE },
- { LPGENT("&Slap"), 31, MENU_ITEM, FALSE },
- { LPGENT("Nickserv info"), 32, MENU_ITEM, FALSE },
- { LPGENT("Nickserv kill ghost"), 33, MENU_ITEM, FALSE }, //5
- { LPGENT("&Control"), 0, MENU_NEWPOPUP, FALSE },
- { LPGENT("Give Owner"), 18, MENU_POPUPITEM, FALSE }, //7
- { LPGENT("Take Owner"), 19, MENU_POPUPITEM, FALSE },
- { LPGENT("Give Admin"), 20, MENU_POPUPITEM, FALSE },
- { LPGENT("Take Admin"), 21, MENU_POPUPITEM, FALSE }, //10
- { LPGENT("Give &Op"), 1, MENU_POPUPITEM, FALSE },
- { LPGENT("Take O&p"), 2, MENU_POPUPITEM, FALSE },
- { LPGENT("Give &Halfop"), 16, MENU_POPUPITEM, FALSE },
- { LPGENT("Take H&alfop"), 17, MENU_POPUPITEM, FALSE },
- { LPGENT("Give &Voice"), 3, MENU_POPUPITEM, FALSE }, //15
- { LPGENT("Take V&oice"), 4, MENU_POPUPITEM, FALSE },
- { _T(""), 0, MENU_POPUPSEPARATOR, FALSE },
- { LPGENT("&Kick"), 5, MENU_POPUPITEM, FALSE },
- { LPGENT("Ki&ck (reason)"), 6, MENU_POPUPITEM, FALSE },
- { LPGENT("&Ban"), 7, MENU_POPUPITEM, FALSE }, //20
- { LPGENT("Ban'&n kick"), 8, MENU_POPUPITEM, FALSE },
- { LPGENT("Ban'n kick (&reason)"), 9, MENU_POPUPITEM, FALSE },
- { LPGENT("&Direct Connection"), 0, MENU_NEWPOPUP, FALSE },
- { LPGENT("Request &Chat"), 13, MENU_POPUPITEM, FALSE },
- { LPGENT("Send &File"), 14, MENU_POPUPITEM, FALSE }, //25
- { LPGENT("Add to &ignore list"), 15, MENU_ITEM, FALSE },
- { _T(""), 12, MENU_SEPARATOR, FALSE },
- { LPGENT("&Add User"), 30, MENU_ITEM, FALSE }
+ { LPGENT("&Change your nickname"), 1, MENU_ITEM, FALSE },
+ { LPGENT("Channel &settings"), 2, MENU_ITEM, FALSE },
+ { _T(""), 0, MENU_SEPARATOR, FALSE },
+ { LPGENT("NickServ"), 0, MENU_NEWPOPUP, FALSE },
+ { LPGENT("Register nick"), 5, MENU_POPUPITEM, TRUE },
+ { LPGENT("Auth nick"), 6, MENU_POPUPITEM, FALSE },
+ { LPGENT("Delete nick"), 7, MENU_POPUPITEM, FALSE },
+ { LPGENT("Identify nick"), 8, MENU_POPUPITEM, FALSE },
+ { LPGENT("Remind password"), 9, MENU_POPUPITEM, FALSE },
+ { LPGENT("Set new password"), 10, MENU_POPUPITEM, TRUE },
+ { LPGENT("Set language"), 11, MENU_POPUPITEM, FALSE },
+ { LPGENT("Set homepage"), 12, MENU_POPUPITEM, FALSE },
+ { LPGENT("Set e-mail"), 13, MENU_POPUPITEM, FALSE },
+ { LPGENT("Set info"), 14, MENU_POPUPITEM, FALSE },
+ { _T(""), 0, MENU_POPUPSEPARATOR, FALSE },
+ { LPGENT("Hide e-mail from info"), 20, MENU_POPUPITEM, FALSE },
+ { LPGENT("Show e-mail in info"), 21, MENU_POPUPITEM, FALSE },
+ { _T(""), 0, MENU_POPUPSEPARATOR, FALSE },
+ { LPGENT("Set security for nick"), 22, MENU_POPUPITEM, FALSE },
+ { LPGENT("Remove security for nick"), 23, MENU_POPUPITEM, FALSE },
+ { _T(""), 0, MENU_POPUPSEPARATOR, FALSE },
+ { LPGENT("Link nick to current"), 24, MENU_POPUPITEM, FALSE },
+ { LPGENT("Unlink nick from current"), 25, MENU_POPUPITEM, FALSE },
+ { LPGENT("Set main nick"), 26, MENU_POPUPITEM, FALSE },
+ { LPGENT("List all your nicks"), 27, MENU_POPUPITEM, FALSE },
+ { LPGENT("List your channels"), 28, MENU_POPUPITEM, FALSE },
+ { _T(""), 0, MENU_POPUPSEPARATOR, FALSE },
+ { LPGENT("Kill unauthorized: off"), 15, MENU_POPUPITEM, FALSE },
+ { LPGENT("Kill unauthorized: on"), 16, MENU_POPUPITEM, FALSE },
+ { LPGENT("Kill unauthorized: quick"), 17, MENU_POPUPITEM, FALSE },
+ { _T(""), 0, MENU_POPUPSEPARATOR, FALSE },
+ { LPGENT("Hide nick from list"), 18, MENU_POPUPITEM, FALSE },
+ { LPGENT("Show nick to list"), 19, MENU_POPUPITEM, FALSE },
+ { LPGENT("Show the server &window"), 4, MENU_ITEM, FALSE },
+ { _T(""), 0, MENU_SEPARATOR, FALSE },
+ { LPGENT("&Leave the channel"), 3, MENU_ITEM, FALSE }
+};
+
+static gc_item nickItems[] = {
+ { LPGENT("&WhoIs info"), 10, MENU_ITEM, FALSE }, //0
+ { LPGENT("&Invite to channel"), 23, MENU_ITEM, FALSE },
+ { LPGENT("Send ¬ice"), 22, MENU_ITEM, FALSE },
+ { LPGENT("&Slap"), 31, MENU_ITEM, FALSE },
+ { LPGENT("Nickserv info"), 32, MENU_ITEM, FALSE },
+ { LPGENT("Nickserv kill ghost"), 33, MENU_ITEM, FALSE }, //5
+ { LPGENT("&Control"), 0, MENU_NEWPOPUP, FALSE },
+ { LPGENT("Give Owner"), 18, MENU_POPUPITEM, FALSE }, //7
+ { LPGENT("Take Owner"), 19, MENU_POPUPITEM, FALSE },
+ { LPGENT("Give Admin"), 20, MENU_POPUPITEM, FALSE },
+ { LPGENT("Take Admin"), 21, MENU_POPUPITEM, FALSE }, //10
+ { LPGENT("Give &Op"), 1, MENU_POPUPITEM, FALSE },
+ { LPGENT("Take O&p"), 2, MENU_POPUPITEM, FALSE },
+ { LPGENT("Give &Halfop"), 16, MENU_POPUPITEM, FALSE },
+ { LPGENT("Take H&alfop"), 17, MENU_POPUPITEM, FALSE },
+ { LPGENT("Give &Voice"), 3, MENU_POPUPITEM, FALSE }, //15
+ { LPGENT("Take V&oice"), 4, MENU_POPUPITEM, FALSE },
+ { _T(""), 0, MENU_POPUPSEPARATOR, FALSE },
+ { LPGENT("&Kick"), 5, MENU_POPUPITEM, FALSE },
+ { LPGENT("Ki&ck (reason)"), 6, MENU_POPUPITEM, FALSE },
+ { LPGENT("&Ban"), 7, MENU_POPUPITEM, FALSE }, //20
+ { LPGENT("Ban'&n kick"), 8, MENU_POPUPITEM, FALSE },
+ { LPGENT("Ban'n kick (&reason)"), 9, MENU_POPUPITEM, FALSE },
+ { LPGENT("&Direct Connection"), 0, MENU_NEWPOPUP, FALSE },
+ { LPGENT("Request &Chat"), 13, MENU_POPUPITEM, FALSE },
+ { LPGENT("Send &File"), 14, MENU_POPUPITEM, FALSE }, //25
+ { LPGENT("Add to &ignore list"), 15, MENU_ITEM, FALSE },
+ { _T(""), 12, MENU_SEPARATOR, FALSE },
+ { LPGENT("&Add User"), 30, MENU_ITEM, FALSE }
};
int __cdecl CIrcProto::GCMenuHook(WPARAM, LPARAM lParam)
@@ -913,8 +909,8 @@ int __cdecl CIrcProto::OnPreShutdown(WPARAM, LPARAM) EnterCriticalSection(&cs);
if (m_perform && IsConnected())
- if (DoPerform("Event: Disconnect"))
- Sleep(200);
+ if (DoPerform("Event: Disconnect"))
+ Sleep(200);
DisconnectAllDCCSessions(true);
diff --git a/protocols/IcqOscarJ/src/icqoscar.h b/protocols/IcqOscarJ/src/icqoscar.h index eb64c0ab2c..33e9e5cba0 100644 --- a/protocols/IcqOscarJ/src/icqoscar.h +++ b/protocols/IcqOscarJ/src/icqoscar.h @@ -113,7 +113,6 @@ #include "channels.h"
#include "families.h"
#include "m_icq.h"
-#include "m_icqplus.h"
#include "icq_advsearch.h"
#include "log.h"
diff --git a/protocols/SkypeClassic/SkypeClassic_12.vcxproj b/protocols/SkypeClassic/SkypeClassic_12.vcxproj index d05e962c18..b7868c7487 100644 --- a/protocols/SkypeClassic/SkypeClassic_12.vcxproj +++ b/protocols/SkypeClassic/SkypeClassic_12.vcxproj @@ -61,7 +61,6 @@ <ClCompile Include="src\skypesvc.cpp" />
<ClCompile Include="src\utf8.cpp" />
<ClCompile Include="src\util.cpp" />
- <ClCompile Include="src\voiceservice.cpp" />
</ItemGroup>
<ItemGroup>
<ClInclude Include="src\alogon.h" />
@@ -82,7 +81,6 @@ <ClInclude Include="src\utf8.h" />
<ClInclude Include="src\util.h" />
<ClInclude Include="src\version.h" />
- <ClInclude Include="src\voiceservice.h" />
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{5F9243AE-C6C9-4F42-B670-67A97767A50B}</ProjectGuid>
@@ -91,27 +89,23 @@ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
<CharacterSet>Unicode</CharacterSet>
<WholeProgramOptimization>true</WholeProgramOptimization>
<PlatformToolset>v120_xp</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v120_xp</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
<CharacterSet>Unicode</CharacterSet>
<WholeProgramOptimization>true</WholeProgramOptimization>
<PlatformToolset>v120_xp</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v120_xp</PlatformToolset>
</PropertyGroup>
@@ -149,14 +143,10 @@ <PreprocessorDefinitions>_DEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<ExceptionHandling>false</ExceptionHandling>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<RuntimeTypeInfo>false</RuntimeTypeInfo>
<WarningLevel>Level3</WarningLevel>
- <SuppressStartupBanner>true</SuppressStartupBanner>
- <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
- <CompileAs>Default</CompileAs>
<AdditionalIncludeDirectories>..\..\include;..\..\plugins\ExternalAPI;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PrecompiledHeaderFile>skype.h</PrecompiledHeaderFile>
<FunctionLevelLinking>true</FunctionLevelLinking>
<FloatingPointModel>Fast</FloatingPointModel>
<DisableSpecificWarnings>4996;%(DisableSpecificWarnings)</DisableSpecificWarnings>
@@ -167,13 +157,12 @@ </ResourceCompile>
<Link>
<AdditionalDependencies>wsock32.lib;comctl32.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <SuppressStartupBanner>true</SuppressStartupBanner>
<GenerateDebugInformation>true</GenerateDebugInformation>
<RandomizedBaseAddress>false</RandomizedBaseAddress>
<ImportLibrary>$(IntDir)$(TargetName).lib</ImportLibrary>
- <AdditionalLibraryDirectories>$(ProfileDir)..\..\bin12\lib;</AdditionalLibraryDirectories>
+ <AdditionalLibraryDirectories>$(ProfileDir)..\..\bin12\lib</AdditionalLibraryDirectories>
<ImageHasSafeExceptionHandlers>false</ImageHasSafeExceptionHandlers>
+ <SubSystem>Windows</SubSystem>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
@@ -183,14 +172,10 @@ <MinimalRebuild>true</MinimalRebuild>
<ExceptionHandling>false</ExceptionHandling>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
+ <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<RuntimeTypeInfo>false</RuntimeTypeInfo>
<WarningLevel>Level3</WarningLevel>
- <SuppressStartupBanner>true</SuppressStartupBanner>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- <CompileAs>Default</CompileAs>
<AdditionalIncludeDirectories>..\..\include;..\..\plugins\ExternalAPI;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PrecompiledHeaderFile>skype.h</PrecompiledHeaderFile>
<FunctionLevelLinking>true</FunctionLevelLinking>
<FloatingPointModel>Fast</FloatingPointModel>
<DisableSpecificWarnings>4996;%(DisableSpecificWarnings)</DisableSpecificWarnings>
@@ -201,12 +186,11 @@ </ResourceCompile>
<Link>
<AdditionalDependencies>wsock32.lib;comctl32.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <SuppressStartupBanner>true</SuppressStartupBanner>
<GenerateDebugInformation>true</GenerateDebugInformation>
<RandomizedBaseAddress>false</RandomizedBaseAddress>
<ImportLibrary>$(IntDir)$(TargetName).lib</ImportLibrary>
- <AdditionalLibraryDirectories>$(ProfileDir)..\..\bin12\lib;</AdditionalLibraryDirectories>
+ <AdditionalLibraryDirectories>$(ProfileDir)..\..\bin12\lib</AdditionalLibraryDirectories>
+ <SubSystem>Windows</SubSystem>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
@@ -216,16 +200,12 @@ <IntrinsicFunctions>true</IntrinsicFunctions>
<FavorSizeOrSpeed>Size</FavorSizeOrSpeed>
<OmitFramePointers>true</OmitFramePointers>
- <WholeProgramOptimization>true</WholeProgramOptimization>
<PreprocessorDefinitions>NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<ExceptionHandling>false</ExceptionHandling>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
- <SuppressStartupBanner>true</SuppressStartupBanner>
- <CompileAs>Default</CompileAs>
<AdditionalIncludeDirectories>..\..\include;..\..\plugins\ExternalAPI;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PrecompiledHeaderFile>skype.h</PrecompiledHeaderFile>
<FloatingPointModel>Fast</FloatingPointModel>
<DisableSpecificWarnings>4996;%(DisableSpecificWarnings)</DisableSpecificWarnings>
</ClCompile>
@@ -235,13 +215,13 @@ </ResourceCompile>
<Link>
<AdditionalDependencies>wsock32.lib;comctl32.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <SuppressStartupBanner>true</SuppressStartupBanner>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<ImportLibrary>$(IntDir)$(TargetName).lib</ImportLibrary>
- <AdditionalLibraryDirectories>$(ProfileDir)..\..\bin12\lib;</AdditionalLibraryDirectories>
+ <AdditionalLibraryDirectories>$(ProfileDir)..\..\bin12\lib</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Windows</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
@@ -251,17 +231,13 @@ <IntrinsicFunctions>true</IntrinsicFunctions>
<FavorSizeOrSpeed>Size</FavorSizeOrSpeed>
<OmitFramePointers>true</OmitFramePointers>
- <WholeProgramOptimization>true</WholeProgramOptimization>
<PreprocessorDefinitions>NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<ExceptionHandling>false</ExceptionHandling>
<FunctionLevelLinking>true</FunctionLevelLinking>
<RuntimeTypeInfo>false</RuntimeTypeInfo>
<WarningLevel>Level3</WarningLevel>
- <SuppressStartupBanner>true</SuppressStartupBanner>
- <CompileAs>Default</CompileAs>
<AdditionalIncludeDirectories>..\..\include;..\..\plugins\ExternalAPI;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PrecompiledHeaderFile>skype.h</PrecompiledHeaderFile>
<FloatingPointModel>Fast</FloatingPointModel>
<DisableSpecificWarnings>4996;%(DisableSpecificWarnings)</DisableSpecificWarnings>
</ClCompile>
@@ -271,13 +247,13 @@ </ResourceCompile>
<Link>
<AdditionalDependencies>wsock32.lib;comctl32.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <SuppressStartupBanner>true</SuppressStartupBanner>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<ImportLibrary>$(IntDir)$(TargetName).lib</ImportLibrary>
- <AdditionalLibraryDirectories>$(ProfileDir)..\..\bin12\lib;</AdditionalLibraryDirectories>
+ <AdditionalLibraryDirectories>$(ProfileDir)..\..\bin12\lib</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
+ <SubSystem>Windows</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
</Link>
</ItemDefinitionGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
diff --git a/protocols/SkypeClassic/SkypeClassic_12.vcxproj.filters b/protocols/SkypeClassic/SkypeClassic_12.vcxproj.filters index eec33c3042..2d9d1be44f 100644 --- a/protocols/SkypeClassic/SkypeClassic_12.vcxproj.filters +++ b/protocols/SkypeClassic/SkypeClassic_12.vcxproj.filters @@ -60,9 +60,6 @@ <ClCompile Include="src\util.cpp">
<Filter>Source Files</Filter>
</ClCompile>
- <ClCompile Include="src\voiceservice.cpp">
- <Filter>Source Files</Filter>
- </ClCompile>
</ItemGroup>
<ItemGroup>
<ClInclude Include="src\alogon.h">
@@ -119,9 +116,6 @@ <ClInclude Include="src\version.h">
<Filter>Header Files</Filter>
</ClInclude>
- <ClInclude Include="src\voiceservice.h">
- <Filter>Header Files</Filter>
- </ClInclude>
</ItemGroup>
<ItemGroup>
<None Include="res\add.ico">
@@ -190,10 +184,10 @@ </ItemGroup>
<ItemGroup>
<ResourceCompile Include="res\Resource.rc">
- <Filter>Source Files</Filter>
+ <Filter>Resource Files</Filter>
</ResourceCompile>
<ResourceCompile Include="res\Version.rc">
- <Filter>Source Files</Filter>
+ <Filter>Resource Files</Filter>
</ResourceCompile>
</ItemGroup>
</Project>
\ No newline at end of file diff --git a/protocols/SkypeClassic/src/contacts.cpp b/protocols/SkypeClassic/src/contacts.cpp index bfcd4a4319..92b07eaab2 100644 --- a/protocols/SkypeClassic/src/contacts.cpp +++ b/protocols/SkypeClassic/src/contacts.cpp @@ -7,7 +7,6 @@ #include "debug.h"
#include "pthread.h"
#include "gchat.h"
-#include "voiceservice.h"
#pragma warning (push)
#pragma warning (disable: 4100) // unreferenced formal parameter
@@ -28,179 +27,175 @@ static HANDLE hMenuCallItem, hMenuCallHangup, hMenuSkypeOutCallItem, hMenuHoldCa // Seems to be not neccessary
/*
BOOL SupportAlphaIcons(void) {
- HANDLE hMod;
- DLLVERSIONINFO tDVI={0};
- BOOL retval=FALSE;
- FARPROC pDllGetVersion;
-
- if (!(hMod=LoadLibrary("comctl32.dll"))) return FALSE;
- if (pDllGetVersion=GetProcAddress(hMod, "DllGetVersion")) {
- tDVI.cbSize=sizeof(tDVI);
- if (!pDllGetVersion ((DLLVERSIONINFO *)&tDVI)) {
- if (GetDeviceCaps(GetDC(NULL), BITSPIXEL)*GetDeviceCaps(GetDC(NULL), PLANES)>=32 &&
- tDVI.dwMajorVersion>=6)
- retval=TRUE;
- }
- }
- FreeLibrary(hMod);
- return retval;
+HANDLE hMod;
+DLLVERSIONINFO tDVI={0};
+BOOL retval=FALSE;
+FARPROC pDllGetVersion;
+
+if (!(hMod=LoadLibrary("comctl32.dll"))) return FALSE;
+if (pDllGetVersion=GetProcAddress(hMod, "DllGetVersion")) {
+tDVI.cbSize=sizeof(tDVI);
+if (!pDllGetVersion ((DLLVERSIONINFO *)&tDVI)) {
+if (GetDeviceCaps(GetDC(NULL), BITSPIXEL)*GetDeviceCaps(GetDC(NULL), PLANES)>=32 &&
+tDVI.dwMajorVersion>=6)
+retval=TRUE;
+}
+}
+FreeLibrary(hMod);
+return retval;
}
*/
CLISTMENUITEM CallItem(void) {
- CLISTMENUITEM mi={0};
-
- mi.cbSize=sizeof(mi);
- mi.position=-2000005000;
- mi.flags=CMIF_NOTOFFLINE|CMIF_TCHAR;
- mi.hIcon=LoadIcon(hInst,MAKEINTRESOURCE(IDI_CALL));
- mi.pszContactOwner=SKYPE_PROTONAME;
- mi.ptszName=LPGENT("Call (Skype)");
- mi.pszService=SKYPE_CALL;
-
+ CLISTMENUITEM mi = { 0 };
+
+ mi.cbSize = sizeof(mi);
+ mi.position = -2000005000;
+ mi.flags = CMIF_NOTOFFLINE | CMIF_TCHAR;
+ mi.hIcon = LoadIcon(hInst, MAKEINTRESOURCE(IDI_CALL));
+ mi.pszContactOwner = SKYPE_PROTONAME;
+ mi.ptszName = LPGENT("Call (Skype)");
+ mi.pszService = SKYPE_CALL;
+
return mi;
}
CLISTMENUITEM SkypeOutCallItem(void) {
- CLISTMENUITEM mi={0};
+ CLISTMENUITEM mi = { 0 };
- mi.cbSize=sizeof(mi);
- mi.position=-2000005000;
- mi.flags=CMIF_HIDDEN|CMIF_TCHAR;
- mi.hIcon=LoadIcon(hInst,MAKEINTRESOURCE(IDI_CALLSKYPEOUT));
- mi.ptszName=LPGENT("Call using SkypeOut");
- mi.pszService=SKYPEOUT_CALL;
+ mi.cbSize = sizeof(mi);
+ mi.position = -2000005000;
+ mi.flags = CMIF_HIDDEN | CMIF_TCHAR;
+ mi.hIcon = LoadIcon(hInst, MAKEINTRESOURCE(IDI_CALLSKYPEOUT));
+ mi.ptszName = LPGENT("Call using SkypeOut");
+ mi.pszService = SKYPEOUT_CALL;
return mi;
}
CLISTMENUITEM HupItem(void) {
- CLISTMENUITEM mi={0};
+ CLISTMENUITEM mi = { 0 };
- mi.cbSize=sizeof(mi);
- mi.position=-2000005000;
- mi.flags=CMIF_NOTOFFLINE|CMIF_TCHAR;
- mi.hIcon=LoadIcon(hInst,MAKEINTRESOURCE(IDI_HANGUP));
- mi.pszContactOwner=SKYPE_PROTONAME;
- mi.ptszName=LPGENT("Hang up call (Skype)");
- mi.pszService=SKYPE_CALLHANGUP;
+ mi.cbSize = sizeof(mi);
+ mi.position = -2000005000;
+ mi.flags = CMIF_NOTOFFLINE | CMIF_TCHAR;
+ mi.hIcon = LoadIcon(hInst, MAKEINTRESOURCE(IDI_HANGUP));
+ mi.pszContactOwner = SKYPE_PROTONAME;
+ mi.ptszName = LPGENT("Hang up call (Skype)");
+ mi.pszService = SKYPE_CALLHANGUP;
return mi;
}
CLISTMENUITEM SkypeOutHupItem(void) {
- CLISTMENUITEM mi={0};
-
- mi.cbSize=sizeof(mi);
- mi.position=-2000005000;
- mi.flags=CMIF_TCHAR;
- mi.hIcon=LoadIcon(hInst,MAKEINTRESOURCE(IDI_HANGUP));
- mi.ptszName=LPGENT("Hang up SkypeOut call");
- mi.pszService=SKYPEOUT_CALL;
+ CLISTMENUITEM mi = { 0 };
+
+ mi.cbSize = sizeof(mi);
+ mi.position = -2000005000;
+ mi.flags = CMIF_TCHAR;
+ mi.hIcon = LoadIcon(hInst, MAKEINTRESOURCE(IDI_HANGUP));
+ mi.ptszName = LPGENT("Hang up SkypeOut call");
+ mi.pszService = SKYPEOUT_CALL;
return mi;
}
CLISTMENUITEM HoldCallItem(void) {
- CLISTMENUITEM mi={0};
-
- mi.cbSize=sizeof(mi);
- mi.position=-2000005000;
- mi.flags=CMIF_HIDDEN|CMIF_NOTOFFLINE|CMIF_TCHAR;
- mi.hIcon=LoadIcon(hInst,MAKEINTRESOURCE(IDI_HOLD));
- mi.ptszName=LPGENT("Hold call");
- mi.pszService=SKYPE_HOLDCALL;
+ CLISTMENUITEM mi = { 0 };
+
+ mi.cbSize = sizeof(mi);
+ mi.position = -2000005000;
+ mi.flags = CMIF_HIDDEN | CMIF_NOTOFFLINE | CMIF_TCHAR;
+ mi.hIcon = LoadIcon(hInst, MAKEINTRESOURCE(IDI_HOLD));
+ mi.ptszName = LPGENT("Hold call");
+ mi.pszService = SKYPE_HOLDCALL;
return mi;
}
CLISTMENUITEM ResumeCallItem(void) {
- CLISTMENUITEM mi={0};
-
- mi.cbSize=sizeof(mi);
- mi.position=-2000005000;
- mi.flags=CMIF_HIDDEN|CMIF_NOTOFFLINE|CMIF_TCHAR;
- mi.hIcon=LoadIcon(hInst,MAKEINTRESOURCE(IDI_RESUME));
- mi.ptszName=LPGENT("Resume call");
- mi.pszService=SKYPE_HOLDCALL;
+ CLISTMENUITEM mi = { 0 };
+
+ mi.cbSize = sizeof(mi);
+ mi.position = -2000005000;
+ mi.flags = CMIF_HIDDEN | CMIF_NOTOFFLINE | CMIF_TCHAR;
+ mi.hIcon = LoadIcon(hInst, MAKEINTRESOURCE(IDI_RESUME));
+ mi.ptszName = LPGENT("Resume call");
+ mi.pszService = SKYPE_HOLDCALL;
return mi;
}
CLISTMENUITEM FileTransferItem(void) {
- CLISTMENUITEM mi={0};
+ CLISTMENUITEM mi = { 0 };
// Stolen from file.c of Miranda core
- mi.cbSize=sizeof(mi);
- mi.position=-2000020000;
- mi.flags=CMIF_HIDDEN|CMIF_NOTOFFLINE|CMIF_TCHAR;
- mi.hIcon=LoadSkinnedIcon(SKINICON_EVENT_FILE);
- mi.ptszName=LPGENT("&File");
- mi.pszContactOwner=SKYPE_PROTONAME;
- mi.pszService=SKYPE_SENDFILE;
+ mi.cbSize = sizeof(mi);
+ mi.position = -2000020000;
+ mi.flags = CMIF_HIDDEN | CMIF_NOTOFFLINE | CMIF_TCHAR;
+ mi.hIcon = LoadSkinnedIcon(SKINICON_EVENT_FILE);
+ mi.ptszName = LPGENT("&File");
+ mi.pszContactOwner = SKYPE_PROTONAME;
+ mi.pszService = SKYPE_SENDFILE;
return mi;
}
CLISTMENUITEM ChatInitItem(void) {
- CLISTMENUITEM mi={0};
-
- mi.cbSize=sizeof(mi);
- mi.position=-2000020000;
- mi.flags=CMIF_HIDDEN|CMIF_NOTOFFLINE|CMIF_TCHAR;
- mi.hIcon=LoadIcon( hInst, MAKEINTRESOURCE( IDI_INVITE ));
- mi.ptszName=LPGENT("&Open group chat");
- mi.pszContactOwner=SKYPE_PROTONAME;
- mi.pszService=SKYPE_CHATNEW;
+ CLISTMENUITEM mi = { 0 };
+
+ mi.cbSize = sizeof(mi);
+ mi.position = -2000020000;
+ mi.flags = CMIF_HIDDEN | CMIF_NOTOFFLINE | CMIF_TCHAR;
+ mi.hIcon = LoadIcon(hInst, MAKEINTRESOURCE(IDI_INVITE));
+ mi.ptszName = LPGENT("&Open group chat");
+ mi.pszContactOwner = SKYPE_PROTONAME;
+ mi.pszService = SKYPE_CHATNEW;
return mi;
}
HANDLE add_contextmenu(MCONTACT hContact) {
CLISTMENUITEM mi;
-
+
UNREFERENCED_PARAMETER(hContact);
- if (!HasVoiceService()) {
- mi=CallItem();
- hMenuCallItem=Menu_AddContactMenuItem(&mi);
- mi=HupItem();
- hMenuCallHangup=Menu_AddContactMenuItem(&mi);
- }
-
- mi=SkypeOutCallItem();
- hMenuSkypeOutCallItem=Menu_AddContactMenuItem(&mi);
+ mi = CallItem();
+ hMenuCallItem = Menu_AddContactMenuItem(&mi);
+ mi = HupItem();
+ hMenuCallHangup = Menu_AddContactMenuItem(&mi);
- if (!HasVoiceService()) {
- mi=HoldCallItem();
- hMenuHoldCallItem=Menu_AddContactMenuItem(&mi);
- }
+ mi = SkypeOutCallItem();
+ hMenuSkypeOutCallItem = Menu_AddContactMenuItem(&mi);
+
+ mi = HoldCallItem();
+ hMenuHoldCallItem = Menu_AddContactMenuItem(&mi);
- // We cannot use flag PF1_FILESEND for sending files, as Skype opens its own
+ // We cannot use flag PF1_FILESEND for sending files, as Skype opens its own
// sendfile-Dialog.
- mi=FileTransferItem();
- hMenuFileTransferItem=Menu_AddContactMenuItem(&mi);
-
- mi=ChatInitItem();
- hMenuChatInitItem=Menu_AddContactMenuItem(&mi);
-
-
- ZeroMemory(&mi,sizeof(mi));
- mi.cbSize=sizeof(mi);
- mi.position=-2000005000;
- mi.flags=CMIF_TCHAR;
- mi.hIcon=LoadIcon(hInst,MAKEINTRESOURCE(IDI_IMPORT));
- mi.pszContactOwner=SKYPE_PROTONAME;
- mi.ptszName=LPGENT("Import Skype history");
- mi.pszService=SKYPE_IMPORTHISTORY;
+ mi = FileTransferItem();
+ hMenuFileTransferItem = Menu_AddContactMenuItem(&mi);
+
+ mi = ChatInitItem();
+ hMenuChatInitItem = Menu_AddContactMenuItem(&mi);
+
+
+ ZeroMemory(&mi, sizeof(mi));
+ mi.cbSize = sizeof(mi);
+ mi.position = -2000005000;
+ mi.flags = CMIF_TCHAR;
+ mi.hIcon = LoadIcon(hInst, MAKEINTRESOURCE(IDI_IMPORT));
+ mi.pszContactOwner = SKYPE_PROTONAME;
+ mi.ptszName = LPGENT("Import Skype history");
+ mi.pszService = SKYPE_IMPORTHISTORY;
return Menu_AddContactMenuItem(&mi);
}
HANDLE add_mainmenu(void) {
- CLISTMENUITEM mi={0};
-
- mi.cbSize=sizeof(mi);
- mi.position=-2000005000;
- mi.flags=CMIF_TCHAR;
- mi.hIcon=LoadIcon(hInst,MAKEINTRESOURCE(IDI_ADD));
- mi.pszContactOwner=SKYPE_PROTONAME;
- mi.ptszName=LPGENT("Add Skype contact");
- mi.pszService=SKYPE_ADDUSER;
+ CLISTMENUITEM mi = { 0 };
+
+ mi.cbSize = sizeof(mi);
+ mi.position = -2000005000;
+ mi.flags = CMIF_TCHAR;
+ mi.hIcon = LoadIcon(hInst, MAKEINTRESOURCE(IDI_ADD));
+ mi.pszContactOwner = SKYPE_PROTONAME;
+ mi.ptszName = LPGENT("Add Skype contact");
+ mi.pszService = SKYPE_ADDUSER;
return Menu_AddMainMenuItem(&mi);
}
@@ -216,77 +211,76 @@ int __cdecl PrebuildContactMenu(WPARAM wParam, LPARAM lParam) { if (!(szProto = (char*)CallService(MS_PROTO_GETCONTACTBASEPROTO, wParam, 0))) return 0;
- if (!HasVoiceService()) {
- // Clear hold-Item in case it exists
- mi=HoldCallItem();
- mi.flags|=CMIM_ALL;
- CallService(MS_CLIST_MODIFYMENUITEM, (WPARAM)(HANDLE)hMenuHoldCallItem,(LPARAM)&mi);
- }
+ // Clear hold-Item in case it exists
+ mi = HoldCallItem();
+ mi.flags |= CMIM_ALL;
+ CallService(MS_CLIST_MODIFYMENUITEM, (WPARAM)(HANDLE)hMenuHoldCallItem, (LPARAM)&mi);
if (!strcmp(szProto, SKYPE_PROTONAME)) {
- if (!HasVoiceService()) {
- if (!db_get((MCONTACT)wParam, SKYPE_PROTONAME, "CallId", &dbv)) {
- if (db_get_b((MCONTACT)wParam, SKYPE_PROTONAME, "OnHold", 0))
- mi=ResumeCallItem(); else mi=HoldCallItem();
- mi.flags=CMIM_ALL;
- CallService(MS_CLIST_MODIFYMENUITEM, (WPARAM)(HANDLE)hMenuHoldCallItem,(LPARAM)&mi);
+ if (!db_get((MCONTACT)wParam, SKYPE_PROTONAME, "CallId", &dbv)) {
+ if (db_get_b((MCONTACT)wParam, SKYPE_PROTONAME, "OnHold", 0))
+ mi = ResumeCallItem(); else mi = HoldCallItem();
+ mi.flags = CMIM_ALL;
+ CallService(MS_CLIST_MODIFYMENUITEM, (WPARAM)(HANDLE)hMenuHoldCallItem, (LPARAM)&mi);
- callAvailable = FALSE;
- hangupAvailable = TRUE;
+ callAvailable = FALSE;
+ hangupAvailable = TRUE;
- db_free(&dbv);
- } else { callAvailable = TRUE; hangupAvailable = FALSE; }
-
- if (db_get_b((MCONTACT)wParam, SKYPE_PROTONAME, "ChatRoom", 0)!=0) {
- callAvailable = FALSE;
- hangupAvailable = FALSE;
- }
-
- mi = CallItem();
- mi.flags |= CMIM_ALL | (!callAvailable?CMIF_HIDDEN:0);
- CallService(MS_CLIST_MODIFYMENUITEM, (WPARAM)(HANDLE)hMenuCallItem,(LPARAM)&mi);
+ db_free(&dbv);
+ }
+ else { callAvailable = TRUE; hangupAvailable = FALSE; }
- mi = HupItem();
- mi.flags |= CMIM_ALL | (!hangupAvailable?CMIF_HIDDEN:0);
- CallService(MS_CLIST_MODIFYMENUITEM, (WPARAM)(HANDLE)hMenuCallHangup,(LPARAM)&mi);
+ if (db_get_b((MCONTACT)wParam, SKYPE_PROTONAME, "ChatRoom", 0) != 0) {
+ callAvailable = FALSE;
+ hangupAvailable = FALSE;
}
+ mi = CallItem();
+ mi.flags |= CMIM_ALL | (!callAvailable ? CMIF_HIDDEN : 0);
+ CallService(MS_CLIST_MODIFYMENUITEM, (WPARAM)(HANDLE)hMenuCallItem, (LPARAM)&mi);
+
+ mi = HupItem();
+ mi.flags |= CMIM_ALL | (!hangupAvailable ? CMIF_HIDDEN : 0);
+ CallService(MS_CLIST_MODIFYMENUITEM, (WPARAM)(HANDLE)hMenuCallHangup, (LPARAM)&mi);
+
// Clear SkypeOut menu in case it exists
- mi=SkypeOutCallItem();
- mi.flags|=CMIM_ALL;
- CallService(MS_CLIST_MODIFYMENUITEM, (WPARAM)(HANDLE)hMenuSkypeOutCallItem,(LPARAM)&mi);
+ mi = SkypeOutCallItem();
+ mi.flags |= CMIM_ALL;
+ CallService(MS_CLIST_MODIFYMENUITEM, (WPARAM)(HANDLE)hMenuSkypeOutCallItem, (LPARAM)&mi);
// File sending and groupchat-creation works starting with protocol version 5
- if (protocol>=5) {
- mi=FileTransferItem();
- if (db_get_b((MCONTACT)wParam, SKYPE_PROTONAME, "ChatRoom", 0)==0)
- mi.flags ^= CMIF_HIDDEN;
+ if (protocol >= 5) {
+ mi = FileTransferItem();
+ if (db_get_b((MCONTACT)wParam, SKYPE_PROTONAME, "ChatRoom", 0) == 0)
+ mi.flags ^= CMIF_HIDDEN;
mi.flags |= CMIM_FLAGS;
- CallService(MS_CLIST_MODIFYMENUITEM, (WPARAM)(HANDLE)hMenuFileTransferItem,(LPARAM)&mi);
+ CallService(MS_CLIST_MODIFYMENUITEM, (WPARAM)(HANDLE)hMenuFileTransferItem, (LPARAM)&mi);
}
- if (protocol>=5 || bIsImoproxy) {
- mi=ChatInitItem();
+ if (protocol >= 5 || bIsImoproxy) {
+ mi = ChatInitItem();
if (db_get_b(NULL, SKYPE_PROTONAME, "UseGroupchat", 0) &&
- db_get_b((MCONTACT)wParam, SKYPE_PROTONAME, "ChatRoom", 0)==0)
- mi.flags ^= CMIF_HIDDEN;
+ db_get_b((MCONTACT)wParam, SKYPE_PROTONAME, "ChatRoom", 0) == 0)
+ mi.flags ^= CMIF_HIDDEN;
mi.flags |= CMIM_FLAGS;
- CallService(MS_CLIST_MODIFYMENUITEM, (WPARAM)(HANDLE)hMenuChatInitItem,(LPARAM)&mi);
+ CallService(MS_CLIST_MODIFYMENUITEM, (WPARAM)(HANDLE)hMenuChatInitItem, (LPARAM)&mi);
}
- } else if (bSkypeOut) {
+ }
+ else if (bSkypeOut) {
if (!db_get((MCONTACT)wParam, SKYPE_PROTONAME, "CallId", &dbv)) {
- mi=SkypeOutHupItem();
+ mi = SkypeOutHupItem();
db_free(&dbv);
- } else {
- mi=SkypeOutCallItem();
- if(!db_get((MCONTACT)wParam,"UserInfo","MyPhone0",&dbv)) {
+ }
+ else {
+ mi = SkypeOutCallItem();
+ if (!db_get((MCONTACT)wParam, "UserInfo", "MyPhone0", &dbv)) {
db_free(&dbv);
- mi.flags=0;
+ mi.flags = 0;
}
}
- mi.flags|=CMIM_ALL;
- CallService(MS_CLIST_MODIFYMENUITEM, (WPARAM)(HANDLE)hMenuSkypeOutCallItem,(LPARAM)&mi);
+ mi.flags |= CMIM_ALL;
+ CallService(MS_CLIST_MODIFYMENUITEM, (WPARAM)(HANDLE)hMenuSkypeOutCallItem, (LPARAM)&mi);
}
return 0;
@@ -294,15 +288,15 @@ int __cdecl PrebuildContactMenu(WPARAM wParam, LPARAM lParam) { /*
int ClistDblClick(WPARAM wParam, LPARAM lParam) {
- char *szProto;
+char *szProto;
- szProto = (char*)CallService( MS_PROTO_GETCONTACTBASEPROTO, wParam, 0 );
- if (szProto!=NULL && !strcmp(szProto, SKYPE_PROTONAME) &&
- db_get_w((HANDLE)wParam, SKYPE_PROTONAME, "Status", ID_STATUS_OFFLINE)==ID_STATUS_ONTHEPHONE) {
- SkypeCall(wParam, 0);
- }
+szProto = (char*)CallService( MS_PROTO_GETCONTACTBASEPROTO, wParam, 0 );
+if (szProto!=NULL && !strcmp(szProto, SKYPE_PROTONAME) &&
+db_get_w((HANDLE)wParam, SKYPE_PROTONAME, "Status", ID_STATUS_OFFLINE)==ID_STATUS_ONTHEPHONE) {
+SkypeCall(wParam, 0);
+}
- return 0;
+return 0;
}
*/
@@ -312,13 +306,13 @@ MCONTACT find_contact(char *name) DBVARIANT dbv;
// already on list?
- for (MCONTACT hContact = db_find_first(); hContact != NULL; hContact=db_find_next(hContact))
+ for (MCONTACT hContact = db_find_first(); hContact != NULL; hContact = db_find_next(hContact))
{
- char *szProto = (char*)CallService( MS_PROTO_GETCONTACTBASEPROTO, hContact, 0 );
- if (szProto!=NULL && !strcmp(szProto, SKYPE_PROTONAME) && db_get_b(hContact, SKYPE_PROTONAME, "ChatRoom", 0)==0)
+ char *szProto = (char*)CallService(MS_PROTO_GETCONTACTBASEPROTO, hContact, 0);
+ if (szProto != NULL && !strcmp(szProto, SKYPE_PROTONAME) && db_get_b(hContact, SKYPE_PROTONAME, "ChatRoom", 0) == 0)
{
if (db_get_s(hContact, SKYPE_PROTONAME, SKYPE_NAME, &dbv)) continue;
- tCompareResult = strcmp(dbv.pszVal, name);
+ tCompareResult = strcmp(dbv.pszVal, name);
db_free(&dbv);
if (tCompareResult) continue;
return hContact; // already there, return handle
@@ -333,13 +327,13 @@ MCONTACT find_contactT(TCHAR *name) DBVARIANT dbv;
// already on list?
- for (MCONTACT hContact=db_find_first(); hContact != NULL; hContact=db_find_next(hContact))
+ for (MCONTACT hContact = db_find_first(); hContact != NULL; hContact = db_find_next(hContact))
{
- char *szProto = (char*)CallService( MS_PROTO_GETCONTACTBASEPROTO, hContact, 0 );
- if (szProto!=NULL && !strcmp(szProto, SKYPE_PROTONAME) && db_get_b(hContact, SKYPE_PROTONAME, "ChatRoom", 0)==0)
+ char *szProto = (char*)CallService(MS_PROTO_GETCONTACTBASEPROTO, hContact, 0);
+ if (szProto != NULL && !strcmp(szProto, SKYPE_PROTONAME) && db_get_b(hContact, SKYPE_PROTONAME, "ChatRoom", 0) == 0)
{
if (db_get_ts(hContact, SKYPE_PROTONAME, SKYPE_NAME, &dbv)) continue;
- tCompareResult = _tcscmp(dbv.ptszVal, name);
+ tCompareResult = _tcscmp(dbv.ptszVal, name);
db_free(&dbv);
if (tCompareResult) continue;
return hContact; // already there, return handle
@@ -354,34 +348,36 @@ MCONTACT add_contact(char *name, DWORD flags) MCONTACT hContact;
// already on list?
- if (hContact=find_contact(name)) {
+ if (hContact = find_contact(name)) {
if (!(flags & PALF_TEMPORARY) && db_get_b(hContact, "CList", "NotOnList", 1)) {
- db_unset( hContact, "CList", "NotOnList" );
- db_unset( hContact, "CList", "Hidden" );
+ db_unset(hContact, "CList", "NotOnList");
+ db_unset(hContact, "CList", "Hidden");
}
LOG(("add_contact: Found %s", name));
return hContact; // already there, return handle
}
// no, so add
-
+
LOG(("add_contact: Adding %s", name));
- hContact=(MCONTACT)CallServiceSync(MS_DB_CONTACT_ADD, 0, 0);
+ hContact = (MCONTACT)CallServiceSync(MS_DB_CONTACT_ADD, 0, 0);
if (hContact) {
- if (CallServiceSync(MS_PROTO_ADDTOCONTACT, hContact,(LPARAM)SKYPE_PROTONAME)!=0) {
+ if (CallServiceSync(MS_PROTO_ADDTOCONTACT, hContact, (LPARAM)SKYPE_PROTONAME) != 0) {
LOG(("add_contact: Ouch! MS_PROTO_ADDTOCONTACT failed for some reason"));
CallServiceSync(MS_DB_CONTACT_DELETE, hContact, 0);
return NULL;
}
if (name[0]) db_set_s(hContact, SKYPE_PROTONAME, SKYPE_NAME, name);
- if (flags & PALF_TEMPORARY ) {
+ if (flags & PALF_TEMPORARY) {
db_set_b(hContact, "CList", "NotOnList", 1);
db_set_b(hContact, "CList", "Hidden", 1);
}
if (name[0]) {
SkypeSend("GET USER %s DISPLAYNAME", name);
- } else {LOG(("add_contact: Info: The contact added has no name."));}
- } else {LOG(("add_contact: Ouch! MS_DB_CONTACT_ADD failed for some reason"));}
+ }
+ else { LOG(("add_contact: Info: The contact added has no name.")); }
+ }
+ else { LOG(("add_contact: Ouch! MS_DB_CONTACT_ADD failed for some reason")); }
LOG(("add_contact succeeded"));
return hContact;
}
@@ -389,31 +385,31 @@ MCONTACT add_contact(char *name, DWORD flags) void logoff_contacts(BOOL bCleanup) {
MCONTACT hContact;
char *szProto;
- DBVARIANT dbv={0};
+ DBVARIANT dbv = { 0 };
LOG(("logoff_contacts: Logging off contacts."));
- for (hContact=db_find_first();hContact != NULL;hContact=db_find_next(hContact)) {
- szProto = (char*)CallService( MS_PROTO_GETCONTACTBASEPROTO, hContact, 0 );
- if (szProto!=NULL && !strcmp(szProto, SKYPE_PROTONAME))
+ for (hContact = db_find_first(); hContact != NULL; hContact = db_find_next(hContact)) {
+ szProto = (char*)CallService(MS_PROTO_GETCONTACTBASEPROTO, hContact, 0);
+ if (szProto != NULL && !strcmp(szProto, SKYPE_PROTONAME))
{
- if (db_get_w(hContact, SKYPE_PROTONAME, "Status", ID_STATUS_OFFLINE)!=ID_STATUS_OFFLINE)
+ if (db_get_w(hContact, SKYPE_PROTONAME, "Status", ID_STATUS_OFFLINE) != ID_STATUS_OFFLINE)
db_set_w(hContact, SKYPE_PROTONAME, "Status", ID_STATUS_OFFLINE);
db_unset(hContact, SKYPE_PROTONAME, "CallId");
- if (db_get_b(hContact, SKYPE_PROTONAME, "ChatRoom", 0)==1)
+ if (db_get_b(hContact, SKYPE_PROTONAME, "ChatRoom", 0) == 1)
{
if (db_get_ts(hContact, SKYPE_PROTONAME, "ChatRoomID", &dbv)) continue;
- RemChat (dbv.ptszVal);
+ RemChat(dbv.ptszVal);
db_free(&dbv);
}
if (db_get_s(hContact, SKYPE_PROTONAME, "Typing_Stream", &dbv) == 0)
{
- if (bCleanup) SkypeSend ("ALTER APPLICATION libpurple_typing DISCONNECT %s", dbv.pszVal);
+ if (bCleanup) SkypeSend("ALTER APPLICATION libpurple_typing DISCONNECT %s", dbv.pszVal);
db_free(&dbv);
db_unset(hContact, SKYPE_PROTONAME, "Typing_Stream");
}
}
}
- if (bCleanup && (protocol>=5 || bIsImoproxy)) SkypeSend ("DELETE APPLICATION libpurple_typing");
+ if (bCleanup && (protocol >= 5 || bIsImoproxy)) SkypeSend("DELETE APPLICATION libpurple_typing");
}
diff --git a/protocols/SkypeClassic/src/skype.cpp b/protocols/SkypeClassic/src/skype.cpp index bd65d1bae7..20d4048458 100644 --- a/protocols/SkypeClassic/src/skype.cpp +++ b/protocols/SkypeClassic/src/skype.cpp @@ -26,7 +26,6 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. #include "pthread.h"
#include "gchat.h"
#include "m_toptoolbar.h"
-#include "voiceservice.h"
#include "msglist.h"
#include "memlist.h"
#include <sys/timeb.h>
@@ -34,9 +33,9 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. #define INVALID_FILE_ATTRIBUTES 0xFFFFFFFF
#endif
#ifdef _WIN64
- #if (_MSC_VER < 1500)
- #pragma comment (lib, "bufferoverflowU.lib")
- #endif
+#if (_MSC_VER < 1500)
+#pragma comment (lib, "bufferoverflowU.lib")
+#endif
#endif
#pragma warning (disable: 4706) // assignment within conditional expression
@@ -44,18 +43,18 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. POPUPDATAT MessagePopup;
// Exported Globals
-HWND hSkypeWnd=NULL, g_hWnd=NULL, hSkypeWndSecondary=NULL, hForbiddenSkypeWnd = NULL;
-HANDLE SkypeReady, SkypeMsgReceived, hInitChat=NULL, httbButton=NULL, FetchMessageEvent=NULL;
-BOOL SkypeInitialized=FALSE, MirandaShuttingDown=FALSE, PopupServiceExists=FALSE;
-BOOL UseSockets=FALSE, bSkypeOut=FALSE, bProtocolSet=FALSE, bIsImoproxy=FALSE;
-char skype_path[MAX_PATH], protocol=2, *pszProxyCallout=NULL, g_szProtoName[_MAX_FNAME]="SkypeClassic";
-int SkypeStatus=ID_STATUS_OFFLINE, hSearchThread=-1, receivers=1;
+HWND hSkypeWnd = NULL, g_hWnd = NULL, hSkypeWndSecondary = NULL, hForbiddenSkypeWnd = NULL;
+HANDLE SkypeReady, SkypeMsgReceived, hInitChat = NULL, httbButton = NULL, FetchMessageEvent = NULL;
+BOOL SkypeInitialized = FALSE, MirandaShuttingDown = FALSE, PopupServiceExists = FALSE;
+BOOL UseSockets = FALSE, bSkypeOut = FALSE, bProtocolSet = FALSE, bIsImoproxy = FALSE;
+char skype_path[MAX_PATH], protocol = 2, *pszProxyCallout = NULL, g_szProtoName[_MAX_FNAME] = "SkypeClassic";
+int SkypeStatus = ID_STATUS_OFFLINE, hSearchThread = -1, receivers = 1;
long sendwatchers = 0, rcvwatchers = 0;
UINT ControlAPIAttach, ControlAPIDiscover;
-LONG AttachStatus=-1;
+LONG AttachStatus = -1;
HINSTANCE hInst;
HANDLE hProtocolAvatarsFolder;
-char DefaultAvatarsFolder[MAX_PATH+1];
+char DefaultAvatarsFolder[MAX_PATH + 1];
DWORD mirandaVersion;
int hLangpack = 0;
@@ -63,47 +62,47 @@ CRITICAL_SECTION RingAndEndcallMutex, QueryThreadMutex, TimeMutex; // Module Internal Globals
HANDLE MessagePumpReady;
-HANDLE hChatEvent=NULL, hChatMenu=NULL;
-HANDLE hEvInitChat=NULL, hBuddyAdded=NULL;
-HANDLE hMenuAddSkypeContact=NULL;
+HANDLE hChatEvent = NULL, hChatMenu = NULL;
+HANDLE hEvInitChat = NULL, hBuddyAdded = NULL;
+HANDLE hMenuAddSkypeContact = NULL;
DWORD msgPumpThreadId = 0;
#ifdef SKYPEBUG_OFFLN
HANDLE GotUserstatus;
#endif
-BOOL bModulesLoaded=FALSE;
-char *RequestedStatus=NULL; // To fix Skype-API Statusmode-bug
-char cmdMessage[12]="MESSAGE", cmdPartner[8]="PARTNER"; // Compatibility commands
+BOOL bModulesLoaded = FALSE;
+char *RequestedStatus = NULL; // To fix Skype-API Statusmode-bug
+char cmdMessage[12] = "MESSAGE", cmdPartner[8] = "PARTNER"; // Compatibility commands
// Direct assignment of user properties to a DB-Setting
-static const settings_map m_settings[]= {
- {"LANGUAGE", "Language1"},
- {"PROVINCE", "State"},
- {"CITY", "City"},
- {"PHONE_HOME", "Phone"},
- {"PHONE_OFFICE", "CompanyPhone"},
- {"PHONE_MOBILE", "Cellular"},
- {"HOMEPAGE", "Homepage"},
- {"ABOUT", "About"}
- };
+static const settings_map m_settings[] = {
+ { "LANGUAGE", "Language1" },
+ { "PROVINCE", "State" },
+ { "CITY", "City" },
+ { "PHONE_HOME", "Phone" },
+ { "PHONE_OFFICE", "CompanyPhone" },
+ { "PHONE_MOBILE", "Cellular" },
+ { "HOMEPAGE", "Homepage" },
+ { "ABOUT", "About" }
+};
// Imported Globals
extern status_map status_codes[];
-BOOL (WINAPI *MyEnableThemeDialogTexture)(HANDLE, DWORD) = 0;
+BOOL(WINAPI *MyEnableThemeDialogTexture)(HANDLE, DWORD) = 0;
HMODULE hUxTheme = 0;
// function pointers, use typedefs for casting to shut up the compiler when using GetProcAddress()
-typedef BOOL (WINAPI *PITA)();
-typedef HANDLE (WINAPI *POTD)(HWND, LPCWSTR);
-typedef UINT (WINAPI *PDTB)(HANDLE, HDC, int, int, RECT *, RECT *);
-typedef UINT (WINAPI *PCTD)(HANDLE);
-typedef UINT (WINAPI *PDTT)(HANDLE, HDC, int, int, LPCWSTR, int, DWORD, DWORD, RECT *);
+typedef BOOL(WINAPI *PITA)();
+typedef HANDLE(WINAPI *POTD)(HWND, LPCWSTR);
+typedef UINT(WINAPI *PDTB)(HANDLE, HDC, int, int, RECT *, RECT *);
+typedef UINT(WINAPI *PCTD)(HANDLE);
+typedef UINT(WINAPI *PDTT)(HANDLE, HDC, int, int, LPCWSTR, int, DWORD, DWORD, RECT *);
PITA pfnIsThemeActive = 0;
POTD pfnOpenThemeData = 0;
@@ -134,20 +133,20 @@ typedef struct { int InitVSApi()
{
- if((hUxTheme = LoadLibraryA("uxtheme.dll")) == 0)
- return 0;
-
- pfnIsThemeActive = (PITA)GetProcAddress(hUxTheme, "IsThemeActive");
- pfnOpenThemeData = (POTD)GetProcAddress(hUxTheme, "OpenThemeData");
- pfnDrawThemeBackground = (PDTB)GetProcAddress(hUxTheme, "DrawThemeBackground");
- pfnCloseThemeData = (PCTD)GetProcAddress(hUxTheme, "CloseThemeData");
- pfnDrawThemeText = (PDTT)GetProcAddress(hUxTheme, "DrawThemeText");
-
- MyEnableThemeDialogTexture = (BOOL (WINAPI *)(HANDLE, DWORD))GetProcAddress(hUxTheme, "EnableThemeDialogTexture");
- if(pfnIsThemeActive != 0 && pfnOpenThemeData != 0 && pfnDrawThemeBackground != 0 && pfnCloseThemeData != 0 && pfnDrawThemeText != 0) {
- return 1;
- }
- return 0;
+ if ((hUxTheme = LoadLibraryA("uxtheme.dll")) == 0)
+ return 0;
+
+ pfnIsThemeActive = (PITA)GetProcAddress(hUxTheme, "IsThemeActive");
+ pfnOpenThemeData = (POTD)GetProcAddress(hUxTheme, "OpenThemeData");
+ pfnDrawThemeBackground = (PDTB)GetProcAddress(hUxTheme, "DrawThemeBackground");
+ pfnCloseThemeData = (PCTD)GetProcAddress(hUxTheme, "CloseThemeData");
+ pfnDrawThemeText = (PDTT)GetProcAddress(hUxTheme, "DrawThemeText");
+
+ MyEnableThemeDialogTexture = (BOOL(WINAPI *)(HANDLE, DWORD))GetProcAddress(hUxTheme, "EnableThemeDialogTexture");
+ if (pfnIsThemeActive != 0 && pfnOpenThemeData != 0 && pfnDrawThemeBackground != 0 && pfnCloseThemeData != 0 && pfnDrawThemeText != 0) {
+ return 1;
+ }
+ return 0;
}
/*
@@ -156,9 +155,9 @@ int InitVSApi() int FreeVSApi()
{
- if(hUxTheme != 0)
- FreeLibrary(hUxTheme);
- return 0;
+ if (hUxTheme != 0)
+ FreeLibrary(hUxTheme);
+ return 0;
}
// Plugin Info
@@ -173,7 +172,7 @@ PLUGININFOEX pluginInfo = { __AUTHORWEB,
UNICODE_AWARE,
// {A71F8335-7B87-4432-B8A3-81479431C6F5}
- {0xa71f8335, 0x7b87, 0x4432, {0xb8, 0xa3, 0x81, 0x47, 0x94, 0x31, 0xc6, 0xf5}}
+ { 0xa71f8335, 0x7b87, 0x4432, { 0xb8, 0xa3, 0x81, 0x47, 0x94, 0x31, 0xc6, 0xf5 } }
};
#define MAPDND 1 // Map Occupied to DND status and say that you support it
@@ -183,9 +182,9 @@ PLUGININFOEX pluginInfo = { void RegisterToDbeditorpp(void)
{
- // known modules list
- if (ServiceExists("DBEditorpp/RegisterSingleModule"))
- CallService("DBEditorpp/RegisterSingleModule", (WPARAM)SKYPE_PROTONAME, 0);
+ // known modules list
+ if (ServiceExists("DBEditorpp/RegisterSingleModule"))
+ CallService("DBEditorpp/RegisterSingleModule", (WPARAM)SKYPE_PROTONAME, 0);
}
/*
@@ -205,7 +204,7 @@ int ShowMessage(int iconID, TCHAR *lpzText, int mustShow) { if (db_get_b(NULL, SKYPE_PROTONAME, "SuppressErrors", 0)) return -1;
- lpzText=TranslateTS(lpzText);
+ lpzText = TranslateTS(lpzText);
if (bModulesLoaded && PopupServiceExists && ServiceExists(MS_POPUP_ADDPOPUPT) && db_get_b(NULL, SKYPE_PROTONAME, "UsePopup", 0) && !MirandaShuttingDown) {
BOOL showPopup, popupWindowColor;
@@ -215,32 +214,32 @@ int ShowMessage(int iconID, TCHAR *lpzText, int mustShow) { popupTimeSec = db_get_dw(NULL, SKYPE_PROTONAME, "popupTimeSecErr", 4);
popupTextColor = db_get_dw(NULL, SKYPE_PROTONAME, "popupTextColorErr", GetSysColor(COLOR_WINDOWTEXT));
popupBackColor = db_get_dw(NULL, SKYPE_PROTONAME, "popupBackColorErr", GetSysColor(COLOR_BTNFACE));
- popupWindowColor = ( 0 != db_get_b(NULL, SKYPE_PROTONAME, "popupWindowColorErr", TRUE));
- showPopup = ( 0 != db_get_b(NULL, SKYPE_PROTONAME, "showPopupErr", TRUE));
+ popupWindowColor = (0 != db_get_b(NULL, SKYPE_PROTONAME, "popupWindowColorErr", TRUE));
+ showPopup = (0 != db_get_b(NULL, SKYPE_PROTONAME, "showPopupErr", TRUE));
MessagePopup.lchContact = NULL;
- MessagePopup.lchIcon = LoadIcon(hInst,MAKEINTRESOURCE(iconID));
- MessagePopup.colorBack = ! popupWindowColor ? popupBackColor : GetSysColor(COLOR_BTNFACE);
- MessagePopup.colorText = ! popupWindowColor ? popupTextColor : GetSysColor(COLOR_WINDOWTEXT);
+ MessagePopup.lchIcon = LoadIcon(hInst, MAKEINTRESOURCE(iconID));
+ MessagePopup.colorBack = !popupWindowColor ? popupBackColor : GetSysColor(COLOR_BTNFACE);
+ MessagePopup.colorText = !popupWindowColor ? popupTextColor : GetSysColor(COLOR_WINDOWTEXT);
MessagePopup.iSeconds = popupTimeSec;
MessagePopup.PluginData = (void *)1;
-
+
lstrcpy(MessagePopup.lptzText, lpzText);
#ifdef _UNICODE
- mbstowcs (MessagePopup.lptzContactName, SKYPE_PROTONAME, strlen(SKYPE_PROTONAME)+1);
+ mbstowcs(MessagePopup.lptzContactName, SKYPE_PROTONAME, strlen(SKYPE_PROTONAME) + 1);
#else
lstrcpy(MessagePopup.lptzContactName, SKYPE_PROTONAME);
#endif
- if(showPopup)
- CallService(MS_POPUP_ADDPOPUPT,(WPARAM)&MessagePopup,0);
+ if (showPopup)
+ CallService(MS_POPUP_ADDPOPUPT, (WPARAM)&MessagePopup, 0);
return 0;
- }
+ }
else {
- if (mustShow==1) MessageBox(NULL,lpzText,_T("Skype Protocol"), MB_OK | MB_ICONWARNING);
+ if (mustShow == 1) MessageBox(NULL, lpzText, _T("Skype Protocol"), MB_OK | MB_ICONWARNING);
return 0;
}
}
@@ -248,11 +247,11 @@ int ShowMessage(int iconID, TCHAR *lpzText, int mustShow) { int ShowMessageA(int iconID, char *lpzText, int mustShow) {
WCHAR *lpwText;
int iRet;
- size_t len = mbstowcs (NULL, lpzText, strlen(lpzText));
- if (len == -1 || !(lpwText = (WCHAR*)calloc(len+1,sizeof(WCHAR)))) return -1;
- mbstowcs (lpwText, lpzText, strlen(lpzText));
+ size_t len = mbstowcs(NULL, lpzText, strlen(lpzText));
+ if (len == -1 || !(lpwText = (WCHAR*)calloc(len + 1, sizeof(WCHAR)))) return -1;
+ mbstowcs(lpwText, lpzText, strlen(lpzText));
iRet = ShowMessage(iconID, lpwText, mustShow);
- free (lpwText);
+ free(lpwText);
return iRet;
}
#endif
@@ -264,8 +263,8 @@ int HookContactAdded(WPARAM wParam, LPARAM lParam) { UNREFERENCED_PARAMETER(lParam);
- szProto = (char*)CallService( MS_PROTO_GETCONTACTBASEPROTO, wParam, 0 );
- if (szProto!=NULL && !strcmp(szProto, SKYPE_PROTONAME))
+ szProto = (char*)CallService(MS_PROTO_GETCONTACTBASEPROTO, wParam, 0);
+ if (szProto != NULL && !strcmp(szProto, SKYPE_PROTONAME))
add_contextmenu((MCONTACT)wParam);
return 0;
}
@@ -275,13 +274,13 @@ int HookContactDeleted(WPARAM wParam, LPARAM lParam) { UNREFERENCED_PARAMETER(lParam);
- szProto = (char*)CallService( MS_PROTO_GETCONTACTBASEPROTO, wParam, 0 );
- if (szProto!=NULL && !strcmp(szProto, SKYPE_PROTONAME)) {
+ szProto = (char*)CallService(MS_PROTO_GETCONTACTBASEPROTO, wParam, 0);
+ if (szProto != NULL && !strcmp(szProto, SKYPE_PROTONAME)) {
DBVARIANT dbv;
int retval;
if (db_get_s((MCONTACT)wParam, SKYPE_PROTONAME, SKYPE_NAME, &dbv)) return 1;
- retval=SkypeSend("SET USER %s BUDDYSTATUS 1", dbv.pszVal);
+ retval = SkypeSend("SET USER %s BUDDYSTATUS 1", dbv.pszVal);
db_free(&dbv);
if (retval) return 1;
}
@@ -300,30 +299,30 @@ void GetInfoThread(void *hContact) // fall through there so that message gets added to the queue in order to be
// consumed by SkypeGet
char *pszProps[] = {
- "BIRTHDAY", "COUNTRY", "SEX", "MOOD_TEXT", "TIMEZONE", "IS_VIDEO_CAPABLE"};
+ "BIRTHDAY", "COUNTRY", "SEX", "MOOD_TEXT", "TIMEZONE", "IS_VIDEO_CAPABLE" };
- LOG (("GetInfoThread started."));
- EnterCriticalSection (&QueryThreadMutex);
- if (db_get_s((MCONTACT)hContact, SKYPE_PROTONAME, SKYPE_NAME, &dbv))
+ LOG(("GetInfoThread started."));
+ EnterCriticalSection(&QueryThreadMutex);
+ if (db_get_s((MCONTACT)hContact, SKYPE_PROTONAME, SKYPE_NAME, &dbv))
{
- LOG (("GetInfoThread terminated, cannot find Skype Name for contact %08X.", hContact));
- LeaveCriticalSection (&QueryThreadMutex);
+ LOG(("GetInfoThread terminated, cannot find Skype Name for contact %08X.", hContact));
+ LeaveCriticalSection(&QueryThreadMutex);
return;
}
- if (ptr=SkypeGet ("USER", dbv.pszVal, "DISPLAYNAME")) {
+ if (ptr = SkypeGet("USER", dbv.pszVal, "DISPLAYNAME")) {
// WndProc sets Nick accordingly
if (*ptr) bSetNick = TRUE;
- free (ptr);
+ free(ptr);
}
- if (ptr=SkypeGet ("USER", dbv.pszVal, "FULLNAME")) {
+ if (ptr = SkypeGet("USER", dbv.pszVal, "FULLNAME")) {
if (*ptr && !bSetNick && db_get_b(NULL, SKYPE_PROTONAME, "ShowFullname", 1)) {
// No Displayname and FULLNAME requested
db_set_utf((MCONTACT)hContact, SKYPE_PROTONAME, "Nick", ptr);
bSetNick = TRUE;
}
- free (ptr);
+ free(ptr);
}
if (!bSetNick) {
@@ -334,81 +333,83 @@ void GetInfoThread(void *hContact) if (!bIsImoproxy)
{
- for (i=0; i<sizeof(pszProps)/sizeof(pszProps[0]); i++)
- if (ptr=SkypeGet ("USER", dbv.pszVal, pszProps[i])) free (ptr);
- } else {
- if (ptr=SkypeGet ("USER", dbv.pszVal, "MOOD_TEXT")) free (ptr);
+ for (i = 0; i < sizeof(pszProps) / sizeof(pszProps[0]); i++)
+ if (ptr = SkypeGet("USER", dbv.pszVal, pszProps[i])) free(ptr);
+ }
+ else {
+ if (ptr = SkypeGet("USER", dbv.pszVal, "MOOD_TEXT")) free(ptr);
}
if (protocol >= 7 || bIsImoproxy) {
// Notify about the possibility of an avatar
- ACKDATA ack = {0};
- ack.cbSize = sizeof( ACKDATA );
+ ACKDATA ack = { 0 };
+ ack.cbSize = sizeof(ACKDATA);
ack.szModule = SKYPE_PROTONAME;
ack.hContact = (MCONTACT)hContact;
ack.type = ACKTYPE_AVATAR;
ack.result = ACKRESULT_STATUS;
- CallService( MS_PROTO_BROADCASTACK, 0, ( LPARAM )&ack );
+ CallService(MS_PROTO_BROADCASTACK, 0, (LPARAM)&ack);
//if (ptr=SkypeGet ("USER", dbv.pszVal, "RICH_MOOD_TEXT")) free (ptr);
}
if (!bIsImoproxy)
{
- for (i=0; i<sizeof(m_settings)/sizeof(m_settings[0]); i++)
- if (ptr=SkypeGet ("USER", dbv.pszVal, m_settings[i].SkypeSetting)) free (ptr);
+ for (i = 0; i < sizeof(m_settings) / sizeof(m_settings[0]); i++)
+ if (ptr = SkypeGet("USER", dbv.pszVal, m_settings[i].SkypeSetting)) free(ptr);
}
- ProtoBroadcastAck(SKYPE_PROTONAME, (MCONTACT)hContact, ACKTYPE_GETINFO, ACKRESULT_SUCCESS, (HANDLE) 1, 0);
+ ProtoBroadcastAck(SKYPE_PROTONAME, (MCONTACT)hContact, ACKTYPE_GETINFO, ACKRESULT_SUCCESS, (HANDLE)1, 0);
LeaveCriticalSection(&QueryThreadMutex);
db_free(&dbv);
- LOG (("GetInfoThread terminated gracefully."));
+ LOG(("GetInfoThread terminated gracefully."));
}
time_t SkypeTime(time_t *timer)
{
struct _timeb tb;
-
- EnterCriticalSection (&TimeMutex);
+
+ EnterCriticalSection(&TimeMutex);
_ftime(&tb);
- if (timer) *timer=tb.time;
- LeaveCriticalSection (&TimeMutex);
+ if (timer) *timer = tb.time;
+ LeaveCriticalSection(&TimeMutex);
return tb.time;
}
void BasicSearchThread(char *nick) {
- PROTOSEARCHRESULT psr={0};
- char *cmd=NULL, *token=NULL, *ptr=NULL, *nextoken;
+ PROTOSEARCHRESULT psr = { 0 };
+ char *cmd = NULL, *token = NULL, *ptr = NULL, *nextoken;
time_t st;
- LOG (("BasicSearchThread started."));
- EnterCriticalSection (&QueryThreadMutex);
+ LOG(("BasicSearchThread started."));
+ EnterCriticalSection(&QueryThreadMutex);
SkypeTime(&st);
- if (SkypeSend("SEARCH USERS %s", nick)==0 && (cmd=SkypeRcvTime("USERS", st, INFINITE))) {
+ if (SkypeSend("SEARCH USERS %s", nick) == 0 && (cmd = SkypeRcvTime("USERS", st, INFINITE))) {
if (strncmp(cmd, "ERROR", 5)) {
- psr.cbSize=sizeof(psr);
- for (token=strtok_r(cmd+5, ", ", &nextoken); token; token=strtok_r(NULL, ", ", &nextoken)) {
- psr.nick=psr.id=_A2T(token);
- psr.lastName=NULL;
- psr.firstName=NULL;
- psr.email=NULL;
- if (ptr=SkypeGet("USER", token, "FULLNAME")) {
+ psr.cbSize = sizeof(psr);
+ for (token = strtok_r(cmd + 5, ", ", &nextoken); token; token = strtok_r(NULL, ", ", &nextoken)) {
+ psr.nick = psr.id = _A2T(token);
+ psr.lastName = NULL;
+ psr.firstName = NULL;
+ psr.email = NULL;
+ if (ptr = SkypeGet("USER", token, "FULLNAME")) {
// We cannot use strtok() to seperate first & last name here,
// because we already use it for parsing the user list
// So we use our own function
- if (psr.lastName=_A2T(strchr(ptr, ' '))) {
- *psr.lastName=0;
+ if (psr.lastName = _A2T(strchr(ptr, ' '))) {
+ *psr.lastName = 0;
psr.lastName++;
LOG(("BasicSearchThread: lastName=%s", psr.lastName));
}
- psr.firstName=_A2T(ptr);
+ psr.firstName = _A2T(ptr);
LOG(("BasicSearchThread: firstName=%s", psr.firstName));
}
ProtoBroadcastAck(SKYPE_PROTONAME, NULL, ACKTYPE_SEARCH, ACKRESULT_DATA, (HANDLE)hSearchThread, (LPARAM)(PROTOSEARCHRESULT*)&psr);
if (ptr) free(ptr);
}
- } else {
+ }
+ else {
OUT(cmd);
}
free(cmd);
@@ -416,7 +417,7 @@ void BasicSearchThread(char *nick) { ProtoBroadcastAck(SKYPE_PROTONAME, NULL, ACKTYPE_SEARCH, ACKRESULT_SUCCESS, (HANDLE)hSearchThread, 0);
free(nick);
LeaveCriticalSection(&QueryThreadMutex);
- LOG (("BasicSearchThread terminated gracefully."));
+ LOG(("BasicSearchThread terminated gracefully."));
return;
}
@@ -426,20 +427,20 @@ void GetDisplaynameThread(char *dummy) { char *ptr;
UNREFERENCED_PARAMETER(dummy);
-
+
LOG(("GetDisplaynameThread started."));
if (db_get_s(NULL, SKYPE_PROTONAME, SKYPE_NAME, &dbv)) {
LOG(("GetDisplaynameThread terminated."));
return;
}
EnterCriticalSection(&QueryThreadMutex);
- if ((ptr=SkypeGet("USER", dbv.pszVal, "FULLNAME"))) {
+ if ((ptr = SkypeGet("USER", dbv.pszVal, "FULLNAME"))) {
if (*ptr) db_set_utf(NULL, SKYPE_PROTONAME, "Nick", ptr);
free(ptr);
}
db_free(&dbv);
LeaveCriticalSection(&QueryThreadMutex);
- LOG(("GetDisplaynameThread terminated gracefully."));
+ LOG(("GetDisplaynameThread terminated gracefully."));
}
@@ -448,11 +449,12 @@ INT_PTR ImportHistory(WPARAM wParam, LPARAM lParam) { DBVARIANT dbv;
UNREFERENCED_PARAMETER(lParam);
-
+
if (db_get_b((MCONTACT)wParam, SKYPE_PROTONAME, "ChatRoom", 0)) {
if (db_get_s((MCONTACT)wParam, SKYPE_PROTONAME, "ChatRoomID", &dbv)) return 0;
- SkypeSend ("GET CHAT %s CHATMESSAGES", dbv.pszVal);
- } else {
+ SkypeSend("GET CHAT %s CHATMESSAGES", dbv.pszVal);
+ }
+ else {
if (db_get_s((MCONTACT)wParam, SKYPE_PROTONAME, SKYPE_NAME, &dbv)) return 0;
SkypeSend("SEARCH %sS %s", cmdMessage, dbv.pszVal);
}
@@ -466,22 +468,24 @@ int SearchFriends(void) { time_t st;
SkypeTime(&st);
- if (SkypeSend("SEARCH FRIENDS")!=-1 && (ptr=SkypeRcvTime("USERS", st, INFINITE)))
+ if (SkypeSend("SEARCH FRIENDS") != -1 && (ptr = SkypeRcvTime("USERS", st, INFINITE)))
{
if (strncmp(ptr, "ERROR", 5)) {
- if (ptr+5) {
- for (token=strtok_r(ptr+5, ", ", &nextoken); token; token=strtok_r(NULL, ", ", &nextoken)) {
+ if (ptr + 5) {
+ for (token = strtok_r(ptr + 5, ", ", &nextoken); token; token = strtok_r(NULL, ", ", &nextoken)) {
if (!(pStat = SkypeGet("USER", token, "ONLINESTATUS")))
{
iRet = -1;
break;
}
- free (pStat);
+ free(pStat);
}
}
- } else iRet=-1;
+ }
+ else iRet = -1;
free(ptr);
- } else iRet=-1;
+ }
+ else iRet = -1;
return iRet;
}
@@ -491,55 +495,55 @@ void __cdecl SearchUsersWaitingMyAuthorization(void *dummy) { UNREFERENCED_PARAMETER(dummy);
if (SkypeSend("#UWA SEARCH USERSWAITINGMYAUTHORIZATION")) return;
- if (!(cmd=SkypeRcv("#UWA USERS", INFINITE))) return;
+ if (!(cmd = SkypeRcv("#UWA USERS", INFINITE))) return;
if (!strncmp(cmd, "ERROR", 5)) {
free(cmd);
return;
}
- token=strtok_r(cmd+10, ", ", &nextoken);
+ token = strtok_r(cmd + 10, ", ", &nextoken);
while (token) {
- CCSDATA ccs={0};
- PROTORECVEVENT pre={0};
+ CCSDATA ccs = { 0 };
+ PROTORECVEVENT pre = { 0 };
MCONTACT hContact;
- char *firstname=NULL, *lastname=NULL, *pCurBlob;
-
+ char *firstname = NULL, *lastname = NULL, *pCurBlob;
+
LOG(("Awaiting auth: %s", token));
- ccs.szProtoService=PSR_AUTH;
- ccs.hContact=hContact=add_contact(token, PALF_TEMPORARY);
- ccs.wParam=0;
- ccs.lParam=(LPARAM)⪯
- pre.flags=0;
- pre.timestamp=(DWORD)SkypeTime(NULL);
+ ccs.szProtoService = PSR_AUTH;
+ ccs.hContact = hContact = add_contact(token, PALF_TEMPORARY);
+ ccs.wParam = 0;
+ ccs.lParam = (LPARAM)⪯
+ pre.flags = 0;
+ pre.timestamp = (DWORD)SkypeTime(NULL);
/* blob is: */
//DWORD protocolSpecific MCONTACT hContact
//ASCIIZ nick, firstName, lastName, e-mail, requestReason
- if (firstname=SkypeGet("USER", token, "FULLNAME"))
- if (lastname=strchr(firstname, ' ')) {
- *lastname=0;
- lastname++;
+ if (firstname = SkypeGet("USER", token, "FULLNAME"))
+ if (lastname = strchr(firstname, ' ')) {
+ *lastname = 0;
+ lastname++;
}
-
- pre.lParam=sizeof(DWORD)+sizeof(HANDLE)+strlen(token)+5;
- if (firstname) pre.lParam+=strlen(firstname);
- if (lastname) pre.lParam+=strlen(lastname);
- if (pre.szMessage = pCurBlob = (char *)calloc(1, pre.lParam)) {
- pCurBlob+=sizeof(DWORD); // Not used
- memcpy(pCurBlob,&hContact,sizeof(HANDLE)); pCurBlob+=sizeof(HANDLE);
- strcpy((char *)pCurBlob,token); pCurBlob+=strlen((char *)pCurBlob)+1;
+
+ pre.lParam = sizeof(DWORD) + sizeof(HANDLE) + strlen(token) + 5;
+ if (firstname) pre.lParam += strlen(firstname);
+ if (lastname) pre.lParam += strlen(lastname);
+ if (pre.szMessage = pCurBlob = (char *)calloc(1, pre.lParam)) {
+ pCurBlob += sizeof(DWORD); // Not used
+ memcpy(pCurBlob, &hContact, sizeof(HANDLE)); pCurBlob += sizeof(HANDLE);
+ strcpy((char *)pCurBlob, token); pCurBlob += strlen((char *)pCurBlob) + 1;
if (firstname) {
- strcpy((char *)pCurBlob,firstname);
+ strcpy((char *)pCurBlob, firstname);
if (lastname) {
- pCurBlob+=strlen((char *)pCurBlob)+1;
- strcpy((char *)pCurBlob,lastname);
+ pCurBlob += strlen((char *)pCurBlob) + 1;
+ strcpy((char *)pCurBlob, lastname);
}
}
- CallService(MS_PROTO_CHAINRECV,0,(LPARAM)&ccs);
+ CallService(MS_PROTO_CHAINRECV, 0, (LPARAM)&ccs);
free(pre.szMessage);
}
if (firstname) free(firstname);
- token=strtok_r(NULL, ", ", &nextoken);
+ token = strtok_r(NULL, ", ", &nextoken);
}
free(cmd);
return;
@@ -549,13 +553,13 @@ void SearchFriendsThread(char *dummy) { UNREFERENCED_PARAMETER(dummy);
if (!SkypeInitialized) return;
- LOG(("SearchFriendsThread started."));
+ LOG(("SearchFriendsThread started."));
EnterCriticalSection(&QueryThreadMutex);
- SkypeInitialized=FALSE;
+ SkypeInitialized = FALSE;
SearchFriends();
- SkypeInitialized=TRUE;
+ SkypeInitialized = TRUE;
LeaveCriticalSection(&QueryThreadMutex);
- LOG(("SearchFriendsThread terminated gracefully."));
+ LOG(("SearchFriendsThread terminated gracefully."));
}
void __cdecl SearchRecentChats(void *dummy) {
@@ -564,14 +568,14 @@ void __cdecl SearchRecentChats(void *dummy) { UNREFERENCED_PARAMETER(dummy);
if (SkypeSend("#RCH SEARCH RECENTCHATS")) return;
- if (!(cmd=SkypeRcv("#RCH CHATS", INFINITE))) return;
+ if (!(cmd = SkypeRcv("#RCH CHATS", INFINITE))) return;
if (!strncmp(cmd, "ERROR", 5)) {
free(cmd);
return;
}
- for (token=strtok_r(cmd+10, ", ", &nextoken); token; token=strtok_r(NULL, ", ", &nextoken)) {
- char *pszStatus = SkypeGet ("CHAT", token, "STATUS");
+ for (token = strtok_r(cmd + 10, ", ", &nextoken); token; token = strtok_r(NULL, ", ", &nextoken)) {
+ char *pszStatus = SkypeGet("CHAT", token, "STATUS");
if (pszStatus) {
if (!strcmp(pszStatus, "MULTI_SUBSCRIBED")) {
@@ -579,26 +583,26 @@ void __cdecl SearchRecentChats(void *dummy) { /*if (!find_chatA(token)) */{
char *pszTopic;
- EnterCriticalSection (&QueryThreadMutex);
+ EnterCriticalSection(&QueryThreadMutex);
ChatStart(token, TRUE);
- if (pszTopic = SkypeGet ("CHAT", token, "TOPIC")) {
+ if (pszTopic = SkypeGet("CHAT", token, "TOPIC")) {
TCHAR *psztChatName, *psztTopic;
if (!*pszTopic) {
- free (pszTopic);
- pszTopic = SkypeGet ("CHAT", token, "FRIENDLYNAME");
+ free(pszTopic);
+ pszTopic = SkypeGet("CHAT", token, "FRIENDLYNAME");
}
psztChatName = make_nonutf_tchar_string((const unsigned char*)token);
psztTopic = make_tchar_string((const unsigned char*)pszTopic);
- SetChatTopic (psztChatName, psztTopic, FALSE);
+ SetChatTopic(psztChatName, psztTopic, FALSE);
free_nonutf_tchar_string(psztChatName);
- free (psztTopic);
- free (pszTopic);
+ free(psztTopic);
+ free(pszTopic);
+ }
+ LeaveCriticalSection(&QueryThreadMutex);
}
- LeaveCriticalSection (&QueryThreadMutex);
- }
}
- free (pszStatus);
+ free(pszStatus);
}
}
free(cmd);
@@ -607,33 +611,33 @@ void __cdecl SearchRecentChats(void *dummy) { void __cdecl SkypeSystemInit(char *dummy) {
- static BOOL Initializing=FALSE;
- DBVARIANT dbv={0};
+ static BOOL Initializing = FALSE;
+ DBVARIANT dbv = { 0 };
UNREFERENCED_PARAMETER(dummy);
- LOG (("SkypeSystemInit thread started."));
+ LOG(("SkypeSystemInit thread started."));
if (SkypeInitialized || Initializing)
{
- LOG (("SkypeSystemInit terminated, nothing to do."));
+ LOG(("SkypeSystemInit terminated, nothing to do."));
return;
}
- Initializing=TRUE;
-// Do initial Skype-Tasks
+ Initializing = TRUE;
+ // Do initial Skype-Tasks
logoff_contacts(FALSE);
-// Add friends
+ // Add friends
// Clear currentuserhandle entries from queue
- while (testfor ("CURRENTUSERHANDLE", 0));
- if (SkypeSend(SKYPE_PROTO)==-1 || !testfor("PROTOCOL", INFINITE) ||
- SkypeSend("GET CURRENTUSERHANDLE")==-1 ||
- SkypeSend("GET PRIVILEGE SKYPEOUT")==-1) {
- Initializing=FALSE;
- LOG (("SkypeSystemInit thread stopped with failure."));
- return;
+ while (testfor("CURRENTUSERHANDLE", 0));
+ if (SkypeSend(SKYPE_PROTO) == -1 || !testfor("PROTOCOL", INFINITE) ||
+ SkypeSend("GET CURRENTUSERHANDLE") == -1 ||
+ SkypeSend("GET PRIVILEGE SKYPEOUT") == -1) {
+ Initializing = FALSE;
+ LOG(("SkypeSystemInit thread stopped with failure."));
+ return;
}
- if(db_get_s(NULL,SKYPE_PROTONAME,"LoginUserName",&dbv) == 0)
+ if (db_get_s(NULL, SKYPE_PROTONAME, "LoginUserName", &dbv) == 0)
{
if (*dbv.pszVal)
{
@@ -641,24 +645,24 @@ void __cdecl SkypeSystemInit(char *dummy) { // Username is set in Plugin, therefore we need to match it
// against CURRENTUSERHANDLE
- if (pszUser = SkypeRcv ("CURRENTUSERHANDLE", INFINITE))
+ if (pszUser = SkypeRcv("CURRENTUSERHANDLE", INFINITE))
{
- memmove (pszUser, pszUser+18, strlen(pszUser+17));
+ memmove(pszUser, pszUser + 18, strlen(pszUser + 17));
if (_stricmp(dbv.pszVal, pszUser))
{
char szError[256];
// Doesn't match, maybe we have a second Skype instance we have to take
// care of? If in doubt, let's wait a while for it to report its hWnd to us.
- LOG (("Userhandle %s doesn't match username %s from settings", pszUser, dbv.pszVal));
+ LOG(("Userhandle %s doesn't match username %s from settings", pszUser, dbv.pszVal));
if (!hSkypeWndSecondary) Sleep(3000);
- if (hSkypeWndSecondary)
+ if (hSkypeWndSecondary)
{
hSkypeWnd = hSkypeWndSecondary;
hSkypeWndSecondary = NULL;
- Initializing=FALSE;
- while (testfor ("CURRENTUSERHANDLE", 0));
- LOG (("Trying to init secondary Skype instance"));
+ Initializing = FALSE;
+ while (testfor("CURRENTUSERHANDLE", 0));
+ LOG(("Trying to init secondary Skype instance"));
SkypeSystemInit(dummy);
}
else
@@ -667,38 +671,38 @@ void __cdecl SkypeSystemInit(char *dummy) { // If we need to start Skype as secondary instance, we should do it now
if (db_get_b(NULL, SKYPE_PROTONAME, "StartSkype", 1) &&
- db_get_b(NULL, SKYPE_PROTONAME, "secondary", 0))
+ db_get_b(NULL, SKYPE_PROTONAME, "secondary", 0))
{
int oldstatus;
hSkypeWnd = NULL;
- AttachStatus=-1;
- if (g_hWnd) KillTimer (g_hWnd, 1);
+ AttachStatus = -1;
+ if (g_hWnd) KillTimer(g_hWnd, 1);
oldstatus = SkypeStatus;
InterlockedExchange((long *)&SkypeStatus, ID_STATUS_CONNECTING);
- ProtoBroadcastAck(SKYPE_PROTONAME, NULL, ACKTYPE_STATUS, ACKRESULT_SUCCESS, (HANDLE) oldstatus, SkypeStatus);
+ ProtoBroadcastAck(SKYPE_PROTONAME, NULL, ACKTYPE_STATUS, ACKRESULT_SUCCESS, (HANDLE)oldstatus, SkypeStatus);
ConnectToSkypeAPI(skype_path, 1);
}
- if (hForbiddenSkypeWnd == hSkypeWnd && !hSkypeWndSecondary)
+ if (hForbiddenSkypeWnd == hSkypeWnd && !hSkypeWndSecondary)
{
int oldstatus;
- sprintf (szError, "Username '%s' provided by Skype API doesn't match username '%s' in "
+ sprintf(szError, "Username '%s' provided by Skype API doesn't match username '%s' in "
"your settings. Please either remove username setting in you configuration or correct "
"it. Will not connect!", pszUser, dbv.pszVal);
- OUTPUTA (szError);
- Initializing=FALSE;
- AttachStatus=-1;
+ OUTPUTA(szError);
+ Initializing = FALSE;
+ AttachStatus = -1;
logoff_contacts(FALSE);
- if (g_hWnd) KillTimer (g_hWnd, 1);
+ if (g_hWnd) KillTimer(g_hWnd, 1);
hSkypeWnd = NULL;
oldstatus = SkypeStatus;
InterlockedExchange((long *)&SkypeStatus, ID_STATUS_OFFLINE);
- ProtoBroadcastAck(SKYPE_PROTONAME, NULL, ACKTYPE_STATUS, ACKRESULT_SUCCESS, (HANDLE) oldstatus, SkypeStatus);
+ ProtoBroadcastAck(SKYPE_PROTONAME, NULL, ACKTYPE_STATUS, ACKRESULT_SUCCESS, (HANDLE)oldstatus, SkypeStatus);
}
}
}
- free (pszUser);
+ free(pszUser);
}
}
db_free(&dbv);
@@ -706,76 +710,76 @@ void __cdecl SkypeSystemInit(char *dummy) { }
#ifdef SKYPEBUG_OFFLN
- if (!ResetEvent(GotUserstatus) || SkypeSend("GET USERSTATUS")==-1 ||
- WaitForSingleObject(GotUserstatus, INFINITE)==WAIT_FAILED)
+ if (!ResetEvent(GotUserstatus) || SkypeSend("GET USERSTATUS") == -1 ||
+ WaitForSingleObject(GotUserstatus, INFINITE) == WAIT_FAILED)
{
- LOG (("SkypeSystemInit thread stopped with failure."));
- Initializing=FALSE;
+ LOG(("SkypeSystemInit thread stopped with failure."));
+ Initializing = FALSE;
return;
}
- if (SkypeStatus!=ID_STATUS_OFFLINE)
+ if (SkypeStatus != ID_STATUS_OFFLINE)
#endif
- if (SearchFriends()==-1) {
- LOG (("SkypeSystemInit thread stopped with failure."));
- Initializing=FALSE;
- return;
- }
- if (protocol>=5 || bIsImoproxy) {
- SkypeSend ("CREATE APPLICATION libpurple_typing");
- testfor ("CREATE APPLICATION libpurple_typing", 2000);
+ if (SearchFriends() == -1) {
+ LOG(("SkypeSystemInit thread stopped with failure."));
+ Initializing = FALSE;
+ return;
+ }
+ if (protocol >= 5 || bIsImoproxy) {
+ SkypeSend("CREATE APPLICATION libpurple_typing");
+ testfor("CREATE APPLICATION libpurple_typing", 2000);
}
- if (protocol>=5 || bIsImoproxy) {
+ if (protocol >= 5 || bIsImoproxy) {
SearchUsersWaitingMyAuthorization(NULL);
if (db_get_b(NULL, SKYPE_PROTONAME, "UseGroupchat", 0))
SearchRecentChats(NULL);
}
SkypeSend("SEARCH MISSED%sS", cmdMessage);
-
+
#ifndef SKYPEBUG_OFFLN
if (SkypeSend("GET USERSTATUS")==-1)
{
- LOG (("SkypeSystemInit thread stopped with failure."));
+ LOG (("SkypeSystemInit thread stopped with failure."));
Initializing=FALSE;
return;
}
#endif
- SetTimer (g_hWnd, 1, PING_INTERVAL, NULL);
- SkypeInitialized=TRUE;
- Initializing=FALSE;
- LOG (("SkypeSystemInit thread terminated gracefully."));
+ SetTimer(g_hWnd, 1, PING_INTERVAL, NULL);
+ SkypeInitialized = TRUE;
+ Initializing = FALSE;
+ LOG(("SkypeSystemInit thread terminated gracefully."));
return;
}
void FirstLaunch(char *dummy) {
- int counter=0;
+ int counter = 0;
UNREFERENCED_PARAMETER(dummy);
- LOG (("FirstLaunch thread started."));
- if (!db_get_b(NULL, SKYPE_PROTONAME, "StartSkype", 1) || ConnectToSkypeAPI(skype_path, FALSE)==-1)
+ LOG(("FirstLaunch thread started."));
+ if (!db_get_b(NULL, SKYPE_PROTONAME, "StartSkype", 1) || ConnectToSkypeAPI(skype_path, FALSE) == -1)
{
- int oldstatus=SkypeStatus;
+ int oldstatus = SkypeStatus;
- LOG(("OnModulesLoaded starting offline.."));
+ LOG(("OnModulesLoaded starting offline.."));
InterlockedExchange((long *)&SkypeStatus, ID_STATUS_OFFLINE);
- ProtoBroadcastAck(SKYPE_PROTONAME, NULL, ACKTYPE_STATUS, ACKRESULT_SUCCESS, (HANDLE) oldstatus, SkypeStatus);
+ ProtoBroadcastAck(SKYPE_PROTONAME, NULL, ACKTYPE_STATUS, ACKRESULT_SUCCESS, (HANDLE)oldstatus, SkypeStatus);
}
- if (AttachStatus==-1 || AttachStatus==SKYPECONTROLAPI_ATTACH_REFUSED || AttachStatus==SKYPECONTROLAPI_ATTACH_NOT_AVAILABLE) {
- LOG (("FirstLaunch thread stopped because of invalid Attachstatus."));
+ if (AttachStatus == -1 || AttachStatus == SKYPECONTROLAPI_ATTACH_REFUSED || AttachStatus == SKYPECONTROLAPI_ATTACH_NOT_AVAILABLE) {
+ LOG(("FirstLaunch thread stopped because of invalid Attachstatus."));
return;
}
-
+
// When you launch Skype and Attach is Successfull, it still takes some time
// until it becomes available for receiving messages.
// Let's probe this with PINGing
LOG(("CheckIfApiIsResponding Entering test loop"));
- for ( ;; ) {
+ for (;;) {
LOG(("Test #%d", counter));
- if (SkypeSend("PING")==-1) counter ++; else break;
- if (counter>=20) {
+ if (SkypeSend("PING") == -1) counter++; else break;
+ if (counter >= 20) {
OUTPUT(_T("Cannot reach Skype API, plugin disfunct."));
- LOG (("FirstLaunch thread stopped: cannot reach Skype API."));
+ LOG(("FirstLaunch thread stopped: cannot reach Skype API."));
return;
}
Sleep(500);
@@ -783,28 +787,28 @@ void FirstLaunch(char *dummy) { LOG(("CheckIfApiIsResponding: Testing for PONG"));
testfor("PONG", 2000); // Flush PONG from MsgQueue
- pthread_create(( pThreadFunc )SkypeSystemInit, NULL);
- LOG (("FirstLaunch thread terminated gracefully."));
+ pthread_create((pThreadFunc)SkypeSystemInit, NULL);
+ LOG(("FirstLaunch thread terminated gracefully."));
}
int CreateTopToolbarButton(WPARAM wParam, LPARAM lParam) {
- TTBButton ttb={0};
-
+ TTBButton ttb = { 0 };
+
UNREFERENCED_PARAMETER(wParam);
UNREFERENCED_PARAMETER(lParam);
ttb.cbSize = sizeof(ttb);
- ttb.dwFlags = TTBBF_VISIBLE|TTBBF_SHOWTOOLTIP;
- ttb.hIconHandleDn = ttb.hIconHandleUp = LoadBitmap(hInst,MAKEINTRESOURCE(IDB_CALL));
+ ttb.dwFlags = TTBBF_VISIBLE | TTBBF_SHOWTOOLTIP;
+ ttb.hIconHandleDn = ttb.hIconHandleUp = LoadBitmap(hInst, MAKEINTRESOURCE(IDB_CALL));
ttb.pszService = SKYPEOUT_CALL;
- ttb.name=Translate("Do a SkypeOut-call");
- if ((int)(TopToolbar_AddButton(&ttb))==-1) httbButton=0;
+ ttb.name = Translate("Do a SkypeOut-call");
+ if ((int)(TopToolbar_AddButton(&ttb)) == -1) httbButton = 0;
return 0;
}
int OnModulesLoaded(WPARAM wParam, LPARAM lParam) {
- bModulesLoaded=TRUE;
+ bModulesLoaded = TRUE;
UNREFERENCED_PARAMETER(wParam);
UNREFERENCED_PARAMETER(lParam);
@@ -815,31 +819,30 @@ int OnModulesLoaded(WPARAM wParam, LPARAM lParam) { HookEventsLoaded();
RegisterToDbeditorpp();
- VoiceServiceModulesLoaded();
GCInit();
add_contextmenu(NULL);
- if ( ServiceExists( MS_GC_REGISTER ))
+ if (ServiceExists(MS_GC_REGISTER))
{
- static COLORREF crCols[1] = {0};
+ static COLORREF crCols[1] = { 0 };
char szEvent[MAXMODULELABELLENGTH];
GCREGISTER gcr = { sizeof(gcr) };
gcr.dwFlags = GC_CHANMGR; // |GC_ACKMSG; // TODO: Not implemented yet
gcr.ptszDispName = _T("Skype protocol");
gcr.pszModule = SKYPE_PROTONAME;
- if (CallService(MS_GC_REGISTER, 0, (LPARAM)&gcr))
+ if (CallService(MS_GC_REGISTER, 0, (LPARAM)&gcr))
OUTPUT(_T("Unable to register with Groupchat module!"));
- _snprintf (szEvent, sizeof(szEvent), "%s\\ChatInit", SKYPE_PROTONAME);
+ _snprintf(szEvent, sizeof(szEvent), "%s\\ChatInit", SKYPE_PROTONAME);
hInitChat = CreateHookableEvent(szEvent);
hEvInitChat = HookEvent(szEvent, ChatInit);
hChatEvent = HookEvent(ME_GC_EVENT, GCEventHook);
hChatMenu = HookEvent(ME_GC_BUILDMENU, GCMenuHook);
- CreateServiceFunction (SKYPE_CHATNEW, SkypeChatCreate);
- CreateProtoService (PS_LEAVECHAT, GCOnLeaveChat);
- CreateProtoService (PS_JOINCHAT, GCOnJoinChat);
+ CreateServiceFunction(SKYPE_CHATNEW, SkypeChatCreate);
+ CreateProtoService(PS_LEAVECHAT, GCOnLeaveChat);
+ CreateProtoService(PS_JOINCHAT, GCOnJoinChat);
}
// Try folder service first
hProtocolAvatarsFolder = NULL;
@@ -847,83 +850,84 @@ int OnModulesLoaded(WPARAM wParam, LPARAM lParam) { {
char *tmpPath;
- if (!ServiceExists (MS_UTILS_REPLACEVARS) || !(tmpPath = Utils_ReplaceVars("%miranda_avatarcache%")))
+ if (!ServiceExists(MS_UTILS_REPLACEVARS) || !(tmpPath = Utils_ReplaceVars("%miranda_avatarcache%")))
tmpPath = PROFILE_PATH;
mir_snprintf(DefaultAvatarsFolder, sizeof(DefaultAvatarsFolder), "%s\\%s", tmpPath, SKYPE_PROTONAME);
- hProtocolAvatarsFolder = (HANDLE) FoldersRegisterCustomPath(SKYPE_PROTONAME, "Avatars Cache", DefaultAvatarsFolder);
+ hProtocolAvatarsFolder = (HANDLE)FoldersRegisterCustomPath(SKYPE_PROTONAME, "Avatars Cache", DefaultAvatarsFolder);
}
-
+
if (hProtocolAvatarsFolder == NULL)
{
// Use defaults
- CallService(MS_DB_GETPROFILEPATH, (WPARAM) MAX_PATH, (LPARAM) DefaultAvatarsFolder);
+ CallService(MS_DB_GETPROFILEPATH, (WPARAM)MAX_PATH, (LPARAM)DefaultAvatarsFolder);
mir_snprintf(DefaultAvatarsFolder, sizeof(DefaultAvatarsFolder), "%s\\%s", DefaultAvatarsFolder, SKYPE_PROTONAME);
CreateDirectoryA(DefaultAvatarsFolder, NULL);
}
- pthread_create(( pThreadFunc )FirstLaunch, NULL);
+ pthread_create((pThreadFunc)FirstLaunch, NULL);
return 0;
}
void FetchMessageThread(fetchmsg_arg *pargs) {
- char *who=NULL, *type=NULL, *chat=NULL, *users=NULL, *msg=NULL, *status=NULL;
+ char *who = NULL, *type = NULL, *chat = NULL, *users = NULL, *msg = NULL, *status = NULL;
char *ptr, *msgptr, szPartnerHandle[32], szBuf[128];
- int direction=0, msglen = 0;
- DWORD timestamp = 0, lwr=0;
- CCSDATA ccs={0};
- PROTORECVEVENT pre={0};
+ int direction = 0, msglen = 0;
+ DWORD timestamp = 0, lwr = 0;
+ CCSDATA ccs = { 0 };
+ PROTORECVEVENT pre = { 0 };
MCONTACT hContact = NULL, hChat = NULL;
HANDLE hDbEvent;
- DBEVENTINFO dbei={0};
- DBVARIANT dbv={0};
+ DBEVENTINFO dbei = { 0 };
+ DBVARIANT dbv = { 0 };
fetchmsg_arg args;
- BOOL bEmoted=FALSE, isGroupChat=FALSE, bHasPartList=FALSE;
+ BOOL bEmoted = FALSE, isGroupChat = FALSE, bHasPartList = FALSE;
BOOL bUseGroupChat = db_get_b(NULL, SKYPE_PROTONAME, "UseGroupchat", 0);
if (!pargs) return;
args = *pargs;
- free (pargs);
-
- sprintf (szPartnerHandle, "%s_HANDLE", cmdPartner);
+ free(pargs);
+
+ sprintf(szPartnerHandle, "%s_HANDLE", cmdPartner);
pre.lParam = strtoul(args.msgnum, NULL, 10);
if (args.bIsRead) pre.flags |= PREF_CREATEREAD;
//pEvent = MsgList_FindMessage(pre.lParam);
// Get Timestamp
if (!args.pMsgEntry || !args.pMsgEntry->tEdited) {
- if (!(ptr=SkypeGet (cmdMessage, args.msgnum, "TIMESTAMP"))) return;
- if (strncmp(ptr, "ERROR", 5)) timestamp=atol(ptr);
- else timestamp=(DWORD)SkypeTime(NULL);
+ if (!(ptr = SkypeGet(cmdMessage, args.msgnum, "TIMESTAMP"))) return;
+ if (strncmp(ptr, "ERROR", 5)) timestamp = atol(ptr);
+ else timestamp = (DWORD)SkypeTime(NULL);
free(ptr);
- } else timestamp=(DWORD)(args.pMsgEntry->tEdited);
+ }
+ else timestamp = (DWORD)(args.pMsgEntry->tEdited);
__try {
// Get Chatname (also to determine if we need to relay this to a groupchat)
- if (!(chat=SkypeGetErr (cmdMessage, args.msgnum, "CHATNAME"))) __leave;
- if (hChat = find_chatA(chat)) isGroupChat=TRUE;
+ if (!(chat = SkypeGetErr(cmdMessage, args.msgnum, "CHATNAME"))) __leave;
+ if (hChat = find_chatA(chat)) isGroupChat = TRUE;
// Get chat status
- if ((status=SkypeGetErr ("CHAT", chat, "STATUS")) &&
- !strcmp(status, "MULTI_SUBSCRIBED")) isGroupChat=TRUE;
-
+ if ((status = SkypeGetErr("CHAT", chat, "STATUS")) &&
+ !strcmp(status, "MULTI_SUBSCRIBED")) isGroupChat = TRUE;
+
// Get chat type
- if (!(type=SkypeGetErr (cmdMessage, args.msgnum, "TYPE"))) __leave;
- bEmoted = strcmp(type, "EMOTED")==0;
- if (strcmp(type, "MULTI_SUBSCRIBED")==0) isGroupChat=TRUE;
+ if (!(type = SkypeGetErr(cmdMessage, args.msgnum, "TYPE"))) __leave;
+ bEmoted = strcmp(type, "EMOTED") == 0;
+ if (strcmp(type, "MULTI_SUBSCRIBED") == 0) isGroupChat = TRUE;
// Group chat handling
if (isGroupChat && strcmp(type, "TEXT") && strcmp(type, "SAID") && strcmp(type, "UNKNOWN") && !bEmoted) {
if (bUseGroupChat) {
BOOL bAddedMembers = FALSE;
- if (!strcmp(type,"SAWMEMBERS") || !strcmp(type, "CREATEDCHATWITH"))
+ if (!strcmp(type, "SAWMEMBERS") || !strcmp(type, "CREATEDCHATWITH"))
{
// We have a new Groupchat
LOG(("FetchMessageThread CHAT SAWMEMBERS"));
if (!hChat) ChatStart(chat, FALSE);
__leave;
}
- if (!strcmp(type,"KICKED"))
+ if (!strcmp(type, "KICKED"))
{
if (!hChat) __leave;
GCDEST gcd = { SKYPE_PROTONAME, make_nonutf_tchar_string((const unsigned char*)chat), GC_EVENT_KICK };
@@ -931,29 +935,29 @@ void FetchMessageThread(fetchmsg_arg *pargs) { gce.dwFlags = GCEF_ADDTOLOG;
gce.time = timestamp;
- if (users=SkypeGetErr (cmdMessage, args.msgnum, "USERS")) {
- CONTACTINFO ci = {0};
+ if (users = SkypeGetErr(cmdMessage, args.msgnum, "USERS")) {
+ CONTACTINFO ci = { 0 };
ci.hContact = find_contact(users);
- gce.ptszUID= make_nonutf_tchar_string((const unsigned char*)users);
- if (who=SkypeGetErr (cmdMessage, args.msgnum, szPartnerHandle)) {
- gce.ptszStatus= make_nonutf_tchar_string((const unsigned char*)who);
+ gce.ptszUID = make_nonutf_tchar_string((const unsigned char*)users);
+ if (who = SkypeGetErr(cmdMessage, args.msgnum, szPartnerHandle)) {
+ gce.ptszStatus = make_nonutf_tchar_string((const unsigned char*)who);
ci.cbSize = sizeof(ci);
ci.szProto = SKYPE_PROTONAME;
ci.dwFlag = CNF_DISPLAY | CNF_TCHAR;
- if (ci.hContact && !CallService(MS_CONTACT_GETCONTACTINFO,0,(LPARAM)&ci)) gce.ptszNick=ci.pszVal;
- else gce.ptszNick=gce.ptszUID;
-
+ if (ci.hContact && !CallService(MS_CONTACT_GETCONTACTINFO, 0, (LPARAM)&ci)) gce.ptszNick = ci.pszVal;
+ else gce.ptszNick = gce.ptszUID;
+
CallService(MS_GC_EVENT, 0, (LPARAM)&gce);
- RemChatContact (GetChat(gcd.ptszID), gce.ptszUID);
+ RemChatContact(GetChat(gcd.ptszID), gce.ptszUID);
free_nonutf_tchar_string((void*)gce.ptszStatus);
- if (ci.pszVal) mir_free (ci.pszVal);
+ if (ci.pszVal) mir_free(ci.pszVal);
}
free_nonutf_tchar_string((void*)gce.ptszUID);
}
free_nonutf_tchar_string((void*)gcd.ptszID);
__leave;
}
- if (!strcmp(type,"SETROLE"))
+ if (!strcmp(type, "SETROLE"))
{
gchat_contact *gcContact;
char *pszRole;
@@ -967,70 +971,70 @@ void FetchMessageThread(fetchmsg_arg *pargs) { gce.dwFlags = GCEF_ADDTOLOG;
gce.time = timestamp;
- if (users=SkypeGetErr (cmdMessage, args.msgnum, "USERS")) {
- gce.ptszUID= make_nonutf_tchar_string((const unsigned char*)users);
- if (who=SkypeGetErr (cmdMessage, args.msgnum, szPartnerHandle)) {
- CONTACTINFO ci = {0};
+ if (users = SkypeGetErr(cmdMessage, args.msgnum, "USERS")) {
+ gce.ptszUID = make_nonutf_tchar_string((const unsigned char*)users);
+ if (who = SkypeGetErr(cmdMessage, args.msgnum, szPartnerHandle)) {
+ CONTACTINFO ci = { 0 };
ci.cbSize = sizeof(ci);
ci.szProto = SKYPE_PROTONAME;
ci.dwFlag = CNF_DISPLAY | CNF_TCHAR;
ci.hContact = find_contact(who);
- if (ci.hContact && !CallService(MS_CONTACT_GETCONTACTINFO,0,(LPARAM)&ci)) {
- gce.ptszText=_tcsdup(ci.pszVal);
- mir_free (ci.pszVal);
+ if (ci.hContact && !CallService(MS_CONTACT_GETCONTACTINFO, 0, (LPARAM)&ci)) {
+ gce.ptszText = _tcsdup(ci.pszVal);
+ mir_free(ci.pszVal);
ci.pszVal = NULL;
}
- else gce.ptszText=make_tchar_string((const unsigned char*)who);
+ else gce.ptszText = make_tchar_string((const unsigned char*)who);
ci.hContact = find_contact(users);
- if (ci.hContact && !CallService(MS_CONTACT_GETCONTACTINFO,0,(LPARAM)&ci)) gce.ptszNick=ci.pszVal;
- else gce.ptszNick=gce.ptszUID;
+ if (ci.hContact && !CallService(MS_CONTACT_GETCONTACTINFO, 0, (LPARAM)&ci)) gce.ptszNick = ci.pszVal;
+ else gce.ptszNick = gce.ptszUID;
if (gcContact = GetChatContact(GetChat(gcd.ptszID), gce.ptszUID))
{
gce.ptszStatus = gcContact->szRole;
CallService(MS_GC_EVENT, 0, (LPARAM)&gce);
}
- if (pszRole=SkypeGetErr (cmdMessage, args.msgnum, "ROLE")) {
+ if (pszRole = SkypeGetErr(cmdMessage, args.msgnum, "ROLE")) {
gce.ptszStatus = make_nonutf_tchar_string((const unsigned char*)pszRole);
gcd.iType = GC_EVENT_ADDSTATUS;
CallService(MS_GC_EVENT, 0, (LPARAM)&gce);
free_nonutf_tchar_string((void*)gce.ptszStatus);
- free (pszRole);
+ free(pszRole);
}
free((void*)gce.ptszText);
- if (ci.pszVal) mir_free (ci.pszVal);
+ if (ci.pszVal) mir_free(ci.pszVal);
}
free_nonutf_tchar_string((void*)gce.ptszUID);
}
free_nonutf_tchar_string((void*)gcd.ptszID);
__leave;
}
- if (!strcmp(type,"SETTOPIC"))
+ if (!strcmp(type, "SETTOPIC"))
{
LOG(("FetchMessageThread CHAT SETTOPIC"));
GCDEST gcd = { SKYPE_PROTONAME, make_nonutf_tchar_string((const unsigned char*)chat), GC_EVENT_TOPIC };
GCEVENT gce = { sizeof(gce), &gcd };
gce.dwFlags = GCEF_ADDTOLOG;
gce.time = timestamp;
- if (who=SkypeGetErr (cmdMessage, args.msgnum, szPartnerHandle)) {
- CONTACTINFO ci = {0};
+ if (who = SkypeGetErr(cmdMessage, args.msgnum, szPartnerHandle)) {
+ CONTACTINFO ci = { 0 };
ci.hContact = find_contact(who);
gce.ptszUID = make_nonutf_tchar_string((const unsigned char*)who);
ci.cbSize = sizeof(ci);
ci.szProto = SKYPE_PROTONAME;
ci.dwFlag = CNF_DISPLAY | CNF_TCHAR;
- if (ci.hContact && !CallService(MS_CONTACT_GETCONTACTINFO,0,(LPARAM)&ci)) gce.ptszNick=ci.pszVal;
- else gce.ptszNick=gce.ptszUID;
+ if (ci.hContact && !CallService(MS_CONTACT_GETCONTACTINFO, 0, (LPARAM)&ci)) gce.ptszNick = ci.pszVal;
+ else gce.ptszNick = gce.ptszUID;
- if (ptr=SkypeGetErr (cmdMessage, args.msgnum, "BODY")) {
+ if (ptr = SkypeGetErr(cmdMessage, args.msgnum, "BODY")) {
gce.ptszText = make_tchar_string((const unsigned char*)ptr);
CallService(MS_GC_EVENT, 0, (LPARAM)&gce);
- free ((void*)gce.ptszText);
- free (ptr);
+ free((void*)gce.ptszText);
+ free(ptr);
}
- free_nonutf_tchar_string ((void*)gce.ptszUID);
- if (ci.pszVal) mir_free (ci.pszVal);
+ free_nonutf_tchar_string((void*)gce.ptszUID);
+ if (ci.pszVal) mir_free(ci.pszVal);
}
free_nonutf_tchar_string((void*)gcd.ptszID);
if (!args.bDontMarkSeen)
@@ -1040,7 +1044,7 @@ void FetchMessageThread(fetchmsg_arg *pargs) { }
__leave;
}
- if (!strcmp(type,"LEFT") || (bAddedMembers = strcmp(type,"ADDEDMEMBERS")==0))
+ if (!strcmp(type, "LEFT") || (bAddedMembers = strcmp(type, "ADDEDMEMBERS") == 0))
{
LOG(("FetchMessageThread CHAT LEFT or ADDEDMEMBERS"));
if (bAddedMembers) {
@@ -1048,37 +1052,37 @@ void FetchMessageThread(fetchmsg_arg *pargs) { GCEVENT gce = { sizeof(gce), &gcd };
gce.dwFlags = GCEF_ADDTOLOG;
gce.time = timestamp;
- if (users=SkypeGetErr (cmdMessage, args.msgnum, "USERS")) {
+ if (users = SkypeGetErr(cmdMessage, args.msgnum, "USERS")) {
CMString(FORMAT, _T("%S %s"), users, TranslateT("invited"));
- gce.ptszText= make_tchar_string((const unsigned char*)users);
- if (who=SkypeGetErr (cmdMessage, args.msgnum, szPartnerHandle)) {
+ gce.ptszText = make_tchar_string((const unsigned char*)users);
+ if (who = SkypeGetErr(cmdMessage, args.msgnum, szPartnerHandle)) {
DBVARIANT dbv;
- if (db_get_s(NULL, SKYPE_PROTONAME, SKYPE_NAME, &dbv)==0) {
- gce.bIsMe = strcmp(who, dbv.pszVal)==0;
+ if (db_get_s(NULL, SKYPE_PROTONAME, SKYPE_NAME, &dbv) == 0) {
+ gce.bIsMe = strcmp(who, dbv.pszVal) == 0;
db_free(&dbv);
}
- gce.ptszUID = make_nonutf_tchar_string((const unsigned char*)who);
+ gce.ptszUID = make_nonutf_tchar_string((const unsigned char*)who);
- CONTACTINFO ci = {0};
+ CONTACTINFO ci = { 0 };
ci.cbSize = sizeof(ci);
if (!gce.bIsMe)
ci.hContact = find_contact(who);
ci.szProto = SKYPE_PROTONAME;
ci.dwFlag = CNF_DISPLAY | CNF_TCHAR;
- if (!CallService(MS_CONTACT_GETCONTACTINFO,0,(LPARAM)&ci))
- gce.ptszNick = ci.pszVal;
+ if (!CallService(MS_CONTACT_GETCONTACTINFO, 0, (LPARAM)&ci))
+ gce.ptszNick = ci.pszVal;
else
gce.ptszNick = gce.ptszUID;
-
+
CallServiceSync(MS_GC_EVENT, 0, (LPARAM)&gce);
free_nonutf_tchar_string((void*)gce.ptszUID);
- if (ci.pszVal) mir_free (ci.pszVal);
+ if (ci.pszVal) mir_free(ci.pszVal);
}
- if (gce.ptszText) free ((void*)gce.ptszText);
+ if (gce.ptszText) free((void*)gce.ptszText);
}
- free_nonutf_tchar_string ((void*)gcd.ptszID);
+ free_nonutf_tchar_string((void*)gcd.ptszID);
}
- if (!args.QueryMsgDirection) SkypeSend ("GET CHAT %s MEMBERS", chat);
+ if (!args.QueryMsgDirection) SkypeSend("GET CHAT %s MEMBERS", chat);
__leave;
}
}
@@ -1089,103 +1093,104 @@ void FetchMessageThread(fetchmsg_arg *pargs) { if (args.getstatus) {
char *status;
- if (protocol<4) InterlockedIncrement (&rcvwatchers);
- status=SkypeGetID(cmdMessage, args.msgnum, "STATUS");
- if (protocol<4) InterlockedDecrement (&rcvwatchers);
+ if (protocol < 4) InterlockedIncrement(&rcvwatchers);
+ status = SkypeGetID(cmdMessage, args.msgnum, "STATUS");
+ if (protocol < 4) InterlockedDecrement(&rcvwatchers);
if (!status) __leave;
- if (!strcmp(status, "SENT")) direction=DBEF_SENT;
+ if (!strcmp(status, "SENT")) direction = DBEF_SENT;
free(status);
}
// Who sent it?
- if (!(who=SkypeGetErr (cmdMessage, args.msgnum, szPartnerHandle))) __leave;
+ if (!(who = SkypeGetErr(cmdMessage, args.msgnum, szPartnerHandle))) __leave;
// Get contact handle
LOG(("FetchMessageThread Finding contact handle"));
db_get_s(NULL, SKYPE_PROTONAME, SKYPE_NAME, &dbv);
- if (dbv.pszVal && !strcmp (who, dbv.pszVal))
+ if (dbv.pszVal && !strcmp(who, dbv.pszVal))
{
char *pTok, *nextoken;
// It's from me.. But to whom?
// CHATMESSAGE .. USERS doesn't return anything, so we have to query the CHAT-Object
- if (!(ptr=SkypeGetErr ("CHAT", chat, "ACTIVEMEMBERS"))) {
- db_free (&dbv);
+ if (!(ptr = SkypeGetErr("CHAT", chat, "ACTIVEMEMBERS"))) {
+ db_free(&dbv);
__leave;
}
- for (pTok = strtok_r (ptr, " ", &nextoken); pTok; pTok=strtok_r(NULL, " ", &nextoken)) {
- if (strcmp (pTok, dbv.pszVal)) break; // Take the first dude in the list who is not me
+ for (pTok = strtok_r(ptr, " ", &nextoken); pTok; pTok = strtok_r(NULL, " ", &nextoken)) {
+ if (strcmp(pTok, dbv.pszVal)) break; // Take the first dude in the list who is not me
}
if (!pTok) {
- free (ptr);
- db_free (&dbv);
+ free(ptr);
+ db_free(&dbv);
__leave; // We failed
}
- free (who);
- who=(char *)memmove (ptr, pTok, strlen(pTok)+1);
+ free(who);
+ who = (char *)memmove(ptr, pTok, strlen(pTok) + 1);
direction = DBEF_SENT;
}
- db_free (&dbv);
+ db_free(&dbv);
- if (!(hContact=find_contact(who))) {
+ if (!(hContact = find_contact(who))) {
// Permanent adding of user obsolete, we use the BUDDYSTATUS now (bug #0000005)
ResetEvent(hBuddyAdded);
SkypeSend("GET USER %s BUDDYSTATUS", who);
WaitForSingleObject(hBuddyAdded, INFINITE);
- if (!(hContact=find_contact(who))) {
+ if (!(hContact = find_contact(who))) {
// Arrgh, the user has been deleted from contact list.
// In this case, we add him temp. to receive the msg at least.
- hContact=add_contact(who, PALF_TEMPORARY);
+ hContact = add_contact(who, PALF_TEMPORARY);
}
}
// Text which was sent (on edited msg, BODY may already be in queue, check)
- sprintf (szBuf, "GET %s %s BODY", cmdMessage, args.msgnum);
- if (!args.pMsgEntry || !args.pMsgEntry->tEdited || !(ptr=SkypeRcv(szBuf+4, 1000)))
+ sprintf(szBuf, "GET %s %s BODY", cmdMessage, args.msgnum);
+ if (!args.pMsgEntry || !args.pMsgEntry->tEdited || !(ptr = SkypeRcv(szBuf + 4, 1000)))
{
- if (SkypeSend(szBuf)==-1 || !(ptr=SkypeRcv(szBuf+4, INFINITE)))
+ if (SkypeSend(szBuf) == -1 || !(ptr = SkypeRcv(szBuf + 4, INFINITE)))
__leave;
}
if (strncmp(ptr, "ERROR", 5)) {
- msgptr = ptr+strlen(szBuf+4)+1;
- bHasPartList = strncmp(msgptr,"<partlist ",10)==0;
+ msgptr = ptr + strlen(szBuf + 4) + 1;
+ bHasPartList = strncmp(msgptr, "<partlist ", 10) == 0;
if (args.pMsgEntry && args.pMsgEntry->tEdited) {
// Mark the message as edited
if (!*msgptr && args.pMsgEntry->hEvent != INVALID_HANDLE_VALUE) {
// Empty message and edited -> Delete event
if ((int)(hContact = db_event_getContact(args.pMsgEntry->hEvent)) != -1) {
db_event_delete(hContact, args.pMsgEntry->hEvent);
- free (ptr);
+ free(ptr);
__leave;
}
- } else {
- msgptr-=9;
- memcpy (msgptr, "[EDITED] ", 9);
+ }
+ else {
+ msgptr -= 9;
+ memcpy(msgptr, "[EDITED] ", 9);
}
}
- if( bEmoted && !isGroupChat) {
- CONTACTINFO ci = {0};
+ if (bEmoted && !isGroupChat) {
+ CONTACTINFO ci = { 0 };
int newlen;
- char *pMsg, *pszUTFnick=NULL;
+ char *pMsg, *pszUTFnick = NULL;
ci.cbSize = sizeof(ci);
ci.szProto = SKYPE_PROTONAME;
ci.dwFlag = CNF_DISPLAY | CNF_TCHAR;
if (ci.hContact = hContact) {
- CallService(MS_CONTACT_GETCONTACTINFO,0,(LPARAM)&ci);
+ CallService(MS_CONTACT_GETCONTACTINFO, 0, (LPARAM)&ci);
if (ci.pszVal) {
#ifdef _UNICODE
pszUTFnick = (char*)make_utf8_string(ci.pszVal);
#else
utf8_encode (ci.pszVal, &pszUTFnick);
#endif
- mir_free (ci.pszVal);
+ mir_free(ci.pszVal);
}
}
- newlen = int(strlen(msgptr) + (pszUTFnick?strlen(pszUTFnick):0) + 9);
+ newlen = int(strlen(msgptr) + (pszUTFnick ? strlen(pszUTFnick) : 0) + 9);
if (pMsg = (char *)malloc(newlen)) {
- sprintf (pMsg, "** %s%s%s **", (pszUTFnick?pszUTFnick:""),(pszUTFnick?" ":""),(char*)msgptr);
- free (ptr);
+ sprintf(pMsg, "** %s%s%s **", (pszUTFnick ? pszUTFnick : ""), (pszUTFnick ? " " : ""), (char*)msgptr);
+ free(ptr);
ptr = msgptr = pMsg;
}
if (pszUTFnick) free(pszUTFnick);
@@ -1195,47 +1200,48 @@ void FetchMessageThread(fetchmsg_arg *pargs) { !isGroupChat) { // I guess Groupchat doesn't support UTF8?
msg = ptr;
pre.flags |= PREF_UTF;
- } else { // Older version has to decode either UTF8->ANSI or UTF8->UNICODE
+ }
+ else { // Older version has to decode either UTF8->ANSI or UTF8->UNICODE
// This could be replaced by mir_getUTFI - functions for Miranda 0.5+ builds, but we stay
// 0.4 compatible for backwards compatibility. Unfortunately this requires us to link with utf8.c
#ifdef _UNICODE
int wcLen;
#endif
- if (utf8_decode(msgptr, &msg)==-1) {
+ if (utf8_decode(msgptr, &msg) == -1) {
free(ptr);
__leave;
}
#ifdef _UNICODE
- msglen = (int)strlen(msg)+1;
- msgptr = (char*)make_unicode_string ((const unsigned char*)msgptr);
- wcLen = int(_tcslen((TCHAR*)msgptr)+1)*sizeof(TCHAR);
- msg=(char*)realloc(msg, msglen+wcLen);
- memcpy (msg+msglen, msgptr, wcLen);
+ msglen = (int)strlen(msg) + 1;
+ msgptr = (char*)make_unicode_string((const unsigned char*)msgptr);
+ wcLen = int(_tcslen((TCHAR*)msgptr) + 1)*sizeof(TCHAR);
+ msg = (char*)realloc(msg, msglen + wcLen);
+ memcpy(msg + msglen, msgptr, wcLen);
free(msgptr);
pre.flags |= PREF_UNICODE;
#endif
msgptr = msg;
- free (ptr);
+ free(ptr);
}
- msglen = (int)strlen(msgptr)+1;
+ msglen = (int)strlen(msgptr) + 1;
}
else {
- free (ptr);
+ free(ptr);
__leave;
}
// skype sends some xml statics after a call has finished. Check if thats the case and suppress it if necessary...
- if ((db_get_b(NULL, SKYPE_PROTONAME, "SuppressCallSummaryMessage", 1) &&
- bHasPartList) || msgptr[0]==0) __leave;
+ if ((db_get_b(NULL, SKYPE_PROTONAME, "SuppressCallSummaryMessage", 1) &&
+ bHasPartList) || msgptr[0] == 0) __leave;
if (isGroupChat && bUseGroupChat) {
- DBVARIANT dbv = {0};
+ DBVARIANT dbv = { 0 };
LOG(("FetchMessageThread This is a group chat message"));
if (!hChat) ChatStart(chat, FALSE);
GCDEST gcd = { SKYPE_PROTONAME, make_nonutf_tchar_string((const unsigned char*)chat), bEmoted ? GC_EVENT_ACTION : GC_EVENT_MESSAGE };
GCEVENT gce = { sizeof(gce), &gcd };
- if ((gce.bIsMe = (direction&DBEF_SENT)?TRUE:FALSE) && db_get_s(NULL, SKYPE_PROTONAME, SKYPE_NAME, &dbv)==0)
+ if ((gce.bIsMe = (direction&DBEF_SENT) ? TRUE : FALSE) && db_get_s(NULL, SKYPE_PROTONAME, SKYPE_NAME, &dbv) == 0)
{
free(who);
who = _strdup(dbv.pszVal);
@@ -1244,19 +1250,19 @@ void FetchMessageThread(fetchmsg_arg *pargs) { gce.ptszUID = make_nonutf_tchar_string((const unsigned char*)who);
gce.ptszNick = gce.ptszUID;
- CONTACTINFO ci = {0};
+ CONTACTINFO ci = { 0 };
ci.cbSize = sizeof(ci);
ci.szProto = SKYPE_PROTONAME;
ci.dwFlag = CNF_DISPLAY | CNF_TCHAR;
ci.hContact = !gce.bIsMe ? hContact : NULL;
if (!CallService(MS_CONTACT_GETCONTACTINFO, 0, (LPARAM)&ci))
- gce.ptszNick = ci.pszVal;
- gce.time = timestamp > 0 ? timestamp : (DWORD)SkypeTime(NULL);
- gce.ptszText = (TCHAR*)(msgptr+msglen);
+ gce.ptszNick = ci.pszVal;
+ gce.time = timestamp > 0 ? timestamp : (DWORD)SkypeTime(NULL);
+ gce.ptszText = (TCHAR*)(msgptr + msglen);
gce.dwFlags = GCEF_ADDTOLOG;
CallService(MS_GC_EVENT, 0, (LPARAM)&gce);
MsgList_Add(pre.lParam, INVALID_HANDLE_VALUE); // Mark as groupchat
- if (ci.pszVal) mir_free (ci.pszVal);
+ if (ci.pszVal) mir_free(ci.pszVal);
free_nonutf_tchar_string((void*)gce.ptszUID);
free_nonutf_tchar_string((void*)gcd.ptszID);
@@ -1268,33 +1274,33 @@ void FetchMessageThread(fetchmsg_arg *pargs) { if (args.QueryMsgDirection || (direction&DBEF_SENT)) {
// Check if the timestamp is valid
- dbei.cbSize=sizeof(dbei);
- dbei.cbBlob=0;
+ dbei.cbSize = sizeof(dbei);
+ dbei.cbBlob = 0;
if (hDbEvent = db_event_first(hContact)) {
- db_event_get(hDbEvent,&dbei);
- lwr=dbei.timestamp;
+ db_event_get(hDbEvent, &dbei);
+ lwr = dbei.timestamp;
}
- dbei.cbSize=sizeof(dbei);
- dbei.cbBlob=0;
- dbei.timestamp=0;
- if (hDbEvent=db_event_last(hContact))
+ dbei.cbSize = sizeof(dbei);
+ dbei.cbBlob = 0;
+ dbei.timestamp = 0;
+ if (hDbEvent = db_event_last(hContact))
db_event_get(hDbEvent, &dbei);
LOG(("FetchMessageThread timestamp %ld between %ld and %ld", timestamp, lwr, dbei.timestamp));
- if (timestamp<lwr || (direction&DBEF_SENT)) {
+ if (timestamp < lwr || (direction&DBEF_SENT)) {
TYP_MSGLENTRY *pme;
LOG(("FetchMessageThread Adding event"));
- if (!(dbei.szModule=(char*)CallService(MS_PROTO_GETCONTACTBASEPROTO, hContact, 0)))
- dbei.szModule=SKYPE_PROTONAME;
- dbei.cbBlob=msglen;
+ if (!(dbei.szModule = (char*)CallService(MS_PROTO_GETCONTACTBASEPROTO, hContact, 0)))
+ dbei.szModule = SKYPE_PROTONAME;
+ dbei.cbBlob = msglen;
if (pre.flags & PREF_UNICODE)
- dbei.cbBlob += sizeof(WCHAR)*( (DWORD)wcslen((WCHAR*)&msgptr[dbei.cbBlob])+1);
- dbei.pBlob=(PBYTE)msgptr;
- dbei.timestamp=timestamp>0?timestamp:(DWORD)SkypeTime(NULL);
- dbei.flags=direction;
- if (pre.flags & PREF_CREATEREAD) dbei.flags|=DBEF_READ;
- if (pre.flags & PREF_UTF) dbei.flags|=DBEF_UTF;
- dbei.eventType=EVENTTYPE_MESSAGE;
+ dbei.cbBlob += sizeof(WCHAR)*((DWORD)wcslen((WCHAR*)&msgptr[dbei.cbBlob]) + 1);
+ dbei.pBlob = (PBYTE)msgptr;
+ dbei.timestamp = timestamp > 0 ? timestamp : (DWORD)SkypeTime(NULL);
+ dbei.flags = direction;
+ if (pre.flags & PREF_CREATEREAD) dbei.flags |= DBEF_READ;
+ if (pre.flags & PREF_UTF) dbei.flags |= DBEF_UTF;
+ dbei.eventType = EVENTTYPE_MESSAGE;
pme = MsgList_Add(pre.lParam, db_event_add(hContact, &dbei));
// We could call MS_PROTO_CHAINSEND if we want to have MetaContact adding the history for us,
@@ -1307,30 +1313,30 @@ void FetchMessageThread(fetchmsg_arg *pargs) { MCONTACT hMetaContact;
if (dwMetaLink != MAXDWORD && (hMetaContact = GetMetaHandle(dwMetaLink))) {
- dbei.szModule=(char*)CallService(MS_PROTO_GETCONTACTBASEPROTO, (WPARAM)hMetaContact, 0);
+ dbei.szModule = (char*)CallService(MS_PROTO_GETCONTACTBASEPROTO, (WPARAM)hMetaContact, 0);
pme->hMetaEvent = db_event_add(hMetaContact, &dbei);
}
}
- if (!args.QueryMsgDirection && !args.bDontMarkSeen)
+ if (!args.QueryMsgDirection && !args.bDontMarkSeen)
SkypeSend("SET %s %s SEEN", cmdMessage, args.msgnum);
}
}
- if (!(direction&DBEF_SENT) && (!args.QueryMsgDirection || (args.QueryMsgDirection && timestamp>dbei.timestamp))) {
+ if (!(direction&DBEF_SENT) && (!args.QueryMsgDirection || (args.QueryMsgDirection && timestamp > dbei.timestamp))) {
LOG(("FetchMessageThread Normal message add..."));
// Normal message received, process it
ccs.szProtoService = PSR_MESSAGE;
ccs.hContact = hContact;
ccs.wParam = 0;
ccs.lParam = (LPARAM)⪯
- pre.flags |= direction;
- if(isGroupChat && db_get_b(NULL, SKYPE_PROTONAME, "MarkGroupchatRead", 0))
+ pre.flags |= direction;
+ if (isGroupChat && db_get_b(NULL, SKYPE_PROTONAME, "MarkGroupchatRead", 0))
pre.flags |= PREF_CREATEREAD;
- pre.timestamp = timestamp>0?timestamp:(DWORD)SkypeTime(NULL);
+ pre.timestamp = timestamp > 0 ? timestamp : (DWORD)SkypeTime(NULL);
pre.szMessage = msgptr;
- CallServiceSync(MS_PROTO_CHAINRECV, 0, (LPARAM) &ccs);
+ CallServiceSync(MS_PROTO_CHAINRECV, 0, (LPARAM)&ccs);
// Yes, we have successfully read the msg
if (!args.bDontMarkSeen) SkypeSend("SET %s %s SEEN", cmdMessage, args.msgnum);
@@ -1342,7 +1348,7 @@ void FetchMessageThread(fetchmsg_arg *pargs) { if (users) free(users);
if (chat) free(chat);
if (type) free(type);
- if (who) free (who);
+ if (who) free(who);
}
}
@@ -1351,61 +1357,61 @@ void FetchMessageThreadSync(fetchmsg_arg *pargs) { // Secure this thread with a mutex.
// This is needed to ensure that we get called after an old msg in the queue has
// been added so that MsgList_FindEntry will find it.
- WaitForSingleObject (FetchMessageEvent, 30000); // Wait max. 30 sec. for previous message fetch to complete
+ WaitForSingleObject(FetchMessageEvent, 30000); // Wait max. 30 sec. for previous message fetch to complete
if ((pargs->pMsgEntry = MsgList_FindMessage(strtoul(pargs->msgnum, NULL, 10))) && !pargs->pMsgEntry->tEdited) {
// Better don't do this, as we set the msg as read and with this code, we would
// mark messages not opened by user as read which isn't that good
/*
if (pargs->bIsRead && pMsgEvent->hEvent != INVALID_HANDLE_VALUE)
{
- MCONTACT hContact;
- if ((int)(hContact = (MCONTACT)CallService (MS_DB_EVENT_GETCONTACT, (WPARAM)pMsgEntry->hEvent, 0)) != -1)
- CallService (MS_DB_EVENT_MARKREAD, hContact, (LPARAM)hDBEvent);
+ MCONTACT hContact;
+ if ((int)(hContact = (MCONTACT)CallService (MS_DB_EVENT_GETCONTACT, (WPARAM)pMsgEntry->hEvent, 0)) != -1)
+ CallService (MS_DB_EVENT_MARKREAD, hContact, (LPARAM)hDBEvent);
}
*/
- free (pargs);
+ free(pargs);
}
- else FetchMessageThread (pargs);
- SetEvent (FetchMessageEvent);
+ else FetchMessageThread(pargs);
+ SetEvent(FetchMessageEvent);
}
-static int MsglCmpProc(const void *pstPElement,const void *pstPToFind)
+static int MsglCmpProc(const void *pstPElement, const void *pstPToFind)
{
- return strcmp ((char*)((fetchmsg_arg*)pstPElement)->pMsgEntry, (char*)((fetchmsg_arg*)pstPToFind)->pMsgEntry);
+ return strcmp((char*)((fetchmsg_arg*)pstPElement)->pMsgEntry, (char*)((fetchmsg_arg*)pstPToFind)->pMsgEntry);
}
void MessageListProcessingThread(char *str) {
- char *token, *nextoken, *chat=NULL;
+ char *token, *nextoken, *chat = NULL;
fetchmsg_arg *args;
TYP_LIST *hListMsgs = List_Init(32);
int i, nCount;
// Frst we need to sort the message timestamps
- for ((token=strtok_r(str, ", ", &nextoken)); token; token=strtok_r(NULL, ", ", &nextoken)) {
- if (args=(fetchmsg_arg*)calloc(1, sizeof(fetchmsg_arg)+sizeof(DWORD))) {
- strncpy (args->msgnum, token, sizeof(args->msgnum));
- args->getstatus=TRUE;
- args->bIsRead=TRUE;
- args->bDontMarkSeen=TRUE;
- args->QueryMsgDirection=TRUE;
- args->pMsgEntry = (TYP_MSGLENTRY*) SkypeGet ("CHATMESSAGE", token, "TIMESTAMP");
- if (!chat) chat=SkypeGet ("CHATMESSAGE", token, "CHATNAME");
- if (args->pMsgEntry) List_InsertSort (hListMsgs, MsglCmpProc, args);
+ for ((token = strtok_r(str, ", ", &nextoken)); token; token = strtok_r(NULL, ", ", &nextoken)) {
+ if (args = (fetchmsg_arg*)calloc(1, sizeof(fetchmsg_arg) + sizeof(DWORD))) {
+ strncpy(args->msgnum, token, sizeof(args->msgnum));
+ args->getstatus = TRUE;
+ args->bIsRead = TRUE;
+ args->bDontMarkSeen = TRUE;
+ args->QueryMsgDirection = TRUE;
+ args->pMsgEntry = (TYP_MSGLENTRY*)SkypeGet("CHATMESSAGE", token, "TIMESTAMP");
+ if (!chat) chat = SkypeGet("CHATMESSAGE", token, "CHATNAME");
+ if (args->pMsgEntry) List_InsertSort(hListMsgs, MsglCmpProc, args);
else free(args);
}
}
- for (i=0, nCount=List_Count(hListMsgs); i<nCount; i++) {
- args = (fetchmsg_arg*)List_ElementAt (hListMsgs, i);
- free (args->pMsgEntry);
+ for (i = 0, nCount = List_Count(hListMsgs); i < nCount; i++) {
+ args = (fetchmsg_arg*)List_ElementAt(hListMsgs, i);
+ free(args->pMsgEntry);
args->pMsgEntry = NULL;
- FetchMessageThreadSync (args);
+ FetchMessageThreadSync(args);
}
if (chat) {
- SkypeSend ("GET CHAT %s MEMBERS", chat);
- free (chat);
+ SkypeSend("GET CHAT %s MEMBERS", chat);
+ free(chat);
}
- List_Exit (hListMsgs);
- free (str);
+ List_Exit(hListMsgs);
+ free(str);
}
char *GetCallerHandle(char *szSkypeMsg) {
@@ -1416,15 +1422,15 @@ char *GetCallerHandle(char *szSkypeMsg) { MCONTACT GetCallerContact(char *szSkypeMsg)
{
char *szHandle;
- MCONTACT hContact=NULL;
+ MCONTACT hContact = NULL;
- if (!(szHandle=GetCallerHandle(szSkypeMsg))) return NULL;
- if (!(hContact=find_contact(szHandle))) {
+ if (!(szHandle = GetCallerHandle(szSkypeMsg))) return NULL;
+ if (!(hContact = find_contact(szHandle))) {
// If it's a SkypeOut-contact, PARTNER_HANDLE = SkypeOUT number
DBVARIANT dbv;
int tCompareResult;
- for (hContact=db_find_first();hContact != NULL;hContact=db_find_next(hContact)) {
+ for (hContact = db_find_first(); hContact != NULL; hContact = db_find_next(hContact)) {
if (db_get_s(hContact, SKYPE_PROTONAME, "SkypeOutNr", &dbv)) continue;
tCompareResult = strcmp(dbv.pszVal, szHandle);
db_free(&dbv);
@@ -1432,48 +1438,48 @@ MCONTACT GetCallerContact(char *szSkypeMsg) }
}
free(szHandle);
- if (!hContact) {LOG(("GetCallerContact Not found!"));}
+ if (!hContact) { LOG(("GetCallerContact Not found!")); }
return hContact;
}
MCONTACT GetMetaHandle(DWORD dwId)
{
- for (MCONTACT hContact=db_find_first(); hContact != NULL; hContact=db_find_next(hContact)) {
+ for (MCONTACT hContact = db_find_first(); hContact != NULL; hContact = db_find_next(hContact)) {
char *szProto = GetContactProto(hContact);
if (szProto != NULL && !strcmp(szProto, "MetaContacts") &&
- db_get_dw(hContact, "MetaContacts", "MetaID", MAXDWORD)==dwId)
+ db_get_dw(hContact, "MetaContacts", "MetaID", MAXDWORD) == dwId)
return hContact;
- }
+ }
return 0;
}
-LRESULT CALLBACK InCallPopUpProc(HWND hwnd,UINT msg,WPARAM wParam,LPARAM lParam)
+LRESULT CALLBACK InCallPopUpProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
{
- switch(msg)
+ switch (msg)
{
- case WM_COMMAND:
- break;
-
- case WM_CONTEXTMENU:
- SendMessage(hwnd,UM_DESTROYPOPUP,0,0);
- break;
- case UM_FREEPLUGINDATA:
- //Here we'd free our own data, if we had it.
- return FALSE;
- case UM_INITPOPUP:
- break;
- case UM_DESTROYPOPUP:
- break;
- case WM_NOTIFY:
- default:
- break;
- }
- return DefWindowProc(hwnd,msg,wParam,lParam);
+ case WM_COMMAND:
+ break;
+
+ case WM_CONTEXTMENU:
+ SendMessage(hwnd, UM_DESTROYPOPUP, 0, 0);
+ break;
+ case UM_FREEPLUGINDATA:
+ //Here we'd free our own data, if we had it.
+ return FALSE;
+ case UM_INITPOPUP:
+ break;
+ case UM_DESTROYPOPUP:
+ break;
+ case WM_NOTIFY:
+ default:
+ break;
+ }
+ return DefWindowProc(hwnd, msg, wParam, lParam);
}
void RingThread(char *szSkypeMsg) {
MCONTACT hContact;
- DBEVENTINFO dbei={0};
+ DBEVENTINFO dbei = { 0 };
DBVARIANT dbv;
char *ptr = NULL;
@@ -1489,37 +1495,32 @@ void RingThread(char *szSkypeMsg) { // skype doesnt accept status-changes for finished calls. The CriticalSection syncronizes
// the threads and the messages are processed in correct order.
// Not the best solution, but it works.
- EnterCriticalSection (&RingAndEndcallMutex);
+ EnterCriticalSection(&RingAndEndcallMutex);
- LOG(("RingThread started."));
- if (protocol >= 5) SkypeSend ("MINIMIZE");
- if (hContact=GetCallerContact(szSkypeMsg)) {
+ LOG(("RingThread started."));
+ if (protocol >= 5) SkypeSend("MINIMIZE");
+ if (hContact = GetCallerContact(szSkypeMsg)) {
// Make sure that an answering thread is not already in progress so that we don't get
// the 'Incoming call' event twice
if (!db_get_s(hContact, SKYPE_PROTONAME, "CallId", &dbv)) {
db_free(&dbv);
- LOG(("RingThread terminated."));
+ LOG(("RingThread terminated."));
goto l_exitRT;
}
db_set_s(hContact, SKYPE_PROTONAME, "CallId", szSkypeMsg);
}
-
- if (!(ptr=SkypeGet(szSkypeMsg, "TYPE", ""))) {
- LOG(("RingThread terminated."));
+
+ if (!(ptr = SkypeGet(szSkypeMsg, "TYPE", ""))) {
+ LOG(("RingThread terminated."));
goto l_exitRT;;
}
- if (!strncmp(ptr, "INCOMING", 8))
- NofifyVoiceService(hContact, szSkypeMsg, VOICE_STATE_RINGING);
- else
- NofifyVoiceService(hContact, szSkypeMsg, VOICE_STATE_CALLING);
-
if (!strncmp(ptr, "INCOMING", 8)) {
if (!hContact) {
char *szHandle;
-
- if (szHandle=GetCallerHandle(szSkypeMsg)) {
- if (!(hContact=add_contact(szHandle, PALF_TEMPORARY))) {
+
+ if (szHandle = GetCallerHandle(szSkypeMsg)) {
+ if (!(hContact = add_contact(szHandle, PALF_TEMPORARY))) {
free(szHandle);
goto l_exitRT;
}
@@ -1527,33 +1528,29 @@ void RingThread(char *szSkypeMsg) { db_set_w(hContact, SKYPE_PROTONAME, "Status", (WORD)SkypeStatusToMiranda("SKYPEOUT"));
db_set_s(hContact, SKYPE_PROTONAME, "SkypeOutNr", szHandle);
free(szHandle);
- } else goto l_exitRT;
+ }
+ else goto l_exitRT;
}
}
- if (HasVoiceService()) {
- // Voice service will handle it
- goto l_exitRT;
- }
-
- dbei.cbSize=sizeof(dbei);
- dbei.eventType=EVENTTYPE_CALL;
- dbei.szModule=SKYPE_PROTONAME;
- dbei.timestamp=(DWORD)SkypeTime(NULL);
- dbei.pBlob=(unsigned char*)Translate("Phone call");
- dbei.cbBlob=strlen((const char*)dbei.pBlob)+1;
- if (!strncmp(ptr, "INCOMING", 8))
+ dbei.cbSize = sizeof(dbei);
+ dbei.eventType = EVENTTYPE_CALL;
+ dbei.szModule = SKYPE_PROTONAME;
+ dbei.timestamp = (DWORD)SkypeTime(NULL);
+ dbei.pBlob = (unsigned char*)Translate("Phone call");
+ dbei.cbBlob = strlen((const char*)dbei.pBlob) + 1;
+ if (!strncmp(ptr, "INCOMING", 8))
{
- CLISTEVENT cle={0};
+ CLISTEVENT cle = { 0 };
char toolTip[256];
- if(PopupServiceExists)
+ if (PopupServiceExists)
{
BOOL showPopup, popupWindowColor;
unsigned int popupBackColor, popupTextColor;
int popupTimeSec;
POPUPDATAT InCallPopup;
- TCHAR * lpzContactName = (TCHAR*)CallService(MS_CLIST_GETCONTACTDISPLAYNAME,hContact,GCDNF_TCHAR);
+ TCHAR * lpzContactName = (TCHAR*)CallService(MS_CLIST_GETCONTACTDISPLAYNAME, hContact, GCDNF_TCHAR);
popupTimeSec = db_get_dw(NULL, SKYPE_PROTONAME, "popupTimeSec", 4);
popupTextColor = db_get_dw(NULL, SKYPE_PROTONAME, "popupTextColor", GetSysColor(COLOR_WINDOWTEXT));
@@ -1562,47 +1559,47 @@ void RingThread(char *szSkypeMsg) { showPopup = (0 != db_get_b(NULL, SKYPE_PROTONAME, "showPopup", TRUE));
InCallPopup.lchContact = hContact;
- InCallPopup.lchIcon = LoadIcon(hInst,MAKEINTRESOURCE(IDI_CALL));
- InCallPopup.colorBack = ! popupWindowColor ? popupBackColor : GetSysColor(COLOR_BTNFACE);
- InCallPopup.colorText = ! popupWindowColor ? popupTextColor : GetSysColor(COLOR_WINDOWTEXT);
+ InCallPopup.lchIcon = LoadIcon(hInst, MAKEINTRESOURCE(IDI_CALL));
+ InCallPopup.colorBack = !popupWindowColor ? popupBackColor : GetSysColor(COLOR_BTNFACE);
+ InCallPopup.colorText = !popupWindowColor ? popupTextColor : GetSysColor(COLOR_WINDOWTEXT);
InCallPopup.iSeconds = popupTimeSec;
InCallPopup.PluginWindowProc = (WNDPROC)InCallPopUpProc;
InCallPopup.PluginData = (void *)1;
-
+
lstrcpy(InCallPopup.lptzText, TranslateT("Incoming Skype Call"));
lstrcpy(InCallPopup.lptzContactName, lpzContactName);
- if(showPopup)
- CallService(MS_POPUP_ADDPOPUPT,(WPARAM)&InCallPopup,0);
+ if (showPopup)
+ CallService(MS_POPUP_ADDPOPUPT, (WPARAM)&InCallPopup, 0);
}
- cle.cbSize=sizeof(cle);
- cle.hIcon=LoadIcon(hInst,MAKEINTRESOURCE(IDI_CALL));
- cle.pszService=SKYPE_ANSWERCALL;
- dbei.flags=DBEF_READ;
- cle.hContact=hContact;
- cle.hDbEvent=db_event_add(hContact, &dbei);
- _snprintf(toolTip,sizeof(toolTip),Translate("Incoming call from %s"),(char*)CallService(MS_CLIST_GETCONTACTDISPLAYNAME,hContact,0));
- cle.pszTooltip=toolTip;
- CallServiceSync(MS_CLIST_ADDEVENT,0,(LPARAM)&cle);
- }
- else
+ cle.cbSize = sizeof(cle);
+ cle.hIcon = LoadIcon(hInst, MAKEINTRESOURCE(IDI_CALL));
+ cle.pszService = SKYPE_ANSWERCALL;
+ dbei.flags = DBEF_READ;
+ cle.hContact = hContact;
+ cle.hDbEvent = db_event_add(hContact, &dbei);
+ _snprintf(toolTip, sizeof(toolTip), Translate("Incoming call from %s"), (char*)CallService(MS_CLIST_GETCONTACTDISPLAYNAME, hContact, 0));
+ cle.pszTooltip = toolTip;
+ CallServiceSync(MS_CLIST_ADDEVENT, 0, (LPARAM)&cle);
+ }
+ else
{
- dbei.flags=DBEF_SENT;
+ dbei.flags = DBEF_SENT;
db_event_add(hContact, &dbei);
}
l_exitRT:
- if (ptr) free (ptr);
+ if (ptr) free(ptr);
free(szSkypeMsg);
- LeaveCriticalSection (&RingAndEndcallMutex);
+ LeaveCriticalSection(&RingAndEndcallMutex);
}
void EndCallThread(char *szSkypeMsg) {
- MCONTACT hContact=NULL;
+ MCONTACT hContact = NULL;
HANDLE hDbEvent;
- DBEVENTINFO dbei={0};
+ DBEVENTINFO dbei = { 0 };
DBVARIANT dbv;
int tCompareResult;
@@ -1618,11 +1615,11 @@ void EndCallThread(char *szSkypeMsg) { // skype doesnt accept status-changes for finished calls. The CriticalSection syncronizes
// the threads and the messages are processed in correct order.
// Not the best solution, but it works.
- EnterCriticalSection (&RingAndEndcallMutex);
+ EnterCriticalSection(&RingAndEndcallMutex);
- LOG(("EndCallThread started."));
+ LOG(("EndCallThread started."));
if (szSkypeMsg) {
- for (hContact=db_find_first();hContact != NULL;hContact=db_find_next(hContact)) {
+ for (hContact = db_find_first(); hContact != NULL; hContact = db_find_next(hContact)) {
if (db_get_s(hContact, SKYPE_PROTONAME, "CallId", &dbv)) continue;
tCompareResult = strcmp(dbv.pszVal, szSkypeMsg);
db_free(&dbv);
@@ -1631,48 +1628,43 @@ void EndCallThread(char *szSkypeMsg) { }
if (hContact)
{
- NofifyVoiceService(hContact, szSkypeMsg, VOICE_STATE_ENDED);
-
db_unset(hContact, SKYPE_PROTONAME, "CallId");
- if (!HasVoiceService()) {
- dbei.cbSize=sizeof(dbei);
- hDbEvent = db_event_firstUnread(hContact);
- while(hDbEvent) {
- dbei.cbBlob=0;
- db_event_get(hDbEvent, &dbei);
- if (!(dbei.flags&(DBEF_SENT|DBEF_READ)) && dbei.eventType==EVENTTYPE_CALL) {
- db_event_markRead(hContact,hDbEvent);
- CallService(MS_CLIST_REMOVEEVENT,hContact,(LPARAM)hDbEvent);
- }
- free(dbei.pBlob);
- hDbEvent=db_event_next(hContact, hDbEvent);
+ dbei.cbSize = sizeof(dbei);
+ hDbEvent = db_event_firstUnread(hContact);
+ while (hDbEvent) {
+ dbei.cbBlob = 0;
+ db_event_get(hDbEvent, &dbei);
+ if (!(dbei.flags&(DBEF_SENT | DBEF_READ)) && dbei.eventType == EVENTTYPE_CALL) {
+ db_event_markRead(hContact, hDbEvent);
+ CallService(MS_CLIST_REMOVEEVENT, hContact, (LPARAM)hDbEvent);
}
+ free(dbei.pBlob);
+ hDbEvent = db_event_next(hContact, hDbEvent);
}
if (!db_get_s(hContact, SKYPE_PROTONAME, "SkypeOutNr", &dbv)) {
db_free(&dbv);
- if (!strcmp((char *)CallService(MS_PROTO_GETCONTACTBASEPROTO, hContact, 0), SKYPE_PROTONAME) &&
+ if (!strcmp((char *)CallService(MS_PROTO_GETCONTACTBASEPROTO, hContact, 0), SKYPE_PROTONAME) &&
db_get_b(hContact, "CList", "NotOnList", 0)
- )
- CallService(MS_DB_CONTACT_DELETE, hContact, 0);
+ )
+ CallService(MS_DB_CONTACT_DELETE, hContact, 0);
}
}
free(szSkypeMsg);
- LeaveCriticalSection (&RingAndEndcallMutex);
+ LeaveCriticalSection(&RingAndEndcallMutex);
}
void HoldCallThread(char *szSkypeMsg) {
MCONTACT hContact;
LOG(("HoldCallThread started"));
- if (!szSkypeMsg) {
+ if (!szSkypeMsg) {
LOG(("HoldCallThread terminated."));
return;
}
- if (hContact=GetCallerContact(szSkypeMsg)) {
+ if (hContact = GetCallerContact(szSkypeMsg)) {
db_set_b(hContact, SKYPE_PROTONAME, "OnHold", 1);
- NofifyVoiceService(hContact, szSkypeMsg, VOICE_STATE_ON_HOLD);
}
free(szSkypeMsg);
LOG(("HoldCallThread terminated gracefully"));
@@ -1686,117 +1678,117 @@ void ResumeCallThread(char *szSkypeMsg) { LOG(("ResumeCallThread terminated."));
return;
}
- if (hContact=GetCallerContact(szSkypeMsg)) {
+ if (hContact = GetCallerContact(szSkypeMsg)) {
db_unset(hContact, SKYPE_PROTONAME, "OnHold");
- NofifyVoiceService(hContact, szSkypeMsg, VOICE_STATE_TALKING);
}
free(szSkypeMsg);
- LOG(("ResumeCallThread terminated gracefully."));
+ LOG(("ResumeCallThread terminated gracefully."));
}
int SetUserStatus(void) {
- if (RequestedStatus && AttachStatus!=-1) {
- if (SkypeSend("SET USERSTATUS %s", RequestedStatus)==-1) return 1;
- }
- return 0;
+ if (RequestedStatus && AttachStatus != -1) {
+ if (SkypeSend("SET USERSTATUS %s", RequestedStatus) == -1) return 1;
+ }
+ return 0;
}
void LaunchSkypeAndSetStatusThread(void *newStatus) {
-/* if (!db_get_b(NULL, SKYPE_PROTONAME, "UnloadOnOffline", 0)) {
- logoff_contacts();
- return 1;
- }
-*/
- int oldStatus=SkypeStatus;
+ /* if (!db_get_b(NULL, SKYPE_PROTONAME, "UnloadOnOffline", 0)) {
+ logoff_contacts();
+ return 1;
+ }
+ */
+ int oldStatus = SkypeStatus;
static BOOL bLaunching = FALSE;
UNREFERENCED_PARAMETER(newStatus);
if (bLaunching) return;
bLaunching = TRUE;
- LOG (("LaunchSkypeAndSetStatusThread started."));
+ LOG(("LaunchSkypeAndSetStatusThread started."));
InterlockedExchange((long *)&SkypeStatus, (int)ID_STATUS_CONNECTING);
- ProtoBroadcastAck(SKYPE_PROTONAME, NULL, ACKTYPE_STATUS, ACKRESULT_SUCCESS, (HANDLE) oldStatus, SkypeStatus);
-
- if (ConnectToSkypeAPI(skype_path, 1)!=-1) {
- pthread_create(( pThreadFunc )SkypeSystemInit, NULL);
+ ProtoBroadcastAck(SKYPE_PROTONAME, NULL, ACKTYPE_STATUS, ACKRESULT_SUCCESS, (HANDLE)oldStatus, SkypeStatus);
+
+ if (ConnectToSkypeAPI(skype_path, 1) != -1) {
+ pthread_create((pThreadFunc)SkypeSystemInit, NULL);
//InterlockedExchange((long *)&SkypeStatus, (int)newStatus);
//ProtoBroadcastAck(SKYPE_PROTONAME, NULL, ACKTYPE_STATUS, ACKRESULT_SUCCESS, (HANDLE) oldStatus, SkypeStatus);
SetUserStatus();
}
- LOG (("LaunchSkypeAndSetStatusThread terminated gracefully."));
+ LOG(("LaunchSkypeAndSetStatusThread terminated gracefully."));
bLaunching = FALSE;
}
-LONG APIENTRY WndProc(HWND hWndDlg, UINT message, UINT wParam, LONG lParam)
-{
- PCOPYDATASTRUCT CopyData;
- char *ptr, *szSkypeMsg=NULL, *nick, *buf;
- static char *onlinestatus=NULL;
- static BOOL RestoreUserStatus=FALSE;
+LONG APIENTRY WndProc(HWND hWndDlg, UINT message, UINT wParam, LONG lParam)
+{
+ PCOPYDATASTRUCT CopyData;
+ char *ptr, *szSkypeMsg = NULL, *nick, *buf;
+ static char *onlinestatus = NULL;
+ static BOOL RestoreUserStatus = FALSE;
int sstat, oldstatus, flag;
MCONTACT hContact;
fetchmsg_arg *args;
static int iReentranceCnt = 0;
iReentranceCnt++;
- switch (message)
- {
- case WM_COPYDATA:
- LOG(("WM_COPYDATA start"));
- if(hSkypeWnd==(HWND)wParam) {
+ switch (message)
+ {
+ case WM_COPYDATA:
+ LOG(("WM_COPYDATA start"));
+ if (hSkypeWnd == (HWND)wParam) {
char *pData;
- CopyData=(PCOPYDATASTRUCT)lParam;
+ CopyData = (PCOPYDATASTRUCT)lParam;
pData = (char*)CopyData->lpData;
- while (*pData==' ') pData++;
- szSkypeMsg=_strdup((char*)pData);
+ while (*pData == ' ') pData++;
+ szSkypeMsg = _strdup((char*)pData);
ReplyMessage(1);
LOG(("< %s", szSkypeMsg));
- if (!strncmp(szSkypeMsg, "CONNSTATUS", 10)) {
- if (!strncmp(szSkypeMsg+11, "LOGGEDOUT", 9)) {
- SkypeInitialized=FALSE;
+ if (!strncmp(szSkypeMsg, "CONNSTATUS", 10)) {
+ if (!strncmp(szSkypeMsg + 11, "LOGGEDOUT", 9)) {
+ SkypeInitialized = FALSE;
ResetEvent(SkypeReady);
- AttachStatus=-1;
- sstat=ID_STATUS_OFFLINE;
- if (g_hWnd) KillTimer (g_hWnd, 1);
+ AttachStatus = -1;
+ sstat = ID_STATUS_OFFLINE;
+ if (g_hWnd) KillTimer(g_hWnd, 1);
logoff_contacts(TRUE);
- } else
- sstat=SkypeStatusToMiranda(szSkypeMsg+11);
+ }
+ else
+ sstat = SkypeStatusToMiranda(szSkypeMsg + 11);
if (sstat) {
- oldstatus=SkypeStatus;
+ oldstatus = SkypeStatus;
InterlockedExchange((long*)&SkypeStatus, sstat);
- ProtoBroadcastAck(SKYPE_PROTONAME, NULL, ACKTYPE_STATUS, ACKRESULT_SUCCESS, (HANDLE) oldstatus, SkypeStatus);
- if (sstat!=ID_STATUS_OFFLINE) {
- if (sstat!=ID_STATUS_CONNECTING && (oldstatus==ID_STATUS_OFFLINE || oldstatus==ID_STATUS_CONNECTING)) {
+ ProtoBroadcastAck(SKYPE_PROTONAME, NULL, ACKTYPE_STATUS, ACKRESULT_SUCCESS, (HANDLE)oldstatus, SkypeStatus);
+ if (sstat != ID_STATUS_OFFLINE) {
+ if (sstat != ID_STATUS_CONNECTING && (oldstatus == ID_STATUS_OFFLINE || oldstatus == ID_STATUS_CONNECTING)) {
- SkypeInitialized=FALSE;
- pthread_create(( pThreadFunc )SkypeSystemInit, NULL);
+ SkypeInitialized = FALSE;
+ pthread_create((pThreadFunc)SkypeSystemInit, NULL);
}
- if (db_get_b(NULL, SKYPE_PROTONAME, "KeepState", 0)) RestoreUserStatus=TRUE;
+ if (db_get_b(NULL, SKYPE_PROTONAME, "KeepState", 0)) RestoreUserStatus = TRUE;
}
-// if (SkypeStatus==ID_STATUS_ONLINE) SkypeSend("SEARCH MISSEDMESSAGES");
+ // if (SkypeStatus==ID_STATUS_ONLINE) SkypeSend("SEARCH MISSEDMESSAGES");
}
-// break;
+ // break;
}
if (!strncmp(szSkypeMsg, "USERSTATUS", 10)) {
-// if ((sstat=SkypeStatusToMiranda(szSkypeMsg+11)) && SkypeStatus!=ID_STATUS_CONNECTING) {
- if ((sstat=SkypeStatusToMiranda(szSkypeMsg+11))) {
- if (RestoreUserStatus && RequestedStatus) {
- RestoreUserStatus=FALSE;
- SkypeSend ("SET USERSTATUS %s", RequestedStatus);
- }
- oldstatus=SkypeStatus;
- InterlockedExchange((long*)&SkypeStatus, sstat);
- ProtoBroadcastAck(SKYPE_PROTONAME, NULL, ACKTYPE_STATUS, ACKRESULT_SUCCESS, (HANDLE) oldstatus, sstat);
+ // if ((sstat=SkypeStatusToMiranda(szSkypeMsg+11)) && SkypeStatus!=ID_STATUS_CONNECTING) {
+ if ((sstat = SkypeStatusToMiranda(szSkypeMsg + 11))) {
+ if (RestoreUserStatus && RequestedStatus) {
+ RestoreUserStatus = FALSE;
+ SkypeSend("SET USERSTATUS %s", RequestedStatus);
+ }
+ oldstatus = SkypeStatus;
+ InterlockedExchange((long*)&SkypeStatus, sstat);
+ ProtoBroadcastAck(SKYPE_PROTONAME, NULL, ACKTYPE_STATUS, ACKRESULT_SUCCESS, (HANDLE)oldstatus, sstat);
#ifdef SKYPEBUG_OFFLN
- if ((oldstatus==ID_STATUS_OFFLINE || oldstatus==ID_STATUS_CONNECTING) &&
- SkypeStatus!=ID_STATUS_CONNECTING && SkypeStatus!=ID_STATUS_OFFLINE)
- pthread_create(( pThreadFunc )SearchFriendsThread, NULL);
+ if ((oldstatus == ID_STATUS_OFFLINE || oldstatus == ID_STATUS_CONNECTING) &&
+ SkypeStatus != ID_STATUS_CONNECTING && SkypeStatus != ID_STATUS_OFFLINE)
+ pthread_create((pThreadFunc)SearchFriendsThread, NULL);
#endif
}
#ifdef SKYPEBUG_OFFLN
@@ -1807,35 +1799,35 @@ LONG APIENTRY WndProc(HWND hWndDlg, UINT message, UINT wParam, LONG lParam) if (!strncmp(szSkypeMsg, "APPLICATION libpurple_typing", 28)) {
char *nextoken, *p;
- if (p=strtok_r(szSkypeMsg+29, " ", &nextoken))
+ if (p = strtok_r(szSkypeMsg + 29, " ", &nextoken))
{
- if (!strcmp (p, "STREAMS")) {
+ if (!strcmp(p, "STREAMS")) {
char *pStr;
- while (p=strtok_r(NULL, " ", &nextoken)) {
+ while (p = strtok_r(NULL, " ", &nextoken)) {
if (pStr = strchr(p, ':')) {
- *pStr=0;
- if (hContact=find_contact(p)) {
- *pStr=':';
+ *pStr = 0;
+ if (hContact = find_contact(p)) {
+ *pStr = ':';
db_set_s(hContact, SKYPE_PROTONAME, "Typing_Stream", p);
}
}
}
}
- else if (!strcmp (p, "DATAGRAM")) {
- if (p=strtok_r(NULL, " ", &nextoken)) {
+ else if (!strcmp(p, "DATAGRAM")) {
+ if (p = strtok_r(NULL, " ", &nextoken)) {
char *pStr;
if (pStr = strchr(p, ':')) {
- *pStr=0;
- if (hContact=find_contact(p)) {
- *pStr=':';
+ *pStr = 0;
+ if (hContact = find_contact(p)) {
+ *pStr = ':';
db_set_s(hContact, SKYPE_PROTONAME, "Typing_Stream", p);
- if (p=strtok_r(NULL, " ", &nextoken)) {
+ if (p = strtok_r(NULL, " ", &nextoken)) {
LPARAM lTyping = PROTOTYPE_CONTACTTYPING_OFF;
- if (!strcmp(p, "PURPLE_TYPING")) lTyping=PROTOTYPE_CONTACTTYPING_INFINITE;
+ if (!strcmp(p, "PURPLE_TYPING")) lTyping = PROTOTYPE_CONTACTTYPING_INFINITE;
CallService(MS_PROTO_CONTACTISTYPING, hContact, lTyping);
break;
}
@@ -1848,28 +1840,28 @@ LONG APIENTRY WndProc(HWND hWndDlg, UINT message, UINT wParam, LONG lParam) if (!strncmp(szSkypeMsg, "USER ", 5)) {
char *nextoken;
- buf=_strdup(szSkypeMsg+5);
- nick=strtok_r(buf, " ", &nextoken);
- ptr=strtok_r(NULL, " ", &nextoken);
+ buf = _strdup(szSkypeMsg + 5);
+ nick = strtok_r(buf, " ", &nextoken);
+ ptr = strtok_r(NULL, " ", &nextoken);
if (strcmp(ptr, "BUDDYSTATUS")) {
if (!strcmp(ptr, "RECEIVEDAUTHREQUEST")) {
- pthread_create(( pThreadFunc )SearchUsersWaitingMyAuthorization, NULL);
- free (buf);
+ pthread_create((pThreadFunc)SearchUsersWaitingMyAuthorization, NULL);
+ free(buf);
break;
}
- if (!(hContact=find_contact(nick)) && strcmp(ptr, "FULLNAME")) {
+ if (!(hContact = find_contact(nick)) && strcmp(ptr, "FULLNAME")) {
SkypeSend("GET USER %s BUDDYSTATUS", nick);
- free (buf);
+ free(buf);
break;
- }
+ }
if (!strcmp(ptr, "ONLINESTATUS")) {
- if (SkypeStatus!=ID_STATUS_OFFLINE)
+ if (SkypeStatus != ID_STATUS_OFFLINE)
{
- db_set_w(hContact, SKYPE_PROTONAME, "Status", (WORD)SkypeStatusToMiranda(ptr+13));
- if((WORD)SkypeStatusToMiranda(ptr+13) != ID_STATUS_OFFLINE)
+ db_set_w(hContact, SKYPE_PROTONAME, "Status", (WORD)SkypeStatusToMiranda(ptr + 13));
+ if ((WORD)SkypeStatusToMiranda(ptr + 13) != ID_STATUS_OFFLINE)
{
LOG(("WndProc Status is not offline so get user info"));
pthread_create(GetInfoThread, (void*)hContact);
@@ -1891,7 +1883,7 @@ LONG APIENTRY WndProc(HWND hWndDlg, UINT message, UINT wParam, LONG lParam) * If we don't remove the ERRORs from the list, another consumer may see the ERROR
* as a reply to his query and process it.
* In case the SKYPE Protocol really broadcasts one of these messages without being
- * requested by GetInfoThread (i.e. MOOD_TEXT), the garbage collector will take
+ * requested by GetInfoThread (i.e. MOOD_TEXT), the garbage collector will take
* care of them and remove them after some time.
* This may not be the most efficient way, but ensures that we finally do proper
* error handling.
@@ -1902,56 +1894,64 @@ LONG APIENTRY WndProc(HWND hWndDlg, UINT message, UINT wParam, LONG lParam) if (nm = strtok_r(NULL, " ", &nextoken))
{
db_set_utf(hContact, SKYPE_PROTONAME, "FirstName", nm);
- if (!(nm=strtok_r(NULL, "", &nextoken))) db_unset(hContact, SKYPE_PROTONAME, "LastName");
- else
+ if (!(nm = strtok_r(NULL, "", &nextoken))) db_unset(hContact, SKYPE_PROTONAME, "LastName");
+ else
db_set_utf(hContact, SKYPE_PROTONAME, "LastName", nm);
}
- } else
- if (!strcmp(ptr, "BIRTHDAY")) {
+ }
+ else
+ if (!strcmp(ptr, "BIRTHDAY")) {
unsigned int y, m, d;
- if (sscanf(ptr+9, "%04d%02d%02d", &y, &m, &d)==3) {
+ if (sscanf(ptr + 9, "%04d%02d%02d", &y, &m, &d) == 3) {
db_set_w(hContact, SKYPE_PROTONAME, "BirthYear", (WORD)y);
db_set_b(hContact, SKYPE_PROTONAME, "BirthMonth", (BYTE)m);
db_set_b(hContact, SKYPE_PROTONAME, "BirthDay", (BYTE)d);
- } else {
+ }
+ else {
db_unset(hContact, SKYPE_PROTONAME, "BirthYear");
db_unset(hContact, SKYPE_PROTONAME, "BirthMonth");
db_unset(hContact, SKYPE_PROTONAME, "BirthDay");
}
- } else
- if (!strcmp(ptr, "COUNTRY")) {
+ }
+ else
+ if (!strcmp(ptr, "COUNTRY")) {
if (ptr[8]) {
struct CountryListEntry *countries;
int countryCount, i;
CallService(MS_UTILS_GETCOUNTRYLIST, (WPARAM)&countryCount, (LPARAM)&countries);
- for (i=0; i<countryCount; i++) {
+ for (i = 0; i < countryCount; i++) {
if (countries[i].id == 0 || countries[i].id == 0xFFFF) continue;
- if (!_stricmp(countries[i].szName, ptr+8))
+ if (!_stricmp(countries[i].szName, ptr + 8))
{
db_set_w(hContact, SKYPE_PROTONAME, "Country", (BYTE)countries[i].id);
break;
}
}
- } else db_unset(hContact, SKYPE_PROTONAME, "Country");
- } else
- if (!strcmp(ptr, "SEX")) {
+ }
+ else db_unset(hContact, SKYPE_PROTONAME, "Country");
+ }
+ else
+ if (!strcmp(ptr, "SEX")) {
if (ptr[4]) {
- BYTE sex=0;
- if (!_stricmp(ptr+4, "MALE")) sex=0x4D;
- if (!_stricmp(ptr+4, "FEMALE")) sex=0x46;
+ BYTE sex = 0;
+ if (!_stricmp(ptr + 4, "MALE")) sex = 0x4D;
+ if (!_stricmp(ptr + 4, "FEMALE")) sex = 0x46;
if (sex) db_set_b(hContact, SKYPE_PROTONAME, "Gender", sex);
- } else db_unset(hContact, SKYPE_PROTONAME, "Gender");
- } else
- if (!strcmp(ptr, "MOOD_TEXT")){
+ }
+ else db_unset(hContact, SKYPE_PROTONAME, "Gender");
+ }
+ else
+ if (!strcmp(ptr, "MOOD_TEXT")){
LOG(("WndProc MOOD_TEXT"));
- db_set_utf(hContact, "CList", "StatusMsg", ptr+10);
- } else
- if (!strcmp(ptr, "TIMEZONE")){
+ db_set_utf(hContact, "CList", "StatusMsg", ptr + 10);
+ }
+ else
+ if (!strcmp(ptr, "TIMEZONE")){
time_t temp;
struct tm tms;
- int value=atoi(ptr+9), tz;
+ int value = atoi(ptr + 9), tz;
LOG(("WndProc: TIMEZONE %s", nick));
@@ -1960,59 +1960,65 @@ LONG APIENTRY WndProc(HWND hWndDlg, UINT message, UINT wParam, LONG lParam) tms = *localtime(&temp);
//memcpy(&tms,localtime(&temp), sizeof(tm));
//tms = localtime(&temp)
- tz=(value >= 86400 )?(256-((2*(atoi(ptr+9)-86400))/3600)):((-2*(atoi(ptr+9)-86400))/3600);
- if (tms.tm_isdst == 1 && db_get_b(NULL, SKYPE_PROTONAME, "UseTimeZonePatch", 0))
+ tz = (value >= 86400) ? (256 - ((2 * (atoi(ptr + 9) - 86400)) / 3600)) : ((-2 * (atoi(ptr + 9) - 86400)) / 3600);
+ if (tms.tm_isdst == 1 && db_get_b(NULL, SKYPE_PROTONAME, "UseTimeZonePatch", 0))
{
LOG(("WndProc: Using the TimeZonePatch"));
- db_set_b(hContact, "UserInfo", "Timezone", (BYTE)(tz+2));
+ db_set_b(hContact, "UserInfo", "Timezone", (BYTE)(tz + 2));
}
else
{
LOG(("WndProc: Not using the TimeZonePatch"));
- db_set_b(hContact, "UserInfo", "Timezone", (BYTE)(tz+0));
+ db_set_b(hContact, "UserInfo", "Timezone", (BYTE)(tz + 0));
}
- } else {
+ }
+ else {
LOG(("WndProc: Deleting the TimeZone in UserInfo Section"));
db_unset(hContact, "UserInfo", "Timezone");
}
- } else
- if (!strcmp(ptr, "IS_VIDEO_CAPABLE")){
+ }
+ else
+ if (!strcmp(ptr, "IS_VIDEO_CAPABLE")){
if (!_stricmp(ptr + 17, "True"))
db_set_s(hContact, SKYPE_PROTONAME, "MirVer", "Skype 2.0");
else
db_set_s(hContact, SKYPE_PROTONAME, "MirVer", "Skype");
- } else
- if (!strcmp(ptr, "RICH_MOOD_TEXT")) {
+ }
+ else
+ if (!strcmp(ptr, "RICH_MOOD_TEXT")) {
db_set_s(hContact, SKYPE_PROTONAME, "MirVer", "Skype 3.0");
- } else
- if (!strcmp(ptr, "DISPLAYNAME")) {
+ }
+ else
+ if (!strcmp(ptr, "DISPLAYNAME")) {
// Skype Bug? -> If nickname isn't customised in the Skype-App, this won't return anything :-(
- if (ptr[12])
- db_set_utf(hContact, SKYPE_PROTONAME, "Nick", ptr+12);
- } else // Other proerties that can be directly assigned to a DB-Value
- {
- int i;
- char *pszProp;
-
- for (i=0; i<sizeof(m_settings)/sizeof(m_settings[0]); i++) {
- if (!strcmp(ptr, m_settings[i].SkypeSetting)) {
- pszProp = ptr+strlen(m_settings[i].SkypeSetting)+1;
- if (*pszProp)
- db_set_utf(hContact, SKYPE_PROTONAME, m_settings[i].MirandaSetting, pszProp);
- else
- db_unset(hContact, SKYPE_PROTONAME, m_settings[i].MirandaSetting);
- }
- }
- }
- } else { // BUDDYSTATUS:
- flag=0;
- switch(atoi(ptr+12)) {
- case 1: if (hContact=find_contact(nick)) CallService(MS_DB_CONTACT_DELETE, hContact, 0); break;
- case 0: break;
- case 2: flag=PALF_TEMPORARY;
- case 3: add_contact(nick, flag);
- SkypeSend("GET USER %s ONLINESTATUS", nick);
- break;
+ if (ptr[12])
+ db_set_utf(hContact, SKYPE_PROTONAME, "Nick", ptr + 12);
+ }
+ else // Other proerties that can be directly assigned to a DB-Value
+ {
+ int i;
+ char *pszProp;
+
+ for (i = 0; i < sizeof(m_settings) / sizeof(m_settings[0]); i++) {
+ if (!strcmp(ptr, m_settings[i].SkypeSetting)) {
+ pszProp = ptr + strlen(m_settings[i].SkypeSetting) + 1;
+ if (*pszProp)
+ db_set_utf(hContact, SKYPE_PROTONAME, m_settings[i].MirandaSetting, pszProp);
+ else
+ db_unset(hContact, SKYPE_PROTONAME, m_settings[i].MirandaSetting);
+ }
+ }
+ }
+ }
+ else { // BUDDYSTATUS:
+ flag = 0;
+ switch (atoi(ptr + 12)) {
+ case 1: if (hContact = find_contact(nick)) CallService(MS_DB_CONTACT_DELETE, hContact, 0); break;
+ case 0: break;
+ case 2: flag = PALF_TEMPORARY;
+ case 3: add_contact(nick, flag);
+ SkypeSend("GET USER %s ONLINESTATUS", nick);
+ break;
}
free(buf);
if (!SetEvent(hBuddyAdded)) TellError(GetLastError());
@@ -2021,20 +2027,20 @@ LONG APIENTRY WndProc(HWND hWndDlg, UINT message, UINT wParam, LONG lParam) free(buf);
}
if (!strncmp(szSkypeMsg, "CURRENTUSERHANDLE", 17)) { // My username
- DBVARIANT dbv={0};
+ DBVARIANT dbv = { 0 };
- if(db_get_s(NULL,SKYPE_PROTONAME,"LoginUserName",&dbv) ||
- !*dbv.pszVal || _stricmp (szSkypeMsg+18, dbv.pszVal)==0)
+ if (db_get_s(NULL, SKYPE_PROTONAME, "LoginUserName", &dbv) ||
+ !*dbv.pszVal || _stricmp(szSkypeMsg + 18, dbv.pszVal) == 0)
{
- db_set_s(NULL, SKYPE_PROTONAME, SKYPE_NAME, szSkypeMsg+18);
- db_set_s(NULL, SKYPE_PROTONAME, "Nick", szSkypeMsg+18);
- pthread_create(( pThreadFunc )GetDisplaynameThread, NULL);
+ db_set_s(NULL, SKYPE_PROTONAME, SKYPE_NAME, szSkypeMsg + 18);
+ db_set_s(NULL, SKYPE_PROTONAME, "Nick", szSkypeMsg + 18);
+ pthread_create((pThreadFunc)GetDisplaynameThread, NULL);
}
if (dbv.pszVal) db_free(&dbv);
}
- if (strstr(szSkypeMsg, "AUTOAWAY") || !strncmp(szSkypeMsg, "OPEN ",5) ||
- (SkypeInitialized && !strncmp (szSkypeMsg, "PONG", 4)) ||
- !strncmp (szSkypeMsg, "MINIMIZE", 8))
+ if (strstr(szSkypeMsg, "AUTOAWAY") || !strncmp(szSkypeMsg, "OPEN ", 5) ||
+ (SkypeInitialized && !strncmp(szSkypeMsg, "PONG", 4)) ||
+ !strncmp(szSkypeMsg, "MINIMIZE", 8))
{
// Currently we do not process these messages
break;
@@ -2042,122 +2048,127 @@ LONG APIENTRY WndProc(HWND hWndDlg, UINT message, UINT wParam, LONG lParam) if (!strncmp(szSkypeMsg, "CHAT ", 5)) {
// Currently we only process these notifications
if (db_get_b(NULL, SKYPE_PROTONAME, "UseGroupchat", 0) &&
- (ptr = strchr (szSkypeMsg, ' ')) && (ptr = strchr (++ptr, ' ')))
+ (ptr = strchr(szSkypeMsg, ' ')) && (ptr = strchr(++ptr, ' ')))
{
if (strncmp(ptr, " MEMBERS", 8) == 0) {
LOG(("WndProc AddMembers"));
- pthread_create(( pThreadFunc )AddMembersThread, _strdup(szSkypeMsg));
- } else
- if (strncmp(ptr, " FRIENDLYNAME ", 14) == 0) {
+ pthread_create((pThreadFunc)AddMembersThread, _strdup(szSkypeMsg));
+ }
+ else
+ if (strncmp(ptr, " FRIENDLYNAME ", 14) == 0) {
// Chat session name
MCONTACT hContact;
- *ptr=0;
- if (hContact = find_chatA(szSkypeMsg+5))
+ *ptr = 0;
+ if (hContact = find_chatA(szSkypeMsg + 5))
{
if (db_get_w(hContact, SKYPE_PROTONAME, "Status", ID_STATUS_OFFLINE) !=
ID_STATUS_OFFLINE)
{
- GCDEST gcd = { SKYPE_PROTONAME, make_nonutf_tchar_string((const unsigned char*)szSkypeMsg+5), GC_EVENT_CHANGESESSIONAME };
+ GCDEST gcd = { SKYPE_PROTONAME, make_nonutf_tchar_string((const unsigned char*)szSkypeMsg + 5), GC_EVENT_CHANGESESSIONAME };
GCEVENT gce = { sizeof(gce), &gcd };
- gce.ptszText = make_tchar_string((const unsigned char*)ptr+14);
+ gce.ptszText = make_tchar_string((const unsigned char*)ptr + 14);
if (gce.ptszText) {
CallService(MS_GC_EVENT, 0, (LPARAM)&gce);
- db_set_ts (hContact, SKYPE_PROTONAME, "Nick", gce.ptszText);
+ db_set_ts(hContact, SKYPE_PROTONAME, "Nick", gce.ptszText);
free((void*)gce.ptszText);
}
free_nonutf_tchar_string((void*)gcd.ptszID);
}
}
- *ptr=' ';
- } else
- if (strncmp(ptr, " CHATMESSAGES ", 14) == 0) {
- pthread_create(( pThreadFunc )MessageListProcessingThread, _strdup(ptr+14));
+ *ptr = ' ';
+ }
+ else
+ if (strncmp(ptr, " CHATMESSAGES ", 14) == 0) {
+ pthread_create((pThreadFunc)MessageListProcessingThread, _strdup(ptr + 14));
break;
- }
+ }
}
}
- if (!strncmp(szSkypeMsg, "CALL ",5)) {
+ if (!strncmp(szSkypeMsg, "CALL ", 5)) {
// incoming calls are already processed by Skype, so no need for us
// to do this.
// However we can give a user the possibility to hang up a call via Miranda's
// context menu
- if (ptr=strstr(szSkypeMsg, " STATUS ")) {
- ptr[0]=0; ptr+=8;
- if (!strcmp(ptr, "RINGING") || !strcmp(ptr, "ROUTING")) pthread_create(( pThreadFunc )RingThread, _strdup(szSkypeMsg));
+ if (ptr = strstr(szSkypeMsg, " STATUS ")) {
+ ptr[0] = 0; ptr += 8;
+ if (!strcmp(ptr, "RINGING") || !strcmp(ptr, "ROUTING")) pthread_create((pThreadFunc)RingThread, _strdup(szSkypeMsg));
if (!strcmp(ptr, "FAILED") || !strcmp(ptr, "FINISHED") ||
- !strcmp(ptr, "MISSED") || !strcmp(ptr, "REFUSED") ||
- !strcmp(ptr, "BUSY") || !strcmp(ptr, "CANCELLED"))
- pthread_create(( pThreadFunc )EndCallThread, _strdup(szSkypeMsg));
+ !strcmp(ptr, "MISSED") || !strcmp(ptr, "REFUSED") ||
+ !strcmp(ptr, "BUSY") || !strcmp(ptr, "CANCELLED"))
+ pthread_create((pThreadFunc)EndCallThread, _strdup(szSkypeMsg));
if (!strcmp(ptr, "ONHOLD") || !strcmp(ptr, "LOCALHOLD") ||
- !strcmp(ptr, "REMOTEHOLD")) pthread_create(( pThreadFunc )HoldCallThread, _strdup(szSkypeMsg));
- if (!strcmp(ptr, "INPROGRESS")) pthread_create(( pThreadFunc )ResumeCallThread, _strdup(szSkypeMsg));
+ !strcmp(ptr, "REMOTEHOLD")) pthread_create((pThreadFunc)HoldCallThread, _strdup(szSkypeMsg));
+ if (!strcmp(ptr, "INPROGRESS")) pthread_create((pThreadFunc)ResumeCallThread, _strdup(szSkypeMsg));
break;
- } else if ((!strstr(szSkypeMsg, "PARTNER_HANDLE") && !strstr(szSkypeMsg, "FROM_HANDLE"))
- && !strstr(szSkypeMsg, "TYPE")) break;
+ }
+ else if ((!strstr(szSkypeMsg, "PARTNER_HANDLE") && !strstr(szSkypeMsg, "FROM_HANDLE"))
+ && !strstr(szSkypeMsg, "TYPE")) break;
}
if (!strncmp(szSkypeMsg, "PRIVILEGE SKYPEOUT", 18)) {
- if (!strncmp(szSkypeMsg+19, "TRUE", 4)) {
+ if (!strncmp(szSkypeMsg + 19, "TRUE", 4)) {
if (!bSkypeOut) {
- CLISTMENUITEM mi={0};
-
- bSkypeOut=TRUE;
- mi.cbSize=sizeof(mi);
- mi.position=-2000005000;
- mi.flags=0;
- mi.hIcon=LoadIcon(hInst,MAKEINTRESOURCE(IDI_CALLSKYPEOUT));
- mi.pszContactOwner=SKYPE_PROTONAME;
- mi.pszName=Translate("Do a SkypeOut-call");
- mi.pszService=SKYPEOUT_CALL;
+ CLISTMENUITEM mi = { 0 };
+
+ bSkypeOut = TRUE;
+ mi.cbSize = sizeof(mi);
+ mi.position = -2000005000;
+ mi.flags = 0;
+ mi.hIcon = LoadIcon(hInst, MAKEINTRESOURCE(IDI_CALLSKYPEOUT));
+ mi.pszContactOwner = SKYPE_PROTONAME;
+ mi.pszName = Translate("Do a SkypeOut-call");
+ mi.pszService = SKYPEOUT_CALL;
Menu_AddMainMenuItem(&mi);
}
- } else {
- bSkypeOut=FALSE;
+ }
+ else {
+ bSkypeOut = FALSE;
if (httbButton) {
CallService(MS_TTB_REMOVEBUTTON, (WPARAM)httbButton, 0);
- httbButton=0;
+ httbButton = 0;
}
}
break;
}
if (!strncmp(szSkypeMsg, "MESSAGES", 8) || !strncmp(szSkypeMsg, "CHATMESSAGES", 12)) {
- if (strlen(szSkypeMsg)<=(UINT)(strchr(szSkypeMsg, ' ')-szSkypeMsg+1))
+ if (strlen(szSkypeMsg) <= (UINT)(strchr(szSkypeMsg, ' ') - szSkypeMsg + 1))
{
- LOG(( "%s %d %s %d", szSkypeMsg,(UINT)(strchr(szSkypeMsg, ' ')-szSkypeMsg+1),
+ LOG(("%s %d %s %d", szSkypeMsg, (UINT)(strchr(szSkypeMsg, ' ') - szSkypeMsg + 1),
strchr(szSkypeMsg, ' '), strlen(szSkypeMsg)));
break;
}
LOG(("MessageListProcessingThread launched"));
- pthread_create(( pThreadFunc )MessageListProcessingThread, _strdup(strchr(szSkypeMsg, ' ')+1));
+ pthread_create((pThreadFunc)MessageListProcessingThread, _strdup(strchr(szSkypeMsg, ' ') + 1));
break;
}
- if (!strncmp(szSkypeMsg, "MESSAGE", 7) || !strncmp(szSkypeMsg, "CHATMESSAGE", 11))
+ if (!strncmp(szSkypeMsg, "MESSAGE", 7) || !strncmp(szSkypeMsg, "CHATMESSAGE", 11))
{
char *pMsgNum;
TYP_MSGLENTRY *pEntry;
- if ((pMsgNum = strchr (szSkypeMsg, ' ')) && (ptr = strchr (++pMsgNum, ' ')))
+ if ((pMsgNum = strchr(szSkypeMsg, ' ')) && (ptr = strchr(++pMsgNum, ' ')))
{
BOOL bFetchMsg = FALSE;
if (strncmp(ptr, " EDITED_TIMESTAMP", 17) == 0) {
- ptr[0]=0;
+ ptr[0] = 0;
if (pEntry = MsgList_FindMessage(strtoul(pMsgNum, NULL, 10))) {
- pEntry->tEdited = atol(ptr+18);
+ pEntry->tEdited = atol(ptr + 18);
}
bFetchMsg = TRUE;
- } else bFetchMsg = (strncmp(ptr, " STATUS RE", 10) == 0 && !rcvwatchers) ||
+ }
+ else bFetchMsg = (strncmp(ptr, " STATUS RE", 10) == 0 && !rcvwatchers) ||
(strncmp(ptr, " STATUS SENT", 12) == 0 && !sendwatchers);
if (bFetchMsg) {
// If new message is available, fetch it
- ptr[0]=0;
- if (!(args=(fetchmsg_arg *)calloc(1, sizeof(*args)))) break;
- strncpy (args->msgnum, pMsgNum, sizeof(args->msgnum));
- args->getstatus=FALSE;
+ ptr[0] = 0;
+ if (!(args = (fetchmsg_arg *)calloc(1, sizeof(*args)))) break;
+ strncpy(args->msgnum, pMsgNum, sizeof(args->msgnum));
+ args->getstatus = FALSE;
//args->bIsRead = strncmp(ptr+8, "READ", 4) == 0;
- pthread_create(( pThreadFunc )FetchMessageThreadSync, args);
+ pthread_create((pThreadFunc)FetchMessageThreadSync, args);
break;
}
}
@@ -2167,14 +2178,14 @@ LONG APIENTRY WndProc(HWND hWndDlg, UINT message, UINT wParam, LONG lParam) break;
}
if (!strncmp(szSkypeMsg, "PROTOCOL ", 9)) {
- if ((protocol=(char)atoi(szSkypeMsg+9))>=3) {
+ if ((protocol = (char)atoi(szSkypeMsg + 9)) >= 3) {
strcpy(cmdMessage, "CHATMESSAGE");
strcpy(cmdPartner, "FROM");
}
bProtocolSet = TRUE;
- if (protocol<5 && !hMenuAddSkypeContact &&
- db_get_b(NULL, SKYPE_PROTONAME, "EnableMenu", 1))
+ if (protocol < 5 && !hMenuAddSkypeContact &&
+ db_get_b(NULL, SKYPE_PROTONAME, "EnableMenu", 1))
{
hMenuAddSkypeContact = add_mainmenu();
}
@@ -2183,72 +2194,72 @@ LONG APIENTRY WndProc(HWND hWndDlg, UINT message, UINT wParam, LONG lParam) SkypeMsgAdd(szSkypeMsg);
ReleaseSemaphore(SkypeMsgReceived, receivers, NULL);
}
- break;
-
- case WM_TIMER:
- if (iReentranceCnt>1) break;
- if (!bIsImoproxy) SkypeSend("PING");
- SkypeMsgCollectGarbage(MAX_MSG_AGE);
- MsgList_CollectGarbage();
- if (receivers>1)
+ break;
+
+ case WM_TIMER:
+ if (iReentranceCnt > 1) break;
+ if (!bIsImoproxy) SkypeSend("PING");
+ SkypeMsgCollectGarbage(MAX_MSG_AGE);
+ MsgList_CollectGarbage();
+ if (receivers > 1)
+ {
+ LOG(("Watchdog WARNING: there are still %d receivers waiting for MSGs", receivers));
+ }
+ break;
+
+ case WM_CLOSE:
+ PostQuitMessage(0);
+ break;
+ case WM_DESTROY:
+ KillTimer(hWndDlg, 1);
+ break;
+ case WM_COPYDATALOCAL:
+ return WndProc(hWndDlg, WM_COPYDATA, wParam, lParam);
+
+ default:
+ if (message == ControlAPIAttach) {
+ // Skype responds with Attach to the discover-message
+ if ((HWND)wParam == hForbiddenSkypeWnd) {
+ ResetEvent(SkypeReady);
+ break;
+ }
+ AttachStatus = lParam;
+ if (lParam == SKYPECONTROLAPI_ATTACH_SUCCESS) {
+ LOG(("AttachStatus success, got hWnd %08X", (HWND)wParam));
+
+ if (hSkypeWnd && (HWND)wParam != hSkypeWnd && IsWindow(hSkypeWnd))
+ hSkypeWndSecondary = (HWND)wParam;
+ else {
+ hSkypeWnd = (HWND)wParam; // Skype gave us the communication window handle
+ hSkypeWndSecondary = NULL;
+ }
+ }
+ if (AttachStatus != SKYPECONTROLAPI_ATTACH_API_AVAILABLE &&
+ AttachStatus != SKYPECONTROLAPI_ATTACH_NOT_AVAILABLE)
{
- LOG(("Watchdog WARNING: there are still %d receivers waiting for MSGs", receivers));
+ LOG(("Attaching: SkypeReady fired, Attachstatus is %d", AttachStatus));
+ SetEvent(SkypeReady);
}
+ AttachStatus = lParam;
break;
-
- case WM_CLOSE:
- PostQuitMessage (0);
- break;
- case WM_DESTROY:
- KillTimer (hWndDlg, 1);
- break;
- case WM_COPYDATALOCAL:
- return WndProc (hWndDlg, WM_COPYDATA, wParam, lParam);
-
- default:
- if(message==ControlAPIAttach) {
- // Skype responds with Attach to the discover-message
- if ((HWND)wParam == hForbiddenSkypeWnd) {
- ResetEvent(SkypeReady);
- break;
- }
- AttachStatus=lParam;
- if (lParam==SKYPECONTROLAPI_ATTACH_SUCCESS) {
- LOG (("AttachStatus success, got hWnd %08X", (HWND)wParam));
-
- if (hSkypeWnd && (HWND)wParam!=hSkypeWnd && IsWindow(hSkypeWnd))
- hSkypeWndSecondary = (HWND)wParam;
- else {
- hSkypeWnd=(HWND)wParam; // Skype gave us the communication window handle
- hSkypeWndSecondary = NULL;
- }
- }
- if (AttachStatus!=SKYPECONTROLAPI_ATTACH_API_AVAILABLE &&
- AttachStatus!=SKYPECONTROLAPI_ATTACH_NOT_AVAILABLE)
- {
- LOG(("Attaching: SkypeReady fired, Attachstatus is %d", AttachStatus));
- SetEvent(SkypeReady);
- }
- AttachStatus=lParam;
- break;
- }
- --iReentranceCnt;
- return DefWindowProc(hWndDlg, message, wParam, lParam);
- }
+ }
+ --iReentranceCnt;
+ return DefWindowProc(hWndDlg, message, wParam, lParam);
+ }
LOG(("WM_COPYDATA exit (%08X)", message));
if (szSkypeMsg) free(szSkypeMsg);
--iReentranceCnt;
return 1;
-}
+}
void TellError(DWORD err) {
LPVOID lpMsgBuf;
-
- FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM, NULL, err,
- MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), (LPTSTR) &lpMsgBuf, 0, NULL);
- MessageBox( NULL, (TCHAR*)lpMsgBuf, _T("GetLastError"), MB_OK|MB_ICONINFORMATION );
- LocalFree( lpMsgBuf );
- return;
+
+ FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM, NULL, err,
+ MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), (LPTSTR)&lpMsgBuf, 0, NULL);
+ MessageBox(NULL, (TCHAR*)lpMsgBuf, _T("GetLastError"), MB_OK | MB_ICONINFORMATION);
+ LocalFree(lpMsgBuf);
+ return;
}
@@ -2261,88 +2272,89 @@ INT_PTR SkypeSetStatus(WPARAM wParam, LPARAM lParam) UNREFERENCED_PARAMETER(lParam);
if (MirandaShuttingDown) return 0;
- LOG (("SkypeSetStatus enter"));
+ LOG(("SkypeSetStatus enter"));
UseCustomCommand = db_get_b(NULL, SKYPE_PROTONAME, "UseCustomCommand", 0);
UnloadOnOffline = db_get_b(NULL, SKYPE_PROTONAME, "UnloadOnOffline", 0);
//if (!SkypeInitialized && !db_get_b(NULL, SKYPE_PROTONAME, "UnloadOnOffline", 0)) return 0;
// Workaround for Skype status-bug
- if ((int)wParam==ID_STATUS_OFFLINE) logoff_contacts(TRUE);
- if (SkypeStatus==(int)wParam) return 0;
+ if ((int)wParam == ID_STATUS_OFFLINE) logoff_contacts(TRUE);
+ if (SkypeStatus == (int)wParam) return 0;
oldStatus = SkypeStatus;
- if ((int)wParam==ID_STATUS_CONNECTING) return 0;
+ if ((int)wParam == ID_STATUS_CONNECTING) return 0;
#ifdef MAPDND
- if ((int)wParam==ID_STATUS_OCCUPIED || (int)wParam==ID_STATUS_ONTHEPHONE) wParam=ID_STATUS_DND;
- if ((int)wParam==ID_STATUS_OUTTOLUNCH) wParam=ID_STATUS_NA;
+ if ((int)wParam == ID_STATUS_OCCUPIED || (int)wParam == ID_STATUS_ONTHEPHONE) wParam = ID_STATUS_DND;
+ if ((int)wParam == ID_STATUS_OUTTOLUNCH) wParam = ID_STATUS_NA;
#endif
#ifdef MAPNA
if ((int)wParam==ID_STATUS_NA) wParam = ID_STATUS_AWAY;
#endif
- RequestedStatus=MirandaStatusToSkype((int)wParam);
-
- /*
- if (SkypeStatus != ID_STATUS_OFFLINE)
- {
- InterlockedExchange((long*)&SkypeStatus, (int)wParam);
- ProtoBroadcastAck(SKYPE_PROTONAME, NULL, ACKTYPE_STATUS, ACKRESULT_SUCCESS, (HANDLE) oldStatus, SkypeStatus);
- }
- */
-
- if ((int)wParam==ID_STATUS_OFFLINE && UnloadOnOffline)
- {
- if(UseCustomCommand)
- {
- DBVARIANT dbv;
- if(!db_get_s(NULL,SKYPE_PROTONAME,"CommandLine",&dbv))
- {
- CloseSkypeAPI(dbv.pszVal);
- db_free(&dbv);
- }
- }
- else
+ RequestedStatus = MirandaStatusToSkype((int)wParam);
+
+ /*
+ if (SkypeStatus != ID_STATUS_OFFLINE)
+ {
+ InterlockedExchange((long*)&SkypeStatus, (int)wParam);
+ ProtoBroadcastAck(SKYPE_PROTONAME, NULL, ACKTYPE_STATUS, ACKRESULT_SUCCESS, (HANDLE) oldStatus, SkypeStatus);
+ }
+ */
+
+ if ((int)wParam == ID_STATUS_OFFLINE && UnloadOnOffline)
+ {
+ if (UseCustomCommand)
+ {
+ DBVARIANT dbv;
+ if (!db_get_s(NULL, SKYPE_PROTONAME, "CommandLine", &dbv))
{
- CloseSkypeAPI(skype_path);
+ CloseSkypeAPI(dbv.pszVal);
+ db_free(&dbv);
}
+ }
+ else
+ {
+ CloseSkypeAPI(skype_path);
+ }
- } else if (AttachStatus==-1)
- {
- pthread_create(LaunchSkypeAndSetStatusThread, (void *)wParam);
- return 0;
- }
+ }
+ else if (AttachStatus == -1)
+ {
+ pthread_create(LaunchSkypeAndSetStatusThread, (void *)wParam);
+ return 0;
+ }
- iRet = SetUserStatus();
- LOG (("SkypeSetStatus exit"));
- return iRet;
+ iRet = SetUserStatus();
+ LOG(("SkypeSetStatus exit"));
+ return iRet;
}
int __stdcall SendBroadcast(MCONTACT hContact, int type, int result, HANDLE hProcess, LPARAM lParam)
{
- ACKDATA ack = { sizeof( ACKDATA ) };
+ ACKDATA ack = { sizeof(ACKDATA) };
ack.szModule = SKYPE_PROTONAME;
ack.hContact = hContact;
ack.type = type;
ack.result = result;
ack.hProcess = hProcess;
ack.lParam = lParam;
- return CallService(MS_PROTO_BROADCASTACK, 0, (LPARAM)&ack );
+ return CallService(MS_PROTO_BROADCASTACK, 0, (LPARAM)&ack);
}
static void __cdecl SkypeGetAwayMessageThread(void *hContact)
{
DBVARIANT dbv;
- if (!db_get_ts((MCONTACT)hContact, "CList", "StatusMsg", &dbv )) {
- SendBroadcast((MCONTACT)hContact, ACKTYPE_AWAYMSG, ACKRESULT_SUCCESS, ( HANDLE )1, ( LPARAM )dbv.ptszVal );
- db_free( &dbv );
+ if (!db_get_ts((MCONTACT)hContact, "CList", "StatusMsg", &dbv)) {
+ SendBroadcast((MCONTACT)hContact, ACKTYPE_AWAYMSG, ACKRESULT_SUCCESS, (HANDLE)1, (LPARAM)dbv.ptszVal);
+ db_free(&dbv);
}
- else SendBroadcast((MCONTACT)hContact, ACKTYPE_AWAYMSG, ACKRESULT_SUCCESS, ( HANDLE )1, ( LPARAM )0 );
+ else SendBroadcast((MCONTACT)hContact, ACKTYPE_AWAYMSG, ACKRESULT_SUCCESS, (HANDLE)1, (LPARAM)0);
}
-INT_PTR SkypeGetAwayMessage(WPARAM wParam,LPARAM lParam)
+INT_PTR SkypeGetAwayMessage(WPARAM wParam, LPARAM lParam)
{
- CCSDATA* ccs = ( CCSDATA* )lParam;
+ CCSDATA* ccs = (CCSDATA*)lParam;
UNREFERENCED_PARAMETER(wParam);
@@ -2356,12 +2368,12 @@ INT_PTR SkypeGetAwayMessage(WPARAM wParam,LPARAM lParam) static int GetFileHash(char* filename)
{
- HANDLE hFile = CreateFileA(filename, GENERIC_READ, FILE_SHARE_READ|FILE_SHARE_WRITE, NULL, OPEN_EXISTING, 0, NULL);
+ HANDLE hFile = CreateFileA(filename, GENERIC_READ, FILE_SHARE_READ | FILE_SHARE_WRITE, NULL, OPEN_EXISTING, 0, NULL);
int remainder = 0, byte, bit;
char data[1024];
DWORD dwRead;
- if(hFile == INVALID_HANDLE_VALUE) return 0;
+ if (hFile == INVALID_HANDLE_VALUE) return 0;
do
{
@@ -2370,11 +2382,11 @@ static int GetFileHash(char* filename) ReadFile(hFile, data, 1024, &dwRead, NULL);
/* loop through each byte of data */
- for (byte = 0; byte < (int) dwRead; ++byte) {
+ for (byte = 0; byte < (int)dwRead; ++byte) {
/* store the next byte into the remainder */
remainder ^= (data[byte] << (WIDTH - 8));
/* calculate for all 8 bits in the byte */
- for ( bit = 8; bit > 0; --bit) {
+ for (bit = 8; bit > 0; --bit) {
/* check if MSB of remainder is a one */
if (remainder & TOPBIT)
remainder = (remainder << 1) ^ POLYNOMIAL;
@@ -2382,7 +2394,7 @@ static int GetFileHash(char* filename) remainder = (remainder << 1);
}
}
- } while(dwRead == 1024);
+ } while (dwRead == 1024);
CloseHandle(hFile);
@@ -2391,10 +2403,10 @@ static int GetFileHash(char* filename) static int _GetFileSize(char* filename)
{
- HANDLE hFile = CreateFileA(filename, GENERIC_READ, FILE_SHARE_READ|FILE_SHARE_WRITE, NULL, OPEN_EXISTING, 0, NULL);
+ HANDLE hFile = CreateFileA(filename, GENERIC_READ, FILE_SHARE_READ | FILE_SHARE_WRITE, NULL, OPEN_EXISTING, 0, NULL);
int size;
- if(hFile == INVALID_HANDLE_VALUE)
+ if (hFile == INVALID_HANDLE_VALUE)
return 0;
size = GetFileSize(hFile, NULL);
CloseHandle(hFile);
@@ -2402,42 +2414,42 @@ static int _GetFileSize(char* filename) }
/* RetrieveUserAvatar
- *
+ *
* Purpose: Get a user avatar from skype itself
* Params : param=(void *)(HANDLE)hContact
*/
void RetrieveUserAvatar(void *param)
{
- MCONTACT hContact = (MCONTACT) param;
+ MCONTACT hContact = (MCONTACT)param;
HANDLE file;
- PROTO_AVATAR_INFORMATION AI={0};
- ACKDATA ack = {0};
+ PROTO_AVATAR_INFORMATION AI = { 0 };
+ ACKDATA ack = { 0 };
DBVARIANT dbv;
- char AvatarFile[MAX_PATH+1], AvatarTmpFile[MAX_PATH+10], *ptr, *pszTempFile;
+ char AvatarFile[MAX_PATH + 1], AvatarTmpFile[MAX_PATH + 10], *ptr, *pszTempFile;
if (hContact == NULL)
return;
// Mount default ack
- ack.cbSize = sizeof( ACKDATA );
+ ack.cbSize = sizeof(ACKDATA);
ack.szModule = SKYPE_PROTONAME;
ack.hContact = hContact;
ack.type = ACKTYPE_AVATAR;
ack.result = ACKRESULT_FAILED;
-
- AI.cbSize = sizeof( AI );
+
+ AI.cbSize = sizeof(AI);
AI.hContact = hContact;
// Get skype name
- if (db_get_s(hContact, SKYPE_PROTONAME, SKYPE_NAME, &dbv) == 0)
+ if (db_get_s(hContact, SKYPE_PROTONAME, SKYPE_NAME, &dbv) == 0)
{
if (dbv.pszVal)
{
// Get filename
FoldersGetCustomPath(hProtocolAvatarsFolder, AvatarFile, sizeof(AvatarFile), DefaultAvatarsFolder);
- if (!*AvatarFile) strcpy (AvatarFile, DefaultAvatarsFolder);
+ if (!*AvatarFile) strcpy(AvatarFile, DefaultAvatarsFolder);
mir_snprintf(AvatarTmpFile, sizeof(AvatarTmpFile), "AVATAR 1 %s\\%s_tmp.jpg", AvatarFile, dbv.pszVal);
- pszTempFile = AvatarTmpFile+9;
+ pszTempFile = AvatarTmpFile + 9;
mir_snprintf(AvatarFile, sizeof(AvatarFile), "%s\\%s.jpg", AvatarFile, dbv.pszVal);
// Just to be sure
@@ -2446,15 +2458,15 @@ void RetrieveUserAvatar(void *param) if (file != INVALID_HANDLE_VALUE)
{
CloseHandle(file);
- if (ptr=SkypeGet ("USER", dbv.pszVal, AvatarTmpFile))
+ if (ptr = SkypeGet("USER", dbv.pszVal, AvatarTmpFile))
{
- if (strncmp(ptr, "ERROR", 5) &&
- GetFileAttributesA(pszTempFile) != INVALID_FILE_ATTRIBUTES)
+ if (strncmp(ptr, "ERROR", 5) &&
+ GetFileAttributesA(pszTempFile) != INVALID_FILE_ATTRIBUTES)
{
ack.result = ACKRESULT_SUCCESS;
// Is no avatar image?
- if (!db_get_b(NULL, SKYPE_PROTONAME, "ShowDefaultSkypeAvatar", 0)
+ if (!db_get_b(NULL, SKYPE_PROTONAME, "ShowDefaultSkypeAvatar", 0)
&& GetFileHash(pszTempFile) == 0x8d34e05d && _GetFileSize(pszTempFile) == 3751)
{
// Has no avatar
@@ -2472,7 +2484,7 @@ void RetrieveUserAvatar(void *param) }
}
- free (ptr);
+ free(ptr);
}
DeleteFileA(pszTempFile);
}
@@ -2480,26 +2492,26 @@ void RetrieveUserAvatar(void *param) }
db_free(&dbv);
}
- CallService( MS_PROTO_BROADCASTACK, 0, ( LPARAM )&ack );
+ CallService(MS_PROTO_BROADCASTACK, 0, (LPARAM)&ack);
}
/* SkypeGetAvatarInfo
- *
+ *
* Purpose: Set user avatar in profile
* Params : wParam=0
* lParam=(LPARAM)(const char*)filename
* Returns: 0 - Success
* -1 - Failure
*/
-INT_PTR SkypeGetAvatarInfo(WPARAM wParam,LPARAM lParam)
+INT_PTR SkypeGetAvatarInfo(WPARAM wParam, LPARAM lParam)
{
DBVARIANT dbv;
- PROTO_AVATAR_INFORMATION* AI = ( PROTO_AVATAR_INFORMATION* )lParam;
+ PROTO_AVATAR_INFORMATION* AI = (PROTO_AVATAR_INFORMATION*)lParam;
if (AI->hContact == NULL) // User
{
- if (!db_get_s(NULL,SKYPE_PROTONAME, "AvatarFile", &dbv))
+ if (!db_get_s(NULL, SKYPE_PROTONAME, "AvatarFile", &dbv))
{
lstrcpynA(AI->filename, dbv.pszVal, sizeof(AI->filename));
db_free(&dbv);
@@ -2511,7 +2523,7 @@ INT_PTR SkypeGetAvatarInfo(WPARAM wParam,LPARAM lParam) else // Contact
{
DBVARIANT dbv;
- char AvatarFile[MAX_PATH+1];
+ char AvatarFile[MAX_PATH + 1];
if (protocol < 7 && !bIsImoproxy)
return GAIR_NOAVATAR;
@@ -2519,11 +2531,11 @@ INT_PTR SkypeGetAvatarInfo(WPARAM wParam,LPARAM lParam) if (wParam & GAIF_FORCE)
{
// Request anyway
- pthread_create(RetrieveUserAvatar, (void *) AI->hContact);
+ pthread_create(RetrieveUserAvatar, (void *)AI->hContact);
return GAIR_WAITFOR;
}
- if (db_get_s(AI->hContact, SKYPE_PROTONAME, SKYPE_NAME, &dbv))
+ if (db_get_s(AI->hContact, SKYPE_PROTONAME, SKYPE_NAME, &dbv))
// No skype name ??
return GAIR_NOAVATAR;
@@ -2542,7 +2554,7 @@ INT_PTR SkypeGetAvatarInfo(WPARAM wParam,LPARAM lParam) // Check if the file exists
if (GetFileAttributesA(AvatarFile) == INVALID_FILE_ATTRIBUTES)
return GAIR_NOAVATAR;
-
+
// Return the avatar
AI->format = PA_FORMAT_JPEG;
strcpy(AI->filename, AvatarFile);
@@ -2552,7 +2564,7 @@ INT_PTR SkypeGetAvatarInfo(WPARAM wParam,LPARAM lParam) /* SkypeGetAvatarCaps
- *
+ *
* Purpose: Query avatar caps for a protocol
* Params : wParam=One of AF_*
* lParam=Depends on wParam
@@ -2560,37 +2572,37 @@ INT_PTR SkypeGetAvatarInfo(WPARAM wParam,LPARAM lParam) */
INT_PTR SkypeGetAvatarCaps(WPARAM wParam, LPARAM lParam)
{
- switch(wParam)
+ switch (wParam)
{
- case AF_MAXSIZE:
- {
- POINT *p = (POINT *) lParam;
- if (p == NULL)
- return -1;
+ case AF_MAXSIZE:
+ {
+ POINT *p = (POINT *)lParam;
+ if (p == NULL)
+ return -1;
- p->x = 96;
- p->y = 96;
- return 0;
- }
- case AF_PROPORTION:
- {
- return PIP_NONE;
- }
- case AF_FORMATSUPPORTED:
- {
- if (lParam == PA_FORMAT_PNG || lParam == PA_FORMAT_JPEG)
- return TRUE;
- else
- return FALSE;
- }
- case AF_ENABLED:
- {
+ p->x = 96;
+ p->y = 96;
+ return 0;
+ }
+ case AF_PROPORTION:
+ {
+ return PIP_NONE;
+ }
+ case AF_FORMATSUPPORTED:
+ {
+ if (lParam == PA_FORMAT_PNG || lParam == PA_FORMAT_JPEG)
return TRUE;
- }
- case AF_DONTNEEDDELAYS:
- {
+ else
return FALSE;
- }
+ }
+ case AF_ENABLED:
+ {
+ return TRUE;
+ }
+ case AF_DONTNEEDDELAYS:
+ {
+ return FALSE;
+ }
}
return -1;
}
@@ -2603,9 +2615,9 @@ INT_PTR SkypeGetStatus(WPARAM wParam, LPARAM lParam) { return SkypeStatus;
}
-INT_PTR SkypeGetInfo(WPARAM wParam,LPARAM lParam) {
- CCSDATA *ccs = (CCSDATA *) lParam;
-
+INT_PTR SkypeGetInfo(WPARAM wParam, LPARAM lParam) {
+ CCSDATA *ccs = (CCSDATA *)lParam;
+
UNREFERENCED_PARAMETER(wParam);
pthread_create(GetInfoThread, (void*)ccs->hContact);
@@ -2613,12 +2625,12 @@ INT_PTR SkypeGetInfo(WPARAM wParam,LPARAM lParam) { }
INT_PTR SkypeAddToList(WPARAM wParam, LPARAM lParam) {
- PROTOSEARCHRESULT *psr=(PROTOSEARCHRESULT*)lParam;
+ PROTOSEARCHRESULT *psr = (PROTOSEARCHRESULT*)lParam;
LOG(("SkypeAddToList Adding API function called"));
- if (psr->cbSize!=sizeof(PROTOSEARCHRESULT) || !psr->nick) return 0;
+ if (psr->cbSize != sizeof(PROTOSEARCHRESULT) || !psr->nick) return 0;
LOG(("SkypeAddToList OK"));
- return (INT_PTR)add_contact(_T2A(psr->nick), wParam);
+ return (INT_PTR)add_contact(_T2A(psr->nick), wParam);
}
INT_PTR SkypeBasicSearch(WPARAM wParam, LPARAM lParam) {
@@ -2626,7 +2638,7 @@ INT_PTR SkypeBasicSearch(WPARAM wParam, LPARAM lParam) { LOG(("SkypeBasicSearch %s", (char *)lParam));
if (!SkypeInitialized) return 0;
- return (hSearchThread=pthread_create(( pThreadFunc )BasicSearchThread, _strdup((char *)lParam)));
+ return (hSearchThread = pthread_create((pThreadFunc)BasicSearchThread, _strdup((char *)lParam)));
}
void MessageSendWatchThread(void *a) {
@@ -2636,117 +2648,121 @@ void MessageSendWatchThread(void *a) { LOG(("MessageSendWatchThread started."));
- str=SkypeRcvMsg(arg->szId, SkypeTime(NULL)-1, arg->hContact, db_get_dw(NULL, "SRMsg", "MessageTimeout", TIMEOUT_MSGSEND));
- InterlockedDecrement (&sendwatchers);
+ str = SkypeRcvMsg(arg->szId, SkypeTime(NULL) - 1, arg->hContact, db_get_dw(NULL, "SRMsg", "MessageTimeout", TIMEOUT_MSGSEND));
+ InterlockedDecrement(&sendwatchers);
if (str)
{
if (!db_get_b(arg->hContact, SKYPE_PROTONAME, "ChatRoom", 0)) {
- if (err=GetSkypeErrorMsg(str)) {
- ProtoBroadcastAck(SKYPE_PROTONAME, arg->hContact, ACKTYPE_MESSAGE, ACKRESULT_FAILED, (HANDLE) 1, (LPARAM)Translate(err));
+ if (err = GetSkypeErrorMsg(str)) {
+ ProtoBroadcastAck(SKYPE_PROTONAME, arg->hContact, ACKTYPE_MESSAGE, ACKRESULT_FAILED, (HANDLE)1, (LPARAM)Translate(err));
free(err);
free(str);
free(arg);
LOG(("MessageSendWatchThread terminated."));
return;
}
- ProtoBroadcastAck(SKYPE_PROTONAME, arg->hContact, ACKTYPE_MESSAGE, ACKRESULT_SUCCESS, (HANDLE) 1, 0);
+ ProtoBroadcastAck(SKYPE_PROTONAME, arg->hContact, ACKTYPE_MESSAGE, ACKRESULT_SUCCESS, (HANDLE)1, 0);
}
free(str);
LOG(("MessageSendWatchThread terminated gracefully."));
}
- free (arg);
+ free(arg);
}
INT_PTR SkypeSendMessage(WPARAM wParam, LPARAM lParam) {
- CCSDATA *ccs = (CCSDATA *) lParam;
+ CCSDATA *ccs = (CCSDATA *)lParam;
DBVARIANT dbv;
- BOOL sendok=TRUE;
- char *msg = (char *) ccs->lParam, *utfmsg=NULL, *mymsgcmd=cmdMessage, szId[16]={0};
+ BOOL sendok = TRUE;
+ char *msg = (char *)ccs->lParam, *utfmsg = NULL, *mymsgcmd = cmdMessage, szId[16] = { 0 };
static DWORD dwMsgNum = 0;
BYTE bIsChatroom = 0 != db_get_b(ccs->hContact, SKYPE_PROTONAME, "ChatRoom", 0);
-
+
UNREFERENCED_PARAMETER(wParam);
if (bIsChatroom)
{
if (db_get_s(ccs->hContact, SKYPE_PROTONAME, "ChatRoomID", &dbv))
return 0;
- mymsgcmd="CHATMESSAGE";
+ mymsgcmd = "CHATMESSAGE";
}
else
{
if (db_get_s(ccs->hContact, SKYPE_PROTONAME, SKYPE_NAME, &dbv))
return 0;
- mymsgcmd="MESSAGE";
+ mymsgcmd = "MESSAGE";
}
-
+
if (ccs->wParam & PREF_UTF) {
utfmsg = msg;
- } else if (ccs->wParam & PREF_UNICODE) {
- utfmsg = (char*)make_utf8_string((WCHAR*)(msg+strlen(msg)+1));
- } else {
- if (utf8_encode(msg, &utfmsg)==-1) utfmsg=NULL;
- }
- if (protocol>=4) {
- InterlockedIncrement ((LONG*)&dwMsgNum);
- sprintf (szId, "#M%d ", dwMsgNum++);
- }
- InterlockedIncrement (&sendwatchers);
- if (!utfmsg || SkypeSend("%s%s %s %s", szId, mymsgcmd, dbv.pszVal, utfmsg)) sendok=FALSE;
- if (utfmsg && utfmsg!=msg) free(utfmsg);
+ }
+ else if (ccs->wParam & PREF_UNICODE) {
+ utfmsg = (char*)make_utf8_string((WCHAR*)(msg + strlen(msg) + 1));
+ }
+ else {
+ if (utf8_encode(msg, &utfmsg) == -1) utfmsg = NULL;
+ }
+ if (protocol >= 4) {
+ InterlockedIncrement((LONG*)&dwMsgNum);
+ sprintf(szId, "#M%d ", dwMsgNum++);
+ }
+ InterlockedIncrement(&sendwatchers);
+ if (!utfmsg || SkypeSend("%s%s %s %s", szId, mymsgcmd, dbv.pszVal, utfmsg)) sendok = FALSE;
+ if (utfmsg && utfmsg != msg) free(utfmsg);
db_free(&dbv);
if (sendok) {
msgsendwt_arg *psendarg = (msgsendwt_arg*)calloc(1, sizeof(msgsendwt_arg));
-
+
if (psendarg) {
psendarg->hContact = ccs->hContact;
- strcpy (psendarg->szId, szId);
+ strcpy(psendarg->szId, szId);
pthread_create(MessageSendWatchThread, psendarg);
- } else InterlockedDecrement (&sendwatchers);
+ }
+ else InterlockedDecrement(&sendwatchers);
return 1;
- } else InterlockedDecrement (&sendwatchers);
- if (!bIsChatroom)
- ProtoBroadcastAck(SKYPE_PROTONAME, ccs->hContact, ACKTYPE_MESSAGE, ACKRESULT_FAILED, (HANDLE) 1, (LPARAM)Translate("Connection to Skype lost"));
+ }
+ else InterlockedDecrement(&sendwatchers);
+ if (!bIsChatroom)
+ ProtoBroadcastAck(SKYPE_PROTONAME, ccs->hContact, ACKTYPE_MESSAGE, ACKRESULT_FAILED, (HANDLE)1, (LPARAM)Translate("Connection to Skype lost"));
return 0;
}
INT_PTR SkypeRecvMessage(WPARAM wParam, LPARAM lParam)
{
- DBEVENTINFO dbei={0};
- CCSDATA *ccs = (CCSDATA *) lParam;
- PROTORECVEVENT *pre = (PROTORECVEVENT *) ccs->lParam;
+ DBEVENTINFO dbei = { 0 };
+ CCSDATA *ccs = (CCSDATA *)lParam;
+ PROTORECVEVENT *pre = (PROTORECVEVENT *)ccs->lParam;
UNREFERENCED_PARAMETER(wParam);
- db_unset(ccs->hContact, "CList", "Hidden");
- dbei.cbSize = sizeof(dbei);
- dbei.szModule = SKYPE_PROTONAME;
- dbei.timestamp = pre->timestamp;
- if (pre->flags & PREF_CREATEREAD) dbei.flags|=DBEF_READ;
- if (pre->flags & PREF_UTF) dbei.flags|=DBEF_UTF;
- dbei.eventType = EVENTTYPE_MESSAGE;
- dbei.cbBlob = strlen(pre->szMessage) + 1;
+ db_unset(ccs->hContact, "CList", "Hidden");
+ dbei.cbSize = sizeof(dbei);
+ dbei.szModule = SKYPE_PROTONAME;
+ dbei.timestamp = pre->timestamp;
+ if (pre->flags & PREF_CREATEREAD) dbei.flags |= DBEF_READ;
+ if (pre->flags & PREF_UTF) dbei.flags |= DBEF_UTF;
+ dbei.eventType = EVENTTYPE_MESSAGE;
+ dbei.cbBlob = strlen(pre->szMessage) + 1;
if (pre->flags & PREF_UNICODE)
- dbei.cbBlob += sizeof( wchar_t )*( (DWORD)wcslen(( wchar_t* )&pre->szMessage[dbei.cbBlob] )+1 );
- dbei.pBlob = (PBYTE) pre->szMessage;
- MsgList_Add (pre->lParam, db_event_add(ccs->hContact, &dbei));
- return 0;
+ dbei.cbBlob += sizeof(wchar_t)*((DWORD)wcslen((wchar_t*)&pre->szMessage[dbei.cbBlob]) + 1);
+ dbei.pBlob = (PBYTE)pre->szMessage;
+ MsgList_Add(pre->lParam, db_event_add(ccs->hContact, &dbei));
+ return 0;
}
INT_PTR SkypeUserIsTyping(WPARAM wParam, LPARAM lParam) {
- DBVARIANT dbv={0};
+ DBVARIANT dbv = { 0 };
MCONTACT hContact = (MCONTACT)wParam;
- if (protocol<5 && !bIsImoproxy) return 0;
+ if (protocol < 5 && !bIsImoproxy) return 0;
if (db_get_s(hContact, SKYPE_PROTONAME, "Typing_Stream", &dbv)) {
if (db_get_s(hContact, SKYPE_PROTONAME, SKYPE_NAME, &dbv) == 0) {
char szCmd[256];
- _snprintf (szCmd, sizeof(szCmd),
+ _snprintf(szCmd, sizeof(szCmd),
"ALTER APPLICATION libpurple_typing CONNECT %s", dbv.pszVal);
- SkypeSend (szCmd);
- db_free (&dbv);
- testfor (szCmd, 2000);
+ SkypeSend(szCmd);
+ db_free(&dbv);
+ testfor(szCmd, 2000);
// TODO: We should somehow cache the typing notify result and send it
// after we got a connection, but in the meantime this notification won't
// get sent on first run
@@ -2754,8 +2770,8 @@ INT_PTR SkypeUserIsTyping(WPARAM wParam, LPARAM lParam) { return 0;
}
- SkypeSend ("ALTER APPLICATION libpurple_typing DATAGRAM %s %s", dbv.pszVal,
- (lParam==PROTOTYPE_SELFTYPING_ON?"PURPLE_TYPING":"PURPLE_NOT_TYPING"));
+ SkypeSend("ALTER APPLICATION libpurple_typing DATAGRAM %s %s", dbv.pszVal,
+ (lParam == PROTOTYPE_SELFTYPING_ON ? "PURPLE_TYPING" : "PURPLE_NOT_TYPING"));
db_free(&dbv);
return 0;
}
@@ -2776,7 +2792,7 @@ INT_PTR SkypeSendAuthRequest(WPARAM wParam, LPARAM lParam) { }
INT_PTR SkypeRecvAuth(WPARAM wParam, LPARAM lParam) {
- DBEVENTINFO dbei = {0};
+ DBEVENTINFO dbei = { 0 };
CCSDATA* ccs = (CCSDATA*)lParam;
PROTORECVEVENT* pre = (PROTORECVEVENT*)ccs->lParam;
@@ -2784,31 +2800,33 @@ INT_PTR SkypeRecvAuth(WPARAM wParam, LPARAM lParam) { db_unset(ccs->hContact, "CList", "Hidden");
- dbei.cbSize = sizeof(dbei);
- dbei.szModule = SKYPE_PROTONAME;
+ dbei.cbSize = sizeof(dbei);
+ dbei.szModule = SKYPE_PROTONAME;
dbei.timestamp = pre->timestamp;
- dbei.flags = ((pre->flags & PREF_CREATEREAD)?DBEF_READ:0);
+ dbei.flags = ((pre->flags & PREF_CREATEREAD) ? DBEF_READ : 0);
dbei.eventType = EVENTTYPE_AUTHREQUEST;
- dbei.cbBlob = pre->lParam;
- dbei.pBlob = (PBYTE)pre->szMessage;
+ dbei.cbBlob = pre->lParam;
+ dbei.pBlob = (PBYTE)pre->szMessage;
db_event_add(NULL, &dbei);
return 0;
}
char *__skypeauth(WPARAM wParam) {
- DBEVENTINFO dbei={0};
+ DBEVENTINFO dbei = { 0 };
if (!SkypeInitialized) return NULL;
dbei.cbSize = sizeof(dbei);
- if ((dbei.cbBlob = db_event_getBlobSize((HANDLE)wParam)==-1 ||
- !(dbei.pBlob = (unsigned char*)malloc(dbei.cbBlob))))
- { return NULL; }
+ if ((dbei.cbBlob = db_event_getBlobSize((HANDLE)wParam) == -1 ||
+ !(dbei.pBlob = (unsigned char*)malloc(dbei.cbBlob))))
+ {
+ return NULL;
+ }
if (db_event_get((HANDLE)wParam, &dbei) ||
dbei.eventType != EVENTTYPE_AUTHREQUEST ||
- strcmp(dbei.szModule, SKYPE_PROTONAME))
+ strcmp(dbei.szModule, SKYPE_PROTONAME))
{
free(dbei.pBlob);
return NULL;
@@ -2821,9 +2839,9 @@ INT_PTR SkypeAuthAllow(WPARAM wParam, LPARAM lParam) { UNREFERENCED_PARAMETER(lParam);
- if (pBlob=__skypeauth(wParam))
- {
- int retval=SkypeSend("SET USER %s ISAUTHORIZED TRUE", pBlob+sizeof(DWORD)+sizeof(HANDLE));
+ if (pBlob = __skypeauth(wParam))
+ {
+ int retval = SkypeSend("SET USER %s ISAUTHORIZED TRUE", pBlob + sizeof(DWORD) + sizeof(HANDLE));
free(pBlob);
if (!retval) return 0;
}
@@ -2835,9 +2853,9 @@ INT_PTR SkypeAuthDeny(WPARAM wParam, LPARAM lParam) { UNREFERENCED_PARAMETER(lParam);
- if (pBlob=__skypeauth(wParam))
- {
- int retval=SkypeSend("SET USER %s ISAUTHORIZED FALSE", pBlob+sizeof(DWORD)+sizeof(HANDLE));
+ if (pBlob = __skypeauth(wParam))
+ {
+ int retval = SkypeSend("SET USER %s ISAUTHORIZED FALSE", pBlob + sizeof(DWORD) + sizeof(HANDLE));
free(pBlob);
if (!retval) return 0;
}
@@ -2850,9 +2868,9 @@ INT_PTR SkypeAddToListByEvent(WPARAM wParam, LPARAM lParam) { UNREFERENCED_PARAMETER(lParam);
- if (pBlob=__skypeauth(wParam))
- {
- MCONTACT hContact=add_contact(pBlob+sizeof(DWORD)+sizeof(HANDLE), LOWORD(wParam));
+ if (pBlob = __skypeauth(wParam))
+ {
+ MCONTACT hContact = add_contact(pBlob + sizeof(DWORD) + sizeof(HANDLE), LOWORD(wParam));
free(pBlob);
if (hContact) return (int)hContact;
}
@@ -2863,7 +2881,7 @@ INT_PTR SkypeRegisterProxy(WPARAM wParam, LPARAM lParam) { UNREFERENCED_PARAMETER(wParam);
if (!lParam) {
- free (pszProxyCallout);
+ free(pszProxyCallout);
pszProxyCallout = NULL;
}
pszProxyCallout = _strdup((char*)lParam);
@@ -2880,10 +2898,10 @@ void CleanupNicknames(char *dummy) { UNREFERENCED_PARAMETER(dummy);
LOG(("CleanupNicknames Cleaning up..."));
- for (hContact=db_find_first();hContact != NULL;hContact=db_find_next(hContact)) {
- szProto = (char*)CallService( MS_PROTO_GETCONTACTBASEPROTO, hContact, 0 );
- if (szProto!=NULL && !strcmp(szProto, SKYPE_PROTONAME) &&
- db_get_b(hContact, SKYPE_PROTONAME, "ChatRoom", 0)==0)
+ for (hContact = db_find_first(); hContact != NULL; hContact = db_find_next(hContact)) {
+ szProto = (char*)CallService(MS_PROTO_GETCONTACTBASEPROTO, hContact, 0);
+ if (szProto != NULL && !strcmp(szProto, SKYPE_PROTONAME) &&
+ db_get_b(hContact, SKYPE_PROTONAME, "ChatRoom", 0) == 0)
{
if (db_get_s(hContact, SKYPE_PROTONAME, SKYPE_NAME, &dbv)) continue;
if (db_get_s(hContact, SKYPE_PROTONAME, "Nick", &dbv2)) {
@@ -2902,21 +2920,21 @@ void CleanupNicknames(char *dummy) { /////////////////////////////////////////////////////////////////////////////////////////
// EnterBitmapFileName - enters a bitmap filename
-int __stdcall EnterBitmapFileName( char* szDest )
+int __stdcall EnterBitmapFileName(char* szDest)
{
- char szFilter[ 512 ];
- OPENFILENAMEA ofn = {0};
+ char szFilter[512];
+ OPENFILENAMEA ofn = { 0 };
*szDest = 0;
- CallService( MS_UTILS_GETBITMAPFILTERSTRINGS, sizeof szFilter, ( LPARAM )szFilter );
- ofn.lStructSize = sizeof( OPENFILENAME );
+ CallService(MS_UTILS_GETBITMAPFILTERSTRINGS, sizeof szFilter, (LPARAM)szFilter);
+ ofn.lStructSize = sizeof(OPENFILENAME);
ofn.lpstrFilter = szFilter;
ofn.lpstrFile = szDest;
ofn.Flags = OFN_FILEMUSTEXIST | OFN_HIDEREADONLY;
ofn.nMaxFile = MAX_PATH;
ofn.nMaxFileTitle = MAX_PATH;
ofn.lpstrDefExt = "bmp";
- if ( !GetOpenFileNameA( &ofn ))
+ if (!GetOpenFileNameA(&ofn))
return 1;
return ERROR_SUCCESS;
@@ -2926,7 +2944,7 @@ int MirandaExit(WPARAM wParam, LPARAM lParam) { UNREFERENCED_PARAMETER(wParam);
UNREFERENCED_PARAMETER(lParam);
- MirandaShuttingDown=TRUE;
+ MirandaShuttingDown = TRUE;
return 0;
}
@@ -2934,20 +2952,20 @@ int OkToExit(WPARAM wParam, LPARAM lParam) { UNREFERENCED_PARAMETER(wParam);
UNREFERENCED_PARAMETER(lParam);
-// logoff_contacts();
- MirandaShuttingDown=TRUE;
+ // logoff_contacts();
+ MirandaShuttingDown = TRUE;
// Trigger all semaphores and events just to be sure that there is no deadlock
ReleaseSemaphore(SkypeMsgReceived, receivers, NULL);
- SetEvent (SkypeReady);
- SetEvent (MessagePumpReady);
+ SetEvent(SkypeReady);
+ SetEvent(MessagePumpReady);
#ifdef SKYPEBUG_OFFLN
SetEvent(GotUserstatus);
#endif
- SetEvent (hBuddyAdded);
+ SetEvent(hBuddyAdded);
- SkypeFlush ();
- PostMessage (g_hWnd, WM_CLOSE, 0, 0);
+ SkypeFlush();
+ PostMessage(g_hWnd, WM_CLOSE, 0, 0);
return 0;
}
@@ -2958,34 +2976,34 @@ struct PLUGINDI { };
// Taken from pluginopts.c and modified
-int EnumOldPluginName(const char *szSetting,LPARAM lParam)
+int EnumOldPluginName(const char *szSetting, LPARAM lParam)
{
- struct PLUGINDI *pdi=(struct PLUGINDI*)lParam;
+ struct PLUGINDI *pdi = (struct PLUGINDI*)lParam;
if (pdi && lParam) {
- pdi->szSettings=(char**)realloc(pdi->szSettings,(pdi->dwCount+1)*sizeof(char*));
- pdi->szSettings[pdi->dwCount++]=_strdup(szSetting);
- }
+ pdi->szSettings = (char**)realloc(pdi->szSettings, (pdi->dwCount + 1)*sizeof(char*));
+ pdi->szSettings[pdi->dwCount++] = _strdup(szSetting);
+ }
return 0;
}
// Are there any Skype users on list?
// 1 --> Yes
// 0 --> No
-int AnySkypeusers(void)
+int AnySkypeusers(void)
{
MCONTACT hContact;
DBVARIANT dbv;
int tCompareResult;
// already on list?
- for (hContact=db_find_first();
- hContact != NULL;
- hContact=db_find_next(hContact))
+ for (hContact = db_find_first();
+ hContact != NULL;
+ hContact = db_find_next(hContact))
{
// GETCONTACTBASEPROTO doesn't work on not loaded protocol, therefore get
// protocol from DB
if (db_get_s(hContact, "Protocol", "p", &dbv)) continue;
- tCompareResult = !strcmp(dbv.pszVal, SKYPE_PROTONAME);
+ tCompareResult = !strcmp(dbv.pszVal, SKYPE_PROTONAME);
db_free(&dbv);
if (tCompareResult) return 1;
}
@@ -2994,103 +3012,103 @@ int AnySkypeusers(void) /*void UpgradeName(char *OldName)
-{
- DBCONTACTENUMSETTINGS cns;
- DBCONTACTWRITESETTING cws;
- DBVARIANT dbv;
- MCONTACT hContact=NULL;
- struct PLUGINDI pdi;
-
- LOG(("Updating old database settings if there are any..."));
- cns.pfnEnumProc=EnumOldPluginName;
- cns.lParam=(LPARAM)&pdi;
- cns.szModule=OldName;
- cns.ofsSettings=0;
-
- hContact = db_find_first();
-
- for ( ;; ) {
- memset(&pdi,0,sizeof(pdi));
- CallService(MS_DB_CONTACT_ENUMSETTINGS,hContact,(LPARAM)&cns);
- // Upgrade Protocol settings to new string
- if (pdi.szSettings) {
- int i;
-
- LOG(("We're currently upgrading..."));
- for (i=0;i<pdi.dwCount;i++) {
- if (!db_get_s(hContact, OldName, pdi.szSettings[i], &dbv)) {
- cws.szModule=SKYPE_PROTONAME;
- cws.szSetting=pdi.szSettings[i];
- cws.value=dbv;
- if (!CallService(MS_DB_CONTACT_WRITESETTING,hContact,(LPARAM)&cws))
- db_unset(hContact,OldName,pdi.szSettings[i]);
- db_free(&dbv);
- }
- free(pdi.szSettings[i]);
- }
- free(pdi.szSettings);
- }
- // Upgrade Protocol assignment, if we are not main contact
- if (hContact && !db_get_s(hContact, "Protocol", "p", &dbv)) {
- if (!strcmp(dbv.pszVal, OldName))
- db_set_s(hContact, "Protocol", "p", SKYPE_PROTONAME);
- db_free(&dbv);
- }
- if (!hContact) break;
- hContact = db_find_next(hContact);
- }
-
- db_set_b(NULL, SKYPE_PROTONAME, "UpgradeDone", (BYTE)1);
- return;
+{
+DBCONTACTENUMSETTINGS cns;
+DBCONTACTWRITESETTING cws;
+DBVARIANT dbv;
+MCONTACT hContact=NULL;
+struct PLUGINDI pdi;
+
+LOG(("Updating old database settings if there are any..."));
+cns.pfnEnumProc=EnumOldPluginName;
+cns.lParam=(LPARAM)&pdi;
+cns.szModule=OldName;
+cns.ofsSettings=0;
+
+hContact = db_find_first();
+
+for ( ;; ) {
+memset(&pdi,0,sizeof(pdi));
+CallService(MS_DB_CONTACT_ENUMSETTINGS,hContact,(LPARAM)&cns);
+// Upgrade Protocol settings to new string
+if (pdi.szSettings) {
+int i;
+
+LOG(("We're currently upgrading..."));
+for (i=0;i<pdi.dwCount;i++) {
+if (!db_get_s(hContact, OldName, pdi.szSettings[i], &dbv)) {
+cws.szModule=SKYPE_PROTONAME;
+cws.szSetting=pdi.szSettings[i];
+cws.value=dbv;
+if (!CallService(MS_DB_CONTACT_WRITESETTING,hContact,(LPARAM)&cws))
+db_unset(hContact,OldName,pdi.szSettings[i]);
+db_free(&dbv);
+}
+free(pdi.szSettings[i]);
+}
+free(pdi.szSettings);
+}
+// Upgrade Protocol assignment, if we are not main contact
+if (hContact && !db_get_s(hContact, "Protocol", "p", &dbv)) {
+if (!strcmp(dbv.pszVal, OldName))
+db_set_s(hContact, "Protocol", "p", SKYPE_PROTONAME);
+db_free(&dbv);
+}
+if (!hContact) break;
+hContact = db_find_next(hContact);
+}
+
+db_set_b(NULL, SKYPE_PROTONAME, "UpgradeDone", (BYTE)1);
+return;
}*/
-void __cdecl MsgPump (char *dummy)
+void __cdecl MsgPump(char *dummy)
{
- MSG msg;
-
- WNDCLASS WndClass;
-
- UNREFERENCED_PARAMETER(dummy);
-
- // Create window class
- WndClass.style = CS_HREDRAW|CS_VREDRAW|CS_DBLCLKS;
- WndClass.lpfnWndProc = (WNDPROC)WndProc;
- WndClass.cbClsExtra = 0;
- WndClass.cbWndExtra = 0;
- WndClass.hInstance = hInst;
- WndClass.hIcon = NULL;
- WndClass.hCursor = NULL;
- WndClass.hbrBackground = NULL;
- WndClass.lpszMenuName = NULL;
- WndClass.lpszClassName = _T("SkypeApiDispatchWindow");
- RegisterClass(&WndClass);
- // Do not check the retval of RegisterClass, because on non-unicode
- // win98 it will fail, as it is a stub that returns false() there
-
- // Create main window
- g_hWnd=CreateWindowEx( WS_EX_APPWINDOW|WS_EX_WINDOWEDGE,
- _T("SkypeApiDispatchWindow"), _T(""), WS_BORDER|WS_SYSMENU|WS_MINIMIZEBOX,
+ MSG msg;
+
+ WNDCLASS WndClass;
+
+ UNREFERENCED_PARAMETER(dummy);
+
+ // Create window class
+ WndClass.style = CS_HREDRAW | CS_VREDRAW | CS_DBLCLKS;
+ WndClass.lpfnWndProc = (WNDPROC)WndProc;
+ WndClass.cbClsExtra = 0;
+ WndClass.cbWndExtra = 0;
+ WndClass.hInstance = hInst;
+ WndClass.hIcon = NULL;
+ WndClass.hCursor = NULL;
+ WndClass.hbrBackground = NULL;
+ WndClass.lpszMenuName = NULL;
+ WndClass.lpszClassName = _T("SkypeApiDispatchWindow");
+ RegisterClass(&WndClass);
+ // Do not check the retval of RegisterClass, because on non-unicode
+ // win98 it will fail, as it is a stub that returns false() there
+
+ // Create main window
+ g_hWnd = CreateWindowEx(WS_EX_APPWINDOW | WS_EX_WINDOWEDGE,
+ _T("SkypeApiDispatchWindow"), _T(""), WS_BORDER | WS_SYSMENU | WS_MINIMIZEBOX,
CW_USEDEFAULT, CW_USEDEFAULT, 128, 128, NULL, 0, (HINSTANCE)WndClass.hInstance, 0);
- LOG (("Created Dispatch window with handle %08X", (long)g_hWnd));
- if (!g_hWnd) {
- OUTPUT(_T("Cannot create window."));
- TellError(GetLastError());
+ LOG(("Created Dispatch window with handle %08X", (long)g_hWnd));
+ if (!g_hWnd) {
+ OUTPUT(_T("Cannot create window."));
+ TellError(GetLastError());
+ SetEvent(MessagePumpReady);
+ return;
+ }
+ ShowWindow(g_hWnd, 0);
+ UpdateWindow(g_hWnd);
+ msgPumpThreadId = GetCurrentThreadId();
SetEvent(MessagePumpReady);
- return;
- }
- ShowWindow(g_hWnd, 0);
- UpdateWindow(g_hWnd);
- msgPumpThreadId = GetCurrentThreadId();
- SetEvent(MessagePumpReady);
-
- LOG (("Messagepump started."));
- while (GetMessage (&msg, NULL, 0, 0) > 0 && !Miranda_Terminated()) {
- TranslateMessage (&msg);
- DispatchMessage (&msg);
- }
- UnregisterClass (WndClass.lpszClassName, hInst);
- LOG (("Messagepump stopped."));
+
+ LOG(("Messagepump started."));
+ while (GetMessage(&msg, NULL, 0, 0) > 0 && !Miranda_Terminated()) {
+ TranslateMessage(&msg);
+ DispatchMessage(&msg);
+ }
+ UnregisterClass(WndClass.lpszClassName, hInst);
+ LOG(("Messagepump stopped."));
}
// DLL Stuff //
@@ -3102,9 +3120,9 @@ extern "C" __declspec(dllexport) PLUGININFOEX* MirandaPluginInfoEx(DWORD mirVers return &pluginInfo;
}
-extern "C" __declspec(dllexport) const MUUID MirandaInterfaces[] = {MUUID_SKYPE_CALL, MIID_LAST};
+extern "C" __declspec(dllexport) const MUUID MirandaInterfaces[] = { MUUID_SKYPE_CALL, MIID_LAST };
-extern "C" BOOL WINAPI DllMain(HINSTANCE hinstDLL,DWORD fdwReason,LPVOID lpvReserved)
+extern "C" BOOL WINAPI DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved)
{
UNREFERENCED_PARAMETER(fdwReason);
UNREFERENCED_PARAMETER(lpvReserved);
@@ -3149,13 +3167,13 @@ extern "C" int __declspec(dllexport) Load(void) LOG(("Load: Skype Plugin loading..."));
// We need to upgrade SKYPE_PROTOCOL internal name to Skype if not already done
-/* if (!db_get_b(NULL, SKYPE_PROTONAME, "UpgradeDone", 0))
- UpgradeName("SKYPE_PROTOCOL");*/
+ /* if (!db_get_b(NULL, SKYPE_PROTONAME, "UpgradeDone", 0))
+ UpgradeName("SKYPE_PROTOCOL");*/
- // Initialisation of Skype MsgQueue must be done because of Cleanup in end and
+ // Initialisation of Skype MsgQueue must be done because of Cleanup in end and
// Mutex is also initialized here.
LOG(("SkypeMsgInit initializing Skype MSG-queue"));
- if (SkypeMsgInit()==-1) {
+ if (SkypeMsgInit() == -1) {
OUTPUT(_T("Memory allocation error on startup."));
return 0;
}
@@ -3165,72 +3183,70 @@ extern "C" int __declspec(dllexport) Load(void) // --> Fixing Issue #0000006 from bugtracker.
if (!db_get_b(NULL, SKYPE_PROTONAME, "FirstRun", 0)) {
db_set_b(NULL, SKYPE_PROTONAME, "FirstRun", 1);
- if (AnySkypeusers()==0) // First run, it seems :)
- if (MessageBox(NULL, TranslateT("This seems to be the first time that you're running the Skype protocol plugin. Do you want to enable the protocol for this Miranda profile? If you chose NO, you can always enable it in the plugin options later."), _T("Welcome!"), MB_ICONQUESTION|MB_YESNO)==IDNO) {
- char path[MAX_PATH], *filename;
- GetModuleFileNameA(hInst, path, sizeof(path));
- if (filename = strrchr(path,'\\')+1)
- db_set_b(NULL,"PluginDisable",filename,1);
- return 0;
+ if (AnySkypeusers() == 0) // First run, it seems :)
+ if (MessageBox(NULL, TranslateT("This seems to be the first time that you're running the Skype protocol plugin. Do you want to enable the protocol for this Miranda profile? If you chose NO, you can always enable it in the plugin options later."), _T("Welcome!"), MB_ICONQUESTION | MB_YESNO) == IDNO) {
+ char path[MAX_PATH], *filename;
+ GetModuleFileNameA(hInst, path, sizeof(path));
+ if (filename = strrchr(path, '\\') + 1)
+ db_set_b(NULL, "PluginDisable", filename, 1);
+ return 0;
}
}
// Check if Skype is installed
- SkypeInstalled=TRUE;
+ SkypeInstalled = TRUE;
UseCustomCommand = (BYTE)db_get_b(NULL, SKYPE_PROTONAME, "UseCustomCommand", 0);
UseSockets = (BOOL)db_get_b(NULL, SKYPE_PROTONAME, "UseSkype2Socket", 0);
- if (!UseSockets && !UseCustomCommand)
+ if (!UseSockets && !UseCustomCommand)
{
- if (RegOpenKeyEx(HKEY_CURRENT_USER, _T("Software\\Skype\\Phone"), 0, KEY_READ, &MyKey)!=ERROR_SUCCESS)
+ if (RegOpenKeyEx(HKEY_CURRENT_USER, _T("Software\\Skype\\Phone"), 0, KEY_READ, &MyKey) != ERROR_SUCCESS)
{
- if (RegOpenKeyEx(HKEY_LOCAL_MACHINE, _T("Software\\Skype\\Phone"), 0, KEY_READ, &MyKey)!=ERROR_SUCCESS)
+ if (RegOpenKeyEx(HKEY_LOCAL_MACHINE, _T("Software\\Skype\\Phone"), 0, KEY_READ, &MyKey) != ERROR_SUCCESS)
{
- SkypeInstalled=FALSE;
+ SkypeInstalled = FALSE;
}
}
-
- Buffsize=sizeof(skype_path);
-
- if (SkypeInstalled==FALSE || RegQueryValueExA(MyKey, "SkypePath", NULL, NULL, (unsigned char *)skype_path, &Buffsize)!=ERROR_SUCCESS)
+
+ Buffsize = sizeof(skype_path);
+
+ if (SkypeInstalled == FALSE || RegQueryValueExA(MyKey, "SkypePath", NULL, NULL, (unsigned char *)skype_path, &Buffsize) != ERROR_SUCCESS)
{
- //OUTPUT("Skype was not found installed :( \nMaybe you are using portable Skype.");
- RegCloseKey(MyKey);
- skype_path[0]=0;
- //return 0;
+ //OUTPUT("Skype was not found installed :( \nMaybe you are using portable Skype.");
+ RegCloseKey(MyKey);
+ skype_path[0] = 0;
+ //return 0;
}
RegCloseKey(MyKey);
}
- WSAStartup(MAKEWORD(2,2), &wsaData);
+ WSAStartup(MAKEWORD(2, 2), &wsaData);
// Start Skype connection
- if (!(ControlAPIAttach=RegisterWindowMessage(_T("SkypeControlAPIAttach"))) || !(ControlAPIDiscover=RegisterWindowMessage(_T("SkypeControlAPIDiscover"))))
+ if (!(ControlAPIAttach = RegisterWindowMessage(_T("SkypeControlAPIAttach"))) || !(ControlAPIDiscover = RegisterWindowMessage(_T("SkypeControlAPIDiscover"))))
{
- OUTPUT(_T("Cannot register Window message."));
- return 0;
+ OUTPUT(_T("Cannot register Window message."));
+ return 0;
}
-
- SkypeMsgReceived=CreateSemaphore(NULL, 0, MAX_MSGS, NULL);
- if (!(SkypeReady=CreateEvent(NULL, TRUE, FALSE, NULL)) ||
- !(MessagePumpReady=CreateEvent(NULL, FALSE, FALSE, NULL)) ||
+
+ SkypeMsgReceived = CreateSemaphore(NULL, 0, MAX_MSGS, NULL);
+ if (!(SkypeReady = CreateEvent(NULL, TRUE, FALSE, NULL)) ||
+ !(MessagePumpReady = CreateEvent(NULL, FALSE, FALSE, NULL)) ||
#ifdef SKYPEBUG_OFFLN
- !(GotUserstatus=CreateEvent(NULL, TRUE, FALSE, NULL)) ||
+ !(GotUserstatus = CreateEvent(NULL, TRUE, FALSE, NULL)) ||
#endif
- !(hBuddyAdded=CreateEvent(NULL, FALSE, FALSE, NULL)) ||
- !(FetchMessageEvent=CreateEvent(NULL, FALSE, TRUE, NULL))) {
- OUTPUT(_T("Unable to create Mutex!"));
+ !(hBuddyAdded = CreateEvent(NULL, FALSE, FALSE, NULL)) ||
+ !(FetchMessageEvent = CreateEvent(NULL, FALSE, TRUE, NULL))) {
+ OUTPUT(_T("Unable to create Mutex!"));
return 0;
}
/* Register the module */
PROTOCOLDESCRIPTOR pd = { PROTOCOLDESCRIPTOR_V3_SIZE };
pd.szName = SKYPE_PROTONAME;
- pd.type = PROTOTYPE_PROTOCOL;
+ pd.type = PROTOTYPE_PROTOCOL;
CallService(MS_PROTO_REGISTERMODULE, 0, (LPARAM)&pd);
- VoiceServiceInit();
-
CreateServices();
HookEvents();
InitVSApi();
@@ -3239,51 +3255,50 @@ extern "C" int __declspec(dllexport) Load(void) HookEvent(ME_SYSTEM_PRESHUTDOWN, PreShutdown);
// Startup Message-pump
- pthread_create (( pThreadFunc )MsgPump, NULL);
+ pthread_create((pThreadFunc)MsgPump, NULL);
WaitForSingleObject(MessagePumpReady, INFINITE);
return 0;
}
-extern "C" int __declspec( dllexport ) Unload(void)
+extern "C" int __declspec(dllexport) Unload(void)
{
BOOL UseCustomCommand = db_get_b(NULL, SKYPE_PROTONAME, "UseCustomCommand", 0);
BOOL Shutdown = db_get_b(NULL, SKYPE_PROTONAME, "Shutdown", 0);
-
- LOG (("Unload started"));
-
- if ( Shutdown && ((skype_path && skype_path[0]) ||UseCustomCommand) ) {
- if(UseCustomCommand)
+ LOG(("Unload started"));
+
+ if (Shutdown && ((skype_path && skype_path[0]) || UseCustomCommand)) {
+
+ if (UseCustomCommand)
{
DBVARIANT dbv;
- if(!db_get_s(NULL,SKYPE_PROTONAME,"CommandLine",&dbv))
+ if (!db_get_s(NULL, SKYPE_PROTONAME, "CommandLine", &dbv))
{
char szAbsolutePath[MAX_PATH];
TranslateMirandaRelativePathToAbsolute(dbv.pszVal, szAbsolutePath, FALSE);
_spawnl(_P_NOWAIT, szAbsolutePath, szAbsolutePath, "/SHUTDOWN", NULL);
- LOG (("Unload Sent /shutdown to %s", szAbsolutePath));
+ LOG(("Unload Sent /shutdown to %s", szAbsolutePath));
db_free(&dbv);
}
}
else
{
_spawnl(_P_NOWAIT, skype_path, skype_path, "/SHUTDOWN", NULL);
- LOG (("Unload Sent /shutdown to %s", skype_path));
+ LOG(("Unload Sent /shutdown to %s", skype_path));
}
-
+
}
SkypeMsgCleanup();
//WSACleanup();
FreeVSApi();
UnhookEvents();
UnhookEvent(hChatEvent);
- UnhookEvent (hChatMenu);
- UnhookEvent (hEvInitChat);
+ UnhookEvent(hChatMenu);
+ UnhookEvent(hEvInitChat);
DestroyHookableEvent(hInitChat);
- VoiceServiceExit();
GCExit();
MsgList_Exit();
@@ -3299,8 +3314,8 @@ extern "C" int __declspec( dllexport ) Unload(void) DeleteCriticalSection(&RingAndEndcallMutex);
DeleteCriticalSection(&QueryThreadMutex);
- SkypeRegisterProxy (0, 0);
- LOG (("Unload: Shutdown complete"));
+ SkypeRegisterProxy(0, 0);
+ LOG(("Unload: Shutdown complete"));
#ifdef _DEBUG
end_debug();
#endif
diff --git a/protocols/SkypeClassic/src/voiceservice.cpp b/protocols/SkypeClassic/src/voiceservice.cpp deleted file mode 100644 index dd49772d2a..0000000000 --- a/protocols/SkypeClassic/src/voiceservice.cpp +++ /dev/null @@ -1,154 +0,0 @@ -#include "skype.h"
-#include "skypeapi.h"
-#include "skypesvc.h"
-#include "voiceservice.h"
-#include <m_voiceservice.h>
-
-#pragma warning (push)
-#pragma warning (disable: 4100) // unreferenced formal parameter
-#include <m_utils.h>
-#pragma warning (pop)
-
-HANDLE hVoiceNotify = NULL;
-BOOL has_voice_service = FALSE;
-
-extern char g_szProtoName[];
-
-
-BOOL HasVoiceService()
-{
- return has_voice_service;
-}
-
-void NofifyVoiceService(MCONTACT hContact, char *callId, int state)
-{
- VOICE_CALL vc = {0};
- vc.cbSize = sizeof(vc);
- vc.szModule = SKYPE_PROTONAME;
- vc.id = callId;
- vc.flags = VOICE_CALL_CONTACT;
- vc.state = state;
- vc.hContact = hContact;
- NotifyEventHooks(hVoiceNotify, (WPARAM) &vc, 0);
-}
-
-static INT_PTR VoiceGetInfo(WPARAM wParam, LPARAM lParam)
-{
- UNREFERENCED_PARAMETER(wParam);
- UNREFERENCED_PARAMETER(lParam);
-
- return VOICE_SUPPORTED | VOICE_CALL_CONTACT | VOICE_CAN_HOLD;
-}
-
-static MCONTACT FindContactByCallId(char *callId)
-{
- MCONTACT hContact;
- int iCmpRes;
- for (hContact = db_find_first(); hContact != NULL; hContact = db_find_next(hContact)) {
- char *szProto = (char*) CallService(MS_PROTO_GETCONTACTBASEPROTO, hContact, 0);
-
- DBVARIANT dbv;
- if (szProto != NULL
- && !strcmp(szProto, SKYPE_PROTONAME)
- && db_get_b(hContact, SKYPE_PROTONAME, "ChatRoom", 0) == 0
- && !db_get_s(hContact, SKYPE_PROTONAME, "CallId", &dbv))
- {
- iCmpRes = strcmp(callId, dbv.pszVal);
- db_free(&dbv);
- if (iCmpRes == 0)
- return hContact;
- }
- }
-
- return NULL;
-}
-
-static INT_PTR VoiceCall(WPARAM wParam, LPARAM lParam)
-{
- DBVARIANT dbv;
-
- UNREFERENCED_PARAMETER(lParam);
-
- if (!wParam) return -1;
-
- if (db_get_s((MCONTACT)wParam, SKYPE_PROTONAME, SKYPE_NAME, &dbv))
- return -1;
-
- SkypeSend("CALL %s", dbv.pszVal);
- db_free (&dbv);
-
- return 0;
-}
-
-static INT_PTR VoiceAnswer(WPARAM wParam, LPARAM lParam)
-{
- char *callId = (char *) wParam;
-
- UNREFERENCED_PARAMETER(lParam);
-
- if (!wParam) return -1;
-
- if (FindContactByCallId(callId) == NULL)
- return -1;
-
- SkypeSend("SET %s STATUS INPROGRESS", callId);
- testfor("ERROR", 200);
-
- return 0;
-}
-
-static INT_PTR VoiceDrop(WPARAM wParam, LPARAM lParam)
-{
- char *callId = (char *) wParam;
-
- UNREFERENCED_PARAMETER(lParam);
-
- if (!wParam) return -1;
-
- if (FindContactByCallId(callId) == NULL)
- return -1;
-
- SkypeSend("SET %s STATUS FINISHED", callId);
-
- return 0;
-}
-
-static INT_PTR VoiceHold(WPARAM wParam, LPARAM lParam)
-{
- char *callId = (char *) wParam;
-
- UNREFERENCED_PARAMETER(lParam);
-
- if (!wParam) return -1;
-
- if (FindContactByCallId(callId) == NULL)
- return -1;
-
- SkypeSend("SET %s STATUS ONHOLD", callId);
-
- return 0;
-}
-
-void VoiceServiceInit()
-{
- // leecher, 26.03.2011: Did this ever work in the old versions??
- char szEvent[MAXMODULELABELLENGTH];
-
- _snprintf (szEvent, sizeof(szEvent), "%s%s", SKYPE_PROTONAME, PE_VOICE_CALL_STATE);
- hVoiceNotify = CreateHookableEvent( szEvent );
- CreateProtoService( PS_VOICE_GETINFO, VoiceGetInfo );
- CreateProtoService( PS_VOICE_CALL, VoiceCall );
- CreateProtoService( PS_VOICE_ANSWERCALL, VoiceAnswer );
- CreateProtoService( PS_VOICE_DROPCALL, VoiceDrop );
- CreateProtoService( PS_VOICE_HOLDCALL, VoiceHold );
-}
-
-void VoiceServiceExit()
-{
- DestroyHookableEvent(hVoiceNotify);
-}
-
-void VoiceServiceModulesLoaded()
-{
- has_voice_service = ServiceExists(MS_VOICESERVICE_REGISTER);
-}
\ No newline at end of file diff --git a/protocols/SkypeClassic/src/voiceservice.h b/protocols/SkypeClassic/src/voiceservice.h deleted file mode 100644 index df1a016100..0000000000 --- a/protocols/SkypeClassic/src/voiceservice.h +++ /dev/null @@ -1,18 +0,0 @@ -#ifndef _VOICESERVICE_H_
-#define _VOICESERVICE_H_
-
-#pragma warning (push)
-#pragma warning (disable: 4201) // nonstandard extension used : nameless struct/union
-#include <m_voice.h>
-#pragma warning (pop)
-
-BOOL HasVoiceService();
-void VoiceServiceInit();
-void VoiceServiceExit();
-void VoiceServiceModulesLoaded();
-void NofifyVoiceService(MCONTACT hContact, char *callId, int state) ;
-
-
-
-#endif // _VOICESERVICE_H_
-
|