7 #define WIN32_NO_STATUS
17 #include <ndk/exfuncs.h>
21 #define DECIMAL_RADIX 10
24 #define MAX_FMT_SIZE 30
25 #define MAX_STR_SIZE 128
26 #define MAX_SAMPLES_STR_SIZE 70
28 #define MAX_NUMBERDSYMBOL 3
29 #define MAX_NUMBERSDIGITGRSYM 3
30 #define MAX_NUMBERSNSIGNSYM 4
31 #define MAX_NUMBERSLSEP 3
33 #define MAX_CURRENCYSYMBOL 5
34 #define MAX_CURRENCYDECSEP 3
35 #define MAX_CURRENCYGRPSEP 3
37 #define MAX_TIMEFORMAT 80
38 #define MAX_TIMESEPARATOR 3
39 #define MAX_TIMEAMSYMBOL 12
40 #define MAX_TIMEPMSYMBOL 12
42 #define MAX_SHRTDATEFMT 80
43 #define MAX_SHRTDATESEP 3
44 #define MAX_LONGDATEFMT 80
45 #define MAX_YEAR_EDIT 4
47 typedef struct _APPLET
52 APPLET_PROC AppletProc
;
55 typedef struct _GLOBALDATA
57 BOOL bApplyToDefaultUser
;
65 BOOL fUserLocaleChanged
;
66 } GLOBALDATA
, *PGLOBALDATA
;
68 extern HINSTANCE hApplet
;
69 extern DWORD IsUnattendedSetupEnabled
;
70 extern DWORD UnattendLCID
;
73 VOID
PrintErrorMsgBox(UINT msg
);
84 LanguagesPageProc(HWND hwndDlg
, UINT uMsg
, WPARAM wParam
, LPARAM lParam
);
88 AdvancedPageProc(HWND hwndDlg
, UINT uMsg
, WPARAM wParam
, LPARAM lParam
);
90 SetNonUnicodeLang(HWND hwnd
, LCID lcid
);
94 CurrencyPageProc(HWND hwndDlg
, UINT uMsg
, WPARAM wParam
, LPARAM lParam
);
98 DatePageProc(HWND hwndDlg
, UINT uMsg
, WPARAM wParam
, LPARAM lParam
);
102 GeneralPageProc(HWND hwndDlg
, UINT uMsg
, WPARAM wParam
, LPARAM lParam
);
106 InpLocalePageProc(HWND hwndDlg
, UINT uMsg
, WPARAM wParam
, LPARAM lParam
);
110 NumbersPageProc(HWND hwndDlg
, UINT uMsg
, WPARAM wParam
, LPARAM lParam
);
114 TimePageProc(HWND hwndDlg
, UINT uMsg
, WPARAM wParam
, LPARAM lParam
);
118 IsSortPageNeeded(LCID lcid
);
121 SortPageProc(HWND hwndDlg
, UINT uMsg
, WPARAM wParam
, LPARAM lParam
);
125 InsSpacesFmt(LPCTSTR szSourceStr
, LPCTSTR szFmtStr
);
128 ReplaceSubStr(LPCTSTR szSourceStr
, LPCTSTR szStrToReplace
, LPCTSTR szTempl
);
132 SetupApplet(HWND hwndDlg
, PGLOBALDATA pGlobalData
);
135 VOID
AddNewKbLayoutsByLcid(LCID Lcid
);