From 3f84cb17cabbe9ebd2e7c04ace41285efcac99aa Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Fri, 6 Mar 2015 17:43:29 +0100 Subject: [PATCH] Add wxActivityIndicator control. This is a simple animated control indicating some program activity. Provide native GTK+ (for > 2.20) and OS X implementations as well as a generic one used under MSW. Update the sample and the documentation. --- Makefile.in | 315 ++++++++++++++---- build/bakefiles/files.bkl | 16 + build/files | 16 + build/msw/wx_adv.vcxproj | 5 +- build/msw/wx_adv.vcxproj.filters | 9 + build/msw/wx_vc7_adv.vcproj | 9 + build/msw/wx_vc7_core.vcproj | 6 + build/msw/wx_vc8_adv.vcproj | 12 + build/msw/wx_vc8_core.vcproj | 8 + build/msw/wx_vc9_adv.vcproj | 12 + build/msw/wx_vc9_core.vcproj | 8 + configure | 53 ++- configure.in | 5 + docs/changes.txt | 1 + .../images/appear-activityindicator-gtk.png | Bin 0 -> 1464 bytes .../images/appear-activityindicator-mac.png | Bin 0 -> 1074 bytes .../images/appear-activityindicator-msw.png | Bin 0 -> 650 bytes docs/doxygen/mainpages/cat_classes.h | 1 + docs/doxygen/mainpages/const_wxusedef.h | 1 + docs/doxygen/mainpages/screenshots.h | 1 + include/wx/activityindicator.h | 60 ++++ include/wx/android/setup.h | 1 + include/wx/chkconf.h | 8 + include/wx/generic/activityindicator.h | 67 ++++ include/wx/gtk/activityindicator.h | 66 ++++ include/wx/gtk/private/value.h | 43 +++ include/wx/gtk/setup0.h | 1 + include/wx/motif/setup0.h | 1 + include/wx/msw/setup0.h | 1 + include/wx/msw/wince/setup.h | 1 + include/wx/osx/activityindicator.h | 59 ++++ include/wx/osx/setup0.h | 1 + include/wx/setup_inc.h | 1 + include/wx/univ/setup0.h | 1 + interface/wx/activityindicator.h | 80 +++++ samples/widgets/Makefile.in | 4 + samples/widgets/activityindicator.cpp | 151 +++++++++ samples/widgets/icons/activityindicator.xpm | 278 ++++++++++++++++ samples/widgets/makefile.bcc | 4 + samples/widgets/makefile.gcc | 4 + samples/widgets/makefile.unx | 4 + samples/widgets/makefile.vc | 4 + samples/widgets/widgets.bkl | 1 + samples/widgets/widgets_vc7.vcproj | 3 + samples/widgets/widgets_vc8.vcproj | 4 + samples/widgets/widgets_vc9.vcproj | 4 + setup.h.in | 1 + src/generic/activityindicator.cpp | 260 +++++++++++++++ src/gtk/activityindicator.cpp | 168 ++++++++++ src/osx/cocoa/activityindicator.mm | 111 ++++++ 50 files changed, 1800 insertions(+), 70 deletions(-) create mode 100644 docs/doxygen/images/appear-activityindicator-gtk.png create mode 100644 docs/doxygen/images/appear-activityindicator-mac.png create mode 100644 docs/doxygen/images/appear-activityindicator-msw.png create mode 100644 include/wx/activityindicator.h create mode 100644 include/wx/generic/activityindicator.h create mode 100644 include/wx/gtk/activityindicator.h create mode 100644 include/wx/gtk/private/value.h create mode 100644 include/wx/osx/activityindicator.h create mode 100644 interface/wx/activityindicator.h create mode 100644 samples/widgets/activityindicator.cpp create mode 100644 samples/widgets/icons/activityindicator.xpm create mode 100644 src/generic/activityindicator.cpp create mode 100644 src/gtk/activityindicator.cpp create mode 100644 src/osx/cocoa/activityindicator.mm diff --git a/Makefile.in b/Makefile.in index 66c6f547f7..81960e11ae 100644 --- a/Makefile.in +++ b/Makefile.in @@ -3747,22 +3747,28 @@ COND_TOOLKIT_GTK_TOOLKIT_VERSION__ADVANCED_PLATFORM_HDR = \ wx/unix/joystick.h \ wx/unix/sound.h \ wx/unix/taskbarx11.h \ - wx/generic/animate.h + wx/generic/animate.h \ + wx/generic/activityindicator.h @COND_TOOLKIT_GTK_TOOLKIT_VERSION_@ADVANCED_PLATFORM_HDR = $(COND_TOOLKIT_GTK_TOOLKIT_VERSION__ADVANCED_PLATFORM_HDR) COND_TOOLKIT_GTK_TOOLKIT_VERSION_2_ADVANCED_PLATFORM_HDR = \ $(ADVANCED_GTK_PLATFORM_HDR) \ wx/gtk/notifmsg.h \ wx/gtk/taskbar.h \ + wx/generic/activityindicator.h \ wx/gtk/hildon/notifmsg.h @COND_TOOLKIT_GTK_TOOLKIT_VERSION_2@ADVANCED_PLATFORM_HDR = $(COND_TOOLKIT_GTK_TOOLKIT_VERSION_2_ADVANCED_PLATFORM_HDR) -@COND_TOOLKIT_GTK_TOOLKIT_VERSION_3@ADVANCED_PLATFORM_HDR \ -@COND_TOOLKIT_GTK_TOOLKIT_VERSION_3@ = $(ADVANCED_GTK_PLATFORM_HDR) \ -@COND_TOOLKIT_GTK_TOOLKIT_VERSION_3@ wx/gtk/notifmsg.h wx/gtk/taskbar.h +COND_TOOLKIT_GTK_TOOLKIT_VERSION_3_ADVANCED_PLATFORM_HDR = \ + $(ADVANCED_GTK_PLATFORM_HDR) \ + wx/gtk/notifmsg.h \ + wx/gtk/taskbar.h \ + wx/generic/activityindicator.h +@COND_TOOLKIT_GTK_TOOLKIT_VERSION_3@ADVANCED_PLATFORM_HDR = $(COND_TOOLKIT_GTK_TOOLKIT_VERSION_3_ADVANCED_PLATFORM_HDR) COND_TOOLKIT_MOTIF_ADVANCED_PLATFORM_HDR = \ wx/unix/joystick.h \ wx/unix/sound.h \ wx/unix/taskbarx11.h \ - wx/generic/animate.h + wx/generic/animate.h \ + wx/generic/animateanimate.h @COND_TOOLKIT_MOTIF@ADVANCED_PLATFORM_HDR = $(COND_TOOLKIT_MOTIF_ADVANCED_PLATFORM_HDR) @COND_TOOLKIT_MSW@ADVANCED_PLATFORM_HDR = \ @COND_TOOLKIT_MSW@ wx/msw/notifmsg.h wx/msw/sound.h wx/msw/taskbar.h \ @@ -3777,7 +3783,8 @@ COND_TOOLKIT_OSX_CARBON_ADVANCED_PLATFORM_HDR = \ wx/osx/taskbarosx.h \ wx/osx/carbon/drawer.h \ wx/osx/carbon/dataview.h \ - wx/osx/core/joystick.h + wx/osx/core/joystick.h \ + wx/generic/activityindicator.h @COND_TOOLKIT_OSX_CARBON@ADVANCED_PLATFORM_HDR = $(COND_TOOLKIT_OSX_CARBON_ADVANCED_PLATFORM_HDR) COND_TOOLKIT_OSX_COCOA_ADVANCED_PLATFORM_HDR = \ wx/generic/animate.h \ @@ -3791,7 +3798,8 @@ COND_TOOLKIT_OSX_COCOA_ADVANCED_PLATFORM_HDR = \ wx/osx/taskbarosx.h \ wx/osx/timectrl.h \ wx/osx/core/joystick.h \ - wx/osx/cocoa/dataview.h + wx/osx/cocoa/dataview.h \ + wx/osx/cocoa/activityindicator.h @COND_TOOLKIT_OSX_COCOA@ADVANCED_PLATFORM_HDR = $(COND_TOOLKIT_OSX_COCOA_ADVANCED_PLATFORM_HDR) @COND_TOOLKIT_OSX_IPHONE@ADVANCED_PLATFORM_HDR = \ @COND_TOOLKIT_OSX_IPHONE@ wx/generic/animate.h wx/osx/sound.h @@ -3814,7 +3822,8 @@ COND_TOOLKIT_GTK_TOOLKIT_VERSION_2_ADVANCED_PLATFORM_NATIVE_HDR = \ wx/gtk/dataview.h \ wx/gtk/dvrenderer.h \ wx/gtk/dvrenderers.h \ - wx/gtk/hyperlink.h + wx/gtk/hyperlink.h \ + wx/gtk/activityindicator.h @COND_TOOLKIT_GTK_TOOLKIT_VERSION_2@ADVANCED_PLATFORM_NATIVE_HDR = $(COND_TOOLKIT_GTK_TOOLKIT_VERSION_2_ADVANCED_PLATFORM_NATIVE_HDR) COND_TOOLKIT_GTK_TOOLKIT_VERSION_3_ADVANCED_PLATFORM_NATIVE_HDR = \ wx/gtk/animate.h \ @@ -3823,7 +3832,8 @@ COND_TOOLKIT_GTK_TOOLKIT_VERSION_3_ADVANCED_PLATFORM_NATIVE_HDR = \ wx/gtk/dataview.h \ wx/gtk/dvrenderer.h \ wx/gtk/dvrenderers.h \ - wx/gtk/hyperlink.h + wx/gtk/hyperlink.h \ + wx/gtk/activityindicator.h @COND_TOOLKIT_GTK_TOOLKIT_VERSION_3@ADVANCED_PLATFORM_NATIVE_HDR = $(COND_TOOLKIT_GTK_TOOLKIT_VERSION_3_ADVANCED_PLATFORM_NATIVE_HDR) COND_TOOLKIT_MSW_ADVANCED_PLATFORM_NATIVE_HDR = \ wx/generic/animate.h \ @@ -3833,7 +3843,8 @@ COND_TOOLKIT_MSW_ADVANCED_PLATFORM_NATIVE_HDR = \ wx/msw/datectrl.h \ wx/msw/datetimectrl.h \ wx/msw/hyperlink.h \ - wx/msw/timectrl.h + wx/msw/timectrl.h \ + wx/generic/activityindicator.h @COND_TOOLKIT_MSW@ADVANCED_PLATFORM_NATIVE_HDR = $(COND_TOOLKIT_MSW_ADVANCED_PLATFORM_NATIVE_HDR) COND_TOOLKIT_WINCE_ADVANCED_PLATFORM_NATIVE_HDR = \ wx/generic/animate.h \ @@ -3843,7 +3854,8 @@ COND_TOOLKIT_WINCE_ADVANCED_PLATFORM_NATIVE_HDR = \ wx/msw/datectrl.h \ wx/msw/datetimectrl.h \ wx/msw/hyperlink.h \ - wx/msw/timectrl.h + wx/msw/timectrl.h \ + wx/generic/activityindicator.h @COND_TOOLKIT_WINCE@ADVANCED_PLATFORM_NATIVE_HDR = $(COND_TOOLKIT_WINCE_ADVANCED_PLATFORM_NATIVE_HDR) COND_WXUNIV_0_ADVANCED_HDR = \ wx/aboutdlg.h \ @@ -3896,6 +3908,7 @@ COND_WXUNIV_0_ADVANCED_HDR = \ wx/treelist.h \ wx/wizard.h \ wx/addremovectrl.h \ + wx/activityindicator.h \ $(ADVANCED_PLATFORM_HDR) \ $(ADVANCED_PLATFORM_NATIVE_HDR) @COND_WXUNIV_0@ADVANCED_HDR = $(COND_WXUNIV_0_ADVANCED_HDR) @@ -3950,6 +3963,7 @@ COND_WXUNIV_1_ADVANCED_HDR = \ wx/treelist.h \ wx/wizard.h \ wx/addremovectrl.h \ + wx/activityindicator.h \ $(ADVANCED_PLATFORM_HDR) \ wx/generic/animate.h @COND_WXUNIV_1@ADVANCED_HDR = $(COND_WXUNIV_1_ADVANCED_HDR) @@ -4022,7 +4036,8 @@ COND_USE_GUI_1_WXUNIV_1_GUI_CORE_HEADERS = \ wx/univ/tglbtn.h \ wx/univ/toolbar.h \ wx/univ/toplevel.h \ - wx/univ/window.h + wx/univ/window.h \ + wx/generic/activityindicator.h @COND_USE_GUI_1_WXUNIV_1@GUI_CORE_HEADERS = $(COND_USE_GUI_1_WXUNIV_1_GUI_CORE_HEADERS) COND_USE_GUI_1_ALL_GUI_HEADERS = \ wx/affinematrix2dbase.h \ @@ -6555,14 +6570,16 @@ COND_TOOLKIT_GTK_TOOLKIT_VERSION____ADVANCED_PLATFORM_SRC_OBJECTS = \ monodll_taskbarx11.o \ monodll_animateg.o \ monodll_gtk1_eggtrayicon.o \ - monodll_gtk1_taskbar.o + monodll_gtk1_taskbar.o \ + monodll_generic_activityindicator.o @COND_TOOLKIT_GTK_TOOLKIT_VERSION_@__ADVANCED_PLATFORM_SRC_OBJECTS = $(COND_TOOLKIT_GTK_TOOLKIT_VERSION____ADVANCED_PLATFORM_SRC_OBJECTS) COND_TOOLKIT_GTK_TOOLKIT_VERSION_2___ADVANCED_PLATFORM_SRC_OBJECTS = \ $(__ADVANCED_GTK_PLATFORM_SRC_OBJECTS) \ monodll_gtk_notifmsg.o \ monodll_gtk_taskbar.o \ monodll_gtk_eggtrayicon.o \ - monodll_hildon_notifmsg.o + monodll_hildon_notifmsg.o \ + monodll_generic_activityindicator.o @COND_TOOLKIT_GTK_TOOLKIT_VERSION_2@__ADVANCED_PLATFORM_SRC_OBJECTS = $(COND_TOOLKIT_GTK_TOOLKIT_VERSION_2___ADVANCED_PLATFORM_SRC_OBJECTS) COND_TOOLKIT_GTK_TOOLKIT_VERSION_3___ADVANCED_PLATFORM_SRC_OBJECTS = \ $(__ADVANCED_GTK_PLATFORM_SRC_OBJECTS) \ @@ -6574,7 +6591,8 @@ COND_TOOLKIT_MOTIF___ADVANCED_PLATFORM_SRC_OBJECTS = \ monodll_unix_joystick.o \ monodll_unix_sound.o \ monodll_taskbarx11.o \ - monodll_animateg.o + monodll_animateg.o \ + monodll_generic_activityindicator.o @COND_TOOLKIT_MOTIF@__ADVANCED_PLATFORM_SRC_OBJECTS = $(COND_TOOLKIT_MOTIF___ADVANCED_PLATFORM_SRC_OBJECTS) COND_TOOLKIT_MSW___ADVANCED_PLATFORM_SRC_OBJECTS = \ monodll_taskbarcmn.o \ @@ -6595,7 +6613,8 @@ COND_TOOLKIT_OSX_CARBON___ADVANCED_PLATFORM_SRC_OBJECTS = \ monodll_sound_osx.o \ monodll_carbon_sound.o \ monodll_carbon_taskbar.o \ - monodll_hidjoystick.o + monodll_hidjoystick.o \ + monodll_generic_activityindicator.o @COND_TOOLKIT_OSX_CARBON@__ADVANCED_PLATFORM_SRC_OBJECTS = $(COND_TOOLKIT_OSX_CARBON___ADVANCED_PLATFORM_SRC_OBJECTS) COND_TOOLKIT_OSX_COCOA___ADVANCED_PLATFORM_SRC_OBJECTS = \ monodll_taskbarcmn.o \ @@ -6611,7 +6630,8 @@ COND_TOOLKIT_OSX_COCOA___ADVANCED_PLATFORM_SRC_OBJECTS = \ monodll_cocoa_dataview.o \ monodll_cocoa_datetimectrl.o \ monodll_osx_cocoa_taskbar.o \ - monodll_hidjoystick.o + monodll_hidjoystick.o \ + monodll_cocoa_activityindicator.o @COND_TOOLKIT_OSX_COCOA@__ADVANCED_PLATFORM_SRC_OBJECTS = $(COND_TOOLKIT_OSX_COCOA___ADVANCED_PLATFORM_SRC_OBJECTS) @COND_TOOLKIT_OSX_IPHONE@__ADVANCED_PLATFORM_SRC_OBJECTS \ @COND_TOOLKIT_OSX_IPHONE@ = monodll_animateg.o monodll_sound_osx.o \ @@ -6649,7 +6669,8 @@ COND_TOOLKIT_GTK_TOOLKIT_VERSION_2___ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS = \ monodll_gtk_bmpcbox.o \ monodll_gtk_calctrl.o \ monodll_gtk_dataview.o \ - monodll_gtk_hyperlink.o + monodll_gtk_hyperlink.o \ + monodll_gtk_activityindicator.o @COND_TOOLKIT_GTK_TOOLKIT_VERSION_2@__ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS = $(COND_TOOLKIT_GTK_TOOLKIT_VERSION_2___ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS) COND_TOOLKIT_GTK_TOOLKIT_VERSION_3___ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS = \ monodll_gtk_aboutdlg.o \ @@ -6657,7 +6678,8 @@ COND_TOOLKIT_GTK_TOOLKIT_VERSION_3___ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS = \ monodll_gtk_bmpcbox.o \ monodll_gtk_calctrl.o \ monodll_gtk_dataview.o \ - monodll_gtk_hyperlink.o + monodll_gtk_hyperlink.o \ + monodll_gtk_activityindicator.o @COND_TOOLKIT_GTK_TOOLKIT_VERSION_3@__ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS = $(COND_TOOLKIT_GTK_TOOLKIT_VERSION_3___ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS) COND_TOOLKIT_MSW___ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS = \ monodll_animateg.o \ @@ -6668,7 +6690,8 @@ COND_TOOLKIT_MSW___ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS = \ monodll_datectrl.o \ monodll_msw_datetimectrl.o \ monodll_msw_hyperlink.o \ - monodll_timectrl.o + monodll_timectrl.o \ + monodll_generic_activityindicator.o @COND_TOOLKIT_MSW@__ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS = $(COND_TOOLKIT_MSW___ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS) COND_TOOLKIT_WINCE___ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS = \ monodll_animateg.o \ @@ -6679,7 +6702,8 @@ COND_TOOLKIT_WINCE___ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS = \ monodll_datectrl.o \ monodll_msw_datetimectrl.o \ monodll_msw_hyperlink.o \ - monodll_timectrl.o + monodll_timectrl.o \ + monodll_generic_activityindicator.o @COND_TOOLKIT_WINCE@__ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS = $(COND_TOOLKIT_WINCE___ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS) COND_TOOLKIT_COCOA___ADVANCED_PLATFORM_SRC_OBJECTS_1 = \ monodll_src_cocoa_taskbar.o \ @@ -6694,14 +6718,16 @@ COND_TOOLKIT_GTK_TOOLKIT_VERSION____ADVANCED_PLATFORM_SRC_OBJECTS_1 = \ monodll_taskbarx11.o \ monodll_animateg.o \ monodll_gtk1_eggtrayicon.o \ - monodll_gtk1_taskbar.o + monodll_gtk1_taskbar.o \ + monodll_generic_activityindicator.o @COND_TOOLKIT_GTK_TOOLKIT_VERSION_@__ADVANCED_PLATFORM_SRC_OBJECTS_1 = $(COND_TOOLKIT_GTK_TOOLKIT_VERSION____ADVANCED_PLATFORM_SRC_OBJECTS_1) COND_TOOLKIT_GTK_TOOLKIT_VERSION_2___ADVANCED_PLATFORM_SRC_OBJECTS_1 = \ $(__ADVANCED_GTK_PLATFORM_SRC_OBJECTS) \ monodll_gtk_notifmsg.o \ monodll_gtk_taskbar.o \ monodll_gtk_eggtrayicon.o \ - monodll_hildon_notifmsg.o + monodll_hildon_notifmsg.o \ + monodll_generic_activityindicator.o @COND_TOOLKIT_GTK_TOOLKIT_VERSION_2@__ADVANCED_PLATFORM_SRC_OBJECTS_1 = $(COND_TOOLKIT_GTK_TOOLKIT_VERSION_2___ADVANCED_PLATFORM_SRC_OBJECTS_1) COND_TOOLKIT_GTK_TOOLKIT_VERSION_3___ADVANCED_PLATFORM_SRC_OBJECTS_1 = \ $(__ADVANCED_GTK_PLATFORM_SRC_OBJECTS) \ @@ -6713,7 +6739,8 @@ COND_TOOLKIT_MOTIF___ADVANCED_PLATFORM_SRC_OBJECTS_1 = \ monodll_unix_joystick.o \ monodll_unix_sound.o \ monodll_taskbarx11.o \ - monodll_animateg.o + monodll_animateg.o \ + monodll_generic_activityindicator.o @COND_TOOLKIT_MOTIF@__ADVANCED_PLATFORM_SRC_OBJECTS_1 = $(COND_TOOLKIT_MOTIF___ADVANCED_PLATFORM_SRC_OBJECTS_1) COND_TOOLKIT_MSW___ADVANCED_PLATFORM_SRC_OBJECTS_1 = \ monodll_taskbarcmn.o \ @@ -6734,7 +6761,8 @@ COND_TOOLKIT_OSX_CARBON___ADVANCED_PLATFORM_SRC_OBJECTS_1 = \ monodll_sound_osx.o \ monodll_carbon_sound.o \ monodll_carbon_taskbar.o \ - monodll_hidjoystick.o + monodll_hidjoystick.o \ + monodll_generic_activityindicator.o @COND_TOOLKIT_OSX_CARBON@__ADVANCED_PLATFORM_SRC_OBJECTS_1 = $(COND_TOOLKIT_OSX_CARBON___ADVANCED_PLATFORM_SRC_OBJECTS_1) COND_TOOLKIT_OSX_COCOA___ADVANCED_PLATFORM_SRC_OBJECTS_1 = \ monodll_taskbarcmn.o \ @@ -6750,7 +6778,8 @@ COND_TOOLKIT_OSX_COCOA___ADVANCED_PLATFORM_SRC_OBJECTS_1 = \ monodll_cocoa_dataview.o \ monodll_cocoa_datetimectrl.o \ monodll_osx_cocoa_taskbar.o \ - monodll_hidjoystick.o + monodll_hidjoystick.o \ + monodll_cocoa_activityindicator.o @COND_TOOLKIT_OSX_COCOA@__ADVANCED_PLATFORM_SRC_OBJECTS_1 = $(COND_TOOLKIT_OSX_COCOA___ADVANCED_PLATFORM_SRC_OBJECTS_1) @COND_TOOLKIT_OSX_IPHONE@__ADVANCED_PLATFORM_SRC_OBJECTS_1 \ @COND_TOOLKIT_OSX_IPHONE@ = monodll_animateg.o monodll_sound_osx.o \ @@ -8915,14 +8944,16 @@ COND_TOOLKIT_GTK_TOOLKIT_VERSION____ADVANCED_PLATFORM_SRC_OBJECTS_2 = \ monolib_taskbarx11.o \ monolib_animateg.o \ monolib_gtk1_eggtrayicon.o \ - monolib_gtk1_taskbar.o + monolib_gtk1_taskbar.o \ + monolib_generic_activityindicator.o @COND_TOOLKIT_GTK_TOOLKIT_VERSION_@__ADVANCED_PLATFORM_SRC_OBJECTS_2 = $(COND_TOOLKIT_GTK_TOOLKIT_VERSION____ADVANCED_PLATFORM_SRC_OBJECTS_2) COND_TOOLKIT_GTK_TOOLKIT_VERSION_2___ADVANCED_PLATFORM_SRC_OBJECTS_2 = \ $(__ADVANCED_GTK_PLATFORM_SRC_OBJECTS_17) \ monolib_gtk_notifmsg.o \ monolib_gtk_taskbar.o \ monolib_gtk_eggtrayicon.o \ - monolib_hildon_notifmsg.o + monolib_hildon_notifmsg.o \ + monolib_generic_activityindicator.o @COND_TOOLKIT_GTK_TOOLKIT_VERSION_2@__ADVANCED_PLATFORM_SRC_OBJECTS_2 = $(COND_TOOLKIT_GTK_TOOLKIT_VERSION_2___ADVANCED_PLATFORM_SRC_OBJECTS_2) COND_TOOLKIT_GTK_TOOLKIT_VERSION_3___ADVANCED_PLATFORM_SRC_OBJECTS_2 = \ $(__ADVANCED_GTK_PLATFORM_SRC_OBJECTS_17) \ @@ -8934,7 +8965,8 @@ COND_TOOLKIT_MOTIF___ADVANCED_PLATFORM_SRC_OBJECTS_2 = \ monolib_unix_joystick.o \ monolib_unix_sound.o \ monolib_taskbarx11.o \ - monolib_animateg.o + monolib_animateg.o \ + monolib_generic_activityindicator.o @COND_TOOLKIT_MOTIF@__ADVANCED_PLATFORM_SRC_OBJECTS_2 = $(COND_TOOLKIT_MOTIF___ADVANCED_PLATFORM_SRC_OBJECTS_2) COND_TOOLKIT_MSW___ADVANCED_PLATFORM_SRC_OBJECTS_2 = \ monolib_taskbarcmn.o \ @@ -8955,7 +8987,8 @@ COND_TOOLKIT_OSX_CARBON___ADVANCED_PLATFORM_SRC_OBJECTS_2 = \ monolib_sound_osx.o \ monolib_carbon_sound.o \ monolib_carbon_taskbar.o \ - monolib_hidjoystick.o + monolib_hidjoystick.o \ + monolib_generic_activityindicator.o @COND_TOOLKIT_OSX_CARBON@__ADVANCED_PLATFORM_SRC_OBJECTS_2 = $(COND_TOOLKIT_OSX_CARBON___ADVANCED_PLATFORM_SRC_OBJECTS_2) COND_TOOLKIT_OSX_COCOA___ADVANCED_PLATFORM_SRC_OBJECTS_2 = \ monolib_taskbarcmn.o \ @@ -8971,7 +9004,8 @@ COND_TOOLKIT_OSX_COCOA___ADVANCED_PLATFORM_SRC_OBJECTS_2 = \ monolib_cocoa_dataview.o \ monolib_cocoa_datetimectrl.o \ monolib_osx_cocoa_taskbar.o \ - monolib_hidjoystick.o + monolib_hidjoystick.o \ + monolib_cocoa_activityindicator.o @COND_TOOLKIT_OSX_COCOA@__ADVANCED_PLATFORM_SRC_OBJECTS_2 = $(COND_TOOLKIT_OSX_COCOA___ADVANCED_PLATFORM_SRC_OBJECTS_2) @COND_TOOLKIT_OSX_IPHONE@__ADVANCED_PLATFORM_SRC_OBJECTS_2 \ @COND_TOOLKIT_OSX_IPHONE@ = monolib_animateg.o monolib_sound_osx.o \ @@ -9009,7 +9043,8 @@ COND_TOOLKIT_GTK_TOOLKIT_VERSION_2___ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_1 = \ monolib_gtk_bmpcbox.o \ monolib_gtk_calctrl.o \ monolib_gtk_dataview.o \ - monolib_gtk_hyperlink.o + monolib_gtk_hyperlink.o \ + monolib_gtk_activityindicator.o @COND_TOOLKIT_GTK_TOOLKIT_VERSION_2@__ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_1 = $(COND_TOOLKIT_GTK_TOOLKIT_VERSION_2___ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_1) COND_TOOLKIT_GTK_TOOLKIT_VERSION_3___ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_1 = \ monolib_gtk_aboutdlg.o \ @@ -9017,7 +9052,8 @@ COND_TOOLKIT_GTK_TOOLKIT_VERSION_3___ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_1 = \ monolib_gtk_bmpcbox.o \ monolib_gtk_calctrl.o \ monolib_gtk_dataview.o \ - monolib_gtk_hyperlink.o + monolib_gtk_hyperlink.o \ + monolib_gtk_activityindicator.o @COND_TOOLKIT_GTK_TOOLKIT_VERSION_3@__ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_1 = $(COND_TOOLKIT_GTK_TOOLKIT_VERSION_3___ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_1) COND_TOOLKIT_MSW___ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_1 = \ monolib_animateg.o \ @@ -9028,7 +9064,8 @@ COND_TOOLKIT_MSW___ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_1 = \ monolib_datectrl.o \ monolib_msw_datetimectrl.o \ monolib_msw_hyperlink.o \ - monolib_timectrl.o + monolib_timectrl.o \ + monolib_generic_activityindicator.o @COND_TOOLKIT_MSW@__ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_1 = $(COND_TOOLKIT_MSW___ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_1) COND_TOOLKIT_WINCE___ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_1 = \ monolib_animateg.o \ @@ -9039,7 +9076,8 @@ COND_TOOLKIT_WINCE___ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_1 = \ monolib_datectrl.o \ monolib_msw_datetimectrl.o \ monolib_msw_hyperlink.o \ - monolib_timectrl.o + monolib_timectrl.o \ + monolib_generic_activityindicator.o @COND_TOOLKIT_WINCE@__ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_1 = $(COND_TOOLKIT_WINCE___ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_1) COND_TOOLKIT_COCOA___ADVANCED_PLATFORM_SRC_OBJECTS_3 = \ monolib_src_cocoa_taskbar.o \ @@ -9054,14 +9092,16 @@ COND_TOOLKIT_GTK_TOOLKIT_VERSION____ADVANCED_PLATFORM_SRC_OBJECTS_3 = \ monolib_taskbarx11.o \ monolib_animateg.o \ monolib_gtk1_eggtrayicon.o \ - monolib_gtk1_taskbar.o + monolib_gtk1_taskbar.o \ + monolib_generic_activityindicator.o @COND_TOOLKIT_GTK_TOOLKIT_VERSION_@__ADVANCED_PLATFORM_SRC_OBJECTS_3 = $(COND_TOOLKIT_GTK_TOOLKIT_VERSION____ADVANCED_PLATFORM_SRC_OBJECTS_3) COND_TOOLKIT_GTK_TOOLKIT_VERSION_2___ADVANCED_PLATFORM_SRC_OBJECTS_3 = \ $(__ADVANCED_GTK_PLATFORM_SRC_OBJECTS_17) \ monolib_gtk_notifmsg.o \ monolib_gtk_taskbar.o \ monolib_gtk_eggtrayicon.o \ - monolib_hildon_notifmsg.o + monolib_hildon_notifmsg.o \ + monolib_generic_activityindicator.o @COND_TOOLKIT_GTK_TOOLKIT_VERSION_2@__ADVANCED_PLATFORM_SRC_OBJECTS_3 = $(COND_TOOLKIT_GTK_TOOLKIT_VERSION_2___ADVANCED_PLATFORM_SRC_OBJECTS_3) COND_TOOLKIT_GTK_TOOLKIT_VERSION_3___ADVANCED_PLATFORM_SRC_OBJECTS_3 = \ $(__ADVANCED_GTK_PLATFORM_SRC_OBJECTS_17) \ @@ -9073,7 +9113,8 @@ COND_TOOLKIT_MOTIF___ADVANCED_PLATFORM_SRC_OBJECTS_3 = \ monolib_unix_joystick.o \ monolib_unix_sound.o \ monolib_taskbarx11.o \ - monolib_animateg.o + monolib_animateg.o \ + monolib_generic_activityindicator.o @COND_TOOLKIT_MOTIF@__ADVANCED_PLATFORM_SRC_OBJECTS_3 = $(COND_TOOLKIT_MOTIF___ADVANCED_PLATFORM_SRC_OBJECTS_3) COND_TOOLKIT_MSW___ADVANCED_PLATFORM_SRC_OBJECTS_3 = \ monolib_taskbarcmn.o \ @@ -9094,7 +9135,8 @@ COND_TOOLKIT_OSX_CARBON___ADVANCED_PLATFORM_SRC_OBJECTS_3 = \ monolib_sound_osx.o \ monolib_carbon_sound.o \ monolib_carbon_taskbar.o \ - monolib_hidjoystick.o + monolib_hidjoystick.o \ + monolib_generic_activityindicator.o @COND_TOOLKIT_OSX_CARBON@__ADVANCED_PLATFORM_SRC_OBJECTS_3 = $(COND_TOOLKIT_OSX_CARBON___ADVANCED_PLATFORM_SRC_OBJECTS_3) COND_TOOLKIT_OSX_COCOA___ADVANCED_PLATFORM_SRC_OBJECTS_3 = \ monolib_taskbarcmn.o \ @@ -9110,7 +9152,8 @@ COND_TOOLKIT_OSX_COCOA___ADVANCED_PLATFORM_SRC_OBJECTS_3 = \ monolib_cocoa_dataview.o \ monolib_cocoa_datetimectrl.o \ monolib_osx_cocoa_taskbar.o \ - monolib_hidjoystick.o + monolib_hidjoystick.o \ + monolib_cocoa_activityindicator.o @COND_TOOLKIT_OSX_COCOA@__ADVANCED_PLATFORM_SRC_OBJECTS_3 = $(COND_TOOLKIT_OSX_COCOA___ADVANCED_PLATFORM_SRC_OBJECTS_3) @COND_TOOLKIT_OSX_IPHONE@__ADVANCED_PLATFORM_SRC_OBJECTS_3 \ @COND_TOOLKIT_OSX_IPHONE@ = monolib_animateg.o monolib_sound_osx.o \ @@ -13280,14 +13323,16 @@ COND_TOOLKIT_GTK_TOOLKIT_VERSION____ADVANCED_PLATFORM_SRC_OBJECTS_4 = \ advdll_taskbarx11.o \ advdll_animateg.o \ advdll_gtk1_eggtrayicon.o \ - advdll_gtk1_taskbar.o + advdll_gtk1_taskbar.o \ + advdll_generic_activityindicator.o @COND_TOOLKIT_GTK_TOOLKIT_VERSION_@__ADVANCED_PLATFORM_SRC_OBJECTS_4 = $(COND_TOOLKIT_GTK_TOOLKIT_VERSION____ADVANCED_PLATFORM_SRC_OBJECTS_4) COND_TOOLKIT_GTK_TOOLKIT_VERSION_2___ADVANCED_PLATFORM_SRC_OBJECTS_4 = \ $(__ADVANCED_GTK_PLATFORM_SRC_OBJECTS_1_1) \ advdll_gtk_notifmsg.o \ advdll_gtk_taskbar.o \ advdll_gtk_eggtrayicon.o \ - advdll_hildon_notifmsg.o + advdll_hildon_notifmsg.o \ + advdll_generic_activityindicator.o @COND_TOOLKIT_GTK_TOOLKIT_VERSION_2@__ADVANCED_PLATFORM_SRC_OBJECTS_4 = $(COND_TOOLKIT_GTK_TOOLKIT_VERSION_2___ADVANCED_PLATFORM_SRC_OBJECTS_4) COND_TOOLKIT_GTK_TOOLKIT_VERSION_3___ADVANCED_PLATFORM_SRC_OBJECTS_4 = \ $(__ADVANCED_GTK_PLATFORM_SRC_OBJECTS_1_1) \ @@ -13299,7 +13344,8 @@ COND_TOOLKIT_MOTIF___ADVANCED_PLATFORM_SRC_OBJECTS_4 = \ advdll_unix_joystick.o \ advdll_unix_sound.o \ advdll_taskbarx11.o \ - advdll_animateg.o + advdll_animateg.o \ + advdll_generic_activityindicator.o @COND_TOOLKIT_MOTIF@__ADVANCED_PLATFORM_SRC_OBJECTS_4 = $(COND_TOOLKIT_MOTIF___ADVANCED_PLATFORM_SRC_OBJECTS_4) COND_TOOLKIT_MSW___ADVANCED_PLATFORM_SRC_OBJECTS_4 = \ advdll_taskbarcmn.o \ @@ -13320,7 +13366,8 @@ COND_TOOLKIT_OSX_CARBON___ADVANCED_PLATFORM_SRC_OBJECTS_4 = \ advdll_sound_osx.o \ advdll_carbon_sound.o \ advdll_carbon_taskbar.o \ - advdll_hidjoystick.o + advdll_hidjoystick.o \ + advdll_generic_activityindicator.o @COND_TOOLKIT_OSX_CARBON@__ADVANCED_PLATFORM_SRC_OBJECTS_4 = $(COND_TOOLKIT_OSX_CARBON___ADVANCED_PLATFORM_SRC_OBJECTS_4) COND_TOOLKIT_OSX_COCOA___ADVANCED_PLATFORM_SRC_OBJECTS_4 = \ advdll_taskbarcmn.o \ @@ -13336,7 +13383,8 @@ COND_TOOLKIT_OSX_COCOA___ADVANCED_PLATFORM_SRC_OBJECTS_4 = \ advdll_cocoa_dataview.o \ advdll_cocoa_datetimectrl.o \ advdll_osx_cocoa_taskbar.o \ - advdll_hidjoystick.o + advdll_hidjoystick.o \ + advdll_cocoa_activityindicator.o @COND_TOOLKIT_OSX_COCOA@__ADVANCED_PLATFORM_SRC_OBJECTS_4 = $(COND_TOOLKIT_OSX_COCOA___ADVANCED_PLATFORM_SRC_OBJECTS_4) @COND_TOOLKIT_OSX_IPHONE@__ADVANCED_PLATFORM_SRC_OBJECTS_4 \ @COND_TOOLKIT_OSX_IPHONE@ = advdll_animateg.o advdll_sound_osx.o \ @@ -13374,7 +13422,8 @@ COND_TOOLKIT_GTK_TOOLKIT_VERSION_2___ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_2 = \ advdll_gtk_bmpcbox.o \ advdll_gtk_calctrl.o \ advdll_gtk_dataview.o \ - advdll_gtk_hyperlink.o + advdll_gtk_hyperlink.o \ + advdll_gtk_activityindicator.o @COND_TOOLKIT_GTK_TOOLKIT_VERSION_2@__ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_2 = $(COND_TOOLKIT_GTK_TOOLKIT_VERSION_2___ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_2) COND_TOOLKIT_GTK_TOOLKIT_VERSION_3___ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_2 = \ advdll_gtk_aboutdlg.o \ @@ -13382,7 +13431,8 @@ COND_TOOLKIT_GTK_TOOLKIT_VERSION_3___ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_2 = \ advdll_gtk_bmpcbox.o \ advdll_gtk_calctrl.o \ advdll_gtk_dataview.o \ - advdll_gtk_hyperlink.o + advdll_gtk_hyperlink.o \ + advdll_gtk_activityindicator.o @COND_TOOLKIT_GTK_TOOLKIT_VERSION_3@__ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_2 = $(COND_TOOLKIT_GTK_TOOLKIT_VERSION_3___ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_2) COND_TOOLKIT_MSW___ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_2 = \ advdll_animateg.o \ @@ -13393,7 +13443,8 @@ COND_TOOLKIT_MSW___ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_2 = \ advdll_datectrl.o \ advdll_msw_datetimectrl.o \ advdll_msw_hyperlink.o \ - advdll_timectrl.o + advdll_timectrl.o \ + advdll_generic_activityindicator.o @COND_TOOLKIT_MSW@__ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_2 = $(COND_TOOLKIT_MSW___ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_2) COND_TOOLKIT_WINCE___ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_2 = \ advdll_animateg.o \ @@ -13404,7 +13455,8 @@ COND_TOOLKIT_WINCE___ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_2 = \ advdll_datectrl.o \ advdll_msw_datetimectrl.o \ advdll_msw_hyperlink.o \ - advdll_timectrl.o + advdll_timectrl.o \ + advdll_generic_activityindicator.o @COND_TOOLKIT_WINCE@__ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_2 = $(COND_TOOLKIT_WINCE___ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_2) COND_TOOLKIT_COCOA___ADVANCED_PLATFORM_SRC_OBJECTS_5 = \ advdll_src_cocoa_taskbar.o \ @@ -13419,14 +13471,16 @@ COND_TOOLKIT_GTK_TOOLKIT_VERSION____ADVANCED_PLATFORM_SRC_OBJECTS_5 = \ advdll_taskbarx11.o \ advdll_animateg.o \ advdll_gtk1_eggtrayicon.o \ - advdll_gtk1_taskbar.o + advdll_gtk1_taskbar.o \ + advdll_generic_activityindicator.o @COND_TOOLKIT_GTK_TOOLKIT_VERSION_@__ADVANCED_PLATFORM_SRC_OBJECTS_5 = $(COND_TOOLKIT_GTK_TOOLKIT_VERSION____ADVANCED_PLATFORM_SRC_OBJECTS_5) COND_TOOLKIT_GTK_TOOLKIT_VERSION_2___ADVANCED_PLATFORM_SRC_OBJECTS_5 = \ $(__ADVANCED_GTK_PLATFORM_SRC_OBJECTS_1_1) \ advdll_gtk_notifmsg.o \ advdll_gtk_taskbar.o \ advdll_gtk_eggtrayicon.o \ - advdll_hildon_notifmsg.o + advdll_hildon_notifmsg.o \ + advdll_generic_activityindicator.o @COND_TOOLKIT_GTK_TOOLKIT_VERSION_2@__ADVANCED_PLATFORM_SRC_OBJECTS_5 = $(COND_TOOLKIT_GTK_TOOLKIT_VERSION_2___ADVANCED_PLATFORM_SRC_OBJECTS_5) COND_TOOLKIT_GTK_TOOLKIT_VERSION_3___ADVANCED_PLATFORM_SRC_OBJECTS_5 = \ $(__ADVANCED_GTK_PLATFORM_SRC_OBJECTS_1_1) \ @@ -13438,7 +13492,8 @@ COND_TOOLKIT_MOTIF___ADVANCED_PLATFORM_SRC_OBJECTS_5 = \ advdll_unix_joystick.o \ advdll_unix_sound.o \ advdll_taskbarx11.o \ - advdll_animateg.o + advdll_animateg.o \ + advdll_generic_activityindicator.o @COND_TOOLKIT_MOTIF@__ADVANCED_PLATFORM_SRC_OBJECTS_5 = $(COND_TOOLKIT_MOTIF___ADVANCED_PLATFORM_SRC_OBJECTS_5) COND_TOOLKIT_MSW___ADVANCED_PLATFORM_SRC_OBJECTS_5 = \ advdll_taskbarcmn.o \ @@ -13459,7 +13514,8 @@ COND_TOOLKIT_OSX_CARBON___ADVANCED_PLATFORM_SRC_OBJECTS_5 = \ advdll_sound_osx.o \ advdll_carbon_sound.o \ advdll_carbon_taskbar.o \ - advdll_hidjoystick.o + advdll_hidjoystick.o \ + advdll_generic_activityindicator.o @COND_TOOLKIT_OSX_CARBON@__ADVANCED_PLATFORM_SRC_OBJECTS_5 = $(COND_TOOLKIT_OSX_CARBON___ADVANCED_PLATFORM_SRC_OBJECTS_5) COND_TOOLKIT_OSX_COCOA___ADVANCED_PLATFORM_SRC_OBJECTS_5 = \ advdll_taskbarcmn.o \ @@ -13475,7 +13531,8 @@ COND_TOOLKIT_OSX_COCOA___ADVANCED_PLATFORM_SRC_OBJECTS_5 = \ advdll_cocoa_dataview.o \ advdll_cocoa_datetimectrl.o \ advdll_osx_cocoa_taskbar.o \ - advdll_hidjoystick.o + advdll_hidjoystick.o \ + advdll_cocoa_activityindicator.o @COND_TOOLKIT_OSX_COCOA@__ADVANCED_PLATFORM_SRC_OBJECTS_5 = $(COND_TOOLKIT_OSX_COCOA___ADVANCED_PLATFORM_SRC_OBJECTS_5) @COND_TOOLKIT_OSX_IPHONE@__ADVANCED_PLATFORM_SRC_OBJECTS_5 \ @COND_TOOLKIT_OSX_IPHONE@ = advdll_animateg.o advdll_sound_osx.o \ @@ -13615,14 +13672,16 @@ COND_TOOLKIT_GTK_TOOLKIT_VERSION____ADVANCED_PLATFORM_SRC_OBJECTS_6 = \ advlib_taskbarx11.o \ advlib_animateg.o \ advlib_gtk1_eggtrayicon.o \ - advlib_gtk1_taskbar.o + advlib_gtk1_taskbar.o \ + advlib_generic_activityindicator.o @COND_TOOLKIT_GTK_TOOLKIT_VERSION_@__ADVANCED_PLATFORM_SRC_OBJECTS_6 = $(COND_TOOLKIT_GTK_TOOLKIT_VERSION____ADVANCED_PLATFORM_SRC_OBJECTS_6) COND_TOOLKIT_GTK_TOOLKIT_VERSION_2___ADVANCED_PLATFORM_SRC_OBJECTS_6 = \ $(__ADVANCED_GTK_PLATFORM_SRC_OBJECTS_1_4) \ advlib_gtk_notifmsg.o \ advlib_gtk_taskbar.o \ advlib_gtk_eggtrayicon.o \ - advlib_hildon_notifmsg.o + advlib_hildon_notifmsg.o \ + advlib_generic_activityindicator.o @COND_TOOLKIT_GTK_TOOLKIT_VERSION_2@__ADVANCED_PLATFORM_SRC_OBJECTS_6 = $(COND_TOOLKIT_GTK_TOOLKIT_VERSION_2___ADVANCED_PLATFORM_SRC_OBJECTS_6) COND_TOOLKIT_GTK_TOOLKIT_VERSION_3___ADVANCED_PLATFORM_SRC_OBJECTS_6 = \ $(__ADVANCED_GTK_PLATFORM_SRC_OBJECTS_1_4) \ @@ -13634,7 +13693,8 @@ COND_TOOLKIT_MOTIF___ADVANCED_PLATFORM_SRC_OBJECTS_6 = \ advlib_unix_joystick.o \ advlib_unix_sound.o \ advlib_taskbarx11.o \ - advlib_animateg.o + advlib_animateg.o \ + advlib_generic_activityindicator.o @COND_TOOLKIT_MOTIF@__ADVANCED_PLATFORM_SRC_OBJECTS_6 = $(COND_TOOLKIT_MOTIF___ADVANCED_PLATFORM_SRC_OBJECTS_6) COND_TOOLKIT_MSW___ADVANCED_PLATFORM_SRC_OBJECTS_6 = \ advlib_taskbarcmn.o \ @@ -13655,7 +13715,8 @@ COND_TOOLKIT_OSX_CARBON___ADVANCED_PLATFORM_SRC_OBJECTS_6 = \ advlib_sound_osx.o \ advlib_carbon_sound.o \ advlib_carbon_taskbar.o \ - advlib_hidjoystick.o + advlib_hidjoystick.o \ + advlib_generic_activityindicator.o @COND_TOOLKIT_OSX_CARBON@__ADVANCED_PLATFORM_SRC_OBJECTS_6 = $(COND_TOOLKIT_OSX_CARBON___ADVANCED_PLATFORM_SRC_OBJECTS_6) COND_TOOLKIT_OSX_COCOA___ADVANCED_PLATFORM_SRC_OBJECTS_6 = \ advlib_taskbarcmn.o \ @@ -13671,7 +13732,8 @@ COND_TOOLKIT_OSX_COCOA___ADVANCED_PLATFORM_SRC_OBJECTS_6 = \ advlib_cocoa_dataview.o \ advlib_cocoa_datetimectrl.o \ advlib_osx_cocoa_taskbar.o \ - advlib_hidjoystick.o + advlib_hidjoystick.o \ + advlib_cocoa_activityindicator.o @COND_TOOLKIT_OSX_COCOA@__ADVANCED_PLATFORM_SRC_OBJECTS_6 = $(COND_TOOLKIT_OSX_COCOA___ADVANCED_PLATFORM_SRC_OBJECTS_6) @COND_TOOLKIT_OSX_IPHONE@__ADVANCED_PLATFORM_SRC_OBJECTS_6 \ @COND_TOOLKIT_OSX_IPHONE@ = advlib_animateg.o advlib_sound_osx.o \ @@ -13709,7 +13771,8 @@ COND_TOOLKIT_GTK_TOOLKIT_VERSION_2___ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_3 = \ advlib_gtk_bmpcbox.o \ advlib_gtk_calctrl.o \ advlib_gtk_dataview.o \ - advlib_gtk_hyperlink.o + advlib_gtk_hyperlink.o \ + advlib_gtk_activityindicator.o @COND_TOOLKIT_GTK_TOOLKIT_VERSION_2@__ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_3 = $(COND_TOOLKIT_GTK_TOOLKIT_VERSION_2___ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_3) COND_TOOLKIT_GTK_TOOLKIT_VERSION_3___ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_3 = \ advlib_gtk_aboutdlg.o \ @@ -13717,7 +13780,8 @@ COND_TOOLKIT_GTK_TOOLKIT_VERSION_3___ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_3 = \ advlib_gtk_bmpcbox.o \ advlib_gtk_calctrl.o \ advlib_gtk_dataview.o \ - advlib_gtk_hyperlink.o + advlib_gtk_hyperlink.o \ + advlib_gtk_activityindicator.o @COND_TOOLKIT_GTK_TOOLKIT_VERSION_3@__ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_3 = $(COND_TOOLKIT_GTK_TOOLKIT_VERSION_3___ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_3) COND_TOOLKIT_MSW___ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_3 = \ advlib_animateg.o \ @@ -13728,7 +13792,8 @@ COND_TOOLKIT_MSW___ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_3 = \ advlib_datectrl.o \ advlib_msw_datetimectrl.o \ advlib_msw_hyperlink.o \ - advlib_timectrl.o + advlib_timectrl.o \ + advlib_generic_activityindicator.o @COND_TOOLKIT_MSW@__ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_3 = $(COND_TOOLKIT_MSW___ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_3) COND_TOOLKIT_WINCE___ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_3 = \ advlib_animateg.o \ @@ -13739,7 +13804,8 @@ COND_TOOLKIT_WINCE___ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_3 = \ advlib_datectrl.o \ advlib_msw_datetimectrl.o \ advlib_msw_hyperlink.o \ - advlib_timectrl.o + advlib_timectrl.o \ + advlib_generic_activityindicator.o @COND_TOOLKIT_WINCE@__ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_3 = $(COND_TOOLKIT_WINCE___ADVANCED_PLATFORM_NATIVE_SRC_OBJECTS_3) COND_TOOLKIT_COCOA___ADVANCED_PLATFORM_SRC_OBJECTS_7 = \ advlib_src_cocoa_taskbar.o \ @@ -13754,14 +13820,16 @@ COND_TOOLKIT_GTK_TOOLKIT_VERSION____ADVANCED_PLATFORM_SRC_OBJECTS_7 = \ advlib_taskbarx11.o \ advlib_animateg.o \ advlib_gtk1_eggtrayicon.o \ - advlib_gtk1_taskbar.o + advlib_gtk1_taskbar.o \ + advlib_generic_activityindicator.o @COND_TOOLKIT_GTK_TOOLKIT_VERSION_@__ADVANCED_PLATFORM_SRC_OBJECTS_7 = $(COND_TOOLKIT_GTK_TOOLKIT_VERSION____ADVANCED_PLATFORM_SRC_OBJECTS_7) COND_TOOLKIT_GTK_TOOLKIT_VERSION_2___ADVANCED_PLATFORM_SRC_OBJECTS_7 = \ $(__ADVANCED_GTK_PLATFORM_SRC_OBJECTS_1_4) \ advlib_gtk_notifmsg.o \ advlib_gtk_taskbar.o \ advlib_gtk_eggtrayicon.o \ - advlib_hildon_notifmsg.o + advlib_hildon_notifmsg.o \ + advlib_generic_activityindicator.o @COND_TOOLKIT_GTK_TOOLKIT_VERSION_2@__ADVANCED_PLATFORM_SRC_OBJECTS_7 = $(COND_TOOLKIT_GTK_TOOLKIT_VERSION_2___ADVANCED_PLATFORM_SRC_OBJECTS_7) COND_TOOLKIT_GTK_TOOLKIT_VERSION_3___ADVANCED_PLATFORM_SRC_OBJECTS_7 = \ $(__ADVANCED_GTK_PLATFORM_SRC_OBJECTS_1_4) \ @@ -13773,7 +13841,8 @@ COND_TOOLKIT_MOTIF___ADVANCED_PLATFORM_SRC_OBJECTS_7 = \ advlib_unix_joystick.o \ advlib_unix_sound.o \ advlib_taskbarx11.o \ - advlib_animateg.o + advlib_animateg.o \ + advlib_generic_activityindicator.o @COND_TOOLKIT_MOTIF@__ADVANCED_PLATFORM_SRC_OBJECTS_7 = $(COND_TOOLKIT_MOTIF___ADVANCED_PLATFORM_SRC_OBJECTS_7) COND_TOOLKIT_MSW___ADVANCED_PLATFORM_SRC_OBJECTS_7 = \ advlib_taskbarcmn.o \ @@ -13794,7 +13863,8 @@ COND_TOOLKIT_OSX_CARBON___ADVANCED_PLATFORM_SRC_OBJECTS_7 = \ advlib_sound_osx.o \ advlib_carbon_sound.o \ advlib_carbon_taskbar.o \ - advlib_hidjoystick.o + advlib_hidjoystick.o \ + advlib_generic_activityindicator.o @COND_TOOLKIT_OSX_CARBON@__ADVANCED_PLATFORM_SRC_OBJECTS_7 = $(COND_TOOLKIT_OSX_CARBON___ADVANCED_PLATFORM_SRC_OBJECTS_7) COND_TOOLKIT_OSX_COCOA___ADVANCED_PLATFORM_SRC_OBJECTS_7 = \ advlib_taskbarcmn.o \ @@ -13810,7 +13880,8 @@ COND_TOOLKIT_OSX_COCOA___ADVANCED_PLATFORM_SRC_OBJECTS_7 = \ advlib_cocoa_dataview.o \ advlib_cocoa_datetimectrl.o \ advlib_osx_cocoa_taskbar.o \ - advlib_hidjoystick.o + advlib_hidjoystick.o \ + advlib_cocoa_activityindicator.o @COND_TOOLKIT_OSX_COCOA@__ADVANCED_PLATFORM_SRC_OBJECTS_7 = $(COND_TOOLKIT_OSX_COCOA___ADVANCED_PLATFORM_SRC_OBJECTS_7) @COND_TOOLKIT_OSX_IPHONE@__ADVANCED_PLATFORM_SRC_OBJECTS_7 \ @COND_TOOLKIT_OSX_IPHONE@ = advlib_animateg.o advlib_sound_osx.o \ @@ -22947,6 +23018,24 @@ monodll_sound_sdl.o: $(srcdir)/src/unix/sound_sdl.cpp $(MONODLL_ODEP) @COND_TOOLKIT_COCOA_USE_GUI_1@monodll_hidjoystick.o: $(srcdir)/src/osx/core/hidjoystick.cpp $(MONODLL_ODEP) @COND_TOOLKIT_COCOA_USE_GUI_1@ $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/osx/core/hidjoystick.cpp +@COND_TOOLKIT_MSW_USE_GUI_1_WXUNIV_0@monodll_generic_activityindicator.o: $(srcdir)/src/generic/activityindicator.cpp $(MONODLL_ODEP) +@COND_TOOLKIT_MSW_USE_GUI_1_WXUNIV_0@ $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/generic/activityindicator.cpp + +@COND_TOOLKIT_WINCE_USE_GUI_1_WXUNIV_0@monodll_generic_activityindicator.o: $(srcdir)/src/generic/activityindicator.cpp $(MONODLL_ODEP) +@COND_TOOLKIT_WINCE_USE_GUI_1_WXUNIV_0@ $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/generic/activityindicator.cpp + +@COND_TOOLKIT_OSX_CARBON_USE_GUI_1@monodll_generic_activityindicator.o: $(srcdir)/src/generic/activityindicator.cpp $(MONODLL_ODEP) +@COND_TOOLKIT_OSX_CARBON_USE_GUI_1@ $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/generic/activityindicator.cpp + +@COND_TOOLKIT_MOTIF_USE_GUI_1@monodll_generic_activityindicator.o: $(srcdir)/src/generic/activityindicator.cpp $(MONODLL_ODEP) +@COND_TOOLKIT_MOTIF_USE_GUI_1@ $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/generic/activityindicator.cpp + +@COND_TOOLKIT_GTK_TOOLKIT_VERSION_2_USE_GUI_1@monodll_generic_activityindicator.o: $(srcdir)/src/generic/activityindicator.cpp $(MONODLL_ODEP) +@COND_TOOLKIT_GTK_TOOLKIT_VERSION_2_USE_GUI_1@ $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/generic/activityindicator.cpp + +@COND_TOOLKIT_GTK_TOOLKIT_VERSION__USE_GUI_1@monodll_generic_activityindicator.o: $(srcdir)/src/generic/activityindicator.cpp $(MONODLL_ODEP) +@COND_TOOLKIT_GTK_TOOLKIT_VERSION__USE_GUI_1@ $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/generic/activityindicator.cpp + @COND_TOOLKIT_OSX_COCOA_USE_GUI_1@monodll_datetimectrl_osx.o: $(srcdir)/src/osx/datetimectrl_osx.cpp $(MONODLL_ODEP) @COND_TOOLKIT_OSX_COCOA_USE_GUI_1@ $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/osx/datetimectrl_osx.cpp @@ -22974,6 +23063,9 @@ monodll_sound_sdl.o: $(srcdir)/src/unix/sound_sdl.cpp $(MONODLL_ODEP) @COND_TOOLKIT_OSX_COCOA_USE_GUI_1@monodll_osx_cocoa_taskbar.o: $(srcdir)/src/osx/cocoa/taskbar.mm $(MONODLL_ODEP) @COND_TOOLKIT_OSX_COCOA_USE_GUI_1@ $(CXXC) -c -o $@ $(MONODLL_OBJCXXFLAGS) $(srcdir)/src/osx/cocoa/taskbar.mm +@COND_TOOLKIT_OSX_COCOA_USE_GUI_1@monodll_cocoa_activityindicator.o: $(srcdir)/src/osx/cocoa/activityindicator.mm $(MONODLL_ODEP) +@COND_TOOLKIT_OSX_COCOA_USE_GUI_1@ $(CXXC) -c -o $@ $(MONODLL_OBJCXXFLAGS) $(srcdir)/src/osx/cocoa/activityindicator.mm + @COND_TOOLKIT_COCOA_USE_GUI_1@monodll_src_cocoa_taskbar.o: $(srcdir)/src/cocoa/taskbar.mm $(MONODLL_ODEP) @COND_TOOLKIT_COCOA_USE_GUI_1@ $(CXXC) -c -o $@ $(MONODLL_OBJCXXFLAGS) $(srcdir)/src/cocoa/taskbar.mm @@ -23121,6 +23213,12 @@ monodll_sound_sdl.o: $(srcdir)/src/unix/sound_sdl.cpp $(MONODLL_ODEP) @COND_TOOLKIT_GTK_TOOLKIT_VERSION_3_USE_GUI_1_WXUNIV_0@monodll_gtk_hyperlink.o: $(srcdir)/src/gtk/hyperlink.cpp $(MONODLL_ODEP) @COND_TOOLKIT_GTK_TOOLKIT_VERSION_3_USE_GUI_1_WXUNIV_0@ $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/gtk/hyperlink.cpp +@COND_TOOLKIT_GTK_TOOLKIT_VERSION_2_USE_GUI_1_WXUNIV_0@monodll_gtk_activityindicator.o: $(srcdir)/src/gtk/activityindicator.cpp $(MONODLL_ODEP) +@COND_TOOLKIT_GTK_TOOLKIT_VERSION_2_USE_GUI_1_WXUNIV_0@ $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/gtk/activityindicator.cpp + +@COND_TOOLKIT_GTK_TOOLKIT_VERSION_3_USE_GUI_1_WXUNIV_0@monodll_gtk_activityindicator.o: $(srcdir)/src/gtk/activityindicator.cpp $(MONODLL_ODEP) +@COND_TOOLKIT_GTK_TOOLKIT_VERSION_3_USE_GUI_1_WXUNIV_0@ $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/gtk/activityindicator.cpp + @COND_TOOLKIT_MSW_USE_GUI_1_WXUNIV_0@monodll_msw_bmpcbox.o: $(srcdir)/src/msw/bmpcbox.cpp $(MONODLL_ODEP) @COND_TOOLKIT_MSW_USE_GUI_1_WXUNIV_0@ $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/msw/bmpcbox.cpp @@ -28839,6 +28937,24 @@ monolib_sound_sdl.o: $(srcdir)/src/unix/sound_sdl.cpp $(MONOLIB_ODEP) @COND_TOOLKIT_COCOA_USE_GUI_1@monolib_hidjoystick.o: $(srcdir)/src/osx/core/hidjoystick.cpp $(MONOLIB_ODEP) @COND_TOOLKIT_COCOA_USE_GUI_1@ $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/osx/core/hidjoystick.cpp +@COND_TOOLKIT_MSW_USE_GUI_1_WXUNIV_0@monolib_generic_activityindicator.o: $(srcdir)/src/generic/activityindicator.cpp $(MONOLIB_ODEP) +@COND_TOOLKIT_MSW_USE_GUI_1_WXUNIV_0@ $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/generic/activityindicator.cpp + +@COND_TOOLKIT_WINCE_USE_GUI_1_WXUNIV_0@monolib_generic_activityindicator.o: $(srcdir)/src/generic/activityindicator.cpp $(MONOLIB_ODEP) +@COND_TOOLKIT_WINCE_USE_GUI_1_WXUNIV_0@ $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/generic/activityindicator.cpp + +@COND_TOOLKIT_OSX_CARBON_USE_GUI_1@monolib_generic_activityindicator.o: $(srcdir)/src/generic/activityindicator.cpp $(MONOLIB_ODEP) +@COND_TOOLKIT_OSX_CARBON_USE_GUI_1@ $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/generic/activityindicator.cpp + +@COND_TOOLKIT_MOTIF_USE_GUI_1@monolib_generic_activityindicator.o: $(srcdir)/src/generic/activityindicator.cpp $(MONOLIB_ODEP) +@COND_TOOLKIT_MOTIF_USE_GUI_1@ $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/generic/activityindicator.cpp + +@COND_TOOLKIT_GTK_TOOLKIT_VERSION_2_USE_GUI_1@monolib_generic_activityindicator.o: $(srcdir)/src/generic/activityindicator.cpp $(MONOLIB_ODEP) +@COND_TOOLKIT_GTK_TOOLKIT_VERSION_2_USE_GUI_1@ $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/generic/activityindicator.cpp + +@COND_TOOLKIT_GTK_TOOLKIT_VERSION__USE_GUI_1@monolib_generic_activityindicator.o: $(srcdir)/src/generic/activityindicator.cpp $(MONOLIB_ODEP) +@COND_TOOLKIT_GTK_TOOLKIT_VERSION__USE_GUI_1@ $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/generic/activityindicator.cpp + @COND_TOOLKIT_OSX_COCOA_USE_GUI_1@monolib_datetimectrl_osx.o: $(srcdir)/src/osx/datetimectrl_osx.cpp $(MONOLIB_ODEP) @COND_TOOLKIT_OSX_COCOA_USE_GUI_1@ $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/osx/datetimectrl_osx.cpp @@ -28866,6 +28982,9 @@ monolib_sound_sdl.o: $(srcdir)/src/unix/sound_sdl.cpp $(MONOLIB_ODEP) @COND_TOOLKIT_OSX_COCOA_USE_GUI_1@monolib_osx_cocoa_taskbar.o: $(srcdir)/src/osx/cocoa/taskbar.mm $(MONOLIB_ODEP) @COND_TOOLKIT_OSX_COCOA_USE_GUI_1@ $(CXXC) -c -o $@ $(MONOLIB_OBJCXXFLAGS) $(srcdir)/src/osx/cocoa/taskbar.mm +@COND_TOOLKIT_OSX_COCOA_USE_GUI_1@monolib_cocoa_activityindicator.o: $(srcdir)/src/osx/cocoa/activityindicator.mm $(MONOLIB_ODEP) +@COND_TOOLKIT_OSX_COCOA_USE_GUI_1@ $(CXXC) -c -o $@ $(MONOLIB_OBJCXXFLAGS) $(srcdir)/src/osx/cocoa/activityindicator.mm + @COND_TOOLKIT_COCOA_USE_GUI_1@monolib_src_cocoa_taskbar.o: $(srcdir)/src/cocoa/taskbar.mm $(MONOLIB_ODEP) @COND_TOOLKIT_COCOA_USE_GUI_1@ $(CXXC) -c -o $@ $(MONOLIB_OBJCXXFLAGS) $(srcdir)/src/cocoa/taskbar.mm @@ -29013,6 +29132,12 @@ monolib_sound_sdl.o: $(srcdir)/src/unix/sound_sdl.cpp $(MONOLIB_ODEP) @COND_TOOLKIT_GTK_TOOLKIT_VERSION_3_USE_GUI_1_WXUNIV_0@monolib_gtk_hyperlink.o: $(srcdir)/src/gtk/hyperlink.cpp $(MONOLIB_ODEP) @COND_TOOLKIT_GTK_TOOLKIT_VERSION_3_USE_GUI_1_WXUNIV_0@ $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/gtk/hyperlink.cpp +@COND_TOOLKIT_GTK_TOOLKIT_VERSION_2_USE_GUI_1_WXUNIV_0@monolib_gtk_activityindicator.o: $(srcdir)/src/gtk/activityindicator.cpp $(MONOLIB_ODEP) +@COND_TOOLKIT_GTK_TOOLKIT_VERSION_2_USE_GUI_1_WXUNIV_0@ $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/gtk/activityindicator.cpp + +@COND_TOOLKIT_GTK_TOOLKIT_VERSION_3_USE_GUI_1_WXUNIV_0@monolib_gtk_activityindicator.o: $(srcdir)/src/gtk/activityindicator.cpp $(MONOLIB_ODEP) +@COND_TOOLKIT_GTK_TOOLKIT_VERSION_3_USE_GUI_1_WXUNIV_0@ $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/gtk/activityindicator.cpp + @COND_TOOLKIT_MSW_USE_GUI_1_WXUNIV_0@monolib_msw_bmpcbox.o: $(srcdir)/src/msw/bmpcbox.cpp $(MONOLIB_ODEP) @COND_TOOLKIT_MSW_USE_GUI_1_WXUNIV_0@ $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/msw/bmpcbox.cpp @@ -39252,6 +39377,24 @@ advdll_addremovectrl.o: $(srcdir)/src/common/addremovectrl.cpp $(ADVDLL_ODEP) @COND_TOOLKIT_COCOA@advdll_hidjoystick.o: $(srcdir)/src/osx/core/hidjoystick.cpp $(ADVDLL_ODEP) @COND_TOOLKIT_COCOA@ $(CXXC) -c -o $@ $(ADVDLL_CXXFLAGS) $(srcdir)/src/osx/core/hidjoystick.cpp +@COND_TOOLKIT_MSW_WXUNIV_0@advdll_generic_activityindicator.o: $(srcdir)/src/generic/activityindicator.cpp $(ADVDLL_ODEP) +@COND_TOOLKIT_MSW_WXUNIV_0@ $(CXXC) -c -o $@ $(ADVDLL_CXXFLAGS) $(srcdir)/src/generic/activityindicator.cpp + +@COND_TOOLKIT_WINCE_WXUNIV_0@advdll_generic_activityindicator.o: $(srcdir)/src/generic/activityindicator.cpp $(ADVDLL_ODEP) +@COND_TOOLKIT_WINCE_WXUNIV_0@ $(CXXC) -c -o $@ $(ADVDLL_CXXFLAGS) $(srcdir)/src/generic/activityindicator.cpp + +@COND_TOOLKIT_OSX_CARBON@advdll_generic_activityindicator.o: $(srcdir)/src/generic/activityindicator.cpp $(ADVDLL_ODEP) +@COND_TOOLKIT_OSX_CARBON@ $(CXXC) -c -o $@ $(ADVDLL_CXXFLAGS) $(srcdir)/src/generic/activityindicator.cpp + +@COND_TOOLKIT_MOTIF@advdll_generic_activityindicator.o: $(srcdir)/src/generic/activityindicator.cpp $(ADVDLL_ODEP) +@COND_TOOLKIT_MOTIF@ $(CXXC) -c -o $@ $(ADVDLL_CXXFLAGS) $(srcdir)/src/generic/activityindicator.cpp + +@COND_TOOLKIT_GTK_TOOLKIT_VERSION_2@advdll_generic_activityindicator.o: $(srcdir)/src/generic/activityindicator.cpp $(ADVDLL_ODEP) +@COND_TOOLKIT_GTK_TOOLKIT_VERSION_2@ $(CXXC) -c -o $@ $(ADVDLL_CXXFLAGS) $(srcdir)/src/generic/activityindicator.cpp + +@COND_TOOLKIT_GTK_TOOLKIT_VERSION_@advdll_generic_activityindicator.o: $(srcdir)/src/generic/activityindicator.cpp $(ADVDLL_ODEP) +@COND_TOOLKIT_GTK_TOOLKIT_VERSION_@ $(CXXC) -c -o $@ $(ADVDLL_CXXFLAGS) $(srcdir)/src/generic/activityindicator.cpp + @COND_TOOLKIT_OSX_COCOA@advdll_datetimectrl_osx.o: $(srcdir)/src/osx/datetimectrl_osx.cpp $(ADVDLL_ODEP) @COND_TOOLKIT_OSX_COCOA@ $(CXXC) -c -o $@ $(ADVDLL_CXXFLAGS) $(srcdir)/src/osx/datetimectrl_osx.cpp @@ -39279,6 +39422,9 @@ advdll_addremovectrl.o: $(srcdir)/src/common/addremovectrl.cpp $(ADVDLL_ODEP) @COND_TOOLKIT_OSX_COCOA@advdll_osx_cocoa_taskbar.o: $(srcdir)/src/osx/cocoa/taskbar.mm $(ADVDLL_ODEP) @COND_TOOLKIT_OSX_COCOA@ $(CXXC) -c -o $@ $(ADVDLL_OBJCXXFLAGS) $(srcdir)/src/osx/cocoa/taskbar.mm +@COND_TOOLKIT_OSX_COCOA@advdll_cocoa_activityindicator.o: $(srcdir)/src/osx/cocoa/activityindicator.mm $(ADVDLL_ODEP) +@COND_TOOLKIT_OSX_COCOA@ $(CXXC) -c -o $@ $(ADVDLL_OBJCXXFLAGS) $(srcdir)/src/osx/cocoa/activityindicator.mm + @COND_TOOLKIT_COCOA@advdll_src_cocoa_taskbar.o: $(srcdir)/src/cocoa/taskbar.mm $(ADVDLL_ODEP) @COND_TOOLKIT_COCOA@ $(CXXC) -c -o $@ $(ADVDLL_OBJCXXFLAGS) $(srcdir)/src/cocoa/taskbar.mm @@ -39432,6 +39578,12 @@ advdll_addremovectrl.o: $(srcdir)/src/common/addremovectrl.cpp $(ADVDLL_ODEP) @COND_TOOLKIT_GTK_TOOLKIT_VERSION_3_WXUNIV_0@advdll_gtk_hyperlink.o: $(srcdir)/src/gtk/hyperlink.cpp $(ADVDLL_ODEP) @COND_TOOLKIT_GTK_TOOLKIT_VERSION_3_WXUNIV_0@ $(CXXC) -c -o $@ $(ADVDLL_CXXFLAGS) $(srcdir)/src/gtk/hyperlink.cpp +@COND_TOOLKIT_GTK_TOOLKIT_VERSION_2_WXUNIV_0@advdll_gtk_activityindicator.o: $(srcdir)/src/gtk/activityindicator.cpp $(ADVDLL_ODEP) +@COND_TOOLKIT_GTK_TOOLKIT_VERSION_2_WXUNIV_0@ $(CXXC) -c -o $@ $(ADVDLL_CXXFLAGS) $(srcdir)/src/gtk/activityindicator.cpp + +@COND_TOOLKIT_GTK_TOOLKIT_VERSION_3_WXUNIV_0@advdll_gtk_activityindicator.o: $(srcdir)/src/gtk/activityindicator.cpp $(ADVDLL_ODEP) +@COND_TOOLKIT_GTK_TOOLKIT_VERSION_3_WXUNIV_0@ $(CXXC) -c -o $@ $(ADVDLL_CXXFLAGS) $(srcdir)/src/gtk/activityindicator.cpp + @COND_TOOLKIT_MSW_WXUNIV_0@advdll_msw_bmpcbox.o: $(srcdir)/src/msw/bmpcbox.cpp $(ADVDLL_ODEP) @COND_TOOLKIT_MSW_WXUNIV_0@ $(CXXC) -c -o $@ $(ADVDLL_CXXFLAGS) $(srcdir)/src/msw/bmpcbox.cpp @@ -39750,6 +39902,24 @@ advlib_addremovectrl.o: $(srcdir)/src/common/addremovectrl.cpp $(ADVLIB_ODEP) @COND_TOOLKIT_COCOA@advlib_hidjoystick.o: $(srcdir)/src/osx/core/hidjoystick.cpp $(ADVLIB_ODEP) @COND_TOOLKIT_COCOA@ $(CXXC) -c -o $@ $(ADVLIB_CXXFLAGS) $(srcdir)/src/osx/core/hidjoystick.cpp +@COND_TOOLKIT_MSW_WXUNIV_0@advlib_generic_activityindicator.o: $(srcdir)/src/generic/activityindicator.cpp $(ADVLIB_ODEP) +@COND_TOOLKIT_MSW_WXUNIV_0@ $(CXXC) -c -o $@ $(ADVLIB_CXXFLAGS) $(srcdir)/src/generic/activityindicator.cpp + +@COND_TOOLKIT_WINCE_WXUNIV_0@advlib_generic_activityindicator.o: $(srcdir)/src/generic/activityindicator.cpp $(ADVLIB_ODEP) +@COND_TOOLKIT_WINCE_WXUNIV_0@ $(CXXC) -c -o $@ $(ADVLIB_CXXFLAGS) $(srcdir)/src/generic/activityindicator.cpp + +@COND_TOOLKIT_OSX_CARBON@advlib_generic_activityindicator.o: $(srcdir)/src/generic/activityindicator.cpp $(ADVLIB_ODEP) +@COND_TOOLKIT_OSX_CARBON@ $(CXXC) -c -o $@ $(ADVLIB_CXXFLAGS) $(srcdir)/src/generic/activityindicator.cpp + +@COND_TOOLKIT_MOTIF@advlib_generic_activityindicator.o: $(srcdir)/src/generic/activityindicator.cpp $(ADVLIB_ODEP) +@COND_TOOLKIT_MOTIF@ $(CXXC) -c -o $@ $(ADVLIB_CXXFLAGS) $(srcdir)/src/generic/activityindicator.cpp + +@COND_TOOLKIT_GTK_TOOLKIT_VERSION_2@advlib_generic_activityindicator.o: $(srcdir)/src/generic/activityindicator.cpp $(ADVLIB_ODEP) +@COND_TOOLKIT_GTK_TOOLKIT_VERSION_2@ $(CXXC) -c -o $@ $(ADVLIB_CXXFLAGS) $(srcdir)/src/generic/activityindicator.cpp + +@COND_TOOLKIT_GTK_TOOLKIT_VERSION_@advlib_generic_activityindicator.o: $(srcdir)/src/generic/activityindicator.cpp $(ADVLIB_ODEP) +@COND_TOOLKIT_GTK_TOOLKIT_VERSION_@ $(CXXC) -c -o $@ $(ADVLIB_CXXFLAGS) $(srcdir)/src/generic/activityindicator.cpp + @COND_TOOLKIT_OSX_COCOA@advlib_datetimectrl_osx.o: $(srcdir)/src/osx/datetimectrl_osx.cpp $(ADVLIB_ODEP) @COND_TOOLKIT_OSX_COCOA@ $(CXXC) -c -o $@ $(ADVLIB_CXXFLAGS) $(srcdir)/src/osx/datetimectrl_osx.cpp @@ -39777,6 +39947,9 @@ advlib_addremovectrl.o: $(srcdir)/src/common/addremovectrl.cpp $(ADVLIB_ODEP) @COND_TOOLKIT_OSX_COCOA@advlib_osx_cocoa_taskbar.o: $(srcdir)/src/osx/cocoa/taskbar.mm $(ADVLIB_ODEP) @COND_TOOLKIT_OSX_COCOA@ $(CXXC) -c -o $@ $(ADVLIB_OBJCXXFLAGS) $(srcdir)/src/osx/cocoa/taskbar.mm +@COND_TOOLKIT_OSX_COCOA@advlib_cocoa_activityindicator.o: $(srcdir)/src/osx/cocoa/activityindicator.mm $(ADVLIB_ODEP) +@COND_TOOLKIT_OSX_COCOA@ $(CXXC) -c -o $@ $(ADVLIB_OBJCXXFLAGS) $(srcdir)/src/osx/cocoa/activityindicator.mm + @COND_TOOLKIT_COCOA@advlib_src_cocoa_taskbar.o: $(srcdir)/src/cocoa/taskbar.mm $(ADVLIB_ODEP) @COND_TOOLKIT_COCOA@ $(CXXC) -c -o $@ $(ADVLIB_OBJCXXFLAGS) $(srcdir)/src/cocoa/taskbar.mm @@ -39930,6 +40103,12 @@ advlib_addremovectrl.o: $(srcdir)/src/common/addremovectrl.cpp $(ADVLIB_ODEP) @COND_TOOLKIT_GTK_TOOLKIT_VERSION_3_WXUNIV_0@advlib_gtk_hyperlink.o: $(srcdir)/src/gtk/hyperlink.cpp $(ADVLIB_ODEP) @COND_TOOLKIT_GTK_TOOLKIT_VERSION_3_WXUNIV_0@ $(CXXC) -c -o $@ $(ADVLIB_CXXFLAGS) $(srcdir)/src/gtk/hyperlink.cpp +@COND_TOOLKIT_GTK_TOOLKIT_VERSION_2_WXUNIV_0@advlib_gtk_activityindicator.o: $(srcdir)/src/gtk/activityindicator.cpp $(ADVLIB_ODEP) +@COND_TOOLKIT_GTK_TOOLKIT_VERSION_2_WXUNIV_0@ $(CXXC) -c -o $@ $(ADVLIB_CXXFLAGS) $(srcdir)/src/gtk/activityindicator.cpp + +@COND_TOOLKIT_GTK_TOOLKIT_VERSION_3_WXUNIV_0@advlib_gtk_activityindicator.o: $(srcdir)/src/gtk/activityindicator.cpp $(ADVLIB_ODEP) +@COND_TOOLKIT_GTK_TOOLKIT_VERSION_3_WXUNIV_0@ $(CXXC) -c -o $@ $(ADVLIB_CXXFLAGS) $(srcdir)/src/gtk/activityindicator.cpp + @COND_TOOLKIT_MSW_WXUNIV_0@advlib_msw_bmpcbox.o: $(srcdir)/src/msw/bmpcbox.cpp $(ADVLIB_ODEP) @COND_TOOLKIT_MSW_WXUNIV_0@ $(CXXC) -c -o $@ $(ADVLIB_CXXFLAGS) $(srcdir)/src/msw/bmpcbox.cpp diff --git a/build/bakefiles/files.bkl b/build/bakefiles/files.bkl index b31c0b868b..e60aa35968 100644 --- a/build/bakefiles/files.bkl +++ b/build/bakefiles/files.bkl @@ -2932,6 +2932,7 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file! wx/univ/toolbar.h wx/univ/toplevel.h wx/univ/window.h + wx/generic/activityindicator.h @@ -3026,6 +3027,7 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file! wx/treelist.h wx/wizard.h wx/addremovectrl.h + wx/activityindicator.h @@ -3053,6 +3055,7 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file! src/msw/datetimectrl.cpp src/msw/hyperlink.cpp src/msw/timectrl.cpp + src/generic/activityindicator.cpp wx/generic/animate.h @@ -3063,6 +3066,7 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file! wx/msw/datetimectrl.h wx/msw/hyperlink.h wx/msw/timectrl.h + wx/generic/activityindicator.h @@ -3084,6 +3088,7 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file! src/osx/carbon/sound.cpp src/osx/carbon/taskbar.cpp src/osx/core/hidjoystick.cpp + src/generic/activityindicator.cpp @@ -3097,6 +3102,7 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file! wx/osx/carbon/drawer.h wx/osx/carbon/dataview.h wx/osx/core/joystick.h + wx/generic/activityindicator.h @@ -3114,6 +3120,7 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file! src/osx/cocoa/datetimectrl.mm src/osx/cocoa/taskbar.mm src/osx/core/hidjoystick.cpp + src/osx/cocoa/activityindicator.mm @@ -3129,6 +3136,7 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file! wx/osx/timectrl.h wx/osx/core/joystick.h wx/osx/cocoa/dataview.h + wx/osx/cocoa/activityindicator.h @@ -3170,10 +3178,12 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file! src/generic/animateg.cpp + src/generic/activityindicator.cpp wx/generic/animate.h + wx/generic/animateanimate.h @@ -3205,11 +3215,13 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file! $(ADVANCED_GTK_SRC) src/gtk/eggtrayicon.c src/gtk/hildon/notifmsg.cpp + src/generic/activityindicator.cpp $(ADVANCED_GTK_PLATFORM_HDR) wx/gtk/notifmsg.h wx/gtk/taskbar.h + wx/generic/activityindicator.h $(ADVANCED_GTK_HDR) @@ -3223,6 +3235,7 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file! src/gtk/calctrl.cpp src/gtk/dataview.cpp src/gtk/hyperlink.cpp + src/gtk/activityindicator.cpp wx/gtk/animate.h @@ -3232,15 +3245,18 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file! wx/gtk/dvrenderer.h wx/gtk/dvrenderers.h wx/gtk/hyperlink.h + wx/gtk/activityindicator.h src/generic/animateg.cpp src/gtk1/eggtrayicon.c src/gtk1/taskbar.cpp + src/generic/activityindicator.cpp wx/generic/animate.h + wx/generic/activityindicator.h diff --git a/build/files b/build/files index 82767a175e..cf856a013b 100644 --- a/build/files +++ b/build/files @@ -2453,6 +2453,7 @@ UNIV_SRC = UNIV_HDR = $(UNIV_PLATFORM_HDR) wx/generic/accel.h + wx/generic/activityindicator.h wx/generic/animate.h wx/generic/clrpickerg.h wx/generic/collpaneg.h @@ -2550,6 +2551,7 @@ ADVANCED_CMN_SRC = ADVANCED_CMN_HDR = wx/aboutdlg.h + wx/activityindicator.h wx/addremovectrl.h wx/animate.h wx/bannerwindow.h @@ -2614,6 +2616,7 @@ ADVANCED_MSW_HDR = # not used with wxUniv ADVANCED_MSW_NATIVE_SRC = + src/generic/activityindicator.cpp src/generic/animateg.cpp src/msw/bmpcbox.cpp src/msw/calctrl.cpp @@ -2624,6 +2627,7 @@ ADVANCED_MSW_NATIVE_SRC = src/msw/hyperlink.cpp src/msw/timectrl.cpp ADVANCED_MSW_NATIVE_HDR = + wx/generic/activityindicator.h wx/generic/animate.h wx/msw/bmpcbox.h wx/msw/commandlinkbutton.h @@ -2641,6 +2645,7 @@ ADVANCED_MSW_DESKTOP_HDR = ADVANCED_OSX_CARBON_SRC = src/common/taskbarcmn.cpp + src/generic/activityindicator.cpp src/generic/animateg.cpp src/osx/carbon/aboutdlg.cpp src/osx/carbon/drawer.cpp @@ -2652,6 +2657,7 @@ ADVANCED_OSX_CARBON_SRC = src/osx/core/hidjoystick.cpp ADVANCED_OSX_CARBON_HDR = + wx/generic/activityindicator.h wx/generic/animate.h wx/osx/dataview.h wx/osx/dvrenderer.h @@ -2666,6 +2672,7 @@ ADVANCED_OSX_CARBON_HDR = ADVANCED_OSX_COCOA_SRC = src/common/taskbarcmn.cpp src/generic/animateg.cpp + src/osx/cocoa/activityindicator.mm src/osx/datetimectrl_osx.cpp src/osx/datectrl_osx.cpp src/osx/sound_osx.cpp @@ -2691,6 +2698,7 @@ ADVANCED_OSX_COCOA_HDR = wx/osx/taskbarosx.h wx/osx/timectrl.h wx/osx/core/joystick.h + wx/osx/cocoa/activityindicator.h wx/osx/cocoa/dataview.h ADVANCED_OSX_IPHONE_SRC = @@ -2724,9 +2732,11 @@ ADVANCED_UNIX_HDR = wx/unix/taskbarx11.h ADVANCED_MOTIF_SRC = + src/generic/activityindicator.cpp src/generic/animateg.cpp ADVANCED_MOTIF_HDR = + wx/generic/animateanimate.h wx/generic/animate.h ADVANCED_GTK_WIN32_SRC = @@ -2743,10 +2753,12 @@ ADVANCED_GTK_SRC = src/gtk/taskbar.cpp ADVANCED_GTK2_SRC = $(ADVANCED_GTK_SRC) + src/generic/activityindicator.cpp src/gtk/eggtrayicon.c src/gtk/hildon/notifmsg.cpp ADVANCED_GTK_HDR = $(ADVANCED_GTK_PLATFORM_HDR) + wx/generic/activityindicator.h wx/gtk/notifmsg.h wx/gtk/taskbar.h ADVANCED_GTK2_HDR = @@ -2755,12 +2767,14 @@ ADVANCED_GTK2_HDR = ADVANCED_GTK_NATIVE_SRC = src/gtk/aboutdlg.cpp + src/gtk/activityindicator.cpp src/gtk/animate.cpp src/gtk/bmpcbox.cpp src/gtk/calctrl.cpp src/gtk/dataview.cpp src/gtk/hyperlink.cpp ADVANCED_GTK_NATIVE_HDR = + wx/gtk/activityindicator.h wx/gtk/animate.h wx/gtk/bmpcbox.h wx/gtk/calctrl.h @@ -2770,10 +2784,12 @@ ADVANCED_GTK_NATIVE_HDR = wx/gtk/hyperlink.h ADVANCED_GTK1_SRC = + src/generic/activityindicator.cpp src/generic/animateg.cpp src/gtk1/eggtrayicon.c src/gtk1/taskbar.cpp ADVANCED_GTK1_HDR = + wx/generic/activityindicator.h wx/generic/animate.h diff --git a/build/msw/wx_adv.vcxproj b/build/msw/wx_adv.vcxproj index 6838de75c0..f4259082c1 100644 --- a/build/msw/wx_adv.vcxproj +++ b/build/msw/wx_adv.vcxproj @@ -1,4 +1,4 @@ - + @@ -506,6 +506,7 @@ + @@ -598,6 +599,8 @@ + + diff --git a/build/msw/wx_adv.vcxproj.filters b/build/msw/wx_adv.vcxproj.filters index e33e153eb4..982ac7865a 100644 --- a/build/msw/wx_adv.vcxproj.filters +++ b/build/msw/wx_adv.vcxproj.filters @@ -60,6 +60,9 @@ Generic Sources + + Generic Sources + Generic Sources @@ -187,6 +190,9 @@ Common Headers + + Common Headers + Common Headers @@ -229,6 +235,9 @@ Generic Headers + + Generic Headers + Generic Headers diff --git a/build/msw/wx_vc7_adv.vcproj b/build/msw/wx_vc7_adv.vcproj index 503c824057..aa71d5d89f 100644 --- a/build/msw/wx_vc7_adv.vcproj +++ b/build/msw/wx_vc7_adv.vcproj @@ -470,6 +470,9 @@ + + + + + + diff --git a/build/msw/wx_vc7_core.vcproj b/build/msw/wx_vc7_core.vcproj index 65854093db..4d4f9cae4f 100644 --- a/build/msw/wx_vc7_core.vcproj +++ b/build/msw/wx_vc7_core.vcproj @@ -1797,6 +1797,9 @@ + + + + + + + + + + diff --git a/build/msw/wx_vc8_core.vcproj b/build/msw/wx_vc8_core.vcproj index 68908e8a1b..53a910f052 100644 --- a/build/msw/wx_vc8_core.vcproj +++ b/build/msw/wx_vc8_core.vcproj @@ -2898,6 +2898,10 @@ RelativePath="..\..\include\wx\generic\wizard.h" > + + + + + + + + + + diff --git a/build/msw/wx_vc9_core.vcproj b/build/msw/wx_vc9_core.vcproj index 87910959c5..e8a2f8d266 100644 --- a/build/msw/wx_vc9_core.vcproj +++ b/build/msw/wx_vc9_core.vcproj @@ -2894,6 +2894,10 @@ RelativePath="..\..\include\wx\generic\wizard.h" > + + + + &6; } + enablestring= + defaultval=$wxUSE_ALL_FEATURES + if test -z "$defaultval"; then + if test x"$enablestring" = xdisable; then + defaultval=yes + else + defaultval=no + fi + fi + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for --${enablestring:-enable}-actindicator" >&5 +$as_echo_n "checking for --${enablestring:-enable}-actindicator... " >&6; } + # Check whether --enable-actindicator was given. +if test "${enable_actindicator+set}" = set; then : + enableval=$enable_actindicator; + if test "$enableval" = yes; then + wx_cv_use_actindicator='wxUSE_ACTIVITYINDICATOR=yes' + else + wx_cv_use_actindicator='wxUSE_ACTIVITYINDICATOR=no' + fi + +else + + wx_cv_use_actindicator='wxUSE_ACTIVITYINDICATOR=${'DEFAULT_wxUSE_ACTIVITYINDICATOR":-$defaultval}" + +fi + + + eval "$wx_cv_use_actindicator" + + if test x"$enablestring" = xdisable; then + if test $wxUSE_ACTIVITYINDICATOR = no; then + result=yes + else + result=no + fi + else + result=$wxUSE_ACTIVITYINDICATOR + fi + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $result" >&5 +$as_echo "$result" >&6; } + + enablestring= defaultval=$wxUSE_ALL_FEATURES if test -z "$defaultval"; then @@ -23706,7 +23752,7 @@ if ac_fn_c_try_link "$LINENO"; then : echo "*** you may also be able to get things to work by modifying LD_LIBRARY_PATH" else echo "*** The test program failed to compile or link. See the file config.log for the" - echo "*** exact error that occured. This usually means GTK+ is incorrectly installed." + echo "*** exact error that occurred. This usually means GTK+ is incorrectly installed." fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext @@ -35799,6 +35845,11 @@ if test "$wxUSE_ACCEL" = "yes"; then USES_CONTROLS=1 fi +if test "$wxUSE_ACTIVITYINDICATOR" = "yes"; then + $as_echo "#define wxUSE_ACTIVITYINDICATOR 1" >>confdefs.h + +fi + if test "$wxUSE_ADDREMOVECTRL" = "yes"; then $as_echo "#define wxUSE_ADDREMOVECTRL 1" >>confdefs.h diff --git a/configure.in b/configure.in index 208f03896c..c10f59aa0f 100644 --- a/configure.in +++ b/configure.in @@ -885,6 +885,7 @@ WX_ARG_FEATURE(markup, [ --enable-markup support wxControl::SetLab dnl please keep the settings below in alphabetical order WX_ARG_FEATURE(accel, [ --enable-accel use accelerators], wxUSE_ACCEL) +WX_ARG_FEATURE(actindicator,[ --enable-actindicator use wxActivityIndicator class], wxUSE_ACTIVITYINDICATOR) WX_ARG_FEATURE(addremovectrl, [ --enable-addremovectrl use wxAddRemoveCtrl], wxUSE_ADDREMOVECTRL) WX_ARG_FEATURE(animatectrl, [ --enable-animatectrl use wxAnimationCtrl class], wxUSE_ANIMATIONCTRL) WX_ARG_FEATURE(bannerwindow,[ --enable-bannerwindow use wxBannerWindow class], wxUSE_BANNERWINDOW) @@ -6447,6 +6448,10 @@ if test "$wxUSE_ACCEL" = "yes"; then USES_CONTROLS=1 fi +if test "$wxUSE_ACTIVITYINDICATOR" = "yes"; then + AC_DEFINE(wxUSE_ACTIVITYINDICATOR) +fi + if test "$wxUSE_ADDREMOVECTRL" = "yes"; then AC_DEFINE(wxUSE_ADDREMOVECTRL) fi diff --git a/docs/changes.txt b/docs/changes.txt index 729c60f99a..6e22f28d39 100644 --- a/docs/changes.txt +++ b/docs/changes.txt @@ -65,6 +65,7 @@ Unix: All (GUI): - Allow requesting modern (3.x+) OpenGL version in wxGLCanvas (Fabio Arnold). +- Add wxActivityIndicator. - Add wxWindow::FromDIP() for simpler high DPI support. - Allow customizing window shown by wxBusyInfo. - Add wxAddRemoveCtrl. diff --git a/docs/doxygen/images/appear-activityindicator-gtk.png b/docs/doxygen/images/appear-activityindicator-gtk.png new file mode 100644 index 0000000000000000000000000000000000000000..9ce545c7b00ad5c3e7423df24237548fa979b2f4 GIT binary patch literal 1464 zcmV;p1xNacP)h;l38=IQS%F9ojI6hZuf;hoP`>tNOYQ{|Aou;wT z+S;=|A1zHvnk#kfnl(y=((bU|xN$SQ^TLITIF75;8AU}!bEPJT(em;#1VI`a8u}mh z&1UPl-(6o{k08kY{reNd=v=7)uxfR#CQsv~yjQMVoy~Kmw$|lwGk&`p)T16t^j?$9&`SV8}kDNYp=2T71@X#PLR8;h~ zI6*uzI-=9*W=_#+e;pVYkV>UxWo1mH??LbGUAwlIly-G?p%O{;v7>UiY~~asuu!+Sk#sFaS`gR6BRR7yRtQLxUfF^l_VB4*=?A%MKkpxOvN#FgXLeDOjsk=PH%TR=vKd zu}L5h1S0`Jp;U=P!i7TNC;Rr5lx&~bYatbRt<%CxV-!WDELMaZ?eBlcVY8XCN7QrF z0|!10?>=^{I?6{3uYc!Oe}M{{%^2>Q+cwb-Ny?Y%} zsdU@Bp{XvH%j@;J-R|T?vXF)sqZ)ed>-B9DlM?{oc9UkzBu!ov;IZLWnx<*L|C!4* z_{hlT^AnS#VRDA6@aV|n)>i%S<6!_0@cFrUc}j(%rKN?#;bdoLGi!9YBK#UjRU((GUdT^ZA@kXMB7-M<^sok|3ts9*@W4B}py9>jTwzb0LaS93a*$0MMp6oDYfGPOEj!-6G7B}|>Y6cyeX z`9xf^HeV)_$x{|bbOL}vsp9c?NzcEX!HQ~MqeL=_h=doq>0YA#YyZ{fqQ3xg3P;QR S1$>5Rof`RC=qfA-R9;dNs>yX(qJ&m%*^}=P4*`^2w}c)Fc{=GuD7?hm^Z1M>g(&(YBfUW z;NUtJfo6TQj0sxGTj%qX-nM`(k zd>jl0^Hst{4243UCRBiFXJ^Of^9i3OlgVneavb;k{Os{~003oWWxPsQFbsn+HknM) zOfbJkEG#TUA`z8J)z;Rwwzek7`}_Ov?(QlpE6>l*0RUrTV;Ez%+YJC9Ns?t*rBZ1$ z8uR_0oSZNW)7RH0NZzGfQ&Xc*C|H&~J3DhY9A>k5etsSRFg-o(a=DtDn|U*r%O(8M z+1V+IJs1o!3jhjY0c$8ik}4cpt>pVEXvA&Q~^00^O;o}L00xCls+TwGin7#LVz zUoU1OLLd;3&=$_=U*K;=_iMSR58)>b?oZ)s^6A0PkJQ8*klp~Gk(Y9cDtj|C_;!g{q^hD$jAr)ARG=~TwGLF zR}T&jio6E`fowMGa5w~s*X!jg3u9bcTPq~@uF5l+49l_zp{Ay$)zwv=1^^I^MpLPj zaN!7oAP9nACzHu+HoL#SFF3K;Y&x9|LdbC(P1Az>-8s$9&VJnG!^1;1VNrb(oLZ!udn&fg8$4EkH;Z|YPCB5%th$#?yjh)fDoqB z=`S+*{eGIJIgV>>ZIupacz76NoIeUaLaIktES5wfq0wkcdG8wx27cy#g$V#KIXU?$ s2ajS+s8ptc(CKtv`0M9-`Oi(l-^tY%>V!Z literal 0 HcmV?d00001 diff --git a/docs/doxygen/images/appear-activityindicator-msw.png b/docs/doxygen/images/appear-activityindicator-msw.png new file mode 100644 index 0000000000000000000000000000000000000000..86ce0224b22ca40d177b996d97bdbb1aec0f01f6 GIT binary patch literal 650 zcmV;50(Jd~P)ve@J=H?#V93BQ>x7)p5Z|@Wobz7&^ z0#K<`G);Hzhc5oqy}geI`}-b`XToMz%%V~*Nm6Ze^p@FTRYv@qQ~)BIn=H$^-R`%M z$RIVTBp>Fu*Wqv~$)9)Oa=DI=s{jb06N$u?h%m>Up8f=&(~Ue?Sm^h(29yfGvtZC@ zB!tkx<>f(YSk|T0>U6phmy5x*#QDdXef}h5b2-N8ylkn8#X>HdC4}6)=TJcG?7UxH zebHz%%qG*?+RI)_v5?=`cq2)YTCJX)eK_f4+V|Z!7ufGD2O7emrn9XK}VH7siNNE53W5pCZnshRq2owhCmCxs+ kD2k#epU>CFb`9_1H?Qa5y2 +// Licence: wxWindows licence +/////////////////////////////////////////////////////////////////////////////// + +#ifndef _WX_ACTIVITYINDICATOR_H_ +#define _WX_ACTIVITYINDICATOR_H_ + +#include "wx/defs.h" + +#if wxUSE_ACTIVITYINDICATOR + +#include "wx/control.h" + +#define wxActivityIndicatorNameStr wxS("activityindicator") + +// ---------------------------------------------------------------------------- +// wxActivityIndicator: small animated indicator of some application activity. +// ---------------------------------------------------------------------------- + +class WXDLLIMPEXP_ADV wxActivityIndicatorBase : public wxControl +{ +public: + // Start or stop the activity animation (it is stopped initially). + virtual void Start() = 0; + virtual void Stop() = 0; + + // Return true if the control is currently showing activity. + virtual bool IsRunning() const = 0; + + // Override some base class virtual methods. + virtual bool AcceptsFocus() const wxOVERRIDE { return false; } + virtual bool HasTransparentBackground() wxOVERRIDE { return true; } + +protected: + // choose the default border for this window + virtual wxBorder GetDefaultBorder() const wxOVERRIDE { return wxBORDER_NONE; } +}; + +#ifndef __WXUNIVERSAL__ +#if defined(__WXGTK220__) + #define wxHAS_NATIVE_ACTIVITYINDICATOR + #include "wx/gtk/activityindicator.h" +#elif defined(__WXOSX_COCOA__) + #define wxHAS_NATIVE_ACTIVITYINDICATOR + #include "wx/osx/activityindicator.h" +#endif +#endif // !__WXUNIVERSAL__ + +#ifndef wxHAS_NATIVE_ACTIVITYINDICATOR + #include "wx/generic/activityindicator.h" +#endif + +#endif // wxUSE_ACTIVITYINDICATOR + +#endif // _WX_ACTIVITYINDICATOR_H_ diff --git a/include/wx/android/setup.h b/include/wx/android/setup.h index b31c2fe0bb..5dd25b57be 100644 --- a/include/wx/android/setup.h +++ b/include/wx/android/setup.h @@ -823,6 +823,7 @@ // Default is 1 // // Recommended setting: 1 +#define wxUSE_ACTIVITYINDICATOR 1 // wxActivityIndicator #define wxUSE_ANIMATIONCTRL 1 // wxAnimationCtrl #define wxUSE_BANNERWINDOW 1 // wxBannerWindow #define wxUSE_BUTTON 1 // wxButton diff --git a/include/wx/chkconf.h b/include/wx/chkconf.h index 88df5b1aa9..c67c67cd20 100644 --- a/include/wx/chkconf.h +++ b/include/wx/chkconf.h @@ -433,6 +433,14 @@ # endif #endif /* !defined(wxUSE_ADDREMOVECTRL) */ +#ifndef wxUSE_ACTIVITYINDICATOR +# ifdef wxABORT_ON_CONFIG_ERROR +# error "wxUSE_ACTIVITYINDICATOR must be defined, please read comment near the top of this file." +# else +# define wxUSE_ACTIVITYINDICATOR 0 +# endif +#endif /* !defined(wxUSE_ACTIVITYINDICATOR) */ + #ifndef wxUSE_ANIMATIONCTRL # ifdef wxABORT_ON_CONFIG_ERROR # error "wxUSE_ANIMATIONCTRL must be defined, please read comment near the top of this file." diff --git a/include/wx/generic/activityindicator.h b/include/wx/generic/activityindicator.h new file mode 100644 index 0000000000..1fbeb8e624 --- /dev/null +++ b/include/wx/generic/activityindicator.h @@ -0,0 +1,67 @@ +/////////////////////////////////////////////////////////////////////////////// +// Name: wx/generic/activityindicator.h +// Purpose: Declaration of wxActivityIndicatorGeneric. +// Author: Vadim Zeitlin +// Created: 2015-03-06 +// Copyright: (c) 2015 Vadim Zeitlin +// Licence: wxWindows licence +/////////////////////////////////////////////////////////////////////////////// + +#ifndef _WX_GENERIC_ACTIVITYINDICATOR_H_ +#define _WX_GENERIC_ACTIVITYINDICATOR_H_ + +#ifndef wxHAS_NATIVE_ACTIVITYINDICATOR + // This is the only implementation we have, so call it accordingly. + #define wxActivityIndicatorGeneric wxActivityIndicator +#endif + +// ---------------------------------------------------------------------------- +// wxActivityIndicatorGeneric: built-in generic implementation. +// ---------------------------------------------------------------------------- + +class WXDLLIMPEXP_ADV wxActivityIndicatorGeneric : public wxActivityIndicatorBase +{ +public: + wxActivityIndicatorGeneric() + { + m_impl = NULL; + } + + explicit + wxActivityIndicatorGeneric(wxWindow* parent, + wxWindowID winid = wxID_ANY, + const wxPoint& pos = wxDefaultPosition, + const wxSize& size = wxDefaultSize, + long style = 0, + const wxString& name = wxActivityIndicatorNameStr) + { + m_impl = NULL; + + Create(parent, winid, pos, size, style, name); + } + + bool Create(wxWindow* parent, + wxWindowID winid = wxID_ANY, + const wxPoint& pos = wxDefaultPosition, + const wxSize& size = wxDefaultSize, + long style = 0, + const wxString& name = wxActivityIndicatorNameStr); + + virtual ~wxActivityIndicatorGeneric(); + + virtual void Start() wxOVERRIDE; + virtual void Stop() wxOVERRIDE; + virtual bool IsRunning() const wxOVERRIDE; + +protected: + virtual wxSize DoGetBestClientSize() const wxOVERRIDE; + +private: + class wxActivityIndicatorImpl *m_impl; + +#ifndef wxHAS_NATIVE_ACTIVITYINDICATOR + wxDECLARE_DYNAMIC_CLASS(wxActivityIndicator); +#endif +}; + +#endif // _WX_GENERIC_ACTIVITYINDICATOR_H_ diff --git a/include/wx/gtk/activityindicator.h b/include/wx/gtk/activityindicator.h new file mode 100644 index 0000000000..72889dfcd0 --- /dev/null +++ b/include/wx/gtk/activityindicator.h @@ -0,0 +1,66 @@ +/////////////////////////////////////////////////////////////////////////////// +// Name: wx/gtk/activityindicator.h +// Purpose: Declaration of wxActivityIndicator for wxGTK. +// Author: Vadim Zeitlin +// Created: 2015-03-05 +// Copyright: (c) 2015 Vadim Zeitlin +// Licence: wxWindows licence +/////////////////////////////////////////////////////////////////////////////// + +#ifndef _WX_GTK_ACTIVITYINDICATOR_H_ +#define _WX_GTK_ACTIVITYINDICATOR_H_ + +// With GTK+ 3 we can always be certain that this control is available, so use +// the normal base class. With GTK+ 2 however, we may determine during run-time +// that we need to fall back to the generic implementation because the GTK+ +// version is earlier than 2.20, so we need to inherit from the generic class. +#ifdef __WXGTK3__ + #define wxActivityIndicatorGtkBase wxActivityIndicatorBase +#else + #include "wx/generic/activityindicator.h" + + #define wxActivityIndicatorGtkBase wxActivityIndicatorGeneric +#endif + +// ---------------------------------------------------------------------------- +// wxActivityIndicator: implementation using GtkSpinner. +// ---------------------------------------------------------------------------- + +class WXDLLIMPEXP_ADV wxActivityIndicator : public wxActivityIndicatorGtkBase +{ +public: + wxActivityIndicator() + { + } + + explicit + wxActivityIndicator(wxWindow* parent, + wxWindowID winid = wxID_ANY, + const wxPoint& pos = wxDefaultPosition, + const wxSize& size = wxDefaultSize, + long style = 0, + const wxString& name = wxActivityIndicatorNameStr) + { + Create(parent, winid, pos, size, style, name); + } + + bool Create(wxWindow* parent, + wxWindowID winid = wxID_ANY, + const wxPoint& pos = wxDefaultPosition, + const wxSize& size = wxDefaultSize, + long style = 0, + const wxString& name = wxActivityIndicatorNameStr); + + virtual void Start() wxOVERRIDE; + virtual void Stop() wxOVERRIDE; + virtual bool IsRunning() const wxOVERRIDE; + +protected: + virtual wxSize DoGetBestClientSize() const wxOVERRIDE; + +private: + wxDECLARE_DYNAMIC_CLASS(wxActivityIndicator); + wxDECLARE_NO_COPY_CLASS(wxActivityIndicator); +}; + +#endif // _WX_GTK_ACTIVITYINDICATOR_H_ diff --git a/include/wx/gtk/private/value.h b/include/wx/gtk/private/value.h new file mode 100644 index 0000000000..e6ce836a2f --- /dev/null +++ b/include/wx/gtk/private/value.h @@ -0,0 +1,43 @@ +/////////////////////////////////////////////////////////////////////////////// +// Name: wx/gtk/private/value.h +// Purpose: Helper wrapper for working with GValue. +// Author: Vadim Zeitlin +// Created: 2015-03-05 +// Copyright: (c) 2015 Vadim Zeitlin +// Licence: wxWindows licence +/////////////////////////////////////////////////////////////////////////////// + +#ifndef _WX_GTK_PRIVATE_VALUE_H_ +#define _WX_GTK_PRIVATE_VALUE_H_ + +// ---------------------------------------------------------------------------- +// wxGtkValue: RAII wrapper for GValue +// ---------------------------------------------------------------------------- + +class wxGtkValue +{ +public: + // Initialize the value of the specified type. + explicit wxGtkValue(GType gtype) + : m_val(G_VALUE_INIT) + { + g_value_init(&m_val, gtype); + } + + ~wxGtkValue() + { + g_value_unset(&m_val); + } + + // Unsafe but convenient access to the real value for GTK+ functions. + operator GValue*() { return &m_val; } + +private: + GValue m_val; + + // For now we just don't support copying at all for simplicity, it could be + // implemented later if needed. + wxDECLARE_NO_COPY_CLASS(wxGtkValue); +}; + +#endif // _WX_GTK_PRIVATE_VALUE_H_ diff --git a/include/wx/gtk/setup0.h b/include/wx/gtk/setup0.h index 5a3473b8fc..a274060eb0 100644 --- a/include/wx/gtk/setup0.h +++ b/include/wx/gtk/setup0.h @@ -824,6 +824,7 @@ // Default is 1 // // Recommended setting: 1 +#define wxUSE_ACTIVITYINDICATOR 1 // wxActivityIndicator #define wxUSE_ANIMATIONCTRL 1 // wxAnimationCtrl #define wxUSE_BANNERWINDOW 1 // wxBannerWindow #define wxUSE_BUTTON 1 // wxButton diff --git a/include/wx/motif/setup0.h b/include/wx/motif/setup0.h index 245e0b6fa2..ff8a102a8a 100644 --- a/include/wx/motif/setup0.h +++ b/include/wx/motif/setup0.h @@ -824,6 +824,7 @@ // Default is 1 // // Recommended setting: 1 +#define wxUSE_ACTIVITYINDICATOR 1 // wxActivityIndicator #define wxUSE_ANIMATIONCTRL 1 // wxAnimationCtrl #define wxUSE_BANNERWINDOW 1 // wxBannerWindow #define wxUSE_BUTTON 1 // wxButton diff --git a/include/wx/msw/setup0.h b/include/wx/msw/setup0.h index 177727dad0..e1cdd5c14f 100644 --- a/include/wx/msw/setup0.h +++ b/include/wx/msw/setup0.h @@ -824,6 +824,7 @@ // Default is 1 // // Recommended setting: 1 +#define wxUSE_ACTIVITYINDICATOR 1 // wxActivityIndicator #define wxUSE_ANIMATIONCTRL 1 // wxAnimationCtrl #define wxUSE_BANNERWINDOW 1 // wxBannerWindow #define wxUSE_BUTTON 1 // wxButton diff --git a/include/wx/msw/wince/setup.h b/include/wx/msw/wince/setup.h index f94437f4f6..082e465177 100644 --- a/include/wx/msw/wince/setup.h +++ b/include/wx/msw/wince/setup.h @@ -824,6 +824,7 @@ // Default is 1 // // Recommended setting: 1 +#define wxUSE_ACTIVITYINDICATOR 1 // wxActivityIndicator #define wxUSE_ANIMATIONCTRL 1 // wxAnimationCtrl #define wxUSE_BANNERWINDOW 1 // wxBannerWindow #define wxUSE_BUTTON 1 // wxButton diff --git a/include/wx/osx/activityindicator.h b/include/wx/osx/activityindicator.h new file mode 100644 index 0000000000..a6f78231a8 --- /dev/null +++ b/include/wx/osx/activityindicator.h @@ -0,0 +1,59 @@ +/////////////////////////////////////////////////////////////////////////////// +// Name: wx/osx/activityindicator.h +// Purpose: Declaration of wxActivityIndicator for wxOSX (Cocoa only). +// Author: Vadim Zeitlin +// Created: 2015-03-08 +// Copyright: (c) 2015 Vadim Zeitlin +// Licence: wxWindows licence +/////////////////////////////////////////////////////////////////////////////// + +#ifndef _WX_OSX_ACTIVITYINDICATOR_H_ +#define _WX_OSX_ACTIVITYINDICATOR_H_ + +// ---------------------------------------------------------------------------- +// wxActivityIndicator: implementation using GtkSpinner. +// ---------------------------------------------------------------------------- + +class WXDLLIMPEXP_ADV wxActivityIndicator : public wxActivityIndicatorBase +{ +public: + wxActivityIndicator() + { + Init(); + } + + explicit + wxActivityIndicator(wxWindow* parent, + wxWindowID winid = wxID_ANY, + const wxPoint& pos = wxDefaultPosition, + const wxSize& size = wxDefaultSize, + long style = 0, + const wxString& name = wxActivityIndicatorNameStr) + { + Init(); + + Create(parent, winid, pos, size, style, name); + } + + bool Create(wxWindow* parent, + wxWindowID winid = wxID_ANY, + const wxPoint& pos = wxDefaultPosition, + const wxSize& size = wxDefaultSize, + long style = 0, + const wxString& name = wxActivityIndicatorNameStr); + + virtual void Start() wxOVERRIDE; + virtual void Stop() wxOVERRIDE; + virtual bool IsRunning() const wxOVERRIDE; + +private: + // Common part of all ctors. + void Init() { m_isRunning = false; } + + bool m_isRunning; + + wxDECLARE_DYNAMIC_CLASS(wxActivityIndicator); + wxDECLARE_NO_COPY_CLASS(wxActivityIndicator); +}; + +#endif // _WX_OSX_ACTIVITYINDICATOR_H_ diff --git a/include/wx/osx/setup0.h b/include/wx/osx/setup0.h index cb437e7b31..48d7bd9f2e 100644 --- a/include/wx/osx/setup0.h +++ b/include/wx/osx/setup0.h @@ -825,6 +825,7 @@ // Default is 1 // // Recommended setting: 1 +#define wxUSE_ACTIVITYINDICATOR 1 // wxActivityIndicator #define wxUSE_ANIMATIONCTRL 1 // wxAnimationCtrl #define wxUSE_BANNERWINDOW 1 // wxBannerWindow #define wxUSE_BUTTON 1 // wxButton diff --git a/include/wx/setup_inc.h b/include/wx/setup_inc.h index ccf4eb9395..31bdeea713 100644 --- a/include/wx/setup_inc.h +++ b/include/wx/setup_inc.h @@ -820,6 +820,7 @@ // Default is 1 // // Recommended setting: 1 +#define wxUSE_ACTIVITYINDICATOR 1 // wxActivityIndicator #define wxUSE_ANIMATIONCTRL 1 // wxAnimationCtrl #define wxUSE_BANNERWINDOW 1 // wxBannerWindow #define wxUSE_BUTTON 1 // wxButton diff --git a/include/wx/univ/setup0.h b/include/wx/univ/setup0.h index 8a636c79b7..5b8c89be69 100644 --- a/include/wx/univ/setup0.h +++ b/include/wx/univ/setup0.h @@ -823,6 +823,7 @@ // Default is 1 // // Recommended setting: 1 +#define wxUSE_ACTIVITYINDICATOR 1 // wxActivityIndicator #define wxUSE_ANIMATIONCTRL 1 // wxAnimationCtrl #define wxUSE_BANNERWINDOW 1 // wxBannerWindow #define wxUSE_BUTTON 1 // wxButton diff --git a/interface/wx/activityindicator.h b/interface/wx/activityindicator.h new file mode 100644 index 0000000000..09af16896a --- /dev/null +++ b/interface/wx/activityindicator.h @@ -0,0 +1,80 @@ +/////////////////////////////////////////////////////////////////////////////// +// Name: wx/activityindicator.h +// Purpose: wxActivityIndicator documentation. +// Author: Vadim Zeitlin +// Created: 2015-03-05 +// Copyright: (c) 2015 Vadim Zeitlin +// Licence: wxWindows licence +/////////////////////////////////////////////////////////////////////////////// + +/** + @class wxActivityIndicator + + Small control showing an animation indicating that the program is currently + busy performing some background task. + + @since 3.1.0 + + @library{wxadv} + @category{ctrl} + @appearance{activityindicator} + */ +class wxActivityIndicator : public wxControl +{ +public: + /** + Default constructor. + + Use Create() to really create the control after using this constructor. + */ + wxActivityIndicator(); + + /** + Constructor fully creating the control. + + The arguments have the usual meanings and only @a parent is typically + required. + */ + explicit wxActivityIndicator(wxWindow* parent, + wxWindowID winid = wxID_ANY, + const wxPoint& pos = wxDefaultPosition, + const wxSize& size = wxDefaultSize, + long style = 0, + const wxString& name = "activityindicator"); + + /** + Create the control initialized using the default constructor. + + This method can be used to finish the control creation if it hadn't + been done already by using the non-default constructor. + */ + bool Create(wxWindow* parent, + wxWindowID winid = wxID_ANY, + const wxPoint& pos = wxDefaultPosition, + const wxSize& size = wxDefaultSize, + long style = 0, + const wxString& name = "activityindicator"); + + /** + Starts animation of the indicator. + + Does nothing if the indicator is already running. + */ + void Start(); + + /** + Stops the animation of the indicator. + + Notice that the animation is stopped even if Start() had been called + multiple times before, i.e. the calls are not cumulative. + */ + void Stop(); + + /** + Returns true if the control is currently showing activity. + + Returns @false initially, @true once Start() is called and @false again + after calling Stop(). + */ + bool IsRunning() const; +}; diff --git a/samples/widgets/Makefile.in b/samples/widgets/Makefile.in index 7e56e3d870..5adc5baee8 100644 --- a/samples/widgets/Makefile.in +++ b/samples/widgets/Makefile.in @@ -50,6 +50,7 @@ WIDGETS_CXXFLAGS = -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) $(__DEBUG_DEFINE_p) \ -I$(srcdir) $(__DLLFLAG_p) -I$(srcdir)/../../samples $(CXXWARNINGS) \ $(SAMPLES_CXXFLAGS) $(CPPFLAGS) $(CXXFLAGS) WIDGETS_OBJECTS = \ + widgets_activityindicator.o \ widgets_bmpcombobox.o \ widgets_button.o \ widgets_checkbox.o \ @@ -210,6 +211,9 @@ widgets$(EXEEXT): $(WIDGETS_OBJECTS) $(__widgets___win32rc) @COND_PLATFORM_MACOSX_1@widgets_bundle: $(____widgets_BUNDLE_TGT_REF_DEP) +widgets_activityindicator.o: $(srcdir)/activityindicator.cpp + $(CXXC) -c -o $@ $(WIDGETS_CXXFLAGS) $(srcdir)/activityindicator.cpp + widgets_bmpcombobox.o: $(srcdir)/bmpcombobox.cpp $(CXXC) -c -o $@ $(WIDGETS_CXXFLAGS) $(srcdir)/bmpcombobox.cpp diff --git a/samples/widgets/activityindicator.cpp b/samples/widgets/activityindicator.cpp new file mode 100644 index 0000000000..23c3bb4bff --- /dev/null +++ b/samples/widgets/activityindicator.cpp @@ -0,0 +1,151 @@ +///////////////////////////////////////////////////////////////////////////// +// Program: wxWidgets Widgets Sample +// Name: activityindicator.cpp +// Purpose: Part of the widgets sample showing wxActivityIndicator +// Author: Vadim Zeitlin +// Created: 2015-03-06 +// Copyright: (c) 2015 wxWindows team +// Licence: wxWindows licence +///////////////////////////////////////////////////////////////////////////// + +// ============================================================================ +// declarations +// ============================================================================ + +// ---------------------------------------------------------------------------- +// headers +// ---------------------------------------------------------------------------- + +// for compilers that support precompilation, includes "wx/wx.h". +#include "wx/wxprec.h" + +#ifdef __BORLANDC__ + #pragma hdrstop +#endif + +// for all others, include the necessary headers +#ifndef WX_PRECOMP + #include "wx/button.h" + #include "wx/sizer.h" + #include "wx/stattext.h" +#endif + +#include "wx/activityindicator.h" + +#include "widgets.h" + +#include "icons/activityindicator.xpm" + +// ---------------------------------------------------------------------------- +// constants +// ---------------------------------------------------------------------------- + +// Control IDs +enum +{ + ActivityIndicator_Start = wxID_HIGHEST, + ActivityIndicator_Stop, + ActivityIndicator_IsRunning +}; + +// ---------------------------------------------------------------------------- +// ActivityIndicatorWidgetsPage +// ---------------------------------------------------------------------------- + +class ActivityIndicatorWidgetsPage : public WidgetsPage +{ +public: + ActivityIndicatorWidgetsPage(WidgetsBookCtrl *book, wxImageList *imaglist) + : WidgetsPage(book, imaglist, activityindicator_xpm) + { + m_indicator = NULL; + m_sizerIndicator = NULL; + } + + virtual wxControl *GetWidget() const wxOVERRIDE { return m_indicator; } + virtual void RecreateWidget() wxOVERRIDE; + + // lazy creation of the content + virtual void CreateContent() wxOVERRIDE; + +protected: + void OnButtonStart(wxCommandEvent&) { m_indicator->Start(); } + void OnButtonStop(wxCommandEvent&) { m_indicator->Stop(); } + + void OnUpdateIsRunning(wxUpdateUIEvent& event) + { + event.SetText(m_indicator && m_indicator->IsRunning() + ? "Indicator is running" + : "Indicator is stopped"); + } + + // the indicator itself and the sizer it is in + wxActivityIndicator *m_indicator; + wxSizer *m_sizerIndicator; + +private: + wxDECLARE_EVENT_TABLE(); + DECLARE_WIDGETS_PAGE(ActivityIndicatorWidgetsPage) +}; + +// ---------------------------------------------------------------------------- +// event tables +// ---------------------------------------------------------------------------- + +wxBEGIN_EVENT_TABLE(ActivityIndicatorWidgetsPage, WidgetsPage) + EVT_BUTTON(ActivityIndicator_Start, + ActivityIndicatorWidgetsPage::OnButtonStart) + EVT_BUTTON(ActivityIndicator_Stop, + ActivityIndicatorWidgetsPage::OnButtonStop) + + EVT_UPDATE_UI(ActivityIndicator_IsRunning, + ActivityIndicatorWidgetsPage::OnUpdateIsRunning) +wxEND_EVENT_TABLE() + +// ============================================================================ +// implementation +// ============================================================================ + +IMPLEMENT_WIDGETS_PAGE(ActivityIndicatorWidgetsPage, + wxT("ActivityIndicator"), NATIVE_CTRLS); + +void ActivityIndicatorWidgetsPage::CreateContent() +{ + wxSizer* const sizerOper = new wxStaticBoxSizer(wxVERTICAL, this, + "&Operations"); + + sizerOper->Add(new wxButton(this, ActivityIndicator_Start, "&Start"), + wxSizerFlags().Expand().Border()); + sizerOper->Add(new wxButton(this, ActivityIndicator_Stop, "&Stop"), + wxSizerFlags().Expand().Border()); + + sizerOper->Add(new wxStaticText(this, ActivityIndicator_IsRunning, + "Indicator is initializing..."), + wxSizerFlags().Expand().Border()); + + + m_sizerIndicator = new wxStaticBoxSizer(wxHORIZONTAL, this, + "Activity Indicator"); + RecreateWidget(); + + + wxSizer* const sizerTop = new wxBoxSizer(wxHORIZONTAL); + sizerTop->Add(sizerOper, wxSizerFlags().Expand().DoubleBorder()); + sizerTop->Add(m_sizerIndicator, wxSizerFlags(1).Expand().DoubleBorder()); + + SetSizer(sizerTop); +} + +void ActivityIndicatorWidgetsPage::RecreateWidget() +{ + m_sizerIndicator->Clear(true /* delete windows */); + + m_indicator = new wxActivityIndicator(this, wxID_ANY, + wxDefaultPosition, wxDefaultSize, + GetAttrs().m_defaultFlags); + + m_sizerIndicator->AddStretchSpacer(); + m_sizerIndicator->Add(m_indicator, wxSizerFlags().Centre()); + m_sizerIndicator->AddStretchSpacer(); + m_sizerIndicator->Layout(); +} diff --git a/samples/widgets/icons/activityindicator.xpm b/samples/widgets/icons/activityindicator.xpm new file mode 100644 index 0000000000..02e53605fd --- /dev/null +++ b/samples/widgets/icons/activityindicator.xpm @@ -0,0 +1,278 @@ +/* XPM */ +static const char *const activityindicator_xpm[] = { +/* columns rows colors chars-per-pixel */ +"16 16 256 2 ", +" c None", +". c gray93", +"X c gray93", +"o c gray93", +"O c gray93", +"+ c gray93", +"@ c #D5D6D6", +"# c #828587", +"$ c #828587", +"% c #D6D6D7", +"& c gray93", +"* c gray93", +"= c gray93", +"- c gray93", +"; c gray93", +": c gray93", +"> c gray93", +", c gray93", +"< c #E9E9E9", +"1 c #DDDDDD", +"2 c #ECECEC", +"3 c gray93", +"4 c #ABACAE", +"5 c #747779", +"6 c #747779", +"7 c #ABACAE", +"8 c gray93", +"9 c #ECECEC", +"0 c #D4D5D6", +"q c #E7E7E8", +"w c gray93", +"e c gray93", +"r c gray93", +"t c #E9E9E9", +"y c #9A9C9D", +"u c #8C8F90", +"i c #ABADAE", +"p c gray93", +"a c #CACACB", +"s c #76797B", +"d c #76797B", +"f c #CACACB", +"g c gray93", +"h c #8A8D8E", +"j c #5C6162", +"k c #717676", +"l c gray91", +"z c gray93", +"x c gray93", +"c c gray87", +"v c #8C8F90", +"b c #8C8F90", +"n c #929596", +"m c gray93", +"M c gray93", +"N c #E1E1E2", +"B c #E1E1E2", +"V c gray93", +"C c gray93", +"Z c #646869", +"A c #5C6162", +"S c #5C6162", +"D c #D7D8D8", +"F c gray93", +"G c gray93", +"H c #ECECEC", +"J c #ACAEAF", +"K c #929596", +"L c #BFC0C1", +"P c gray93", +"I c gray93", +"U c gray93", +"Y c gray93", +"T c gray93", +"R c gray93", +"E c #A7A9AA", +"W c #64696A", +"Q c #8C8F90", +"! c #ECECEC", +"~ c gray93", +"^ c gray93", +"/ c gray93", +"( c gray93", +") c gray93", +"_ c gray93", +"` c gray93", +"' c gray93", +"] c gray93", +"[ c gray93", +"{ c gray93", +"} c gray93", +"| c gray93", +" . c gray93", +".. c gray93", +"X. c gray93", +"o. c gray93", +"O. c #DFDFDF", +"+. c #C4C5C6", +"@. c #D8D8D9", +"#. c gray93", +"$. c gray93", +"%. c gray93", +"&. c gray93", +"*. c gray93", +"=. c gray93", +"-. c gray93", +";. c gray93", +":. c gray93", +">. c gray93", +",. c #BCBDBE", +"<. c #8E9192", +"1. c #CCCDCD", +"2. c #ACAEAF", +"3. c #A4A6A7", +"4. c #A5A7A8", +"5. c #E6E7E7", +"6. c gray93", +"7. c gray93", +"8. c gray93", +"9. c gray93", +"0. c gray93", +"q. c gray93", +"w. c gray93", +"e. c gray93", +"r. c #DDDEDE", +"t. c #464B4D", +"y. c #44494B", +"u. c #585D5F", +"i. c #ADAFAF", +"p. c #A4A6A7", +"a. c #A5A7A8", +"s. c #E6E7E7", +"d. c gray93", +"f. c gray93", +"g. c gray93", +"h. c gray93", +"j. c gray93", +"k. c gray93", +"l. c gray93", +"z. c gray93", +"x. c #DDDEDE", +"c. c #474B4D", +"v. c #44494B", +"b. c #585D5F", +"n. c #DFDFE0", +"m. c #C5C6C6", +"M. c #D8D8D9", +"N. c gray93", +"B. c gray93", +"V. c gray93", +"C. c gray93", +"Z. c gray93", +"A. c gray93", +"S. c gray93", +"D. c gray93", +"F. c gray93", +"G. c gray93", +"H. c #BCBDBE", +"J. c #8F9293", +"K. c #CFD0D0", +"L. c gray93", +"P. c gray93", +"I. c gray93", +"U. c gray93", +"Y. c gray93", +"T. c gray93", +"R. c gray93", +"E. c gray93", +"W. c gray93", +"Q. c gray93", +"!. c gray93", +"~. c gray93", +"^. c gray93", +"/. c gray93", +"(. c gray93", +"). c gray93", +"_. c gray93", +"`. c gray93", +"'. c #CBCDCD", +"]. c #BEC0C0", +"[. c #D5D6D6", +"{. c gray93", +"}. c gray93", +"|. c gray93", +" X c gray93", +".X c gray93", +"XX c gray93", +"oX c #929596", +"OX c #3F4445", +"+X c #717576", +"@X c #ECECEC", +"#X c gray93", +"$X c gray93", +"%X c #E5E6E6", +"&X c #BCBEBE", +"*X c #BCBEBE", +"=X c #BEC0C0", +"-X c gray93", +";X c gray93", +":X c #EAEAEB", +">X c #EAEAEB", +",X c gray93", +" + activityindicator.cpp bmpcombobox.cpp button.cpp checkbox.cpp diff --git a/samples/widgets/widgets_vc7.vcproj b/samples/widgets/widgets_vc7.vcproj index 8840619ca7..bfc565a52c 100644 --- a/samples/widgets/widgets_vc7.vcproj +++ b/samples/widgets/widgets_vc7.vcproj @@ -283,6 +283,9 @@ Name="Source Files" Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx" UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"> + + diff --git a/samples/widgets/widgets_vc8.vcproj b/samples/widgets/widgets_vc8.vcproj index 6f9c4531e9..bc14353d8a 100644 --- a/samples/widgets/widgets_vc8.vcproj +++ b/samples/widgets/widgets_vc8.vcproj @@ -806,6 +806,10 @@ Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx" UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}" > + + diff --git a/samples/widgets/widgets_vc9.vcproj b/samples/widgets/widgets_vc9.vcproj index a4f578f07a..7d29fc0c2c 100644 --- a/samples/widgets/widgets_vc9.vcproj +++ b/samples/widgets/widgets_vc9.vcproj @@ -778,6 +778,10 @@ Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx" UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}" > + + diff --git a/setup.h.in b/setup.h.in index 1aec146871..18cc641f92 100644 --- a/setup.h.in +++ b/setup.h.in @@ -364,6 +364,7 @@ #define wxUSE_TIPWINDOW 0 +#define wxUSE_ACTIVITYINDICATOR 0 #define wxUSE_ANIMATIONCTRL 0 #define wxUSE_BANNERWINDOW 0 #define wxUSE_BUTTON 0 diff --git a/src/generic/activityindicator.cpp b/src/generic/activityindicator.cpp new file mode 100644 index 0000000000..cef9eb43fa --- /dev/null +++ b/src/generic/activityindicator.cpp @@ -0,0 +1,260 @@ +/////////////////////////////////////////////////////////////////////////////// +// Name: src/generic/activityindicator.cpp +// Purpose: Generic wxActivityIndicator implementation. +// Author: Vadim Zeitlin +// Created: 2015-03-06 +// Copyright: (c) 2015 Vadim Zeitlin +// Licence: wxWindows licence +/////////////////////////////////////////////////////////////////////////////// + +// ============================================================================ +// declarations +// ============================================================================ + +// ---------------------------------------------------------------------------- +// headers +// ---------------------------------------------------------------------------- + +// for compilers that support precompilation, includes "wx.h". +#include "wx/wxprec.h" + +#ifdef __BORLANDC__ + #pragma hdrstop +#endif + +#if wxUSE_ACTIVITYINDICATOR && !defined(__WXGTK3__) + +#ifndef WX_PRECOMP + #include "wx/timer.h" +#endif // WX_PRECOMP + +#include "wx/activityindicator.h" + +#include "wx/graphics.h" +#include "wx/scopedptr.h" + +// ---------------------------------------------------------------------------- +// constants +// ---------------------------------------------------------------------------- + +// For now the appearance is fixed, we could make these constants customizable +// later if really needed. +namespace +{ + +// Total number of "running" dots. +static const int NUM_DOTS = 8; + +// Delay between the consecutive updates in milliseconds. +static const int FRAME_DELAY = 150; + +} // anonymous namespace + +// ---------------------------------------------------------------------------- +// wxActivityIndicatorImpl: class containing the real implementation. +// ---------------------------------------------------------------------------- + +class wxActivityIndicatorImpl +{ +public: + explicit wxActivityIndicatorImpl(wxWindow* win) + : m_timer(this), + m_win(win) + { + m_frame = 0; + + win->Bind(wxEVT_PAINT, &wxActivityIndicatorImpl::OnPaint, this); + } + + void Start() + { + // Avoid restarting the timer if it's already running, this could + // result in jumps in appearance of the next frame while calling + // Start() is not supposed to have any effect at all in this case. + if ( m_timer.IsRunning() ) + return; + + m_timer.Start(FRAME_DELAY); + } + + void Stop() + { + // Unlike above, it's not a problem to call Stop() even if we're not + // running. + m_timer.Stop(); + } + + bool IsRunning() const + { + return m_timer.IsRunning(); + } + + // This one is only called by AdvanceTimer. + void Advance() + { + if ( ++m_frame == NUM_DOTS ) + m_frame = 0; + + m_win->Refresh(); + } + +private: + class AdvanceTimer : public wxTimer + { + public: + explicit AdvanceTimer(wxActivityIndicatorImpl* owner) + : m_owner(owner) + { + } + + virtual void Notify() wxOVERRIDE + { + m_owner->Advance(); + } + + private: + wxActivityIndicatorImpl* const m_owner; + + wxDECLARE_NO_COPY_CLASS(AdvanceTimer); + }; + + void OnPaint(wxPaintEvent& WXUNUSED(event)) + { + wxPaintDC pdc(m_win); + + wxScopedPtr const + gc(wxGraphicsRenderer::GetDefaultRenderer()->CreateContext(pdc)); + + const wxSize size = m_win->GetClientSize(); + + // Centre everything. + gc->Translate(size.x/2., size.y/2.); + + // Radius of 1/10th allows to have reasonably sized dots with a bit of + // separation between them and so subjectively looks a bit nicer than + // perhaps more natural 1/8th. + static const double RADIUS_FACTOR = 10; + + const double r = wxMin(size.x, size.y) / RADIUS_FACTOR; + + // The initial dot touches the top border. + wxGraphicsPath path = gc->CreatePath(); + path.AddCircle(0, -(RADIUS_FACTOR / 2. - 1.)*r, r); + + // Subsequent dots are rotated by this angle with respect to the + // previous one. + const double angle = wxDegToRad(360. / NUM_DOTS); + + // And the animation effect is achieved just by starting to draw from + // the next position every time. + gc->Rotate(m_frame*angle); + + const bool isEnabled = m_win->IsEnabled(); + for ( int n = 0; n < NUM_DOTS; n++ ) + { + // Draw all dots uniformly grey when the window is disabled, + // otherwise each subsequent dot is slightly more opaque. + const int opacityIndex = isEnabled ? n + 1 : 2; + + // wxALPHA_OPAQUE+1 is used just because it is divisible by the + // default NUM_DOTS value, and we need -1 because of this to keep + // it in 0..wxALPHA_OPAQUE range. + const int opacity = opacityIndex*(wxALPHA_OPAQUE + 1)/NUM_DOTS - 1; + + gc->SetBrush(wxBrush(wxColour(0, 0, 0, opacity))); + + gc->FillPath(path); + gc->Rotate(angle); + } + } + + AdvanceTimer m_timer; + wxWindow* const m_win; + + int m_frame; + + wxDECLARE_NO_COPY_CLASS(wxActivityIndicatorImpl); +}; + +// ============================================================================ +// implementation +// ============================================================================ + +#ifndef wxHAS_NATIVE_ACTIVITYINDICATOR + wxIMPLEMENT_DYNAMIC_CLASS(wxActivityIndicator, wxControl); +#endif + +bool +wxActivityIndicatorGeneric::Create(wxWindow* parent, + wxWindowID winid, + const wxPoint& pos, + const wxSize& size, + long style, + const wxString& name) +{ + // Notice that we skip wxControl version, we don't need the validator + // support that it adds. + if ( !wxWindow::Create(parent, winid, pos, size, style, name) ) + return false; + + m_impl = new wxActivityIndicatorImpl(this); + + return true; +} + +wxActivityIndicatorGeneric::~wxActivityIndicatorGeneric() +{ + delete m_impl; +} + +void wxActivityIndicatorGeneric::Start() +{ + wxCHECK_RET( m_impl, wxS("Must be created first") ); + + m_impl->Start(); +} + +void wxActivityIndicatorGeneric::Stop() +{ + wxCHECK_RET( m_impl, wxS("Must be created first") ); + + m_impl->Stop(); +} + +bool wxActivityIndicatorGeneric::IsRunning() const +{ + return m_impl && m_impl->IsRunning(); +} + +wxSize wxActivityIndicatorGeneric::DoGetBestClientSize() const +{ + int size = 0; + switch ( GetWindowVariant() ) + { + case wxWINDOW_VARIANT_MAX: + wxFAIL_MSG(wxS("Invalid window variant")); + wxFALLTHROUGH; + + case wxWINDOW_VARIANT_NORMAL: + size = 24; + break; + + case wxWINDOW_VARIANT_SMALL: + size = 16; + break; + + case wxWINDOW_VARIANT_MINI: + size = 12; + break; + + case wxWINDOW_VARIANT_LARGE: + size = 32; + break; + } + + wxASSERT_MSG( size, wxS("Unknown window variant") ); + + return FromDIP(wxSize(size, size)); +} + +#endif // wxUSE_ACTIVITYINDICATOR && !__WXGTK3__ diff --git a/src/gtk/activityindicator.cpp b/src/gtk/activityindicator.cpp new file mode 100644 index 0000000000..c64d84601a --- /dev/null +++ b/src/gtk/activityindicator.cpp @@ -0,0 +1,168 @@ +/////////////////////////////////////////////////////////////////////////////// +// Name: src/gtk/activityindicator.cpp +// Purpose: wxActivityIndicator implementation for wxGTK. +// Author: Vadim Zeitlin +// Created: 2015-03-05 +// Copyright: (c) 2015 Vadim Zeitlin +// Licence: wxWindows licence +/////////////////////////////////////////////////////////////////////////////// + +// ============================================================================ +// declarations +// ============================================================================ + +// ---------------------------------------------------------------------------- +// headers +// ---------------------------------------------------------------------------- + +// for compilers that support precompilation, includes "wx.h". +#include "wx/wxprec.h" + +#ifdef __BORLANDC__ + #pragma hdrstop +#endif + +#if wxUSE_ACTIVITYINDICATOR && defined(__WXGTK220__) + +#include "wx/activityindicator.h" + +#include "wx/math.h" + +#include + +// Macro return the specified expression only if GTK+ run time version is less +// than 2.20 and compiling it only if it is less than 3.0 (which is why this +// has to be a macro and not a function). +#if defined(__WXGTK220__) && !defined(__WXGTK3__) + #define RETURN_IF_NO_GTK_SPINNER(expr) \ + if ( gtk_check_version(2, 20, 0) != 0 ) { return expr; } +#else + #define RETURN_IF_NO_GTK_SPINNER(expr) +#endif + +// ============================================================================ +// implementation +// ============================================================================ + +wxIMPLEMENT_DYNAMIC_CLASS(wxActivityIndicator, wxControl); + +bool +wxActivityIndicator::Create(wxWindow* parent, + wxWindowID winid, + const wxPoint& pos, + const wxSize& size, + long style, + const wxString& name) +{ + RETURN_IF_NO_GTK_SPINNER( + wxActivityIndicatorGeneric::Create(parent, winid, pos, size, style, name) + ) + + if ( !PreCreation(parent, pos, size) || + !CreateBase(parent, winid, pos, size, style, name) ) + return false; + + m_widget = gtk_spinner_new(); + g_object_ref(m_widget); + + m_parent->DoAddChild(this); + + PostCreation(size); + + return true; +} + +void wxActivityIndicator::Start() +{ + RETURN_IF_NO_GTK_SPINNER( wxActivityIndicatorGeneric::Start() ) + + wxCHECK_RET( m_widget, wxS("Must be created first") ); + + gtk_spinner_start(GTK_SPINNER(m_widget)); +} + +void wxActivityIndicator::Stop() +{ + RETURN_IF_NO_GTK_SPINNER( wxActivityIndicatorGeneric::Stop() ) + + wxCHECK_RET( m_widget, wxS("Must be created first") ); + + gtk_spinner_stop(GTK_SPINNER(m_widget)); +} + +bool wxActivityIndicator::IsRunning() const +{ + RETURN_IF_NO_GTK_SPINNER( wxActivityIndicatorGeneric::IsRunning() ) + + if ( !m_widget ) + return false; + + gboolean b; + g_object_get(m_widget, "active", &b, NULL); + + return b != 0; +} + +wxSize wxActivityIndicator::DoGetBestClientSize() const +{ + RETURN_IF_NO_GTK_SPINNER( wxActivityIndicatorGeneric::DoGetBestClientSize() ) + + if ( !m_widget ) + return wxDefaultSize; + + gint w, h; + +#ifdef __WXGTK3__ + // gtk_widget_get_preferred_size() seems to return the size based on the + // current size of the widget and also always returns 0 if it is hidden, + // so ask GtkSpinner for its preferred size directly instead of using it. + GtkWidgetClass* const wc = GTK_WIDGET_GET_CLASS(m_widget); + + // We're not interested in the natural size (and it's the same as minimal + // one anyhow currently), but we still need a non-NULL pointer for it. + gint dummy; + wc->get_preferred_width(m_widget, &w, &dummy); + wc->get_preferred_height(m_widget, &h, &dummy); +#else // GTK+ 2 + // GTK+ 2 doesn't return any valid preferred size for this control, so we + // use the size of something roughly equivalent to it. + gtk_icon_size_lookup(GTK_ICON_SIZE_MENU, &w, &h); +#endif // GTK+ 3/2 + + // Adjust for the window variant: note that the default size in GTK+ 3 is + // really small (12px until ~3.10, 16px since then), so we use this size as + // the small size and double it for the normal size. + double factor = 0.; + switch ( GetWindowVariant() ) + { + case wxWINDOW_VARIANT_MAX: + wxFAIL_MSG(wxS("Invalid window variant")); + wxFALLTHROUGH; + + case wxWINDOW_VARIANT_NORMAL: + factor = 2.; + break; + + case wxWINDOW_VARIANT_SMALL: + factor = 1.; + break; + + case wxWINDOW_VARIANT_MINI: + factor = 0.75; + break; + + case wxWINDOW_VARIANT_LARGE: + // GTK+ 3.11+ limits GtkSpinner size to twice its minimal size, so + // the effective factor here is actually just 2, i.e. the same as + // for the normal size, but use something larger just in case GTK+ + // changes its mind again later. + factor = 2.5; + break; + } + + wxASSERT_MSG( !wxIsSameDouble(factor, 0), wxS("Unknown window variant") ); + + return wxSize(wxRound(w*factor), wxRound(h*factor)); +} + +#endif // wxUSE_ACTIVITYINDICATOR diff --git a/src/osx/cocoa/activityindicator.mm b/src/osx/cocoa/activityindicator.mm new file mode 100644 index 0000000000..dd4cfa4195 --- /dev/null +++ b/src/osx/cocoa/activityindicator.mm @@ -0,0 +1,111 @@ +/////////////////////////////////////////////////////////////////////////////// +// Name: src/osx/cocoa/activityindicator.cpp +// Purpose: wxActivityIndicator implementation for wxOSX/Cocoa. +// Author: Vadim Zeitlin +// Created: 2015-03-08 +// Copyright: (c) 2015 Vadim Zeitlin +// Licence: wxWindows licence +/////////////////////////////////////////////////////////////////////////////// + +// ============================================================================ +// declarations +// ============================================================================ + +// ---------------------------------------------------------------------------- +// headers +// ---------------------------------------------------------------------------- + +// for compilers that support precompilation, includes "wx.h". +#include "wx/wxprec.h" + +#ifdef __BORLANDC__ + #pragma hdrstop +#endif + +#if wxUSE_ACTIVITYINDICATOR + +#include "wx/activityindicator.h" + +#include "wx/osx/private.h" + +// ---------------------------------------------------------------------------- +// local helpers +// ---------------------------------------------------------------------------- + +namespace +{ + +// Return the NSProgressIndicator from the given peer. +inline +NSProgressIndicator *GetProgressIndicator(wxWidgetImpl* peer) +{ + return peer ? static_cast(peer->GetWXWidget()) + : NULL; +} + +} // anonymous namespace + +// ============================================================================ +// implementation +// ============================================================================ + +wxIMPLEMENT_DYNAMIC_CLASS(wxActivityIndicator, wxControl); + +bool +wxActivityIndicator::Create(wxWindow* parent, + wxWindowID winid, + const wxPoint& pos, + const wxSize& size, + long style, + const wxString& name) +{ + DontCreatePeer(); + + // Notice that we skip wxControl version, we don't need the validator + // support that it adds. + if ( !wxWindow::Create(parent, winid, pos, size, style, name) ) + return false; + + NSRect r = wxOSXGetFrameForControl(this, pos , size); + NSProgressIndicator* w = [[NSProgressIndicator alloc] initWithFrame:r]; + [w setStyle: NSProgressIndicatorSpinningStyle]; + + SetPeer(new wxWidgetCocoaImpl(this, w)); + + MacPostControlCreate(pos, size); + + return true; +} + +void wxActivityIndicator::Start() +{ + if ( m_isRunning ) + return; + + NSProgressIndicator* const ind = GetProgressIndicator(GetPeer()); + wxCHECK_RET( ind, wxS("Must be created first") ); + + [ind startAnimation:nil]; + + m_isRunning = true; +} + +void wxActivityIndicator::Stop() +{ + if ( !m_isRunning ) + return; + + NSProgressIndicator* const ind = GetProgressIndicator(GetPeer()); + wxCHECK_RET( ind, wxS("Must be created first") ); + + [ind stopAnimation:nil]; + + m_isRunning = false; +} + +bool wxActivityIndicator::IsRunning() const +{ + return m_isRunning; +} + +#endif // wxUSE_ACTIVITYINDICATOR