Home | Info | Community | Development | myReactOS | Contact Us
ReactOS Development > Doxygendate.c
Go to the documentation of this file.
00001 /* 00002 * ReactOS 00003 * Copyright (C) 2004 ReactOS Team 00004 * 00005 * This program is free software; you can redistribute it and/or modify 00006 * it under the terms of the GNU General Public License as published by 00007 * the Free Software Foundation; either version 2 of the License, or 00008 * (at your option) any later version. 00009 * 00010 * This program is distributed in the hope that it will be useful, 00011 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00012 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00013 * GNU General Public License for more details. 00014 * 00015 * You should have received a copy of the GNU General Public License along 00016 * with this program; if not, write to the Free Software Foundation, Inc., 00017 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. 00018 */ 00019 /* $Id: date.c 54535 2011-11-29 14:55:58Z dgorbachev $ 00020 * 00021 * PROJECT: ReactOS International Control Panel 00022 * FILE: dll/cpl/intl/date.c 00023 * PURPOSE: Date property page 00024 * PROGRAMMER: Eric Kohl 00025 */ 00026 00027 #include "intl.h" 00028 00029 /* GLOBALS ******************************************************************/ 00030 00031 #define YEAR_STR_MAX_SIZE 5 00032 #define MAX_SHRT_DATE_SEPARATORS 3 00033 #define STD_DATE_SEP _T(".") 00034 #define YEAR_DIFF (99) 00035 #define MAX_YEAR (9999) 00036 00037 static HWND hwndEnum = NULL; 00038 00039 /* FUNCTIONS ****************************************************************/ 00040 00041 /* If char is 'y' or 'M' or 'd' return TRUE, else FALSE */ 00042 BOOL 00043 isDateCompAl(TCHAR alpha) 00044 { 00045 if ((alpha == _T('y')) || (alpha == _T('M')) || (alpha == _T('d')) || (alpha == _T(' '))) 00046 return TRUE; 00047 else 00048 return FALSE; 00049 } 00050 00051 /* Find first date separator in string */ 00052 LPTSTR 00053 FindDateSep(const TCHAR *szSourceStr) 00054 { 00055 LPTSTR pszFoundSep; 00056 UINT nDateCompCount=0; 00057 UINT nDateSepCount=0; 00058 00059 pszFoundSep = (LPTSTR)malloc(MAX_SAMPLES_STR_SIZE * sizeof(TCHAR)); 00060 00061 _tcscpy(pszFoundSep,STD_DATE_SEP); 00062 00063 while (nDateCompCount < _tcslen(szSourceStr)) 00064 { 00065 if (!isDateCompAl(szSourceStr[nDateCompCount]) && (szSourceStr[nDateCompCount] != _T('\''))) 00066 { 00067 while (!isDateCompAl(szSourceStr[nDateCompCount]) && (szSourceStr[nDateCompCount] != _T('\''))) 00068 { 00069 pszFoundSep[nDateSepCount++] = szSourceStr[nDateCompCount]; 00070 nDateCompCount++; 00071 } 00072 00073 pszFoundSep[nDateSepCount] = _T('\0'); 00074 return pszFoundSep; 00075 } 00076 00077 nDateCompCount++; 00078 } 00079 00080 return pszFoundSep; 00081 } 00082 00083 /* Replace given template in source string with string to replace and return recieved string */ 00084 00085 00086 /* Setted up short date separator to registry */ 00087 static BOOL 00088 SetShortDateSep(HWND hwndDlg, LCID lcid) 00089 { 00090 TCHAR szShortDateSep[MAX_SAMPLES_STR_SIZE]; 00091 INT nSepStrSize; 00092 INT nSepCount; 00093 00094 /* Get setted separator */ 00095 SendMessage(GetDlgItem(hwndDlg, IDC_SHRTDATESEP_COMBO), 00096 WM_GETTEXT, 00097 (WPARAM)MAX_SAMPLES_STR_SIZE, 00098 (LPARAM)szShortDateSep); 00099 00100 /* Get setted separator string size */ 00101 nSepStrSize = _tcslen(szShortDateSep); 00102 00103 /* Check date components */ 00104 for (nSepCount = 0; nSepCount < nSepStrSize; nSepCount++) 00105 { 00106 if (_istalnum(szShortDateSep[nSepCount]) || (szShortDateSep[nSepCount] == _T('\''))) 00107 { 00108 MessageBox(NULL, 00109 _T("Entered short date separator contain incorrect symbol"), 00110 _T("Error"), MB_OK | MB_ICONERROR); 00111 return FALSE; 00112 } 00113 } 00114 00115 /* Save date separator */ 00116 SetLocaleInfo(lcid, LOCALE_SDATE, szShortDateSep); 00117 00118 return TRUE; 00119 } 00120 00121 /* Setted up short date format to registry */ 00122 static BOOL 00123 SetShortDateFormat(HWND hwndDlg, LCID lcid) 00124 { 00125 TCHAR szShortDateFmt[MAX_SAMPLES_STR_SIZE]; 00126 TCHAR szShortDateSep[MAX_SAMPLES_STR_SIZE]; 00127 TCHAR szFindedDateSep[MAX_SAMPLES_STR_SIZE]; 00128 LPTSTR pszResultStr; 00129 BOOL OpenApostFlg = FALSE; 00130 INT nFmtStrSize; 00131 INT nDateCompCount; 00132 00133 /* Get setted format */ 00134 SendMessage(GetDlgItem(hwndDlg, IDC_SHRTDATEFMT_COMBO), 00135 WM_GETTEXT, 00136 (WPARAM)MAX_SAMPLES_STR_SIZE, 00137 (LPARAM)szShortDateFmt); 00138 00139 /* Get setted separator */ 00140 SendMessage(GetDlgItem(hwndDlg, IDC_SHRTDATESEP_COMBO), 00141 WM_GETTEXT, 00142 (WPARAM)MAX_SAMPLES_STR_SIZE, 00143 (LPARAM)szShortDateSep); 00144 00145 /* Get setted format-string size */ 00146 nFmtStrSize = _tcslen(szShortDateFmt); 00147 00148 /* Check date components */ 00149 for (nDateCompCount = 0; nDateCompCount < nFmtStrSize; nDateCompCount++) 00150 { 00151 if (szShortDateFmt[nDateCompCount] == _T('\'')) 00152 { 00153 OpenApostFlg = !OpenApostFlg; 00154 } 00155 00156 if (_istalnum(szShortDateFmt[nDateCompCount]) && 00157 !isDateCompAl(szShortDateFmt[nDateCompCount]) && 00158 !OpenApostFlg) 00159 { 00160 MessageBox(NULL, 00161 _T("Entered short date format contain incorrect symbol"), 00162 _T("Error"), MB_OK | MB_ICONERROR); 00163 return FALSE; 00164 } 00165 00166 } 00167 00168 if (OpenApostFlg) 00169 { 00170 MessageBoxW(NULL, 00171 _T("Entered short date format contain incorrect symbol"), 00172 _T("Error"), MB_OK | MB_ICONERROR); 00173 return FALSE; 00174 } 00175 00176 /* Substring replacement of separator */ 00177 _tcscpy(szFindedDateSep, FindDateSep(szShortDateFmt)); 00178 pszResultStr = ReplaceSubStr(szShortDateFmt, szShortDateSep, szFindedDateSep); 00179 _tcscpy(szShortDateFmt, pszResultStr); 00180 free(pszResultStr); 00181 00182 /* Save short date format */ 00183 SetLocaleInfo(lcid, LOCALE_SSHORTDATE, szShortDateFmt); 00184 00185 return TRUE; 00186 } 00187 00188 /* Setted up long date format to registry */ 00189 static BOOL 00190 SetLongDateFormat(HWND hwndDlg, LCID lcid) 00191 { 00192 TCHAR szLongDateFmt[MAX_SAMPLES_STR_SIZE]; 00193 BOOL OpenApostFlg = FALSE; 00194 INT nFmtStrSize; 00195 INT nDateCompCount; 00196 00197 /* Get setted format */ 00198 SendMessage(GetDlgItem(hwndDlg, IDC_LONGDATEFMT_COMBO), 00199 WM_GETTEXT, 00200 (WPARAM)MAX_SAMPLES_STR_SIZE, 00201 (LPARAM)szLongDateFmt); 00202 00203 /* Get setted format string size */ 00204 nFmtStrSize = _tcslen(szLongDateFmt); 00205 00206 /* Check date components */ 00207 for (nDateCompCount = 0; nDateCompCount < nFmtStrSize; nDateCompCount++) 00208 { 00209 if (szLongDateFmt[nDateCompCount] == _T('\'')) 00210 { 00211 OpenApostFlg = !OpenApostFlg; 00212 } 00213 00214 if (_istalnum(szLongDateFmt[nDateCompCount]) && 00215 !isDateCompAl(szLongDateFmt[nDateCompCount]) && 00216 !OpenApostFlg) 00217 { 00218 MessageBox(NULL, 00219 _T("Entered long date format contain incorrect symbol"), 00220 _T("Error"), MB_OK | MB_ICONERROR); 00221 return FALSE; 00222 } 00223 00224 } 00225 00226 if (OpenApostFlg) 00227 { 00228 MessageBoxW(NULL, 00229 _T("Entered long date format contain incorrect symbol"), 00230 _T("Error"), MB_OK | MB_ICONERROR); 00231 return FALSE; 00232 } 00233 00234 /* Save short date format */ 00235 SetLocaleInfo(lcid, LOCALE_SLONGDATE, szLongDateFmt); 00236 00237 return TRUE; 00238 } 00239 00240 /* Init short date separator control box */ 00241 static VOID 00242 InitShortDateSepSamples(HWND hwndDlg, LCID lcid) 00243 { 00244 LPTSTR ShortDateSepSamples[MAX_SHRT_DATE_SEPARATORS] = 00245 { 00246 _T("."), 00247 _T("/"), 00248 _T("-") 00249 }; 00250 TCHAR szShortDateSep[MAX_SAMPLES_STR_SIZE]; 00251 INT nCBIndex; 00252 INT nRetCode; 00253 00254 /* Get current short date separator */ 00255 GetLocaleInfo(lcid, 00256 LOCALE_SDATE, 00257 szShortDateSep, 00258 MAX_SAMPLES_STR_SIZE); 00259 00260 /* Clear all box content */ 00261 SendMessage(GetDlgItem(hwndDlg, IDC_SHRTDATESEP_COMBO), 00262 CB_RESETCONTENT, 00263 (WPARAM)0, 00264 (LPARAM)0); 00265 00266 /* Create standard list of separators */ 00267 for (nCBIndex = 0; nCBIndex < MAX_SHRT_DATE_SEPARATORS; nCBIndex++) 00268 { 00269 SendMessageW(GetDlgItem(hwndDlg, IDC_SHRTDATESEP_COMBO), 00270 CB_ADDSTRING, 00271 0, 00272 (LPARAM)ShortDateSepSamples[nCBIndex]); 00273 } 00274 00275 /* Set current item to value from registry */ 00276 nRetCode = SendMessage(GetDlgItem(hwndDlg, IDC_SHRTDATESEP_COMBO), 00277 CB_SELECTSTRING, 00278 -1, 00279 (LPARAM)szShortDateSep); 00280 00281 /* If it is not successful, add new value to list and select them */ 00282 if (nRetCode == CB_ERR) 00283 { 00284 SendMessage(GetDlgItem(hwndDlg, IDC_SHRTDATESEP_COMBO), 00285 CB_ADDSTRING, 00286 0, 00287 (LPARAM)szShortDateSep); 00288 SendMessageW(GetDlgItem(hwndDlg, IDC_SHRTDATESEP_COMBO), 00289 CB_SELECTSTRING, 00290 -1, 00291 (LPARAM)szShortDateSep); 00292 } 00293 } 00294 00295 static BOOL CALLBACK 00296 ShortDateFormatEnumProc(LPTSTR lpTimeFormatString) 00297 { 00298 SendMessage(hwndEnum, 00299 CB_ADDSTRING, 00300 0, 00301 (LPARAM)lpTimeFormatString); 00302 00303 return TRUE; 00304 } 00305 00306 /* Init short date control box */ 00307 VOID 00308 InitShortDateCB(HWND hwndDlg, LCID lcid) 00309 { 00310 TCHAR szShortDateFmt[MAX_SAMPLES_STR_SIZE]; 00311 INT nRetCode; 00312 00313 /* Limit text lengths */ 00314 SendMessage(GetDlgItem(hwndDlg, IDC_SHRTDATEFMT_COMBO), 00315 CB_LIMITTEXT, 00316 MAX_SHRTDATEFMT, 00317 0); 00318 SendMessage(GetDlgItem(hwndDlg, IDC_SHRTDATESEP_COMBO), 00319 CB_LIMITTEXT, 00320 MAX_SHRTDATESEP, 00321 0); 00322 00323 /* Get current short date format */ 00324 GetLocaleInfo(lcid, 00325 LOCALE_SSHORTDATE, 00326 szShortDateFmt, 00327 MAX_SAMPLES_STR_SIZE); 00328 00329 /* Clear all box content */ 00330 SendMessage(GetDlgItem(hwndDlg, IDC_SHRTDATEFMT_COMBO), 00331 CB_RESETCONTENT, 00332 (WPARAM)0, 00333 (LPARAM)0); 00334 00335 /* Enumerate short date formats */ 00336 hwndEnum = GetDlgItem(hwndDlg, IDC_SHRTDATEFMT_COMBO); 00337 EnumDateFormats(ShortDateFormatEnumProc, lcid, DATE_SHORTDATE); 00338 00339 /* Set current item to value from registry */ 00340 nRetCode = SendMessage(GetDlgItem(hwndDlg, IDC_SHRTDATEFMT_COMBO), 00341 CB_SELECTSTRING, 00342 -1, 00343 (LPARAM)szShortDateFmt); 00344 00345 /* If it is not successful, add new value to list and select them */ 00346 if (nRetCode == CB_ERR) 00347 { 00348 SendMessage(GetDlgItem(hwndDlg, IDC_SHRTDATEFMT_COMBO), 00349 CB_ADDSTRING, 00350 0, 00351 (LPARAM)szShortDateFmt); 00352 SendMessage(GetDlgItem(hwndDlg, IDC_SHRTDATEFMT_COMBO), 00353 CB_SELECTSTRING, 00354 -1, 00355 (LPARAM)szShortDateFmt); 00356 } 00357 } 00358 00359 /* Init long date control box */ 00360 static VOID 00361 InitLongDateCB(HWND hwndDlg, LCID lcid) 00362 { 00363 TCHAR szLongDateFmt[MAX_SAMPLES_STR_SIZE]; 00364 INT nRetCode; 00365 00366 /* Limit text length */ 00367 SendMessage(GetDlgItem(hwndDlg, IDC_LONGDATEFMT_COMBO), 00368 CB_LIMITTEXT, 00369 MAX_LONGDATEFMT, 00370 0); 00371 00372 /* Get current long date format */ 00373 GetLocaleInfo(lcid, 00374 LOCALE_SLONGDATE, 00375 szLongDateFmt, 00376 MAX_SAMPLES_STR_SIZE); 00377 00378 /* Clear all box content */ 00379 SendMessage(GetDlgItem(hwndDlg, IDC_LONGDATEFMT_COMBO), 00380 CB_RESETCONTENT, 00381 (WPARAM)0, 00382 (LPARAM)0); 00383 00384 /* Enumerate short long formats */ 00385 hwndEnum = GetDlgItem(hwndDlg, IDC_LONGDATEFMT_COMBO); 00386 EnumDateFormats(ShortDateFormatEnumProc, lcid, DATE_LONGDATE); 00387 00388 /* Set current item to value from registry */ 00389 nRetCode = SendMessage(GetDlgItem(hwndDlg, IDC_LONGDATEFMT_COMBO), 00390 CB_SELECTSTRING, 00391 -1, 00392 (LPARAM)szLongDateFmt); 00393 00394 /* If it is not successful, add new value to list and select them */ 00395 if (nRetCode == CB_ERR) 00396 { 00397 SendMessage(GetDlgItem(hwndDlg, IDC_LONGDATEFMT_COMBO), 00398 CB_ADDSTRING, 00399 0, 00400 (LPARAM)szLongDateFmt); 00401 SendMessage(GetDlgItem(hwndDlg, IDC_LONGDATEFMT_COMBO), 00402 CB_SELECTSTRING, 00403 -1, 00404 (LPARAM)szLongDateFmt); 00405 } 00406 } 00407 00408 /* Set up max date value to registry */ 00409 static VOID 00410 SetMaxDate(HWND hwndDlg, LCID lcid) 00411 { 00412 TCHAR szMaxDateVal[YEAR_STR_MAX_SIZE]; 00413 HWND hWndYearSpin; 00414 INT nSpinVal; 00415 00416 hWndYearSpin = GetDlgItem(hwndDlg, IDC_SCR_MAX_YEAR); 00417 00418 /* Get spin value */ 00419 nSpinVal=LOWORD(SendMessage(hWndYearSpin, 00420 UDM_GETPOS, 00421 0, 00422 0)); 00423 00424 /* convert to wide char */ 00425 _itot(nSpinVal, szMaxDateVal, DECIMAL_RADIX); 00426 00427 /* Save max date value */ 00428 SetCalendarInfo(lcid, 00429 CAL_GREGORIAN, 00430 48 , /* CAL_ITWODIGITYEARMAX */ 00431 (LPCTSTR)szMaxDateVal); 00432 } 00433 00434 /* Get max date value from registry set */ 00435 static INT 00436 GetMaxDate(LCID lcid) 00437 { 00438 INT nMaxDateVal = 0; 00439 00440 GetCalendarInfo(lcid, 00441 CAL_GREGORIAN, 00442 CAL_ITWODIGITYEARMAX | CAL_RETURN_NUMBER, 00443 NULL, 00444 0, /* ret type - number */ 00445 (LPDWORD)&nMaxDateVal); 00446 00447 return nMaxDateVal; 00448 } 00449 00450 /* Set's MIN data edit control value to MAX-99 */ 00451 static VOID 00452 SetMinData(HWND hwndDlg) 00453 { 00454 TCHAR OutBuffer[YEAR_STR_MAX_SIZE]; 00455 HWND hWndYearSpin; 00456 INT nSpinVal; 00457 00458 hWndYearSpin = GetDlgItem(hwndDlg, IDC_SCR_MAX_YEAR); 00459 00460 /* Get spin value */ 00461 nSpinVal = LOWORD(SendMessage(hWndYearSpin, 00462 UDM_GETPOS, 00463 0, 00464 0)); 00465 00466 /* Set min year value */ 00467 wsprintf(OutBuffer, _T("%d"), (DWORD)nSpinVal - YEAR_DIFF); 00468 SendMessage(GetDlgItem(hwndDlg, IDC_FIRSTYEAR_EDIT), 00469 WM_SETTEXT, 00470 0, 00471 (LPARAM)OutBuffer); 00472 } 00473 00474 /* Init spin control */ 00475 static VOID 00476 InitMinMaxDateSpin(HWND hwndDlg, LCID lcid) 00477 { 00478 TCHAR OutBuffer[YEAR_STR_MAX_SIZE]; 00479 HWND hWndYearSpin; 00480 00481 /* Limit text lengths */ 00482 SendMessage(GetDlgItem(hwndDlg, IDC_FIRSTYEAR_EDIT), 00483 EM_LIMITTEXT, 00484 MAX_YEAR_EDIT, 00485 0); 00486 SendMessage(GetDlgItem(hwndDlg, IDC_SECONDYEAR_EDIT), 00487 EM_LIMITTEXT, 00488 MAX_YEAR_EDIT, 00489 0); 00490 00491 hWndYearSpin = GetDlgItem(hwndDlg, IDC_SCR_MAX_YEAR); 00492 00493 /* Init max date value */ 00494 wsprintf(OutBuffer, _T("%04d"), (DWORD)GetMaxDate(lcid)); 00495 SendMessage(GetDlgItem(hwndDlg, IDC_SECONDYEAR_EDIT), 00496 WM_SETTEXT, 00497 0, 00498 (LPARAM)OutBuffer); 00499 00500 /* Init min date value */ 00501 wsprintf(OutBuffer, _T("%04d"), (DWORD)GetMaxDate(lcid) - YEAR_DIFF); 00502 SendMessage(GetDlgItem(hwndDlg, IDC_FIRSTYEAR_EDIT), 00503 WM_SETTEXT, 00504 0, 00505 (LPARAM)OutBuffer); 00506 00507 /* Init updown control */ 00508 /* Set bounds */ 00509 SendMessage(hWndYearSpin, 00510 UDM_SETRANGE, 00511 0, 00512 MAKELONG(MAX_YEAR,YEAR_DIFF)); 00513 00514 /* Set current value */ 00515 SendMessage(hWndYearSpin, 00516 UDM_SETPOS, 00517 0, 00518 MAKELONG(GetMaxDate(lcid),0)); 00519 } 00520 00521 /* Update all date locale samples */ 00522 static VOID 00523 UpdateDateLocaleSamples(HWND hwndDlg, 00524 LCID lcidLocale) 00525 { 00526 TCHAR OutBuffer[MAX_SAMPLES_STR_SIZE]; 00527 00528 /* Get short date format sample */ 00529 GetDateFormat(lcidLocale, DATE_SHORTDATE, NULL, NULL, OutBuffer, 00530 MAX_SAMPLES_STR_SIZE); 00531 SendMessage(GetDlgItem(hwndDlg, IDC_SHRTDATESAMPLE_EDIT), WM_SETTEXT, 00532 0, (LPARAM)OutBuffer); 00533 00534 /* Get long date sample */ 00535 GetDateFormat(lcidLocale, DATE_LONGDATE, NULL, NULL, OutBuffer, 00536 MAX_SAMPLES_STR_SIZE); 00537 SendMessage(GetDlgItem(hwndDlg, IDC_LONGDATESAMPLE_EDIT), 00538 WM_SETTEXT, 0, (LPARAM)OutBuffer); 00539 } 00540 00541 /* Property page dialog callback */ 00542 INT_PTR CALLBACK 00543 DatePageProc(HWND hwndDlg, 00544 UINT uMsg, 00545 WPARAM wParam, 00546 LPARAM lParam) 00547 { 00548 PGLOBALDATA pGlobalData; 00549 00550 pGlobalData = (PGLOBALDATA)GetWindowLongPtr(hwndDlg, DWLP_USER); 00551 00552 switch (uMsg) 00553 { 00554 case WM_INITDIALOG: 00555 pGlobalData = (PGLOBALDATA)((LPPROPSHEETPAGE)lParam)->lParam; 00556 SetWindowLongPtr(hwndDlg, DWLP_USER, (LONG_PTR)pGlobalData); 00557 00558 InitMinMaxDateSpin(hwndDlg, pGlobalData->lcid); 00559 UpdateDateLocaleSamples(hwndDlg, pGlobalData->lcid); 00560 InitShortDateCB(hwndDlg, pGlobalData->lcid); 00561 InitLongDateCB(hwndDlg, pGlobalData->lcid); 00562 InitShortDateSepSamples(hwndDlg, pGlobalData->lcid); 00563 /* TODO: Add other calendar types */ 00564 break; 00565 00566 case WM_COMMAND: 00567 { 00568 switch (LOWORD(wParam)) 00569 { 00570 case IDC_SECONDYEAR_EDIT: 00571 { 00572 if(HIWORD(wParam)==EN_CHANGE) 00573 { 00574 SetMinData(hwndDlg); 00575 } 00576 } 00577 case IDC_SCR_MAX_YEAR: 00578 { 00579 /* Set "Apply" button enabled */ 00580 /* FIXME */ 00581 //PropSheet_Changed(GetParent(hwndDlg), hwndDlg); 00582 } 00583 break; 00584 case IDC_CALTYPE_COMBO: 00585 case IDC_HIJCHRON_COMBO: 00586 case IDC_SHRTDATEFMT_COMBO: 00587 case IDC_SHRTDATESEP_COMBO: 00588 case IDC_LONGDATEFMT_COMBO: 00589 { 00590 if (HIWORD(wParam) == CBN_SELCHANGE || HIWORD(wParam) == CBN_EDITCHANGE) 00591 { 00592 /* Set "Apply" button enabled */ 00593 PropSheet_Changed(GetParent(hwndDlg), hwndDlg); 00594 } 00595 } 00596 break; 00597 } 00598 } 00599 break; 00600 case WM_NOTIFY: 00601 { 00602 LPNMHDR lpnm = (LPNMHDR)lParam; 00603 /* If push apply button */ 00604 if (lpnm->code == (UINT)PSN_APPLY) 00605 { 00606 SetMaxDate(hwndDlg, pGlobalData->lcid); 00607 if(!SetShortDateSep(hwndDlg, pGlobalData->lcid)) break; 00608 if(!SetShortDateFormat(hwndDlg, pGlobalData->lcid)) break; 00609 if(!SetLongDateFormat(hwndDlg, pGlobalData->lcid)) break; 00610 InitShortDateCB(hwndDlg, pGlobalData->lcid); 00611 /* FIXME: */ 00612 //Sleep(15); 00613 UpdateDateLocaleSamples(hwndDlg, pGlobalData->lcid); 00614 } 00615 } 00616 break; 00617 } 00618 00619 return FALSE; 00620 } 00621 00622 /* EOF */ Generated on Sun May 27 2012 04:18:11 for ReactOS by
1.7.6.1
|