From 9a8ea65ccec0256ecda95581edd69c8d91020867 Mon Sep 17 00:00:00 2001 From: "(no author)" <(no author)@4f64403b-2f21-0410-a795-97e2b3489a10> Date: Mon, 5 Apr 2010 05:44:52 +0000 Subject: Added x64 port Converted to Unicode Reduced size git-svn-id: https://server.scottellis.com.au/svn/mim_plugs@494 4f64403b-2f21-0410-a795-97e2b3489a10 --- worldtime/timezone.cpp | 28 +++++++++++++--------------- 1 file changed, 13 insertions(+), 15 deletions(-) (limited to 'worldtime/timezone.cpp') diff --git a/worldtime/timezone.cpp b/worldtime/timezone.cpp index 5b2c31b..5839229 100644 --- a/worldtime/timezone.cpp +++ b/worldtime/timezone.cpp @@ -1,18 +1,18 @@ #include "common.h" #include "timezone.h" -TimeList timezone_list, geo_timezone_list; +TimeList timezone_list(10), geo_timezone_list(10, LS_TZREG::compare); -bool LS_TZREG::operator<(const LS_TZREG &other) { +int LS_TZREG::compare(const LS_TZREG *p1, const LS_TZREG *p2) { //return Index < other.Index; - return TZI.Bias < other.TZI.Bias; + return p1->TZI.Bias - p2->TZI.Bias; } bool build_timezone_list() { HKEY HKlmtz; HKEY KKtz; DWORD dwIndex = 0; - CHAR tcName[MAX_SIZE]; + TCHAR tcName[MAX_SIZE]; DWORD dwcbName = MAX_SIZE; DWORD dwcbValue; DWORD dwcbSTD; @@ -34,26 +34,27 @@ bool build_timezone_list() { return false; } - strncpy(Temp.tcName, tcName, MAX_SIZE); + _tcsncpy(Temp.tcName, tcName, MAX_SIZE); dwcbValue = MAX_SIZE; - RegQueryValueEx(KKtz,"Display",NULL,NULL,(BYTE*)Temp.tcDisp,&dwcbValue); + RegQueryValueEx(KKtz, _T("Display"), NULL, NULL, (LPBYTE)Temp.tcDisp, &dwcbValue); dwcbDLT = MAX_SIZE; - RegQueryValueEx(KKtz,"Dlt",NULL,NULL,(BYTE*)Temp.tcDLT,&dwcbDLT); + RegQueryValueEx(KKtz, _T("Dlt"), NULL, NULL, (LPBYTE)Temp.tcDLT, &dwcbDLT); dwcbSTD = MAX_SIZE; - RegQueryValueEx(KKtz,"Std",NULL,NULL,(BYTE*)Temp.tcSTD,&dwcbSTD); + RegQueryValueEx(KKtz, _T("Std"), NULL, NULL, (LPBYTE)Temp.tcSTD, &dwcbSTD); dwcbValue = MAX_SIZE; - RegQueryValueEx(KKtz,"MapID",NULL,NULL,(BYTE*)Temp.MapID,&dwcbValue); + RegQueryValueEx(KKtz, _T("MapID"), NULL, NULL, (LPBYTE)Temp.MapID, &dwcbValue); if(!win9x) { dwcbValue = sizeof(DWORD); - RegQueryValueEx(KKtz,"Index",NULL,NULL,(BYTE*)&Temp.Index,&dwcbValue); + RegQueryValueEx(KKtz, _T("Index"), NULL, NULL, (LPBYTE)&Temp.Index, &dwcbValue); } dwcbValue = sizeof(Temp.TZI); - RegQueryValueEx(KKtz,"TZI",NULL,NULL,(BYTE*)&Temp.TZI,&dwcbValue); + RegQueryValueEx(KKtz, _T("TZI"), NULL, NULL, (LPBYTE)&Temp.TZI, &dwcbValue); RegCloseKey(KKtz); Temp.list_index = dwIndex; - timezone_list.push_back(Temp); + timezone_list.insert(new LS_TZREG(Temp)); + geo_timezone_list.insert(new LS_TZREG(Temp)); dwcbName = MAX_SIZE; dwIndex++; @@ -61,9 +62,6 @@ bool build_timezone_list() { RegCloseKey(HKlmtz); - geo_timezone_list = timezone_list; - std::sort(geo_timezone_list.begin(), geo_timezone_list.end()); - return true; } -- cgit v1.2.3