]> git.saurik.com Git - wxWidgets.git/commitdiff
preparation for allowing to use wxTimer in wxBase (heavily modified patch 1113088):
authorVadim Zeitlin <vadim@wxwidgets.org>
Fri, 20 Apr 2007 01:29:16 +0000 (01:29 +0000)
committerVadim Zeitlin <vadim@wxwidgets.org>
Fri, 20 Apr 2007 01:29:16 +0000 (01:29 +0000)
1. Changed wxTimer to use wxTimerImpl
2. Added Unix-specific generic timer implementation
3. Added wxAppTraits::CreateTimerImpl()

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45544 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

68 files changed:
Makefile.in
build/bakefiles/files.bkl
build/msw/makefile.bcc
build/msw/makefile.gcc
build/msw/makefile.vc
build/msw/makefile.wat
build/msw/wx_base.dsp
build/msw/wx_core.dsp
include/wx/apptrait.h
include/wx/cocoa/private/timer.h [new file with mode: 0644]
include/wx/cocoa/timer.h [deleted file]
include/wx/event.h
include/wx/generic/private/timer.h [new file with mode: 0644]
include/wx/generic/timer.h [deleted file]
include/wx/gtk/private/timer.h [new file with mode: 0644]
include/wx/gtk/timer.h [deleted file]
include/wx/gtk1/private/timer.h [new file with mode: 0644]
include/wx/gtk1/timer.h [deleted file]
include/wx/mac/carbon/apptrait.h
include/wx/mac/carbon/private/timer.h [new file with mode: 0644]
include/wx/mac/carbon/timer.h [deleted file]
include/wx/mac/private/timer.h [new file with mode: 0644]
include/wx/mac/timer.h [deleted file]
include/wx/motif/private/timer.h [new file with mode: 0644]
include/wx/motif/timer.h [deleted file]
include/wx/msw/apptrait.h
include/wx/msw/private/timer.h [new file with mode: 0644]
include/wx/msw/timer.h [deleted file]
include/wx/os2/apptrait.h
include/wx/os2/private/timer.h [new file with mode: 0644]
include/wx/os2/timer.h [deleted file]
include/wx/palmos/apptrait.h
include/wx/palmos/private/timer.h [new file with mode: 0644]
include/wx/private/timer.h [new file with mode: 0644]
include/wx/timer.h
include/wx/unix/apptrait.h
include/wx/unix/private/timer.h [new file with mode: 0644]
include/wx/utils.h
src/cocoa/timer.mm
src/cocoa/utils.cpp
src/common/event.cpp
src/common/timercmn.cpp
src/common/timerimpl.cpp [new file with mode: 0644]
src/common/utilscmn.cpp
src/dfb/evtloop.cpp
src/generic/timer.cpp
src/gtk/timer.cpp
src/gtk/utilsgtk.cpp
src/gtk1/timer.cpp
src/gtk1/utilsgtk.cpp
src/mac/carbon/timer.cpp
src/mac/carbon/utils.cpp
src/motif/timer.cpp
src/motif/utils.cpp
src/msw/app.cpp
src/msw/basemsw.cpp
src/msw/timer.cpp
src/msw/utils.cpp
src/os2/timer.cpp
src/os2/utilsgui.cpp
src/palmos/app.cpp
src/palmos/timer.cpp
src/unix/baseunix.cpp
src/unix/timerunx.cpp [new file with mode: 0644]
src/x11/app.cpp
src/x11/evtloop.cpp
src/x11/reparent.cpp
src/x11/utils.cpp

index d5031d905a3e19916d32772b1d64163a337bd643..aef06ca1f50a44603037e54d31cbf7946a90b364 100644 (file)
@@ -689,6 +689,8 @@ ALL_BASE_SOURCES =  \
        src/common/tarstrm.cpp \
        src/common/textbuf.cpp \
        src/common/textfile.cpp \
+       src/common/timercmn.cpp \
+       src/common/timerimpl.cpp \
        src/common/tokenzr.cpp \
        src/common/txtstrm.cpp \
        src/common/unichar.cpp \
@@ -709,6 +711,7 @@ ALL_BASE_SOURCES =  \
        src/unix/stackwalk.cpp \
        src/unix/stdpaths.cpp \
        src/unix/threadpsx.cpp \
+       src/unix/timerunx.cpp \
        src/msw/basemsw.cpp \
        src/msw/crashrpt.cpp \
        src/msw/debughlp.cpp \
@@ -723,6 +726,7 @@ ALL_BASE_SOURCES =  \
        src/msw/stackwalk.cpp \
        src/msw/stdpaths.cpp \
        src/msw/thread.cpp \
+       src/msw/timer.cpp \
        src/msw/utils.cpp \
        src/msw/utilsexc.cpp \
        $(BASE_WINCE_SRC) \
@@ -853,6 +857,8 @@ MONODLL_OBJECTS =  \
        monodll_tarstrm.o \
        monodll_textbuf.o \
        monodll_textfile.o \
+       monodll_timercmn.o \
+       monodll_timerimpl.o \
        monodll_tokenzr.o \
        monodll_txtstrm.o \
        monodll_unichar.o \
@@ -963,6 +969,8 @@ MONOLIB_OBJECTS =  \
        monolib_tarstrm.o \
        monolib_textbuf.o \
        monolib_textfile.o \
+       monolib_timercmn.o \
+       monolib_timerimpl.o \
        monolib_tokenzr.o \
        monolib_txtstrm.o \
        monolib_unichar.o \
@@ -1070,6 +1078,8 @@ BASEDLL_OBJECTS =  \
        basedll_tarstrm.o \
        basedll_textbuf.o \
        basedll_textfile.o \
+       basedll_timercmn.o \
+       basedll_timerimpl.o \
        basedll_tokenzr.o \
        basedll_txtstrm.o \
        basedll_unichar.o \
@@ -1160,6 +1170,8 @@ BASELIB_OBJECTS =  \
        baselib_tarstrm.o \
        baselib_textbuf.o \
        baselib_textfile.o \
+       baselib_timercmn.o \
+       baselib_timerimpl.o \
        baselib_tokenzr.o \
        baselib_txtstrm.o \
        baselib_unichar.o \
@@ -1929,7 +1941,6 @@ COND_TOOLKIT_DFB_LOWLEVEL_HDR =  \
        wx/generic/icon.h \
        wx/generic/imaglist.h \
        wx/generic/mask.h \
-       wx/generic/timer.h \
        wx/dfb/app.h \
        wx/dfb/bitmap.h \
        wx/dfb/brush.h \
@@ -1977,7 +1988,6 @@ COND_TOOLKIT_GTK_TOOLKIT_VERSION__LOWLEVEL_HDR =  \
        wx/gtk1/pen.h \
        wx/gtk1/popupwin.h \
        wx/gtk1/region.h \
-       wx/gtk1/timer.h \
        wx/gtk1/tooltip.h \
        wx/gtk1/toplevel.h \
        wx/gtk1/win_gtk.h \
@@ -2010,7 +2020,6 @@ COND_TOOLKIT_GTK_TOOLKIT_VERSION_2_LOWLEVEL_HDR =  \
        wx/gtk/pen.h \
        wx/gtk/popupwin.h \
        wx/gtk/region.h \
-       wx/gtk/timer.h \
        wx/gtk/tooltip.h \
        wx/gtk/toplevel.h \
        wx/gtk/win_gtk.h \
@@ -2023,7 +2032,6 @@ COND_TOOLKIT_MGL_LOWLEVEL_HDR =  \
        wx/generic/icon.h \
        wx/generic/imaglist.h \
        wx/generic/mask.h \
-       wx/generic/timer.h \
        wx/mgl/app.h \
        wx/mgl/bitmap.h \
        wx/mgl/brush.h \
@@ -2171,7 +2179,6 @@ COND_TOOLKIT_COCOA_GUI_HDR =  \
        wx/cocoa/statline.h \
        wx/cocoa/stattext.h \
        wx/cocoa/textctrl.h \
-       wx/cocoa/timer.h \
        wx/cocoa/toolbar.h \
        wx/cocoa/tooltip.h \
        wx/cocoa/toplevel.h \
@@ -2355,7 +2362,6 @@ COND_TOOLKIT_MAC_GUI_HDR =  \
        wx/mac/tabctrl.h \
        wx/mac/taskbarosx.h \
        wx/mac/textctrl.h \
-       wx/mac/timer.h \
        wx/mac/tglbtn.h \
        wx/mac/toolbar.h \
        wx/mac/tooltip.h \
@@ -2438,7 +2444,6 @@ COND_TOOLKIT_MAC_GUI_HDR =  \
        wx/mac/carbon/statusbr.h \
        wx/mac/carbon/tabctrl.h \
        wx/mac/carbon/textctrl.h \
-       wx/mac/carbon/timer.h \
        wx/mac/carbon/tglbtn.h \
        wx/mac/carbon/toolbar.h \
        wx/mac/carbon/tooltip.h \
@@ -2514,7 +2519,6 @@ COND_TOOLKIT_MOTIF_GUI_HDR =  \
        wx/motif/stattext.h \
        wx/motif/textctrl.h \
        wx/motif/tglbtn.h \
-       wx/motif/timer.h \
        wx/motif/toolbar.h \
        wx/motif/toplevel.h \
        wx/motif/window.h
@@ -2598,7 +2602,6 @@ COND_TOOLKIT_MSW_GUI_HDR =  \
        wx/msw/tbar95.h \
        wx/msw/textctrl.h \
        wx/msw/tglbtn.h \
-       wx/msw/timer.h \
        wx/msw/tooltip.h \
        wx/msw/toplevel.h \
        wx/msw/treectrl.h \
@@ -2707,7 +2710,6 @@ COND_TOOLKIT_PM_GUI_HDR =  \
        wx/os2/tabctrl.h \
        wx/os2/textctrl.h \
        wx/os2/tglbtn.h \
-       wx/os2/timer.h \
        wx/os2/toolbar.h \
        wx/os2/tooltip.h \
        wx/os2/toplevel.h \
@@ -2792,7 +2794,6 @@ COND_TOOLKIT_WINCE_GUI_HDR =  \
        wx/msw/tbar95.h \
        wx/msw/textctrl.h \
        wx/msw/tglbtn.h \
-       wx/msw/timer.h \
        wx/msw/tooltip.h \
        wx/msw/toplevel.h \
        wx/msw/treectrl.h \
@@ -3069,7 +3070,6 @@ COND_USE_GUI_1_ALL_GUI_HEADERS =  \
        wx/generic/splitter.h \
        wx/generic/srchctlg.h \
        wx/generic/textdlgg.h \
-       wx/generic/timer.h \
        wx/generic/treectlg.h \
        wx/graphics.h \
        wx/helphtml.h \
@@ -3395,7 +3395,8 @@ COND_PLATFORM_UNIX_1___BASE_PLATFORM_SRC_OBJECTS =  \
        monodll_snglinst.o \
        monodll_stackwalk.o \
        monodll_stdpaths.o \
-       monodll_threadpsx.o
+       monodll_threadpsx.o \
+       monodll_timerunx.o
 @COND_PLATFORM_UNIX_1@__BASE_PLATFORM_SRC_OBJECTS = $(COND_PLATFORM_UNIX_1___BASE_PLATFORM_SRC_OBJECTS)
 COND_PLATFORM_WIN32_1___BASE_PLATFORM_SRC_OBJECTS =  \
        monodll_basemsw.o \
@@ -3412,6 +3413,7 @@ COND_PLATFORM_WIN32_1___BASE_PLATFORM_SRC_OBJECTS =  \
        monodll_stackwalk.o \
        monodll_stdpaths.o \
        monodll_thread.o \
+       monodll_timer.o \
        monodll_utils.o \
        monodll_utilsexc.o \
        $(__BASE_WINCE_SRC_OBJECTS)
@@ -3426,6 +3428,7 @@ COND_TOOLKIT____BASE_MACOSX_SRC_OBJECTS =  \
        monodll_stackwalk.o \
        monodll_stdpaths.o \
        monodll_threadpsx.o \
+       monodll_timerunx.o \
        monodll_cfstring.o \
        monodll_stdpaths_cf.o \
        monodll_utilsexc_base.o
@@ -3439,6 +3442,7 @@ COND_TOOLKIT_COCOA___BASE_MACOSX_SRC_OBJECTS =  \
        monodll_stackwalk.o \
        monodll_stdpaths.o \
        monodll_threadpsx.o \
+       monodll_timerunx.o \
        monodll_cfstring.o \
        monodll_stdpaths_cf.o \
        monodll_utilsexc_base.o
@@ -3452,6 +3456,7 @@ COND_TOOLKIT_GTK___BASE_MACOSX_SRC_OBJECTS =  \
        monodll_stackwalk.o \
        monodll_stdpaths.o \
        monodll_threadpsx.o \
+       monodll_timerunx.o \
        monodll_cfstring.o \
        monodll_stdpaths_cf.o \
        monodll_utilsexc_base.o
@@ -3469,7 +3474,8 @@ COND_TOOLKIT_MAC___BASE_MACOSX_SRC_OBJECTS =  \
        monodll_baseunix.o \
        monodll_dlunix.o \
        monodll_snglinst.o \
-       monodll_stdpaths.o
+       monodll_stdpaths.o \
+       monodll_timerunx.o
 @COND_TOOLKIT_MAC@__BASE_MACOSX_SRC_OBJECTS = $(COND_TOOLKIT_MAC___BASE_MACOSX_SRC_OBJECTS)
 COND_TOOLKIT_MOTIF___BASE_MACOSX_SRC_OBJECTS =  \
        monodll_baseunix.o \
@@ -3480,6 +3486,7 @@ COND_TOOLKIT_MOTIF___BASE_MACOSX_SRC_OBJECTS =  \
        monodll_stackwalk.o \
        monodll_stdpaths.o \
        monodll_threadpsx.o \
+       monodll_timerunx.o \
        monodll_cfstring.o \
        monodll_stdpaths_cf.o \
        monodll_utilsexc_base.o
@@ -3493,6 +3500,7 @@ COND_TOOLKIT_X11___BASE_MACOSX_SRC_OBJECTS =  \
        monodll_stackwalk.o \
        monodll_stdpaths.o \
        monodll_threadpsx.o \
+       monodll_timerunx.o \
        monodll_cfstring.o \
        monodll_stdpaths_cf.o \
        monodll_utilsexc_base.o
@@ -3710,7 +3718,6 @@ COND_USE_GUI_1_WXUNIV_0___CORE_SRC_OBJECTS =  \
        monodll_stockitem.o \
        monodll_tbarbase.o \
        monodll_textcmn.o \
-       monodll_timercmn.o \
        monodll_toplvcmn.o \
        monodll_treebase.o \
        monodll_valgen.o \
@@ -3889,7 +3896,6 @@ COND_USE_GUI_1_WXUNIV_1___CORE_SRC_OBJECTS =  \
        monodll_stockitem.o \
        monodll_tbarbase.o \
        monodll_textcmn.o \
-       monodll_timercmn.o \
        monodll_toplvcmn.o \
        monodll_treebase.o \
        monodll_valgen.o \
@@ -4132,7 +4138,6 @@ COND_TOOLKIT_MSW___LOWLEVEL_SRC_OBJECTS =  \
        monodll_region.o \
        monodll_renderer.o \
        monodll_settings.o \
-       monodll_timer.o \
        monodll_tooltip.o \
        monodll_toplevel.o \
        monodll_utilsgui.o \
@@ -4186,7 +4191,6 @@ COND_TOOLKIT_WINCE___LOWLEVEL_SRC_OBJECTS =  \
        monodll_region.o \
        monodll_renderer.o \
        monodll_settings.o \
-       monodll_timer.o \
        monodll_tooltip.o \
        monodll_toplevel.o \
        monodll_utilsgui.o \
@@ -4970,7 +4974,6 @@ COND_TOOLKIT_MSW___LOWLEVEL_SRC_OBJECTS_1 =  \
        monodll_region.o \
        monodll_renderer.o \
        monodll_settings.o \
-       monodll_timer.o \
        monodll_tooltip.o \
        monodll_toplevel.o \
        monodll_utilsgui.o \
@@ -5024,7 +5027,6 @@ COND_TOOLKIT_WINCE___LOWLEVEL_SRC_OBJECTS_1 =  \
        monodll_region.o \
        monodll_renderer.o \
        monodll_settings.o \
-       monodll_timer.o \
        monodll_tooltip.o \
        monodll_toplevel.o \
        monodll_utilsgui.o \
@@ -5199,7 +5201,8 @@ COND_PLATFORM_UNIX_1___BASE_PLATFORM_SRC_OBJECTS_1 =  \
        monolib_snglinst.o \
        monolib_stackwalk.o \
        monolib_stdpaths.o \
-       monolib_threadpsx.o
+       monolib_threadpsx.o \
+       monolib_timerunx.o
 @COND_PLATFORM_UNIX_1@__BASE_PLATFORM_SRC_OBJECTS_1 = $(COND_PLATFORM_UNIX_1___BASE_PLATFORM_SRC_OBJECTS_1)
 COND_PLATFORM_WIN32_1___BASE_PLATFORM_SRC_OBJECTS_1 =  \
        monolib_basemsw.o \
@@ -5216,6 +5219,7 @@ COND_PLATFORM_WIN32_1___BASE_PLATFORM_SRC_OBJECTS_1 =  \
        monolib_stackwalk.o \
        monolib_stdpaths.o \
        monolib_thread.o \
+       monolib_timer.o \
        monolib_utils.o \
        monolib_utilsexc.o \
        $(__BASE_WINCE_SRC_OBJECTS_1)
@@ -5230,6 +5234,7 @@ COND_TOOLKIT____BASE_MACOSX_SRC_OBJECTS_1 =  \
        monolib_stackwalk.o \
        monolib_stdpaths.o \
        monolib_threadpsx.o \
+       monolib_timerunx.o \
        monolib_cfstring.o \
        monolib_stdpaths_cf.o \
        monolib_utilsexc_base.o
@@ -5243,6 +5248,7 @@ COND_TOOLKIT_COCOA___BASE_MACOSX_SRC_OBJECTS_1 =  \
        monolib_stackwalk.o \
        monolib_stdpaths.o \
        monolib_threadpsx.o \
+       monolib_timerunx.o \
        monolib_cfstring.o \
        monolib_stdpaths_cf.o \
        monolib_utilsexc_base.o
@@ -5256,6 +5262,7 @@ COND_TOOLKIT_GTK___BASE_MACOSX_SRC_OBJECTS_1 =  \
        monolib_stackwalk.o \
        monolib_stdpaths.o \
        monolib_threadpsx.o \
+       monolib_timerunx.o \
        monolib_cfstring.o \
        monolib_stdpaths_cf.o \
        monolib_utilsexc_base.o
@@ -5273,7 +5280,8 @@ COND_TOOLKIT_MAC___BASE_MACOSX_SRC_OBJECTS_1 =  \
        monolib_baseunix.o \
        monolib_dlunix.o \
        monolib_snglinst.o \
-       monolib_stdpaths.o
+       monolib_stdpaths.o \
+       monolib_timerunx.o
 @COND_TOOLKIT_MAC@__BASE_MACOSX_SRC_OBJECTS_1 = $(COND_TOOLKIT_MAC___BASE_MACOSX_SRC_OBJECTS_1)
 COND_TOOLKIT_MOTIF___BASE_MACOSX_SRC_OBJECTS_1 =  \
        monolib_baseunix.o \
@@ -5284,6 +5292,7 @@ COND_TOOLKIT_MOTIF___BASE_MACOSX_SRC_OBJECTS_1 =  \
        monolib_stackwalk.o \
        monolib_stdpaths.o \
        monolib_threadpsx.o \
+       monolib_timerunx.o \
        monolib_cfstring.o \
        monolib_stdpaths_cf.o \
        monolib_utilsexc_base.o
@@ -5297,6 +5306,7 @@ COND_TOOLKIT_X11___BASE_MACOSX_SRC_OBJECTS_1 =  \
        monolib_stackwalk.o \
        monolib_stdpaths.o \
        monolib_threadpsx.o \
+       monolib_timerunx.o \
        monolib_cfstring.o \
        monolib_stdpaths_cf.o \
        monolib_utilsexc_base.o
@@ -5514,7 +5524,6 @@ COND_USE_GUI_1_WXUNIV_0___CORE_SRC_OBJECTS_1 =  \
        monolib_stockitem.o \
        monolib_tbarbase.o \
        monolib_textcmn.o \
-       monolib_timercmn.o \
        monolib_toplvcmn.o \
        monolib_treebase.o \
        monolib_valgen.o \
@@ -5693,7 +5702,6 @@ COND_USE_GUI_1_WXUNIV_1___CORE_SRC_OBJECTS_1 =  \
        monolib_stockitem.o \
        monolib_tbarbase.o \
        monolib_textcmn.o \
-       monolib_timercmn.o \
        monolib_toplvcmn.o \
        monolib_treebase.o \
        monolib_valgen.o \
@@ -5937,7 +5945,6 @@ COND_TOOLKIT_MSW___LOWLEVEL_SRC_OBJECTS_2 =  \
        monolib_region.o \
        monolib_renderer.o \
        monolib_settings.o \
-       monolib_timer.o \
        monolib_tooltip.o \
        monolib_toplevel.o \
        monolib_utilsgui.o \
@@ -5991,7 +5998,6 @@ COND_TOOLKIT_WINCE___LOWLEVEL_SRC_OBJECTS_2 =  \
        monolib_region.o \
        monolib_renderer.o \
        monolib_settings.o \
-       monolib_timer.o \
        monolib_tooltip.o \
        monolib_toplevel.o \
        monolib_utilsgui.o \
@@ -6776,7 +6782,6 @@ COND_TOOLKIT_MSW___LOWLEVEL_SRC_OBJECTS_3 =  \
        monolib_region.o \
        monolib_renderer.o \
        monolib_settings.o \
-       monolib_timer.o \
        monolib_tooltip.o \
        monolib_toplevel.o \
        monolib_utilsgui.o \
@@ -6830,7 +6835,6 @@ COND_TOOLKIT_WINCE___LOWLEVEL_SRC_OBJECTS_3 =  \
        monolib_region.o \
        monolib_renderer.o \
        monolib_settings.o \
-       monolib_timer.o \
        monolib_tooltip.o \
        monolib_toplevel.o \
        monolib_utilsgui.o \
@@ -7044,7 +7048,8 @@ COND_PLATFORM_UNIX_1___BASE_PLATFORM_SRC_OBJECTS_2 =  \
        basedll_snglinst.o \
        basedll_stackwalk.o \
        basedll_stdpaths.o \
-       basedll_threadpsx.o
+       basedll_threadpsx.o \
+       basedll_timerunx.o
 @COND_PLATFORM_UNIX_1@__BASE_PLATFORM_SRC_OBJECTS_2 = $(COND_PLATFORM_UNIX_1___BASE_PLATFORM_SRC_OBJECTS_2)
 COND_PLATFORM_WIN32_1___BASE_PLATFORM_SRC_OBJECTS_2 =  \
        basedll_basemsw.o \
@@ -7061,6 +7066,7 @@ COND_PLATFORM_WIN32_1___BASE_PLATFORM_SRC_OBJECTS_2 =  \
        basedll_stackwalk.o \
        basedll_stdpaths.o \
        basedll_thread.o \
+       basedll_timer.o \
        basedll_utils.o \
        basedll_utilsexc.o \
        $(__BASE_WINCE_SRC_OBJECTS_2)
@@ -7075,6 +7081,7 @@ COND_TOOLKIT____BASE_MACOSX_SRC_OBJECTS_2 =  \
        basedll_stackwalk.o \
        basedll_stdpaths.o \
        basedll_threadpsx.o \
+       basedll_timerunx.o \
        basedll_cfstring.o \
        basedll_stdpaths_cf.o \
        basedll_utilsexc_base.o
@@ -7088,6 +7095,7 @@ COND_TOOLKIT_COCOA___BASE_MACOSX_SRC_OBJECTS_2 =  \
        basedll_stackwalk.o \
        basedll_stdpaths.o \
        basedll_threadpsx.o \
+       basedll_timerunx.o \
        basedll_cfstring.o \
        basedll_stdpaths_cf.o \
        basedll_utilsexc_base.o
@@ -7101,6 +7109,7 @@ COND_TOOLKIT_GTK___BASE_MACOSX_SRC_OBJECTS_2 =  \
        basedll_stackwalk.o \
        basedll_stdpaths.o \
        basedll_threadpsx.o \
+       basedll_timerunx.o \
        basedll_cfstring.o \
        basedll_stdpaths_cf.o \
        basedll_utilsexc_base.o
@@ -7118,7 +7127,8 @@ COND_TOOLKIT_MAC___BASE_MACOSX_SRC_OBJECTS_2 =  \
        basedll_baseunix.o \
        basedll_dlunix.o \
        basedll_snglinst.o \
-       basedll_stdpaths.o
+       basedll_stdpaths.o \
+       basedll_timerunx.o
 @COND_TOOLKIT_MAC@__BASE_MACOSX_SRC_OBJECTS_2 = $(COND_TOOLKIT_MAC___BASE_MACOSX_SRC_OBJECTS_2)
 COND_TOOLKIT_MOTIF___BASE_MACOSX_SRC_OBJECTS_2 =  \
        basedll_baseunix.o \
@@ -7129,6 +7139,7 @@ COND_TOOLKIT_MOTIF___BASE_MACOSX_SRC_OBJECTS_2 =  \
        basedll_stackwalk.o \
        basedll_stdpaths.o \
        basedll_threadpsx.o \
+       basedll_timerunx.o \
        basedll_cfstring.o \
        basedll_stdpaths_cf.o \
        basedll_utilsexc_base.o
@@ -7142,6 +7153,7 @@ COND_TOOLKIT_X11___BASE_MACOSX_SRC_OBJECTS_2 =  \
        basedll_stackwalk.o \
        basedll_stdpaths.o \
        basedll_threadpsx.o \
+       basedll_timerunx.o \
        basedll_cfstring.o \
        basedll_stdpaths_cf.o \
        basedll_utilsexc_base.o
@@ -7207,7 +7219,8 @@ COND_PLATFORM_UNIX_1___BASE_PLATFORM_SRC_OBJECTS_3 =  \
        baselib_snglinst.o \
        baselib_stackwalk.o \
        baselib_stdpaths.o \
-       baselib_threadpsx.o
+       baselib_threadpsx.o \
+       baselib_timerunx.o
 @COND_PLATFORM_UNIX_1@__BASE_PLATFORM_SRC_OBJECTS_3 = $(COND_PLATFORM_UNIX_1___BASE_PLATFORM_SRC_OBJECTS_3)
 COND_PLATFORM_WIN32_1___BASE_PLATFORM_SRC_OBJECTS_3 =  \
        baselib_basemsw.o \
@@ -7224,6 +7237,7 @@ COND_PLATFORM_WIN32_1___BASE_PLATFORM_SRC_OBJECTS_3 =  \
        baselib_stackwalk.o \
        baselib_stdpaths.o \
        baselib_thread.o \
+       baselib_timer.o \
        baselib_utils.o \
        baselib_utilsexc.o \
        $(__BASE_WINCE_SRC_OBJECTS_3)
@@ -7238,6 +7252,7 @@ COND_TOOLKIT____BASE_MACOSX_SRC_OBJECTS_3 =  \
        baselib_stackwalk.o \
        baselib_stdpaths.o \
        baselib_threadpsx.o \
+       baselib_timerunx.o \
        baselib_cfstring.o \
        baselib_stdpaths_cf.o \
        baselib_utilsexc_base.o
@@ -7251,6 +7266,7 @@ COND_TOOLKIT_COCOA___BASE_MACOSX_SRC_OBJECTS_3 =  \
        baselib_stackwalk.o \
        baselib_stdpaths.o \
        baselib_threadpsx.o \
+       baselib_timerunx.o \
        baselib_cfstring.o \
        baselib_stdpaths_cf.o \
        baselib_utilsexc_base.o
@@ -7264,6 +7280,7 @@ COND_TOOLKIT_GTK___BASE_MACOSX_SRC_OBJECTS_3 =  \
        baselib_stackwalk.o \
        baselib_stdpaths.o \
        baselib_threadpsx.o \
+       baselib_timerunx.o \
        baselib_cfstring.o \
        baselib_stdpaths_cf.o \
        baselib_utilsexc_base.o
@@ -7281,7 +7298,8 @@ COND_TOOLKIT_MAC___BASE_MACOSX_SRC_OBJECTS_3 =  \
        baselib_baseunix.o \
        baselib_dlunix.o \
        baselib_snglinst.o \
-       baselib_stdpaths.o
+       baselib_stdpaths.o \
+       baselib_timerunx.o
 @COND_TOOLKIT_MAC@__BASE_MACOSX_SRC_OBJECTS_3 = $(COND_TOOLKIT_MAC___BASE_MACOSX_SRC_OBJECTS_3)
 COND_TOOLKIT_MOTIF___BASE_MACOSX_SRC_OBJECTS_3 =  \
        baselib_baseunix.o \
@@ -7292,6 +7310,7 @@ COND_TOOLKIT_MOTIF___BASE_MACOSX_SRC_OBJECTS_3 =  \
        baselib_stackwalk.o \
        baselib_stdpaths.o \
        baselib_threadpsx.o \
+       baselib_timerunx.o \
        baselib_cfstring.o \
        baselib_stdpaths_cf.o \
        baselib_utilsexc_base.o
@@ -7305,6 +7324,7 @@ COND_TOOLKIT_X11___BASE_MACOSX_SRC_OBJECTS_3 =  \
        baselib_stackwalk.o \
        baselib_stdpaths.o \
        baselib_threadpsx.o \
+       baselib_timerunx.o \
        baselib_cfstring.o \
        baselib_stdpaths_cf.o \
        baselib_utilsexc_base.o
@@ -7548,7 +7568,6 @@ COND_USE_GUI_1_WXUNIV_0___CORE_SRC_OBJECTS_2 =  \
        coredll_stockitem.o \
        coredll_tbarbase.o \
        coredll_textcmn.o \
-       coredll_timercmn.o \
        coredll_toplvcmn.o \
        coredll_treebase.o \
        coredll_valgen.o \
@@ -7727,7 +7746,6 @@ COND_USE_GUI_1_WXUNIV_1___CORE_SRC_OBJECTS_2 =  \
        coredll_stockitem.o \
        coredll_tbarbase.o \
        coredll_textcmn.o \
-       coredll_timercmn.o \
        coredll_toplvcmn.o \
        coredll_treebase.o \
        coredll_valgen.o \
@@ -7971,7 +7989,6 @@ COND_TOOLKIT_MSW___LOWLEVEL_SRC_OBJECTS_4 =  \
        coredll_region.o \
        coredll_renderer.o \
        coredll_settings.o \
-       coredll_timer.o \
        coredll_tooltip.o \
        coredll_toplevel.o \
        coredll_utilsgui.o \
@@ -8025,7 +8042,6 @@ COND_TOOLKIT_WINCE___LOWLEVEL_SRC_OBJECTS_4 =  \
        coredll_region.o \
        coredll_renderer.o \
        coredll_settings.o \
-       coredll_timer.o \
        coredll_tooltip.o \
        coredll_toplevel.o \
        coredll_utilsgui.o \
@@ -8810,7 +8826,6 @@ COND_TOOLKIT_MSW___LOWLEVEL_SRC_OBJECTS_5 =  \
        coredll_region.o \
        coredll_renderer.o \
        coredll_settings.o \
-       coredll_timer.o \
        coredll_tooltip.o \
        coredll_toplevel.o \
        coredll_utilsgui.o \
@@ -8864,7 +8879,6 @@ COND_TOOLKIT_WINCE___LOWLEVEL_SRC_OBJECTS_5 =  \
        coredll_region.o \
        coredll_renderer.o \
        coredll_settings.o \
-       coredll_timer.o \
        coredll_tooltip.o \
        coredll_toplevel.o \
        coredll_utilsgui.o \
@@ -9020,7 +9034,6 @@ COND_USE_GUI_1_WXUNIV_0___CORE_SRC_OBJECTS_3 =  \
        corelib_stockitem.o \
        corelib_tbarbase.o \
        corelib_textcmn.o \
-       corelib_timercmn.o \
        corelib_toplvcmn.o \
        corelib_treebase.o \
        corelib_valgen.o \
@@ -9199,7 +9212,6 @@ COND_USE_GUI_1_WXUNIV_1___CORE_SRC_OBJECTS_3 =  \
        corelib_stockitem.o \
        corelib_tbarbase.o \
        corelib_textcmn.o \
-       corelib_timercmn.o \
        corelib_toplvcmn.o \
        corelib_treebase.o \
        corelib_valgen.o \
@@ -9443,7 +9455,6 @@ COND_TOOLKIT_MSW___LOWLEVEL_SRC_OBJECTS_6 =  \
        corelib_region.o \
        corelib_renderer.o \
        corelib_settings.o \
-       corelib_timer.o \
        corelib_tooltip.o \
        corelib_toplevel.o \
        corelib_utilsgui.o \
@@ -9497,7 +9508,6 @@ COND_TOOLKIT_WINCE___LOWLEVEL_SRC_OBJECTS_6 =  \
        corelib_region.o \
        corelib_renderer.o \
        corelib_settings.o \
-       corelib_timer.o \
        corelib_tooltip.o \
        corelib_toplevel.o \
        corelib_utilsgui.o \
@@ -10282,7 +10292,6 @@ COND_TOOLKIT_MSW___LOWLEVEL_SRC_OBJECTS_7 =  \
        corelib_region.o \
        corelib_renderer.o \
        corelib_settings.o \
-       corelib_timer.o \
        corelib_tooltip.o \
        corelib_toplevel.o \
        corelib_utilsgui.o \
@@ -10336,7 +10345,6 @@ COND_TOOLKIT_WINCE___LOWLEVEL_SRC_OBJECTS_7 =  \
        corelib_region.o \
        corelib_renderer.o \
        corelib_settings.o \
-       corelib_timer.o \
        corelib_tooltip.o \
        corelib_toplevel.o \
        corelib_utilsgui.o \
@@ -13398,6 +13406,12 @@ monodll_textbuf.o: $(srcdir)/src/common/textbuf.cpp $(MONODLL_ODEP)
 monodll_textfile.o: $(srcdir)/src/common/textfile.cpp $(MONODLL_ODEP)
        $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/common/textfile.cpp
 
+monodll_timercmn.o: $(srcdir)/src/common/timercmn.cpp $(MONODLL_ODEP)
+       $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/common/timercmn.cpp
+
+monodll_timerimpl.o: $(srcdir)/src/common/timerimpl.cpp $(MONODLL_ODEP)
+       $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/common/timerimpl.cpp
+
 monodll_tokenzr.o: $(srcdir)/src/common/tokenzr.cpp $(MONODLL_ODEP)
        $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/common/tokenzr.cpp
 
@@ -14244,6 +14258,27 @@ monodll_sound_sdl.o: $(srcdir)/src/unix/sound_sdl.cpp $(MONODLL_ODEP)
 @COND_PLATFORM_MACOSX_1_TOOLKIT_@monodll_threadpsx.o: $(srcdir)/src/unix/threadpsx.cpp $(MONODLL_ODEP)
 @COND_PLATFORM_MACOSX_1_TOOLKIT_@      $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/unix/threadpsx.cpp
 
+@COND_PLATFORM_UNIX_1@monodll_timerunx.o: $(srcdir)/src/unix/timerunx.cpp $(MONODLL_ODEP)
+@COND_PLATFORM_UNIX_1@ $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/unix/timerunx.cpp
+
+@COND_PLATFORM_MACOSX_1_TOOLKIT_MAC@monodll_timerunx.o: $(srcdir)/src/unix/timerunx.cpp $(MONODLL_ODEP)
+@COND_PLATFORM_MACOSX_1_TOOLKIT_MAC@   $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/unix/timerunx.cpp
+
+@COND_PLATFORM_MACOSX_1_TOOLKIT_COCOA@monodll_timerunx.o: $(srcdir)/src/unix/timerunx.cpp $(MONODLL_ODEP)
+@COND_PLATFORM_MACOSX_1_TOOLKIT_COCOA@ $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/unix/timerunx.cpp
+
+@COND_PLATFORM_MACOSX_1_TOOLKIT_GTK@monodll_timerunx.o: $(srcdir)/src/unix/timerunx.cpp $(MONODLL_ODEP)
+@COND_PLATFORM_MACOSX_1_TOOLKIT_GTK@   $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/unix/timerunx.cpp
+
+@COND_PLATFORM_MACOSX_1_TOOLKIT_X11@monodll_timerunx.o: $(srcdir)/src/unix/timerunx.cpp $(MONODLL_ODEP)
+@COND_PLATFORM_MACOSX_1_TOOLKIT_X11@   $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/unix/timerunx.cpp
+
+@COND_PLATFORM_MACOSX_1_TOOLKIT_MOTIF@monodll_timerunx.o: $(srcdir)/src/unix/timerunx.cpp $(MONODLL_ODEP)
+@COND_PLATFORM_MACOSX_1_TOOLKIT_MOTIF@ $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/unix/timerunx.cpp
+
+@COND_PLATFORM_MACOSX_1_TOOLKIT_@monodll_timerunx.o: $(srcdir)/src/unix/timerunx.cpp $(MONODLL_ODEP)
+@COND_PLATFORM_MACOSX_1_TOOLKIT_@      $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/unix/timerunx.cpp
+
 @COND_PLATFORM_WIN32_1@monodll_thread.o: $(srcdir)/src/msw/thread.cpp $(MONODLL_ODEP)
 @COND_PLATFORM_WIN32_1@        $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/msw/thread.cpp
 
@@ -14256,6 +14291,36 @@ monodll_sound_sdl.o: $(srcdir)/src/unix/sound_sdl.cpp $(MONODLL_ODEP)
 @COND_PLATFORM_OS2_1@monodll_thread.o: $(srcdir)/src/os2/thread.cpp $(MONODLL_ODEP)
 @COND_PLATFORM_OS2_1@  $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/os2/thread.cpp
 
+@COND_PLATFORM_WIN32_1@monodll_timer.o: $(srcdir)/src/msw/timer.cpp $(MONODLL_ODEP)
+@COND_PLATFORM_WIN32_1@        $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/msw/timer.cpp
+
+@COND_TOOLKIT_GTK_TOOLKIT_VERSION_2_USE_GUI_1@monodll_timer.o: $(srcdir)/src/gtk/timer.cpp $(MONODLL_ODEP)
+@COND_TOOLKIT_GTK_TOOLKIT_VERSION_2_USE_GUI_1@ $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/gtk/timer.cpp
+
+@COND_TOOLKIT_GTK_TOOLKIT_VERSION__USE_GUI_1@monodll_timer.o: $(srcdir)/src/gtk1/timer.cpp $(MONODLL_ODEP)
+@COND_TOOLKIT_GTK_TOOLKIT_VERSION__USE_GUI_1@  $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/gtk1/timer.cpp
+
+@COND_TOOLKIT_X11_USE_GUI_1@monodll_timer.o: $(srcdir)/src/generic/timer.cpp $(MONODLL_ODEP)
+@COND_TOOLKIT_X11_USE_GUI_1@   $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/generic/timer.cpp
+
+@COND_TOOLKIT_MGL_USE_GUI_1@monodll_timer.o: $(srcdir)/src/generic/timer.cpp $(MONODLL_ODEP)
+@COND_TOOLKIT_MGL_USE_GUI_1@   $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/generic/timer.cpp
+
+@COND_TOOLKIT_DFB_USE_GUI_1@monodll_timer.o: $(srcdir)/src/generic/timer.cpp $(MONODLL_ODEP)
+@COND_TOOLKIT_DFB_USE_GUI_1@   $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/generic/timer.cpp
+
+@COND_TOOLKIT_MOTIF_USE_GUI_1_WXUNIV_0@monodll_timer.o: $(srcdir)/src/motif/timer.cpp $(MONODLL_ODEP)
+@COND_TOOLKIT_MOTIF_USE_GUI_1_WXUNIV_0@        $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/motif/timer.cpp
+
+@COND_TOOLKIT_MAC_USE_GUI_1_WXUNIV_0@monodll_timer.o: $(srcdir)/src/mac/carbon/timer.cpp $(MONODLL_ODEP)
+@COND_TOOLKIT_MAC_USE_GUI_1_WXUNIV_0@  $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/mac/carbon/timer.cpp
+
+@COND_TOOLKIT_COCOA_USE_GUI_1_WXUNIV_0@monodll_timer.o: $(srcdir)/src/cocoa/timer.mm $(MONODLL_ODEP)
+@COND_TOOLKIT_COCOA_USE_GUI_1_WXUNIV_0@        $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/cocoa/timer.mm
+
+@COND_TOOLKIT_PM_USE_GUI_1_WXUNIV_0@monodll_timer.o: $(srcdir)/src/os2/timer.cpp $(MONODLL_ODEP)
+@COND_TOOLKIT_PM_USE_GUI_1_WXUNIV_0@   $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/os2/timer.cpp
+
 @COND_PLATFORM_WIN32_1@monodll_utils.o: $(srcdir)/src/msw/utils.cpp $(MONODLL_ODEP)
 @COND_PLATFORM_WIN32_1@        $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/msw/utils.cpp
 
@@ -15258,39 +15323,6 @@ monodll_sound_sdl.o: $(srcdir)/src/unix/sound_sdl.cpp $(MONODLL_ODEP)
 @COND_TOOLKIT_PM_USE_GUI_1_WXUNIV_0@monodll_settings.o: $(srcdir)/src/os2/settings.cpp $(MONODLL_ODEP)
 @COND_TOOLKIT_PM_USE_GUI_1_WXUNIV_0@   $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/os2/settings.cpp
 
-@COND_TOOLKIT_GTK_TOOLKIT_VERSION_2_USE_GUI_1@monodll_timer.o: $(srcdir)/src/gtk/timer.cpp $(MONODLL_ODEP)
-@COND_TOOLKIT_GTK_TOOLKIT_VERSION_2_USE_GUI_1@ $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/gtk/timer.cpp
-
-@COND_TOOLKIT_GTK_TOOLKIT_VERSION__USE_GUI_1@monodll_timer.o: $(srcdir)/src/gtk1/timer.cpp $(MONODLL_ODEP)
-@COND_TOOLKIT_GTK_TOOLKIT_VERSION__USE_GUI_1@  $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/gtk1/timer.cpp
-
-@COND_TOOLKIT_MSW_USE_GUI_1@monodll_timer.o: $(srcdir)/src/msw/timer.cpp $(MONODLL_ODEP)
-@COND_TOOLKIT_MSW_USE_GUI_1@   $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/msw/timer.cpp
-
-@COND_TOOLKIT_WINCE_USE_GUI_1@monodll_timer.o: $(srcdir)/src/msw/timer.cpp $(MONODLL_ODEP)
-@COND_TOOLKIT_WINCE_USE_GUI_1@ $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/msw/timer.cpp
-
-@COND_TOOLKIT_X11_USE_GUI_1@monodll_timer.o: $(srcdir)/src/generic/timer.cpp $(MONODLL_ODEP)
-@COND_TOOLKIT_X11_USE_GUI_1@   $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/generic/timer.cpp
-
-@COND_TOOLKIT_MGL_USE_GUI_1@monodll_timer.o: $(srcdir)/src/generic/timer.cpp $(MONODLL_ODEP)
-@COND_TOOLKIT_MGL_USE_GUI_1@   $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/generic/timer.cpp
-
-@COND_TOOLKIT_DFB_USE_GUI_1@monodll_timer.o: $(srcdir)/src/generic/timer.cpp $(MONODLL_ODEP)
-@COND_TOOLKIT_DFB_USE_GUI_1@   $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/generic/timer.cpp
-
-@COND_TOOLKIT_MOTIF_USE_GUI_1_WXUNIV_0@monodll_timer.o: $(srcdir)/src/motif/timer.cpp $(MONODLL_ODEP)
-@COND_TOOLKIT_MOTIF_USE_GUI_1_WXUNIV_0@        $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/motif/timer.cpp
-
-@COND_TOOLKIT_MAC_USE_GUI_1_WXUNIV_0@monodll_timer.o: $(srcdir)/src/mac/carbon/timer.cpp $(MONODLL_ODEP)
-@COND_TOOLKIT_MAC_USE_GUI_1_WXUNIV_0@  $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/mac/carbon/timer.cpp
-
-@COND_TOOLKIT_COCOA_USE_GUI_1_WXUNIV_0@monodll_timer.o: $(srcdir)/src/cocoa/timer.mm $(MONODLL_ODEP)
-@COND_TOOLKIT_COCOA_USE_GUI_1_WXUNIV_0@        $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/cocoa/timer.mm
-
-@COND_TOOLKIT_PM_USE_GUI_1_WXUNIV_0@monodll_timer.o: $(srcdir)/src/os2/timer.cpp $(MONODLL_ODEP)
-@COND_TOOLKIT_PM_USE_GUI_1_WXUNIV_0@   $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/os2/timer.cpp
-
 @COND_TOOLKIT_GTK_TOOLKIT_VERSION_2_USE_GUI_1@monodll_tooltip.o: $(srcdir)/src/gtk/tooltip.cpp $(MONODLL_ODEP)
 @COND_TOOLKIT_GTK_TOOLKIT_VERSION_2_USE_GUI_1@ $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/gtk/tooltip.cpp
 
@@ -17055,9 +17087,6 @@ monodll_sound_sdl.o: $(srcdir)/src/unix/sound_sdl.cpp $(MONODLL_ODEP)
 @COND_USE_GUI_1@monodll_textcmn.o: $(srcdir)/src/common/textcmn.cpp $(MONODLL_ODEP)
 @COND_USE_GUI_1@       $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/common/textcmn.cpp
 
-@COND_USE_GUI_1@monodll_timercmn.o: $(srcdir)/src/common/timercmn.cpp $(MONODLL_ODEP)
-@COND_USE_GUI_1@       $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/common/timercmn.cpp
-
 @COND_USE_GUI_1@monodll_toplvcmn.o: $(srcdir)/src/common/toplvcmn.cpp $(MONODLL_ODEP)
 @COND_USE_GUI_1@       $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/common/toplvcmn.cpp
 
@@ -17580,6 +17609,12 @@ monolib_textbuf.o: $(srcdir)/src/common/textbuf.cpp $(MONOLIB_ODEP)
 monolib_textfile.o: $(srcdir)/src/common/textfile.cpp $(MONOLIB_ODEP)
        $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/common/textfile.cpp
 
+monolib_timercmn.o: $(srcdir)/src/common/timercmn.cpp $(MONOLIB_ODEP)
+       $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/common/timercmn.cpp
+
+monolib_timerimpl.o: $(srcdir)/src/common/timerimpl.cpp $(MONOLIB_ODEP)
+       $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/common/timerimpl.cpp
+
 monolib_tokenzr.o: $(srcdir)/src/common/tokenzr.cpp $(MONOLIB_ODEP)
        $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/common/tokenzr.cpp
 
@@ -18426,6 +18461,27 @@ monolib_sound_sdl.o: $(srcdir)/src/unix/sound_sdl.cpp $(MONOLIB_ODEP)
 @COND_PLATFORM_MACOSX_1_TOOLKIT_@monolib_threadpsx.o: $(srcdir)/src/unix/threadpsx.cpp $(MONOLIB_ODEP)
 @COND_PLATFORM_MACOSX_1_TOOLKIT_@      $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/unix/threadpsx.cpp
 
+@COND_PLATFORM_UNIX_1@monolib_timerunx.o: $(srcdir)/src/unix/timerunx.cpp $(MONOLIB_ODEP)
+@COND_PLATFORM_UNIX_1@ $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/unix/timerunx.cpp
+
+@COND_PLATFORM_MACOSX_1_TOOLKIT_MAC@monolib_timerunx.o: $(srcdir)/src/unix/timerunx.cpp $(MONOLIB_ODEP)
+@COND_PLATFORM_MACOSX_1_TOOLKIT_MAC@   $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/unix/timerunx.cpp
+
+@COND_PLATFORM_MACOSX_1_TOOLKIT_COCOA@monolib_timerunx.o: $(srcdir)/src/unix/timerunx.cpp $(MONOLIB_ODEP)
+@COND_PLATFORM_MACOSX_1_TOOLKIT_COCOA@ $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/unix/timerunx.cpp
+
+@COND_PLATFORM_MACOSX_1_TOOLKIT_GTK@monolib_timerunx.o: $(srcdir)/src/unix/timerunx.cpp $(MONOLIB_ODEP)
+@COND_PLATFORM_MACOSX_1_TOOLKIT_GTK@   $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/unix/timerunx.cpp
+
+@COND_PLATFORM_MACOSX_1_TOOLKIT_X11@monolib_timerunx.o: $(srcdir)/src/unix/timerunx.cpp $(MONOLIB_ODEP)
+@COND_PLATFORM_MACOSX_1_TOOLKIT_X11@   $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/unix/timerunx.cpp
+
+@COND_PLATFORM_MACOSX_1_TOOLKIT_MOTIF@monolib_timerunx.o: $(srcdir)/src/unix/timerunx.cpp $(MONOLIB_ODEP)
+@COND_PLATFORM_MACOSX_1_TOOLKIT_MOTIF@ $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/unix/timerunx.cpp
+
+@COND_PLATFORM_MACOSX_1_TOOLKIT_@monolib_timerunx.o: $(srcdir)/src/unix/timerunx.cpp $(MONOLIB_ODEP)
+@COND_PLATFORM_MACOSX_1_TOOLKIT_@      $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/unix/timerunx.cpp
+
 @COND_PLATFORM_WIN32_1@monolib_thread.o: $(srcdir)/src/msw/thread.cpp $(MONOLIB_ODEP)
 @COND_PLATFORM_WIN32_1@        $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/msw/thread.cpp
 
@@ -18438,6 +18494,36 @@ monolib_sound_sdl.o: $(srcdir)/src/unix/sound_sdl.cpp $(MONOLIB_ODEP)
 @COND_PLATFORM_OS2_1@monolib_thread.o: $(srcdir)/src/os2/thread.cpp $(MONOLIB_ODEP)
 @COND_PLATFORM_OS2_1@  $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/os2/thread.cpp
 
+@COND_PLATFORM_WIN32_1@monolib_timer.o: $(srcdir)/src/msw/timer.cpp $(MONOLIB_ODEP)
+@COND_PLATFORM_WIN32_1@        $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/msw/timer.cpp
+
+@COND_TOOLKIT_GTK_TOOLKIT_VERSION_2_USE_GUI_1@monolib_timer.o: $(srcdir)/src/gtk/timer.cpp $(MONOLIB_ODEP)
+@COND_TOOLKIT_GTK_TOOLKIT_VERSION_2_USE_GUI_1@ $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/gtk/timer.cpp
+
+@COND_TOOLKIT_GTK_TOOLKIT_VERSION__USE_GUI_1@monolib_timer.o: $(srcdir)/src/gtk1/timer.cpp $(MONOLIB_ODEP)
+@COND_TOOLKIT_GTK_TOOLKIT_VERSION__USE_GUI_1@  $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/gtk1/timer.cpp
+
+@COND_TOOLKIT_X11_USE_GUI_1@monolib_timer.o: $(srcdir)/src/generic/timer.cpp $(MONOLIB_ODEP)
+@COND_TOOLKIT_X11_USE_GUI_1@   $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/generic/timer.cpp
+
+@COND_TOOLKIT_MGL_USE_GUI_1@monolib_timer.o: $(srcdir)/src/generic/timer.cpp $(MONOLIB_ODEP)
+@COND_TOOLKIT_MGL_USE_GUI_1@   $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/generic/timer.cpp
+
+@COND_TOOLKIT_DFB_USE_GUI_1@monolib_timer.o: $(srcdir)/src/generic/timer.cpp $(MONOLIB_ODEP)
+@COND_TOOLKIT_DFB_USE_GUI_1@   $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/generic/timer.cpp
+
+@COND_TOOLKIT_MOTIF_USE_GUI_1_WXUNIV_0@monolib_timer.o: $(srcdir)/src/motif/timer.cpp $(MONOLIB_ODEP)
+@COND_TOOLKIT_MOTIF_USE_GUI_1_WXUNIV_0@        $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/motif/timer.cpp
+
+@COND_TOOLKIT_MAC_USE_GUI_1_WXUNIV_0@monolib_timer.o: $(srcdir)/src/mac/carbon/timer.cpp $(MONOLIB_ODEP)
+@COND_TOOLKIT_MAC_USE_GUI_1_WXUNIV_0@  $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/mac/carbon/timer.cpp
+
+@COND_TOOLKIT_COCOA_USE_GUI_1_WXUNIV_0@monolib_timer.o: $(srcdir)/src/cocoa/timer.mm $(MONOLIB_ODEP)
+@COND_TOOLKIT_COCOA_USE_GUI_1_WXUNIV_0@        $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/cocoa/timer.mm
+
+@COND_TOOLKIT_PM_USE_GUI_1_WXUNIV_0@monolib_timer.o: $(srcdir)/src/os2/timer.cpp $(MONOLIB_ODEP)
+@COND_TOOLKIT_PM_USE_GUI_1_WXUNIV_0@   $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/os2/timer.cpp
+
 @COND_PLATFORM_WIN32_1@monolib_utils.o: $(srcdir)/src/msw/utils.cpp $(MONOLIB_ODEP)
 @COND_PLATFORM_WIN32_1@        $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/msw/utils.cpp
 
@@ -19440,39 +19526,6 @@ monolib_sound_sdl.o: $(srcdir)/src/unix/sound_sdl.cpp $(MONOLIB_ODEP)
 @COND_TOOLKIT_PM_USE_GUI_1_WXUNIV_0@monolib_settings.o: $(srcdir)/src/os2/settings.cpp $(MONOLIB_ODEP)
 @COND_TOOLKIT_PM_USE_GUI_1_WXUNIV_0@   $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/os2/settings.cpp
 
-@COND_TOOLKIT_GTK_TOOLKIT_VERSION_2_USE_GUI_1@monolib_timer.o: $(srcdir)/src/gtk/timer.cpp $(MONOLIB_ODEP)
-@COND_TOOLKIT_GTK_TOOLKIT_VERSION_2_USE_GUI_1@ $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/gtk/timer.cpp
-
-@COND_TOOLKIT_GTK_TOOLKIT_VERSION__USE_GUI_1@monolib_timer.o: $(srcdir)/src/gtk1/timer.cpp $(MONOLIB_ODEP)
-@COND_TOOLKIT_GTK_TOOLKIT_VERSION__USE_GUI_1@  $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/gtk1/timer.cpp
-
-@COND_TOOLKIT_MSW_USE_GUI_1@monolib_timer.o: $(srcdir)/src/msw/timer.cpp $(MONOLIB_ODEP)
-@COND_TOOLKIT_MSW_USE_GUI_1@   $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/msw/timer.cpp
-
-@COND_TOOLKIT_WINCE_USE_GUI_1@monolib_timer.o: $(srcdir)/src/msw/timer.cpp $(MONOLIB_ODEP)
-@COND_TOOLKIT_WINCE_USE_GUI_1@ $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/msw/timer.cpp
-
-@COND_TOOLKIT_X11_USE_GUI_1@monolib_timer.o: $(srcdir)/src/generic/timer.cpp $(MONOLIB_ODEP)
-@COND_TOOLKIT_X11_USE_GUI_1@   $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/generic/timer.cpp
-
-@COND_TOOLKIT_MGL_USE_GUI_1@monolib_timer.o: $(srcdir)/src/generic/timer.cpp $(MONOLIB_ODEP)
-@COND_TOOLKIT_MGL_USE_GUI_1@   $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/generic/timer.cpp
-
-@COND_TOOLKIT_DFB_USE_GUI_1@monolib_timer.o: $(srcdir)/src/generic/timer.cpp $(MONOLIB_ODEP)
-@COND_TOOLKIT_DFB_USE_GUI_1@   $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/generic/timer.cpp
-
-@COND_TOOLKIT_MOTIF_USE_GUI_1_WXUNIV_0@monolib_timer.o: $(srcdir)/src/motif/timer.cpp $(MONOLIB_ODEP)
-@COND_TOOLKIT_MOTIF_USE_GUI_1_WXUNIV_0@        $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/motif/timer.cpp
-
-@COND_TOOLKIT_MAC_USE_GUI_1_WXUNIV_0@monolib_timer.o: $(srcdir)/src/mac/carbon/timer.cpp $(MONOLIB_ODEP)
-@COND_TOOLKIT_MAC_USE_GUI_1_WXUNIV_0@  $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/mac/carbon/timer.cpp
-
-@COND_TOOLKIT_COCOA_USE_GUI_1_WXUNIV_0@monolib_timer.o: $(srcdir)/src/cocoa/timer.mm $(MONOLIB_ODEP)
-@COND_TOOLKIT_COCOA_USE_GUI_1_WXUNIV_0@        $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/cocoa/timer.mm
-
-@COND_TOOLKIT_PM_USE_GUI_1_WXUNIV_0@monolib_timer.o: $(srcdir)/src/os2/timer.cpp $(MONOLIB_ODEP)
-@COND_TOOLKIT_PM_USE_GUI_1_WXUNIV_0@   $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/os2/timer.cpp
-
 @COND_TOOLKIT_GTK_TOOLKIT_VERSION_2_USE_GUI_1@monolib_tooltip.o: $(srcdir)/src/gtk/tooltip.cpp $(MONOLIB_ODEP)
 @COND_TOOLKIT_GTK_TOOLKIT_VERSION_2_USE_GUI_1@ $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/gtk/tooltip.cpp
 
@@ -21237,9 +21290,6 @@ monolib_sound_sdl.o: $(srcdir)/src/unix/sound_sdl.cpp $(MONOLIB_ODEP)
 @COND_USE_GUI_1@monolib_textcmn.o: $(srcdir)/src/common/textcmn.cpp $(MONOLIB_ODEP)
 @COND_USE_GUI_1@       $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/common/textcmn.cpp
 
-@COND_USE_GUI_1@monolib_timercmn.o: $(srcdir)/src/common/timercmn.cpp $(MONOLIB_ODEP)
-@COND_USE_GUI_1@       $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/common/timercmn.cpp
-
 @COND_USE_GUI_1@monolib_toplvcmn.o: $(srcdir)/src/common/toplvcmn.cpp $(MONOLIB_ODEP)
 @COND_USE_GUI_1@       $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/common/toplvcmn.cpp
 
@@ -21762,6 +21812,12 @@ basedll_textbuf.o: $(srcdir)/src/common/textbuf.cpp $(BASEDLL_ODEP)
 basedll_textfile.o: $(srcdir)/src/common/textfile.cpp $(BASEDLL_ODEP)
        $(CXXC) -c -o $@ $(BASEDLL_CXXFLAGS) $(srcdir)/src/common/textfile.cpp
 
+basedll_timercmn.o: $(srcdir)/src/common/timercmn.cpp $(BASEDLL_ODEP)
+       $(CXXC) -c -o $@ $(BASEDLL_CXXFLAGS) $(srcdir)/src/common/timercmn.cpp
+
+basedll_timerimpl.o: $(srcdir)/src/common/timerimpl.cpp $(BASEDLL_ODEP)
+       $(CXXC) -c -o $@ $(BASEDLL_CXXFLAGS) $(srcdir)/src/common/timerimpl.cpp
+
 basedll_tokenzr.o: $(srcdir)/src/common/tokenzr.cpp $(BASEDLL_ODEP)
        $(CXXC) -c -o $@ $(BASEDLL_CXXFLAGS) $(srcdir)/src/common/tokenzr.cpp
 
@@ -21822,6 +21878,9 @@ basedll_regconf.o: $(srcdir)/src/msw/regconf.cpp $(BASEDLL_ODEP)
 basedll_registry.o: $(srcdir)/src/msw/registry.cpp $(BASEDLL_ODEP)
        $(CXXC) -c -o $@ $(BASEDLL_CXXFLAGS) $(srcdir)/src/msw/registry.cpp
 
+basedll_timer.o: $(srcdir)/src/msw/timer.cpp $(BASEDLL_ODEP)
+       $(CXXC) -c -o $@ $(BASEDLL_CXXFLAGS) $(srcdir)/src/msw/timer.cpp
+
 basedll_time.o: $(srcdir)/src/msw/wince/time.cpp $(BASEDLL_ODEP)
        $(CXXC) -c -o $@ $(BASEDLL_CXXFLAGS) $(srcdir)/src/msw/wince/time.cpp
 
@@ -22065,6 +22124,27 @@ basedll_uma.o: $(srcdir)/src/mac/carbon/uma.cpp $(BASEDLL_ODEP)
 @COND_PLATFORM_MACOSX_1_TOOLKIT_@basedll_threadpsx.o: $(srcdir)/src/unix/threadpsx.cpp $(BASEDLL_ODEP)
 @COND_PLATFORM_MACOSX_1_TOOLKIT_@      $(CXXC) -c -o $@ $(BASEDLL_CXXFLAGS) $(srcdir)/src/unix/threadpsx.cpp
 
+@COND_PLATFORM_UNIX_1@basedll_timerunx.o: $(srcdir)/src/unix/timerunx.cpp $(BASEDLL_ODEP)
+@COND_PLATFORM_UNIX_1@ $(CXXC) -c -o $@ $(BASEDLL_CXXFLAGS) $(srcdir)/src/unix/timerunx.cpp
+
+@COND_PLATFORM_MACOSX_1_TOOLKIT_MAC@basedll_timerunx.o: $(srcdir)/src/unix/timerunx.cpp $(BASEDLL_ODEP)
+@COND_PLATFORM_MACOSX_1_TOOLKIT_MAC@   $(CXXC) -c -o $@ $(BASEDLL_CXXFLAGS) $(srcdir)/src/unix/timerunx.cpp
+
+@COND_PLATFORM_MACOSX_1_TOOLKIT_COCOA@basedll_timerunx.o: $(srcdir)/src/unix/timerunx.cpp $(BASEDLL_ODEP)
+@COND_PLATFORM_MACOSX_1_TOOLKIT_COCOA@ $(CXXC) -c -o $@ $(BASEDLL_CXXFLAGS) $(srcdir)/src/unix/timerunx.cpp
+
+@COND_PLATFORM_MACOSX_1_TOOLKIT_GTK@basedll_timerunx.o: $(srcdir)/src/unix/timerunx.cpp $(BASEDLL_ODEP)
+@COND_PLATFORM_MACOSX_1_TOOLKIT_GTK@   $(CXXC) -c -o $@ $(BASEDLL_CXXFLAGS) $(srcdir)/src/unix/timerunx.cpp
+
+@COND_PLATFORM_MACOSX_1_TOOLKIT_X11@basedll_timerunx.o: $(srcdir)/src/unix/timerunx.cpp $(BASEDLL_ODEP)
+@COND_PLATFORM_MACOSX_1_TOOLKIT_X11@   $(CXXC) -c -o $@ $(BASEDLL_CXXFLAGS) $(srcdir)/src/unix/timerunx.cpp
+
+@COND_PLATFORM_MACOSX_1_TOOLKIT_MOTIF@basedll_timerunx.o: $(srcdir)/src/unix/timerunx.cpp $(BASEDLL_ODEP)
+@COND_PLATFORM_MACOSX_1_TOOLKIT_MOTIF@ $(CXXC) -c -o $@ $(BASEDLL_CXXFLAGS) $(srcdir)/src/unix/timerunx.cpp
+
+@COND_PLATFORM_MACOSX_1_TOOLKIT_@basedll_timerunx.o: $(srcdir)/src/unix/timerunx.cpp $(BASEDLL_ODEP)
+@COND_PLATFORM_MACOSX_1_TOOLKIT_@      $(CXXC) -c -o $@ $(BASEDLL_CXXFLAGS) $(srcdir)/src/unix/timerunx.cpp
+
 @COND_PLATFORM_WIN32_1@basedll_thread.o: $(srcdir)/src/msw/thread.cpp $(BASEDLL_ODEP)
 @COND_PLATFORM_WIN32_1@        $(CXXC) -c -o $@ $(BASEDLL_CXXFLAGS) $(srcdir)/src/msw/thread.cpp
 
@@ -22368,6 +22448,12 @@ baselib_textbuf.o: $(srcdir)/src/common/textbuf.cpp $(BASELIB_ODEP)
 baselib_textfile.o: $(srcdir)/src/common/textfile.cpp $(BASELIB_ODEP)
        $(CXXC) -c -o $@ $(BASELIB_CXXFLAGS) $(srcdir)/src/common/textfile.cpp
 
+baselib_timercmn.o: $(srcdir)/src/common/timercmn.cpp $(BASELIB_ODEP)
+       $(CXXC) -c -o $@ $(BASELIB_CXXFLAGS) $(srcdir)/src/common/timercmn.cpp
+
+baselib_timerimpl.o: $(srcdir)/src/common/timerimpl.cpp $(BASELIB_ODEP)
+       $(CXXC) -c -o $@ $(BASELIB_CXXFLAGS) $(srcdir)/src/common/timerimpl.cpp
+
 baselib_tokenzr.o: $(srcdir)/src/common/tokenzr.cpp $(BASELIB_ODEP)
        $(CXXC) -c -o $@ $(BASELIB_CXXFLAGS) $(srcdir)/src/common/tokenzr.cpp
 
@@ -22428,6 +22514,9 @@ baselib_regconf.o: $(srcdir)/src/msw/regconf.cpp $(BASELIB_ODEP)
 baselib_registry.o: $(srcdir)/src/msw/registry.cpp $(BASELIB_ODEP)
        $(CXXC) -c -o $@ $(BASELIB_CXXFLAGS) $(srcdir)/src/msw/registry.cpp
 
+baselib_timer.o: $(srcdir)/src/msw/timer.cpp $(BASELIB_ODEP)
+       $(CXXC) -c -o $@ $(BASELIB_CXXFLAGS) $(srcdir)/src/msw/timer.cpp
+
 baselib_time.o: $(srcdir)/src/msw/wince/time.cpp $(BASELIB_ODEP)
        $(CXXC) -c -o $@ $(BASELIB_CXXFLAGS) $(srcdir)/src/msw/wince/time.cpp
 
@@ -22671,6 +22760,27 @@ baselib_uma.o: $(srcdir)/src/mac/carbon/uma.cpp $(BASELIB_ODEP)
 @COND_PLATFORM_MACOSX_1_TOOLKIT_@baselib_threadpsx.o: $(srcdir)/src/unix/threadpsx.cpp $(BASELIB_ODEP)
 @COND_PLATFORM_MACOSX_1_TOOLKIT_@      $(CXXC) -c -o $@ $(BASELIB_CXXFLAGS) $(srcdir)/src/unix/threadpsx.cpp
 
+@COND_PLATFORM_UNIX_1@baselib_timerunx.o: $(srcdir)/src/unix/timerunx.cpp $(BASELIB_ODEP)
+@COND_PLATFORM_UNIX_1@ $(CXXC) -c -o $@ $(BASELIB_CXXFLAGS) $(srcdir)/src/unix/timerunx.cpp
+
+@COND_PLATFORM_MACOSX_1_TOOLKIT_MAC@baselib_timerunx.o: $(srcdir)/src/unix/timerunx.cpp $(BASELIB_ODEP)
+@COND_PLATFORM_MACOSX_1_TOOLKIT_MAC@   $(CXXC) -c -o $@ $(BASELIB_CXXFLAGS) $(srcdir)/src/unix/timerunx.cpp
+
+@COND_PLATFORM_MACOSX_1_TOOLKIT_COCOA@baselib_timerunx.o: $(srcdir)/src/unix/timerunx.cpp $(BASELIB_ODEP)
+@COND_PLATFORM_MACOSX_1_TOOLKIT_COCOA@ $(CXXC) -c -o $@ $(BASELIB_CXXFLAGS) $(srcdir)/src/unix/timerunx.cpp
+
+@COND_PLATFORM_MACOSX_1_TOOLKIT_GTK@baselib_timerunx.o: $(srcdir)/src/unix/timerunx.cpp $(BASELIB_ODEP)
+@COND_PLATFORM_MACOSX_1_TOOLKIT_GTK@   $(CXXC) -c -o $@ $(BASELIB_CXXFLAGS) $(srcdir)/src/unix/timerunx.cpp
+
+@COND_PLATFORM_MACOSX_1_TOOLKIT_X11@baselib_timerunx.o: $(srcdir)/src/unix/timerunx.cpp $(BASELIB_ODEP)
+@COND_PLATFORM_MACOSX_1_TOOLKIT_X11@   $(CXXC) -c -o $@ $(BASELIB_CXXFLAGS) $(srcdir)/src/unix/timerunx.cpp
+
+@COND_PLATFORM_MACOSX_1_TOOLKIT_MOTIF@baselib_timerunx.o: $(srcdir)/src/unix/timerunx.cpp $(BASELIB_ODEP)
+@COND_PLATFORM_MACOSX_1_TOOLKIT_MOTIF@ $(CXXC) -c -o $@ $(BASELIB_CXXFLAGS) $(srcdir)/src/unix/timerunx.cpp
+
+@COND_PLATFORM_MACOSX_1_TOOLKIT_@baselib_timerunx.o: $(srcdir)/src/unix/timerunx.cpp $(BASELIB_ODEP)
+@COND_PLATFORM_MACOSX_1_TOOLKIT_@      $(CXXC) -c -o $@ $(BASELIB_CXXFLAGS) $(srcdir)/src/unix/timerunx.cpp
+
 @COND_PLATFORM_WIN32_1@baselib_thread.o: $(srcdir)/src/msw/thread.cpp $(BASELIB_ODEP)
 @COND_PLATFORM_WIN32_1@        $(CXXC) -c -o $@ $(BASELIB_CXXFLAGS) $(srcdir)/src/msw/thread.cpp
 
@@ -24015,12 +24125,6 @@ coredll_win32.o: $(srcdir)/src/univ/themes/win32.cpp $(COREDLL_ODEP)
 @COND_TOOLKIT_GTK_TOOLKIT_VERSION__USE_GUI_1@coredll_timer.o: $(srcdir)/src/gtk1/timer.cpp $(COREDLL_ODEP)
 @COND_TOOLKIT_GTK_TOOLKIT_VERSION__USE_GUI_1@  $(CXXC) -c -o $@ $(COREDLL_CXXFLAGS) $(srcdir)/src/gtk1/timer.cpp
 
-@COND_TOOLKIT_MSW_USE_GUI_1@coredll_timer.o: $(srcdir)/src/msw/timer.cpp $(COREDLL_ODEP)
-@COND_TOOLKIT_MSW_USE_GUI_1@   $(CXXC) -c -o $@ $(COREDLL_CXXFLAGS) $(srcdir)/src/msw/timer.cpp
-
-@COND_TOOLKIT_WINCE_USE_GUI_1@coredll_timer.o: $(srcdir)/src/msw/timer.cpp $(COREDLL_ODEP)
-@COND_TOOLKIT_WINCE_USE_GUI_1@ $(CXXC) -c -o $@ $(COREDLL_CXXFLAGS) $(srcdir)/src/msw/timer.cpp
-
 @COND_TOOLKIT_X11_USE_GUI_1@coredll_timer.o: $(srcdir)/src/generic/timer.cpp $(COREDLL_ODEP)
 @COND_TOOLKIT_X11_USE_GUI_1@   $(CXXC) -c -o $@ $(COREDLL_CXXFLAGS) $(srcdir)/src/generic/timer.cpp
 
@@ -25770,9 +25874,6 @@ coredll_win32.o: $(srcdir)/src/univ/themes/win32.cpp $(COREDLL_ODEP)
 @COND_USE_GUI_1@coredll_textcmn.o: $(srcdir)/src/common/textcmn.cpp $(COREDLL_ODEP)
 @COND_USE_GUI_1@       $(CXXC) -c -o $@ $(COREDLL_CXXFLAGS) $(srcdir)/src/common/textcmn.cpp
 
-@COND_USE_GUI_1@coredll_timercmn.o: $(srcdir)/src/common/timercmn.cpp $(COREDLL_ODEP)
-@COND_USE_GUI_1@       $(CXXC) -c -o $@ $(COREDLL_CXXFLAGS) $(srcdir)/src/common/timercmn.cpp
-
 @COND_USE_GUI_1@coredll_toplvcmn.o: $(srcdir)/src/common/toplvcmn.cpp $(COREDLL_ODEP)
 @COND_USE_GUI_1@       $(CXXC) -c -o $@ $(COREDLL_CXXFLAGS) $(srcdir)/src/common/toplvcmn.cpp
 
@@ -26997,12 +27098,6 @@ corelib_win32.o: $(srcdir)/src/univ/themes/win32.cpp $(CORELIB_ODEP)
 @COND_TOOLKIT_GTK_TOOLKIT_VERSION__USE_GUI_1@corelib_timer.o: $(srcdir)/src/gtk1/timer.cpp $(CORELIB_ODEP)
 @COND_TOOLKIT_GTK_TOOLKIT_VERSION__USE_GUI_1@  $(CXXC) -c -o $@ $(CORELIB_CXXFLAGS) $(srcdir)/src/gtk1/timer.cpp
 
-@COND_TOOLKIT_MSW_USE_GUI_1@corelib_timer.o: $(srcdir)/src/msw/timer.cpp $(CORELIB_ODEP)
-@COND_TOOLKIT_MSW_USE_GUI_1@   $(CXXC) -c -o $@ $(CORELIB_CXXFLAGS) $(srcdir)/src/msw/timer.cpp
-
-@COND_TOOLKIT_WINCE_USE_GUI_1@corelib_timer.o: $(srcdir)/src/msw/timer.cpp $(CORELIB_ODEP)
-@COND_TOOLKIT_WINCE_USE_GUI_1@ $(CXXC) -c -o $@ $(CORELIB_CXXFLAGS) $(srcdir)/src/msw/timer.cpp
-
 @COND_TOOLKIT_X11_USE_GUI_1@corelib_timer.o: $(srcdir)/src/generic/timer.cpp $(CORELIB_ODEP)
 @COND_TOOLKIT_X11_USE_GUI_1@   $(CXXC) -c -o $@ $(CORELIB_CXXFLAGS) $(srcdir)/src/generic/timer.cpp
 
@@ -28752,9 +28847,6 @@ corelib_win32.o: $(srcdir)/src/univ/themes/win32.cpp $(CORELIB_ODEP)
 @COND_USE_GUI_1@corelib_textcmn.o: $(srcdir)/src/common/textcmn.cpp $(CORELIB_ODEP)
 @COND_USE_GUI_1@       $(CXXC) -c -o $@ $(CORELIB_CXXFLAGS) $(srcdir)/src/common/textcmn.cpp
 
-@COND_USE_GUI_1@corelib_timercmn.o: $(srcdir)/src/common/timercmn.cpp $(CORELIB_ODEP)
-@COND_USE_GUI_1@       $(CXXC) -c -o $@ $(CORELIB_CXXFLAGS) $(srcdir)/src/common/timercmn.cpp
-
 @COND_USE_GUI_1@corelib_toplvcmn.o: $(srcdir)/src/common/toplvcmn.cpp $(CORELIB_ODEP)
 @COND_USE_GUI_1@       $(CXXC) -c -o $@ $(CORELIB_CXXFLAGS) $(srcdir)/src/common/toplvcmn.cpp
 
index f3f0555cb8c142e34165bb89e09fe2c60721cfb5..9227f7d5bfca5d0554e1559cdb7e2a2613eb1a1f 100644 (file)
@@ -62,6 +62,7 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file!
     src/unix/stackwalk.cpp
     src/unix/stdpaths.cpp
     src/unix/threadpsx.cpp
+    src/unix/timerunx.cpp
 </set>
 <set var="BASE_AND_GUI_UNIX_SRC" hints="files">
     src/unix/utilsunx.cpp
@@ -95,6 +96,7 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file!
     src/msw/stackwalk.cpp
     src/msw/stdpaths.cpp
     src/msw/thread.cpp
+    src/msw/timer.cpp
     src/msw/utils.cpp
     src/msw/utilsexc.cpp
 </set>
@@ -201,6 +203,7 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file!
     src/unix/dlunix.cpp
     src/unix/snglinst.cpp
     src/unix/stdpaths.cpp
+    src/unix/timerunx.cpp
 </set>
 <set var="BASE_MACOSX_WXMAC_HDR" hints="files">
     $(BASE_MAC_HDR)
@@ -348,6 +351,8 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file!
     src/common/tarstrm.cpp
     src/common/textbuf.cpp
     src/common/textfile.cpp
+    src/common/timercmn.cpp
+    src/common/timerimpl.cpp
     src/common/tokenzr.cpp
     src/common/txtstrm.cpp
     src/common/unichar.cpp
@@ -661,7 +666,6 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file!
     src/common/stockitem.cpp
     src/common/tbarbase.cpp
     src/common/textcmn.cpp
-    src/common/timercmn.cpp
     src/common/toplvcmn.cpp
     src/common/treebase.cpp
     src/common/valgen.cpp
@@ -759,7 +763,6 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file!
     wx/generic/splitter.h
     wx/generic/srchctlg.h
     wx/generic/textdlgg.h
-    wx/generic/timer.h
     wx/generic/treectlg.h
     wx/graphics.h
     wx/helphtml.h
@@ -983,7 +986,6 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file!
     wx/gtk/pen.h
     wx/gtk/popupwin.h
     wx/gtk/region.h
-    wx/gtk/timer.h
     wx/gtk/tooltip.h
     wx/gtk/toplevel.h
     wx/gtk/win_gtk.h
@@ -1162,7 +1164,6 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file!
     wx/gtk1/pen.h
     wx/gtk1/popupwin.h
     wx/gtk1/region.h
-    wx/gtk1/timer.h
     wx/gtk1/tooltip.h
     wx/gtk1/toplevel.h
     wx/gtk1/win_gtk.h
@@ -1404,7 +1405,6 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file!
     wx/motif/stattext.h
     wx/motif/textctrl.h
     wx/motif/tglbtn.h
-    wx/motif/timer.h
     wx/motif/toolbar.h
     wx/motif/toplevel.h
     wx/motif/window.h
@@ -1531,7 +1531,6 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file!
     src/msw/region.cpp
     src/msw/renderer.cpp
     src/msw/settings.cpp
-    src/msw/timer.cpp
     src/msw/tooltip.cpp
     src/msw/toplevel.cpp
     src/msw/utilsgui.cpp
@@ -1683,7 +1682,6 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file!
     wx/msw/tbar95.h
     wx/msw/textctrl.h
     wx/msw/tglbtn.h
-    wx/msw/timer.h
     wx/msw/tooltip.h
     wx/msw/toplevel.h
     wx/msw/treectrl.h
@@ -1811,7 +1809,6 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file!
     wx/generic/icon.h
     wx/generic/imaglist.h
     wx/generic/mask.h
-    wx/generic/timer.h
     wx/mgl/app.h
     wx/mgl/bitmap.h
     wx/mgl/brush.h
@@ -1876,7 +1873,6 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file!
     wx/generic/icon.h
     wx/generic/imaglist.h
     wx/generic/mask.h
-    wx/generic/timer.h
     wx/dfb/app.h
     wx/dfb/bitmap.h
     wx/dfb/brush.h
@@ -2061,7 +2057,6 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file!
     wx/os2/tabctrl.h
     wx/os2/textctrl.h
     wx/os2/tglbtn.h
-    wx/os2/timer.h
     wx/os2/toolbar.h
     wx/os2/tooltip.h
     wx/os2/toplevel.h
@@ -2267,7 +2262,6 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file!
     wx/mac/tabctrl.h
     wx/mac/taskbarosx.h
     wx/mac/textctrl.h
-    wx/mac/timer.h
     wx/mac/tglbtn.h
     wx/mac/toolbar.h
     wx/mac/tooltip.h
@@ -2353,7 +2347,6 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file!
     wx/mac/carbon/statusbr.h
     wx/mac/carbon/tabctrl.h
     wx/mac/carbon/textctrl.h
-    wx/mac/carbon/timer.h
     wx/mac/carbon/tglbtn.h
     wx/mac/carbon/toolbar.h
     wx/mac/carbon/tooltip.h
@@ -2541,7 +2534,6 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file!
     wx/cocoa/statline.h
     wx/cocoa/stattext.h
     wx/cocoa/textctrl.h
-    wx/cocoa/timer.h
     wx/cocoa/toolbar.h
     wx/cocoa/tooltip.h
     wx/cocoa/toplevel.h
index 5050d90df9d80eda289d8f0dbe5d270c7b589bea..d62fd3818bf8a16f5f4e5dca4e72238f405168c1 100644 (file)
@@ -352,6 +352,8 @@ MONODLL_OBJECTS =  \
        $(OBJS)\monodll_tarstrm.obj \
        $(OBJS)\monodll_textbuf.obj \
        $(OBJS)\monodll_textfile.obj \
+       $(OBJS)\monodll_timercmn.obj \
+       $(OBJS)\monodll_timerimpl.obj \
        $(OBJS)\monodll_tokenzr.obj \
        $(OBJS)\monodll_txtstrm.obj \
        $(OBJS)\monodll_unichar.obj \
@@ -378,6 +380,7 @@ MONODLL_OBJECTS =  \
        $(OBJS)\monodll_stackwalk.obj \
        $(OBJS)\monodll_stdpaths.obj \
        $(OBJS)\monodll_thread.obj \
+       $(OBJS)\monodll_timer.obj \
        $(OBJS)\monodll_utils.obj \
        $(OBJS)\monodll_utilsexc.obj \
        $(OBJS)\monodll_event.obj \
@@ -481,6 +484,8 @@ MONOLIB_OBJECTS =  \
        $(OBJS)\monolib_tarstrm.obj \
        $(OBJS)\monolib_textbuf.obj \
        $(OBJS)\monolib_textfile.obj \
+       $(OBJS)\monolib_timercmn.obj \
+       $(OBJS)\monolib_timerimpl.obj \
        $(OBJS)\monolib_tokenzr.obj \
        $(OBJS)\monolib_txtstrm.obj \
        $(OBJS)\monolib_unichar.obj \
@@ -507,6 +512,7 @@ MONOLIB_OBJECTS =  \
        $(OBJS)\monolib_stackwalk.obj \
        $(OBJS)\monolib_stdpaths.obj \
        $(OBJS)\monolib_thread.obj \
+       $(OBJS)\monolib_timer.obj \
        $(OBJS)\monolib_utils.obj \
        $(OBJS)\monolib_utilsexc.obj \
        $(OBJS)\monolib_event.obj \
@@ -608,6 +614,8 @@ BASEDLL_OBJECTS =  \
        $(OBJS)\basedll_tarstrm.obj \
        $(OBJS)\basedll_textbuf.obj \
        $(OBJS)\basedll_textfile.obj \
+       $(OBJS)\basedll_timercmn.obj \
+       $(OBJS)\basedll_timerimpl.obj \
        $(OBJS)\basedll_tokenzr.obj \
        $(OBJS)\basedll_txtstrm.obj \
        $(OBJS)\basedll_unichar.obj \
@@ -634,6 +642,7 @@ BASEDLL_OBJECTS =  \
        $(OBJS)\basedll_stackwalk.obj \
        $(OBJS)\basedll_stdpaths.obj \
        $(OBJS)\basedll_thread.obj \
+       $(OBJS)\basedll_timer.obj \
        $(OBJS)\basedll_utils.obj \
        $(OBJS)\basedll_utilsexc.obj \
        $(OBJS)\basedll_event.obj \
@@ -719,6 +728,8 @@ BASELIB_OBJECTS =  \
        $(OBJS)\baselib_tarstrm.obj \
        $(OBJS)\baselib_textbuf.obj \
        $(OBJS)\baselib_textfile.obj \
+       $(OBJS)\baselib_timercmn.obj \
+       $(OBJS)\baselib_timerimpl.obj \
        $(OBJS)\baselib_tokenzr.obj \
        $(OBJS)\baselib_txtstrm.obj \
        $(OBJS)\baselib_unichar.obj \
@@ -745,6 +756,7 @@ BASELIB_OBJECTS =  \
        $(OBJS)\baselib_stackwalk.obj \
        $(OBJS)\baselib_stdpaths.obj \
        $(OBJS)\baselib_thread.obj \
+       $(OBJS)\baselib_timer.obj \
        $(OBJS)\baselib_utils.obj \
        $(OBJS)\baselib_utilsexc.obj \
        $(OBJS)\baselib_event.obj \
@@ -1512,7 +1524,6 @@ ____CORE_SRC_FILENAMES_OBJECTS =  \
        $(OBJS)\monodll_region.obj \
        $(OBJS)\monodll_renderer.obj \
        $(OBJS)\monodll_settings.obj \
-       $(OBJS)\monodll_timer.obj \
        $(OBJS)\monodll_tooltip.obj \
        $(OBJS)\monodll_toplevel.obj \
        $(OBJS)\monodll_utilsgui.obj \
@@ -1656,7 +1667,6 @@ ____CORE_SRC_FILENAMES_OBJECTS =  \
        $(OBJS)\monodll_stockitem.obj \
        $(OBJS)\monodll_tbarbase.obj \
        $(OBJS)\monodll_textcmn.obj \
-       $(OBJS)\monodll_timercmn.obj \
        $(OBJS)\monodll_toplvcmn.obj \
        $(OBJS)\monodll_treebase.obj \
        $(OBJS)\monodll_valgen.obj \
@@ -1739,7 +1749,6 @@ ____CORE_SRC_FILENAMES_OBJECTS =  \
        $(OBJS)\monodll_region.obj \
        $(OBJS)\monodll_renderer.obj \
        $(OBJS)\monodll_settings.obj \
-       $(OBJS)\monodll_timer.obj \
        $(OBJS)\monodll_tooltip.obj \
        $(OBJS)\monodll_toplevel.obj \
        $(OBJS)\monodll_utilsgui.obj \
@@ -1886,7 +1895,6 @@ ____CORE_SRC_FILENAMES_OBJECTS =  \
        $(OBJS)\monodll_stockitem.obj \
        $(OBJS)\monodll_tbarbase.obj \
        $(OBJS)\monodll_textcmn.obj \
-       $(OBJS)\monodll_timercmn.obj \
        $(OBJS)\monodll_toplvcmn.obj \
        $(OBJS)\monodll_treebase.obj \
        $(OBJS)\monodll_valgen.obj \
@@ -2143,7 +2151,6 @@ ____CORE_SRC_FILENAMES_1_OBJECTS =  \
        $(OBJS)\monolib_region.obj \
        $(OBJS)\monolib_renderer.obj \
        $(OBJS)\monolib_settings.obj \
-       $(OBJS)\monolib_timer.obj \
        $(OBJS)\monolib_tooltip.obj \
        $(OBJS)\monolib_toplevel.obj \
        $(OBJS)\monolib_utilsgui.obj \
@@ -2287,7 +2294,6 @@ ____CORE_SRC_FILENAMES_1_OBJECTS =  \
        $(OBJS)\monolib_stockitem.obj \
        $(OBJS)\monolib_tbarbase.obj \
        $(OBJS)\monolib_textcmn.obj \
-       $(OBJS)\monolib_timercmn.obj \
        $(OBJS)\monolib_toplvcmn.obj \
        $(OBJS)\monolib_treebase.obj \
        $(OBJS)\monolib_valgen.obj \
@@ -2370,7 +2376,6 @@ ____CORE_SRC_FILENAMES_1_OBJECTS =  \
        $(OBJS)\monolib_region.obj \
        $(OBJS)\monolib_renderer.obj \
        $(OBJS)\monolib_settings.obj \
-       $(OBJS)\monolib_timer.obj \
        $(OBJS)\monolib_tooltip.obj \
        $(OBJS)\monolib_toplevel.obj \
        $(OBJS)\monolib_utilsgui.obj \
@@ -2517,7 +2522,6 @@ ____CORE_SRC_FILENAMES_1_OBJECTS =  \
        $(OBJS)\monolib_stockitem.obj \
        $(OBJS)\monolib_tbarbase.obj \
        $(OBJS)\monolib_textcmn.obj \
-       $(OBJS)\monolib_timercmn.obj \
        $(OBJS)\monolib_toplvcmn.obj \
        $(OBJS)\monolib_treebase.obj \
        $(OBJS)\monolib_valgen.obj \
@@ -2691,7 +2695,6 @@ ____CORE_SRC_FILENAMES_2_OBJECTS =  \
        $(OBJS)\coredll_region.obj \
        $(OBJS)\coredll_renderer.obj \
        $(OBJS)\coredll_settings.obj \
-       $(OBJS)\coredll_timer.obj \
        $(OBJS)\coredll_tooltip.obj \
        $(OBJS)\coredll_toplevel.obj \
        $(OBJS)\coredll_utilsgui.obj \
@@ -2835,7 +2838,6 @@ ____CORE_SRC_FILENAMES_2_OBJECTS =  \
        $(OBJS)\coredll_stockitem.obj \
        $(OBJS)\coredll_tbarbase.obj \
        $(OBJS)\coredll_textcmn.obj \
-       $(OBJS)\coredll_timercmn.obj \
        $(OBJS)\coredll_toplvcmn.obj \
        $(OBJS)\coredll_treebase.obj \
        $(OBJS)\coredll_valgen.obj \
@@ -2918,7 +2920,6 @@ ____CORE_SRC_FILENAMES_2_OBJECTS =  \
        $(OBJS)\coredll_region.obj \
        $(OBJS)\coredll_renderer.obj \
        $(OBJS)\coredll_settings.obj \
-       $(OBJS)\coredll_timer.obj \
        $(OBJS)\coredll_tooltip.obj \
        $(OBJS)\coredll_toplevel.obj \
        $(OBJS)\coredll_utilsgui.obj \
@@ -3065,7 +3066,6 @@ ____CORE_SRC_FILENAMES_2_OBJECTS =  \
        $(OBJS)\coredll_stockitem.obj \
        $(OBJS)\coredll_tbarbase.obj \
        $(OBJS)\coredll_textcmn.obj \
-       $(OBJS)\coredll_timercmn.obj \
        $(OBJS)\coredll_toplvcmn.obj \
        $(OBJS)\coredll_treebase.obj \
        $(OBJS)\coredll_valgen.obj \
@@ -3152,7 +3152,6 @@ ____CORE_SRC_FILENAMES_3_OBJECTS =  \
        $(OBJS)\corelib_region.obj \
        $(OBJS)\corelib_renderer.obj \
        $(OBJS)\corelib_settings.obj \
-       $(OBJS)\corelib_timer.obj \
        $(OBJS)\corelib_tooltip.obj \
        $(OBJS)\corelib_toplevel.obj \
        $(OBJS)\corelib_utilsgui.obj \
@@ -3296,7 +3295,6 @@ ____CORE_SRC_FILENAMES_3_OBJECTS =  \
        $(OBJS)\corelib_stockitem.obj \
        $(OBJS)\corelib_tbarbase.obj \
        $(OBJS)\corelib_textcmn.obj \
-       $(OBJS)\corelib_timercmn.obj \
        $(OBJS)\corelib_toplvcmn.obj \
        $(OBJS)\corelib_treebase.obj \
        $(OBJS)\corelib_valgen.obj \
@@ -3379,7 +3377,6 @@ ____CORE_SRC_FILENAMES_3_OBJECTS =  \
        $(OBJS)\corelib_region.obj \
        $(OBJS)\corelib_renderer.obj \
        $(OBJS)\corelib_settings.obj \
-       $(OBJS)\corelib_timer.obj \
        $(OBJS)\corelib_tooltip.obj \
        $(OBJS)\corelib_toplevel.obj \
        $(OBJS)\corelib_utilsgui.obj \
@@ -3526,7 +3523,6 @@ ____CORE_SRC_FILENAMES_3_OBJECTS =  \
        $(OBJS)\corelib_stockitem.obj \
        $(OBJS)\corelib_tbarbase.obj \
        $(OBJS)\corelib_textcmn.obj \
-       $(OBJS)\corelib_timercmn.obj \
        $(OBJS)\corelib_toplvcmn.obj \
        $(OBJS)\corelib_treebase.obj \
        $(OBJS)\corelib_valgen.obj \
@@ -5340,6 +5336,12 @@ $(OBJS)\monodll_textbuf.obj: ..\..\src\common\textbuf.cpp
 $(OBJS)\monodll_textfile.obj: ..\..\src\common\textfile.cpp
        $(CXX) -q -c -P -o$@ $(MONODLL_CXXFLAGS) $**
 
+$(OBJS)\monodll_timercmn.obj: ..\..\src\common\timercmn.cpp
+       $(CXX) -q -c -P -o$@ $(MONODLL_CXXFLAGS) $**
+
+$(OBJS)\monodll_timerimpl.obj: ..\..\src\common\timerimpl.cpp
+       $(CXX) -q -c -P -o$@ $(MONODLL_CXXFLAGS) $**
+
 $(OBJS)\monodll_tokenzr.obj: ..\..\src\common\tokenzr.cpp
        $(CXX) -q -c -P -o$@ $(MONODLL_CXXFLAGS) $**
 
@@ -5418,6 +5420,9 @@ $(OBJS)\monodll_stdpaths.obj: ..\..\src\msw\stdpaths.cpp
 $(OBJS)\monodll_thread.obj: ..\..\src\msw\thread.cpp
        $(CXX) -q -c -P -o$@ $(MONODLL_CXXFLAGS) $**
 
+$(OBJS)\monodll_timer.obj: ..\..\src\msw\timer.cpp
+       $(CXX) -q -c -P -o$@ $(MONODLL_CXXFLAGS) $**
+
 $(OBJS)\monodll_utils.obj: ..\..\src\msw\utils.cpp
        $(CXX) -q -c -P -o$@ $(MONODLL_CXXFLAGS) $**
 
@@ -6154,11 +6159,6 @@ $(OBJS)\monodll_settings.obj: ..\..\src\msw\settings.cpp
        $(CXX) -q -c -P -o$@ $(MONODLL_CXXFLAGS) $**
 !endif
 
-!if "$(USE_GUI)" == "1"
-$(OBJS)\monodll_timer.obj: ..\..\src\msw\timer.cpp
-       $(CXX) -q -c -P -o$@ $(MONODLL_CXXFLAGS) $**
-!endif
-
 !if "$(USE_GUI)" == "1"
 $(OBJS)\monodll_tooltip.obj: ..\..\src\msw\tooltip.cpp
        $(CXX) -q -c -P -o$@ $(MONODLL_CXXFLAGS) $**
@@ -6889,11 +6889,6 @@ $(OBJS)\monodll_textcmn.obj: ..\..\src\common\textcmn.cpp
        $(CXX) -q -c -P -o$@ $(MONODLL_CXXFLAGS) $**
 !endif
 
-!if "$(USE_GUI)" == "1"
-$(OBJS)\monodll_timercmn.obj: ..\..\src\common\timercmn.cpp
-       $(CXX) -q -c -P -o$@ $(MONODLL_CXXFLAGS) $**
-!endif
-
 !if "$(USE_GUI)" == "1"
 $(OBJS)\monodll_toplvcmn.obj: ..\..\src\common\toplvcmn.cpp
        $(CXX) -q -c -P -o$@ $(MONODLL_CXXFLAGS) $**
@@ -7397,6 +7392,12 @@ $(OBJS)\monolib_textbuf.obj: ..\..\src\common\textbuf.cpp
 $(OBJS)\monolib_textfile.obj: ..\..\src\common\textfile.cpp
        $(CXX) -q -c -P -o$@ $(MONOLIB_CXXFLAGS) $**
 
+$(OBJS)\monolib_timercmn.obj: ..\..\src\common\timercmn.cpp
+       $(CXX) -q -c -P -o$@ $(MONOLIB_CXXFLAGS) $**
+
+$(OBJS)\monolib_timerimpl.obj: ..\..\src\common\timerimpl.cpp
+       $(CXX) -q -c -P -o$@ $(MONOLIB_CXXFLAGS) $**
+
 $(OBJS)\monolib_tokenzr.obj: ..\..\src\common\tokenzr.cpp
        $(CXX) -q -c -P -o$@ $(MONOLIB_CXXFLAGS) $**
 
@@ -7475,6 +7476,9 @@ $(OBJS)\monolib_stdpaths.obj: ..\..\src\msw\stdpaths.cpp
 $(OBJS)\monolib_thread.obj: ..\..\src\msw\thread.cpp
        $(CXX) -q -c -P -o$@ $(MONOLIB_CXXFLAGS) $**
 
+$(OBJS)\monolib_timer.obj: ..\..\src\msw\timer.cpp
+       $(CXX) -q -c -P -o$@ $(MONOLIB_CXXFLAGS) $**
+
 $(OBJS)\monolib_utils.obj: ..\..\src\msw\utils.cpp
        $(CXX) -q -c -P -o$@ $(MONOLIB_CXXFLAGS) $**
 
@@ -8211,11 +8215,6 @@ $(OBJS)\monolib_settings.obj: ..\..\src\msw\settings.cpp
        $(CXX) -q -c -P -o$@ $(MONOLIB_CXXFLAGS) $**
 !endif
 
-!if "$(USE_GUI)" == "1"
-$(OBJS)\monolib_timer.obj: ..\..\src\msw\timer.cpp
-       $(CXX) -q -c -P -o$@ $(MONOLIB_CXXFLAGS) $**
-!endif
-
 !if "$(USE_GUI)" == "1"
 $(OBJS)\monolib_tooltip.obj: ..\..\src\msw\tooltip.cpp
        $(CXX) -q -c -P -o$@ $(MONOLIB_CXXFLAGS) $**
@@ -8946,11 +8945,6 @@ $(OBJS)\monolib_textcmn.obj: ..\..\src\common\textcmn.cpp
        $(CXX) -q -c -P -o$@ $(MONOLIB_CXXFLAGS) $**
 !endif
 
-!if "$(USE_GUI)" == "1"
-$(OBJS)\monolib_timercmn.obj: ..\..\src\common\timercmn.cpp
-       $(CXX) -q -c -P -o$@ $(MONOLIB_CXXFLAGS) $**
-!endif
-
 !if "$(USE_GUI)" == "1"
 $(OBJS)\monolib_toplvcmn.obj: ..\..\src\common\toplvcmn.cpp
        $(CXX) -q -c -P -o$@ $(MONOLIB_CXXFLAGS) $**
@@ -9454,6 +9448,12 @@ $(OBJS)\basedll_textbuf.obj: ..\..\src\common\textbuf.cpp
 $(OBJS)\basedll_textfile.obj: ..\..\src\common\textfile.cpp
        $(CXX) -q -c -P -o$@ $(BASEDLL_CXXFLAGS) $**
 
+$(OBJS)\basedll_timercmn.obj: ..\..\src\common\timercmn.cpp
+       $(CXX) -q -c -P -o$@ $(BASEDLL_CXXFLAGS) $**
+
+$(OBJS)\basedll_timerimpl.obj: ..\..\src\common\timerimpl.cpp
+       $(CXX) -q -c -P -o$@ $(BASEDLL_CXXFLAGS) $**
+
 $(OBJS)\basedll_tokenzr.obj: ..\..\src\common\tokenzr.cpp
        $(CXX) -q -c -P -o$@ $(BASEDLL_CXXFLAGS) $**
 
@@ -9532,6 +9532,9 @@ $(OBJS)\basedll_stdpaths.obj: ..\..\src\msw\stdpaths.cpp
 $(OBJS)\basedll_thread.obj: ..\..\src\msw\thread.cpp
        $(CXX) -q -c -P -o$@ $(BASEDLL_CXXFLAGS) $**
 
+$(OBJS)\basedll_timer.obj: ..\..\src\msw\timer.cpp
+       $(CXX) -q -c -P -o$@ $(BASEDLL_CXXFLAGS) $**
+
 $(OBJS)\basedll_utils.obj: ..\..\src\msw\utils.cpp
        $(CXX) -q -c -P -o$@ $(BASEDLL_CXXFLAGS) $**
 
@@ -9739,6 +9742,12 @@ $(OBJS)\baselib_textbuf.obj: ..\..\src\common\textbuf.cpp
 $(OBJS)\baselib_textfile.obj: ..\..\src\common\textfile.cpp
        $(CXX) -q -c -P -o$@ $(BASELIB_CXXFLAGS) $**
 
+$(OBJS)\baselib_timercmn.obj: ..\..\src\common\timercmn.cpp
+       $(CXX) -q -c -P -o$@ $(BASELIB_CXXFLAGS) $**
+
+$(OBJS)\baselib_timerimpl.obj: ..\..\src\common\timerimpl.cpp
+       $(CXX) -q -c -P -o$@ $(BASELIB_CXXFLAGS) $**
+
 $(OBJS)\baselib_tokenzr.obj: ..\..\src\common\tokenzr.cpp
        $(CXX) -q -c -P -o$@ $(BASELIB_CXXFLAGS) $**
 
@@ -9817,6 +9826,9 @@ $(OBJS)\baselib_stdpaths.obj: ..\..\src\msw\stdpaths.cpp
 $(OBJS)\baselib_thread.obj: ..\..\src\msw\thread.cpp
        $(CXX) -q -c -P -o$@ $(BASELIB_CXXFLAGS) $**
 
+$(OBJS)\baselib_timer.obj: ..\..\src\msw\timer.cpp
+       $(CXX) -q -c -P -o$@ $(BASELIB_CXXFLAGS) $**
+
 $(OBJS)\baselib_utils.obj: ..\..\src\msw\utils.cpp
        $(CXX) -q -c -P -o$@ $(BASELIB_CXXFLAGS) $**
 
@@ -10298,11 +10310,6 @@ $(OBJS)\coredll_settings.obj: ..\..\src\msw\settings.cpp
        $(CXX) -q -c -P -o$@ $(COREDLL_CXXFLAGS) $**
 !endif
 
-!if "$(USE_GUI)" == "1"
-$(OBJS)\coredll_timer.obj: ..\..\src\msw\timer.cpp
-       $(CXX) -q -c -P -o$@ $(COREDLL_CXXFLAGS) $**
-!endif
-
 !if "$(USE_GUI)" == "1"
 $(OBJS)\coredll_tooltip.obj: ..\..\src\msw\tooltip.cpp
        $(CXX) -q -c -P -o$@ $(COREDLL_CXXFLAGS) $**
@@ -11033,11 +11040,6 @@ $(OBJS)\coredll_textcmn.obj: ..\..\src\common\textcmn.cpp
        $(CXX) -q -c -P -o$@ $(COREDLL_CXXFLAGS) $**
 !endif
 
-!if "$(USE_GUI)" == "1"
-$(OBJS)\coredll_timercmn.obj: ..\..\src\common\timercmn.cpp
-       $(CXX) -q -c -P -o$@ $(COREDLL_CXXFLAGS) $**
-!endif
-
 !if "$(USE_GUI)" == "1"
 $(OBJS)\coredll_toplvcmn.obj: ..\..\src\common\toplvcmn.cpp
        $(CXX) -q -c -P -o$@ $(COREDLL_CXXFLAGS) $**
@@ -11598,11 +11600,6 @@ $(OBJS)\corelib_settings.obj: ..\..\src\msw\settings.cpp
        $(CXX) -q -c -P -o$@ $(CORELIB_CXXFLAGS) $**
 !endif
 
-!if "$(USE_GUI)" == "1"
-$(OBJS)\corelib_timer.obj: ..\..\src\msw\timer.cpp
-       $(CXX) -q -c -P -o$@ $(CORELIB_CXXFLAGS) $**
-!endif
-
 !if "$(USE_GUI)" == "1"
 $(OBJS)\corelib_tooltip.obj: ..\..\src\msw\tooltip.cpp
        $(CXX) -q -c -P -o$@ $(CORELIB_CXXFLAGS) $**
@@ -12333,11 +12330,6 @@ $(OBJS)\corelib_textcmn.obj: ..\..\src\common\textcmn.cpp
        $(CXX) -q -c -P -o$@ $(CORELIB_CXXFLAGS) $**
 !endif
 
-!if "$(USE_GUI)" == "1"
-$(OBJS)\corelib_timercmn.obj: ..\..\src\common\timercmn.cpp
-       $(CXX) -q -c -P -o$@ $(CORELIB_CXXFLAGS) $**
-!endif
-
 !if "$(USE_GUI)" == "1"
 $(OBJS)\corelib_toplvcmn.obj: ..\..\src\common\toplvcmn.cpp
        $(CXX) -q -c -P -o$@ $(CORELIB_CXXFLAGS) $**
index 75f5cdb5d574a76ddfd58f561926c4100825ec5a..412106371b2c5cda8862bcdcba1f3566afa0f7b4 100644 (file)
@@ -336,6 +336,8 @@ MONODLL_OBJECTS =  \
        $(OBJS)\monodll_tarstrm.o \
        $(OBJS)\monodll_textbuf.o \
        $(OBJS)\monodll_textfile.o \
+       $(OBJS)\monodll_timercmn.o \
+       $(OBJS)\monodll_timerimpl.o \
        $(OBJS)\monodll_tokenzr.o \
        $(OBJS)\monodll_txtstrm.o \
        $(OBJS)\monodll_unichar.o \
@@ -362,6 +364,7 @@ MONODLL_OBJECTS =  \
        $(OBJS)\monodll_stackwalk.o \
        $(OBJS)\monodll_stdpaths.o \
        $(OBJS)\monodll_thread.o \
+       $(OBJS)\monodll_timer.o \
        $(OBJS)\monodll_utils.o \
        $(OBJS)\monodll_utilsexc.o \
        $(OBJS)\monodll_event.o \
@@ -467,6 +470,8 @@ MONOLIB_OBJECTS =  \
        $(OBJS)\monolib_tarstrm.o \
        $(OBJS)\monolib_textbuf.o \
        $(OBJS)\monolib_textfile.o \
+       $(OBJS)\monolib_timercmn.o \
+       $(OBJS)\monolib_timerimpl.o \
        $(OBJS)\monolib_tokenzr.o \
        $(OBJS)\monolib_txtstrm.o \
        $(OBJS)\monolib_unichar.o \
@@ -493,6 +498,7 @@ MONOLIB_OBJECTS =  \
        $(OBJS)\monolib_stackwalk.o \
        $(OBJS)\monolib_stdpaths.o \
        $(OBJS)\monolib_thread.o \
+       $(OBJS)\monolib_timer.o \
        $(OBJS)\monolib_utils.o \
        $(OBJS)\monolib_utilsexc.o \
        $(OBJS)\monolib_event.o \
@@ -595,6 +601,8 @@ BASEDLL_OBJECTS =  \
        $(OBJS)\basedll_tarstrm.o \
        $(OBJS)\basedll_textbuf.o \
        $(OBJS)\basedll_textfile.o \
+       $(OBJS)\basedll_timercmn.o \
+       $(OBJS)\basedll_timerimpl.o \
        $(OBJS)\basedll_tokenzr.o \
        $(OBJS)\basedll_txtstrm.o \
        $(OBJS)\basedll_unichar.o \
@@ -621,6 +629,7 @@ BASEDLL_OBJECTS =  \
        $(OBJS)\basedll_stackwalk.o \
        $(OBJS)\basedll_stdpaths.o \
        $(OBJS)\basedll_thread.o \
+       $(OBJS)\basedll_timer.o \
        $(OBJS)\basedll_utils.o \
        $(OBJS)\basedll_utilsexc.o \
        $(OBJS)\basedll_event.o \
@@ -706,6 +715,8 @@ BASELIB_OBJECTS =  \
        $(OBJS)\baselib_tarstrm.o \
        $(OBJS)\baselib_textbuf.o \
        $(OBJS)\baselib_textfile.o \
+       $(OBJS)\baselib_timercmn.o \
+       $(OBJS)\baselib_timerimpl.o \
        $(OBJS)\baselib_tokenzr.o \
        $(OBJS)\baselib_txtstrm.o \
        $(OBJS)\baselib_unichar.o \
@@ -732,6 +743,7 @@ BASELIB_OBJECTS =  \
        $(OBJS)\baselib_stackwalk.o \
        $(OBJS)\baselib_stdpaths.o \
        $(OBJS)\baselib_thread.o \
+       $(OBJS)\baselib_timer.o \
        $(OBJS)\baselib_utils.o \
        $(OBJS)\baselib_utilsexc.o \
        $(OBJS)\baselib_event.o \
@@ -1522,7 +1534,6 @@ ____CORE_SRC_FILENAMES_OBJECTS =  \
        $(OBJS)\monodll_region.o \
        $(OBJS)\monodll_renderer.o \
        $(OBJS)\monodll_settings.o \
-       $(OBJS)\monodll_timer.o \
        $(OBJS)\monodll_tooltip.o \
        $(OBJS)\monodll_toplevel.o \
        $(OBJS)\monodll_utilsgui.o \
@@ -1666,7 +1677,6 @@ ____CORE_SRC_FILENAMES_OBJECTS =  \
        $(OBJS)\monodll_stockitem.o \
        $(OBJS)\monodll_tbarbase.o \
        $(OBJS)\monodll_textcmn.o \
-       $(OBJS)\monodll_timercmn.o \
        $(OBJS)\monodll_toplvcmn.o \
        $(OBJS)\monodll_treebase.o \
        $(OBJS)\monodll_valgen.o \
@@ -1751,7 +1761,6 @@ ____CORE_SRC_FILENAMES_OBJECTS =  \
        $(OBJS)\monodll_region.o \
        $(OBJS)\monodll_renderer.o \
        $(OBJS)\monodll_settings.o \
-       $(OBJS)\monodll_timer.o \
        $(OBJS)\monodll_tooltip.o \
        $(OBJS)\monodll_toplevel.o \
        $(OBJS)\monodll_utilsgui.o \
@@ -1898,7 +1907,6 @@ ____CORE_SRC_FILENAMES_OBJECTS =  \
        $(OBJS)\monodll_stockitem.o \
        $(OBJS)\monodll_tbarbase.o \
        $(OBJS)\monodll_textcmn.o \
-       $(OBJS)\monodll_timercmn.o \
        $(OBJS)\monodll_toplvcmn.o \
        $(OBJS)\monodll_treebase.o \
        $(OBJS)\monodll_valgen.o \
@@ -2159,7 +2167,6 @@ ____CORE_SRC_FILENAMES_1_OBJECTS =  \
        $(OBJS)\monolib_region.o \
        $(OBJS)\monolib_renderer.o \
        $(OBJS)\monolib_settings.o \
-       $(OBJS)\monolib_timer.o \
        $(OBJS)\monolib_tooltip.o \
        $(OBJS)\monolib_toplevel.o \
        $(OBJS)\monolib_utilsgui.o \
@@ -2303,7 +2310,6 @@ ____CORE_SRC_FILENAMES_1_OBJECTS =  \
        $(OBJS)\monolib_stockitem.o \
        $(OBJS)\monolib_tbarbase.o \
        $(OBJS)\monolib_textcmn.o \
-       $(OBJS)\monolib_timercmn.o \
        $(OBJS)\monolib_toplvcmn.o \
        $(OBJS)\monolib_treebase.o \
        $(OBJS)\monolib_valgen.o \
@@ -2388,7 +2394,6 @@ ____CORE_SRC_FILENAMES_1_OBJECTS =  \
        $(OBJS)\monolib_region.o \
        $(OBJS)\monolib_renderer.o \
        $(OBJS)\monolib_settings.o \
-       $(OBJS)\monolib_timer.o \
        $(OBJS)\monolib_tooltip.o \
        $(OBJS)\monolib_toplevel.o \
        $(OBJS)\monolib_utilsgui.o \
@@ -2535,7 +2540,6 @@ ____CORE_SRC_FILENAMES_1_OBJECTS =  \
        $(OBJS)\monolib_stockitem.o \
        $(OBJS)\monolib_tbarbase.o \
        $(OBJS)\monolib_textcmn.o \
-       $(OBJS)\monolib_timercmn.o \
        $(OBJS)\monolib_toplvcmn.o \
        $(OBJS)\monolib_treebase.o \
        $(OBJS)\monolib_valgen.o \
@@ -2723,7 +2727,6 @@ ____CORE_SRC_FILENAMES_2_OBJECTS =  \
        $(OBJS)\coredll_region.o \
        $(OBJS)\coredll_renderer.o \
        $(OBJS)\coredll_settings.o \
-       $(OBJS)\coredll_timer.o \
        $(OBJS)\coredll_tooltip.o \
        $(OBJS)\coredll_toplevel.o \
        $(OBJS)\coredll_utilsgui.o \
@@ -2867,7 +2870,6 @@ ____CORE_SRC_FILENAMES_2_OBJECTS =  \
        $(OBJS)\coredll_stockitem.o \
        $(OBJS)\coredll_tbarbase.o \
        $(OBJS)\coredll_textcmn.o \
-       $(OBJS)\coredll_timercmn.o \
        $(OBJS)\coredll_toplvcmn.o \
        $(OBJS)\coredll_treebase.o \
        $(OBJS)\coredll_valgen.o \
@@ -2952,7 +2954,6 @@ ____CORE_SRC_FILENAMES_2_OBJECTS =  \
        $(OBJS)\coredll_region.o \
        $(OBJS)\coredll_renderer.o \
        $(OBJS)\coredll_settings.o \
-       $(OBJS)\coredll_timer.o \
        $(OBJS)\coredll_tooltip.o \
        $(OBJS)\coredll_toplevel.o \
        $(OBJS)\coredll_utilsgui.o \
@@ -3099,7 +3100,6 @@ ____CORE_SRC_FILENAMES_2_OBJECTS =  \
        $(OBJS)\coredll_stockitem.o \
        $(OBJS)\coredll_tbarbase.o \
        $(OBJS)\coredll_textcmn.o \
-       $(OBJS)\coredll_timercmn.o \
        $(OBJS)\coredll_toplvcmn.o \
        $(OBJS)\coredll_treebase.o \
        $(OBJS)\coredll_valgen.o \
@@ -3192,7 +3192,6 @@ ____CORE_SRC_FILENAMES_3_OBJECTS =  \
        $(OBJS)\corelib_region.o \
        $(OBJS)\corelib_renderer.o \
        $(OBJS)\corelib_settings.o \
-       $(OBJS)\corelib_timer.o \
        $(OBJS)\corelib_tooltip.o \
        $(OBJS)\corelib_toplevel.o \
        $(OBJS)\corelib_utilsgui.o \
@@ -3336,7 +3335,6 @@ ____CORE_SRC_FILENAMES_3_OBJECTS =  \
        $(OBJS)\corelib_stockitem.o \
        $(OBJS)\corelib_tbarbase.o \
        $(OBJS)\corelib_textcmn.o \
-       $(OBJS)\corelib_timercmn.o \
        $(OBJS)\corelib_toplvcmn.o \
        $(OBJS)\corelib_treebase.o \
        $(OBJS)\corelib_valgen.o \
@@ -3421,7 +3419,6 @@ ____CORE_SRC_FILENAMES_3_OBJECTS =  \
        $(OBJS)\corelib_region.o \
        $(OBJS)\corelib_renderer.o \
        $(OBJS)\corelib_settings.o \
-       $(OBJS)\corelib_timer.o \
        $(OBJS)\corelib_tooltip.o \
        $(OBJS)\corelib_toplevel.o \
        $(OBJS)\corelib_utilsgui.o \
@@ -3568,7 +3565,6 @@ ____CORE_SRC_FILENAMES_3_OBJECTS =  \
        $(OBJS)\corelib_stockitem.o \
        $(OBJS)\corelib_tbarbase.o \
        $(OBJS)\corelib_textcmn.o \
-       $(OBJS)\corelib_timercmn.o \
        $(OBJS)\corelib_toplvcmn.o \
        $(OBJS)\corelib_treebase.o \
        $(OBJS)\corelib_valgen.o \
@@ -5501,6 +5497,12 @@ $(OBJS)\monodll_textbuf.o: ../../src/common/textbuf.cpp
 $(OBJS)\monodll_textfile.o: ../../src/common/textfile.cpp
        $(CXX) -c -o $@ $(MONODLL_CXXFLAGS) $(CPPDEPS) $<
 
+$(OBJS)\monodll_timercmn.o: ../../src/common/timercmn.cpp
+       $(CXX) -c -o $@ $(MONODLL_CXXFLAGS) $(CPPDEPS) $<
+
+$(OBJS)\monodll_timerimpl.o: ../../src/common/timerimpl.cpp
+       $(CXX) -c -o $@ $(MONODLL_CXXFLAGS) $(CPPDEPS) $<
+
 $(OBJS)\monodll_tokenzr.o: ../../src/common/tokenzr.cpp
        $(CXX) -c -o $@ $(MONODLL_CXXFLAGS) $(CPPDEPS) $<
 
@@ -5579,6 +5581,9 @@ $(OBJS)\monodll_stdpaths.o: ../../src/msw/stdpaths.cpp
 $(OBJS)\monodll_thread.o: ../../src/msw/thread.cpp
        $(CXX) -c -o $@ $(MONODLL_CXXFLAGS) $(CPPDEPS) $<
 
+$(OBJS)\monodll_timer.o: ../../src/msw/timer.cpp
+       $(CXX) -c -o $@ $(MONODLL_CXXFLAGS) $(CPPDEPS) $<
+
 $(OBJS)\monodll_utils.o: ../../src/msw/utils.cpp
        $(CXX) -c -o $@ $(MONODLL_CXXFLAGS) $(CPPDEPS) $<
 
@@ -6315,11 +6320,6 @@ $(OBJS)\monodll_settings.o: ../../src/msw/settings.cpp
        $(CXX) -c -o $@ $(MONODLL_CXXFLAGS) $(CPPDEPS) $<
 endif
 
-ifeq ($(USE_GUI),1)
-$(OBJS)\monodll_timer.o: ../../src/msw/timer.cpp
-       $(CXX) -c -o $@ $(MONODLL_CXXFLAGS) $(CPPDEPS) $<
-endif
-
 ifeq ($(USE_GUI),1)
 $(OBJS)\monodll_tooltip.o: ../../src/msw/tooltip.cpp
        $(CXX) -c -o $@ $(MONODLL_CXXFLAGS) $(CPPDEPS) $<
@@ -7150,11 +7150,6 @@ $(OBJS)\monodll_textcmn.o: ../../src/common/textcmn.cpp
        $(CXX) -c -o $@ $(MONODLL_CXXFLAGS) $(CPPDEPS) $<
 endif
 
-ifeq ($(USE_GUI),1)
-$(OBJS)\monodll_timercmn.o: ../../src/common/timercmn.cpp
-       $(CXX) -c -o $@ $(MONODLL_CXXFLAGS) $(CPPDEPS) $<
-endif
-
 ifeq ($(USE_GUI),1)
 $(OBJS)\monodll_toplvcmn.o: ../../src/common/toplvcmn.cpp
        $(CXX) -c -o $@ $(MONODLL_CXXFLAGS) $(CPPDEPS) $<
@@ -7658,6 +7653,12 @@ $(OBJS)\monolib_textbuf.o: ../../src/common/textbuf.cpp
 $(OBJS)\monolib_textfile.o: ../../src/common/textfile.cpp
        $(CXX) -c -o $@ $(MONOLIB_CXXFLAGS) $(CPPDEPS) $<
 
+$(OBJS)\monolib_timercmn.o: ../../src/common/timercmn.cpp
+       $(CXX) -c -o $@ $(MONOLIB_CXXFLAGS) $(CPPDEPS) $<
+
+$(OBJS)\monolib_timerimpl.o: ../../src/common/timerimpl.cpp
+       $(CXX) -c -o $@ $(MONOLIB_CXXFLAGS) $(CPPDEPS) $<
+
 $(OBJS)\monolib_tokenzr.o: ../../src/common/tokenzr.cpp
        $(CXX) -c -o $@ $(MONOLIB_CXXFLAGS) $(CPPDEPS) $<
 
@@ -7736,6 +7737,9 @@ $(OBJS)\monolib_stdpaths.o: ../../src/msw/stdpaths.cpp
 $(OBJS)\monolib_thread.o: ../../src/msw/thread.cpp
        $(CXX) -c -o $@ $(MONOLIB_CXXFLAGS) $(CPPDEPS) $<
 
+$(OBJS)\monolib_timer.o: ../../src/msw/timer.cpp
+       $(CXX) -c -o $@ $(MONOLIB_CXXFLAGS) $(CPPDEPS) $<
+
 $(OBJS)\monolib_utils.o: ../../src/msw/utils.cpp
        $(CXX) -c -o $@ $(MONOLIB_CXXFLAGS) $(CPPDEPS) $<
 
@@ -8472,11 +8476,6 @@ $(OBJS)\monolib_settings.o: ../../src/msw/settings.cpp
        $(CXX) -c -o $@ $(MONOLIB_CXXFLAGS) $(CPPDEPS) $<
 endif
 
-ifeq ($(USE_GUI),1)
-$(OBJS)\monolib_timer.o: ../../src/msw/timer.cpp
-       $(CXX) -c -o $@ $(MONOLIB_CXXFLAGS) $(CPPDEPS) $<
-endif
-
 ifeq ($(USE_GUI),1)
 $(OBJS)\monolib_tooltip.o: ../../src/msw/tooltip.cpp
        $(CXX) -c -o $@ $(MONOLIB_CXXFLAGS) $(CPPDEPS) $<
@@ -9307,11 +9306,6 @@ $(OBJS)\monolib_textcmn.o: ../../src/common/textcmn.cpp
        $(CXX) -c -o $@ $(MONOLIB_CXXFLAGS) $(CPPDEPS) $<
 endif
 
-ifeq ($(USE_GUI),1)
-$(OBJS)\monolib_timercmn.o: ../../src/common/timercmn.cpp
-       $(CXX) -c -o $@ $(MONOLIB_CXXFLAGS) $(CPPDEPS) $<
-endif
-
 ifeq ($(USE_GUI),1)
 $(OBJS)\monolib_toplvcmn.o: ../../src/common/toplvcmn.cpp
        $(CXX) -c -o $@ $(MONOLIB_CXXFLAGS) $(CPPDEPS) $<
@@ -9815,6 +9809,12 @@ $(OBJS)\basedll_textbuf.o: ../../src/common/textbuf.cpp
 $(OBJS)\basedll_textfile.o: ../../src/common/textfile.cpp
        $(CXX) -c -o $@ $(BASEDLL_CXXFLAGS) $(CPPDEPS) $<
 
+$(OBJS)\basedll_timercmn.o: ../../src/common/timercmn.cpp
+       $(CXX) -c -o $@ $(BASEDLL_CXXFLAGS) $(CPPDEPS) $<
+
+$(OBJS)\basedll_timerimpl.o: ../../src/common/timerimpl.cpp
+       $(CXX) -c -o $@ $(BASEDLL_CXXFLAGS) $(CPPDEPS) $<
+
 $(OBJS)\basedll_tokenzr.o: ../../src/common/tokenzr.cpp
        $(CXX) -c -o $@ $(BASEDLL_CXXFLAGS) $(CPPDEPS) $<
 
@@ -9893,6 +9893,9 @@ $(OBJS)\basedll_stdpaths.o: ../../src/msw/stdpaths.cpp
 $(OBJS)\basedll_thread.o: ../../src/msw/thread.cpp
        $(CXX) -c -o $@ $(BASEDLL_CXXFLAGS) $(CPPDEPS) $<
 
+$(OBJS)\basedll_timer.o: ../../src/msw/timer.cpp
+       $(CXX) -c -o $@ $(BASEDLL_CXXFLAGS) $(CPPDEPS) $<
+
 $(OBJS)\basedll_utils.o: ../../src/msw/utils.cpp
        $(CXX) -c -o $@ $(BASEDLL_CXXFLAGS) $(CPPDEPS) $<
 
@@ -10100,6 +10103,12 @@ $(OBJS)\baselib_textbuf.o: ../../src/common/textbuf.cpp
 $(OBJS)\baselib_textfile.o: ../../src/common/textfile.cpp
        $(CXX) -c -o $@ $(BASELIB_CXXFLAGS) $(CPPDEPS) $<
 
+$(OBJS)\baselib_timercmn.o: ../../src/common/timercmn.cpp
+       $(CXX) -c -o $@ $(BASELIB_CXXFLAGS) $(CPPDEPS) $<
+
+$(OBJS)\baselib_timerimpl.o: ../../src/common/timerimpl.cpp
+       $(CXX) -c -o $@ $(BASELIB_CXXFLAGS) $(CPPDEPS) $<
+
 $(OBJS)\baselib_tokenzr.o: ../../src/common/tokenzr.cpp
        $(CXX) -c -o $@ $(BASELIB_CXXFLAGS) $(CPPDEPS) $<
 
@@ -10178,6 +10187,9 @@ $(OBJS)\baselib_stdpaths.o: ../../src/msw/stdpaths.cpp
 $(OBJS)\baselib_thread.o: ../../src/msw/thread.cpp
        $(CXX) -c -o $@ $(BASELIB_CXXFLAGS) $(CPPDEPS) $<
 
+$(OBJS)\baselib_timer.o: ../../src/msw/timer.cpp
+       $(CXX) -c -o $@ $(BASELIB_CXXFLAGS) $(CPPDEPS) $<
+
 $(OBJS)\baselib_utils.o: ../../src/msw/utils.cpp
        $(CXX) -c -o $@ $(BASELIB_CXXFLAGS) $(CPPDEPS) $<
 
@@ -10659,11 +10671,6 @@ $(OBJS)\coredll_settings.o: ../../src/msw/settings.cpp
        $(CXX) -c -o $@ $(COREDLL_CXXFLAGS) $(CPPDEPS) $<
 endif
 
-ifeq ($(USE_GUI),1)
-$(OBJS)\coredll_timer.o: ../../src/msw/timer.cpp
-       $(CXX) -c -o $@ $(COREDLL_CXXFLAGS) $(CPPDEPS) $<
-endif
-
 ifeq ($(USE_GUI),1)
 $(OBJS)\coredll_tooltip.o: ../../src/msw/tooltip.cpp
        $(CXX) -c -o $@ $(COREDLL_CXXFLAGS) $(CPPDEPS) $<
@@ -11494,11 +11501,6 @@ $(OBJS)\coredll_textcmn.o: ../../src/common/textcmn.cpp
        $(CXX) -c -o $@ $(COREDLL_CXXFLAGS) $(CPPDEPS) $<
 endif
 
-ifeq ($(USE_GUI),1)
-$(OBJS)\coredll_timercmn.o: ../../src/common/timercmn.cpp
-       $(CXX) -c -o $@ $(COREDLL_CXXFLAGS) $(CPPDEPS) $<
-endif
-
 ifeq ($(USE_GUI),1)
 $(OBJS)\coredll_toplvcmn.o: ../../src/common/toplvcmn.cpp
        $(CXX) -c -o $@ $(COREDLL_CXXFLAGS) $(CPPDEPS) $<
@@ -12059,11 +12061,6 @@ $(OBJS)\corelib_settings.o: ../../src/msw/settings.cpp
        $(CXX) -c -o $@ $(CORELIB_CXXFLAGS) $(CPPDEPS) $<
 endif
 
-ifeq ($(USE_GUI),1)
-$(OBJS)\corelib_timer.o: ../../src/msw/timer.cpp
-       $(CXX) -c -o $@ $(CORELIB_CXXFLAGS) $(CPPDEPS) $<
-endif
-
 ifeq ($(USE_GUI),1)
 $(OBJS)\corelib_tooltip.o: ../../src/msw/tooltip.cpp
        $(CXX) -c -o $@ $(CORELIB_CXXFLAGS) $(CPPDEPS) $<
@@ -12894,11 +12891,6 @@ $(OBJS)\corelib_textcmn.o: ../../src/common/textcmn.cpp
        $(CXX) -c -o $@ $(CORELIB_CXXFLAGS) $(CPPDEPS) $<
 endif
 
-ifeq ($(USE_GUI),1)
-$(OBJS)\corelib_timercmn.o: ../../src/common/timercmn.cpp
-       $(CXX) -c -o $@ $(CORELIB_CXXFLAGS) $(CPPDEPS) $<
-endif
-
 ifeq ($(USE_GUI),1)
 $(OBJS)\corelib_toplvcmn.o: ../../src/common/toplvcmn.cpp
        $(CXX) -c -o $@ $(CORELIB_CXXFLAGS) $(CPPDEPS) $<
index fba3aae3ed82fffb4254ad58995b6b6d3ca1adc2..99d9f8d82e378070bd02515aa05cf2bf9ea14b0d 100644 (file)
@@ -351,6 +351,8 @@ MONODLL_OBJECTS =  \
        $(OBJS)\monodll_tarstrm.obj \
        $(OBJS)\monodll_textbuf.obj \
        $(OBJS)\monodll_textfile.obj \
+       $(OBJS)\monodll_timercmn.obj \
+       $(OBJS)\monodll_timerimpl.obj \
        $(OBJS)\monodll_tokenzr.obj \
        $(OBJS)\monodll_txtstrm.obj \
        $(OBJS)\monodll_unichar.obj \
@@ -377,6 +379,7 @@ MONODLL_OBJECTS =  \
        $(OBJS)\monodll_stackwalk.obj \
        $(OBJS)\monodll_stdpaths.obj \
        $(OBJS)\monodll_thread.obj \
+       $(OBJS)\monodll_timer.obj \
        $(OBJS)\monodll_utils.obj \
        $(OBJS)\monodll_utilsexc.obj \
        $(OBJS)\monodll_event.obj \
@@ -486,6 +489,8 @@ MONOLIB_OBJECTS =  \
        $(OBJS)\monolib_tarstrm.obj \
        $(OBJS)\monolib_textbuf.obj \
        $(OBJS)\monolib_textfile.obj \
+       $(OBJS)\monolib_timercmn.obj \
+       $(OBJS)\monolib_timerimpl.obj \
        $(OBJS)\monolib_tokenzr.obj \
        $(OBJS)\monolib_txtstrm.obj \
        $(OBJS)\monolib_unichar.obj \
@@ -512,6 +517,7 @@ MONOLIB_OBJECTS =  \
        $(OBJS)\monolib_stackwalk.obj \
        $(OBJS)\monolib_stdpaths.obj \
        $(OBJS)\monolib_thread.obj \
+       $(OBJS)\monolib_timer.obj \
        $(OBJS)\monolib_utils.obj \
        $(OBJS)\monolib_utilsexc.obj \
        $(OBJS)\monolib_event.obj \
@@ -619,6 +625,8 @@ BASEDLL_OBJECTS =  \
        $(OBJS)\basedll_tarstrm.obj \
        $(OBJS)\basedll_textbuf.obj \
        $(OBJS)\basedll_textfile.obj \
+       $(OBJS)\basedll_timercmn.obj \
+       $(OBJS)\basedll_timerimpl.obj \
        $(OBJS)\basedll_tokenzr.obj \
        $(OBJS)\basedll_txtstrm.obj \
        $(OBJS)\basedll_unichar.obj \
@@ -645,6 +653,7 @@ BASEDLL_OBJECTS =  \
        $(OBJS)\basedll_stackwalk.obj \
        $(OBJS)\basedll_stdpaths.obj \
        $(OBJS)\basedll_thread.obj \
+       $(OBJS)\basedll_timer.obj \
        $(OBJS)\basedll_utils.obj \
        $(OBJS)\basedll_utilsexc.obj \
        $(OBJS)\basedll_event.obj \
@@ -736,6 +745,8 @@ BASELIB_OBJECTS =  \
        $(OBJS)\baselib_tarstrm.obj \
        $(OBJS)\baselib_textbuf.obj \
        $(OBJS)\baselib_textfile.obj \
+       $(OBJS)\baselib_timercmn.obj \
+       $(OBJS)\baselib_timerimpl.obj \
        $(OBJS)\baselib_tokenzr.obj \
        $(OBJS)\baselib_txtstrm.obj \
        $(OBJS)\baselib_unichar.obj \
@@ -762,6 +773,7 @@ BASELIB_OBJECTS =  \
        $(OBJS)\baselib_stackwalk.obj \
        $(OBJS)\baselib_stdpaths.obj \
        $(OBJS)\baselib_thread.obj \
+       $(OBJS)\baselib_timer.obj \
        $(OBJS)\baselib_utils.obj \
        $(OBJS)\baselib_utilsexc.obj \
        $(OBJS)\baselib_event.obj \
@@ -1690,7 +1702,6 @@ ____CORE_SRC_FILENAMES_OBJECTS =  \
        $(OBJS)\monodll_region.obj \
        $(OBJS)\monodll_renderer.obj \
        $(OBJS)\monodll_settings.obj \
-       $(OBJS)\monodll_timer.obj \
        $(OBJS)\monodll_tooltip.obj \
        $(OBJS)\monodll_toplevel.obj \
        $(OBJS)\monodll_utilsgui.obj \
@@ -1834,7 +1845,6 @@ ____CORE_SRC_FILENAMES_OBJECTS =  \
        $(OBJS)\monodll_stockitem.obj \
        $(OBJS)\monodll_tbarbase.obj \
        $(OBJS)\monodll_textcmn.obj \
-       $(OBJS)\monodll_timercmn.obj \
        $(OBJS)\monodll_toplvcmn.obj \
        $(OBJS)\monodll_treebase.obj \
        $(OBJS)\monodll_valgen.obj \
@@ -1917,7 +1927,6 @@ ____CORE_SRC_FILENAMES_OBJECTS =  \
        $(OBJS)\monodll_region.obj \
        $(OBJS)\monodll_renderer.obj \
        $(OBJS)\monodll_settings.obj \
-       $(OBJS)\monodll_timer.obj \
        $(OBJS)\monodll_tooltip.obj \
        $(OBJS)\monodll_toplevel.obj \
        $(OBJS)\monodll_utilsgui.obj \
@@ -2064,7 +2073,6 @@ ____CORE_SRC_FILENAMES_OBJECTS =  \
        $(OBJS)\monodll_stockitem.obj \
        $(OBJS)\monodll_tbarbase.obj \
        $(OBJS)\monodll_textcmn.obj \
-       $(OBJS)\monodll_timercmn.obj \
        $(OBJS)\monodll_toplvcmn.obj \
        $(OBJS)\monodll_treebase.obj \
        $(OBJS)\monodll_valgen.obj \
@@ -2327,7 +2335,6 @@ ____CORE_SRC_FILENAMES_1_OBJECTS =  \
        $(OBJS)\monolib_region.obj \
        $(OBJS)\monolib_renderer.obj \
        $(OBJS)\monolib_settings.obj \
-       $(OBJS)\monolib_timer.obj \
        $(OBJS)\monolib_tooltip.obj \
        $(OBJS)\monolib_toplevel.obj \
        $(OBJS)\monolib_utilsgui.obj \
@@ -2471,7 +2478,6 @@ ____CORE_SRC_FILENAMES_1_OBJECTS =  \
        $(OBJS)\monolib_stockitem.obj \
        $(OBJS)\monolib_tbarbase.obj \
        $(OBJS)\monolib_textcmn.obj \
-       $(OBJS)\monolib_timercmn.obj \
        $(OBJS)\monolib_toplvcmn.obj \
        $(OBJS)\monolib_treebase.obj \
        $(OBJS)\monolib_valgen.obj \
@@ -2554,7 +2560,6 @@ ____CORE_SRC_FILENAMES_1_OBJECTS =  \
        $(OBJS)\monolib_region.obj \
        $(OBJS)\monolib_renderer.obj \
        $(OBJS)\monolib_settings.obj \
-       $(OBJS)\monolib_timer.obj \
        $(OBJS)\monolib_tooltip.obj \
        $(OBJS)\monolib_toplevel.obj \
        $(OBJS)\monolib_utilsgui.obj \
@@ -2701,7 +2706,6 @@ ____CORE_SRC_FILENAMES_1_OBJECTS =  \
        $(OBJS)\monolib_stockitem.obj \
        $(OBJS)\monolib_tbarbase.obj \
        $(OBJS)\monolib_textcmn.obj \
-       $(OBJS)\monolib_timercmn.obj \
        $(OBJS)\monolib_toplvcmn.obj \
        $(OBJS)\monolib_treebase.obj \
        $(OBJS)\monolib_valgen.obj \
@@ -2905,7 +2909,6 @@ ____CORE_SRC_FILENAMES_2_OBJECTS =  \
        $(OBJS)\coredll_region.obj \
        $(OBJS)\coredll_renderer.obj \
        $(OBJS)\coredll_settings.obj \
-       $(OBJS)\coredll_timer.obj \
        $(OBJS)\coredll_tooltip.obj \
        $(OBJS)\coredll_toplevel.obj \
        $(OBJS)\coredll_utilsgui.obj \
@@ -3049,7 +3052,6 @@ ____CORE_SRC_FILENAMES_2_OBJECTS =  \
        $(OBJS)\coredll_stockitem.obj \
        $(OBJS)\coredll_tbarbase.obj \
        $(OBJS)\coredll_textcmn.obj \
-       $(OBJS)\coredll_timercmn.obj \
        $(OBJS)\coredll_toplvcmn.obj \
        $(OBJS)\coredll_treebase.obj \
        $(OBJS)\coredll_valgen.obj \
@@ -3132,7 +3134,6 @@ ____CORE_SRC_FILENAMES_2_OBJECTS =  \
        $(OBJS)\coredll_region.obj \
        $(OBJS)\coredll_renderer.obj \
        $(OBJS)\coredll_settings.obj \
-       $(OBJS)\coredll_timer.obj \
        $(OBJS)\coredll_tooltip.obj \
        $(OBJS)\coredll_toplevel.obj \
        $(OBJS)\coredll_utilsgui.obj \
@@ -3279,7 +3280,6 @@ ____CORE_SRC_FILENAMES_2_OBJECTS =  \
        $(OBJS)\coredll_stockitem.obj \
        $(OBJS)\coredll_tbarbase.obj \
        $(OBJS)\coredll_textcmn.obj \
-       $(OBJS)\coredll_timercmn.obj \
        $(OBJS)\coredll_toplvcmn.obj \
        $(OBJS)\coredll_treebase.obj \
        $(OBJS)\coredll_valgen.obj \
@@ -3372,7 +3372,6 @@ ____CORE_SRC_FILENAMES_3_OBJECTS =  \
        $(OBJS)\corelib_region.obj \
        $(OBJS)\corelib_renderer.obj \
        $(OBJS)\corelib_settings.obj \
-       $(OBJS)\corelib_timer.obj \
        $(OBJS)\corelib_tooltip.obj \
        $(OBJS)\corelib_toplevel.obj \
        $(OBJS)\corelib_utilsgui.obj \
@@ -3516,7 +3515,6 @@ ____CORE_SRC_FILENAMES_3_OBJECTS =  \
        $(OBJS)\corelib_stockitem.obj \
        $(OBJS)\corelib_tbarbase.obj \
        $(OBJS)\corelib_textcmn.obj \
-       $(OBJS)\corelib_timercmn.obj \
        $(OBJS)\corelib_toplvcmn.obj \
        $(OBJS)\corelib_treebase.obj \
        $(OBJS)\corelib_valgen.obj \
@@ -3599,7 +3597,6 @@ ____CORE_SRC_FILENAMES_3_OBJECTS =  \
        $(OBJS)\corelib_region.obj \
        $(OBJS)\corelib_renderer.obj \
        $(OBJS)\corelib_settings.obj \
-       $(OBJS)\corelib_timer.obj \
        $(OBJS)\corelib_tooltip.obj \
        $(OBJS)\corelib_toplevel.obj \
        $(OBJS)\corelib_utilsgui.obj \
@@ -3746,7 +3743,6 @@ ____CORE_SRC_FILENAMES_3_OBJECTS =  \
        $(OBJS)\corelib_stockitem.obj \
        $(OBJS)\corelib_tbarbase.obj \
        $(OBJS)\corelib_textcmn.obj \
-       $(OBJS)\corelib_timercmn.obj \
        $(OBJS)\corelib_toplvcmn.obj \
        $(OBJS)\corelib_treebase.obj \
        $(OBJS)\corelib_valgen.obj \
@@ -4509,7 +4505,7 @@ clean:
        -if exist $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_gl.lib del $(LIBDIRNAME)\wx$(PORTNAME)$(WXUNIVNAME)$(WX_RELEASE_NODOT)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WX_LIB_FLAVOUR)_gl.lib
        cd ..\..\samples
        $(MAKE) -f makefile.vc $(MAKEARGS) clean
-       cd $(MAKEDIR)
+       cd "$(MAKEDIR)"
 
 setup_h: $(SETUPHDIR)\wx ..\..\include\wx\$(__SETUP_H_SUBDIR_FILENAMES)\setup.h $(SETUPHDIR)\wx\setup.h $(SETUPHDIR)\wx\msw\rcdefs.h
 
@@ -4862,7 +4858,7 @@ wxgl: $(____wxgl_namedll_DEP) $(____wxgl_namelib_DEP)
 sub_samples: 
        cd ..\..\samples
        $(MAKE) -f makefile.vc $(MAKEARGS) all
-       cd $(MAKEDIR)
+       cd "$(MAKEDIR)"
 
 $(LIBDIRNAME): 
        if not exist $(LIBDIRNAME) mkdir $(LIBDIRNAME)
@@ -5692,6 +5688,12 @@ $(OBJS)\monodll_textbuf.obj: ..\..\src\common\textbuf.cpp
 $(OBJS)\monodll_textfile.obj: ..\..\src\common\textfile.cpp
        $(CXX) /c /nologo /TP /Fo$@ $(MONODLL_CXXFLAGS) $**
 
+$(OBJS)\monodll_timercmn.obj: ..\..\src\common\timercmn.cpp
+       $(CXX) /c /nologo /TP /Fo$@ $(MONODLL_CXXFLAGS) $**
+
+$(OBJS)\monodll_timerimpl.obj: ..\..\src\common\timerimpl.cpp
+       $(CXX) /c /nologo /TP /Fo$@ $(MONODLL_CXXFLAGS) $**
+
 $(OBJS)\monodll_tokenzr.obj: ..\..\src\common\tokenzr.cpp
        $(CXX) /c /nologo /TP /Fo$@ $(MONODLL_CXXFLAGS) $**
 
@@ -5770,6 +5772,9 @@ $(OBJS)\monodll_stdpaths.obj: ..\..\src\msw\stdpaths.cpp
 $(OBJS)\monodll_thread.obj: ..\..\src\msw\thread.cpp
        $(CXX) /c /nologo /TP /Fo$@ $(MONODLL_CXXFLAGS) $**
 
+$(OBJS)\monodll_timer.obj: ..\..\src\msw\timer.cpp
+       $(CXX) /c /nologo /TP /Fo$@ $(MONODLL_CXXFLAGS) $**
+
 $(OBJS)\monodll_utils.obj: ..\..\src\msw\utils.cpp
        $(CXX) /c /nologo /TP /Fo$@ $(MONODLL_CXXFLAGS) $**
 
@@ -6506,11 +6511,6 @@ $(OBJS)\monodll_settings.obj: ..\..\src\msw\settings.cpp
        $(CXX) /c /nologo /TP /Fo$@ $(MONODLL_CXXFLAGS) $**
 !endif
 
-!if "$(USE_GUI)" == "1"
-$(OBJS)\monodll_timer.obj: ..\..\src\msw\timer.cpp
-       $(CXX) /c /nologo /TP /Fo$@ $(MONODLL_CXXFLAGS) $**
-!endif
-
 !if "$(USE_GUI)" == "1"
 $(OBJS)\monodll_tooltip.obj: ..\..\src\msw\tooltip.cpp
        $(CXX) /c /nologo /TP /Fo$@ $(MONODLL_CXXFLAGS) $**
@@ -7241,11 +7241,6 @@ $(OBJS)\monodll_textcmn.obj: ..\..\src\common\textcmn.cpp
        $(CXX) /c /nologo /TP /Fo$@ $(MONODLL_CXXFLAGS) $**
 !endif
 
-!if "$(USE_GUI)" == "1"
-$(OBJS)\monodll_timercmn.obj: ..\..\src\common\timercmn.cpp
-       $(CXX) /c /nologo /TP /Fo$@ $(MONODLL_CXXFLAGS) $**
-!endif
-
 !if "$(USE_GUI)" == "1"
 $(OBJS)\monodll_toplvcmn.obj: ..\..\src\common\toplvcmn.cpp
        $(CXX) /c /nologo /TP /Fo$@ $(MONODLL_CXXFLAGS) $**
@@ -7749,6 +7744,12 @@ $(OBJS)\monolib_textbuf.obj: ..\..\src\common\textbuf.cpp
 $(OBJS)\monolib_textfile.obj: ..\..\src\common\textfile.cpp
        $(CXX) /c /nologo /TP /Fo$@ $(MONOLIB_CXXFLAGS) $**
 
+$(OBJS)\monolib_timercmn.obj: ..\..\src\common\timercmn.cpp
+       $(CXX) /c /nologo /TP /Fo$@ $(MONOLIB_CXXFLAGS) $**
+
+$(OBJS)\monolib_timerimpl.obj: ..\..\src\common\timerimpl.cpp
+       $(CXX) /c /nologo /TP /Fo$@ $(MONOLIB_CXXFLAGS) $**
+
 $(OBJS)\monolib_tokenzr.obj: ..\..\src\common\tokenzr.cpp
        $(CXX) /c /nologo /TP /Fo$@ $(MONOLIB_CXXFLAGS) $**
 
@@ -7827,6 +7828,9 @@ $(OBJS)\monolib_stdpaths.obj: ..\..\src\msw\stdpaths.cpp
 $(OBJS)\monolib_thread.obj: ..\..\src\msw\thread.cpp
        $(CXX) /c /nologo /TP /Fo$@ $(MONOLIB_CXXFLAGS) $**
 
+$(OBJS)\monolib_timer.obj: ..\..\src\msw\timer.cpp
+       $(CXX) /c /nologo /TP /Fo$@ $(MONOLIB_CXXFLAGS) $**
+
 $(OBJS)\monolib_utils.obj: ..\..\src\msw\utils.cpp
        $(CXX) /c /nologo /TP /Fo$@ $(MONOLIB_CXXFLAGS) $**
 
@@ -8563,11 +8567,6 @@ $(OBJS)\monolib_settings.obj: ..\..\src\msw\settings.cpp
        $(CXX) /c /nologo /TP /Fo$@ $(MONOLIB_CXXFLAGS) $**
 !endif
 
-!if "$(USE_GUI)" == "1"
-$(OBJS)\monolib_timer.obj: ..\..\src\msw\timer.cpp
-       $(CXX) /c /nologo /TP /Fo$@ $(MONOLIB_CXXFLAGS) $**
-!endif
-
 !if "$(USE_GUI)" == "1"
 $(OBJS)\monolib_tooltip.obj: ..\..\src\msw\tooltip.cpp
        $(CXX) /c /nologo /TP /Fo$@ $(MONOLIB_CXXFLAGS) $**
@@ -9298,11 +9297,6 @@ $(OBJS)\monolib_textcmn.obj: ..\..\src\common\textcmn.cpp
        $(CXX) /c /nologo /TP /Fo$@ $(MONOLIB_CXXFLAGS) $**
 !endif
 
-!if "$(USE_GUI)" == "1"
-$(OBJS)\monolib_timercmn.obj: ..\..\src\common\timercmn.cpp
-       $(CXX) /c /nologo /TP /Fo$@ $(MONOLIB_CXXFLAGS) $**
-!endif
-
 !if "$(USE_GUI)" == "1"
 $(OBJS)\monolib_toplvcmn.obj: ..\..\src\common\toplvcmn.cpp
        $(CXX) /c /nologo /TP /Fo$@ $(MONOLIB_CXXFLAGS) $**
@@ -9806,6 +9800,12 @@ $(OBJS)\basedll_textbuf.obj: ..\..\src\common\textbuf.cpp
 $(OBJS)\basedll_textfile.obj: ..\..\src\common\textfile.cpp
        $(CXX) /c /nologo /TP /Fo$@ $(BASEDLL_CXXFLAGS) $**
 
+$(OBJS)\basedll_timercmn.obj: ..\..\src\common\timercmn.cpp
+       $(CXX) /c /nologo /TP /Fo$@ $(BASEDLL_CXXFLAGS) $**
+
+$(OBJS)\basedll_timerimpl.obj: ..\..\src\common\timerimpl.cpp
+       $(CXX) /c /nologo /TP /Fo$@ $(BASEDLL_CXXFLAGS) $**
+
 $(OBJS)\basedll_tokenzr.obj: ..\..\src\common\tokenzr.cpp
        $(CXX) /c /nologo /TP /Fo$@ $(BASEDLL_CXXFLAGS) $**
 
@@ -9884,6 +9884,9 @@ $(OBJS)\basedll_stdpaths.obj: ..\..\src\msw\stdpaths.cpp
 $(OBJS)\basedll_thread.obj: ..\..\src\msw\thread.cpp
        $(CXX) /c /nologo /TP /Fo$@ $(BASEDLL_CXXFLAGS) $**
 
+$(OBJS)\basedll_timer.obj: ..\..\src\msw\timer.cpp
+       $(CXX) /c /nologo /TP /Fo$@ $(BASEDLL_CXXFLAGS) $**
+
 $(OBJS)\basedll_utils.obj: ..\..\src\msw\utils.cpp
        $(CXX) /c /nologo /TP /Fo$@ $(BASEDLL_CXXFLAGS) $**
 
@@ -10091,6 +10094,12 @@ $(OBJS)\baselib_textbuf.obj: ..\..\src\common\textbuf.cpp
 $(OBJS)\baselib_textfile.obj: ..\..\src\common\textfile.cpp
        $(CXX) /c /nologo /TP /Fo$@ $(BASELIB_CXXFLAGS) $**
 
+$(OBJS)\baselib_timercmn.obj: ..\..\src\common\timercmn.cpp
+       $(CXX) /c /nologo /TP /Fo$@ $(BASELIB_CXXFLAGS) $**
+
+$(OBJS)\baselib_timerimpl.obj: ..\..\src\common\timerimpl.cpp
+       $(CXX) /c /nologo /TP /Fo$@ $(BASELIB_CXXFLAGS) $**
+
 $(OBJS)\baselib_tokenzr.obj: ..\..\src\common\tokenzr.cpp
        $(CXX) /c /nologo /TP /Fo$@ $(BASELIB_CXXFLAGS) $**
 
@@ -10169,6 +10178,9 @@ $(OBJS)\baselib_stdpaths.obj: ..\..\src\msw\stdpaths.cpp
 $(OBJS)\baselib_thread.obj: ..\..\src\msw\thread.cpp
        $(CXX) /c /nologo /TP /Fo$@ $(BASELIB_CXXFLAGS) $**
 
+$(OBJS)\baselib_timer.obj: ..\..\src\msw\timer.cpp
+       $(CXX) /c /nologo /TP /Fo$@ $(BASELIB_CXXFLAGS) $**
+
 $(OBJS)\baselib_utils.obj: ..\..\src\msw\utils.cpp
        $(CXX) /c /nologo /TP /Fo$@ $(BASELIB_CXXFLAGS) $**
 
@@ -10650,11 +10662,6 @@ $(OBJS)\coredll_settings.obj: ..\..\src\msw\settings.cpp
        $(CXX) /c /nologo /TP /Fo$@ $(COREDLL_CXXFLAGS) $**
 !endif
 
-!if "$(USE_GUI)" == "1"
-$(OBJS)\coredll_timer.obj: ..\..\src\msw\timer.cpp
-       $(CXX) /c /nologo /TP /Fo$@ $(COREDLL_CXXFLAGS) $**
-!endif
-
 !if "$(USE_GUI)" == "1"
 $(OBJS)\coredll_tooltip.obj: ..\..\src\msw\tooltip.cpp
        $(CXX) /c /nologo /TP /Fo$@ $(COREDLL_CXXFLAGS) $**
@@ -11385,11 +11392,6 @@ $(OBJS)\coredll_textcmn.obj: ..\..\src\common\textcmn.cpp
        $(CXX) /c /nologo /TP /Fo$@ $(COREDLL_CXXFLAGS) $**
 !endif
 
-!if "$(USE_GUI)" == "1"
-$(OBJS)\coredll_timercmn.obj: ..\..\src\common\timercmn.cpp
-       $(CXX) /c /nologo /TP /Fo$@ $(COREDLL_CXXFLAGS) $**
-!endif
-
 !if "$(USE_GUI)" == "1"
 $(OBJS)\coredll_toplvcmn.obj: ..\..\src\common\toplvcmn.cpp
        $(CXX) /c /nologo /TP /Fo$@ $(COREDLL_CXXFLAGS) $**
@@ -11950,11 +11952,6 @@ $(OBJS)\corelib_settings.obj: ..\..\src\msw\settings.cpp
        $(CXX) /c /nologo /TP /Fo$@ $(CORELIB_CXXFLAGS) $**
 !endif
 
-!if "$(USE_GUI)" == "1"
-$(OBJS)\corelib_timer.obj: ..\..\src\msw\timer.cpp
-       $(CXX) /c /nologo /TP /Fo$@ $(CORELIB_CXXFLAGS) $**
-!endif
-
 !if "$(USE_GUI)" == "1"
 $(OBJS)\corelib_tooltip.obj: ..\..\src\msw\tooltip.cpp
        $(CXX) /c /nologo /TP /Fo$@ $(CORELIB_CXXFLAGS) $**
@@ -12685,11 +12682,6 @@ $(OBJS)\corelib_textcmn.obj: ..\..\src\common\textcmn.cpp
        $(CXX) /c /nologo /TP /Fo$@ $(CORELIB_CXXFLAGS) $**
 !endif
 
-!if "$(USE_GUI)" == "1"
-$(OBJS)\corelib_timercmn.obj: ..\..\src\common\timercmn.cpp
-       $(CXX) /c /nologo /TP /Fo$@ $(CORELIB_CXXFLAGS) $**
-!endif
-
 !if "$(USE_GUI)" == "1"
 $(OBJS)\corelib_toplvcmn.obj: ..\..\src\common\toplvcmn.cpp
        $(CXX) /c /nologo /TP /Fo$@ $(CORELIB_CXXFLAGS) $**
index 803b9986b8262586123050d2d4ac6fe9ede60a1e..04c24e2426947f863415c6024ec292c93eff52d9 100644 (file)
@@ -256,7 +256,6 @@ ____CORE_SRC_FILENAMES_OBJECTS =  &
        $(OBJS)\monodll_region.obj &
        $(OBJS)\monodll_renderer.obj &
        $(OBJS)\monodll_settings.obj &
-       $(OBJS)\monodll_timer.obj &
        $(OBJS)\monodll_tooltip.obj &
        $(OBJS)\monodll_toplevel.obj &
        $(OBJS)\monodll_utilsgui.obj &
@@ -400,7 +399,6 @@ ____CORE_SRC_FILENAMES_OBJECTS =  &
        $(OBJS)\monodll_stockitem.obj &
        $(OBJS)\monodll_tbarbase.obj &
        $(OBJS)\monodll_textcmn.obj &
-       $(OBJS)\monodll_timercmn.obj &
        $(OBJS)\monodll_toplvcmn.obj &
        $(OBJS)\monodll_treebase.obj &
        $(OBJS)\monodll_valgen.obj &
@@ -485,7 +483,6 @@ ____CORE_SRC_FILENAMES_OBJECTS =  &
        $(OBJS)\monodll_region.obj &
        $(OBJS)\monodll_renderer.obj &
        $(OBJS)\monodll_settings.obj &
-       $(OBJS)\monodll_timer.obj &
        $(OBJS)\monodll_tooltip.obj &
        $(OBJS)\monodll_toplevel.obj &
        $(OBJS)\monodll_utilsgui.obj &
@@ -632,7 +629,6 @@ ____CORE_SRC_FILENAMES_OBJECTS =  &
        $(OBJS)\monodll_stockitem.obj &
        $(OBJS)\monodll_tbarbase.obj &
        $(OBJS)\monodll_textcmn.obj &
-       $(OBJS)\monodll_timercmn.obj &
        $(OBJS)\monodll_toplvcmn.obj &
        $(OBJS)\monodll_treebase.obj &
        $(OBJS)\monodll_valgen.obj &
@@ -897,7 +893,6 @@ ____CORE_SRC_FILENAMES_1_OBJECTS =  &
        $(OBJS)\monolib_region.obj &
        $(OBJS)\monolib_renderer.obj &
        $(OBJS)\monolib_settings.obj &
-       $(OBJS)\monolib_timer.obj &
        $(OBJS)\monolib_tooltip.obj &
        $(OBJS)\monolib_toplevel.obj &
        $(OBJS)\monolib_utilsgui.obj &
@@ -1041,7 +1036,6 @@ ____CORE_SRC_FILENAMES_1_OBJECTS =  &
        $(OBJS)\monolib_stockitem.obj &
        $(OBJS)\monolib_tbarbase.obj &
        $(OBJS)\monolib_textcmn.obj &
-       $(OBJS)\monolib_timercmn.obj &
        $(OBJS)\monolib_toplvcmn.obj &
        $(OBJS)\monolib_treebase.obj &
        $(OBJS)\monolib_valgen.obj &
@@ -1126,7 +1120,6 @@ ____CORE_SRC_FILENAMES_1_OBJECTS =  &
        $(OBJS)\monolib_region.obj &
        $(OBJS)\monolib_renderer.obj &
        $(OBJS)\monolib_settings.obj &
-       $(OBJS)\monolib_timer.obj &
        $(OBJS)\monolib_tooltip.obj &
        $(OBJS)\monolib_toplevel.obj &
        $(OBJS)\monolib_utilsgui.obj &
@@ -1273,7 +1266,6 @@ ____CORE_SRC_FILENAMES_1_OBJECTS =  &
        $(OBJS)\monolib_stockitem.obj &
        $(OBJS)\monolib_tbarbase.obj &
        $(OBJS)\monolib_textcmn.obj &
-       $(OBJS)\monolib_timercmn.obj &
        $(OBJS)\monolib_toplvcmn.obj &
        $(OBJS)\monolib_treebase.obj &
        $(OBJS)\monolib_valgen.obj &
@@ -1472,7 +1464,6 @@ ____CORE_SRC_FILENAMES_2_OBJECTS =  &
        $(OBJS)\coredll_region.obj &
        $(OBJS)\coredll_renderer.obj &
        $(OBJS)\coredll_settings.obj &
-       $(OBJS)\coredll_timer.obj &
        $(OBJS)\coredll_tooltip.obj &
        $(OBJS)\coredll_toplevel.obj &
        $(OBJS)\coredll_utilsgui.obj &
@@ -1616,7 +1607,6 @@ ____CORE_SRC_FILENAMES_2_OBJECTS =  &
        $(OBJS)\coredll_stockitem.obj &
        $(OBJS)\coredll_tbarbase.obj &
        $(OBJS)\coredll_textcmn.obj &
-       $(OBJS)\coredll_timercmn.obj &
        $(OBJS)\coredll_toplvcmn.obj &
        $(OBJS)\coredll_treebase.obj &
        $(OBJS)\coredll_valgen.obj &
@@ -1701,7 +1691,6 @@ ____CORE_SRC_FILENAMES_2_OBJECTS =  &
        $(OBJS)\coredll_region.obj &
        $(OBJS)\coredll_renderer.obj &
        $(OBJS)\coredll_settings.obj &
-       $(OBJS)\coredll_timer.obj &
        $(OBJS)\coredll_tooltip.obj &
        $(OBJS)\coredll_toplevel.obj &
        $(OBJS)\coredll_utilsgui.obj &
@@ -1848,7 +1837,6 @@ ____CORE_SRC_FILENAMES_2_OBJECTS =  &
        $(OBJS)\coredll_stockitem.obj &
        $(OBJS)\coredll_tbarbase.obj &
        $(OBJS)\coredll_textcmn.obj &
-       $(OBJS)\coredll_timercmn.obj &
        $(OBJS)\coredll_toplvcmn.obj &
        $(OBJS)\coredll_treebase.obj &
        $(OBJS)\coredll_valgen.obj &
@@ -1943,7 +1931,6 @@ ____CORE_SRC_FILENAMES_3_OBJECTS =  &
        $(OBJS)\corelib_region.obj &
        $(OBJS)\corelib_renderer.obj &
        $(OBJS)\corelib_settings.obj &
-       $(OBJS)\corelib_timer.obj &
        $(OBJS)\corelib_tooltip.obj &
        $(OBJS)\corelib_toplevel.obj &
        $(OBJS)\corelib_utilsgui.obj &
@@ -2087,7 +2074,6 @@ ____CORE_SRC_FILENAMES_3_OBJECTS =  &
        $(OBJS)\corelib_stockitem.obj &
        $(OBJS)\corelib_tbarbase.obj &
        $(OBJS)\corelib_textcmn.obj &
-       $(OBJS)\corelib_timercmn.obj &
        $(OBJS)\corelib_toplvcmn.obj &
        $(OBJS)\corelib_treebase.obj &
        $(OBJS)\corelib_valgen.obj &
@@ -2172,7 +2158,6 @@ ____CORE_SRC_FILENAMES_3_OBJECTS =  &
        $(OBJS)\corelib_region.obj &
        $(OBJS)\corelib_renderer.obj &
        $(OBJS)\corelib_settings.obj &
-       $(OBJS)\corelib_timer.obj &
        $(OBJS)\corelib_tooltip.obj &
        $(OBJS)\corelib_toplevel.obj &
        $(OBJS)\corelib_utilsgui.obj &
@@ -2319,7 +2304,6 @@ ____CORE_SRC_FILENAMES_3_OBJECTS =  &
        $(OBJS)\corelib_stockitem.obj &
        $(OBJS)\corelib_tbarbase.obj &
        $(OBJS)\corelib_textcmn.obj &
-       $(OBJS)\corelib_timercmn.obj &
        $(OBJS)\corelib_toplvcmn.obj &
        $(OBJS)\corelib_treebase.obj &
        $(OBJS)\corelib_valgen.obj &
@@ -3292,6 +3276,8 @@ MONODLL_OBJECTS =  &
        $(OBJS)\monodll_tarstrm.obj &
        $(OBJS)\monodll_textbuf.obj &
        $(OBJS)\monodll_textfile.obj &
+       $(OBJS)\monodll_timercmn.obj &
+       $(OBJS)\monodll_timerimpl.obj &
        $(OBJS)\monodll_tokenzr.obj &
        $(OBJS)\monodll_txtstrm.obj &
        $(OBJS)\monodll_unichar.obj &
@@ -3318,6 +3304,7 @@ MONODLL_OBJECTS =  &
        $(OBJS)\monodll_stackwalk.obj &
        $(OBJS)\monodll_stdpaths.obj &
        $(OBJS)\monodll_thread.obj &
+       $(OBJS)\monodll_timer.obj &
        $(OBJS)\monodll_utils.obj &
        $(OBJS)\monodll_utilsexc.obj &
        $(OBJS)\monodll_event.obj &
@@ -3422,6 +3409,8 @@ MONOLIB_OBJECTS =  &
        $(OBJS)\monolib_tarstrm.obj &
        $(OBJS)\monolib_textbuf.obj &
        $(OBJS)\monolib_textfile.obj &
+       $(OBJS)\monolib_timercmn.obj &
+       $(OBJS)\monolib_timerimpl.obj &
        $(OBJS)\monolib_tokenzr.obj &
        $(OBJS)\monolib_txtstrm.obj &
        $(OBJS)\monolib_unichar.obj &
@@ -3448,6 +3437,7 @@ MONOLIB_OBJECTS =  &
        $(OBJS)\monolib_stackwalk.obj &
        $(OBJS)\monolib_stdpaths.obj &
        $(OBJS)\monolib_thread.obj &
+       $(OBJS)\monolib_timer.obj &
        $(OBJS)\monolib_utils.obj &
        $(OBJS)\monolib_utilsexc.obj &
        $(OBJS)\monolib_event.obj &
@@ -3550,6 +3540,8 @@ BASEDLL_OBJECTS =  &
        $(OBJS)\basedll_tarstrm.obj &
        $(OBJS)\basedll_textbuf.obj &
        $(OBJS)\basedll_textfile.obj &
+       $(OBJS)\basedll_timercmn.obj &
+       $(OBJS)\basedll_timerimpl.obj &
        $(OBJS)\basedll_tokenzr.obj &
        $(OBJS)\basedll_txtstrm.obj &
        $(OBJS)\basedll_unichar.obj &
@@ -3576,6 +3568,7 @@ BASEDLL_OBJECTS =  &
        $(OBJS)\basedll_stackwalk.obj &
        $(OBJS)\basedll_stdpaths.obj &
        $(OBJS)\basedll_thread.obj &
+       $(OBJS)\basedll_timer.obj &
        $(OBJS)\basedll_utils.obj &
        $(OBJS)\basedll_utilsexc.obj &
        $(OBJS)\basedll_event.obj &
@@ -3662,6 +3655,8 @@ BASELIB_OBJECTS =  &
        $(OBJS)\baselib_tarstrm.obj &
        $(OBJS)\baselib_textbuf.obj &
        $(OBJS)\baselib_textfile.obj &
+       $(OBJS)\baselib_timercmn.obj &
+       $(OBJS)\baselib_timerimpl.obj &
        $(OBJS)\baselib_tokenzr.obj &
        $(OBJS)\baselib_txtstrm.obj &
        $(OBJS)\baselib_unichar.obj &
@@ -3688,6 +3683,7 @@ BASELIB_OBJECTS =  &
        $(OBJS)\baselib_stackwalk.obj &
        $(OBJS)\baselib_stdpaths.obj &
        $(OBJS)\baselib_thread.obj &
+       $(OBJS)\baselib_timer.obj &
        $(OBJS)\baselib_utils.obj &
        $(OBJS)\baselib_utilsexc.obj &
        $(OBJS)\baselib_event.obj &
@@ -5772,6 +5768,12 @@ $(OBJS)\monodll_textbuf.obj :  .AUTODEPEND ..\..\src\common\textbuf.cpp
 $(OBJS)\monodll_textfile.obj :  .AUTODEPEND ..\..\src\common\textfile.cpp
        $(CXX) -bt=nt -zq -fo=$^@ $(MONODLL_CXXFLAGS) $<
 
+$(OBJS)\monodll_timercmn.obj :  .AUTODEPEND ..\..\src\common\timercmn.cpp
+       $(CXX) -bt=nt -zq -fo=$^@ $(MONODLL_CXXFLAGS) $<
+
+$(OBJS)\monodll_timerimpl.obj :  .AUTODEPEND ..\..\src\common\timerimpl.cpp
+       $(CXX) -bt=nt -zq -fo=$^@ $(MONODLL_CXXFLAGS) $<
+
 $(OBJS)\monodll_tokenzr.obj :  .AUTODEPEND ..\..\src\common\tokenzr.cpp
        $(CXX) -bt=nt -zq -fo=$^@ $(MONODLL_CXXFLAGS) $<
 
@@ -5850,6 +5852,9 @@ $(OBJS)\monodll_stdpaths.obj :  .AUTODEPEND ..\..\src\msw\stdpaths.cpp
 $(OBJS)\monodll_thread.obj :  .AUTODEPEND ..\..\src\msw\thread.cpp
        $(CXX) -bt=nt -zq -fo=$^@ $(MONODLL_CXXFLAGS) $<
 
+$(OBJS)\monodll_timer.obj :  .AUTODEPEND ..\..\src\msw\timer.cpp
+       $(CXX) -bt=nt -zq -fo=$^@ $(MONODLL_CXXFLAGS) $<
+
 $(OBJS)\monodll_utils.obj :  .AUTODEPEND ..\..\src\msw\utils.cpp
        $(CXX) -bt=nt -zq -fo=$^@ $(MONODLL_CXXFLAGS) $<
 
@@ -6586,11 +6591,6 @@ $(OBJS)\monodll_settings.obj :  .AUTODEPEND ..\..\src\msw\settings.cpp
        $(CXX) -bt=nt -zq -fo=$^@ $(MONODLL_CXXFLAGS) $<
 !endif
 
-!ifeq USE_GUI 1
-$(OBJS)\monodll_timer.obj :  .AUTODEPEND ..\..\src\msw\timer.cpp
-       $(CXX) -bt=nt -zq -fo=$^@ $(MONODLL_CXXFLAGS) $<
-!endif
-
 !ifeq USE_GUI 1
 $(OBJS)\monodll_tooltip.obj :  .AUTODEPEND ..\..\src\msw\tooltip.cpp
        $(CXX) -bt=nt -zq -fo=$^@ $(MONODLL_CXXFLAGS) $<
@@ -7421,11 +7421,6 @@ $(OBJS)\monodll_textcmn.obj :  .AUTODEPEND ..\..\src\common\textcmn.cpp
        $(CXX) -bt=nt -zq -fo=$^@ $(MONODLL_CXXFLAGS) $<
 !endif
 
-!ifeq USE_GUI 1
-$(OBJS)\monodll_timercmn.obj :  .AUTODEPEND ..\..\src\common\timercmn.cpp
-       $(CXX) -bt=nt -zq -fo=$^@ $(MONODLL_CXXFLAGS) $<
-!endif
-
 !ifeq USE_GUI 1
 $(OBJS)\monodll_toplvcmn.obj :  .AUTODEPEND ..\..\src\common\toplvcmn.cpp
        $(CXX) -bt=nt -zq -fo=$^@ $(MONODLL_CXXFLAGS) $<
@@ -7929,6 +7924,12 @@ $(OBJS)\monolib_textbuf.obj :  .AUTODEPEND ..\..\src\common\textbuf.cpp
 $(OBJS)\monolib_textfile.obj :  .AUTODEPEND ..\..\src\common\textfile.cpp
        $(CXX) -bt=nt -zq -fo=$^@ $(MONOLIB_CXXFLAGS) $<
 
+$(OBJS)\monolib_timercmn.obj :  .AUTODEPEND ..\..\src\common\timercmn.cpp
+       $(CXX) -bt=nt -zq -fo=$^@ $(MONOLIB_CXXFLAGS) $<
+
+$(OBJS)\monolib_timerimpl.obj :  .AUTODEPEND ..\..\src\common\timerimpl.cpp
+       $(CXX) -bt=nt -zq -fo=$^@ $(MONOLIB_CXXFLAGS) $<
+
 $(OBJS)\monolib_tokenzr.obj :  .AUTODEPEND ..\..\src\common\tokenzr.cpp
        $(CXX) -bt=nt -zq -fo=$^@ $(MONOLIB_CXXFLAGS) $<
 
@@ -8007,6 +8008,9 @@ $(OBJS)\monolib_stdpaths.obj :  .AUTODEPEND ..\..\src\msw\stdpaths.cpp
 $(OBJS)\monolib_thread.obj :  .AUTODEPEND ..\..\src\msw\thread.cpp
        $(CXX) -bt=nt -zq -fo=$^@ $(MONOLIB_CXXFLAGS) $<
 
+$(OBJS)\monolib_timer.obj :  .AUTODEPEND ..\..\src\msw\timer.cpp
+       $(CXX) -bt=nt -zq -fo=$^@ $(MONOLIB_CXXFLAGS) $<
+
 $(OBJS)\monolib_utils.obj :  .AUTODEPEND ..\..\src\msw\utils.cpp
        $(CXX) -bt=nt -zq -fo=$^@ $(MONOLIB_CXXFLAGS) $<
 
@@ -8743,11 +8747,6 @@ $(OBJS)\monolib_settings.obj :  .AUTODEPEND ..\..\src\msw\settings.cpp
        $(CXX) -bt=nt -zq -fo=$^@ $(MONOLIB_CXXFLAGS) $<
 !endif
 
-!ifeq USE_GUI 1
-$(OBJS)\monolib_timer.obj :  .AUTODEPEND ..\..\src\msw\timer.cpp
-       $(CXX) -bt=nt -zq -fo=$^@ $(MONOLIB_CXXFLAGS) $<
-!endif
-
 !ifeq USE_GUI 1
 $(OBJS)\monolib_tooltip.obj :  .AUTODEPEND ..\..\src\msw\tooltip.cpp
        $(CXX) -bt=nt -zq -fo=$^@ $(MONOLIB_CXXFLAGS) $<
@@ -9578,11 +9577,6 @@ $(OBJS)\monolib_textcmn.obj :  .AUTODEPEND ..\..\src\common\textcmn.cpp
        $(CXX) -bt=nt -zq -fo=$^@ $(MONOLIB_CXXFLAGS) $<
 !endif
 
-!ifeq USE_GUI 1
-$(OBJS)\monolib_timercmn.obj :  .AUTODEPEND ..\..\src\common\timercmn.cpp
-       $(CXX) -bt=nt -zq -fo=$^@ $(MONOLIB_CXXFLAGS) $<
-!endif
-
 !ifeq USE_GUI 1
 $(OBJS)\monolib_toplvcmn.obj :  .AUTODEPEND ..\..\src\common\toplvcmn.cpp
        $(CXX) -bt=nt -zq -fo=$^@ $(MONOLIB_CXXFLAGS) $<
@@ -10086,6 +10080,12 @@ $(OBJS)\basedll_textbuf.obj :  .AUTODEPEND ..\..\src\common\textbuf.cpp
 $(OBJS)\basedll_textfile.obj :  .AUTODEPEND ..\..\src\common\textfile.cpp
        $(CXX) -bt=nt -zq -fo=$^@ $(BASEDLL_CXXFLAGS) $<
 
+$(OBJS)\basedll_timercmn.obj :  .AUTODEPEND ..\..\src\common\timercmn.cpp
+       $(CXX) -bt=nt -zq -fo=$^@ $(BASEDLL_CXXFLAGS) $<
+
+$(OBJS)\basedll_timerimpl.obj :  .AUTODEPEND ..\..\src\common\timerimpl.cpp
+       $(CXX) -bt=nt -zq -fo=$^@ $(BASEDLL_CXXFLAGS) $<
+
 $(OBJS)\basedll_tokenzr.obj :  .AUTODEPEND ..\..\src\common\tokenzr.cpp
        $(CXX) -bt=nt -zq -fo=$^@ $(BASEDLL_CXXFLAGS) $<
 
@@ -10164,6 +10164,9 @@ $(OBJS)\basedll_stdpaths.obj :  .AUTODEPEND ..\..\src\msw\stdpaths.cpp
 $(OBJS)\basedll_thread.obj :  .AUTODEPEND ..\..\src\msw\thread.cpp
        $(CXX) -bt=nt -zq -fo=$^@ $(BASEDLL_CXXFLAGS) $<
 
+$(OBJS)\basedll_timer.obj :  .AUTODEPEND ..\..\src\msw\timer.cpp
+       $(CXX) -bt=nt -zq -fo=$^@ $(BASEDLL_CXXFLAGS) $<
+
 $(OBJS)\basedll_utils.obj :  .AUTODEPEND ..\..\src\msw\utils.cpp
        $(CXX) -bt=nt -zq -fo=$^@ $(BASEDLL_CXXFLAGS) $<
 
@@ -10371,6 +10374,12 @@ $(OBJS)\baselib_textbuf.obj :  .AUTODEPEND ..\..\src\common\textbuf.cpp
 $(OBJS)\baselib_textfile.obj :  .AUTODEPEND ..\..\src\common\textfile.cpp
        $(CXX) -bt=nt -zq -fo=$^@ $(BASELIB_CXXFLAGS) $<
 
+$(OBJS)\baselib_timercmn.obj :  .AUTODEPEND ..\..\src\common\timercmn.cpp
+       $(CXX) -bt=nt -zq -fo=$^@ $(BASELIB_CXXFLAGS) $<
+
+$(OBJS)\baselib_timerimpl.obj :  .AUTODEPEND ..\..\src\common\timerimpl.cpp
+       $(CXX) -bt=nt -zq -fo=$^@ $(BASELIB_CXXFLAGS) $<
+
 $(OBJS)\baselib_tokenzr.obj :  .AUTODEPEND ..\..\src\common\tokenzr.cpp
        $(CXX) -bt=nt -zq -fo=$^@ $(BASELIB_CXXFLAGS) $<
 
@@ -10449,6 +10458,9 @@ $(OBJS)\baselib_stdpaths.obj :  .AUTODEPEND ..\..\src\msw\stdpaths.cpp
 $(OBJS)\baselib_thread.obj :  .AUTODEPEND ..\..\src\msw\thread.cpp
        $(CXX) -bt=nt -zq -fo=$^@ $(BASELIB_CXXFLAGS) $<
 
+$(OBJS)\baselib_timer.obj :  .AUTODEPEND ..\..\src\msw\timer.cpp
+       $(CXX) -bt=nt -zq -fo=$^@ $(BASELIB_CXXFLAGS) $<
+
 $(OBJS)\baselib_utils.obj :  .AUTODEPEND ..\..\src\msw\utils.cpp
        $(CXX) -bt=nt -zq -fo=$^@ $(BASELIB_CXXFLAGS) $<
 
@@ -10930,11 +10942,6 @@ $(OBJS)\coredll_settings.obj :  .AUTODEPEND ..\..\src\msw\settings.cpp
        $(CXX) -bt=nt -zq -fo=$^@ $(COREDLL_CXXFLAGS) $<
 !endif
 
-!ifeq USE_GUI 1
-$(OBJS)\coredll_timer.obj :  .AUTODEPEND ..\..\src\msw\timer.cpp
-       $(CXX) -bt=nt -zq -fo=$^@ $(COREDLL_CXXFLAGS) $<
-!endif
-
 !ifeq USE_GUI 1
 $(OBJS)\coredll_tooltip.obj :  .AUTODEPEND ..\..\src\msw\tooltip.cpp
        $(CXX) -bt=nt -zq -fo=$^@ $(COREDLL_CXXFLAGS) $<
@@ -11765,11 +11772,6 @@ $(OBJS)\coredll_textcmn.obj :  .AUTODEPEND ..\..\src\common\textcmn.cpp
        $(CXX) -bt=nt -zq -fo=$^@ $(COREDLL_CXXFLAGS) $<
 !endif
 
-!ifeq USE_GUI 1
-$(OBJS)\coredll_timercmn.obj :  .AUTODEPEND ..\..\src\common\timercmn.cpp
-       $(CXX) -bt=nt -zq -fo=$^@ $(COREDLL_CXXFLAGS) $<
-!endif
-
 !ifeq USE_GUI 1
 $(OBJS)\coredll_toplvcmn.obj :  .AUTODEPEND ..\..\src\common\toplvcmn.cpp
        $(CXX) -bt=nt -zq -fo=$^@ $(COREDLL_CXXFLAGS) $<
@@ -12330,11 +12332,6 @@ $(OBJS)\corelib_settings.obj :  .AUTODEPEND ..\..\src\msw\settings.cpp
        $(CXX) -bt=nt -zq -fo=$^@ $(CORELIB_CXXFLAGS) $<
 !endif
 
-!ifeq USE_GUI 1
-$(OBJS)\corelib_timer.obj :  .AUTODEPEND ..\..\src\msw\timer.cpp
-       $(CXX) -bt=nt -zq -fo=$^@ $(CORELIB_CXXFLAGS) $<
-!endif
-
 !ifeq USE_GUI 1
 $(OBJS)\corelib_tooltip.obj :  .AUTODEPEND ..\..\src\msw\tooltip.cpp
        $(CXX) -bt=nt -zq -fo=$^@ $(CORELIB_CXXFLAGS) $<
@@ -13165,11 +13162,6 @@ $(OBJS)\corelib_textcmn.obj :  .AUTODEPEND ..\..\src\common\textcmn.cpp
        $(CXX) -bt=nt -zq -fo=$^@ $(CORELIB_CXXFLAGS) $<
 !endif
 
-!ifeq USE_GUI 1
-$(OBJS)\corelib_timercmn.obj :  .AUTODEPEND ..\..\src\common\timercmn.cpp
-       $(CXX) -bt=nt -zq -fo=$^@ $(CORELIB_CXXFLAGS) $<
-!endif
-
 !ifeq USE_GUI 1
 $(OBJS)\corelib_toplvcmn.obj :  .AUTODEPEND ..\..\src\common\toplvcmn.cpp
        $(CXX) -bt=nt -zq -fo=$^@ $(CORELIB_CXXFLAGS) $<
index b70b75825a94f5d8dd3ec52a1e5e3eb97a63e33c..487f50b8d986d2ac25b88540e05c885de15c9c73 100644 (file)
@@ -707,6 +707,14 @@ SOURCE=..\..\src\common\textfile.cpp
 # End Source File
 # Begin Source File
 
+SOURCE=..\..\src\common\timercmn.cpp
+# End Source File
+# Begin Source File
+
+SOURCE=..\..\src\common\timerimpl.cpp
+# End Source File
+# Begin Source File
+
 SOURCE=..\..\src\common\tokenzr.cpp
 # End Source File
 # Begin Source File
@@ -827,6 +835,10 @@ SOURCE=..\..\src\msw\thread.cpp
 # End Source File
 # Begin Source File
 
+SOURCE=..\..\src\msw\timer.cpp
+# End Source File
+# Begin Source File
+
 SOURCE=..\..\src\msw\utils.cpp
 # End Source File
 # Begin Source File
index 8eaba14b6403ac6d1e48e26f6b05e35d5c0255a2..bcb28a60f4eb741eab8d79ddebcc281c0896c709 100644 (file)
@@ -814,10 +814,6 @@ SOURCE=..\..\src\common\textcmn.cpp
 # End Source File
 # Begin Source File
 
-SOURCE=..\..\src\common\timercmn.cpp
-# End Source File
-# Begin Source File
-
 SOURCE=..\..\src\common\toplvcmn.cpp
 # End Source File
 # Begin Source File
@@ -3873,10 +3869,6 @@ SOURCE=..\..\src\msw\tglbtn.cpp
 # End Source File
 # Begin Source File
 
-SOURCE=..\..\src\msw\timer.cpp
-# End Source File
-# Begin Source File
-
 SOURCE=..\..\src\msw\tooltip.cpp
 # End Source File
 # Begin Source File
@@ -8185,10 +8177,6 @@ SOURCE=..\..\include\wx\msw\tglbtn.h
 # End Source File
 # Begin Source File
 
-SOURCE=..\..\include\wx\msw\timer.h
-# End Source File
-# Begin Source File
-
 SOURCE=..\..\include\wx\msw\tooltip.h
 # End Source File
 # Begin Source File
@@ -8417,10 +8405,6 @@ SOURCE=..\..\include\wx\generic\textdlgg.h
 # End Source File
 # Begin Source File
 
-SOURCE=..\..\include\wx\generic\timer.h
-# End Source File
-# Begin Source File
-
 SOURCE=..\..\include\wx\generic\treectlg.h
 # End Source File
 # Begin Source File
index c2ad503e726caf3df087aeec8b0abe5389c10b4c..06d77247b74ae1cd4c5148d7a6faca787353c473 100644 (file)
@@ -24,6 +24,8 @@ class WXDLLIMPEXP_BASE wxLog;
 class WXDLLIMPEXP_BASE wxMessageOutput;
 class WXDLLEXPORT wxRendererNative;
 class WXDLLIMPEXP_BASE wxString;
+class WXDLLIMPEXP_BASE wxTimer;
+class WXDLLIMPEXP_BASE wxTimerImpl;
 
 class GSocketGUIFunctionsTable;
 
@@ -117,6 +119,10 @@ public:
     virtual GSocketGUIFunctionsTable* GetSocketGUIFunctionsTable() = 0;
 #endif
 
+#if wxUSE_TIMER
+    // return platform and toolkit dependent wxTimer implementation
+    virtual wxTimerImpl *CreateTimerImpl(wxTimer *timer) = 0;
+#endif
 
     // functions returning port-specific information
     // ------------------------------------------------------------------------
diff --git a/include/wx/cocoa/private/timer.h b/include/wx/cocoa/private/timer.h
new file mode 100644 (file)
index 0000000..accc239
--- /dev/null
@@ -0,0 +1,43 @@
+/////////////////////////////////////////////////////////////////////////////
+// Name:        wx/cocoa/private/timer.h
+// Purpose:     Cocoa wxTimer class
+// Author:      Ryan Norton
+// Id:          $Id$
+// Copyright:   (c) Ryan Norton
+// Licence:     wxWindows licence
+/////////////////////////////////////////////////////////////////////////////
+
+#ifndef _WX_COCOA_PRIVATE_TIMER_H_
+#define _WX_COCOA_PRIVATE_TIMER_H_
+
+#include "wx/private/timer.h"
+
+#include "wx/cocoa/ObjcRef.h"
+
+//-----------------------------------------------------------------------------
+// wxTimer
+//-----------------------------------------------------------------------------
+
+DECLARE_WXCOCOA_OBJC_CLASS(NSTimer);
+
+class WXDLLEXPORT wxCocoaTimerImpl : public wxTimerImpl
+{
+public:
+    wxCocoaTimerImpl(wxTimer* timer) : wxTimerImpl(timer) { Init(); }
+    virtual ~wxCocoaTimerImpl();
+
+    virtual bool Start(int millisecs = -1, bool oneShot = false);
+    virtual void Stop();
+
+    virtual bool IsRunning() const;
+
+    WX_NSTimer GetNSTimer() { return m_cocoaNSTimer; }
+
+protected:
+    void Init();
+
+private:
+    WX_NSTimer m_cocoaNSTimer;
+};
+
+#endif // _WX_COCOA_PRIVATE_TIMER_H_
diff --git a/include/wx/cocoa/timer.h b/include/wx/cocoa/timer.h
deleted file mode 100644 (file)
index fb1677a..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-/////////////////////////////////////////////////////////////////////////////
-// Name:        timer.h
-// Purpose:     Cocoa wxTimer class
-// Author:      Ryan Norton
-// Id:          $Id$
-// Copyright:   (c) Ryan Norton
-// Licence:     wxWindows licence
-/////////////////////////////////////////////////////////////////////////////
-
-
-#ifndef __WX_TIMER_H__
-#define __WX_TIMER_H__
-
-#include "wx/cocoa/ObjcRef.h"
-
-//-----------------------------------------------------------------------------
-// wxTimer
-//-----------------------------------------------------------------------------
-
-DECLARE_WXCOCOA_OBJC_CLASS(NSTimer);
-
-class WXDLLEXPORT wxTimer : public wxTimerBase
-{
-public:
-    wxTimer() { Init(); }
-    wxTimer(wxEvtHandler *owner, int timerid = -1) : wxTimerBase(owner, timerid)
-        { Init(); }
-    virtual ~wxTimer();
-
-    virtual bool Start(int millisecs = -1, bool oneShot = false);
-    virtual void Stop();
-
-    virtual bool IsRunning() const;
-
-    inline WX_NSTimer GetNSTimer()
-    {   return m_cocoaNSTimer; }
-
-protected:
-    void Init();
-
-private:
-    WX_NSTimer m_cocoaNSTimer;
-
-    DECLARE_ABSTRACT_CLASS(wxTimer)
-};
-
-#endif // __WX_TIMER_H__
index ae07baef49b62c4e82cd4e1161132d8c27fcc8fc..3a9feb32c64be4d48dc5430fe5e5340acfa6fdea 100644 (file)
@@ -157,7 +157,7 @@ BEGIN_DECLARE_EVENT_TYPES()
 
         // Sockets and timers send events, too
     DECLARE_EXPORTED_EVENT_TYPE(WXDLLIMPEXP_BASE, wxEVT_SOCKET, 50)
-    DECLARE_EVENT_TYPE(wxEVT_TIMER , 80)
+    DECLARE_EXPORTED_EVENT_TYPE(WXDLLIMPEXP_BASE, wxEVT_TIMER , 80)
 
         // Mouse event types
     DECLARE_EVENT_TYPE(wxEVT_LEFT_DOWN, 100)
diff --git a/include/wx/generic/private/timer.h b/include/wx/generic/private/timer.h
new file mode 100644 (file)
index 0000000..9db8f41
--- /dev/null
@@ -0,0 +1,43 @@
+/////////////////////////////////////////////////////////////////////////////
+// Name:        wx/generic/private/timer.h
+// Purpose:     Generic implementation of wxTimer class
+// Author:      Vaclav Slavik
+// Id:          $Id$
+// Copyright:   (c) Vaclav Slavik
+// Licence:     wxWindows licence
+/////////////////////////////////////////////////////////////////////////////
+
+
+#ifndef _WX_GENERIC_PRIVATE_TIMER_H_
+#define _WX_GENERIC_PRIVATE_TIMER_H_
+
+#include "wx/private/timer.h"
+
+//-----------------------------------------------------------------------------
+// wxTimer
+//-----------------------------------------------------------------------------
+
+class wxTimerDesc;
+
+class WXDLLEXPORT wxGenericTimerImpl : public wxTimerImpl
+{
+public:
+    wxGenericTimerImpl(wxTimer* timer) : wxTimerImpl(timer) { Init(); }
+    virtual ~wxGenericTimerImpl();
+
+    virtual bool Start(int millisecs = -1, bool oneShot = false);
+    virtual void Stop();
+
+    virtual bool IsRunning() const;
+
+    // implementation
+    static void NotifyTimers();
+
+protected:
+    void Init();
+
+private:
+    wxTimerDesc *m_desc;
+};
+
+#endif // _WX_GENERIC_PRIVATE_TIMER_H_
diff --git a/include/wx/generic/timer.h b/include/wx/generic/timer.h
deleted file mode 100644 (file)
index 63f0ab1..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-/////////////////////////////////////////////////////////////////////////////
-// Name:        timer.h
-// Purpose:     Generic implementation of wxTimer class
-// Author:      Vaclav Slavik
-// Id:          $Id$
-// Copyright:   (c) Vaclav Slavik
-// Licence:     wxWindows licence
-/////////////////////////////////////////////////////////////////////////////
-
-
-#ifndef __WX_TIMER_H__
-#define __WX_TIMER_H__
-
-//-----------------------------------------------------------------------------
-// wxTimer
-//-----------------------------------------------------------------------------
-
-class wxTimerDesc;
-
-class WXDLLEXPORT wxTimer : public wxTimerBase
-{
-public:
-    wxTimer() { Init(); }
-    wxTimer(wxEvtHandler *owner, int timerid = -1) : wxTimerBase(owner, timerid)
-        { Init(); }
-    virtual ~wxTimer();
-
-    virtual bool Start(int millisecs = -1, bool oneShot = false);
-    virtual void Stop();
-
-    virtual bool IsRunning() const;
-
-    // implementation
-    static void NotifyTimers();
-
-protected:
-    void Init();
-
-private:
-    wxTimerDesc *m_desc;
-
-    DECLARE_ABSTRACT_CLASS(wxTimer)
-};
-
-#endif // __WX_TIMER_H__
diff --git a/include/wx/gtk/private/timer.h b/include/wx/gtk/private/timer.h
new file mode 100644 (file)
index 0000000..2753541
--- /dev/null
@@ -0,0 +1,32 @@
+/////////////////////////////////////////////////////////////////////////////
+// Name:        wx/private/gtk/timer.h
+// Purpose:     wxTimerImpl for wxGTK
+// Author:      Robert Roebling
+// Id:          $Id$
+// Copyright:   (c) 1998 Robert Roebling
+// Licence:     wxWindows licence
+/////////////////////////////////////////////////////////////////////////////
+
+#ifndef _WX_GTK_PRIVATE_TIMER_H_
+#define _WX_GTK_PRIVATE_TIMER_H_
+
+#include "wx/private/timer.h"
+
+//-----------------------------------------------------------------------------
+// wxTimer
+//-----------------------------------------------------------------------------
+
+class WXDLLIMPEXP_CORE wxGTKTimerImpl : public wxTimerImpl
+{
+public:
+    wxGTKTimerImpl(wxTimer* timer) : wxTimerImpl(timer) { m_sourceId = 0; };
+
+    virtual bool Start( int millisecs = -1, bool oneShot = false );
+    virtual void Stop();
+    virtual bool IsRunning() const { return m_sourceId != 0; }
+
+protected:
+    int m_sourceId;
+};
+
+#endif // _WX_GTK_PRIVATE_TIMER_H_
diff --git a/include/wx/gtk/timer.h b/include/wx/gtk/timer.h
deleted file mode 100644 (file)
index cb1d10e..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-/////////////////////////////////////////////////////////////////////////////
-// Name:        wx/gtk/timer.h
-// Purpose:
-// Author:      Robert Roebling
-// Id:          $Id$
-// Copyright:   (c) 1998 Robert Roebling
-// Licence:     wxWindows licence
-/////////////////////////////////////////////////////////////////////////////
-
-#ifndef _WX_GTK_TIMER_H_
-#define _WX_GTK_TIMER_H_
-
-//-----------------------------------------------------------------------------
-// wxTimer
-//-----------------------------------------------------------------------------
-
-class WXDLLIMPEXP_CORE wxTimer : public wxTimerBase
-{
-public:
-    wxTimer() { Init(); }
-    wxTimer(wxEvtHandler *owner, int id = -1) : wxTimerBase(owner, id)
-        { Init(); }
-    virtual ~wxTimer();
-
-    virtual bool Start(int millisecs = -1, bool oneShot = false);
-    virtual void Stop();
-
-    virtual bool IsRunning() const { return m_sourceId != 0; }
-
-private:
-    void Init();
-
-    unsigned m_sourceId;
-
-    DECLARE_ABSTRACT_CLASS(wxTimer)
-};
-
-#endif // _WX_GTK_TIMER_H_
diff --git a/include/wx/gtk1/private/timer.h b/include/wx/gtk1/private/timer.h
new file mode 100644 (file)
index 0000000..6c76a42
--- /dev/null
@@ -0,0 +1,34 @@
+/////////////////////////////////////////////////////////////////////////////
+// Name:        wx/gtk1/private/timer.h
+// Purpose:     wxTimerImpl for wxGTK
+// Author:      Robert Roebling
+// Id:          $Id$
+// Copyright:   (c) 1998 Robert Roebling
+// Licence:     wxWindows licence
+/////////////////////////////////////////////////////////////////////////////
+
+#ifndef _WX_GTK1_PRIVATE_TIMER_H_
+#define _WX_GTK1_PRIVATE_TIMER_H_
+
+#include "wx/private/timer.h"
+
+//-----------------------------------------------------------------------------
+// wxTimer
+//-----------------------------------------------------------------------------
+
+class WXDLLIMPEXP_CORE wxGTKTimerImpl : public wxTimerImpl
+{
+public:
+    wxGTKTimerImpl(wxTimer *timer) : wxTimerImpl(timer) { m_tag = -1; }
+
+    virtual bool Start(int millisecs = -1, bool oneShot = FALSE);
+    virtual void Stop();
+
+    virtual bool IsRunning() const { return m_tag != -1; }
+
+private:
+    // registered timeout id, -1 if the timer isn't running
+    int m_tag;
+};
+
+#endif // _WX_GTK1_PRIVATE_TIMER_H_
diff --git a/include/wx/gtk1/timer.h b/include/wx/gtk1/timer.h
deleted file mode 100644 (file)
index 1f78b5d..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-/////////////////////////////////////////////////////////////////////////////
-// Name:        wx/gtk1/timer.h
-// Purpose:
-// Author:      Robert Roebling
-// Id:          $Id$
-// Copyright:   (c) 1998 Robert Roebling
-// Licence:     wxWindows licence
-/////////////////////////////////////////////////////////////////////////////
-
-#ifndef __GTKTIMERH__
-#define __GTKTIMERH__
-
-//-----------------------------------------------------------------------------
-// wxTimer
-//-----------------------------------------------------------------------------
-
-class WXDLLIMPEXP_CORE wxTimer : public wxTimerBase
-{
-public:
-    wxTimer() { Init(); }
-    wxTimer(wxEvtHandler *owner, int id = -1) : wxTimerBase(owner, id)
-        { Init(); }
-    virtual ~wxTimer();
-
-    virtual bool Start( int millisecs = -1, bool oneShot = FALSE );
-    virtual void Stop();
-
-    virtual bool IsRunning() const { return m_tag != -1; }
-
-protected:
-    void Init();
-
-    int  m_tag;
-
-private:
-    DECLARE_ABSTRACT_CLASS(wxTimer)
-};
-
-#endif // __GTKTIMERH__
index a2b4ed00c0e0f9e09c9fc2d825177198b9e72d60..1b4d2ee9ef3fe0ac4b24da10d253f0049a1971d8 100644 (file)
 class WXDLLEXPORT wxConsoleAppTraits : public wxConsoleAppTraitsBase
 {
 public:
+    // no timer support in wxBase yet
+#if wxUSE_TIMER
+    virtual wxTimerImpl *CreateTimerImpl(wxTimer *timer) { return NULL; };
+#endif
     // other miscellaneous helpers
     // ---------------------------
 
@@ -30,6 +34,9 @@ public:
 class WXDLLEXPORT wxGUIAppTraits : public wxGUIAppTraitsBase
 {
 public:
+#if wxUSE_TIMER
+    virtual wxTimerImpl *CreateTimerImpl(wxTimer *timer);
+#endif
     // other miscellaneous helpers
     // ---------------------------
 
diff --git a/include/wx/mac/carbon/private/timer.h b/include/wx/mac/carbon/private/timer.h
new file mode 100644 (file)
index 0000000..8d643fe
--- /dev/null
@@ -0,0 +1,34 @@
+/////////////////////////////////////////////////////////////////////////////
+// Name:        wx/mac/carbon/private/timer.h
+// Purpose:     wxTimer class
+// Author:      Stefan Csomor
+// Created:     1998-01-01
+// RCS-ID:      $Id$
+// Copyright:   (c) Stefan Csomor
+// Licence:     wxWindows licence
+/////////////////////////////////////////////////////////////////////////////
+
+#ifndef _WX_MAC_PRIVATE_TIMER_H_
+#define _WX_MAC_PRIVATE_TIMER_H_
+
+#include "wx/mac/macnotfy.h"
+#include "wx/private/timer.h"
+
+struct MacTimerInfo;
+
+class WXDLLEXPORT wxCarbonTimerImpl : public wxTimerImpl
+{
+public:
+    wxCarbonTimerImpl(wxTimer *timer);
+    virtual ~wxCarbonTimerImpl();
+
+    virtual bool Start(int milliseconds = -1, bool one_shot = false);
+    virtual void Stop();
+
+    virtual bool IsRunning() const;
+
+private:
+    MacTimerInfo *m_info;
+};
+
+#endif // _WX_MAC_PRIVATE_TIMER_H_
diff --git a/include/wx/mac/carbon/timer.h b/include/wx/mac/carbon/timer.h
deleted file mode 100644 (file)
index f9a5d79..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-/////////////////////////////////////////////////////////////////////////////
-// Name:        timer.h
-// Purpose:     wxTimer class
-// Author:      Stefan Csomor
-// Modified by:
-// Created:     1998-01-01
-// RCS-ID:      $Id$
-// Copyright:   (c) Stefan Csomor
-// Licence:     wxWindows licence
-/////////////////////////////////////////////////////////////////////////////
-
-#ifndef _WX_TIMER_H_
-#define _WX_TIMER_H_
-
-#include "wx/object.h"
-#include "wx/mac/macnotfy.h"
-
-class wxTimer ;
-
-struct MacTimerInfo ;
-
-class WXDLLEXPORT wxTimer: public wxTimerBase
-{
-public:
-    wxTimer() { Init(); }
-    wxTimer(wxEvtHandler *owner, int id = -1) : wxTimerBase(owner, id) { Init(); }
-    virtual ~wxTimer();
-
-    virtual bool Start(int milliseconds = -1,
-                       bool one_shot = FALSE); // Start timer
-    virtual void Stop();                       // Stop timer
-
-    virtual bool IsRunning() const ;
-
-    MacTimerInfo* m_info;
-protected :
-    void Init();
-private:
-
-    DECLARE_ABSTRACT_CLASS(wxTimer)
-};
-
-#endif
-    // _WX_TIMER_H_
diff --git a/include/wx/mac/private/timer.h b/include/wx/mac/private/timer.h
new file mode 100644 (file)
index 0000000..4532e42
--- /dev/null
@@ -0,0 +1,5 @@
+#ifdef __WXMAC_CLASSIC__
+#include "wx/mac/classic/private/timer.h"
+#else
+#include "wx/mac/carbon/private/timer.h"
+#endif
diff --git a/include/wx/mac/timer.h b/include/wx/mac/timer.h
deleted file mode 100644 (file)
index 7ffc64c..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-#ifdef __WXMAC_CLASSIC__
-#include "wx/mac/classic/timer.h"
-#else
-#include "wx/mac/carbon/timer.h"
-#endif
diff --git a/include/wx/motif/private/timer.h b/include/wx/motif/private/timer.h
new file mode 100644 (file)
index 0000000..b717a32
--- /dev/null
@@ -0,0 +1,37 @@
+/////////////////////////////////////////////////////////////////////////////
+// Name:        wx/motif/private/timer.h
+// Purpose:     wxTimer class
+// Author:      Julian Smart
+// Created:     17/09/98
+// RCS-ID:      $Id$
+// Copyright:   (c) Julian Smart
+// Licence:     wxWindows licence
+/////////////////////////////////////////////////////////////////////////////
+
+#ifndef _WX_MOTIF_PRIVATE_TIMER_H_
+#define _WX_MOTIF_PRIVATE_TIMER_H_
+
+#include "wx/private/timer.h"
+
+class WXDLLEXPORT wxMotifTimerImpl : public wxTimerImpl
+{
+public:
+    wxMotifTimerImpl(wxTimer* timer) : wxTimerImpl(timer) { m_id = 0; }
+    virtual ~wxMotifTimerImpl();
+
+    virtual bool Start(int milliseconds = -1, bool oneShot = false);
+    virtual void Stop();
+    virtual bool IsRunning() const { return m_id != 0; }
+
+    // override this to rearm the timer if necessary (i.e. if not one shot) as
+    // X timeouts are removed automatically when they expire
+    virtual void Notify();
+
+protected:
+    // common part of Start() and Notify()
+    void DoStart();
+
+    long m_id;
+};
+
+#endif // _WX_MOTIF_PRIVATE_TIMER_H_
diff --git a/include/wx/motif/timer.h b/include/wx/motif/timer.h
deleted file mode 100644 (file)
index add4635..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-/////////////////////////////////////////////////////////////////////////////
-// Name:        wx/motif/timer.h
-// Purpose:     wxTimer class
-// Author:      Julian Smart
-// Modified by:
-// Created:     17/09/98
-// RCS-ID:      $Id$
-// Copyright:   (c) Julian Smart
-// Licence:     wxWindows licence
-/////////////////////////////////////////////////////////////////////////////
-
-#ifndef _WX_TIMER_H_
-#define _WX_TIMER_H_
-
-class WXDLLEXPORT wxTimer : public wxTimerBase
-{
-    friend void wxTimerCallback(wxTimer * timer);
-
-public:
-    wxTimer() { Init(); }
-    wxTimer(wxEvtHandler *owner, int id = -1) : wxTimerBase(owner, id)
-    { Init(); }
-    virtual ~wxTimer();
-
-    virtual bool Start(int milliseconds = -1, bool oneShot = false);
-    virtual void Stop();
-
-    virtual bool IsRunning() const { return m_id != 0; }
-
-protected:
-    void Init();
-
-    long m_id;
-
-private:
-    DECLARE_DYNAMIC_CLASS(wxTimer)
-};
-
-#endif
-// _WX_TIMER_H_
index 7b7971a57876c45def4ab2179669067c67876470..d4d89c0141b1f31ec4e0776685d7ee66d42fe19b 100644 (file)
@@ -22,7 +22,9 @@ public:
     virtual void *BeforeChildWaitLoop();
     virtual void AlwaysYield();
     virtual void AfterChildWaitLoop(void *data);
-
+#if wxUSE_TIMER
+    virtual wxTimerImpl *CreateTimerImpl(wxTimer *timer);
+#endif
     virtual bool DoMessageFromThreadWait();
     virtual WXDWORD WaitForThread(WXHANDLE hThread);
 };
@@ -35,7 +37,9 @@ public:
     virtual void *BeforeChildWaitLoop();
     virtual void AlwaysYield();
     virtual void AfterChildWaitLoop(void *data);
-
+#if wxUSE_TIMER
+    virtual wxTimerImpl *CreateTimerImpl(wxTimer *timer);
+#endif
     virtual bool DoMessageFromThreadWait();
     virtual wxPortId GetToolkitVersion(int *majVer, int *minVer) const;
     virtual WXDWORD WaitForThread(WXHANDLE hThread);
diff --git a/include/wx/msw/private/timer.h b/include/wx/msw/private/timer.h
new file mode 100644 (file)
index 0000000..07139ee
--- /dev/null
@@ -0,0 +1,30 @@
+/////////////////////////////////////////////////////////////////////////////
+// Name:        wx/msw/private/timer.h
+// Purpose:     wxTimer class
+// Author:      Julian Smart
+// Created:     01/02/97
+// RCS-ID:      $Id$
+// Copyright:   (c) Julian Smart
+// Licence:     wxWindows licence
+/////////////////////////////////////////////////////////////////////////////
+
+#ifndef _WX_MSW_PRIVATE_TIMER_H_
+#define _WX_MSW_PRIVATE_TIMER_H_
+
+#include "wx/private/timer.h"
+
+class WXDLLIMPEXP_BASE wxMSWTimerImpl : public wxTimerImpl
+{
+public:
+    wxMSWTimerImpl(wxTimer *timer) : wxTimerImpl(timer) { m_id = 0; }
+
+    virtual bool Start(int milliseconds = -1, bool oneShot = false);
+    virtual void Stop();
+
+    virtual bool IsRunning() const { return m_id != 0; }
+
+protected:
+    unsigned long m_id;
+};
+
+#endif // _WX_TIMERH_
diff --git a/include/wx/msw/timer.h b/include/wx/msw/timer.h
deleted file mode 100644 (file)
index ad80f50..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-/////////////////////////////////////////////////////////////////////////////
-// Name:        timer.h
-// Purpose:     wxTimer class
-// Author:      Julian Smart
-// Modified by:
-// Created:     01/02/97
-// RCS-ID:      $Id$
-// Copyright:   (c) Julian Smart
-// Licence:     wxWindows licence
-/////////////////////////////////////////////////////////////////////////////
-
-#ifndef _WX_TIMER_H_
-#define _WX_TIMER_H_
-
-class WXDLLEXPORT wxTimer : public wxTimerBase
-{
-friend void wxProcessTimer(wxTimer& timer);
-
-public:
-    wxTimer() { Init(); }
-    wxTimer(wxEvtHandler *owner, int id = wxID_ANY) : wxTimerBase(owner, id)
-        { Init(); }
-    virtual ~wxTimer();
-
-    virtual bool Start(int milliseconds = -1, bool oneShot = false);
-    virtual void Stop();
-
-    virtual bool IsRunning() const { return m_id != 0; }
-
-protected:
-    void Init();
-
-    unsigned long m_id;
-
-private:
-    DECLARE_DYNAMIC_CLASS_NO_COPY(wxTimer)
-};
-
-#endif
-    // _WX_TIMERH_
index 3b8168570c9e371224f7510e67b02287ee041454..3c172f2087474888dc30b591827fcdf0559cda1b 100644 (file)
@@ -19,6 +19,9 @@
 class WXDLLIMPEXP_BASE wxConsoleAppTraits : public wxConsoleAppTraitsBase
 {
 public:
+#if wxUSE_TIMER
+    virtual wxTimerImpl *CreateTimerImpl(wxTimer *timer) { return NULL; };
+#endif
 };
 
 #if wxUSE_GUI
@@ -26,6 +29,9 @@ public:
 class WXDLLIMPEXP_CORE wxGUIAppTraits : public wxGUIAppTraitsBase
 {
 public:
+#if wxUSE_TIMER
+    virtual wxTimerImpl *CreateTimerImpl(wxTimer *timer);
+#endif
     virtual wxPortId GetToolkitVersion(int *majVer, int *minVer) const;
 
     // wxThread helpers
diff --git a/include/wx/os2/private/timer.h b/include/wx/os2/private/timer.h
new file mode 100644 (file)
index 0000000..fc231d2
--- /dev/null
@@ -0,0 +1,47 @@
+/////////////////////////////////////////////////////////////////////////////
+// Name:        wx/os2/private/timer.h
+// Purpose:     wxTimer class
+// Author:      David Webster
+// Modified by:
+// Created:     10/17/99
+// RCS-ID:      $Id$
+// Copyright:   (c) David Webster
+// Licence:     wxWindows licence
+/////////////////////////////////////////////////////////////////////////////
+
+#ifndef _WX_TIMER_H_
+#define _WX_TIMER_H_
+
+#include "wx/private/timerimpl.h"
+
+class WXDLLEXPORT wxOS2TimerImpl: public wxTimerImpl
+{
+friend void wxProcessTimer(wxOS2TimerImpl& timer);
+
+public:
+    wxOS2TimerImpl(wxTimer *timer) : wxTimerImpl(timer) { Init(); }
+    virtual ~wxOS2TimerImpl();
+
+    virtual void Notify(void);
+    virtual bool Start( int  nMilliseconds = -1
+                       ,bool bOneShot = FALSE
+                      );
+    virtual void Stop(void);
+
+    inline virtual bool IsRunning(void) const { return m_ulId != 0L; }
+    inline          int GetTimerId(void) const { return m_idTimer; }
+
+protected:
+    void Init(void);
+
+    ULONG                            m_ulId;
+    HAB                              m_Hab;
+};
+
+extern ULONG wxTimerProc( HWND  WXUNUSED(hwnd)
+                         ,ULONG
+                         ,int   nIdTimer
+                         ,ULONG
+                        );
+#endif
+    // _WX_TIMER_H_
diff --git a/include/wx/os2/timer.h b/include/wx/os2/timer.h
deleted file mode 100644 (file)
index fb7bddc..0000000
+++ /dev/null
@@ -1,57 +0,0 @@
-/////////////////////////////////////////////////////////////////////////////
-// Name:        timer.h
-// Purpose:     wxTimer class
-// Author:      David Webster
-// Modified by:
-// Created:     10/17/99
-// RCS-ID:      $Id$
-// Copyright:   (c) David Webster
-// Licence:     wxWindows licence
-/////////////////////////////////////////////////////////////////////////////
-
-#ifndef _WX_TIMER_H_
-#define _WX_TIMER_H_
-
-#include "wx/object.h"
-
-class WXDLLEXPORT wxTimer: public wxTimerBase
-{
-friend void wxProcessTimer(wxTimer& timer);
-
-public:
-    wxTimer() { Init(); }
-    wxTimer( wxEvtHandler* pOwner
-            ,int           nId = -1
-           )
-           : wxTimerBase( pOwner
-                         ,nId
-                        )
-        { Init(); }
-    virtual ~wxTimer();
-
-    virtual void Notify(void);
-    virtual bool Start( int  nMilliseconds = -1
-                       ,bool bOneShot = FALSE
-                      );
-    virtual void Stop(void);
-
-    inline virtual bool IsRunning(void) const { return m_ulId != 0L; }
-    inline          int GetTimerId(void) const { return m_idTimer; }
-
-protected:
-    void Init(void);
-
-    ULONG                            m_ulId;
-    HAB                              m_Hab;
-
-private:
-    DECLARE_ABSTRACT_CLASS(wxTimer)
-};
-
-extern ULONG wxTimerProc( HWND  WXUNUSED(hwnd)
-                         ,ULONG
-                         ,int   nIdTimer
-                         ,ULONG
-                        );
-#endif
-    // _WX_TIMER_H_
index cfe8fde4f93510b0e0722047aed5de87a536be64..af90da7225f63fda43eca8597daff38e93fba446 100644 (file)
@@ -22,7 +22,9 @@ public:
     virtual void *BeforeChildWaitLoop();
     virtual void AlwaysYield();
     virtual void AfterChildWaitLoop(void *data);
-
+#if wxUSE_TIMER
+    virtual wxTimerImpl *CreateTimerImpl(wxTimer *timer) { return NULL; };
+#endif
     virtual bool DoMessageFromThreadWait();
 };
 
@@ -34,7 +36,10 @@ public:
     virtual void *BeforeChildWaitLoop();
     virtual void AlwaysYield();
     virtual void AfterChildWaitLoop(void *data);
-
+#if wxUSE_TIMER
+    // there is no wxTimer support yet
+    virtual wxTimerImpl *CreateTimerImpl(wxTimer *timer);
+#endif
     virtual bool DoMessageFromThreadWait();
     virtual wxPortId GetToolkitVersion(int *majVer, int *minVer) const;
 };
diff --git a/include/wx/palmos/private/timer.h b/include/wx/palmos/private/timer.h
new file mode 100644 (file)
index 0000000..d6e73ac
--- /dev/null
@@ -0,0 +1,37 @@
+/////////////////////////////////////////////////////////////////////////////
+// Name:        wx/palmos/private/timer.h
+// Purpose:     wxTimer class
+// Author:      William Osborne - minimal working wxPalmOS port
+// Modified by:
+// Created:     10/13/04
+// RCS-ID:      $Id$
+// Copyright:   (c) William Osborne
+// Licence:     wxWindows licence
+/////////////////////////////////////////////////////////////////////////////
+
+#ifndef _WX_TIMER_H_
+#define _WX_TIMER_H_
+
+#include "wx/private/timerimpl.h"
+
+class WXDLLEXPORT wxPalmOSTimerImpl : public wxTimerImpl
+{
+friend void wxProcessTimer(wxTimer& timer);
+
+public:
+    wxPalmOSTimerImpl(wxTimer* timer) : wxTimerImpl(timer) { Init(); }
+    virtual ~wxPalmOSTimerImpl();
+
+    virtual bool Start(int milliseconds = -1, bool oneShot = FALSE);
+    virtual void Stop();
+
+    virtual bool IsRunning() const { return m_id != 0; }
+
+protected:
+    void Init();
+
+    unsigned long m_id;
+};
+
+#endif
+    // _WX_TIMERH_
diff --git a/include/wx/private/timer.h b/include/wx/private/timer.h
new file mode 100644 (file)
index 0000000..c33a2a8
--- /dev/null
@@ -0,0 +1,73 @@
+/////////////////////////////////////////////////////////////////////////////
+// Name:        wx/private/timerimpl.h
+// Purpose:     Base class for wxTimer implementations
+// Author:      Lukasz Michalski <lmichalski@sf.net>
+// Created:     31.10.2006
+// RCS-ID:      $Id$
+// Copyright:   (c) 2006-2007 wxWidgets dev team
+// Licence:     wxWindows licence
+/////////////////////////////////////////////////////////////////////////////
+
+#ifndef _WX_TIMERIMPL_H_BASE_
+#define _WX_TIMERIMPL_H_BASE_
+
+#include "wx/defs.h"
+#include "wx/event.h"
+#include "wx/timer.h"
+
+// ----------------------------------------------------------------------------
+// wxTimerImpl: abstract base class for wxTimer implementations
+// ----------------------------------------------------------------------------
+
+class WXDLLIMPEXP_BASE wxTimerImpl
+{
+public:
+    // default ctor, SetOwner() must be called after it (wxTimer does it)
+    wxTimerImpl(wxTimer *owner);
+
+    // this must be called initially but may be also called later
+    void SetOwner(wxEvtHandler *owner, int timerid);
+
+    // empty but virtual base class dtor, the caller is responsible for
+    // stopping the timer before it's destroyed (it can't be done from here as
+    // it's too late)
+    virtual ~wxTimerImpl() { }
+
+
+    // start the timer. When overriding call base version first.
+    virtual bool Start(int milliseconds = -1, bool oneShot = false);
+
+    // stop the timer, only called if the timer is really running (unlike
+    // wxTimer::Stop())
+    virtual void Stop() = 0;
+
+    // return true if the timer is running
+    virtual bool IsRunning() const = 0;
+
+    // this should be called by the port-specific code when the timer expires
+    virtual void Notify() { m_timer->Notify(); }
+
+    // the default implementation of wxTimer::Notify(): generate a wxEVT_TIMER
+    void SendEvent();
+
+
+    // accessors for wxTimer:
+    wxEvtHandler *GetOwner() const { return m_owner; }
+    int GetId() const { return m_idTimer; }
+    int GetInterval() const { return m_milli; }
+    bool IsOneShot() const { return m_oneShot; }
+
+protected:
+    wxTimer *m_timer;
+
+    wxEvtHandler *m_owner;
+
+    int     m_idTimer;      // id passed to wxTimerEvent
+    int     m_milli;        // the timer interval
+    bool    m_oneShot;      // true if one shot
+
+
+    DECLARE_NO_COPY_CLASS(wxTimerImpl);
+};
+
+#endif // _WX_TIMERIMPL_H_BASE_
index c79633c6c039c06d3bc353c0d964edcc83de1119..1a5d5d70f8c1cf658b737784be2744ac67f17f84 100644 (file)
 
 #include "wx/defs.h"
 
-#if wxUSE_GUI && wxUSE_TIMER
+#if wxUSE_TIMER
 
 #include "wx/object.h"
 #include "wx/longlong.h"
 #include "wx/event.h"
 #include "wx/stopwatch.h" // for backwards compatibility
-#include "wx/window.h"    // only for NewControlId()
+#include "wx/utils.h"
 
 
 // more readable flags for Start():
 // only send the notification once and then stop the timer
 #define wxTIMER_ONE_SHOT true
 
+class WXDLLIMPEXP_BASE wxTimerImpl;
+
 // the interface of wxTimer class
-class WXDLLEXPORT wxTimerBase : public wxEvtHandler
+class WXDLLIMPEXP_BASE wxTimer : public wxEvtHandler
 {
 public:
     // ctors and initializers
@@ -41,29 +43,33 @@ public:
 
     // default: if you don't call SetOwner(), your only chance to get timer
     // notifications is to override Notify() in the derived class
-    wxTimerBase()
-        { Init(); SetOwner(this); }
+    wxTimer()
+    {
+        Init();
+        SetOwner(this);
+    }
 
     // ctor which allows to avoid having to override Notify() in the derived
     // class: the owner will get timer notifications which can be handled with
     // EVT_TIMER
-    wxTimerBase(wxEvtHandler *owner, int timerid = wxID_ANY)
-        { Init(); SetOwner(owner, timerid); }
-
-    // same as ctor above
-    void SetOwner(wxEvtHandler *owner, int timerid = wxID_ANY)
+    wxTimer(wxEvtHandler *owner, int timerid = wxID_ANY)
     {
-        m_owner = owner;
-        m_idTimer = timerid == wxID_ANY ? wxWindow::NewControlId() : timerid;
+        Init();
+        SetOwner(owner, timerid);
     }
 
-    wxEvtHandler *GetOwner() const { return m_owner; }
+    // same as ctor above
+    void SetOwner(wxEvtHandler *owner, int timerid = wxID_ANY);
+
+    virtual ~wxTimer();
 
-    virtual ~wxTimerBase();
 
     // working with the timer
     // ----------------------
 
+    // NB: Start() and Stop() are not supposed to be overridden, they are only
+    //     virtual for historical reasons, only Notify() can be overridden
+
     // start the timer: if milliseconds == -1, use the same value as for the
     // last Start()
     //
@@ -71,63 +77,41 @@ public:
     // timer if it is already running
     virtual bool Start(int milliseconds = -1, bool oneShot = false);
 
-    // stop the timer
-    virtual void Stop() = 0;
+    // stop the timer, does nothing if the timer is not running
+    virtual void Stop();
 
     // override this in your wxTimer-derived class if you want to process timer
     // messages in it, use non default ctor or SetOwner() otherwise
     virtual void Notify();
 
-    // getting info
-    // ------------
+
+    // accessors
+    // ---------
+
+    // get the object notified about the timer events
+    wxEvtHandler *GetOwner() const;
 
     // return true if the timer is running
-    virtual bool IsRunning() const = 0;
+    bool IsRunning() const;
 
     // return the timer ID
-    int GetId() const { return m_idTimer; }
+    int GetId() const;
 
     // get the (last) timer interval in milliseconds
-    int GetInterval() const { return m_milli; }
+    int GetInterval() const;
 
     // return true if the timer is one shot
-    bool IsOneShot() const { return m_oneShot; }
+    bool IsOneShot() const;
 
 protected:
     // common part of all ctors
-    void Init()
-        { m_owner = NULL; m_idTimer = wxID_ANY; m_milli = 0; m_oneShot = false; }
+    void Init();
 
-    wxEvtHandler *m_owner;
-    int     m_idTimer;
-    int     m_milli;        // the timer interval
-    bool    m_oneShot;      // true if one shot
+    wxTimerImpl *m_impl;
 
-    DECLARE_NO_COPY_CLASS(wxTimerBase)
+    DECLARE_NO_COPY_CLASS(wxTimer)
 };
 
-// ----------------------------------------------------------------------------
-// wxTimer itself
-// ----------------------------------------------------------------------------
-
-#if defined(__WXMSW__)
-    #include "wx/msw/timer.h"
-#elif defined(__WXMOTIF__)
-    #include "wx/motif/timer.h"
-#elif defined(__WXGTK20__)
-    #include "wx/gtk/timer.h"
-#elif defined(__WXGTK__)
-    #include "wx/gtk1/timer.h"
-#elif defined(__WXX11__) || defined(__WXMGL__) || defined(__WXDFB__)
-    #include "wx/generic/timer.h"
-#elif defined (__WXCOCOA__)
-    #include "wx/cocoa/timer.h"
-#elif defined(__WXMAC__)
-    #include "wx/mac/timer.h"
-#elif defined(__WXPM__)
-    #include "wx/os2/timer.h"
-#endif
-
 // ----------------------------------------------------------------------------
 // wxTimerRunner: starts the timer in its ctor, stops in the dtor
 // ----------------------------------------------------------------------------
@@ -195,7 +179,6 @@ typedef void (wxEvtHandler::*wxTimerEventFunction)(wxTimerEvent&);
 #define EVT_TIMER(timerid, func) \
     wx__DECLARE_EVT1(wxEVT_TIMER, timerid, wxTimerEventHandler(func))
 
-#endif // wxUSE_GUI && wxUSE_TIMER
+#endif // wxUSE_TIMER
 
-#endif
-    // _WX_TIMER_H_BASE_
+#endif // _WX_TIMER_H_BASE_
index 4a59ace1f6776ed16dea45d9b83ebbfa8c3abb9c..e4495aa2f61b8e60d2f1b8457fef7399a907317c 100644 (file)
@@ -23,6 +23,9 @@ public:
     virtual bool IsWriteFDOfEndProcessPipe(wxExecuteData& execData, int fd);
     virtual void DetachWriteFDOfEndProcessPipe(wxExecuteData& execData);
     virtual int WaitForChild(wxExecuteData& execData);
+#if wxUSE_TIMER
+    virtual wxTimerImpl *CreateTimerImpl(wxTimer *timer);
+#endif
 };
 
 #if wxUSE_GUI
@@ -34,6 +37,9 @@ public:
     virtual bool IsWriteFDOfEndProcessPipe(wxExecuteData& execData, int fd);
     virtual void DetachWriteFDOfEndProcessPipe(wxExecuteData& execData);
     virtual int WaitForChild(wxExecuteData& execData);
+#if wxUSE_TIMER
+    virtual wxTimerImpl *CreateTimerImpl(wxTimer *timer);
+#endif
 
 #if defined(__WXMAC__) || defined(__WXCOCOA__)
     virtual wxStandardPathsBase& GetStandardPaths();
diff --git a/include/wx/unix/private/timer.h b/include/wx/unix/private/timer.h
new file mode 100644 (file)
index 0000000..cdcf53b
--- /dev/null
@@ -0,0 +1,131 @@
+/////////////////////////////////////////////////////////////////////////////
+// Name:        wx/unix/private/timer.h
+// Purpose:     wxTimer for wxBase (unix)
+// Author:      Lukasz Michalski
+// Created:     15/01/2005
+// RCS-ID:      $Id$
+// Copyright:   (c) Lukasz Michalski
+// Licence:     wxWindows licence
+/////////////////////////////////////////////////////////////////////////////
+
+#ifndef _WX_UNIX_PRIVATE_TIMER_H_
+#define _WX_UNIX_PRIVATE_TIMER_H_
+
+#include "wx/private/timer.h"
+
+// the type used for milliseconds is large enough for microseconds too but
+// introduce a synonym for it to avoid confusion
+typedef wxMilliClock_t wxUsecClock_t;
+
+// ----------------------------------------------------------------------------
+// wxTimer implementation class for Unix platforms
+// ----------------------------------------------------------------------------
+
+class wxUnixTimerImpl : public wxTimerImpl
+{
+public:
+    wxUnixTimerImpl(wxTimer *timer);
+    virtual ~wxUnixTimerImpl();
+
+    virtual bool IsRunning() const;
+    virtual bool Start(int milliseconds = -1, bool oneShot = false);
+    virtual void Stop();
+
+private:
+    bool m_isRunning;
+
+    friend class wxTimerScheduler;
+};
+
+// ----------------------------------------------------------------------------
+// wxTimerSchedule: information about a single timer, used by wxTimerScheduler
+// ----------------------------------------------------------------------------
+
+struct wxTimerSchedule
+{
+    wxTimerSchedule(wxUnixTimerImpl *timer, wxUsecClock_t expiration)
+        : m_timer(timer),
+          m_expiration(expiration)
+    {
+    }
+
+    // the timer itself (we don't own this pointer)
+    wxUnixTimerImpl *m_timer;
+
+    // the time of its next expiration, in usec
+    wxUsecClock_t m_expiration;
+};
+
+// the linked list of all active timers, we keep it sorted by expiration time
+WX_DECLARE_LIST(wxTimerSchedule, wxTimerList);
+
+// ----------------------------------------------------------------------------
+// wxTimerScheduler: class responsible for updating all timers
+// ----------------------------------------------------------------------------
+
+class wxTimerScheduler
+{
+public:
+    // get the unique timer scheduler instance
+    static wxTimerScheduler& Get()
+    {
+        if ( !ms_instance )
+            ms_instance = new wxTimerScheduler;
+
+        return *ms_instance;
+    }
+
+    // must be called on shutdown to delete the global timer scheduler
+    static void Shutdown()
+    {
+        if ( ms_instance )
+        {
+            delete ms_instance;
+            ms_instance = NULL;
+        }
+    }
+
+    // adds timer which should expire at the given absolute time to the list
+    void AddTimer(wxUnixTimerImpl *timer, wxUsecClock_t expiration);
+
+    // remove timer from the list, called automatically from timer dtor
+    void RemoveTimer(wxUnixTimerImpl *timer);
+
+
+    // the functions below are used by the event loop implementation to monitor
+    // and notify timers:
+
+    // if this function returns true, the time remaining until the next time
+    // expiration is returned in the provided parameter (always positive or 0)
+    //
+    // it returns false if there are no timers
+    bool GetNext(wxUsecClock_t *remaining) const;
+
+    // trigger the timer event for all timers which have expired
+    void NotifyExpired();
+
+private:
+    // ctor and dtor are private, this is a singleton class only created by
+    // Get() and destroyed by Shutdown()
+    wxTimerScheduler() { }
+    ~wxTimerScheduler();
+
+    // add the given timer schedule to the list in the right place
+    //
+    // we take ownership of the pointer "s" which must be heap-allocated
+    void DoAddTimer(wxTimerSchedule *s);
+
+
+    // the list of all currently active timers sorted by expiration
+    wxTimerList m_timers;
+
+    static wxTimerScheduler *ms_instance;
+};
+
+// this helper function currently only exists for Unix platforms but could be
+// moved to wx/stopwatch.h if it turns out to be useful elsewhere
+//
+// returns the number of microseconds since the Epoch
+extern wxUsecClock_t wxGetLocalTimeUsec();
+
+#endif // _WX_UNIX_PRIVATE_TIMER_H_
index 40e742482ccc38dd64e5ac913b82ecbdd22ea9f2..ea2630239c188f50f0565554d26217f7dbe125e5 100644 (file)
@@ -266,21 +266,20 @@ private:
 // Returns the current state of the mouse position, buttons and modifers
 WXDLLEXPORT wxMouseState wxGetMouseState();
 
+#endif // wxUSE_GUI
 
 // ----------------------------------------------------------------------------
 // Window ID management
 // ----------------------------------------------------------------------------
 
-// Generate a unique ID
-WXDLLEXPORT long wxNewId();
-
 // Ensure subsequent IDs don't clash with this one
-WXDLLEXPORT void wxRegisterId(long id);
+WXDLLIMPEXP_BASE void wxRegisterId(long id);
 
 // Return the current ID
-WXDLLEXPORT long wxGetCurrentId();
+WXDLLIMPEXP_BASE long wxGetCurrentId();
 
-#endif // wxUSE_GUI
+// Generate a unique ID
+WXDLLIMPEXP_BASE long wxNewId();
 
 // ----------------------------------------------------------------------------
 // Various conversions
index 4815472d7bc3ccb0eb80aec91884facc8f35818b..ebcae184308dc94a9e90219c814a7e2d7bf067d6 100644 (file)
 
 #if wxUSE_TIMER
 
-#include "wx/timer.h"
-
-#ifndef WX_PRECOMP
-#endif
-
+#include "wx/cocoa/private/timer.h"
 #include "wx/cocoa/autorelease.h"
 
 #import <Foundation/NSTimer.h>
 
-// ============================================================================
-// implementation
-// ============================================================================
-
-IMPLEMENT_CLASS(wxTimer, wxTimerBase)
-
 // ========================================================================
 // wxNSTimerData
 // ========================================================================
 @interface wxNSTimerData : NSObject
 {
-    wxTimer* m_timer;
+    wxCocoaTimerImpl* m_timer;
 }
 
 - (id)init;
-- (id)initWithWxTimer:(wxTimer*)theTimer;
-- (wxTimer*)timer;
+- (id)initWithWxTimer:(wxCocoaTimerImpl*)theTimer;
+- (wxCocoaTimerImpl*)timer;
 - (void)onNotify:(NSTimer *)theTimer;
 @end // interface wxNSTimerData : NSObject
 
@@ -60,7 +50,7 @@ IMPLEMENT_CLASS(wxTimer, wxTimerBase)
     return self;
 }
 
-- (id)initWithWxTimer:(wxTimer*)theTimer;
+- (id)initWithWxTimer:(wxCocoaTimerImpl*)theTimer;
 {
     if(!(self = [super init]))
         return nil;
@@ -68,32 +58,32 @@ IMPLEMENT_CLASS(wxTimer, wxTimerBase)
     return self;
 }
 
-- (wxTimer*)timer
+- (wxCocoaTimerImpl*)timer
 {
     return m_timer;
 }
 
 - (void)onNotify:(NSTimer *)theTimer
 {
-    m_timer->Notify(); //wxTimerBase method
+    m_timer->Notify();
 }
 @end
 
 // ----------------------------------------------------------------------------
-// wxTimer
+// wxCocoaTimerImpl
 // ----------------------------------------------------------------------------
 
-wxTimer::~wxTimer()
+wxCocoaTimerImpl::~wxCocoaTimerImpl()
 {
     Stop();
 }
 
-void wxTimer::Init()
+void wxCocoaTimerImpl::Init()
 {
     m_cocoaNSTimer = NULL;
 }
 
-bool wxTimer::Start(int millisecs, bool oneShot)
+bool wxCocoaTimerImpl::Start(int millisecs, bool oneShot)
 {
     Stop();
 
@@ -111,7 +101,7 @@ bool wxTimer::Start(int millisecs, bool oneShot)
     return IsRunning();
 }
 
-void wxTimer::Stop()
+void wxCocoaTimerImpl::Stop()
 {
     if (m_cocoaNSTimer)
     {
@@ -122,7 +112,7 @@ void wxTimer::Stop()
     }
 }
 
-bool wxTimer::IsRunning() const
+bool wxCocoaTimerImpl::IsRunning() const
 {
     return m_cocoaNSTimer != NULL && [m_cocoaNSTimer isValid];
 }
index 081d9e567f2b4348f17c6e198b4db48b9dc0a281..a2ae48aa1a9e89da70cc08286dc3bb1874fdcbe7 100644 (file)
@@ -1,11 +1,10 @@
 /////////////////////////////////////////////////////////////////////////////
 // Name:        src/cocoa/utils.cpp
 // Purpose:     Various utilities
-// Author:      AUTHOR
-// Modified by:
+// Author:      David Elliott
 // Created:     2003/??/??
 // RCS-ID:      $Id$
-// Copyright:   (c) AUTHOR
+// Copyright:   (c) wxWidgets dev team
 // Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
@@ -19,6 +18,7 @@
 
 #include "wx/apptrait.h"
 #include "wx/display.h"
+#include "wx/cocoa/private/timer.h"
 
 #include <ctype.h>
 
@@ -62,6 +62,11 @@ wxPortId wxGUIAppTraits::GetToolkitVersion(int *verMaj, int *verMin) const
     return wxPORT_COCOA;
 }
 
+wxTimerImpl* wxGUIAppTraits::CreateTimerImpl(wxTimer* timer)
+{
+    return new wxCocoaTimerImpl(timer);
+}
+
 wxWindow* wxFindWindowAtPoint(const wxPoint& pt)
 {
     return wxGenericFindWindowAtPoint(pt);
index abde457635ea0ea08180470b94f66dfba64ee834..e04611b837fec839ff43c287aeb81760e8a337f0 100644 (file)
@@ -147,6 +147,7 @@ const wxEventType wxEVT_USER_FIRST = wxEVT_FIRST + 2000;
 DEFINE_EVENT_TYPE(wxEVT_NULL)
 DEFINE_EVENT_TYPE(wxEVT_IDLE)
 DEFINE_EVENT_TYPE(wxEVT_SOCKET)
+DEFINE_EVENT_TYPE(wxEVT_TIMER)
 
 #endif // !WXWIN_COMPATIBILITY_EVENT_TYPES
 
@@ -173,9 +174,6 @@ DEFINE_EVENT_TYPE(wxEVT_COMMAND_TOOL_RCLICKED)
 DEFINE_EVENT_TYPE(wxEVT_COMMAND_TOOL_ENTER)
 DEFINE_EVENT_TYPE(wxEVT_COMMAND_SPINCTRL_UPDATED)
 
-// Sockets and timers send events, too
-DEFINE_EVENT_TYPE(wxEVT_TIMER)
-
 // Mouse event types
 DEFINE_EVENT_TYPE(wxEVT_LEFT_DOWN)
 DEFINE_EVENT_TYPE(wxEVT_LEFT_UP)
index 90623b23eb8666e9122262aaf9be0f09a2e3908f..bb89232709506e28b4e75acc6412270b1cc6d308 100644 (file)
 #if wxUSE_TIMER
 
 #ifndef WX_PRECOMP
-    #include "wx/timer.h"
+    #include "wx/app.h"
 #endif
 
+#include "wx/timer.h"
+#include "wx/apptrait.h"
+#include "wx/private/timer.h"
+
 // ----------------------------------------------------------------------------
 // wxWin macros
 // ----------------------------------------------------------------------------
@@ -41,47 +45,92 @@ IMPLEMENT_DYNAMIC_CLASS(wxTimerEvent, wxEvent)
 // wxTimerBase implementation
 // ============================================================================
 
-wxTimerBase::~wxTimerBase()
+wxTimer::~wxTimer()
 {
-    // this destructor is required for Darwin
+    Stop();
+
+    delete m_impl;
 }
 
-void wxTimerBase::Notify()
+void wxTimer::Init()
+{
+    wxAppTraits * const traits = wxTheApp ? wxTheApp->GetTraits() : NULL;
+    m_impl = traits ? traits->CreateTimerImpl(this) : NULL;
+    if ( !m_impl )
+    {
+        wxFAIL_MSG( _T("No timer implementation for this platform") );
+
+    }
+}
+
+// ============================================================================
+// rest of wxTimer implementation forwarded to wxTimerImpl
+// ============================================================================
+
+void wxTimer::SetOwner(wxEvtHandler *owner, int timerid)
+{
+    wxCHECK_RET( m_impl, _T("uninitialized timer") );
+
+    m_impl->SetOwner(owner, timerid);
+}
+
+wxEvtHandler *wxTimer::GetOwner() const
+{
+    wxCHECK_MSG( m_impl, NULL, _T("uninitialized timer") );
+
+    return m_impl->GetOwner();
+}
+
+bool wxTimer::Start(int milliseconds, bool oneShot)
+{
+    wxCHECK_MSG( m_impl, false, _T("uninitialized timer") );
+
+    return m_impl->Start(milliseconds, oneShot);
+}
+
+void wxTimer::Stop()
+{
+    wxCHECK_RET( m_impl, _T("uninitialized timer") );
+
+    if ( m_impl->IsRunning() )
+        m_impl->Stop();
+}
+
+void wxTimer::Notify()
 {
     // the base class version generates an event if it has owner - which it
     // should because otherwise nobody can process timer events
-    wxCHECK_RET( m_owner, _T("wxTimer::Notify() should be overridden.") );
+    wxCHECK_RET( GetOwner(), _T("wxTimer::Notify() should be overridden.") );
 
-    wxTimerEvent event(m_idTimer, m_milli);
-    event.SetEventObject(this);
-    (void)m_owner->ProcessEvent(event);
+    m_impl->SendEvent();
 }
 
-bool wxTimerBase::Start(int milliseconds, bool oneShot)
+bool wxTimer::IsRunning() const
 {
-    // under MSW timers only work when they're started from the main thread so
-    // let the caller know about it
-#if wxUSE_THREADS
-    wxASSERT_MSG( wxThread::IsMain(),
-                  _T("timer can only be started from the main thread") );
-#endif // wxUSE_THREADS
-
-    if ( IsRunning() )
-    {
-        // not stopping the already running timer might work for some
-        // platforms (no problems under MSW) but leads to mysterious crashes
-        // on the others (GTK), so to be on the safe side do it here
-        Stop();
-    }
+    wxCHECK_MSG( m_impl, false, _T("uninitialized timer") );
 
-    if ( milliseconds != -1 )
-    {
-        m_milli = milliseconds;
-    }
+    return m_impl->IsRunning();
+}
+
+int wxTimer::GetId() const
+{
+    wxCHECK_MSG( m_impl, wxID_ANY, _T("uninitialized timer") );
+
+    return m_impl->GetId();
+}
 
-    m_oneShot = oneShot;
+int wxTimer::GetInterval() const
+{
+    wxCHECK_MSG( m_impl, -1, _T("uninitialized timer") );
+
+    return m_impl->GetInterval();
+}
+
+bool wxTimer::IsOneShot() const
+{
+    wxCHECK_MSG( m_impl, false, _T("uninitialized timer") );
 
-    return true;
+    return m_impl->IsOneShot();
 }
 
 #endif // wxUSE_TIMER
diff --git a/src/common/timerimpl.cpp b/src/common/timerimpl.cpp
new file mode 100644 (file)
index 0000000..d952af8
--- /dev/null
@@ -0,0 +1,84 @@
+/////////////////////////////////////////////////////////////////////////////
+// Name:        common/timercmn.cpp
+// Purpose:     wxTimerBase implementation
+// Author:      Julian Smart, Guillermo Rodriguez, Vadim Zeitlin
+// Modified by: VZ: extracted all non-wxTimer stuff in stopwatch.cpp (20.06.03)
+// Created:     04/01/98
+// RCS-ID:      $Id$
+// Copyright:   (c) Julian Smart
+//              (c) 1999 Guillermo Rodriguez <guille@iies.es>
+// Licence:     wxWindows licence
+/////////////////////////////////////////////////////////////////////////////
+
+// ============================================================================
+// declarations
+// ============================================================================
+
+// ----------------------------------------------------------------------------
+// wxWin headers
+// ----------------------------------------------------------------------------
+
+// For compilers that support precompilation, includes "wx.h".
+#include "wx/wxprec.h"
+
+#ifdef __BORLANDC__
+    #pragma hdrstop
+#endif
+
+#if wxUSE_TIMER
+
+#include "wx/private/timer.h"
+#include "wx/utils.h"               // for wxNewId()
+
+wxTimerImpl::wxTimerImpl(wxTimer *timer)
+{
+    m_timer = timer;
+    m_owner = NULL;
+    m_idTimer = wxID_ANY;
+    m_milli = 0;
+    m_oneShot = false;
+}
+
+void wxTimerImpl::SetOwner(wxEvtHandler *owner, int timerid)
+{
+    m_owner = owner;
+    m_idTimer = timerid == wxID_ANY ? wxNewId() : timerid;
+}
+
+void wxTimerImpl::SendEvent()
+{
+    wxTimerEvent event(m_idTimer, m_milli);
+    event.SetEventObject(m_owner);
+    (void)m_owner->ProcessEvent(event);
+}
+
+bool wxTimerImpl::Start(int milliseconds, bool oneShot)
+{
+    // under MSW timers only work when they're started from the main thread so
+    // let the caller know about it
+#if wxUSE_THREADS
+    wxASSERT_MSG( wxThread::IsMain(),
+                  _T("timer can only be started from the main thread") );
+#endif // wxUSE_THREADS
+
+    if ( IsRunning() )
+    {
+        // not stopping the already running timer might work for some
+        // platforms (no problems under MSW) but leads to mysterious crashes
+        // on the others (GTK), so to be on the safe side do it here
+        Stop();
+    }
+
+    if ( milliseconds != -1 )
+    {
+        m_milli = milliseconds;
+    }
+
+    m_oneShot = oneShot;
+
+    return true;
+}
+
+
+#endif // wxUSE_TIMER
+
index 3d7707581cabe6825177615c9314651ae4a8d021..0f9a147fe372dd1c7f4ea9358b5ea71e8819f072 100644 (file)
@@ -845,14 +845,6 @@ bool wxYieldIfNeeded()
     return wxTheApp && wxTheApp->Yield(true);
 }
 
-#endif // wxUSE_BASE
-
-// ============================================================================
-// GUI-only functions from now on
-// ============================================================================
-
-#if wxUSE_GUI
-
 // Id generation
 static long wxCurrentId = 100;
 
@@ -875,6 +867,14 @@ wxRegisterId (long id)
     wxCurrentId = id + 1;
 }
 
+#endif // wxUSE_BASE
+
+// ============================================================================
+// GUI-only functions from now on
+// ============================================================================
+
+#if wxUSE_GUI
+
 // ----------------------------------------------------------------------------
 // Menu accelerators related functions
 // ----------------------------------------------------------------------------
index c4c6c3bdeba40cef0c892f7a538bcfcafae71bfa..16a348110b1dfea229ebeaecc650f805c5240c1b 100644 (file)
@@ -26,7 +26,7 @@
 #endif
 
 #include "wx/thread.h"
-#include "wx/timer.h"
+#include "wx/generic/private/timer.h"
 #include "wx/private/selectdispatcher.h"
 #include "wx/dfb/private.h"
 #include "wx/nonownedwnd.h"
@@ -136,7 +136,7 @@ void wxEventLoop::WakeUp()
 void wxEventLoop::OnNextIteration()
 {
 #if wxUSE_TIMER
-    wxTimer::NotifyTimers();
+    wxGenericTimerImpl::NotifyTimers();
 #endif
 
 #if wxUSE_SOCKETS
index a2daf62003aac3cd53fa04e0be7ae480de910899..4f7ebe8bf1f7c30acdb2d5bb69acbdc6dd864928 100644 (file)
 
 #if wxUSE_TIMER
 
-#include "wx/timer.h"
-
 #ifndef WX_PRECOMP
     #include "wx/log.h"
     #include "wx/module.h"
 #endif
 
+#include "wx/apptrait.h"
+#include "wx/generic/private/timer.h"
+
 // ----------------------------------------------------------------------------
 // Time input function
 // ----------------------------------------------------------------------------
 class wxTimerDesc
 {
 public:
-    wxTimerDesc(wxTimer *t) :
+    wxTimerDesc(wxGenericTimerImpl *t) :
         timer(t), running(false), next(NULL), prev(NULL),
         shotTime(0), deleteFlag(NULL) {}
 
-    wxTimer         *timer;
-    bool             running;
-    wxTimerDesc     *next, *prev;
-    wxTimerTick_t    shotTime;
-    volatile bool   *deleteFlag; // see comment in ~wxTimer
+    wxGenericTimerImpl  *timer;
+    bool                running;
+    wxTimerDesc         *next, *prev;
+    wxTimerTick_t        shotTime;
+    volatile bool       *deleteFlag; // see comment in ~wxTimer
 };
 
 class wxTimerScheduler
@@ -207,18 +208,16 @@ void wxTimerScheduler::NotifyTimers()
 // wxTimer
 // ----------------------------------------------------------------------------
 
-IMPLEMENT_ABSTRACT_CLASS(wxTimer, wxEvtHandler)
-
 wxTimerScheduler *gs_scheduler = NULL;
 
-void wxTimer::Init()
+void wxGenericTimerImpl::Init()
 {
     if ( !gs_scheduler )
         gs_scheduler = new wxTimerScheduler;
     m_desc = new wxTimerDesc(this);
 }
 
-wxTimer::~wxTimer()
+wxGenericTimerImpl::~wxGenericTimerImpl()
 {
     wxLogTrace( wxT("timer"), wxT("destroying timer %p..."), this);
     if ( IsRunning() )
@@ -235,31 +234,31 @@ wxTimer::~wxTimer()
     wxLogTrace( wxT("timer"), wxT("    ...done destroying timer %p..."), this);
 }
 
-bool wxTimer::IsRunning() const
+bool wxGenericTimerImpl::IsRunning() const
 {
     return m_desc->running;
 }
 
-bool wxTimer::Start(int millisecs, bool oneShot)
+bool wxGenericTimerImpl::Start(int millisecs, bool oneShot)
 {
     wxLogTrace( wxT("timer"), wxT("started timer %p: %i ms, oneshot=%i"),
                this, millisecs, oneShot);
 
-    if ( !wxTimerBase::Start(millisecs, oneShot) )
-        return false;
+     if ( !wxTimerImpl::Start(millisecs, oneShot) )
+         return false;
 
     gs_scheduler->QueueTimer(m_desc);
     return true;
 }
 
-void wxTimer::Stop()
+void wxGenericTimerImpl::Stop()
 {
     if ( !m_desc->running ) return;
 
     gs_scheduler->RemoveTimer(m_desc);
 }
 
-/*static*/ void wxTimer::NotifyTimers()
+/*static*/ void wxGenericTimerImpl::NotifyTimers()
 {
     if ( gs_scheduler )
         gs_scheduler->NotifyTimers();
@@ -279,5 +278,14 @@ public:
 
 IMPLEMENT_DYNAMIC_CLASS(wxTimerModule, wxModule)
 
+// ----------------------------------------------------------------------------
+// wxGUIAppTraits
+// ----------------------------------------------------------------------------
+
+wxTimerImpl *wxGUIAppTraits::CreateTimerImpl(wxTimer *timer)
+{
+    return new wxGenericTimerImpl(timer);
+}
+
 
 #endif //wxUSE_TIMER
index 7bb0317952ef23068addc4b1700cae8a5b20b0e0..628ede1a184036807f7cbd8b4351ab92b56e0cdd 100644 (file)
 
 #if wxUSE_TIMER
 
-#include "wx/timer.h"
+#include "wx/gtk/private/timer.h"
 
 #include <gtk/gtk.h>
 
 // ----------------------------------------------------------------------------
-// wxTimer
+// wxTimerImpl
 // ----------------------------------------------------------------------------
 
-IMPLEMENT_ABSTRACT_CLASS(wxTimer, wxEvtHandler)
-
 extern "C" {
+
 static gboolean timeout_callback(gpointer data)
 {
-    wxTimer *timer = (wxTimer*)data;
-
-    // Don't change the order of anything in this callback!
+    wxGTKTimerImpl *timer = (wxGTKTimerImpl*)data;
 
-    if (timer->IsOneShot())
-    {
-        // This sets m_tag to -1
+    const bool keepGoing = !timer->IsOneShot();
+    if ( !keepGoing )
         timer->Stop();
-    }
 
     // When getting called from GDK's timer handler we
     // are no longer within GDK's grab on the GUI
@@ -45,40 +40,29 @@ static gboolean timeout_callback(gpointer data)
     // Release lock again.
     gdk_threads_leave();
 
-    return !timer->IsOneShot();
-}
-}
-
-void wxTimer::Init()
-{
-    m_sourceId = 0;
-    m_milli = 1000;
+    return keepGoing;
 }
 
-wxTimer::~wxTimer()
-{
-    Stop();
-}
+} // extern "C"
 
-bool wxTimer::Start( int millisecs, bool oneShot )
+bool wxGTKTimerImpl::Start(int millisecs, bool oneShot)
 {
-    (void)wxTimerBase::Start(millisecs, oneShot);
+    if ( !wxTimerImpl::Start(millisecs, oneShot) )
+        return false;
 
-    if (m_sourceId != 0)
-        g_source_remove(m_sourceId);
+    wxASSERT_MSG( !m_sourceId, _T("shouldn't be still running") );
 
     m_sourceId = g_timeout_add(m_milli, timeout_callback, this);
 
     return true;
 }
 
-void wxTimer::Stop()
+void wxGTKTimerImpl::Stop()
 {
-    if (m_sourceId != 0)
-    {
-        g_source_remove(m_sourceId);
-        m_sourceId = 0;
-    }
+    wxASSERT_MSG( m_sourceId, _T("should be running") );
+
+    g_source_remove(m_sourceId);
+    m_sourceId = 0;
 }
 
 #endif // wxUSE_TIMER
index d3df80a8786410e3558b932b7577fb0a840c9e7f..f5af22987d7608c5cc6d66b8b53f07c8f19e2dc4 100644 (file)
@@ -24,6 +24,8 @@
 
 #include "wx/unix/execute.h"
 
+#include "wx/gtk/private/timer.h"
+
 #ifdef __WXDEBUG__
     #include "wx/gtk/assertdlg_gtk.h"
     #if wxUSE_STACKWALKER
@@ -286,6 +288,11 @@ wxPortId wxGUIAppTraits::GetToolkitVersion(int *verMaj, int *verMin) const
     return wxPORT_GTK;
 }
 
+wxTimerImpl *wxGUIAppTraits::CreateTimerImpl(wxTimer *timer)
+{
+    return new wxGTKTimerImpl(timer);
+}
+
 #if wxUSE_DETECT_SM
 static wxString GetSM()
 {
index c5e8bd37add140f03a8b4ebbc29f69811547ede3..b90de7064c5aa1cfacadbc78dcf7d12af6f58662 100644 (file)
@@ -7,12 +7,11 @@
 // Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
-// For compilers that support precompilation, includes "wx.h".
 #include "wx/wxprec.h"
 
 #if wxUSE_TIMER
 
-#include "wx/timer.h"
+#include "wx/gtk1/private/timer.h"
 
 #include "gtk/gtk.h"
 
 // wxTimer
 // ----------------------------------------------------------------------------
 
-IMPLEMENT_ABSTRACT_CLASS(wxTimer, wxEvtHandler)
-
 extern "C" {
-static gint timeout_callback( gpointer data )
+static gint timeout_callback(void *data)
 {
-    wxTimer *timer = (wxTimer*)data;
-
-    // Don't change the order of anything in this callback!
+    wxTimerImpl * const timer = (wxTimerImpl *)data;
 
-    if (timer->IsOneShot())
-    {
-        // This sets m_tag to -1
+    const bool keepGoing = !timer->IsOneShot();
+    if ( !keepGoing )
         timer->Stop();
-    }
 
     // When getting called from GDK's timer handler we
     // are no longer within GDK's grab on the GUI
@@ -45,43 +38,28 @@ static gint timeout_callback( gpointer data )
     // Release lock again.
     gdk_threads_leave();
 
-    if (timer->IsOneShot())
-        return FALSE;
-
-    return TRUE;
-}
-}
-
-void wxTimer::Init()
-{
-    m_tag = -1;
-    m_milli = 1000;
+    return keepGoing;
 }
-
-wxTimer::~wxTimer()
-{
-    wxTimer::Stop();
 }
 
-bool wxTimer::Start( int millisecs, bool oneShot )
+bool wxGTKTimerImpl::Start(int millisecs, bool oneShot)
 {
-    (void)wxTimerBase::Start(millisecs, oneShot);
+    if ( !wxTimerImpl::Start(millisecs, oneShot) )
+        return false;
 
-    if (m_tag != -1)
-        gtk_timeout_remove( m_tag );
+    wxASSERT_MSG( m_tag == -1, _T("shouldn't be still running") );
 
     m_tag = gtk_timeout_add( m_milli, timeout_callback, this );
 
-    return TRUE;
+    return true;
 }
 
-void wxTimer::Stop()
+void wxGTKTimerImpl::Stop()
 {
-    if (m_tag != -1)
-    {
-        gtk_timeout_remove( m_tag );
-        m_tag = -1;
-    }
+    wxASSERT_MSG( m_tag != -1, _T("should be running") );
+
+    gtk_timeout_remove( m_tag );
+    m_tag = -1;
 }
 
 #endif // wxUSE_TIMER
index 29fb44c8c6f4c9ad4fd3589669b75b8aeb1ae1da..3aa1d8b457457137230fa7445b1586f4c74bfd7e 100644 (file)
@@ -19,7 +19,7 @@
 #endif
 
 #include "wx/apptrait.h"
-
+#include "wx/gtk1/private/timer.h"
 #include "wx/process.h"
 
 #include "wx/unix/execute.h"
@@ -183,6 +183,11 @@ int wxAddProcessCallback(wxEndProcessData *proc_data, int fd)
     return tag;
 }
 
+wxTimerImpl* wxGUIAppTraits::CreateTimerImpl(wxTimer *timer)
+{
+    return new wxGTKTimerImpl(timer);
+}
+
 // ----------------------------------------------------------------------------
 // wxPlatformInfo-related
 // ----------------------------------------------------------------------------
index 3c576d0650f3af02cadce17bfce228dea1ee59b9..28179a84f4820ed0b3bd62acd55f279524c36bad 100644 (file)
@@ -17,7 +17,7 @@
     #include "wx/dynarray.h"
 #endif
 
-#include "wx/timer.h"
+#include "wx/mac/private/timer.h"
 
 #ifdef __WXMAC__
     #include "wx/mac/private.h"
     #include <Timer.h>
 #endif
 
-IMPLEMENT_ABSTRACT_CLASS(wxTimer, wxEvtHandler)
-
 #define wxMAC_USE_CARBON_TIMER 1
 
 #if wxMAC_USE_CARBON_TIMER
 
 struct MacTimerInfo
 {
-    wxTimer* m_timer;
+    wxCarbonTimerImpl* m_timer;
     EventLoopTimerUPP m_proc;
     EventLoopTimerRef   m_timerRef;
 };
 
-static pascal void wxProcessTimer( EventLoopTimerRef theTimer, void *data );
 static pascal void wxProcessTimer( EventLoopTimerRef theTimer, void *data )
 {
     if ( data == NULL )
         return;
 
-    wxTimer* timer = (wxTimer*)data;
+    wxCarbonTimerImpl* timer = (wxCarbonTimerImpl*)data;
 
     if ( timer->IsOneShot() )
         timer->Stop();
@@ -54,7 +51,8 @@ static pascal void wxProcessTimer( EventLoopTimerRef theTimer, void *data )
     timer->Notify();
 }
 
-void wxTimer::Init()
+wxCarbonTimerImpl::wxCarbonTimerImpl(wxTimer *timer)
+                 : wxTimerImpl(timer)
 {
     m_info = new MacTimerInfo();
     m_info->m_timer = this;
@@ -62,24 +60,19 @@ void wxTimer::Init()
     m_info->m_timerRef = kInvalidID;
 }
 
-bool wxTimer::IsRunning() const
+bool wxCarbonTimerImpl::IsRunning() const
 {
     return ( m_info->m_timerRef != kInvalidID );
 }
 
-wxTimer::~wxTimer()
+wxCarbonTimerImpl::~wxCarbonTimerImpl()
 {
-    Stop();
-    if (m_info != NULL)
-    {
-        delete m_info;
-        m_info = NULL;
-    }
+    delete m_info;
 }
 
-bool wxTimer::Start( int milliseconds, bool mode )
+bool wxCarbonTimerImpl::Start( int milliseconds, bool mode )
 {
-    (void)wxTimerBase::Start(milliseconds, mode);
+    (void)wxTimerImpl::Start(milliseconds, mode);
 
     wxCHECK_MSG( m_milli > 0, false, wxT("invalid value for timer timeout") );
     wxCHECK_MSG( m_info->m_timerRef == NULL, false, wxT("attempting to restart a timer") );
@@ -99,7 +92,7 @@ bool wxTimer::Start( int milliseconds, bool mode )
     return true;
 }
 
-void wxTimer::Stop()
+void wxCarbonTimerImpl::Stop()
 {
     if (m_info->m_timerRef)
         RemoveEventLoopTimer( m_info->m_timerRef );
@@ -110,13 +103,13 @@ void wxTimer::Stop()
     m_info->m_timerRef = kInvalidID;
 }
 
-#else
+#else // !wxMAC_USE_CARBON_TIMER
 
 typedef struct MacTimerInfo
 {
     TMTask m_task;
     wxMacNotifierTableRef m_table;
-    wxTimer* m_timer;
+    wxCarbonTimerImpl* m_timer;
 };
 
 static void wxProcessTimer( unsigned long event, void *data );
@@ -138,8 +131,8 @@ static void wxProcessTimer( unsigned long event, void *data )
     if ( data == NULL )
         return;
 
-    wxTimer* timer = (wxTimer*) data;
-    if ( timer->IsOneShot() )
+    wxCarbonTimerImpl* timer = (wxCarbonTimerImpl*) data;
+    if ( timer->m_oneShot )
         timer->Stop();
 
     gTimersInProcess.Add( timer );
@@ -155,7 +148,7 @@ static void wxProcessTimer( unsigned long event, void *data )
     }
 }
 
-void wxTimer::Init()
+void wxCarbonTimerImpl::Init()
 {
     m_info = new MacTimerInfo();
     m_info->m_task.tmAddr = NULL;
@@ -166,14 +159,14 @@ void wxTimer::Init()
     m_info->m_timer = this;
 }
 
-bool wxTimer::IsRunning() const
+bool wxCarbonTimerImpl::IsRunning() const
 {
     // as the qType may already indicate it is elapsed, but it
     // was not handled internally yet
     return ( m_info->m_task.tmAddr != NULL );
 }
 
-wxTimer::~wxTimer()
+wxCarbonTimerImpl::~wxCarbonTimerImpl()
 {
     Stop();
     if (m_info != NULL)
@@ -187,7 +180,7 @@ wxTimer::~wxTimer()
         gTimersInProcess.RemoveAt( index );
 }
 
-bool wxTimer::Start( int milliseconds, bool mode )
+bool wxCarbonTimerImpl::Start( int milliseconds, bool mode )
 {
     (void)wxTimerBase::Start( milliseconds, mode );
 
@@ -205,7 +198,7 @@ bool wxTimer::Start( int milliseconds, bool mode )
     return true;
 }
 
-void wxTimer::Stop()
+void wxCarbonTimerImpl::Stop()
 {
     if ( m_info->m_task.tmAddr )
     {
@@ -217,7 +210,7 @@ void wxTimer::Stop()
     wxMacRemoveAllNotifiersForData( wxMacGetNotifierTable(), this );
 }
 
-#endif // wxMAC_USE_CARBON_TIMER
+#endif // wxMAC_USE_CARBON_TIMER/!wxMAC_USE_CARBON_TIMER
 
 #endif // wxUSE_TIMER
 
index f8f817d58c232b441bb1be25b2149abab1588b93..c777fce3443264dc154bf7385fd267326edd7574 100644 (file)
@@ -57,6 +57,8 @@
     #include <TextCommon.h>
     #include <TextEncodingConverter.h>
 #endif
+
+#include "wx/mac/private/timer.h"
 #endif // wxUSE_GUI
 
 #include "wx/mac/private.h"
@@ -378,6 +380,11 @@ wxPortId wxGUIAppTraits::GetToolkitVersion(int *verMaj, int *verMin) const
     return wxPORT_MAC;
 }
 
+wxTimerImpl* wxGUIAppTraits::CreateTimerImpl(wxTimer *timer)
+{
+    return new wxCarbonTimerImpl(timer);
+}
+
 int gs_wxBusyCursorCount = 0;
 extern wxCursor    gMacCurrentCursor;
 wxCursor        gMacStoredActiveCursor;
index 48677e8a1fcaedb052891ce22969620863b8060c..fb6815fc06dc3cff798cf825545bc1910c96cc33 100644 (file)
@@ -12,7 +12,7 @@
 // For compilers that support precompilation, includes "wx.h".
 #include "wx/wxprec.h"
 
-#include "wx/timer.h"
+#include "wx/motif/private/timer.h"
 
 #ifndef WX_PRECOMP
     #include "wx/app.h"
 
 #include "wx/motif/private.h"
 
-IMPLEMENT_ABSTRACT_CLASS(wxTimer, wxEvtHandler)
+WX_DECLARE_VOIDPTR_HASH_MAP(wxMotifTimerImpl*, wxTimerHashMap);
 
-WX_DECLARE_VOIDPTR_HASH_MAP(wxTimer*, wxTimerHashMap);
+static wxTimerHashMap gs_timers;
 
-static wxTimerHashMap s_timers;
-
-void wxTimerCallback (wxTimer * timer)
+void wxTimerCallback (wxMotifTimerImpl *timer)
 {
-  // Check to see if it's still on
-  if (s_timers.find(timer) == s_timers.end())
-    return;
-
-  if (timer->m_id == 0)
-    return;            // Avoid to process spurious timer events
-
-  if (!timer->m_oneShot)
-    timer->m_id = XtAppAddTimeOut((XtAppContext) wxTheApp->GetAppContext(),
-                                  timer->m_milli,
-                                  (XtTimerCallbackProc) wxTimerCallback,
-                                  (XtPointer) timer);
-  else
-    timer->m_id = 0;
-
-  timer->Notify();
+    // Check to see if it's still on
+    if ( gs_timers.find(timer) == gs_timers.end() )
+        return;
+
+    if ( !timer->IsRunning() )
+        return;            // Avoid to process spurious timer events
+
+    timer->Notify();
 }
 
-void wxTimer::Init()
+wxMotifTimerImpl::~wxMotifTimerImpl()
 {
-    m_id = 0;
-    m_milli = 1000;
+    gs_timers.erase(this);
 }
 
-wxTimer::~wxTimer()
+void wxMotifTimerImpl::DoStart()
 {
-    Stop();
-    s_timers.erase(this);
+    m_id = XtAppAddTimeOut((XtAppContext) wxTheApp->GetAppContext(),
+                            m_milli,
+                            (XtTimerCallbackProc) wxTimerCallback,
+                            (XtPointer) this);
 }
 
-bool wxTimer::Start(int milliseconds, bool mode)
+bool wxMotifTimerImpl::Start(int milliseconds, bool mode)
 {
-    Stop();
+    if ( !wxTimerImpl::Start(milliseconds, mode) )
+        return false;
 
-    (void)wxTimerBase::Start(milliseconds, mode);
+    if ( gs_timers.find(this) == gs_timers.end() )
+        gs_timers[this] = this;
 
-    if (s_timers.find(this) == s_timers.end())
-        s_timers[this] = this;
+    DoStart();
 
-    m_id = XtAppAddTimeOut((XtAppContext) wxTheApp->GetAppContext(),
-                            m_milli,
-                            (XtTimerCallbackProc) wxTimerCallback,
-                            (XtPointer) this);
     return true;
 }
 
-void wxTimer::Stop()
+void wxMotifTimerImpl::Stop()
+{
+    XtRemoveTimeOut (m_id);
+    m_id = 0;
+}
+
+void wxMotifTimerImpl::Notify()
 {
-    if (m_id > 0)
+    if ( IsOneShot() )
     {
-        XtRemoveTimeOut (m_id);
+        // nothing to do, timeout is removed automatically by X
         m_id = 0;
     }
-    m_milli = 0 ;
+    else // rearm the timer
+    {
+        DoStart();
+    }
+
+    wxTimerImpl::Notify();
 }
+
index d60e87705e54bf77b57265bb45f5f8a1b6182f66..f43c5b0349e3eb19502960138d88b7122e325a8d 100644 (file)
@@ -34,6 +34,7 @@
 
 #include "wx/apptrait.h"
 #include "wx/evtloop.h"
+#include "wx/motif/private/timer.h"
 
 #include <string.h>
 
@@ -135,6 +136,11 @@ wxPortId wxGUIAppTraits::GetToolkitVersion(int *verMaj, int *verMin) const
     return wxPORT_MOTIF;
 }
 
+wxTimerImpl* wxGUIAppTraits::CreateTimerImpl(wxTimer* timer)
+{
+    return new wxMotifTimerImpl(timer);
+}
+
 // ----------------------------------------------------------------------------
 // display info
 // ----------------------------------------------------------------------------
index 3c72ccbde89843d8e136f9840f945b3cd67e9e09..beecee9e62cc18d54d3b4fff37a89c8863ab5da2 100644 (file)
@@ -52,6 +52,7 @@
 
 #include "wx/msw/private.h"
 #include "wx/msw/ole/oleutils.h"
+#include "wx/msw/private/timer.h"
 
 #if wxUSE_TOOLTIPS
     #include "wx/tooltip.h"
@@ -265,6 +266,12 @@ wxPortId wxGUIAppTraits::GetToolkitVersion(int *majVer, int *minVer) const
 #endif
 }
 
+wxTimerImpl *
+wxGUIAppTraits::CreateTimerImpl(wxTimer *timer)
+{
+  return new wxMSWTimerImpl(timer);
+};
+
 // ===========================================================================
 // wxApp implementation
 // ===========================================================================
index 47a9aac846043e040ba842f8a8272f9bcc339d24..e033e2be88acbbf90c0b5e219df14b3a642db005 100644 (file)
@@ -28,6 +28,7 @@
 #endif //WX_PRECOMP
 
 #include "wx/apptrait.h"
+#include "wx/msw/private/timer.h"
 // MBN: this is a workaround for MSVC 5: if it is not #included in
 // some wxBase file, wxRecursionGuard methods won't be exported from
 // wxBase.dll, and MSVC 5 will give linker errors
@@ -80,6 +81,13 @@ bool wxConsoleAppTraits::DoMessageFromThreadWait()
     return true;
 }
 
+wxTimerImpl *
+wxConsoleAppTraits::CreateTimerImpl(wxTimer *timer)
+{
+    return new wxMSWTimerImpl(timer);
+}
+
+
 WXDWORD wxConsoleAppTraits::WaitForThread(WXHANDLE hThread)
 {
     return DoSimpleWaitForThread(hThread);
index 8fe20ab6383d0399d271de4a7425d2e367a84602..90279587056034653bc5a748ad219a0d43f75c69 100644 (file)
 
 #if wxUSE_TIMER
 
-#include "wx/timer.h"
+#include "wx/msw/private/timer.h"
 
 #ifndef WX_PRECOMP
     #include "wx/list.h"
-    #include "wx/window.h"
     #include "wx/event.h"
     #include "wx/app.h"
     #include "wx/intl.h"
@@ -38,7 +37,7 @@
 
 // define a hash containing all the timers: it is indexed by timer id and
 // contains the corresponding timer
-WX_DECLARE_HASH_MAP(unsigned long, wxTimer *, wxIntegerHash, wxIntegerEqual,
+WX_DECLARE_HASH_MAP(unsigned long, wxMSWTimerImpl *, wxIntegerHash, wxIntegerEqual,
                     wxTimerMap);
 
 // instead of using a global here, wrap it in a static function as otherwise it
@@ -58,35 +57,18 @@ static wxTimerMap& TimerMap()
 // timer callback used for all timers
 void WINAPI wxTimerProc(HWND hwnd, UINT msg, UINT_PTR idTimer, DWORD dwTime);
 
-// ----------------------------------------------------------------------------
-// macros
-// ----------------------------------------------------------------------------
-
-IMPLEMENT_ABSTRACT_CLASS(wxTimer, wxEvtHandler)
-
 // ============================================================================
 // implementation
 // ============================================================================
 
 // ----------------------------------------------------------------------------
-// wxTimer class
+// wxMSWTimerImpl class
 // ----------------------------------------------------------------------------
 
-void wxTimer::Init()
+bool wxMSWTimerImpl::Start(int milliseconds, bool oneShot)
 {
-    m_id = 0;
-}
-
-wxTimer::~wxTimer()
-{
-    wxTimer::Stop();
-}
-
-bool wxTimer::Start(int milliseconds, bool oneShot)
-{
-    (void)wxTimerBase::Start(milliseconds, oneShot);
-
-    wxCHECK_MSG( m_milli > 0, false, wxT("invalid value for timer timeout") );
+    if ( !wxTimerImpl::Start(milliseconds, oneShot) )
+        return false;
 
     m_id = ::SetTimer
              (
@@ -121,14 +103,13 @@ bool wxTimer::Start(int milliseconds, bool oneShot)
     return true;
 }
 
-void wxTimer::Stop()
+void wxMSWTimerImpl::Stop()
 {
-    if ( m_id )
-    {
-        ::KillTimer(NULL, m_id);
+    wxASSERT_MSG( m_id, _T("should be running") );
 
-        TimerMap().erase(m_id);
-    }
+    ::KillTimer(NULL, m_id);
+
+    TimerMap().erase(m_id);
 
     m_id = 0;
 }
@@ -137,9 +118,9 @@ void wxTimer::Stop()
 // private functions
 // ----------------------------------------------------------------------------
 
-void wxProcessTimer(wxTimer& timer)
+void wxProcessTimer(wxMSWTimerImpl& timer)
 {
-    wxASSERT_MSG( timer.m_id != 0, _T("bogus timer id") );
+    wxASSERT_MSG( timer.IsRunning(), _T("bogus timer id") );
 
     if ( timer.IsOneShot() )
         timer.Stop();
index 4767b04cfb68724e9788a9c2dc97214b3b72b8c1..c236c47c4e6e4909da60fc150f58d8e42ceb9185 100644 (file)
@@ -29,7 +29,6 @@
     #include "wx/app.h"
     #include "wx/intl.h"
     #include "wx/log.h"
-    #include "wx/timer.h"
 #endif  //WX_PRECOMP
 
 #include "wx/msw/registry.h"
index 6d2a8c071db39d856df2f90ab3bc88e53eb07e98..46f01a8dedba2932cec1e4c14fd4a25dfa05f804 100644 (file)
@@ -12,7 +12,7 @@
 // For compilers that support precompilation, includes "wx.h".
 #include "wx/wxprec.h"
 
-#include "wx/timer.h"
+#include "wx/os2/private/timer.h"
 
 #ifndef WX_PRECOMP
     #include "wx/list.h"
@@ -36,7 +36,7 @@
 
 // define a hash containing all the timers: it is indexed by timer id and
 // contains the corresponding timer
-WX_DECLARE_HASH_MAP(unsigned long, wxTimer *, wxIntegerHash, wxIntegerEqual,
+WX_DECLARE_HASH_MAP(unsigned long, wxOS2TimerImpl *, wxIntegerHash, wxIntegerEqual,
                     wxTimerMap);
 
 // instead of using a global here, wrap it in a static function as otherwise it
@@ -56,12 +56,6 @@ static wxTimerMap& TimerMap()
 // timer callback used for all timers
 ULONG wxTimerProc(HWND hwnd, ULONG, int nIdTimer, ULONG);
 
-// ----------------------------------------------------------------------------
-// macros
-// ----------------------------------------------------------------------------
-
-IMPLEMENT_ABSTRACT_CLASS(wxTimer, wxEvtHandler)
-
 // ============================================================================
 // implementation
 // ============================================================================
@@ -70,17 +64,17 @@ IMPLEMENT_ABSTRACT_CLASS(wxTimer, wxEvtHandler)
 // wxTimer class
 // ----------------------------------------------------------------------------
 
-void wxTimer::Init()
+void wxOS2TimerImpl::Init()
 {
     m_ulId = 0;
 }
 
-wxTimer::~wxTimer()
+wxOS2TimerImpl::~wxOS2TimerImpl()
 {
-    wxTimer::Stop();
+    wxOS2TimerImpl::Stop();
 }
 
-void wxTimer::Notify()
+void wxOS2TimerImpl::Notify()
 {
     //
     // The base class version generates an event if it has owner - which it
@@ -96,9 +90,9 @@ void wxTimer::Notify()
     (void)m_owner->ProcessEvent(vEvent);
 } // end of wxTimer::Notify
 
-bool wxTimer::Start( int nMilliseconds, bool bOneShot )
+bool wxOS2TimerImpl::Start( int nMilliseconds, bool bOneShot )
 {
-    (void)wxTimerBase::Start( nMilliseconds, bOneShot );
+    (void)wxTimerImpl::Start( nMilliseconds, bOneShot );
 
     wxCHECK_MSG( m_milli > 0L, false, wxT("invalid value for timer") );
 
@@ -147,7 +141,7 @@ bool wxTimer::Start( int nMilliseconds, bool bOneShot )
     }
 }
 
-void wxTimer::Stop()
+void wxOS2TimerImpl::Stop()
 {
     if ( m_ulId )
     {
@@ -170,7 +164,7 @@ void wxTimer::Stop()
 // ----------------------------------------------------------------------------
 
 void wxProcessTimer(
-  wxTimer&                          rTimer
+  wxOS2TimerImpl&                          rTimer
 )
 {
     //
index 03436d722ba4563e6881004ea8e60b1379e0a283..d75c0a0ab27d3cb0597d1ab808461c0ab2678317 100644 (file)
@@ -33,6 +33,7 @@
 #endif //WX_PRECOMP
 
 #include "wx/apptrait.h"
+#include "wx/os2/private/timer.h"
 
 #include "wx/os2/private.h"     // includes <windows.h>
 
@@ -261,6 +262,11 @@ wxPortId wxGUIAppTraits::GetToolkitVersion(int *verMaj, int *verMin) const
     return wxPORT_OS2;
 }
 
+wxTimerImpl* wxGUIAppTraits::CreateTimerImpl(wxTimer *timer)
+{
+    return new wxOS2TimerImpl(timer);
+}
+
 
 // ---------------------------------------------------------------------------
 // window information functions
index 82c5cef7c18e71f46bebe8e5970e6db3bb1429e8..1447a4905adf3b5d7643e62cf2af2a7dc2bbcfe3 100644 (file)
@@ -119,6 +119,10 @@ wxPortId wxGUIAppTraits::GetToolkitVersion(int *majVer, int *minVer) const
     return wxPORT_PALMOS;
 }
 
+wxTimerImpl* wxGUIAppTraits::CreateTimerImpl(wxTimer *timer)
+{
+    return new wxPalmOSTimerImpl(timer);
+};
 // ===========================================================================
 // wxApp implementation
 // ===========================================================================
index f9628a20d41548aa773b4ba8d65f77ebabd41a00..8b7241b828cc21de620c7bb1fc1468c6fb27070f 100644 (file)
@@ -18,7 +18,7 @@
 
 #if wxUSE_TIMER
 
-#include "wx/timer.h"
+#include "wx/palmos/private/timer.h"
 
 #ifndef WX_PRECOMP
     #include "wx/list.h"
@@ -42,7 +42,7 @@ wxCreateHiddenWindow(LPCTSTR *pclassname, LPCTSTR classname, WNDPROC wndproc);
 
 // define a hash containing all the timers: it is indexed by timer id and
 // contains the corresponding timer
-WX_DECLARE_HASH_MAP(unsigned long, wxTimer *, wxIntegerHash, wxIntegerEqual,
+WX_DECLARE_HASH_MAP(unsigned long, wxPalmOSTimerImpl*, wxIntegerHash, wxIntegerEqual,
                     wxTimerMap);
 
 static wxTimerMap g_timerMap;
@@ -53,12 +53,6 @@ static wxTimerMap g_timerMap;
 
 void WINAPI wxTimerProc(HWND hwnd, WORD, int idTimer, DWORD);
 
-// ----------------------------------------------------------------------------
-// macros
-// ----------------------------------------------------------------------------
-
-IMPLEMENT_ABSTRACT_CLASS(wxTimer, wxEvtHandler)
-
 // ============================================================================
 // implementation
 // ============================================================================
@@ -67,20 +61,20 @@ IMPLEMENT_ABSTRACT_CLASS(wxTimer, wxEvtHandler)
 // wxTimer class
 // ----------------------------------------------------------------------------
 
-void wxTimer::Init()
+void wxPalmOSTimerImpl::Init()
 {
 }
 
-wxTimer::~wxTimer()
+wxPalmOSTimerImpl::~wxPalmOSTimerImpl()
 {
 }
 
-bool wxTimer::Start(int milliseconds, bool oneShot)
+bool wxPalmOSTimerImpl::Start(int milliseconds, bool oneShot)
 {
     return false;
 }
 
-void wxTimer::Stop()
+void wxPalmOSTimerImpl::Stop()
 {
 }
 
@@ -88,7 +82,7 @@ void wxTimer::Stop()
 // private functions
 // ----------------------------------------------------------------------------
 
-void wxProcessTimer(wxTimer& timer)
+void wxProcessTimer(wxPalmOSTimerImpl& timer)
 {
 }
 
index 8f6345561842c4804830d96d3bb246925006158b..822a55bcb6db25e93cbd48ae367768dbb3de52ef 100644 (file)
@@ -32,6 +32,7 @@
 
 #include "wx/apptrait.h"
 #include "wx/unix/execute.h"
+#include "wx/unix/private/timer.h"
 
 // for waitpid()
 #include <sys/types.h>
@@ -81,3 +82,10 @@ wxConsoleAppTraits::WaitForChild(wxExecuteData& execData)
     return exitcode;
 }
 
+wxTimerImpl*
+wxConsoleAppTraits::CreateTimerImpl(wxTimer *timer)
+{
+    // this doesn't work yet as there is no main loop in console applications
+    // (but it will be added later)
+    return new wxUnixTimerImpl(timer);
+}
diff --git a/src/unix/timerunx.cpp b/src/unix/timerunx.cpp
new file mode 100644 (file)
index 0000000..12dc0bd
--- /dev/null
@@ -0,0 +1,251 @@
+/////////////////////////////////////////////////////////////////////////////
+// Name:        src/unix/timerunx.cpp
+// Purpose:     wxTimer implementation for non-GUI applications under Unix
+// Author:      Lukasz Michalski
+// Created:     15/01/2005
+// RCS-ID:      $Id$
+// Copyright:   (c) 2007 Lukasz Michalski
+// Licence:     wxWindows licence
+/////////////////////////////////////////////////////////////////////////////
+
+// ============================================================================
+// declarations
+// ============================================================================
+
+// ----------------------------------------------------------------------------
+// headers
+// ----------------------------------------------------------------------------
+
+#include "wx/wxprec.h"
+
+#ifndef WX_PRECOMP
+    #include "wx/log.h"
+    #include "wx/module.h"
+    #include "wx/app.h"
+    #include "wx/list.h"
+    #include "wx/hashmap.h"
+    #include "wx/event.h"
+#endif
+
+#include "wx/longlong.h"
+
+#include <sys/time.h>
+#include <signal.h>
+
+#include "wx/unix/private/timer.h"
+
+#include "wx/listimpl.cpp"
+WX_DEFINE_LIST(wxTimerList);
+
+// trace mask for the debugging messages used here
+#define wxTrace_Timer wxT("timer")
+
+// ----------------------------------------------------------------------------
+// local functions
+// ----------------------------------------------------------------------------
+
+// helper function to format wxUsecClock_t
+static inline wxString wxUsecClockAsString(wxUsecClock_t usec)
+{
+    #if wxUSE_LONGLONG
+        return usec.ToString();
+    #else // wxUsecClock_t == double
+        return wxString::Format(_T("%.0f"), usec);
+    #endif
+}
+
+// ============================================================================
+// wxTimerScheduler implementation
+// ============================================================================
+
+wxTimerScheduler *wxTimerScheduler::ms_instance = NULL;
+
+wxTimerScheduler::~wxTimerScheduler()
+{
+    for ( wxTimerList::iterator node = m_timers.begin();
+          node != m_timers.end();
+          ++node )
+    {
+        delete *node;
+    }
+}
+
+void wxTimerScheduler::AddTimer(wxUnixTimerImpl *timer, wxUsecClock_t expiration)
+{
+    DoAddTimer(new wxTimerSchedule(timer, expiration));
+}
+
+void wxTimerScheduler::DoAddTimer(wxTimerSchedule *s)
+{
+    // do an insertion sort to keep the list sorted in expiration order
+    wxTimerList::iterator node;
+    for ( node = m_timers.begin(); node != m_timers.end(); ++node )
+    {
+        wxASSERT_MSG( (*node)->m_timer != s->m_timer,
+                      _T("adding the same timer twice?") );
+
+        if ( (*node)->m_expiration > s->m_expiration )
+            break;
+    }
+
+    m_timers.insert(node, s);
+
+    wxLogTrace(wxTrace_Timer, wxT("Inserted timer %d expiring at %s"),
+               s->m_timer->GetId(),
+               wxUsecClockAsString(s->m_expiration).c_str());
+}
+
+void wxTimerScheduler::RemoveTimer(wxUnixTimerImpl *timer)
+{
+    wxLogTrace(wxTrace_Timer, wxT("Removing timer %d"), timer->GetId());
+
+    for ( wxTimerList::iterator node = m_timers.begin();
+          node != m_timers.end();
+          ++node )
+    {
+        if ( (*node)->m_timer == timer )
+        {
+            delete *node;
+            m_timers.erase(node);
+            return;
+        }
+    }
+
+    wxFAIL_MSG( _T("removing inexistent timer?") );
+}
+
+bool wxTimerScheduler::GetNext(wxUsecClock_t *remaining) const
+{
+    if ( m_timers.empty() )
+      return false;
+
+    wxCHECK_MSG( remaining, false, _T("NULL pointer") );
+
+    *remaining = (*m_timers.begin())->m_expiration - wxGetLocalTimeUsec();
+    if ( *remaining < 0 )
+    {
+        // timer already expired, don't wait at all before notifying it
+        *remaining = 0;
+    }
+
+    return true;
+}
+
+void wxTimerScheduler::NotifyExpired()
+{
+    if ( m_timers.empty() )
+      return;
+
+    const wxUsecClock_t now = wxGetLocalTimeUsec();
+
+    wxTimerList::iterator cur,
+                          next;
+    for ( cur = m_timers.begin(); cur != m_timers.end(); cur = next )
+    {
+        wxTimerSchedule * const s = *cur;
+        if ( s->m_expiration > now )
+        {
+            // as the list is sorted by expiration time, we can skip the rest
+            break;
+        }
+
+        // remember next as we will delete the node pointed to by cur
+        next = cur;
+        ++next;
+
+        m_timers.erase(cur);
+
+        // check whether we need to keep this timer
+        wxUnixTimerImpl * const timer = s->m_timer;
+        if ( timer->IsOneShot() )
+        {
+            // don't need it any more
+            delete s;
+        }
+        else // reschedule the next timer expiration
+        {
+            s->m_expiration += timer->GetInterval()*1000;
+            DoAddTimer(s);
+        }
+
+        // and finally notify the timer
+        timer->Notify();
+    }
+}
+
+// ============================================================================
+// wxUnixTimerImpl implementation
+// ============================================================================
+
+wxUnixTimerImpl::wxUnixTimerImpl(wxTimer* timer)
+               : wxTimerImpl(timer)
+{
+    m_isRunning = false;
+}
+
+bool wxUnixTimerImpl::Start(int milliseconds, bool oneShot)
+{
+    // notice that this will stop an already running timer
+    wxTimerImpl::Start(milliseconds, oneShot);
+
+    wxTimerScheduler::Get().AddTimer(this, wxGetLocalTimeUsec() + m_milli*1000);
+    m_isRunning = true;
+
+    return true;
+}
+
+void wxUnixTimerImpl::Stop()
+{
+    if ( m_isRunning )
+    {
+        wxTimerScheduler::Get().RemoveTimer(this);
+
+        m_isRunning = false;
+    }
+}
+
+bool wxUnixTimerImpl::IsRunning() const
+{
+    return m_isRunning;
+}
+
+wxUnixTimerImpl::~wxUnixTimerImpl()
+{
+    wxASSERT_MSG( !m_isRunning, _T("must have been stopped before") );
+}
+
+// ============================================================================
+// wxTimerUnixModule: responsible for freeing the global timer scheduler
+// ============================================================================
+
+class wxTimerUnixModule : public wxModule
+{
+public:
+    wxTimerUnixModule() {}
+    virtual bool OnInit() { return true; }
+    virtual void OnExit() { wxTimerScheduler::Shutdown(); }
+
+    DECLARE_DYNAMIC_CLASS(wxTimerUnixModule)
+};
+
+IMPLEMENT_DYNAMIC_CLASS(wxTimerUnixModule, wxModule)
+
+// ============================================================================
+// global functions
+// ============================================================================
+
+wxUsecClock_t wxGetLocalTimeUsec()
+{
+#ifdef HAVE_GETTIMEOFDAY
+    struct timeval tv;
+    if ( wxGetTimeOfDay(&tv) != -1 )
+    {
+        wxUsecClock_t val = 1000000L; // usec/sec
+        val *= tv.tv_sec;
+        return val + tv.tv_usec;
+    }
+#endif // HAVE_GETTIMEOFDAY
+
+    return wxGetLocalTimeMillis() * 1000L;
+}
+
index afcc29cb00f76d75223715857ae60e83647a565b..ab6b3fc909699910578bcb7869bc1bb0e175ae79 100644 (file)
@@ -22,7 +22,6 @@
     #include "wx/frame.h"
     #include "wx/icon.h"
     #include "wx/dialog.h"
-    #include "wx/timer.h"
     #include "wx/memory.h"
     #include "wx/gdicmn.h"
     #include "wx/module.h"
@@ -33,6 +32,7 @@
 
 #include "wx/univ/theme.h"
 #include "wx/univ/renderer.h"
+#include "wx/generic/private/timer.h"
 
 #if wxUSE_THREADS
     #include "wx/thread.h"
@@ -812,7 +812,7 @@ bool wxApp::Yield(bool onlyIfNeeded)
             wxTheApp->Dispatch();
 
 #if wxUSE_TIMER
-        wxTimer::NotifyTimers();
+        wxGenericTimerImpl::NotifyTimers();
 #endif
         ProcessIdle();
 
index 5609a82ab11800a98c84ab57339c74ce6bf6f6db..f718baab539645511f283b6f71a42f721175c041 100644 (file)
@@ -26,7 +26,6 @@
     #include "wx/hash.h"
     #include "wx/app.h"
     #include "wx/window.h"
-    #include "wx/timer.h"
     #include "wx/module.h"
 #endif
 
@@ -34,6 +33,7 @@
 #include "wx/unix/private.h"
 #include "wx/x11/private.h"
 #include "X11/Xlib.h"
+#include "wx/generic/private/timer.h"
 
 #if wxUSE_THREADS
     #include "wx/thread.h"
@@ -165,7 +165,7 @@ int wxEventLoop::Run()
         while ( ! Pending() )
         {
 #if wxUSE_TIMER
-            wxTimer::NotifyTimers(); // TODO: is this the correct place for it?
+            wxGenericTimerImpl::NotifyTimers(); // TODO: is this the correct place for it?
 #endif
             if (!m_impl->SendIdleEvent())
             {
index eea2b4d6fe58477ce0b39a729a2c7dd2a5f42f43..ac394ccf1a9512c599d4b230973715591fa13646 100644 (file)
@@ -39,6 +39,8 @@
 #include "wx/x11/private.h"
 #include "X11/Xatom.h"
 
+#include "wx/generic/private/timer.h"
+
 /*
  * wxAdoptedWindow
  */
@@ -173,7 +175,7 @@ bool wxReparenter::WaitAndReparent(wxWindow* newParent, wxAdoptedWindow* toRepar
         else
         {
 #if wxUSE_TIMER
-            wxTimer::NotifyTimers();
+            wxGenericTimerImpl::NotifyTimers();
             wxTheApp->ProcessIdle();
 #endif
         }
index 80e3fcacdabbe901de175ab01000f63d2e717206..665d4a2ec9d4453fdc2de0928a3199ad2f5d249b 100644 (file)
@@ -34,6 +34,7 @@
 #endif
 
 #include "wx/apptrait.h"
+#include "wx/generic/private/timer.h"
 
 #include <ctype.h>
 #include <stdarg.h>
@@ -169,7 +170,6 @@ wxPortId wxGUIAppTraits::GetToolkitVersion(int *verMaj, int *verMin) const
     return wxPORT_X11;
 }
 
-
 // ----------------------------------------------------------------------------
 // display info
 // ----------------------------------------------------------------------------