From f7d2c07c102d940727b0f053864c04ed32a76ff8 Mon Sep 17 00:00:00 2001 From: Kirill Volinsky Date: Sat, 13 Oct 2012 09:49:24 +0000 Subject: Quotes: folders restructurization git-svn-id: http://svn.miranda-ng.org/main/trunk@1905 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c --- protocols/Quotes/QuoteInfoDlg.cpp | 350 -------------------------------------- 1 file changed, 350 deletions(-) delete mode 100644 protocols/Quotes/QuoteInfoDlg.cpp (limited to 'protocols/Quotes/QuoteInfoDlg.cpp') diff --git a/protocols/Quotes/QuoteInfoDlg.cpp b/protocols/Quotes/QuoteInfoDlg.cpp deleted file mode 100644 index 61b6fb5f11..0000000000 --- a/protocols/Quotes/QuoteInfoDlg.cpp +++ /dev/null @@ -1,350 +0,0 @@ -#include "StdAfx.h" -#include "QuoteInfoDlg.h" -#include "EconomicRateInfo.h" -#include "resource.h" -#include "ModuleInfo.h" -#include "QuotesProviders.h" -#include "IconLib.h" -#include "DBUtils.h" -#include "IQuotesProvider.h" -#include "Locale.h" -#include "SettingsDlg.h" - -// extern HANDLE g_hWindowListEditSettings; -extern HGENMENU g_hMenuEditSettings; -extern HGENMENU g_hMenuOpenLogFile; -#ifdef CHART_IMPLEMENT -extern HGENMENU g_hMenuChart; -#endif -extern HGENMENU g_hMenuRefresh; - - -#define WINDOW_PREFIX_INFO "Quote Info" - - -namespace -{ - HANDLE g_hContact; - - inline bool IsMyContact(HANDLE hContact) - { - CQuotesProviders::TQuotesProviderPtr pProvider = CModuleInfo::GetQuoteProvidersPtr()->GetContactProviderPtr(hContact); - return (NULL != pProvider); - } - - inline HANDLE get_contact(HWND hWnd) - { - return reinterpret_cast(GetWindowLongPtr(hWnd,GWLP_USERDATA)); - } - - - bool get_fetch_time(time_t& rTime,HANDLE hContact) - { - DBVARIANT dbv; - DBCONTACTGETSETTING cgs; - - cgs.szModule=QUOTES_PROTOCOL_NAME; - cgs.szSetting=DB_STR_QUOTE_FETCH_TIME; - cgs.pValue=&dbv; - if(CallService(MS_DB_CONTACT_GETSETTING,reinterpret_cast(hContact),reinterpret_cast(&cgs)) - || (DBVT_DWORD != dbv.type)) - { - return false; - } - - rTime = dbv.dVal; - return true; - } - - INT_PTR CALLBACK QuoteInfoDlgProcImpl(HANDLE hContact,HWND hdlg,UINT msg,WPARAM wParam,LPARAM lParam) - { - switch(msg) - { - case WM_INITDIALOG: - { - assert(hContact); - - TranslateDialogDefault(hdlg); - - tstring sDescription = GetContactName(hContact); - ::SetDlgItemText(hdlg,IDC_STATIC_QUOTE_NAME,sDescription.c_str()); - - double dRate = 0.0; - if(true == Quotes_DBReadDouble(hContact,QUOTES_PROTOCOL_NAME,DB_STR_QUOTE_PREV_VALUE,dRate)) - { - tostringstream o; - o.imbue(GetSystemLocale()); - o << dRate; - - ::SetDlgItemText(hdlg,IDC_EDIT_PREVIOUS_RATE,o.str().c_str()); - } - - dRate = 0.0; - if(true == Quotes_DBReadDouble(hContact,QUOTES_PROTOCOL_NAME,DB_STR_QUOTE_CURR_VALUE,dRate)) - { - tostringstream o; - o.imbue(GetSystemLocale()); - o << dRate; - - ::SetDlgItemText(hdlg,IDC_EDIT_RATE,o.str().c_str()); - } - - time_t nFetchTime; - if(true == get_fetch_time(nFetchTime,hContact)) - { - TCHAR szTime[50]; - if(0 == _tctime_s(szTime,50,&nFetchTime)) - { - szTime[::_tcslen(szTime)-1] = _T('\0'); - ::SetDlgItemText(hdlg,IDC_EDIT_RATE_FETCH_TIME,szTime); - } - } - - CQuotesProviders::TQuotesProviderPtr pProvider = CModuleInfo::GetQuoteProvidersPtr()->GetContactProviderPtr(hContact); - - const IQuotesProvider::CProviderInfo& pi = pProvider->GetInfo(); - tostringstream o; - o << TranslateT("Info provided by") << _T(" ") << pi.m_sName << _T(""); - - ::SetDlgItemText(hdlg,IDC_SYSLINK_PROVIDER,o.str().c_str()); - } - return TRUE; - case WM_NOTIFY: - { - LPNMHDR pNMHDR = reinterpret_cast(lParam); - switch(pNMHDR->code) - { - case NM_CLICK: - if(IDC_SYSLINK_PROVIDER == wParam) - { - PNMLINK pNMLink = reinterpret_cast(pNMHDR); - ::ShellExecute(hdlg,_T("open"),pNMLink->item.szUrl,NULL,NULL,SW_SHOWNORMAL); - } - break; - } - } - break; - } - return FALSE; - } - - INT_PTR CALLBACK QuoteInfoDlgProc(HWND hdlg,UINT msg,WPARAM wParam,LPARAM lParam) - { - return QuoteInfoDlgProcImpl(g_hContact,hdlg,msg,wParam,lParam); - } -} - -int QuotesEventFunc_OnUserInfoInit(WPARAM wp,LPARAM lp) -{ - HANDLE hContact = reinterpret_cast(lp); - if(NULL == hContact) - { - return 0; - } - - - if(false == IsMyContact(hContact)) - { - return 0; - } - - g_hContact = hContact; - - OPTIONSDIALOGPAGE odp = {0}; - odp.cbSize = sizeof( odp ); - odp.hInstance = g_hInstance; - - odp.hIcon = Quotes_LoadIconEx(ICON_STR_MAIN); - odp.pfnDlgProc = QuoteInfoDlgProc; - odp.position = -2000000000; - odp.pszTemplate = MAKEINTRESOURCEA(IDD_DIALOG_QUOTE_INFO); - odp.pszTitle = LPGEN("Quote"); - UserInfo_AddPage(wp, &odp); - return 0; -} - - -INT_PTR QuotesMenu_EditSettings(WPARAM wp,LPARAM lp) -{ - HANDLE hContact = reinterpret_cast(wp); - if(NULL == hContact) - { - return 0; - } - - ShowSettingsDlg(hContact); - - return 0; -} - -namespace -{ - bool get_log_file(HANDLE hContact,tstring& rsLogfile) - { - rsLogfile = GetContactLogFileName(hContact); - return ((rsLogfile.empty()) ? false : true); - } -} - -INT_PTR QuotesMenu_OpenLogFile(WPARAM wp,LPARAM lp) -{ - HANDLE hContact = reinterpret_cast(wp); - if(NULL == hContact) - { - return 0; - } - - tstring sLogFileName; - if ((true == get_log_file(hContact,sLogFileName)) && (false == sLogFileName.empty())) - { - ::ShellExecute(NULL,_T("open"),sLogFileName.c_str(),NULL,NULL,SW_SHOWNORMAL); - } - - return 0; -} - -INT_PTR QuotesMenu_RefreshContact(WPARAM wp,LPARAM lp) -{ - HANDLE hContact = reinterpret_cast(wp); - if(NULL == hContact) - { - return 0; - } - - CQuotesProviders::TQuotesProviderPtr pProvider = CModuleInfo::GetQuoteProvidersPtr()->GetContactProviderPtr(hContact); - if (!pProvider) - { - return 0; - } - - pProvider->RefreshContact(hContact); - - return 0; -} - -namespace -{ - INT_PTR CALLBACK QuoteInfoDlgProc1(HWND hdlg,UINT msg,WPARAM wParam,LPARAM lParam) - { - HANDLE hContact = NULL; - switch(msg) - { - case WM_INITDIALOG: - { - hContact = reinterpret_cast(lParam); - HANDLE hWL = CModuleInfo::GetInstance().GetWindowList(WINDOW_PREFIX_INFO,false); - assert(hWL); - WindowList_Add(hWL,hdlg,hContact); - - ::SetWindowLongPtr(hdlg,GWLP_USERDATA,reinterpret_cast(hContact)); - Utils_RestoreWindowPositionNoSize(hdlg,hContact,QUOTES_MODULE_NAME,WINDOW_PREFIX_INFO); - ::ShowWindow(hdlg,SW_SHOW); - } - break; - case WM_CLOSE: - DestroyWindow(hdlg); - return FALSE; - case WM_DESTROY: - { - HANDLE hContact = get_contact(hdlg); - if(hContact) - { - SetWindowLongPtr(hdlg,GWLP_USERDATA,0); - - HANDLE hWL = CModuleInfo::GetInstance().GetWindowList(WINDOW_PREFIX_INFO,false); - assert(hWL); - WindowList_Remove(hWL,hdlg); - Utils_SaveWindowPosition(hdlg,hContact,QUOTES_MODULE_NAME,WINDOW_PREFIX_INFO); - } - } - return FALSE; - case WM_COMMAND: - if(LOWORD(wParam) == IDOK) - { - ::DestroyWindow(hdlg); - return FALSE; - } - - default: - hContact = get_contact(hdlg); - break; - } - - return QuoteInfoDlgProcImpl(hContact,hdlg,msg,wParam,lParam); - } -} - -int Quotes_OnContactDoubleClick(WPARAM wp,LPARAM/* lp*/) -{ - HANDLE hContact = reinterpret_cast(wp); - if(CModuleInfo::GetQuoteProvidersPtr()->GetContactProviderPtr(hContact)) - { - HANDLE hWL = CModuleInfo::GetInstance().GetWindowList(WINDOW_PREFIX_INFO,true); - assert(hWL); - HWND hWnd = WindowList_Find(hWL,hContact); - if(NULL != hWnd) - { - SetForegroundWindow(hWnd); - SetFocus(hWnd); - } - else if(true == IsMyContact(hContact)) - { - CreateDialogParam(g_hInstance,MAKEINTRESOURCE(IDD_DIALOG_QUOTE_INFO_1),NULL,QuoteInfoDlgProc1,reinterpret_cast(hContact)); - } - - return 1; - } - else - { - return 0; - } -} - -namespace -{ - void enable_menu(HANDLE hMenu,bool bEnable) - { - CLISTMENUITEM clmi = {0}; - clmi.cbSize = sizeof( CLISTMENUITEM ); - clmi.flags = CMIM_FLAGS; - if(false == bEnable) - { - clmi.flags |= /*CMIF_HIDDEN*/CMIF_GRAYED; - } - - CallService(MS_CLIST_MODIFYMENUITEM,reinterpret_cast(hMenu),reinterpret_cast(&clmi)); - } -} - -int Quotes_PrebuildContactMenu(WPARAM wp,LPARAM lp) -{ - enable_menu(g_hMenuEditSettings,false); - enable_menu(g_hMenuOpenLogFile,false); -#ifdef CHART_IMPLEMENT - enable_menu(g_hMenuChart,false); -#endif - enable_menu(g_hMenuRefresh,false); - - HANDLE hContact = reinterpret_cast(wp); - if(NULL == hContact) - { - return 0; - } - - enable_menu(g_hMenuEditSettings,true); - - enable_menu(g_hMenuRefresh,true); - - tstring sLogFileName; - bool bThereIsLogFile = (true == get_log_file(hContact,sLogFileName)) - && (false == sLogFileName.empty()) && (0 == _taccess(sLogFileName.c_str(),04)); - if(true == bThereIsLogFile) - { -#ifdef CHART_IMPLEMENT - enable_menu(g_hMenuChart,true); -#endif - enable_menu(g_hMenuOpenLogFile,true); - } - - return 0; -} -- cgit v1.2.3