#include "wx/datetime.h"
#include "wx/date.h"
-#ifdef __GNUG__
+#if defined(__GNUG__) && !defined(__APPLE__)
#pragma interface "time.h"
#endif
wxTime() : m_time(wxDateTime::Now()) { }
wxTime(clockTy s) : m_time((time_t)(s - wxTIME_EPOCH_DIFF)) { }
void operator=(const wxTime& t) { m_time = t.m_time; }
- wxTime(const wxTime& t) { *this = t; }
+ wxTime(const wxTime& t) : wxObject() { *this = t; }
wxTime(hourTy h, minuteTy m, secondTy s = 0, bool WXUNUSED(dst) = FALSE)
: m_time(h, m, s) { }
bool operator!=(const wxTime& t) const { return m_time != t.m_time; }
friend wxTime WXDLLEXPORT operator+(const wxTime& t, long s)
- { return wxTime(t.m_time + wxTimeSpan::Seconds(s)); }
+ { return wxTime(t.m_time + wxTimeSpan::Seconds((int)s)); }
friend wxTime WXDLLEXPORT operator+(long s, const wxTime& t)
- { return wxTime(t.m_time + wxTimeSpan::Seconds(s)); }
+ { return wxTime(t.m_time + wxTimeSpan::Seconds((int)s)); }
long operator-(const wxTime& t) const
{ return (m_time - t.m_time).GetValue().ToLong(); }
wxTime operator-(long s) const
- { return wxTime(m_time - wxTimeSpan::Seconds(s)); }
- void operator+=(long s) { m_time += wxTimeSpan::Seconds(s); }
- void operator-=(long s) { m_time -= wxTimeSpan::Seconds(s); }
+ { return wxTime(m_time - wxTimeSpan::Seconds((int)s)); }
+ void operator+=(long s) { m_time += wxTimeSpan::Seconds((int)s); }
+ void operator-=(long s) { m_time -= wxTimeSpan::Seconds((int)s); }
bool IsBetween(const wxTime& a, const wxTime& b) const
{ return *this >= a && *this <= b; }
{ _T("%H:%M:%S"), _T("%H:%M") } // wx24h
};
- static wxChar s_bufTime[128];
+ wxStrncpy(ms_bufTime, m_time.Format(formats[ms_Format][ms_Precision]),
+ WXSIZEOF(ms_bufTime));
- wxStrncpy(s_bufTime, m_time.Format(formats[ms_Format][ms_Precision]),
- WXSIZEOF(s_bufTime));
-
- return s_bufTime;
+ return ms_bufTime;
}
private:
static tFormat ms_Format;
static tPrecision ms_Precision;
+ static wxChar ms_bufTime[128];
#if 0 // old wxTime members unused any more
clockTy sec; /* seconds since 1/1/1901 */