// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
-#ifdef __GNUG__
+#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
#pragma implementation "timer.h"
#endif
#define GetMillisecondsTime _EVT_getTicks
typedef ulong wxTimerTick_t;
-#else
+
+ #define wxTimerTickFmtSpec _T("lu")
+ #define wxTimerTickPrintfArg(tt) (tt)
+#else // !__WXMGL__
#define GetMillisecondsTime wxGetLocalTimeMillis
typedef wxLongLong wxTimerTick_t;
-#endif
+
+ #if wxUSE_LONGLONG_WX
+ #define wxTimerTickFmtSpec wxLongLongFmtSpec _T("d")
+ #define wxTimerTickPrintfArg(tt) (tt.GetValue())
+ #else // using native wxLongLong
+ #define wxTimerTickFmtSpec _T("s")
+ #define wxTimerTickPrintfArg(tt) (tt.ToString().c_str())
+ #endif // wx/native long long
+#endif // __WXMGL__/!__WXMGL__
// ----------------------------------------------------------------------------
// helper structures and wxTimerScheduler
wxTimer *timer;
bool running;
wxTimerDesc *next, *prev;
- unsigned long shotTime;
+ wxTimerTick_t shotTime;
volatile bool *deleteFlag; // see comment in ~wxTimer
};
desc->shotTime = when;
desc->running = TRUE;
- wxLogTrace( wxT("timer"), wxT("queued timer %p at tick %ld"),
- desc->timer, (long) when);
+ wxLogTrace( wxT("timer"),
+ wxT("queued timer %p at tick %") wxTimerTickFmtSpec,
+ desc->timer, wxTimerTickPrintfArg(when));
if ( m_timers )
{
if ( !timerDeleted )
{
- wxLogTrace( wxT("timer"), wxT("notified timer %p sheduled for %ld"),
- desc->timer, (long) desc->shotTime);
+ wxLogTrace( wxT("timer"),
+ wxT("notified timer %p sheduled for %")
+ wxTimerTickFmtSpec,
+ desc->timer,
+ wxTimerTickPrintfArg(desc->shotTime) );
desc->deleteFlag = NULL;
if ( !oneShot )