Add wxRichMessageDialog class.

This is a generalization of wxMessageDialog based on the native task dialog
under recent (Vista and later) Windows versions and implemented generically
for the other ports for now.

It provides the possibility to use additional controls in the message boxes
(checkbox useful for the "Don't ask me again" kind of dialogs and collapsible
detailed explanations field) and better look and feel under Windows.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65349 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin
2010-08-18 22:48:41 +00:00
parent ede7b01760
commit a1bdd4ab9b
31 changed files with 1227 additions and 213 deletions

View File

@@ -1766,6 +1766,7 @@ ____CORE_SRC_FILENAMES_OBJECTS = \
$(OBJS)\monodll_ownerdrw.o \
$(OBJS)\monodll_msw_radiobox.o \
$(OBJS)\monodll_msw_radiobut.o \
$(OBJS)\monodll_richmsgdlg.o \
$(OBJS)\monodll_msw_scrolbar.o \
$(OBJS)\monodll_msw_slider.o \
$(OBJS)\monodll_msw_spinbutt.o \
@@ -1905,11 +1906,13 @@ ____CORE_SRC_FILENAMES_OBJECTS = \
$(OBJS)\monodll_infobar.o \
$(OBJS)\monodll_listbkg.o \
$(OBJS)\monodll_logg.o \
$(OBJS)\monodll_msgdlgg.o \
$(OBJS)\monodll_numdlgg.o \
$(OBJS)\monodll_panelg.o \
$(OBJS)\monodll_progdlgg.o \
$(OBJS)\monodll_printps.o \
$(OBJS)\monodll_renderg.o \
$(OBJS)\monodll_richmsgdlgg.o \
$(OBJS)\monodll_scrlwing.o \
$(OBJS)\monodll_selstore.o \
$(OBJS)\monodll_spinctlg.o \
@@ -1990,7 +1993,6 @@ ____CORE_SRC_FILENAMES_OBJECTS = \
$(OBJS)\monodll_fontpickerg.o \
$(OBJS)\monodll_generic_listctrl.o \
$(OBJS)\monodll_mdig.o \
$(OBJS)\monodll_msgdlgg.o \
$(OBJS)\monodll_prntdlgg.o \
$(OBJS)\monodll_univ_bmpbuttn.o \
$(OBJS)\monodll_univ_button.o \
@@ -2153,11 +2155,13 @@ ____CORE_SRC_FILENAMES_OBJECTS = \
$(OBJS)\monodll_infobar.o \
$(OBJS)\monodll_listbkg.o \
$(OBJS)\monodll_logg.o \
$(OBJS)\monodll_msgdlgg.o \
$(OBJS)\monodll_numdlgg.o \
$(OBJS)\monodll_panelg.o \
$(OBJS)\monodll_progdlgg.o \
$(OBJS)\monodll_printps.o \
$(OBJS)\monodll_renderg.o \
$(OBJS)\monodll_richmsgdlgg.o \
$(OBJS)\monodll_scrlwing.o \
$(OBJS)\monodll_selstore.o \
$(OBJS)\monodll_spinctlg.o \
@@ -2487,6 +2491,7 @@ ____CORE_SRC_FILENAMES_1_OBJECTS = \
$(OBJS)\monolib_ownerdrw.o \
$(OBJS)\monolib_msw_radiobox.o \
$(OBJS)\monolib_msw_radiobut.o \
$(OBJS)\monolib_richmsgdlg.o \
$(OBJS)\monolib_msw_scrolbar.o \
$(OBJS)\monolib_msw_slider.o \
$(OBJS)\monolib_msw_spinbutt.o \
@@ -2626,11 +2631,13 @@ ____CORE_SRC_FILENAMES_1_OBJECTS = \
$(OBJS)\monolib_infobar.o \
$(OBJS)\monolib_listbkg.o \
$(OBJS)\monolib_logg.o \
$(OBJS)\monolib_msgdlgg.o \
$(OBJS)\monolib_numdlgg.o \
$(OBJS)\monolib_panelg.o \
$(OBJS)\monolib_progdlgg.o \
$(OBJS)\monolib_printps.o \
$(OBJS)\monolib_renderg.o \
$(OBJS)\monolib_richmsgdlgg.o \
$(OBJS)\monolib_scrlwing.o \
$(OBJS)\monolib_selstore.o \
$(OBJS)\monolib_spinctlg.o \
@@ -2711,7 +2718,6 @@ ____CORE_SRC_FILENAMES_1_OBJECTS = \
$(OBJS)\monolib_fontpickerg.o \
$(OBJS)\monolib_generic_listctrl.o \
$(OBJS)\monolib_mdig.o \
$(OBJS)\monolib_msgdlgg.o \
$(OBJS)\monolib_prntdlgg.o \
$(OBJS)\monolib_univ_bmpbuttn.o \
$(OBJS)\monolib_univ_button.o \
@@ -2874,11 +2880,13 @@ ____CORE_SRC_FILENAMES_1_OBJECTS = \
$(OBJS)\monolib_infobar.o \
$(OBJS)\monolib_listbkg.o \
$(OBJS)\monolib_logg.o \
$(OBJS)\monolib_msgdlgg.o \
$(OBJS)\monolib_numdlgg.o \
$(OBJS)\monolib_panelg.o \
$(OBJS)\monolib_progdlgg.o \
$(OBJS)\monolib_printps.o \
$(OBJS)\monolib_renderg.o \
$(OBJS)\monolib_richmsgdlgg.o \
$(OBJS)\monolib_scrlwing.o \
$(OBJS)\monolib_selstore.o \
$(OBJS)\monolib_spinctlg.o \
@@ -3109,6 +3117,7 @@ ____CORE_SRC_FILENAMES_2_OBJECTS = \
$(OBJS)\coredll_ownerdrw.o \
$(OBJS)\coredll_msw_radiobox.o \
$(OBJS)\coredll_msw_radiobut.o \
$(OBJS)\coredll_richmsgdlg.o \
$(OBJS)\coredll_msw_scrolbar.o \
$(OBJS)\coredll_msw_slider.o \
$(OBJS)\coredll_msw_spinbutt.o \
@@ -3248,11 +3257,13 @@ ____CORE_SRC_FILENAMES_2_OBJECTS = \
$(OBJS)\coredll_infobar.o \
$(OBJS)\coredll_listbkg.o \
$(OBJS)\coredll_logg.o \
$(OBJS)\coredll_msgdlgg.o \
$(OBJS)\coredll_numdlgg.o \
$(OBJS)\coredll_panelg.o \
$(OBJS)\coredll_progdlgg.o \
$(OBJS)\coredll_printps.o \
$(OBJS)\coredll_renderg.o \
$(OBJS)\coredll_richmsgdlgg.o \
$(OBJS)\coredll_scrlwing.o \
$(OBJS)\coredll_selstore.o \
$(OBJS)\coredll_spinctlg.o \
@@ -3333,7 +3344,6 @@ ____CORE_SRC_FILENAMES_2_OBJECTS = \
$(OBJS)\coredll_fontpickerg.o \
$(OBJS)\coredll_generic_listctrl.o \
$(OBJS)\coredll_mdig.o \
$(OBJS)\coredll_msgdlgg.o \
$(OBJS)\coredll_prntdlgg.o \
$(OBJS)\coredll_univ_bmpbuttn.o \
$(OBJS)\coredll_univ_button.o \
@@ -3496,11 +3506,13 @@ ____CORE_SRC_FILENAMES_2_OBJECTS = \
$(OBJS)\coredll_infobar.o \
$(OBJS)\coredll_listbkg.o \
$(OBJS)\coredll_logg.o \
$(OBJS)\coredll_msgdlgg.o \
$(OBJS)\coredll_numdlgg.o \
$(OBJS)\coredll_panelg.o \
$(OBJS)\coredll_progdlgg.o \
$(OBJS)\coredll_printps.o \
$(OBJS)\coredll_renderg.o \
$(OBJS)\coredll_richmsgdlgg.o \
$(OBJS)\coredll_scrlwing.o \
$(OBJS)\coredll_selstore.o \
$(OBJS)\coredll_spinctlg.o \
@@ -3615,6 +3627,7 @@ ____CORE_SRC_FILENAMES_3_OBJECTS = \
$(OBJS)\corelib_ownerdrw.o \
$(OBJS)\corelib_msw_radiobox.o \
$(OBJS)\corelib_msw_radiobut.o \
$(OBJS)\corelib_richmsgdlg.o \
$(OBJS)\corelib_msw_scrolbar.o \
$(OBJS)\corelib_msw_slider.o \
$(OBJS)\corelib_msw_spinbutt.o \
@@ -3754,11 +3767,13 @@ ____CORE_SRC_FILENAMES_3_OBJECTS = \
$(OBJS)\corelib_infobar.o \
$(OBJS)\corelib_listbkg.o \
$(OBJS)\corelib_logg.o \
$(OBJS)\corelib_msgdlgg.o \
$(OBJS)\corelib_numdlgg.o \
$(OBJS)\corelib_panelg.o \
$(OBJS)\corelib_progdlgg.o \
$(OBJS)\corelib_printps.o \
$(OBJS)\corelib_renderg.o \
$(OBJS)\corelib_richmsgdlgg.o \
$(OBJS)\corelib_scrlwing.o \
$(OBJS)\corelib_selstore.o \
$(OBJS)\corelib_spinctlg.o \
@@ -3839,7 +3854,6 @@ ____CORE_SRC_FILENAMES_3_OBJECTS = \
$(OBJS)\corelib_fontpickerg.o \
$(OBJS)\corelib_generic_listctrl.o \
$(OBJS)\corelib_mdig.o \
$(OBJS)\corelib_msgdlgg.o \
$(OBJS)\corelib_prntdlgg.o \
$(OBJS)\corelib_univ_bmpbuttn.o \
$(OBJS)\corelib_univ_button.o \
@@ -4002,11 +4016,13 @@ ____CORE_SRC_FILENAMES_3_OBJECTS = \
$(OBJS)\corelib_infobar.o \
$(OBJS)\corelib_listbkg.o \
$(OBJS)\corelib_logg.o \
$(OBJS)\corelib_msgdlgg.o \
$(OBJS)\corelib_numdlgg.o \
$(OBJS)\corelib_panelg.o \
$(OBJS)\corelib_progdlgg.o \
$(OBJS)\corelib_printps.o \
$(OBJS)\corelib_renderg.o \
$(OBJS)\corelib_richmsgdlgg.o \
$(OBJS)\corelib_scrlwing.o \
$(OBJS)\corelib_selstore.o \
$(OBJS)\corelib_spinctlg.o \
@@ -6328,6 +6344,9 @@ $(OBJS)\monodll_msw_radiobox.o: ../../src/msw/radiobox.cpp
$(OBJS)\monodll_msw_radiobut.o: ../../src/msw/radiobut.cpp
$(CXX) -c -o $@ $(MONODLL_CXXFLAGS) $(CPPDEPS) $<
$(OBJS)\monodll_richmsgdlg.o: ../../src/msw/richmsgdlg.cpp
$(CXX) -c -o $@ $(MONODLL_CXXFLAGS) $(CPPDEPS) $<
$(OBJS)\monodll_msw_scrolbar.o: ../../src/msw/scrolbar.cpp
$(CXX) -c -o $@ $(MONODLL_CXXFLAGS) $(CPPDEPS) $<
@@ -6406,9 +6425,6 @@ $(OBJS)\monodll_generic_listctrl.o: ../../src/generic/listctrl.cpp
$(OBJS)\monodll_mdig.o: ../../src/generic/mdig.cpp
$(CXX) -c -o $@ $(MONODLL_CXXFLAGS) $(CPPDEPS) $<
$(OBJS)\monodll_msgdlgg.o: ../../src/generic/msgdlgg.cpp
$(CXX) -c -o $@ $(MONODLL_CXXFLAGS) $(CPPDEPS) $<
$(OBJS)\monodll_univ_bmpbuttn.o: ../../src/univ/bmpbuttn.cpp
$(CXX) -c -o $@ $(MONODLL_CXXFLAGS) $(CPPDEPS) $<
@@ -7810,6 +7826,11 @@ $(OBJS)\monodll_logg.o: ../../src/generic/logg.cpp
endif
ifeq ($(USE_GUI),1)
$(OBJS)\monodll_msgdlgg.o: ../../src/generic/msgdlgg.cpp
$(CXX) -c -o $@ $(MONODLL_CXXFLAGS) $(CPPDEPS) $<
endif
ifeq ($(USE_GUI),1)
$(OBJS)\monodll_numdlgg.o: ../../src/generic/numdlgg.cpp
$(CXX) -c -o $@ $(MONODLL_CXXFLAGS) $(CPPDEPS) $<
endif
@@ -7835,6 +7856,11 @@ $(OBJS)\monodll_renderg.o: ../../src/generic/renderg.cpp
endif
ifeq ($(USE_GUI),1)
$(OBJS)\monodll_richmsgdlgg.o: ../../src/generic/richmsgdlgg.cpp
$(CXX) -c -o $@ $(MONODLL_CXXFLAGS) $(CPPDEPS) $<
endif
ifeq ($(USE_GUI),1)
$(OBJS)\monodll_scrlwing.o: ../../src/generic/scrlwing.cpp
$(CXX) -c -o $@ $(MONODLL_CXXFLAGS) $(CPPDEPS) $<
endif
@@ -8550,6 +8576,9 @@ $(OBJS)\monolib_msw_radiobox.o: ../../src/msw/radiobox.cpp
$(OBJS)\monolib_msw_radiobut.o: ../../src/msw/radiobut.cpp
$(CXX) -c -o $@ $(MONOLIB_CXXFLAGS) $(CPPDEPS) $<
$(OBJS)\monolib_richmsgdlg.o: ../../src/msw/richmsgdlg.cpp
$(CXX) -c -o $@ $(MONOLIB_CXXFLAGS) $(CPPDEPS) $<
$(OBJS)\monolib_msw_scrolbar.o: ../../src/msw/scrolbar.cpp
$(CXX) -c -o $@ $(MONOLIB_CXXFLAGS) $(CPPDEPS) $<
@@ -8628,9 +8657,6 @@ $(OBJS)\monolib_generic_listctrl.o: ../../src/generic/listctrl.cpp
$(OBJS)\monolib_mdig.o: ../../src/generic/mdig.cpp
$(CXX) -c -o $@ $(MONOLIB_CXXFLAGS) $(CPPDEPS) $<
$(OBJS)\monolib_msgdlgg.o: ../../src/generic/msgdlgg.cpp
$(CXX) -c -o $@ $(MONOLIB_CXXFLAGS) $(CPPDEPS) $<
$(OBJS)\monolib_univ_bmpbuttn.o: ../../src/univ/bmpbuttn.cpp
$(CXX) -c -o $@ $(MONOLIB_CXXFLAGS) $(CPPDEPS) $<
@@ -10032,6 +10058,11 @@ $(OBJS)\monolib_logg.o: ../../src/generic/logg.cpp
endif
ifeq ($(USE_GUI),1)
$(OBJS)\monolib_msgdlgg.o: ../../src/generic/msgdlgg.cpp
$(CXX) -c -o $@ $(MONOLIB_CXXFLAGS) $(CPPDEPS) $<
endif
ifeq ($(USE_GUI),1)
$(OBJS)\monolib_numdlgg.o: ../../src/generic/numdlgg.cpp
$(CXX) -c -o $@ $(MONOLIB_CXXFLAGS) $(CPPDEPS) $<
endif
@@ -10057,6 +10088,11 @@ $(OBJS)\monolib_renderg.o: ../../src/generic/renderg.cpp
endif
ifeq ($(USE_GUI),1)
$(OBJS)\monolib_richmsgdlgg.o: ../../src/generic/richmsgdlgg.cpp
$(CXX) -c -o $@ $(MONOLIB_CXXFLAGS) $(CPPDEPS) $<
endif
ifeq ($(USE_GUI),1)
$(OBJS)\monolib_scrlwing.o: ../../src/generic/scrlwing.cpp
$(CXX) -c -o $@ $(MONOLIB_CXXFLAGS) $(CPPDEPS) $<
endif
@@ -11180,6 +11216,9 @@ $(OBJS)\coredll_msw_radiobox.o: ../../src/msw/radiobox.cpp
$(OBJS)\coredll_msw_radiobut.o: ../../src/msw/radiobut.cpp
$(CXX) -c -o $@ $(COREDLL_CXXFLAGS) $(CPPDEPS) $<
$(OBJS)\coredll_richmsgdlg.o: ../../src/msw/richmsgdlg.cpp
$(CXX) -c -o $@ $(COREDLL_CXXFLAGS) $(CPPDEPS) $<
$(OBJS)\coredll_msw_scrolbar.o: ../../src/msw/scrolbar.cpp
$(CXX) -c -o $@ $(COREDLL_CXXFLAGS) $(CPPDEPS) $<
@@ -11258,9 +11297,6 @@ $(OBJS)\coredll_generic_listctrl.o: ../../src/generic/listctrl.cpp
$(OBJS)\coredll_mdig.o: ../../src/generic/mdig.cpp
$(CXX) -c -o $@ $(COREDLL_CXXFLAGS) $(CPPDEPS) $<
$(OBJS)\coredll_msgdlgg.o: ../../src/generic/msgdlgg.cpp
$(CXX) -c -o $@ $(COREDLL_CXXFLAGS) $(CPPDEPS) $<
$(OBJS)\coredll_univ_bmpbuttn.o: ../../src/univ/bmpbuttn.cpp
$(CXX) -c -o $@ $(COREDLL_CXXFLAGS) $(CPPDEPS) $<
@@ -12257,6 +12293,11 @@ $(OBJS)\coredll_logg.o: ../../src/generic/logg.cpp
endif
ifeq ($(USE_GUI),1)
$(OBJS)\coredll_msgdlgg.o: ../../src/generic/msgdlgg.cpp
$(CXX) -c -o $@ $(COREDLL_CXXFLAGS) $(CPPDEPS) $<
endif
ifeq ($(USE_GUI),1)
$(OBJS)\coredll_numdlgg.o: ../../src/generic/numdlgg.cpp
$(CXX) -c -o $@ $(COREDLL_CXXFLAGS) $(CPPDEPS) $<
endif
@@ -12282,6 +12323,11 @@ $(OBJS)\coredll_renderg.o: ../../src/generic/renderg.cpp
endif
ifeq ($(USE_GUI),1)
$(OBJS)\coredll_richmsgdlgg.o: ../../src/generic/richmsgdlgg.cpp
$(CXX) -c -o $@ $(COREDLL_CXXFLAGS) $(CPPDEPS) $<
endif
ifeq ($(USE_GUI),1)
$(OBJS)\coredll_scrlwing.o: ../../src/generic/scrlwing.cpp
$(CXX) -c -o $@ $(COREDLL_CXXFLAGS) $(CPPDEPS) $<
endif
@@ -12477,6 +12523,9 @@ $(OBJS)\corelib_msw_radiobox.o: ../../src/msw/radiobox.cpp
$(OBJS)\corelib_msw_radiobut.o: ../../src/msw/radiobut.cpp
$(CXX) -c -o $@ $(CORELIB_CXXFLAGS) $(CPPDEPS) $<
$(OBJS)\corelib_richmsgdlg.o: ../../src/msw/richmsgdlg.cpp
$(CXX) -c -o $@ $(CORELIB_CXXFLAGS) $(CPPDEPS) $<
$(OBJS)\corelib_msw_scrolbar.o: ../../src/msw/scrolbar.cpp
$(CXX) -c -o $@ $(CORELIB_CXXFLAGS) $(CPPDEPS) $<
@@ -12555,9 +12604,6 @@ $(OBJS)\corelib_generic_listctrl.o: ../../src/generic/listctrl.cpp
$(OBJS)\corelib_mdig.o: ../../src/generic/mdig.cpp
$(CXX) -c -o $@ $(CORELIB_CXXFLAGS) $(CPPDEPS) $<
$(OBJS)\corelib_msgdlgg.o: ../../src/generic/msgdlgg.cpp
$(CXX) -c -o $@ $(CORELIB_CXXFLAGS) $(CPPDEPS) $<
$(OBJS)\corelib_univ_bmpbuttn.o: ../../src/univ/bmpbuttn.cpp
$(CXX) -c -o $@ $(CORELIB_CXXFLAGS) $(CPPDEPS) $<
@@ -13554,6 +13600,11 @@ $(OBJS)\corelib_logg.o: ../../src/generic/logg.cpp
endif
ifeq ($(USE_GUI),1)
$(OBJS)\corelib_msgdlgg.o: ../../src/generic/msgdlgg.cpp
$(CXX) -c -o $@ $(CORELIB_CXXFLAGS) $(CPPDEPS) $<
endif
ifeq ($(USE_GUI),1)
$(OBJS)\corelib_numdlgg.o: ../../src/generic/numdlgg.cpp
$(CXX) -c -o $@ $(CORELIB_CXXFLAGS) $(CPPDEPS) $<
endif
@@ -13579,6 +13630,11 @@ $(OBJS)\corelib_renderg.o: ../../src/generic/renderg.cpp
endif
ifeq ($(USE_GUI),1)
$(OBJS)\corelib_richmsgdlgg.o: ../../src/generic/richmsgdlgg.cpp
$(CXX) -c -o $@ $(CORELIB_CXXFLAGS) $(CPPDEPS) $<
endif
ifeq ($(USE_GUI),1)
$(OBJS)\corelib_scrlwing.o: ../../src/generic/scrlwing.cpp
$(CXX) -c -o $@ $(CORELIB_CXXFLAGS) $(CPPDEPS) $<
endif