From 0cda0baab21d4d4bf40c9459f6f5a7e49aa92492 Mon Sep 17 00:00:00 2001 From: Vadim Dashevskiy Date: Tue, 24 Jul 2012 12:45:18 +0000 Subject: VersionInfo, W7UI, WhoUsesMyFiles, YAPP, ZeroNotification: changed folder structure git-svn-id: http://svn.miranda-ng.org/main/trunk@1161 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c --- plugins/WhoUsesMyFiles/wumfplug.c | 634 -------------------------------------- 1 file changed, 634 deletions(-) delete mode 100644 plugins/WhoUsesMyFiles/wumfplug.c (limited to 'plugins/WhoUsesMyFiles/wumfplug.c') diff --git a/plugins/WhoUsesMyFiles/wumfplug.c b/plugins/WhoUsesMyFiles/wumfplug.c deleted file mode 100644 index 0af8d6e817..0000000000 --- a/plugins/WhoUsesMyFiles/wumfplug.c +++ /dev/null @@ -1,634 +0,0 @@ -#include "wumf.h" - -HINSTANCE hInst; -WUMF_OPTIONS WumfOptions = { 0 }; -const char ModuleName[] = "WUMF Plugin"; -HANDLE hMenuItem = 0; -extern HANDLE hLog; -static HWND hDlg; -static HANDLE hWumfBut; -extern PWumf list; -int hLangpack; - -static PLUGININFOEX pluginInfo = { - sizeof(PLUGININFOEX), - "WUMF: Who Use My Files?", - PLUGIN_MAKE_VERSION(0,1,0,1), - "Scans for network users of your shared files and notify you with popups. Uses PopUps Interoperability by Luca Santarelli. PopUps plugin must be activated!", - "Nikolay Redko", - "nike000@users.sf.net", - "© 2003 Nike. Freeware. Please mail me all bugs & your suggestions.", - "http://nightly.miranda.im/", - UNICODE_AWARE, - // {80DCA515-973A-4A7E-8B85-5D8EC88FC5A7} - { 0x80dca515, 0x973a, 0x4a7e, { 0x8b, 0x85, 0x5d, 0x8e, 0xc8, 0x8f, 0xc5, 0xa7 } } -}; - -void LoadOptions() -{ - DBVARIANT dbv = { 0 }; - dbv.type = DBVT_ASCIIZ; - ZeroMemory(&WumfOptions, sizeof(WumfOptions)); - if (DBGetContactSetting(NULL, ModuleName, OPT_FILE, &dbv) == 0) - { - strncpy(WumfOptions.LogFile, dbv.pszVal, 255); - } - else - { - WumfOptions.LogFile[0] = '\0'; - }; - WumfOptions.PopupsEnabled = DBGetContactSettingByte(NULL,ModuleName, POPUPS_ENABLED, TRUE); - - WumfOptions.UseDefColor = DBGetContactSettingByte(NULL,ModuleName, COLOR_DEF, TRUE); - WumfOptions.UseWinColor = DBGetContactSettingByte(NULL,ModuleName, COLOR_WIN, FALSE); - WumfOptions.SelectColor = DBGetContactSettingByte(NULL,ModuleName, COLOR_SET, FALSE); - - WumfOptions.ColorText = DBGetContactSettingDword(NULL,ModuleName, COLOR_TEXT, RGB(0,0,0)); - WumfOptions.ColorBack = DBGetContactSettingDword(NULL,ModuleName, COLOR_BACK, RGB(255,255,255)); - - WumfOptions.DelayDef = DBGetContactSettingByte(NULL,ModuleName, DELAY_DEF, TRUE); - WumfOptions.DelayInf = DBGetContactSettingByte(NULL,ModuleName, DELAY_INF, FALSE); - WumfOptions.DelaySet = DBGetContactSettingByte(NULL,ModuleName, DELAY_SET, FALSE); - WumfOptions.DelaySec = DBGetContactSettingByte(NULL,ModuleName, DELAY_SEC, 0); - if(!ServiceExists(MS_POPUP_ADDPOPUPEX)) - { - WumfOptions.DelayDef = TRUE; - WumfOptions.DelaySet = FALSE; - WumfOptions.DelayInf = FALSE; - } - WumfOptions.LogToFile = DBGetContactSettingByte(NULL,ModuleName, LOG_INTO_FILE, FALSE); - WumfOptions.LogFolders = DBGetContactSettingByte(NULL,ModuleName, LOG_FOLDER, TRUE); - WumfOptions.AlertFolders = DBGetContactSettingByte(NULL,ModuleName, ALERT_FOLDER, TRUE); - WumfOptions.LogUNC = DBGetContactSettingByte(NULL,ModuleName, LOG_UNC, FALSE); - WumfOptions.AlertUNC = DBGetContactSettingByte(NULL,ModuleName, ALERT_UNC, FALSE); - WumfOptions.LogComp = DBGetContactSettingByte(NULL,ModuleName, LOG_COMP, FALSE); - WumfOptions.AlertComp = DBGetContactSettingByte(NULL,ModuleName, ALERT_COMP, FALSE); - return; -} - - -void ExecuteMenu(HWND hWnd) -{ - HMENU hMenu; - POINT point; - - hMenu=CreatePopupMenu(); - if(!hMenu) - { - MessageBox(NULL, "Error crerating menu", "WUMF",MB_OK); - return; - }; - AppendMenu(hMenu,MF_STRING,IDM_ABOUT, "About\0"); - AppendMenu(hMenu,MF_SEPARATOR,0,NULL);//------------------ - AppendMenu(hMenu,MF_STRING,IDM_SHOW, "Show connections\0"); - AppendMenu(hMenu,MF_SEPARATOR,0,NULL);//------------------ - AppendMenu(hMenu,MF_STRING,IDM_EXIT, "Dismiss popup\0"); - - GetCursorPos (&point); - SetForegroundWindow (hWnd); - - TrackPopupMenu (hMenu, TPM_LEFTBUTTON | TPM_RIGHTBUTTON | TPM_RIGHTALIGN | TPM_TOPALIGN, - point.x, point.y, 0, hWnd, NULL); - - PostMessage (hWnd, WM_USER, 0, 0); - DestroyMenu(hMenu); -} - -static int CALLBACK PopupDlgProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) -{ -// PWumf w = NULL; - switch(message) { - case WM_COMMAND: - switch (LOWORD(wParam)) - { - case IDM_ABOUT: - break; - case IDM_EXIT: - PUDeletePopUp(hWnd); - break; - case IDM_SHOW: - CallService(MS_WUMF_CONNECTIONSSHOW, (WPARAM)0, (LPARAM)0); - return TRUE; - } - switch (HIWORD(wParam)) - { - case STN_CLICKED: - PUDeletePopUp(hWnd); - return TRUE; - } - break; - case WM_CONTEXTMENU: -// ExecuteMenu(hWnd); - CallService(MS_WUMF_CONNECTIONSSHOW, (WPARAM)0, (LPARAM)0); - break; - case UM_FREEPLUGINDATA: { -/* w = (PWumf)CallService(MS_POPUP_GETPLUGINDATA, (WPARAM)hWnd,(LPARAM)w); - if(w) free(w);*/ - return TRUE; //TRUE or FALSE is the same, it gets ignored. - } - default: - break; - } - return DefWindowProc(hWnd, message, wParam, lParam); -}; - -void ShowWumfPopUp(PWumf w) -{ - char text[512], title[512]; - - if(!WumfOptions.AlertFolders && (w->dwAttr & FILE_ATTRIBUTE_DIRECTORY)) return; - mir_snprintf(title, sizeof(title)/sizeof(title[0]), "%s (%s)", w->szComp, w->szUser); - mir_snprintf(text, sizeof(text)/sizeof(text[0]), "%s (%s)", w->szPath, w->szPerm); - ShowThePopUp(w, title, text); -} -void ShowThePopUp(PWumf w, LPSTR title, LPSTR text) -{ - POPUPDATAEX ppd = { 0 }; - COLORREF colorBack; - COLORREF colorText; - - colorBack = GetSysColor(COLOR_BTNFACE); - colorText = RGB(0,0,0); - - ppd.lchContact = NULL; - ppd.lchIcon = LoadIcon(hInst,MAKEINTRESOURCE(IDI_DRIVE)); - ppd.iSeconds = -1; - - if(WumfOptions.DelayInf) - { - ppd.iSeconds = -1; - } - else if(WumfOptions.DelayDef) - { - ppd.iSeconds = 0; - } - else if(WumfOptions.DelaySet) - { - ppd.iSeconds = WumfOptions.DelaySec; - } - - lstrcpyn(ppd.lpzContactName, title, 128); - lstrcpyn(ppd.lpzText, text, 128); - if(WumfOptions.UseWinColor) - { - ppd.colorBack = GetSysColor(COLOR_WINDOW); - ppd.colorText = GetSysColor(COLOR_WINDOWTEXT); - } - else if(WumfOptions.UseDefColor) - { - ppd.colorBack = 0L; - ppd.colorText = 0L; - } - else if(WumfOptions.SelectColor) - { - ppd.colorBack = WumfOptions.ColorBack; - ppd.colorText = WumfOptions.ColorText; - } - - ppd.PluginWindowProc = (WNDPROC)PopupDlgProc; - ppd.PluginData = w; - if(CALLSERVICE_NOTFOUND == CallService(MS_POPUP_ADDPOPUPEX, (WPARAM)&ppd, 0)) - CallService(MS_POPUP_ADDPOPUP, (WPARAM)&ppd, 0); -} - -void ShowThePreview() -{ - if(!ServiceExists(MS_POPUP_ADDPOPUP)) - { - MessageBox(NULL,"PopUp plugin not found!", "WUMF plugin", MB_OK|MB_ICONSTOP); - return; - }; - if(WumfOptions.AlertFolders) - { - ShowThePopUp(NULL, "Guest", "C:\\My Share"); - Sleep(300); - ShowThePopUp(NULL, "Guest", "C:\\My Share\\Photos"); - Sleep(300); - } - ShowThePopUp(NULL, "Guest", "C:\\Share\\My Photos\\photo.jpg"); - Sleep(300); - if(WumfOptions.AlertFolders) - { - ShowThePopUp(NULL, "User", "C:\\My Share"); - Sleep(300); - ShowThePopUp(NULL, "User", "C:\\My Share\\Movies"); - Sleep(300); - } - ShowThePopUp(NULL, "User", "C:\\My Share\\Movies\\The Two Towers.avi"); - Sleep(300); - if(WumfOptions.AlertFolders) - { - ShowThePopUp(NULL, "Administrator", "C:\\Distributives"); - Sleep(300); - ShowThePopUp(NULL, "Administrator", "C:\\Distributives\\Win2k"); - Sleep(300); - } - ShowThePopUp(NULL, "Administrator", "C:\\Distributives\\Win2k\\setup.exe"); -}; - - - -BOOL WINAPI DllMain(HINSTANCE hinstDLL,DWORD fdwReason,LPVOID lpvReserved) -{ - hInst=hinstDLL; - return TRUE; -} - -DWORD WINAPI ThreadProc(LPVOID lpParameter) -{ - MSG msg; //Message pump. - if(hDlg) - { - ShowWindow(hDlg, SW_SHOWNORMAL); - SetForegroundWindow(hDlg); - return (int)(1); - } - hDlg = CreateDialog(hInst, MAKEINTRESOURCE(IDD_CONNLIST), NULL, (DLGPROC)ConnDlgProc); - SendMessage(hDlg, WM_SETICON, ICON_SMALL, (LPARAM)LoadIcon(hInst,MAKEINTRESOURCE(IDI_DRIVE))); - ShowWindow(hDlg, SW_SHOW); - while(GetMessage(&msg, NULL, 0, 0) == TRUE) - { - TranslateMessage(&msg); - DispatchMessage(&msg); - } - hDlg = NULL; - ExitThread(0); - - return (int)(1); -} - - -static INT_PTR WumfShowConnections(WPARAM wParam,LPARAM lParam) -{ - DWORD threadID = 0; - CloseHandle(CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadProc, (LPVOID)NULL,0,&threadID)); - Sleep(100); - CallService(MS_TTB_SETBUTTONSTATE, (WPARAM)hWumfBut, TTBST_RELEASED); - return 0; -} - -static INT_PTR WumfMenuCommand(WPARAM wParam,LPARAM lParam) -{ - BOOL MajorTo0121 = FALSE; - int iResult = 0; - CLISTMENUITEM mi = { 0 }; - - mi.cbSize = sizeof(mi); - if (WumfOptions.PopupsEnabled == TRUE) - { - WumfOptions.PopupsEnabled = FALSE; - mi.pszName = Translate("Enable WUMF popups"); - mi.hIcon = LoadIcon(hInst,MAKEINTRESOURCE(IDI_NOPOPUP)); - } - else - { - WumfOptions.PopupsEnabled = TRUE; - mi.pszName = Translate("Disable WUMF popups"); - mi.hIcon = LoadIcon(hInst,MAKEINTRESOURCE(IDI_POPUP)); - } - DBWriteContactSettingByte(NULL, ModuleName, POPUPS_ENABLED, (BYTE)WumfOptions.PopupsEnabled); - mi.flags = CMIM_NAME | CMIM_ICON; - iResult = CallService(MS_CLIST_MODIFYMENUITEM,(WPARAM)hMenuItem,(LPARAM)&mi); - return iResult; -} - -__declspec(dllexport) PLUGININFOEX* MirandaPluginInfoEx(DWORD mirandaVersion) -{ - return &pluginInfo; -} - -void DisableDelayOptions(HWND hwndDlg) -{ - CheckDlgButton(hwndDlg, IDC_DELAY_INF,BST_UNCHECKED); - CheckDlgButton(hwndDlg, IDC_DELAY_SET,BST_UNCHECKED); - CheckDlgButton(hwndDlg, IDC_DELAY_DEF,BST_CHECKED); - EnableWindow(GetDlgItem(hwndDlg, IDC_DELAY_INF), FALSE); - EnableWindow(GetDlgItem(hwndDlg, IDC_DELAY_SET), FALSE); - EnableWindow(GetDlgItem(hwndDlg, IDC_DELAY_DEF), FALSE); - EnableWindow(GetDlgItem(hwndDlg, IDC_DELAY_SEC), FALSE); - EnableWindow(GetDlgItem(hwndDlg, IDC_TX_DELAY_SEC), FALSE); - EnableWindow(GetDlgItem(hwndDlg, IDC_DELAY_NOTE), TRUE); -} -void ChooseFile(HWND hDlg) -{ - OPENFILENAME ofn; // common dialog box structure - char szFile[260]; // buffer for filename - HANDLE hf; // file handle - // Initialize OPENFILENAME - ZeroMemory(&ofn, sizeof(OPENFILENAME)); - ofn.lStructSize = sizeof(OPENFILENAME); - ofn.hwndOwner =hDlg; - szFile[0]=0; - ofn.lpstrFile = szFile; - ofn.nMaxFile = 260; - ofn.lpstrFilter = "All files (*.*)\0*.*\0Text files (*.txt)\0*.txt\0Log files (*.log)\0*.log\0\0"; - ofn.nFilterIndex = 2; - ofn.lpstrFileTitle = NULL; - ofn.nMaxFileTitle = 0; - ofn.lpstrInitialDir = NULL; - ofn.Flags = OFN_CREATEPROMPT; - // Display the Open dialog box. - if (GetSaveFileName(&ofn)==TRUE) - { - hf = CreateFile(ofn.lpstrFile, - GENERIC_WRITE, - 0, - (LPSECURITY_ATTRIBUTES) NULL, - OPEN_ALWAYS, - FILE_ATTRIBUTE_NORMAL, - (HANDLE) NULL); - if(hf!=INVALID_HANDLE_VALUE) - { - SetDlgItemText(hDlg,IDC_FILE,ofn.lpstrFile); - lstrcpyn(WumfOptions.LogFile, ofn.lpstrFile, 255); - CloseHandle(hf); - } - } - else if(CommDlgExtendedError()!=0L) - { - char str[256]; - wsprintf(str,"Common Dialog Error 0x%lx",CommDlgExtendedError()); - MessageBox(hDlg,str,"Wumf plugin",MB_OK|MB_ICONSTOP); - }; - -}; - -INT_PTR CALLBACK OptionsDlgProc(HWND hwndDlg,UINT msg,WPARAM wparam,LPARAM lparam) -{ - WORD wControlId = LOWORD(wparam); - WORD wNotifyCode = HIWORD(wparam); - int seconds; - - switch(msg) - { - case WM_INITDIALOG: - TranslateDialogDefault(hwndDlg); - CheckDlgButton(hwndDlg, IDC_COLOR_WIN, WumfOptions.UseWinColor?BST_CHECKED:BST_UNCHECKED); - CheckDlgButton(hwndDlg, IDC_COLOR_DEF, WumfOptions.UseDefColor?BST_CHECKED:BST_UNCHECKED); - CheckDlgButton(hwndDlg, IDC_COLOR_SET, WumfOptions.SelectColor?BST_CHECKED:BST_UNCHECKED); - EnableWindow(GetDlgItem(hwndDlg, IDC_COLOR_BACK), WumfOptions.SelectColor); - EnableWindow(GetDlgItem(hwndDlg, IDC_COLOR_TEXT), WumfOptions.SelectColor); - if(WumfOptions.SelectColor) - { - SendDlgItemMessage(hwndDlg,IDC_COLOR_BACK,CPM_SETCOLOUR,0,WumfOptions.ColorBack); - SendDlgItemMessage(hwndDlg,IDC_COLOR_TEXT,CPM_SETCOLOUR,0,WumfOptions.ColorText); - } - if(!ServiceExists(MS_POPUP_ADDPOPUPEX)) - { - DisableDelayOptions(hwndDlg); - break; - } - CheckDlgButton(hwndDlg, IDC_DELAY_INF, WumfOptions.DelayInf?BST_CHECKED:BST_UNCHECKED); - CheckDlgButton(hwndDlg, IDC_DELAY_DEF, WumfOptions.DelayDef?BST_CHECKED:BST_UNCHECKED); - CheckDlgButton(hwndDlg, IDC_DELAY_SET, WumfOptions.DelaySet?BST_CHECKED:BST_UNCHECKED); - EnableWindow(GetDlgItem(hwndDlg, IDC_DELAY_SEC), WumfOptions.DelaySet); - SetDlgItemInt(hwndDlg, IDC_DELAY_SEC, WumfOptions.DelaySec, FALSE); - //Logging & alerts - CheckDlgButton(hwndDlg, IDC_LOG_FOLDER, WumfOptions.LogFolders?BST_CHECKED:BST_UNCHECKED); - CheckDlgButton(hwndDlg, IDC_ALERT_FOLDER, WumfOptions.AlertFolders?BST_CHECKED:BST_UNCHECKED); - CheckDlgButton(hwndDlg, IDC_LOG_UNC, WumfOptions.LogUNC?BST_CHECKED:BST_UNCHECKED); - CheckDlgButton(hwndDlg, IDC_ALERT_UNC, WumfOptions.AlertUNC?BST_CHECKED:BST_UNCHECKED); - CheckDlgButton(hwndDlg, IDC_LOG_COMP, WumfOptions.LogComp?BST_CHECKED:BST_UNCHECKED); - - if(WumfOptions.LogToFile) - { - CheckDlgButton(hwndDlg,IDC_LOG_INTO_FILE,BST_CHECKED); - EnableWindow(GetDlgItem(hwndDlg, IDC_FILE), TRUE); - EnableWindow(GetDlgItem(hwndDlg, IDC_SEL_FILE), TRUE); - SetDlgItemText(hwndDlg,IDC_FILE,WumfOptions.LogFile); - } - else - { - CheckDlgButton(hwndDlg,IDC_LOG_INTO_FILE,BST_UNCHECKED); - EnableWindow(GetDlgItem(hwndDlg, IDC_FILE), FALSE); - EnableWindow(GetDlgItem(hwndDlg, IDC_SEL_FILE), FALSE); - SetDlgItemText(hwndDlg,IDC_FILE,""); - }; - - break; - case WM_COMMAND: - switch(wNotifyCode) - { - case BN_CLICKED : - switch(wControlId) - { - case IDC_DELAY_SET: - case IDC_DELAY_DEF: - case IDC_DELAY_INF: - WumfOptions.DelaySet = (IsDlgButtonChecked(hwndDlg, IDC_DELAY_SET) == BST_CHECKED); - WumfOptions.DelayDef = (IsDlgButtonChecked(hwndDlg, IDC_DELAY_DEF) == BST_CHECKED); - WumfOptions.DelayInf = (IsDlgButtonChecked(hwndDlg, IDC_DELAY_INF) == BST_CHECKED); - EnableWindow(GetDlgItem(hwndDlg, IDC_DELAY_SEC), WumfOptions.DelaySet); - SetDlgItemInt(hwndDlg, IDC_DELAY_SEC, WumfOptions.DelaySec, TRUE); - SendMessage(GetParent(hwndDlg), PSM_CHANGED, 0, 0); - break; - case IDC_COLOR_SET: - case IDC_COLOR_DEF: - case IDC_COLOR_WIN: - WumfOptions.SelectColor = (IsDlgButtonChecked(hwndDlg, IDC_COLOR_SET) == BST_CHECKED); - WumfOptions.UseDefColor = (IsDlgButtonChecked(hwndDlg, IDC_COLOR_DEF) == BST_CHECKED); - WumfOptions.UseWinColor = (IsDlgButtonChecked(hwndDlg, IDC_COLOR_WIN) == BST_CHECKED); - EnableWindow(GetDlgItem(hwndDlg, IDC_COLOR_BACK),WumfOptions.SelectColor); - EnableWindow(GetDlgItem(hwndDlg, IDC_COLOR_TEXT), WumfOptions.SelectColor); - SendDlgItemMessage(hwndDlg,IDC_COLOR_BACK,CPM_SETCOLOUR,0,WumfOptions.ColorBack); - SendDlgItemMessage(hwndDlg,IDC_COLOR_TEXT,CPM_SETCOLOUR,0,WumfOptions.ColorText); - SendMessage(GetParent(hwndDlg), PSM_CHANGED, 0, 0); - break; - /* not implemented */ - case IDC_LOG_COMP: - case IDC_ALERT_COMP: - case IDC_LOG_UNC: - case IDC_ALERT_UNC: - MessageBox(NULL, "Not implemented yet...", "WUMF", MB_OK|MB_ICONINFORMATION); - break; - /* end */ - case IDC_LOG_INTO_FILE: - WumfOptions.LogToFile = (IsDlgButtonChecked(hwndDlg, IDC_LOG_INTO_FILE) == BST_CHECKED); - EnableWindow(GetDlgItem(hwndDlg, IDC_FILE), WumfOptions.LogToFile); - EnableWindow(GetDlgItem(hwndDlg, IDC_SEL_FILE), WumfOptions.LogToFile); - SendMessage(GetParent(hwndDlg), PSM_CHANGED, 0, 0); - break; - case IDC_SEL_FILE: - ChooseFile(hwndDlg); - SendMessage(GetParent(hwndDlg), PSM_CHANGED, 0, 0); - break; - case IDC_LOG_FOLDER: - WumfOptions.LogFolders = (IsDlgButtonChecked(hwndDlg, IDC_LOG_FOLDER) == BST_CHECKED); - SendMessage(GetParent(hwndDlg), PSM_CHANGED, 0, 0); - break; - case IDC_ALERT_FOLDER: - WumfOptions.AlertFolders = (IsDlgButtonChecked(hwndDlg, IDC_ALERT_FOLDER) == BST_CHECKED); - break; -/* case IDC_LOG_COMP: - WumfOptions.LogComp = (IsDlgButtonChecked(hwndDlg, IDC_LOG_COMP) == BST_CHECKED); - break; - case IDC_ALERT_COMP: - WumfOptions.AlertComp = (IsDlgButtonChecked(hwndDlg, IDC_ALERT_COMP) == BST_CHECKED); - break; - case IDC_LOG_UNC: - WumfOptions.LogUNC = (IsDlgButtonChecked(hwndDlg, IDC_LOG_UNC) == BST_CHECKED); - break; - case IDC_ALERT_UNC: - WumfOptions.AlertUNC = (IsDlgButtonChecked(hwndDlg, IDC_ALERT_UNC) == BST_CHECKED); - break; -*/ case IDC_PREVIEW: - ShowThePreview(); - break; - case IDC_CONN: - CallService(MS_WUMF_CONNECTIONSSHOW, (WPARAM)0, (LPARAM)0); - break; - } - break; - case CPN_COLOURCHANGED: - WumfOptions.ColorText = SendDlgItemMessage(hwndDlg,IDC_COLOR_TEXT,CPM_GETCOLOUR,0,0); - WumfOptions.ColorBack = SendDlgItemMessage(hwndDlg,IDC_COLOR_BACK,CPM_GETCOLOUR,0,0); - SendMessage(GetParent(hwndDlg), PSM_CHANGED, 0, 0); - break; - case EN_CHANGE: - switch(wControlId) - { - case IDC_DELAY_SEC: - seconds = GetDlgItemInt(hwndDlg, IDC_DELAY_SEC, NULL, FALSE); - if (seconds > LIFETIME_MAX) - WumfOptions.DelaySec = LIFETIME_MAX; - else if (seconds < LIFETIME_MIN) - WumfOptions.DelaySec = LIFETIME_MIN; - else if (seconds <= LIFETIME_MAX || seconds >= LIFETIME_MIN) - WumfOptions.DelaySec = seconds; - SendMessage(GetParent(hwndDlg), PSM_CHANGED, 0, 0); - break; - case IDC_FILE: - GetDlgItemText(hwndDlg,IDC_FILE,WumfOptions.LogFile, sizeof(WumfOptions.LogFile)); - SendMessage(GetParent(hwndDlg), PSM_CHANGED, 0, 0); - break; - } - break; - case EN_KILLFOCUS: - switch(wControlId) - { - case IDC_DELAY_SEC: - SetDlgItemInt(hwndDlg, IDC_DELAY_SEC, WumfOptions.DelaySec, FALSE); - break; - }; - break; - } - break; - case WM_NOTIFY: - switch(((LPNMHDR)lparam)->idFrom) { - case 0: - switch (((LPNMHDR)lparam)->code) { - case PSN_RESET: - LoadOptions(); - return TRUE; - case PSN_APPLY: - DBWriteContactSettingByte(NULL,ModuleName, COLOR_DEF, (BYTE)WumfOptions.UseDefColor); - DBWriteContactSettingByte(NULL,ModuleName, COLOR_WIN, (BYTE)WumfOptions.UseWinColor); - DBWriteContactSettingByte(NULL,ModuleName, COLOR_SET, (BYTE)WumfOptions.SelectColor ); - DBWriteContactSettingDword(NULL,ModuleName, COLOR_TEXT, (DWORD)WumfOptions.ColorText); - DBWriteContactSettingDword(NULL,ModuleName, COLOR_BACK, (DWORD)WumfOptions.ColorBack); - DBWriteContactSettingByte(NULL,ModuleName, DELAY_DEF, (BYTE)WumfOptions.DelayDef); - DBWriteContactSettingByte(NULL,ModuleName, DELAY_INF, (BYTE)WumfOptions.DelayInf); - DBWriteContactSettingByte(NULL,ModuleName, DELAY_SET, (BYTE)WumfOptions.DelaySet); - DBWriteContactSettingByte(NULL,ModuleName, DELAY_SEC, (BYTE)WumfOptions.DelaySec); - DBWriteContactSettingByte(NULL,ModuleName, LOG_INTO_FILE, (BYTE)WumfOptions.LogToFile); - DBWriteContactSettingByte(NULL,ModuleName, LOG_FOLDER, (BYTE)WumfOptions.LogFolders); - DBWriteContactSettingByte(NULL,ModuleName, ALERT_FOLDER, (BYTE)WumfOptions.AlertFolders); - DBWriteContactSettingByte(NULL,ModuleName, LOG_UNC, (BYTE)WumfOptions.LogUNC); - DBWriteContactSettingByte(NULL,ModuleName, ALERT_UNC, (BYTE)WumfOptions.AlertUNC); - DBWriteContactSettingByte(NULL,ModuleName, LOG_COMP, (BYTE)WumfOptions.LogComp); - DBWriteContactSettingByte(NULL,ModuleName, ALERT_COMP, (BYTE)WumfOptions.AlertComp); - GetDlgItemText(hwndDlg,IDC_FILE,WumfOptions.LogFile, 255); - DBWriteContactSettingString(NULL,ModuleName, OPT_FILE, WumfOptions.LogFile); - break; - } - break; - } - break; - } - return 0; -} - -int InitTopToolbar(WPARAM wparam,LPARAM lparam) -{ - TTBButton ttb = { 0 }; - ttb.cbSize = sizeof(ttb); - ttb.hIconUp = LoadIcon(hInst, MAKEINTRESOURCE(IDB_DRIVE)); - ttb.pszService = MS_WUMF_CONNECTIONSSHOW; - ttb.dwFlags = TTBBF_VISIBLE|TTBBF_SHOWTOOLTIP; - ttb.name = ttb.pszTooltipUp = LPGEN("Show connections list"); - hWumfBut = TopToolbar_AddButton(&ttb); - return 0; -} - -int OptionsInit(WPARAM wparam,LPARAM lparam) -{ - OPTIONSDIALOGPAGE odp = { 0 }; - - - odp.cbSize=sizeof(odp); - odp.position=945000000; - odp.hInstance=hInst; - odp.pszTemplate=MAKEINTRESOURCE(IDD_OPTIONS); - odp.pszTitle="Wumf"; - odp.pfnDlgProc=OptionsDlgProc; - odp.pszGroup=Translate("Plugins"); - odp.flags=ODPF_BOLDGROUPS; - Options_AddPage(wparam, &odp); - return 0; -} - -__declspec(dllexport) int Load(void) -{ - CLISTMENUITEM mi = { 0 }; - - mir_getLP(&pluginInfo); - - ZeroMemory(&mi, sizeof(mi)); - mi.cbSize = sizeof(mi); - LoadOptions(); - - CreateServiceFunction(MS_WUMF_SWITCHPOPUP, WumfMenuCommand); - CreateServiceFunction(MS_WUMF_CONNECTIONSSHOW, WumfShowConnections); - if (WumfOptions.PopupsEnabled == FALSE) - { - mi.pszName = Translate("Enable WUMF popups"); - mi.hIcon = LoadIcon(hInst,MAKEINTRESOURCE(IDI_NOPOPUP)); - } - else - { - mi.pszName = Translate("Disable WUMF popups"); - mi.hIcon = LoadIcon(hInst,MAKEINTRESOURCE(IDI_POPUP)); - } - mi.pszService = MS_WUMF_SWITCHPOPUP; - mi.popupPosition = 1999990000; - mi.pszPopupName = Translate("PopUps"); - hMenuItem = (HANDLE)Menu_AddMainMenuItem(&mi); - - mi.pszName = Translate("WUMF: Show connections"); - mi.hIcon = LoadIcon(hInst,MAKEINTRESOURCE(IDI_DRIVE)); - mi.pszService = MS_WUMF_CONNECTIONSSHOW; - mi.popupPosition = 1999990000; - mi.pszPopupName = NULL; - Menu_AddMainMenuItem(&mi); - - HookEvent(ME_OPT_INITIALISE,OptionsInit); - HookEvent(ME_TTB_MODULELOADED, InitTopToolbar); - setlocale( LC_ALL, ".ACP"); -// _setmbcp(_MB_CP_ANSI); - - if (IsUserAnAdmin()) { - SetTimer(NULL, 777, TIME,(TIMERPROC) TimerProc); - } else { - MessageBox(NULL, "Plugin WhoUsesMyFiles requires admin privileges in order to work.", "Miranda IM", MB_OK); - } - - return 0; -} - -__declspec(dllexport) int Unload(void) -{ - KillTimer(NULL, 777); - CloseHandle(hLog); - FreeAll(); - return 0; -} \ No newline at end of file -- cgit v1.2.3