]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/time.h
Unicode compilation fix.
[wxWidgets.git] / include / wx / time.h
index f345d849949ef9faadb7d6de3f8f96471c30f971..101ee45a4a4f41a31f94eddb4e3af322639e88c0 100644 (file)
@@ -21,7 +21,7 @@
 #include "wx/datetime.h"
 #include "wx/date.h"
 
-#ifdef __GNUG__
+#if defined(__GNUG__) && !defined(__APPLE__)
     #pragma interface "time.h"
 #endif
 
@@ -47,7 +47,7 @@ public:
     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) { }
 
@@ -72,16 +72,16 @@ public:
     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; }
 
@@ -123,17 +123,16 @@ public:
             { _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 */