Use task dialog for wxProgressDialog implementation in wxMSW.

If available, the task dialog is now used for the wxProgressDialog under
Windows. This provides a much more native looking dialog which doesn't look
out of place under modern Windows versions, unlike the generic implementation.

The internals of the code had to be significantly changed as the task dialog
can only be shown modally so, to emulate wxProgressDialog modeless nature, a
separate thread is used for the progress dialog management.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65352 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin
2010-08-18 22:49:02 +00:00
parent c0938d8506
commit c31d9c7f60
18 changed files with 1606 additions and 290 deletions

View File

@@ -1750,11 +1750,12 @@ ____CORE_SRC_FILENAMES_OBJECTS = \
$(OBJS)\monodll_msgdlg.obj \
$(OBJS)\monodll_nativdlg.obj \
$(OBJS)\monodll_nativewin.obj \
$(OBJS)\monodll_msw_notebook.obj \
$(OBJS)\monodll_access.obj \
$(OBJS)\monodll_ownerdrw.obj \
$(OBJS)\monodll_msw_radiobox.obj \
$(OBJS)\monodll_msw_radiobut.obj \
$(OBJS)\monodll_msw_notebook.obj \
$(OBJS)\monodll_access.obj \
$(OBJS)\monodll_ownerdrw.obj \
$(OBJS)\monodll_progdlg.obj \
$(OBJS)\monodll_msw_radiobox.obj \
$(OBJS)\monodll_msw_radiobut.obj \
$(OBJS)\monodll_richmsgdlg.obj \
$(OBJS)\monodll_msw_scrolbar.obj \
$(OBJS)\monodll_msw_slider.obj \
@@ -2469,11 +2470,12 @@ ____CORE_SRC_FILENAMES_1_OBJECTS = \
$(OBJS)\monolib_msgdlg.obj \
$(OBJS)\monolib_nativdlg.obj \
$(OBJS)\monolib_nativewin.obj \
$(OBJS)\monolib_msw_notebook.obj \
$(OBJS)\monolib_access.obj \
$(OBJS)\monolib_ownerdrw.obj \
$(OBJS)\monolib_msw_radiobox.obj \
$(OBJS)\monolib_msw_radiobut.obj \
$(OBJS)\monolib_msw_notebook.obj \
$(OBJS)\monolib_access.obj \
$(OBJS)\monolib_ownerdrw.obj \
$(OBJS)\monolib_progdlg.obj \
$(OBJS)\monolib_msw_radiobox.obj \
$(OBJS)\monolib_msw_radiobut.obj \
$(OBJS)\monolib_richmsgdlg.obj \
$(OBJS)\monolib_msw_scrolbar.obj \
$(OBJS)\monolib_msw_slider.obj \
@@ -3079,11 +3081,12 @@ ____CORE_SRC_FILENAMES_2_OBJECTS = \
$(OBJS)\coredll_msgdlg.obj \
$(OBJS)\coredll_nativdlg.obj \
$(OBJS)\coredll_nativewin.obj \
$(OBJS)\coredll_msw_notebook.obj \
$(OBJS)\coredll_access.obj \
$(OBJS)\coredll_ownerdrw.obj \
$(OBJS)\coredll_msw_radiobox.obj \
$(OBJS)\coredll_msw_radiobut.obj \
$(OBJS)\coredll_msw_notebook.obj \
$(OBJS)\coredll_access.obj \
$(OBJS)\coredll_ownerdrw.obj \
$(OBJS)\coredll_progdlg.obj \
$(OBJS)\coredll_msw_radiobox.obj \
$(OBJS)\coredll_msw_radiobut.obj \
$(OBJS)\coredll_richmsgdlg.obj \
$(OBJS)\coredll_msw_scrolbar.obj \
$(OBJS)\coredll_msw_slider.obj \
@@ -3581,11 +3584,12 @@ ____CORE_SRC_FILENAMES_3_OBJECTS = \
$(OBJS)\corelib_msgdlg.obj \
$(OBJS)\corelib_nativdlg.obj \
$(OBJS)\corelib_nativewin.obj \
$(OBJS)\corelib_msw_notebook.obj \
$(OBJS)\corelib_access.obj \
$(OBJS)\corelib_ownerdrw.obj \
$(OBJS)\corelib_msw_radiobox.obj \
$(OBJS)\corelib_msw_radiobut.obj \
$(OBJS)\corelib_msw_notebook.obj \
$(OBJS)\corelib_access.obj \
$(OBJS)\corelib_ownerdrw.obj \
$(OBJS)\corelib_progdlg.obj \
$(OBJS)\corelib_msw_radiobox.obj \
$(OBJS)\corelib_msw_radiobut.obj \
$(OBJS)\corelib_richmsgdlg.obj \
$(OBJS)\corelib_msw_scrolbar.obj \
$(OBJS)\corelib_msw_slider.obj \
@@ -6188,6 +6192,9 @@ $(OBJS)\monodll_access.obj: ..\..\src\msw\ole\access.cpp
$(OBJS)\monodll_ownerdrw.obj: ..\..\src\msw\ownerdrw.cpp
$(CXX) -q -c -P -o$@ $(MONODLL_CXXFLAGS) ..\..\src\msw\ownerdrw.cpp
$(OBJS)\monodll_progdlg.obj: ..\..\src\msw\progdlg.cpp
$(CXX) -q -c -P -o$@ $(MONODLL_CXXFLAGS) ..\..\src\msw\progdlg.cpp
$(OBJS)\monodll_msw_radiobox.obj: ..\..\src\msw\radiobox.cpp
$(CXX) -q -c -P -o$@ $(MONODLL_CXXFLAGS) ..\..\src\msw\radiobox.cpp
@@ -8420,6 +8427,9 @@ $(OBJS)\monolib_access.obj: ..\..\src\msw\ole\access.cpp
$(OBJS)\monolib_ownerdrw.obj: ..\..\src\msw\ownerdrw.cpp
$(CXX) -q -c -P -o$@ $(MONOLIB_CXXFLAGS) ..\..\src\msw\ownerdrw.cpp
$(OBJS)\monolib_progdlg.obj: ..\..\src\msw\progdlg.cpp
$(CXX) -q -c -P -o$@ $(MONOLIB_CXXFLAGS) ..\..\src\msw\progdlg.cpp
$(OBJS)\monolib_msw_radiobox.obj: ..\..\src\msw\radiobox.cpp
$(CXX) -q -c -P -o$@ $(MONOLIB_CXXFLAGS) ..\..\src\msw\radiobox.cpp
@@ -11060,6 +11070,9 @@ $(OBJS)\coredll_access.obj: ..\..\src\msw\ole\access.cpp
$(OBJS)\coredll_ownerdrw.obj: ..\..\src\msw\ownerdrw.cpp
$(CXX) -q -c -P -o$@ $(COREDLL_CXXFLAGS) ..\..\src\msw\ownerdrw.cpp
$(OBJS)\coredll_progdlg.obj: ..\..\src\msw\progdlg.cpp
$(CXX) -q -c -P -o$@ $(COREDLL_CXXFLAGS) ..\..\src\msw\progdlg.cpp
$(OBJS)\coredll_msw_radiobox.obj: ..\..\src\msw\radiobox.cpp
$(CXX) -q -c -P -o$@ $(COREDLL_CXXFLAGS) ..\..\src\msw\radiobox.cpp
@@ -12367,6 +12380,9 @@ $(OBJS)\corelib_access.obj: ..\..\src\msw\ole\access.cpp
$(OBJS)\corelib_ownerdrw.obj: ..\..\src\msw\ownerdrw.cpp
$(CXX) -q -c -P -o$@ $(CORELIB_CXXFLAGS) ..\..\src\msw\ownerdrw.cpp
$(OBJS)\corelib_progdlg.obj: ..\..\src\msw\progdlg.cpp
$(CXX) -q -c -P -o$@ $(CORELIB_CXXFLAGS) ..\..\src\msw\progdlg.cpp
$(OBJS)\corelib_msw_radiobox.obj: ..\..\src\msw\radiobox.cpp
$(CXX) -q -c -P -o$@ $(CORELIB_CXXFLAGS) ..\..\src\msw\radiobox.cpp