X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/cdfb1ae1bcacb8327589a09e6a67f8fc1ef5a82e..15d83f726c215b06f2fdd15ece40d66d2f16a01d:/docs/latex/wx/datetime.tex diff --git a/docs/latex/wx/datetime.tex b/docs/latex/wx/datetime.tex index 3baa8dab1c..a20fb7fc65 100644 --- a/docs/latex/wx/datetime.tex +++ b/docs/latex/wx/datetime.tex @@ -6,7 +6,7 @@ %% Created: 07.03.00 %% RCS-ID: $Id$ %% Copyright: (c) Vadim Zeitlin -%% License: wxWindows license +%% License: wxWidgets license %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \section{\class{wxDateTime}}\label{wxdatetime} @@ -180,6 +180,7 @@ No base class \latexignore{\rtfignore{\wxheading{Function groups}}} + \membersection{Static functions} For convenience, all static functions are collected here. These functions @@ -214,6 +215,7 @@ supported. Future versions will support other calendars. \helpref{UNow}{wxdatetimeunow}\\ \helpref{Today}{wxdatetimetoday} + \membersection{Constructors, assignment operators and setters} Constructors and various {\tt Set()} methods are collected here. If you @@ -235,6 +237,7 @@ values were correct as constructors can not return an error code. \helpref{Set(double jdn)}{wxdatetimesetjdn}\\ \helpref{Set(h, m, s, ms)}{wxdatetimesettime}\\ \helpref{Set(day, mon, year, h, m, s, ms)}{wxdatetimesetdate}\\ +\helpref{SetFromDOS(unsigned long ddt)}{wxdatetimesetfromdos}\\ \helpref{ResetTime}{wxdatetimeresettime}\\ \helpref{SetYear}{wxdatetimesetyear}\\ \helpref{SetMonth}{wxdatetimesetmonth}\\ @@ -244,8 +247,8 @@ values were correct as constructors can not return an error code. \helpref{SetSecond}{wxdatetimesetsecond}\\ \helpref{SetMillisecond}{wxdatetimesetmillisecond}\\ \helpref{operator$=$(time\_t)}{wxdatetimeoperatoreqtimet}\\ -\helpref{operator$=$(struct tm)}{wxdatetimeoperatoreqtm} -%\helpref{operator$=$(struct Tm)}{wxdatetimeoperatortm2} +\helpref{operator$=$(struct tm)}{wxdatetimeoperatoreqtm}\rtfsp + \membersection{Accessors} @@ -268,7 +271,9 @@ some more complicated calculations to find the answer are under the \helpref{GetWeekOfMonth}{wxdatetimegetweekofmonth}\\ \helpref{GetYearDay}{wxdatetimegetyearday}\\ \helpref{IsWorkDay}{wxdatetimeisworkday}\\ -\helpref{IsGregorianDate}{wxdatetimeisgregoriandate} +\helpref{IsGregorianDate}{wxdatetimeisgregoriandate}\\ +\helpref{GetAsDOS}{wxdatetimegetasdos} + \membersection{Date comparison} @@ -284,6 +289,7 @@ global operators $>$, $<$ etc taking wxDateTime are defined. \helpref{IsSameTime}{wxdatetimeissametime}\\ \helpref{IsEqualUpTo}{wxdatetimeisequalupto} + \membersection{Date arithmetics} These functions carry out \helpref{arithmetics}{tdatearithm} on the wxDateTime @@ -307,6 +313,7 @@ defined to be equivalent to the second forms of these functions. \helpref{oparator$-=$(wxTimeSpan)}{wxdatetimesubtractts}\\ \helpref{oparator$-=$(wxDateSpan)}{wxdatetimesubtractds} + \membersection{Parsing and formatting dates} These functions convert wxDateTime obejcts to and from text. The @@ -350,6 +357,7 @@ parse the strings such as {\tt "tomorrow"}, {\tt "March first"} and even \helpref{FormatISODate}{wxdatetimeformatisodate}\\ \helpref{FormatISOTime}{wxdatetimeformatisotime} + \membersection{Calendar calculations}\label{wxdatetimecalculations} The functions in this section perform the basic calendar calculations, mostly @@ -369,13 +377,13 @@ wxDateTime -- they only work with the date part of it. \helpref{GetWeekDay}{wxdatetimegetweekday2}\\ \helpref{SetToLastWeekDay}{wxdatetimesettolastweekday}\\ \helpref{GetLastWeekDay}{wxdatetimegetlastweekday}\\ -\helpref{SetToTheWeek}{wxdatetimesettotheweek}\\ -\helpref{GetWeek}{wxdatetimegetweek}\\ +\helpref{SetToWeekOfYear}{wxdatetimesettoweekofyear}\\ \helpref{SetToLastMonthDay}{wxdatetimesettolastmonthday}\\ \helpref{GetLastMonthDay}{wxdatetimegetlastmonthday}\\ \helpref{SetToYearDay}{wxdatetimesettoyearday}\\ \helpref{GetYearDay}{wxdatetimegetyearday} + \membersection{Astronomical/historical functions} Some degree of support for the date units used in astronomy and/or history is @@ -392,6 +400,7 @@ provided. You can construct a wxDateTime object from a \helpref{GetMJD}{wxdatetimegetmjd}\\ \helpref{GetRataDie}{wxdatetimegetratadie} + \membersection{Time zone and DST support} Please see the \helpref{time zone overview}{tdatetimezones} for more @@ -413,6 +422,7 @@ information about time zones. ormally, these functions should be rarely used. %%%%%%%%%%%%%%%%%%%%%%%%%%% static functions %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + \membersection{wxDateTime::ConvertYearToBC}\label{wxdatetimeconvertyeartobc} \func{static int}{ConvertYearToBC}{\param{int }{year}} @@ -430,6 +440,7 @@ This function should be used like this: printf("The year is %d%s", wxDateTime::ConvertYearToBC(y), y > 0 ? "AD" : "BC"); \end{verbatim} + \membersection{wxDateTime::GetAmPmStrings}\label{wxdatetimegetampmstrings} \func{static void}{GetAmPmStrings}{\param{wxString *}{am}, \param{wxString *}{pm}} @@ -438,6 +449,7 @@ Returns the translations of the strings {\tt AM} and {\tt PM} used for time formatting for the current locale. Either of the pointers may be {\tt NULL} if the corresponding value is not needed. + \membersection{wxDateTime::GetBeginDST}\label{wxdatetimegetbegindst} \func{static wxDateTime}{GetBeginDST}{\param{int }{year = Inv\_Year}, \param{Country }{country = Country\_Default}} @@ -450,6 +462,7 @@ by default). This function suffers from limitations described in \helpref{GetEndDST}{wxdatetimegetenddst} + \membersection{wxDateTime::GetCountry}\label{wxdatetimegetcountry} \func{static Country}{GetCountry}{\void} @@ -461,18 +474,21 @@ calculations, for example. \helpref{SetCountry}{wxdatetimesetcountry} + \membersection{wxDateTime::GetCurrentYear}\label{wxdatetimegetcurrentyear} \func{static int}{GetCurrentYear}{\param{Calendar }{cal = Gregorian}} Get the current year in given calendar (only Gregorian is currently supported). + \membersection{wxDateTime::GetCurrentMonth}\label{wxdatetimegetcurrentmonth} \func{static Month}{GetCurrentMonth}{\param{Calendar }{cal = Gregorian}} Get the current month in given calendar (only Gregorian is currently supported). + \membersection{wxDateTime::GetCentury}\label{wxdatetimegetcentury} \func{static int}{GetCentury}{\param{int }{year = Inv\_Year}} @@ -480,6 +496,7 @@ Get the current month in given calendar (only Gregorian is currently supported). Get the current century, i.e. first two digits of the year, in given calendar (only Gregorian is currently supported). + \membersection{wxDateTime::GetEndDST}\label{wxdatetimegetenddst} \func{static wxDateTime}{GetEndDST}{\param{int }{year = Inv\_Year}, \param{Country }{country = Country\_Default}} @@ -491,6 +508,7 @@ default). \helpref{GetBeginDST}{wxdatetimegetbegindst} + \membersection{wxDateTime::GetMonthName}\label{wxdatetimegetmonthname} \func{static wxString}{GetMonthName}{\param{Month }{month}, \param{NameFlags }{flags = Name\_Full}} @@ -502,6 +520,7 @@ given month. \helpref{GetWeekDayName}{wxdatetimegetweekdayname} + \membersection{wxDateTime::GetNumberOfDays}\label{wxdatetimegetnumberofdays} \func{static wxDateTime\_t}{GetNumberOfDays}{\param{int }{year}, \param{Calendar }{cal = Gregorian}} @@ -516,6 +535,7 @@ The only supported value for {\it cal} parameter is currently {\tt Gregorian}. \pythonnote{These two methods are named {\tt GetNumberOfDaysInYear} and {\tt GetNumberOfDaysInMonth} in wxPython.} + \membersection{wxDateTime::GetWeekDayName}\label{wxdatetimegetweekdayname} \func{static wxString}{GetWeekDayName}{\param{WeekDay }{weekday}, \param{NameFlags }{flags = Name\_Full}} @@ -527,29 +547,33 @@ given week day. \helpref{GetMonthName}{wxdatetimegetmonthname} + \membersection{wxDateTime::IsLeapYear}\label{wxdatetimeisleapyear} \func{static bool}{IsLeapYear}{\param{int }{year = Inv\_Year}, \param{Calendar }{cal = Gregorian}} -Returns {\tt TRUE} if the {\it year} is a leap one in the specified calendar. +Returns {\tt true} if the {\it year} is a leap one in the specified calendar. This functions supports Gregorian and Julian calendars. + \membersection{wxDateTime::IsWestEuropeanCountry}\label{wxdatetimeiswesteuropeancountry} \func{static bool}{IsWestEuropeanCountry}{\param{Country }{country = Country\_Default}} -This function returns {\tt TRUE} if the specified (or default) country is one +This function returns {\tt true} if the specified (or default) country is one of Western European ones. It is used internally by wxDateTime to determine the DST convention and date and time formatting rules. + \membersection{wxDateTime::IsDSTApplicable}\label{wxdatetimeisdstapplicable} \func{static bool}{IsDSTApplicable}{\param{int }{year = Inv\_Year}, \param{Country }{country = Country\_Default}} -Returns {\tt TRUE} if DST was used n the given year (the current one by +Returns {\tt true} if DST was used n the given year (the current one by default) in the given country. + \membersection{wxDateTime::Now}\label{wxdatetimenow} \func{static wxDateTime}{Now}{\void} @@ -571,6 +595,7 @@ Note that this function is accurate up to second: \helpref{Today}{wxdatetimetoday} + \membersection{wxDateTime::SetCountry}\label{wxdatetimesetcountry} \func{static void}{SetCountry}{\param{Country }{country}} @@ -585,6 +610,7 @@ The possible values for {\it country} parameter are enumerated in \helpref{GetCountry}{wxdatetimegetcountry} + \membersection{wxDateTime::Today}\label{wxdatetimetoday} \func{static wxDateTime}{Today}{\void} @@ -596,6 +622,7 @@ same as \helpref{Now()}{wxdatetimenow}, but the time part is set to $0$). \helpref{Now}{wxdatetimenow} + \membersection{wxDateTime::UNow}\label{wxdatetimeunow} \func{static wxDateTime}{UNow}{\void} @@ -610,6 +637,7 @@ current platform (supported under most Unices and Win32). %%%%%%%%%%%%%%%%%%%%%%%%%%% constructors &c %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + \membersection{wxDateTime::wxDateTime}\label{wxdatetimewxdatetimedef} \func{}{wxDateTime}{\void} @@ -617,6 +645,7 @@ current platform (supported under most Unices and Win32). Default constructor. Use one of {\tt Set()} functions to initialize the object later. + \membersection{wxDateTime::wxDateTime}\label{wxdatetimewxdatetimetimet} \func{wxDateTime\&}{wxDateTime}{\param{time\_t }{timet}} @@ -625,6 +654,7 @@ Same as \helpref{Set}{wxdatetimewxdatetimetimet}. \pythonnote{This constructor is named {\tt wxDateTimeFromTimeT} in wxPython.} + \membersection{wxDateTime::wxDateTime}\label{wxdatetimewxdatetimetm} \func{wxDateTime\&}{wxDateTime}{\param{const struct tm\& }{tm}} @@ -633,6 +663,7 @@ Same as \helpref{Set}{wxdatetimewxdatetimetm} \pythonnote{Unsupported.} + \membersection{wxDateTime::wxDateTime}\label{wxdatetimewxdatetimejdn} \func{wxDateTime\&}{wxDateTime}{\param{double }{jdn}} @@ -641,6 +672,7 @@ Same as \helpref{Set}{wxdatetimewxdatetimejdn} \pythonnote{This constructor is named {\tt wxDateTimeFromJDN} in wxPython.} + \membersection{wxDateTime::wxDateTime}\label{wxdatetimewxdatetimetime} \func{wxDateTime\&}{wxDateTime}{\param{wxDateTime\_t }{hour}, \param{wxDateTime\_t }{minute = 0}, \param{wxDateTime\_t }{second = 0}, \param{wxDateTime\_t }{millisec = 0}} @@ -649,6 +681,7 @@ Same as \helpref{Set}{wxdatetimewxdatetimetime} \pythonnote{This constructor is named {\tt wxDateTimeFromHMS} in wxPython.} + \membersection{wxDateTime::wxDateTime}\label{wxdatetimewxdatetimedate} \func{wxDateTime\&}{wxDateTime}{\param{wxDateTime\_t }{day}, \param{Month }{month = Inv\_Month}, \param{int}{ Inv\_Year}, @@ -658,6 +691,7 @@ Same as \helpref{Set}{wxdatetimesetdate} \pythonnote{This constructor is named {\tt wxDateTimeFromDMY} in wxPython.} + \membersection{wxDateTime::SetToCurrent}\label{wxdatetimesettocurrent} \func{wxDateTime\&}{SetToCurrent}{\void} @@ -665,6 +699,7 @@ Same as \helpref{Set}{wxdatetimesetdate} Sets the date and time of to the current values. Same as assigning the result of \helpref{Now()}{wxdatetimenow} to this object. + \membersection{wxDateTime::Set}\label{wxdatetimesettimet} \func{wxDateTime\&}{Set}{\param{time\_t }{timet}} @@ -674,6 +709,7 @@ since Jan 1, 1970. \pythonnote{This method is named {\tt SetTimeT} in wxPython.} + \membersection{wxDateTime::Set}\label{wxdatetimesettm} \func{wxDateTime\&}{Set}{\param{const struct tm\& }{tm}} @@ -683,6 +719,7 @@ Sets the date and time from the broken down representation in the standard \pythonnote{Unsupported.} + \membersection{wxDateTime::Set}\label{wxdatetimesetjdn} \func{wxDateTime\&}{Set}{\param{double }{jdn}} @@ -696,6 +733,7 @@ Julian proleptic calendar. \pythonnote{This method is named {\tt SetJDN} in wxPython.} + \membersection{wxDateTime::Set}\label{wxdatetimesettime} \func{wxDateTime\&}{Set}{\param{wxDateTime\_t }{hour}, \param{wxDateTime\_t }{minute = 0}, \param{wxDateTime\_t }{second = 0}, \param{wxDateTime\_t }{millisec = 0}} @@ -705,66 +743,77 @@ from supplied parameters. \pythonnote{This method is named {\tt SetHMS} in wxPython.} + \membersection{wxDateTime::Set}\label{wxdatetimesetdate} \func{wxDateTime\&}{Set}{\param{wxDateTime\_t }{day}, \param{Month }{month = Inv\_Month}, \param{int }{year = Inv\_Year}, \param{wxDateTime\_t }{hour = 0}, \param{wxDateTime\_t }{minute = 0}, \param{wxDateTime\_t }{second = 0}, \param{wxDateTime\_t }{millisec = 0}} Sets the date and time from the parameters. + \membersection{wxDateTime::ResetTime}\label{wxdatetimeresettime} \func{wxDateTime\&}{ResetTime}{\void} Reset time to midnight (00:00:00) without changing the date. + \membersection{wxDateTime::SetYear}\label{wxdatetimesetyear} \func{wxDateTime\&}{SetYear}{\param{int }{year}} Sets the year without changing other date components. + \membersection{wxDateTime::SetMonth}\label{wxdatetimesetmonth} \func{wxDateTime\&}{SetMonth}{\param{Month }{month}} Sets the month without changing other date components. + \membersection{wxDateTime::SetDay}\label{wxdatetimesetday} \func{wxDateTime\&}{SetDay}{\param{wxDateTime\_t }{day}} Sets the day without changing other date components. + \membersection{wxDateTime::SetHour}\label{wxdatetimesethour} \func{wxDateTime\&}{SetHour}{\param{wxDateTime\_t }{hour}} Sets the hour without changing other date components. + \membersection{wxDateTime::SetMinute}\label{wxdatetimesetminute} \func{wxDateTime\&}{SetMinute}{\param{wxDateTime\_t }{minute}} Sets the minute without changing other date components. + \membersection{wxDateTime::SetSecond}\label{wxdatetimesetsecond} \func{wxDateTime\&}{SetSecond}{\param{wxDateTime\_t }{second}} Sets the second without changing other date components. + \membersection{wxDateTime::SetMillisecond}\label{wxdatetimesetmillisecond} \func{wxDateTime\&}{SetMillisecond}{\param{wxDateTime\_t }{millisecond}} Sets the millisecond without changing other date components. + \membersection{wxDateTime::operator$=$}\label{wxdatetimeoperatoreqtimet} \func{wxDateTime\&}{operator}{\param{time\_t }{timet}} Same as \helpref{Set}{wxdatetimesettimet}. + \membersection{wxDateTime::operator$=$}\label{wxdatetimeoperatoreqtm} \func{wxDateTime\&}{operator}{\param{const struct tm\& }{tm}} @@ -773,11 +822,13 @@ Same as \helpref{Set}{wxdatetimesettm}. %%%%%%%%%%%%%%%%%%%%%%%%%%% accessors %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + \membersection{wxDateTime::IsValid}\label{wxdatetimeisvalid} \constfunc{bool}{IsValid}{\void} -Returns {\tt TRUE} if the object represents a valid time moment. +Returns {\tt true} if the object represents a valid time moment. + \membersection{wxDateTime::GetTm}\label{wxdatetimegettm} @@ -785,6 +836,7 @@ Returns {\tt TRUE} if the object represents a valid time moment. Returns broken down representation of the date and time. + \membersection{wxDateTime::GetTicks}\label{wxdatetimegetticks} \constfunc{time\_t}{GetTicks}{\void} @@ -792,54 +844,63 @@ Returns broken down representation of the date and time. Returns the number of seconds since Jan 1, 1970. An assert failure will occur if the date is not in the range covered by {\tt time\_t} type. + \membersection{wxDateTime::GetYear}\label{wxdatetimegetyear} \constfunc{int}{GetYear}{\param{const TimeZone\& }{tz = Local}} Returns the year in the given timezone (local one by default). + \membersection{wxDateTime::GetMonth}\label{wxdatetimegetmonth} \constfunc{Month}{GetMonth}{\param{const TimeZone\& }{tz = Local}} Returns the month in the given timezone (local one by default). + \membersection{wxDateTime::GetDay}\label{wxdatetimegetday} \constfunc{wxDateTime\_t}{GetDay}{\param{const TimeZone\& }{tz = Local}} Returns the day in the given timezone (local one by default). + \membersection{wxDateTime::GetWeekDay}\label{wxdatetimegetweekday} \constfunc{WeekDay}{GetWeekDay}{\param{const TimeZone\& }{tz = Local}} Returns the week day in the given timezone (local one by default). + \membersection{wxDateTime::GetHour}\label{wxdatetimegethour} \constfunc{wxDateTime\_t}{GetHour}{\param{const TimeZone\& }{tz = Local}} Returns the hour in the given timezone (local one by default). + \membersection{wxDateTime::GetMinute}\label{wxdatetimegetminute} \constfunc{wxDateTime\_t}{GetMinute}{\param{const TimeZone\& }{tz = Local}} Returns the minute in the given timezone (local one by default). + \membersection{wxDateTime::GetSecond}\label{wxdatetimegetsecond} \constfunc{wxDateTime\_t}{GetSecond}{\param{const TimeZone\& }{tz = Local}} Returns the seconds in the given timezone (local one by default). + \membersection{wxDateTime::GetMillisecond}\label{wxdatetimegetmillisecond} \constfunc{wxDateTime\_t}{GetMillisecond}{\param{const TimeZone\& }{tz = Local}} Returns the milliseconds in the given timezone (local one by default). + \membersection{wxDateTime::GetDayOfYear}\label{wxdatetimegetdayofyear} \constfunc{wxDateTime\_t}{GetDayOfYear}{\param{const TimeZone\& }{tz = Local}} @@ -847,16 +908,23 @@ Returns the milliseconds in the given timezone (local one by default). Returns the day of the year (in $1\ldots366$ range) in the given timezone (local one by default). + \membersection{wxDateTime::GetWeekOfYear}\label{wxdatetimegetweekofyear} \constfunc{wxDateTime\_t}{GetWeekOfYear}{\param{WeekFlags }{flags = Monday\_First}, \param{const TimeZone\& }{tz = Local}} Returns the number of the week of the year this date is in. The first week of -the year is, according to international standards, the one containing Jan 4. -The week number is in $1\ldots53$ range ($52$ for non leap years). +the year is, according to international standards, the one containing Jan 4 or, +equivalently, the first week which has Thursday in this year. Both of these +definitions are the same as saying that the first week of the year must contain +more than half of its days in this year. Accordingly, the week number will +always be in $1\ldots53$ range ($52$ for non leap years). The function depends on the \helpref{week start}{wxdatetime} convention -specified by the {\it flags} argument. +specified by the {\it flags} argument but its results for +\texttt{Sunday\_First} are not well-defined as the ISO definition quoted above +applies to the weeks starting on Monday only. + \membersection{wxDateTime::GetWeekOfMonth}\label{wxdatetimegetweekofmonth} @@ -868,83 +936,114 @@ As \helpref{GetWeekOfYear}{wxdatetimegetweekofyear}, this function supports both conventions for the week start. See the description of these \helpref{week start}{wxdatetime} conventions. + \membersection{wxDateTime::IsWorkDay}\label{wxdatetimeisworkday} \constfunc{bool}{IsWorkDay}{\param{Country }{country = Country\_Default}} -Returns {\tt TRUE} is this day is not a holiday in the given country. +Returns {\tt true} is this day is not a holiday in the given country. + \membersection{wxDateTime::IsGregorianDate}\label{wxdatetimeisgregoriandate} \constfunc{bool}{IsGregorianDate}{\param{GregorianAdoption }{country = Gr\_Standard}} -Returns {\tt TRUE} if the given date os later than the date of adoption of the +Returns {\tt true} if the given date is later than the date of adoption of the Gregorian calendar in the given country (and hence the Gregorian calendar calculations make sense for it). +%%%%%%%%%%%%%%%%%%%%%% dos date and time format %%%%%%%%%%%%%%%%%%%%%%% + + +\membersection{wxDateTime::SetFromDOS}\label{wxdatetimesetfromdos} + +\func{wxDateTime\&}{Set}{\param{unsigned long }{ddt}} + +Sets the date from the date and time in +\urlref{DOS}{http://developer.novell.com/ndk/doc/smscomp/index.html?page=/ndk/doc/smscomp/sms\_docs/data/hc2vlu5i.html} +format. + + +\membersection{wxDateTime::GetAsDOS}\label{wxdatetimegetasdos} + +\constfunc{unsigned long}{GetAsDOS}{\void} + +Returns the date and time in +\urlref{DOS}{http://developer.novell.com/ndk/doc/smscomp/index.html?page=/ndk/doc/smscomp/sms\_docs/data/hc2vlu5i.html} +format. + %%%%%%%%%%%%%%%%%%%%%%%%%%% comparison %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + \membersection{wxDateTime::IsEqualTo}\label{wxdatetimeisequalto} \constfunc{bool}{IsEqualTo}{\param{const wxDateTime\& }{datetime}} -Returns {\tt TRUE} if the two dates are strictly identical. +Returns {\tt true} if the two dates are strictly identical. + \membersection{wxDateTime::IsEarlierThan}\label{wxdatetimeisearlierthan} \constfunc{bool}{IsEarlierThan}{\param{const wxDateTime\& }{datetime}} -Returns {\tt TRUE} if this date precedes the given one. +Returns {\tt true} if this date precedes the given one. + \membersection{wxDateTime::IsLaterThan}\label{wxdatetimeislaterthan} \constfunc{bool}{IsLaterThan}{\param{const wxDateTime\& }{datetime}} -Returns {\tt TRUE} if this date is later than the given one. +Returns {\tt true} if this date is later than the given one. + \membersection{wxDateTime::IsStrictlyBetween}\label{wxdatetimeisstrictlybetween} \constfunc{bool}{IsStrictlyBetween}{\param{const wxDateTime\& }{t1}, \param{const wxDateTime\& }{t2}} -Returns {\tt TRUE} if this date lies strictly between the two others, +Returns {\tt true} if this date lies strictly between the two others, \wxheading{See also} \helpref{IsBetween}{wxdatetimeisbetween} + \membersection{wxDateTime::IsBetween}\label{wxdatetimeisbetween} \constfunc{bool}{IsBetween}{\param{const wxDateTime\& }{t1}, \param{const wxDateTime\& }{t2}} -Returns {\tt TRUE} if \helpref{IsStrictlyBetween}{wxdatetimeisstrictlybetween} -is {\tt TRUE} or if the date is equal to one of the limit values. +Returns {\tt true} if \helpref{IsStrictlyBetween}{wxdatetimeisstrictlybetween} +is {\tt true} or if the date is equal to one of the limit values. \wxheading{See also} \helpref{IsStrictlyBetween}{wxdatetimeisstrictlybetween} + \membersection{wxDateTime::IsSameDate}\label{wxdatetimeissamedate} \constfunc{bool}{IsSameDate}{\param{const wxDateTime\& }{dt}} -Returns {\tt TRUE} if the date is the same without comparing the time parts. +Returns {\tt true} if the date is the same without comparing the time parts. + \membersection{wxDateTime::IsSameTime}\label{wxdatetimeissametime} \constfunc{bool}{IsSameTime}{\param{const wxDateTime\& }{dt}} -Returns {\tt TRUE} if the time is the same (although dates may differ). +Returns {\tt true} if the time is the same (although dates may differ). + \membersection{wxDateTime::IsEqualUpTo}\label{wxdatetimeisequalupto} \constfunc{bool}{IsEqualUpTo}{\param{const wxDateTime\& }{dt}, \param{const wxTimeSpan\& }{ts}} -Returns {\tt TRUE} if the date is equal to another one up to the given time +Returns {\tt true} if the date is equal to another one up to the given time interval, i.e. if the absolute difference between the two dates is less than this interval. %%%%%%%%%%%%%%%%%%%%%%%%%%% arithmetics %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + \membersection{wxDateTime::Add}\label{wxdatetimeaddts} \constfunc{wxDateTime}{Add}{\param{const wxTimeSpan\& }{diff}} @@ -957,17 +1056,7 @@ Adds the given time span to this object. \pythonnote{This method is named {\tt AddTS} in wxPython.} -\membersection{wxDateTime::Subtract}\label{wxdatetimesubtractts} -\constfunc{wxDateTime}{Subtract}{\param{const wxTimeSpan\& }{diff}} - -\func{wxDateTime\&}{Subtract}{\param{const wxTimeSpan\& }{diff}} - -\func{wxDateTime\&}{operator$-=$}{\param{const wxTimeSpan\& }{diff}} - -Subtracts the given time span from this object. - -\pythonnote{This method is named {\tt SubtractTS} in wxPython.} \membersection{wxDateTime::Add}\label{wxdatetimeaddds} @@ -981,6 +1070,22 @@ Adds the given date span to this object. \pythonnote{This method is named {\tt AddDS} in wxPython.} + + +\membersection{wxDateTime::Subtract}\label{wxdatetimesubtractts} + +\constfunc{wxDateTime}{Subtract}{\param{const wxTimeSpan\& }{diff}} + +\func{wxDateTime\&}{Subtract}{\param{const wxTimeSpan\& }{diff}} + +\func{wxDateTime\&}{operator$-=$}{\param{const wxTimeSpan\& }{diff}} + +Subtracts the given time span from this object. + +\pythonnote{This method is named {\tt SubtractTS} in wxPython.} + + + \membersection{wxDateTime::Subtract}\label{wxdatetimesubtractds} \constfunc{wxDateTime}{Subtract}{\param{const wxDateSpan\& }{diff}} @@ -993,6 +1098,8 @@ Subtracts the given date span from this object. \pythonnote{This method is named {\tt SubtractDS} in wxPython.} + + \membersection{wxDateTime::Subtract}\label{wxdatetimesubtractdt} \constfunc{wxTimeSpan}{Subtract}{\param{const wxDateTime\& }{dt}} @@ -1002,6 +1109,7 @@ as wxTimeSpan. %%%%%%%%%%%%%%%%%%%%%%%%%%% parsing/formatting %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + \membersection{wxDateTime::ParseRfc822Date}\label{wxdatetimeparserfc822date} \func{const wxChar *}{ParseRfc822Date}{\param{const wxChar* }{date}} @@ -1022,29 +1130,32 @@ which is not RFC 822 compliant. If you need to parse date formatted in more free ways, you should use \helpref{ParseDateTime}{wxdatetimeparsedatetime} or \helpref{ParseDate}{wxdatetimeparsedate} instead. + \membersection{wxDateTime::ParseFormat}\label{wxdatetimeparseformat} \func{const wxChar *}{ParseFormat}{\param{const wxChar *}{date}, \param{const wxChar *}{format = "\%c"}, \param{const wxDateTime\& }{dateDef = wxDefaultDateTime}} This function parses the string {\it date} according to the given {\it format}. The system {\tt strptime(3)} function is used whenever available, -but even if it is not, this function is still implemented (although support -for locale-dependent format specificators such as {\tt "\%c"}, {\tt "\%x"} or -{\tt "\%X"} may be not perfect). This function does handle the month and -weekday names in the current locale on all platforms, however. +but even if it is not, this function is still implemented, although support +for locale-dependent format specifiers such as {\tt "\%c"}, {\tt "\%x"} or {\tt "\%X"} may +not be perfect and GNU extensions such as {\tt "\%z"} and {\tt "\%Z"} are +not implemented. This function does handle the month and weekday +names in the current locale on all platforms, however. -Please the description of ANSI C function {\tt strftime(3)} for the syntax of -the format string. +Please see the description of the ANSI C function {\tt strftime(3)} for the syntax +of the format string. The {\it dateDef} parameter is used to fill in the fields which could not be -determined from the format string. For example, if the format is {\tt "\%d"} -(the day of the month), the month and the year are taken from {\it dateDef}. -If it is not specified, \helpref{Today}{wxdatetimetoday} is used as the +determined from the format string. For example, if the format is {\tt "\%d"} (the +ay of the month), the month and the year are taken from {\it dateDef}. If +it is not specified, \helpref{Today}{wxdatetimetoday} is used as the default date. Returns {\tt NULL} if the conversion failed, otherwise return the pointer to the character which stopped the scan. + \membersection{wxDateTime::ParseDateTime}\label{wxdatetimeparsedatetime} \func{const wxChar *}{ParseDateTime}{\param{const wxChar *}{datetime}} @@ -1056,7 +1167,9 @@ will accept anything that may be accepted and will only reject strings which can not be parsed in any way at all. Returns {\tt NULL} if the conversion failed, otherwise return the pointer to -the character which stopped the scan. +the character which stopped the scan. This method is currently not +implemented, so always returns NULL. + \membersection{wxDateTime::ParseDate}\label{wxdatetimeparsedate} @@ -1070,6 +1183,7 @@ misinterpret the user input. Returns {\tt NULL} if the conversion failed, otherwise return the pointer to the character which stopped the scan. + \membersection{wxDateTime::ParseTime}\label{wxdatetimeparsetime} \func{const wxChar *}{ParseTime}{\param{const wxChar *}{time}} @@ -1080,6 +1194,7 @@ only allows the time to be specified in the input string. Returns {\tt NULL} if the conversion failed, otherwise return the pointer to the character which stopped the scan. + \membersection{wxDateTime::Format}\label{wxdatetimeformat} \constfunc{wxString }{Format}{\param{const wxChar *}{format = "\%c"}, \param{const TimeZone\& }{tz = Local}} @@ -1087,7 +1202,7 @@ the character which stopped the scan. This function does the same as the standard ANSI C {\tt strftime(3)} function. Please see its description for the meaning of {\it format} parameter. -It also accepts a few wxWindows-specific extensions: you can optionally specify +It also accepts a few wxWidgets-specific extensions: you can optionally specify the width of the field to follow using {\tt printf(3)}-like syntax and the format specification {\tt \%l} can be used to get the number of milliseconds. @@ -1095,6 +1210,7 @@ format specification {\tt \%l} can be used to get the number of milliseconds. \helpref{ParseFormat}{wxdatetimeparseformat} + \membersection{wxDateTime::FormatDate}\label{wxdatetimeformatdate} \constfunc{wxString }{FormatDate}{\void} @@ -1102,6 +1218,7 @@ format specification {\tt \%l} can be used to get the number of milliseconds. Identical to calling \helpref{Format()}{wxdatetimeformat} with {\tt "\%x"} argument (which means `preferred date representation for the current locale'). + \membersection{wxDateTime::FormatTime}\label{wxdatetimeformattime} \constfunc{wxString }{FormatTime}{\void} @@ -1109,6 +1226,7 @@ argument (which means `preferred date representation for the current locale'). Identical to calling \helpref{Format()}{wxdatetimeformat} with {\tt "\%X"} argument (which means `preferred time representation for the current locale'). + \membersection{wxDateTime::FormatISODate}\label{wxdatetimeformatisodate} \constfunc{wxString }{FormatISODate}{\void} @@ -1116,6 +1234,7 @@ argument (which means `preferred time representation for the current locale'). This function returns the date representation in the ISO 8601 format (YYYY-MM-DD). + \membersection{wxDateTime::FormatISOTime}\label{wxdatetimeformatisotime} \constfunc{wxString }{FormatISOTime}{\void} @@ -1125,23 +1244,26 @@ This function returns the time representation in the ISO 8601 format %%%%%%%%%%%%%%%%%%%%%%%%%%% calendar calculations %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + \membersection{wxDateTime::SetToWeekDayInSameWeek}\label{wxdatetimesettoweekdayinsameweek} -\func{wxDateTime\&}{SetToWeekDayInSameWeek}{\param{WeekDay }{weekday}} +\func{wxDateTime\&}{SetToWeekDayInSameWeek}{\param{WeekDay }{weekday}, \param{WeekFlags}{flags = {\tt Monday\_First}}} Adjusts the date so that it will still lie in the same week as before, but its week day will be the given one. Returns the reference to the modified object itself. + \membersection{wxDateTime::GetWeekDayInSameWeek}\label{wxdatetimegetweekdayinsameweek} -\constfunc{wxDateTime}{GetWeekDayInSameWeek}{\param{WeekDay }{weekday}} +\constfunc{wxDateTime}{GetWeekDayInSameWeek}{\param{WeekDay }{weekday}, \param{WeekFlags}{flags = {\tt Monday\_First}}} -Returns the copy of this object to which +Returns the copy of this object to which \helpref{SetToWeekDayInSameWeek}{wxdatetimesettoweekdayinsameweek} was applied. + \membersection{wxDateTime::SetToNextWeekDay}\label{wxdatetimesettonextweekday} \func{wxDateTime\&}{SetToNextWeekDay}{\param{WeekDay }{weekday}} @@ -1151,6 +1273,7 @@ date. Returns the reference to the modified object itself. + \membersection{wxDateTime::GetNextWeekDay}\label{wxdatetimegetnextweekday} \constfunc{wxDateTime}{GetNextWeekDay}{\param{WeekDay }{weekday}} @@ -1158,6 +1281,7 @@ Returns the reference to the modified object itself. Returns the copy of this object to which \helpref{SetToNextWeekDay}{wxdatetimesettonextweekday} was applied. + \membersection{wxDateTime::SetToPrevWeekDay}\label{wxdatetimesettoprevweekday} \func{wxDateTime\&}{SetToPrevWeekDay}{\param{WeekDay }{weekday}} @@ -1167,6 +1291,7 @@ date. Returns the reference to the modified object itself. + \membersection{wxDateTime::GetPrevWeekDay}\label{wxdatetimegetprevweekday} \constfunc{wxDateTime}{GetPrevWeekDay}{\param{WeekDay }{weekday}} @@ -1174,6 +1299,7 @@ Returns the reference to the modified object itself. Returns the copy of this object to which \helpref{SetToPrevWeekDay}{wxdatetimesettoprevweekday} was applied. + \membersection{wxDateTime::SetToWeekDay}\label{wxdatetimesettoweekday} \func{bool}{SetToWeekDay}{\param{WeekDay }{weekday}, \param{int }{n = 1}, \param{Month }{month = Inv\_Month}, \param{int }{year = Inv\_Year}} @@ -1187,9 +1313,10 @@ For example, {\tt SetToWeekDay(2, wxDateTime::Wed)} will set the date to the second Wednesday in the current month and {\tt SetToWeekDay(-1, wxDateTime::Sun)} -- to the last Sunday in it. -Returns {\tt TRUE} if the date was modified successfully, {\tt FALSE} +Returns {\tt true} if the date was modified successfully, {\tt false} otherwise meaning that the specified date doesn't exist. + \membersection{wxDateTime::GetWeekDay}\label{wxdatetimegetweekday2} \constfunc{wxDateTime}{GetWeekDay}{\param{WeekDay }{weekday}, \param{int }{n = 1}, \param{Month }{month = Inv\_Month}, \param{int }{year = Inv\_Year}} @@ -1197,6 +1324,7 @@ otherwise meaning that the specified date doesn't exist. Returns the copy of this object to which \helpref{SetToWeekDay}{wxdatetimesettoweekday} was applied. + \membersection{wxDateTime::SetToLastWeekDay}\label{wxdatetimesettolastweekday} \func{bool}{SetToLastWeekDay}{\param{WeekDay }{weekday}, \param{Month }{month = Inv\_Month}, \param{int }{year = Inv\_Year}} @@ -1205,7 +1333,8 @@ The effect of calling this function is the same as of calling {\tt SetToWeekDay(-1, weekday, month, year)}. The date will be set to the last {\it weekday} in the given month and year (the current ones by default). -Always returns {\tt TRUE}. +Always returns {\tt true}. + \membersection{wxDateTime::GetLastWeekDay}\label{wxdatetimegetlastweekday} @@ -1214,21 +1343,20 @@ Always returns {\tt TRUE}. Returns the copy of this object to which \helpref{SetToLastWeekDay}{wxdatetimesettolastweekday} was applied. -\membersection{wxDateTime::SetToTheWeek}\label{wxdatetimesettotheweek} -\func{bool}{SetToTheWeek}{\param{wxDateTime\_t }{numWeek}, \param{WeekDay }{weekday = Mon}} +\membersection{wxDateTime::SetToWeekOfYear}\label{wxdatetimesettoweekofyear} -Set the date to the given {\it weekday} in the week with given number -{\it numWeek}. The number should be in range $1\ldots53$ and {\tt FALSE} will -be returned if the specified date doesn't exist. {\tt TRUE} is returned if the -date was changed successfully. +\func{static wxDateTime}{SetToWeekOfYear}{\param{int }{year}, \param{wxDateTime\_t }{numWeek}, \param{WeekDay }{weekday = Mon}} -\membersection{wxDateTime::GetWeek}\label{wxdatetimegetweek} +Set the date to the given \arg{weekday} in the week number \arg{numWeek} of the +given \arg{year} . The number should be in range $1\ldots53$. -\constfunc{wxDateTime}{GetWeek}{\param{wxDateTime\_t }{numWeek}, \param{WeekDay }{weekday = Mon}} +Note that the returned date may be in a different year than the one passed to +this function because both the week $1$ and week $52$ or $53$ (for leap years) +contain days from different years. See +\helpref{GetWeekOfYear}{wxdatetimegetweekofyear} for the explanation of how the +year weeks are counted. -Returns the copy of this object to which -\helpref{SetToTheWeek}{wxdatetimesettotheweek} was applied. \membersection{wxDateTime::SetToLastMonthDay}\label{wxdatetimesettolastmonthday} @@ -1239,6 +1367,7 @@ default). Returns the reference to the modified object itself. + \membersection{wxDateTime::GetLastMonthDay}\label{wxdatetimegetlastmonthday} \constfunc{wxDateTime}{GetLastMonthDay}{\param{Month }{month = Inv\_Month}, \param{int }{year = Inv\_Year}} @@ -1246,6 +1375,7 @@ Returns the reference to the modified object itself. Returns the copy of this object to which \helpref{SetToLastMonthDay}{wxdatetimesettolastmonthday} was applied. + \membersection{wxDateTime::SetToYearDay}\label{wxdatetimesettoyearday} \func{wxDateTime\&}{SetToYearDay}{\param{wxDateTime\_t }{yday}} @@ -1257,6 +1387,7 @@ the other ones. Returns the reference to the modified object itself. + \membersection{wxDateTime::GetYearDay}\label{wxdatetimegetyearday} \constfunc{wxDateTime}{GetYearDay}{\param{wxDateTime\_t }{yday}} @@ -1266,6 +1397,7 @@ Returns the copy of this object to which %%%%%%%%%%%%%%%%%%%%%%%%%%% astronomical functions %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + \membersection{wxDateTime::GetJulianDayNumber}\label{wxdatetimegetjuliandaynumber} \constfunc{double}{GetJulianDayNumber}{\void} @@ -1277,12 +1409,14 @@ of rounding errors! \helpref{GetModifiedJulianDayNumber}{wxdatetimegetmodifiedjuliandaynumber} + \membersection{wxDateTime::GetJDN}\label{wxdatetimegetjdn} \constfunc{double}{GetJDN}{\void} Synonym for \helpref{GetJulianDayNumber}{wxdatetimegetjuliandaynumber}. + \membersection{wxDateTime::GetModifiedJulianDayNumber}\label{wxdatetimegetmodifiedjuliandaynumber} \constfunc{double}{GetModifiedJulianDayNumber}{\void} @@ -1292,12 +1426,14 @@ equal to $JDN - 2400000.5$. The MJDs are simpler to work with as the integral MJDs correspond to midnights of the dates in the Gregorian calendar and not th noons like JDN. The MJD $0$ is Nov 17, 1858. + \membersection{wxDateTime::GetMJD}\label{wxdatetimegetmjd} \constfunc{double}{GetMJD}{\void} Synonym for \helpref{GetModifiedJulianDayNumber}{wxdatetimegetmodifiedjuliandaynumber}. + \membersection{wxDateTime::GetRataDie}\label{wxdatetimegetratadie} \constfunc{double}{GetRataDie}{\void} @@ -1310,41 +1446,46 @@ year 1 is Rata Die day 1. %%%%%%%%%%%%%%%%%%%%%%%%%%% timezone and DST %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + \membersection{wxDateTime::ToTimezone}\label{wxdatetimetotimezone} -\constfunc{wxDateTime}{ToTimezone}{\param{const TimeZone\& }{tz}, \param{bool }{noDST = FALSE}} +\constfunc{wxDateTime}{ToTimezone}{\param{const TimeZone\& }{tz}, \param{bool }{noDST = false}} -Transform the date to the given time zone. If {\it noDST} is {\tt TRUE}, no +Transform the date to the given time zone. If {\it noDST} is {\tt true}, no DST adjustments will be made. Returns the date in the new time zone. + \membersection{wxDateTime::MakeTimezone}\label{wxdatetimemaketimezone} -\func{wxDateTime\&}{MakeTimezone}{\param{const TimeZone\& }{tz}, \param{bool }{noDST = FALSE}} +\func{wxDateTime\&}{MakeTimezone}{\param{const TimeZone\& }{tz}, \param{bool }{noDST = false}} Modifies the object in place to represent the date in another time zone. If -{\it noDST} is {\tt TRUE}, no DST adjustments will be made. +{\it noDST} is {\tt true}, no DST adjustments will be made. + \membersection{wxDateTime::ToGMT}\label{wxdatetimetogmt} -\constfunc{wxDateTime}{ToGMT}{\param{bool }{noDST = FALSE}} +\constfunc{wxDateTime}{ToGMT}{\param{bool }{noDST = false}} This is the same as calling \helpref{ToTimezone}{wxdatetimetotimezone} with the argument {\tt GMT0}. + \membersection{wxDateTime::MakeGMT}\label{wxdatetimemakegmt} -\func{wxDateTime\&}{MakeGMT}{\param{bool }{noDST = FALSE}} +\func{wxDateTime\&}{MakeGMT}{\param{bool }{noDST = false}} This is the same as calling \helpref{MakeTimezone}{wxdatetimemaketimezone} with the argument {\tt GMT0}. + \membersection{wxDateTime::IsDST}\label{wxdatetimeisdst} \constfunc{int}{IsDST}{\param{Country }{country = Country\_Default}} -Returns {\tt TRUE} if the DST is applied for this date in the given country. +Returns {\tt true} if the DST is applied for this date in the given country. \wxheading{See also}