[TIMEDATE.CPL][SYSSETUP][TZLIB] Introduce a small static library "tzlib": "TimeZone Utilities Library", and use it in timedate.cpl and syssetup.dll.

This small win32 library provides time-zone utility wrappers around
Win32 functions, that are used by different ReactOS modules such as
timedate.cpl, syssetup.dll, and a possible future 'tzutil' tool.

The code has been extracted from the common code found in both
timedate.cpl and syssetup.dll.
This commit is contained in:
Hermès Bélusca-Maïto 2020-04-19 17:48:25 +02:00
parent 87f6c82d85
commit 7c3e96a26a
No known key found for this signature in database
GPG key ID: 3B2539C65E7B93D0
9 changed files with 605 additions and 539 deletions

View file

@ -23,27 +23,6 @@
#ifndef __SYSSETUP_H_INCLUDED__
#define __SYSSETUP_H_INCLUDED__
// See also dll/cpl/timedate/timezone.c
typedef struct _TZ_INFO
{
LONG Bias;
LONG StandardBias;
LONG DaylightBias;
SYSTEMTIME StandardDate;
SYSTEMTIME DaylightDate;
} TZ_INFO, *PTZ_INFO;
typedef struct _TIMEZONE_ENTRY
{
struct _TIMEZONE_ENTRY *Prev;
struct _TIMEZONE_ENTRY *Next;
WCHAR Description[64]; /* 'Display' */
WCHAR StandardName[32]; /* 'Std' */
WCHAR DaylightName[32]; /* 'Dlt' */
TZ_INFO TimezoneInfo; /* 'TZI' */
ULONG Index;
} TIMEZONE_ENTRY, *PTIMEZONE_ENTRY;
typedef enum _PRODUCT_OPTION
{
PRODUCT_OPTION_SERVER,
@ -67,8 +46,8 @@ typedef struct _SETUPDATA
BOOL DisableGeckoInst;
SYSTEMTIME SystemTime;
PTIMEZONE_ENTRY TimeZoneListHead;
PTIMEZONE_ENTRY TimeZoneListTail;
struct _TIMEZONE_ENTRY* TimeZoneListHead;
struct _TIMEZONE_ENTRY* TimeZoneListTail;
DWORD TimeZoneIndex;
DWORD DisableAutoDaylightTimeSet;
LCID LocaleID;