Add wxPanel::SetBackgroundBitmap().
This method provides a simple way to set a background bitmap without defining an EVT_ERASE_BACKGROUND handler and, more importantly, one that works correctly in wxMSW for a window with children as it paints the background of transparent children too. Add a test of this method to the erase sample. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67253 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
20
Makefile.in
20
Makefile.in
@@ -4616,6 +4616,7 @@ COND_USE_GUI_1_WXUNIV_0___CORE_SRC_OBJECTS = \
|
||||
monodll_markuptext.o \
|
||||
monodll_msgdlgg.o \
|
||||
monodll_numdlgg.o \
|
||||
monodll_panelg.o \
|
||||
monodll_progdlgg.o \
|
||||
monodll_printps.o \
|
||||
monodll_renderg.o \
|
||||
@@ -4831,6 +4832,7 @@ COND_USE_GUI_1_WXUNIV_1___CORE_SRC_OBJECTS = \
|
||||
monodll_markuptext.o \
|
||||
monodll_msgdlgg.o \
|
||||
monodll_numdlgg.o \
|
||||
monodll_panelg.o \
|
||||
monodll_progdlgg.o \
|
||||
monodll_printps.o \
|
||||
monodll_renderg.o \
|
||||
@@ -6536,6 +6538,7 @@ COND_USE_GUI_1_WXUNIV_0___CORE_SRC_OBJECTS_1 = \
|
||||
monolib_markuptext.o \
|
||||
monolib_msgdlgg.o \
|
||||
monolib_numdlgg.o \
|
||||
monolib_panelg.o \
|
||||
monolib_progdlgg.o \
|
||||
monolib_printps.o \
|
||||
monolib_renderg.o \
|
||||
@@ -6751,6 +6754,7 @@ COND_USE_GUI_1_WXUNIV_1___CORE_SRC_OBJECTS_1 = \
|
||||
monolib_markuptext.o \
|
||||
monolib_msgdlgg.o \
|
||||
monolib_numdlgg.o \
|
||||
monolib_panelg.o \
|
||||
monolib_progdlgg.o \
|
||||
monolib_printps.o \
|
||||
monolib_renderg.o \
|
||||
@@ -8640,6 +8644,7 @@ COND_USE_GUI_1_WXUNIV_0___CORE_SRC_OBJECTS_2 = \
|
||||
coredll_markuptext.o \
|
||||
coredll_msgdlgg.o \
|
||||
coredll_numdlgg.o \
|
||||
coredll_panelg.o \
|
||||
coredll_progdlgg.o \
|
||||
coredll_printps.o \
|
||||
coredll_renderg.o \
|
||||
@@ -8855,6 +8860,7 @@ COND_USE_GUI_1_WXUNIV_1___CORE_SRC_OBJECTS_2 = \
|
||||
coredll_markuptext.o \
|
||||
coredll_msgdlgg.o \
|
||||
coredll_numdlgg.o \
|
||||
coredll_panelg.o \
|
||||
coredll_progdlgg.o \
|
||||
coredll_printps.o \
|
||||
coredll_renderg.o \
|
||||
@@ -10222,6 +10228,7 @@ COND_USE_GUI_1_WXUNIV_0___CORE_SRC_OBJECTS_3 = \
|
||||
corelib_markuptext.o \
|
||||
corelib_msgdlgg.o \
|
||||
corelib_numdlgg.o \
|
||||
corelib_panelg.o \
|
||||
corelib_progdlgg.o \
|
||||
corelib_printps.o \
|
||||
corelib_renderg.o \
|
||||
@@ -10437,6 +10444,7 @@ COND_USE_GUI_1_WXUNIV_1___CORE_SRC_OBJECTS_3 = \
|
||||
corelib_markuptext.o \
|
||||
corelib_msgdlgg.o \
|
||||
corelib_numdlgg.o \
|
||||
corelib_panelg.o \
|
||||
corelib_progdlgg.o \
|
||||
corelib_printps.o \
|
||||
corelib_renderg.o \
|
||||
@@ -20173,6 +20181,9 @@ monodll_sound_sdl.o: $(srcdir)/src/unix/sound_sdl.cpp $(MONODLL_ODEP)
|
||||
@COND_USE_GUI_1@monodll_numdlgg.o: $(srcdir)/src/generic/numdlgg.cpp $(MONODLL_ODEP)
|
||||
@COND_USE_GUI_1@ $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/generic/numdlgg.cpp
|
||||
|
||||
@COND_USE_GUI_1@monodll_panelg.o: $(srcdir)/src/generic/panelg.cpp $(MONODLL_ODEP)
|
||||
@COND_USE_GUI_1@ $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/generic/panelg.cpp
|
||||
|
||||
@COND_USE_GUI_1@monodll_progdlgg.o: $(srcdir)/src/generic/progdlgg.cpp $(MONODLL_ODEP)
|
||||
@COND_USE_GUI_1@ $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/generic/progdlgg.cpp
|
||||
|
||||
@@ -25465,6 +25476,9 @@ monolib_sound_sdl.o: $(srcdir)/src/unix/sound_sdl.cpp $(MONOLIB_ODEP)
|
||||
@COND_USE_GUI_1@monolib_numdlgg.o: $(srcdir)/src/generic/numdlgg.cpp $(MONOLIB_ODEP)
|
||||
@COND_USE_GUI_1@ $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/generic/numdlgg.cpp
|
||||
|
||||
@COND_USE_GUI_1@monolib_panelg.o: $(srcdir)/src/generic/panelg.cpp $(MONOLIB_ODEP)
|
||||
@COND_USE_GUI_1@ $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/generic/panelg.cpp
|
||||
|
||||
@COND_USE_GUI_1@monolib_progdlgg.o: $(srcdir)/src/generic/progdlgg.cpp $(MONOLIB_ODEP)
|
||||
@COND_USE_GUI_1@ $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/generic/progdlgg.cpp
|
||||
|
||||
@@ -30937,6 +30951,9 @@ coredll_win32.o: $(srcdir)/src/univ/themes/win32.cpp $(COREDLL_ODEP)
|
||||
@COND_USE_GUI_1@coredll_numdlgg.o: $(srcdir)/src/generic/numdlgg.cpp $(COREDLL_ODEP)
|
||||
@COND_USE_GUI_1@ $(CXXC) -c -o $@ $(COREDLL_CXXFLAGS) $(srcdir)/src/generic/numdlgg.cpp
|
||||
|
||||
@COND_USE_GUI_1@coredll_panelg.o: $(srcdir)/src/generic/panelg.cpp $(COREDLL_ODEP)
|
||||
@COND_USE_GUI_1@ $(CXXC) -c -o $@ $(COREDLL_CXXFLAGS) $(srcdir)/src/generic/panelg.cpp
|
||||
|
||||
@COND_USE_GUI_1@coredll_progdlgg.o: $(srcdir)/src/generic/progdlgg.cpp $(COREDLL_ODEP)
|
||||
@COND_USE_GUI_1@ $(CXXC) -c -o $@ $(COREDLL_CXXFLAGS) $(srcdir)/src/generic/progdlgg.cpp
|
||||
|
||||
@@ -34912,6 +34929,9 @@ corelib_win32.o: $(srcdir)/src/univ/themes/win32.cpp $(CORELIB_ODEP)
|
||||
@COND_USE_GUI_1@corelib_numdlgg.o: $(srcdir)/src/generic/numdlgg.cpp $(CORELIB_ODEP)
|
||||
@COND_USE_GUI_1@ $(CXXC) -c -o $@ $(CORELIB_CXXFLAGS) $(srcdir)/src/generic/numdlgg.cpp
|
||||
|
||||
@COND_USE_GUI_1@corelib_panelg.o: $(srcdir)/src/generic/panelg.cpp $(CORELIB_ODEP)
|
||||
@COND_USE_GUI_1@ $(CXXC) -c -o $@ $(CORELIB_CXXFLAGS) $(srcdir)/src/generic/panelg.cpp
|
||||
|
||||
@COND_USE_GUI_1@corelib_progdlgg.o: $(srcdir)/src/generic/progdlgg.cpp $(CORELIB_ODEP)
|
||||
@COND_USE_GUI_1@ $(CXXC) -c -o $@ $(CORELIB_CXXFLAGS) $(srcdir)/src/generic/progdlgg.cpp
|
||||
|
||||
|
@@ -788,6 +788,7 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file!
|
||||
src/generic/markuptext.cpp
|
||||
src/generic/msgdlgg.cpp
|
||||
src/generic/numdlgg.cpp
|
||||
src/generic/panelg.cpp
|
||||
src/generic/progdlgg.cpp
|
||||
src/generic/printps.cpp
|
||||
src/generic/renderg.cpp
|
||||
|
@@ -1928,6 +1928,7 @@ ____CORE_SRC_FILENAMES_OBJECTS = \
|
||||
$(OBJS)\monodll_markuptext.obj \
|
||||
$(OBJS)\monodll_msgdlgg.obj \
|
||||
$(OBJS)\monodll_numdlgg.obj \
|
||||
$(OBJS)\monodll_panelg.obj \
|
||||
$(OBJS)\monodll_progdlgg.obj \
|
||||
$(OBJS)\monodll_printps.obj \
|
||||
$(OBJS)\monodll_renderg.obj \
|
||||
@@ -2193,6 +2194,7 @@ ____CORE_SRC_FILENAMES_OBJECTS = \
|
||||
$(OBJS)\monodll_markuptext.obj \
|
||||
$(OBJS)\monodll_msgdlgg.obj \
|
||||
$(OBJS)\monodll_numdlgg.obj \
|
||||
$(OBJS)\monodll_panelg.obj \
|
||||
$(OBJS)\monodll_progdlgg.obj \
|
||||
$(OBJS)\monodll_printps.obj \
|
||||
$(OBJS)\monodll_renderg.obj \
|
||||
@@ -2689,6 +2691,7 @@ ____CORE_SRC_FILENAMES_1_OBJECTS = \
|
||||
$(OBJS)\monolib_markuptext.obj \
|
||||
$(OBJS)\monolib_msgdlgg.obj \
|
||||
$(OBJS)\monolib_numdlgg.obj \
|
||||
$(OBJS)\monolib_panelg.obj \
|
||||
$(OBJS)\monolib_progdlgg.obj \
|
||||
$(OBJS)\monolib_printps.obj \
|
||||
$(OBJS)\monolib_renderg.obj \
|
||||
@@ -2954,6 +2957,7 @@ ____CORE_SRC_FILENAMES_1_OBJECTS = \
|
||||
$(OBJS)\monolib_markuptext.obj \
|
||||
$(OBJS)\monolib_msgdlgg.obj \
|
||||
$(OBJS)\monolib_numdlgg.obj \
|
||||
$(OBJS)\monolib_panelg.obj \
|
||||
$(OBJS)\monolib_progdlgg.obj \
|
||||
$(OBJS)\monolib_printps.obj \
|
||||
$(OBJS)\monolib_renderg.obj \
|
||||
@@ -3338,6 +3342,7 @@ ____CORE_SRC_FILENAMES_2_OBJECTS = \
|
||||
$(OBJS)\coredll_markuptext.obj \
|
||||
$(OBJS)\coredll_msgdlgg.obj \
|
||||
$(OBJS)\coredll_numdlgg.obj \
|
||||
$(OBJS)\coredll_panelg.obj \
|
||||
$(OBJS)\coredll_progdlgg.obj \
|
||||
$(OBJS)\coredll_printps.obj \
|
||||
$(OBJS)\coredll_renderg.obj \
|
||||
@@ -3603,6 +3608,7 @@ ____CORE_SRC_FILENAMES_2_OBJECTS = \
|
||||
$(OBJS)\coredll_markuptext.obj \
|
||||
$(OBJS)\coredll_msgdlgg.obj \
|
||||
$(OBJS)\coredll_numdlgg.obj \
|
||||
$(OBJS)\coredll_panelg.obj \
|
||||
$(OBJS)\coredll_progdlgg.obj \
|
||||
$(OBJS)\coredll_printps.obj \
|
||||
$(OBJS)\coredll_renderg.obj \
|
||||
@@ -3876,6 +3882,7 @@ ____CORE_SRC_FILENAMES_3_OBJECTS = \
|
||||
$(OBJS)\corelib_markuptext.obj \
|
||||
$(OBJS)\corelib_msgdlgg.obj \
|
||||
$(OBJS)\corelib_numdlgg.obj \
|
||||
$(OBJS)\corelib_panelg.obj \
|
||||
$(OBJS)\corelib_progdlgg.obj \
|
||||
$(OBJS)\corelib_printps.obj \
|
||||
$(OBJS)\corelib_renderg.obj \
|
||||
@@ -4141,6 +4148,7 @@ ____CORE_SRC_FILENAMES_3_OBJECTS = \
|
||||
$(OBJS)\corelib_markuptext.obj \
|
||||
$(OBJS)\corelib_msgdlgg.obj \
|
||||
$(OBJS)\corelib_numdlgg.obj \
|
||||
$(OBJS)\corelib_panelg.obj \
|
||||
$(OBJS)\corelib_progdlgg.obj \
|
||||
$(OBJS)\corelib_printps.obj \
|
||||
$(OBJS)\corelib_renderg.obj \
|
||||
@@ -7960,6 +7968,11 @@ $(OBJS)\monodll_numdlgg.obj: ..\..\src\generic\numdlgg.cpp
|
||||
$(CXX) -q -c -P -o$@ $(MONODLL_CXXFLAGS) ..\..\src\generic\numdlgg.cpp
|
||||
!endif
|
||||
|
||||
!if "$(USE_GUI)" == "1"
|
||||
$(OBJS)\monodll_panelg.obj: ..\..\src\generic\panelg.cpp
|
||||
$(CXX) -q -c -P -o$@ $(MONODLL_CXXFLAGS) ..\..\src\generic\panelg.cpp
|
||||
!endif
|
||||
|
||||
!if "$(USE_GUI)" == "1"
|
||||
$(OBJS)\monodll_progdlgg.obj: ..\..\src\generic\progdlgg.cpp
|
||||
$(CXX) -q -c -P -o$@ $(MONODLL_CXXFLAGS) ..\..\src\generic\progdlgg.cpp
|
||||
@@ -10302,6 +10315,11 @@ $(OBJS)\monolib_numdlgg.obj: ..\..\src\generic\numdlgg.cpp
|
||||
$(CXX) -q -c -P -o$@ $(MONOLIB_CXXFLAGS) ..\..\src\generic\numdlgg.cpp
|
||||
!endif
|
||||
|
||||
!if "$(USE_GUI)" == "1"
|
||||
$(OBJS)\monolib_panelg.obj: ..\..\src\generic\panelg.cpp
|
||||
$(CXX) -q -c -P -o$@ $(MONOLIB_CXXFLAGS) ..\..\src\generic\panelg.cpp
|
||||
!endif
|
||||
|
||||
!if "$(USE_GUI)" == "1"
|
||||
$(OBJS)\monolib_progdlgg.obj: ..\..\src\generic\progdlgg.cpp
|
||||
$(CXX) -q -c -P -o$@ $(MONOLIB_CXXFLAGS) ..\..\src\generic\progdlgg.cpp
|
||||
@@ -12638,6 +12656,11 @@ $(OBJS)\coredll_numdlgg.obj: ..\..\src\generic\numdlgg.cpp
|
||||
$(CXX) -q -c -P -o$@ $(COREDLL_CXXFLAGS) ..\..\src\generic\numdlgg.cpp
|
||||
!endif
|
||||
|
||||
!if "$(USE_GUI)" == "1"
|
||||
$(OBJS)\coredll_panelg.obj: ..\..\src\generic\panelg.cpp
|
||||
$(CXX) -q -c -P -o$@ $(COREDLL_CXXFLAGS) ..\..\src\generic\panelg.cpp
|
||||
!endif
|
||||
|
||||
!if "$(USE_GUI)" == "1"
|
||||
$(OBJS)\coredll_progdlgg.obj: ..\..\src\generic\progdlgg.cpp
|
||||
$(CXX) -q -c -P -o$@ $(COREDLL_CXXFLAGS) ..\..\src\generic\progdlgg.cpp
|
||||
@@ -14035,6 +14058,11 @@ $(OBJS)\corelib_numdlgg.obj: ..\..\src\generic\numdlgg.cpp
|
||||
$(CXX) -q -c -P -o$@ $(CORELIB_CXXFLAGS) ..\..\src\generic\numdlgg.cpp
|
||||
!endif
|
||||
|
||||
!if "$(USE_GUI)" == "1"
|
||||
$(OBJS)\corelib_panelg.obj: ..\..\src\generic\panelg.cpp
|
||||
$(CXX) -q -c -P -o$@ $(CORELIB_CXXFLAGS) ..\..\src\generic\panelg.cpp
|
||||
!endif
|
||||
|
||||
!if "$(USE_GUI)" == "1"
|
||||
$(OBJS)\corelib_progdlgg.obj: ..\..\src\generic\progdlgg.cpp
|
||||
$(CXX) -q -c -P -o$@ $(CORELIB_CXXFLAGS) ..\..\src\generic\progdlgg.cpp
|
||||
|
@@ -1939,6 +1939,7 @@ ____CORE_SRC_FILENAMES_OBJECTS = \
|
||||
$(OBJS)\monodll_markuptext.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 \
|
||||
@@ -2206,6 +2207,7 @@ ____CORE_SRC_FILENAMES_OBJECTS = \
|
||||
$(OBJS)\monodll_markuptext.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 \
|
||||
@@ -2706,6 +2708,7 @@ ____CORE_SRC_FILENAMES_1_OBJECTS = \
|
||||
$(OBJS)\monolib_markuptext.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 \
|
||||
@@ -2973,6 +2976,7 @@ ____CORE_SRC_FILENAMES_1_OBJECTS = \
|
||||
$(OBJS)\monolib_markuptext.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 \
|
||||
@@ -3371,6 +3375,7 @@ ____CORE_SRC_FILENAMES_2_OBJECTS = \
|
||||
$(OBJS)\coredll_markuptext.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 \
|
||||
@@ -3638,6 +3643,7 @@ ____CORE_SRC_FILENAMES_2_OBJECTS = \
|
||||
$(OBJS)\coredll_markuptext.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 \
|
||||
@@ -3917,6 +3923,7 @@ ____CORE_SRC_FILENAMES_3_OBJECTS = \
|
||||
$(OBJS)\corelib_markuptext.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 \
|
||||
@@ -4184,6 +4191,7 @@ ____CORE_SRC_FILENAMES_3_OBJECTS = \
|
||||
$(OBJS)\corelib_markuptext.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 \
|
||||
@@ -8110,6 +8118,11 @@ $(OBJS)\monodll_numdlgg.o: ../../src/generic/numdlgg.cpp
|
||||
$(CXX) -c -o $@ $(MONODLL_CXXFLAGS) $(CPPDEPS) $<
|
||||
endif
|
||||
|
||||
ifeq ($(USE_GUI),1)
|
||||
$(OBJS)\monodll_panelg.o: ../../src/generic/panelg.cpp
|
||||
$(CXX) -c -o $@ $(MONODLL_CXXFLAGS) $(CPPDEPS) $<
|
||||
endif
|
||||
|
||||
ifeq ($(USE_GUI),1)
|
||||
$(OBJS)\monodll_progdlgg.o: ../../src/generic/progdlgg.cpp
|
||||
$(CXX) -c -o $@ $(MONODLL_CXXFLAGS) $(CPPDEPS) $<
|
||||
@@ -10452,6 +10465,11 @@ $(OBJS)\monolib_numdlgg.o: ../../src/generic/numdlgg.cpp
|
||||
$(CXX) -c -o $@ $(MONOLIB_CXXFLAGS) $(CPPDEPS) $<
|
||||
endif
|
||||
|
||||
ifeq ($(USE_GUI),1)
|
||||
$(OBJS)\monolib_panelg.o: ../../src/generic/panelg.cpp
|
||||
$(CXX) -c -o $@ $(MONOLIB_CXXFLAGS) $(CPPDEPS) $<
|
||||
endif
|
||||
|
||||
ifeq ($(USE_GUI),1)
|
||||
$(OBJS)\monolib_progdlgg.o: ../../src/generic/progdlgg.cpp
|
||||
$(CXX) -c -o $@ $(MONOLIB_CXXFLAGS) $(CPPDEPS) $<
|
||||
@@ -12788,6 +12806,11 @@ $(OBJS)\coredll_numdlgg.o: ../../src/generic/numdlgg.cpp
|
||||
$(CXX) -c -o $@ $(COREDLL_CXXFLAGS) $(CPPDEPS) $<
|
||||
endif
|
||||
|
||||
ifeq ($(USE_GUI),1)
|
||||
$(OBJS)\coredll_panelg.o: ../../src/generic/panelg.cpp
|
||||
$(CXX) -c -o $@ $(COREDLL_CXXFLAGS) $(CPPDEPS) $<
|
||||
endif
|
||||
|
||||
ifeq ($(USE_GUI),1)
|
||||
$(OBJS)\coredll_progdlgg.o: ../../src/generic/progdlgg.cpp
|
||||
$(CXX) -c -o $@ $(COREDLL_CXXFLAGS) $(CPPDEPS) $<
|
||||
@@ -14185,6 +14208,11 @@ $(OBJS)\corelib_numdlgg.o: ../../src/generic/numdlgg.cpp
|
||||
$(CXX) -c -o $@ $(CORELIB_CXXFLAGS) $(CPPDEPS) $<
|
||||
endif
|
||||
|
||||
ifeq ($(USE_GUI),1)
|
||||
$(OBJS)\corelib_panelg.o: ../../src/generic/panelg.cpp
|
||||
$(CXX) -c -o $@ $(CORELIB_CXXFLAGS) $(CPPDEPS) $<
|
||||
endif
|
||||
|
||||
ifeq ($(USE_GUI),1)
|
||||
$(OBJS)\corelib_progdlgg.o: ../../src/generic/progdlgg.cpp
|
||||
$(CXX) -c -o $@ $(CORELIB_CXXFLAGS) $(CPPDEPS) $<
|
||||
|
@@ -2136,6 +2136,7 @@ ____CORE_SRC_FILENAMES_OBJECTS = \
|
||||
$(OBJS)\monodll_markuptext.obj \
|
||||
$(OBJS)\monodll_msgdlgg.obj \
|
||||
$(OBJS)\monodll_numdlgg.obj \
|
||||
$(OBJS)\monodll_panelg.obj \
|
||||
$(OBJS)\monodll_progdlgg.obj \
|
||||
$(OBJS)\monodll_printps.obj \
|
||||
$(OBJS)\monodll_renderg.obj \
|
||||
@@ -2401,6 +2402,7 @@ ____CORE_SRC_FILENAMES_OBJECTS = \
|
||||
$(OBJS)\monodll_markuptext.obj \
|
||||
$(OBJS)\monodll_msgdlgg.obj \
|
||||
$(OBJS)\monodll_numdlgg.obj \
|
||||
$(OBJS)\monodll_panelg.obj \
|
||||
$(OBJS)\monodll_progdlgg.obj \
|
||||
$(OBJS)\monodll_printps.obj \
|
||||
$(OBJS)\monodll_renderg.obj \
|
||||
@@ -2903,6 +2905,7 @@ ____CORE_SRC_FILENAMES_1_OBJECTS = \
|
||||
$(OBJS)\monolib_markuptext.obj \
|
||||
$(OBJS)\monolib_msgdlgg.obj \
|
||||
$(OBJS)\monolib_numdlgg.obj \
|
||||
$(OBJS)\monolib_panelg.obj \
|
||||
$(OBJS)\monolib_progdlgg.obj \
|
||||
$(OBJS)\monolib_printps.obj \
|
||||
$(OBJS)\monolib_renderg.obj \
|
||||
@@ -3168,6 +3171,7 @@ ____CORE_SRC_FILENAMES_1_OBJECTS = \
|
||||
$(OBJS)\monolib_markuptext.obj \
|
||||
$(OBJS)\monolib_msgdlgg.obj \
|
||||
$(OBJS)\monolib_numdlgg.obj \
|
||||
$(OBJS)\monolib_panelg.obj \
|
||||
$(OBJS)\monolib_progdlgg.obj \
|
||||
$(OBJS)\monolib_printps.obj \
|
||||
$(OBJS)\monolib_renderg.obj \
|
||||
@@ -3618,6 +3622,7 @@ ____CORE_SRC_FILENAMES_2_OBJECTS = \
|
||||
$(OBJS)\coredll_markuptext.obj \
|
||||
$(OBJS)\coredll_msgdlgg.obj \
|
||||
$(OBJS)\coredll_numdlgg.obj \
|
||||
$(OBJS)\coredll_panelg.obj \
|
||||
$(OBJS)\coredll_progdlgg.obj \
|
||||
$(OBJS)\coredll_printps.obj \
|
||||
$(OBJS)\coredll_renderg.obj \
|
||||
@@ -3883,6 +3888,7 @@ ____CORE_SRC_FILENAMES_2_OBJECTS = \
|
||||
$(OBJS)\coredll_markuptext.obj \
|
||||
$(OBJS)\coredll_msgdlgg.obj \
|
||||
$(OBJS)\coredll_numdlgg.obj \
|
||||
$(OBJS)\coredll_panelg.obj \
|
||||
$(OBJS)\coredll_progdlgg.obj \
|
||||
$(OBJS)\coredll_printps.obj \
|
||||
$(OBJS)\coredll_renderg.obj \
|
||||
@@ -4162,6 +4168,7 @@ ____CORE_SRC_FILENAMES_3_OBJECTS = \
|
||||
$(OBJS)\corelib_markuptext.obj \
|
||||
$(OBJS)\corelib_msgdlgg.obj \
|
||||
$(OBJS)\corelib_numdlgg.obj \
|
||||
$(OBJS)\corelib_panelg.obj \
|
||||
$(OBJS)\corelib_progdlgg.obj \
|
||||
$(OBJS)\corelib_printps.obj \
|
||||
$(OBJS)\corelib_renderg.obj \
|
||||
@@ -4427,6 +4434,7 @@ ____CORE_SRC_FILENAMES_3_OBJECTS = \
|
||||
$(OBJS)\corelib_markuptext.obj \
|
||||
$(OBJS)\corelib_msgdlgg.obj \
|
||||
$(OBJS)\corelib_numdlgg.obj \
|
||||
$(OBJS)\corelib_panelg.obj \
|
||||
$(OBJS)\corelib_progdlgg.obj \
|
||||
$(OBJS)\corelib_printps.obj \
|
||||
$(OBJS)\corelib_renderg.obj \
|
||||
@@ -8540,6 +8548,11 @@ $(OBJS)\monodll_numdlgg.obj: ..\..\src\generic\numdlgg.cpp
|
||||
$(CXX) /c /nologo /TP /Fo$@ $(MONODLL_CXXFLAGS) ..\..\src\generic\numdlgg.cpp
|
||||
!endif
|
||||
|
||||
!if "$(USE_GUI)" == "1"
|
||||
$(OBJS)\monodll_panelg.obj: ..\..\src\generic\panelg.cpp
|
||||
$(CXX) /c /nologo /TP /Fo$@ $(MONODLL_CXXFLAGS) ..\..\src\generic\panelg.cpp
|
||||
!endif
|
||||
|
||||
!if "$(USE_GUI)" == "1"
|
||||
$(OBJS)\monodll_progdlgg.obj: ..\..\src\generic\progdlgg.cpp
|
||||
$(CXX) /c /nologo /TP /Fo$@ $(MONODLL_CXXFLAGS) ..\..\src\generic\progdlgg.cpp
|
||||
@@ -10882,6 +10895,11 @@ $(OBJS)\monolib_numdlgg.obj: ..\..\src\generic\numdlgg.cpp
|
||||
$(CXX) /c /nologo /TP /Fo$@ $(MONOLIB_CXXFLAGS) ..\..\src\generic\numdlgg.cpp
|
||||
!endif
|
||||
|
||||
!if "$(USE_GUI)" == "1"
|
||||
$(OBJS)\monolib_panelg.obj: ..\..\src\generic\panelg.cpp
|
||||
$(CXX) /c /nologo /TP /Fo$@ $(MONOLIB_CXXFLAGS) ..\..\src\generic\panelg.cpp
|
||||
!endif
|
||||
|
||||
!if "$(USE_GUI)" == "1"
|
||||
$(OBJS)\monolib_progdlgg.obj: ..\..\src\generic\progdlgg.cpp
|
||||
$(CXX) /c /nologo /TP /Fo$@ $(MONOLIB_CXXFLAGS) ..\..\src\generic\progdlgg.cpp
|
||||
@@ -13218,6 +13236,11 @@ $(OBJS)\coredll_numdlgg.obj: ..\..\src\generic\numdlgg.cpp
|
||||
$(CXX) /c /nologo /TP /Fo$@ $(COREDLL_CXXFLAGS) ..\..\src\generic\numdlgg.cpp
|
||||
!endif
|
||||
|
||||
!if "$(USE_GUI)" == "1"
|
||||
$(OBJS)\coredll_panelg.obj: ..\..\src\generic\panelg.cpp
|
||||
$(CXX) /c /nologo /TP /Fo$@ $(COREDLL_CXXFLAGS) ..\..\src\generic\panelg.cpp
|
||||
!endif
|
||||
|
||||
!if "$(USE_GUI)" == "1"
|
||||
$(OBJS)\coredll_progdlgg.obj: ..\..\src\generic\progdlgg.cpp
|
||||
$(CXX) /c /nologo /TP /Fo$@ $(COREDLL_CXXFLAGS) ..\..\src\generic\progdlgg.cpp
|
||||
@@ -14615,6 +14638,11 @@ $(OBJS)\corelib_numdlgg.obj: ..\..\src\generic\numdlgg.cpp
|
||||
$(CXX) /c /nologo /TP /Fo$@ $(CORELIB_CXXFLAGS) ..\..\src\generic\numdlgg.cpp
|
||||
!endif
|
||||
|
||||
!if "$(USE_GUI)" == "1"
|
||||
$(OBJS)\corelib_panelg.obj: ..\..\src\generic\panelg.cpp
|
||||
$(CXX) /c /nologo /TP /Fo$@ $(CORELIB_CXXFLAGS) ..\..\src\generic\panelg.cpp
|
||||
!endif
|
||||
|
||||
!if "$(USE_GUI)" == "1"
|
||||
$(OBJS)\corelib_progdlgg.obj: ..\..\src\generic\progdlgg.cpp
|
||||
$(CXX) /c /nologo /TP /Fo$@ $(CORELIB_CXXFLAGS) ..\..\src\generic\progdlgg.cpp
|
||||
|
@@ -490,6 +490,7 @@ ____CORE_SRC_FILENAMES_OBJECTS = &
|
||||
$(OBJS)\monodll_markuptext.obj &
|
||||
$(OBJS)\monodll_msgdlgg.obj &
|
||||
$(OBJS)\monodll_numdlgg.obj &
|
||||
$(OBJS)\monodll_panelg.obj &
|
||||
$(OBJS)\monodll_progdlgg.obj &
|
||||
$(OBJS)\monodll_printps.obj &
|
||||
$(OBJS)\monodll_renderg.obj &
|
||||
@@ -757,6 +758,7 @@ ____CORE_SRC_FILENAMES_OBJECTS = &
|
||||
$(OBJS)\monodll_markuptext.obj &
|
||||
$(OBJS)\monodll_msgdlgg.obj &
|
||||
$(OBJS)\monodll_numdlgg.obj &
|
||||
$(OBJS)\monodll_panelg.obj &
|
||||
$(OBJS)\monodll_progdlgg.obj &
|
||||
$(OBJS)\monodll_printps.obj &
|
||||
$(OBJS)\monodll_renderg.obj &
|
||||
@@ -1262,6 +1264,7 @@ ____CORE_SRC_FILENAMES_1_OBJECTS = &
|
||||
$(OBJS)\monolib_markuptext.obj &
|
||||
$(OBJS)\monolib_msgdlgg.obj &
|
||||
$(OBJS)\monolib_numdlgg.obj &
|
||||
$(OBJS)\monolib_panelg.obj &
|
||||
$(OBJS)\monolib_progdlgg.obj &
|
||||
$(OBJS)\monolib_printps.obj &
|
||||
$(OBJS)\monolib_renderg.obj &
|
||||
@@ -1529,6 +1532,7 @@ ____CORE_SRC_FILENAMES_1_OBJECTS = &
|
||||
$(OBJS)\monolib_markuptext.obj &
|
||||
$(OBJS)\monolib_msgdlgg.obj &
|
||||
$(OBJS)\monolib_numdlgg.obj &
|
||||
$(OBJS)\monolib_panelg.obj &
|
||||
$(OBJS)\monolib_progdlgg.obj &
|
||||
$(OBJS)\monolib_printps.obj &
|
||||
$(OBJS)\monolib_renderg.obj &
|
||||
@@ -1938,6 +1942,7 @@ ____CORE_SRC_FILENAMES_2_OBJECTS = &
|
||||
$(OBJS)\coredll_markuptext.obj &
|
||||
$(OBJS)\coredll_msgdlgg.obj &
|
||||
$(OBJS)\coredll_numdlgg.obj &
|
||||
$(OBJS)\coredll_panelg.obj &
|
||||
$(OBJS)\coredll_progdlgg.obj &
|
||||
$(OBJS)\coredll_printps.obj &
|
||||
$(OBJS)\coredll_renderg.obj &
|
||||
@@ -2205,6 +2210,7 @@ ____CORE_SRC_FILENAMES_2_OBJECTS = &
|
||||
$(OBJS)\coredll_markuptext.obj &
|
||||
$(OBJS)\coredll_msgdlgg.obj &
|
||||
$(OBJS)\coredll_numdlgg.obj &
|
||||
$(OBJS)\coredll_panelg.obj &
|
||||
$(OBJS)\coredll_progdlgg.obj &
|
||||
$(OBJS)\coredll_printps.obj &
|
||||
$(OBJS)\coredll_renderg.obj &
|
||||
@@ -2486,6 +2492,7 @@ ____CORE_SRC_FILENAMES_3_OBJECTS = &
|
||||
$(OBJS)\corelib_markuptext.obj &
|
||||
$(OBJS)\corelib_msgdlgg.obj &
|
||||
$(OBJS)\corelib_numdlgg.obj &
|
||||
$(OBJS)\corelib_panelg.obj &
|
||||
$(OBJS)\corelib_progdlgg.obj &
|
||||
$(OBJS)\corelib_printps.obj &
|
||||
$(OBJS)\corelib_renderg.obj &
|
||||
@@ -2753,6 +2760,7 @@ ____CORE_SRC_FILENAMES_3_OBJECTS = &
|
||||
$(OBJS)\corelib_markuptext.obj &
|
||||
$(OBJS)\corelib_msgdlgg.obj &
|
||||
$(OBJS)\corelib_numdlgg.obj &
|
||||
$(OBJS)\corelib_panelg.obj &
|
||||
$(OBJS)\corelib_progdlgg.obj &
|
||||
$(OBJS)\corelib_printps.obj &
|
||||
$(OBJS)\corelib_renderg.obj &
|
||||
@@ -8369,6 +8377,11 @@ $(OBJS)\monodll_numdlgg.obj : .AUTODEPEND ..\..\src\generic\numdlgg.cpp
|
||||
$(CXX) -bt=nt -zq -fo=$^@ $(MONODLL_CXXFLAGS) $<
|
||||
!endif
|
||||
|
||||
!ifeq USE_GUI 1
|
||||
$(OBJS)\monodll_panelg.obj : .AUTODEPEND ..\..\src\generic\panelg.cpp
|
||||
$(CXX) -bt=nt -zq -fo=$^@ $(MONODLL_CXXFLAGS) $<
|
||||
!endif
|
||||
|
||||
!ifeq USE_GUI 1
|
||||
$(OBJS)\monodll_progdlgg.obj : .AUTODEPEND ..\..\src\generic\progdlgg.cpp
|
||||
$(CXX) -bt=nt -zq -fo=$^@ $(MONODLL_CXXFLAGS) $<
|
||||
@@ -10711,6 +10724,11 @@ $(OBJS)\monolib_numdlgg.obj : .AUTODEPEND ..\..\src\generic\numdlgg.cpp
|
||||
$(CXX) -bt=nt -zq -fo=$^@ $(MONOLIB_CXXFLAGS) $<
|
||||
!endif
|
||||
|
||||
!ifeq USE_GUI 1
|
||||
$(OBJS)\monolib_panelg.obj : .AUTODEPEND ..\..\src\generic\panelg.cpp
|
||||
$(CXX) -bt=nt -zq -fo=$^@ $(MONOLIB_CXXFLAGS) $<
|
||||
!endif
|
||||
|
||||
!ifeq USE_GUI 1
|
||||
$(OBJS)\monolib_progdlgg.obj : .AUTODEPEND ..\..\src\generic\progdlgg.cpp
|
||||
$(CXX) -bt=nt -zq -fo=$^@ $(MONOLIB_CXXFLAGS) $<
|
||||
@@ -13047,6 +13065,11 @@ $(OBJS)\coredll_numdlgg.obj : .AUTODEPEND ..\..\src\generic\numdlgg.cpp
|
||||
$(CXX) -bt=nt -zq -fo=$^@ $(COREDLL_CXXFLAGS) $<
|
||||
!endif
|
||||
|
||||
!ifeq USE_GUI 1
|
||||
$(OBJS)\coredll_panelg.obj : .AUTODEPEND ..\..\src\generic\panelg.cpp
|
||||
$(CXX) -bt=nt -zq -fo=$^@ $(COREDLL_CXXFLAGS) $<
|
||||
!endif
|
||||
|
||||
!ifeq USE_GUI 1
|
||||
$(OBJS)\coredll_progdlgg.obj : .AUTODEPEND ..\..\src\generic\progdlgg.cpp
|
||||
$(CXX) -bt=nt -zq -fo=$^@ $(COREDLL_CXXFLAGS) $<
|
||||
@@ -14444,6 +14467,11 @@ $(OBJS)\corelib_numdlgg.obj : .AUTODEPEND ..\..\src\generic\numdlgg.cpp
|
||||
$(CXX) -bt=nt -zq -fo=$^@ $(CORELIB_CXXFLAGS) $<
|
||||
!endif
|
||||
|
||||
!ifeq USE_GUI 1
|
||||
$(OBJS)\corelib_panelg.obj : .AUTODEPEND ..\..\src\generic\panelg.cpp
|
||||
$(CXX) -bt=nt -zq -fo=$^@ $(CORELIB_CXXFLAGS) $<
|
||||
!endif
|
||||
|
||||
!ifeq USE_GUI 1
|
||||
$(OBJS)\corelib_progdlgg.obj : .AUTODEPEND ..\..\src\generic\progdlgg.cpp
|
||||
$(CXX) -bt=nt -zq -fo=$^@ $(CORELIB_CXXFLAGS) $<
|
||||
|
@@ -3170,6 +3170,10 @@ SOURCE=..\..\src\generic\numdlgg.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=..\..\src\generic\panelg.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=..\..\src\generic\printps.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
@@ -2816,6 +2816,9 @@
|
||||
<File
|
||||
RelativePath="..\..\src\generic\numdlgg.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\..\src\generic\panelg.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\..\src\generic\printps.cpp">
|
||||
</File>
|
||||
|
@@ -3788,6 +3788,10 @@
|
||||
RelativePath="..\..\src\generic\numdlgg.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\..\src\generic\panelg.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\..\src\generic\printps.cpp"
|
||||
>
|
||||
|
@@ -3784,6 +3784,10 @@
|
||||
RelativePath="..\..\src\generic\numdlgg.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\..\src\generic\panelg.cpp"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\..\src\generic\printps.cpp"
|
||||
>
|
||||
|
@@ -464,6 +464,7 @@ All (GUI):
|
||||
- Added wxUIActionSimulator (Steven Lamerton, GSoC 2010 project).
|
||||
- wxAUI: support auto-orientable toolbars (wsu).
|
||||
- wxAUI: add support for icons in pane title bars (triton).
|
||||
- Added wxPanel::SetBackgroundBitmap().
|
||||
- Added wxDataViewCtrl::Set/GetCurrentItem().
|
||||
- Added possibility to disable individual wxDataViewCtrl items (Neno Ganchev).
|
||||
- wxHTML: render in RTL order inside RTL window (Richard Bullington-McGuire).
|
||||
|
@@ -12,6 +12,8 @@
|
||||
#ifndef _WX_GENERIC_PANELG_H_
|
||||
#define _WX_GENERIC_PANELG_H_
|
||||
|
||||
#include "wx/bitmap.h"
|
||||
|
||||
class WXDLLIMPEXP_CORE wxPanel : public wxPanelBase
|
||||
{
|
||||
public:
|
||||
@@ -40,7 +42,18 @@ public:
|
||||
)
|
||||
#endif // WXWIN_COMPATIBILITY_2_8
|
||||
|
||||
protected:
|
||||
virtual void DoSetBackgroundBitmap(const wxBitmap& bmp);
|
||||
|
||||
private:
|
||||
// Event handler for erasing the background which is only used when we have
|
||||
// a valid background bitmap.
|
||||
void OnEraseBackground(wxEraseEvent& event);
|
||||
|
||||
|
||||
// The bitmap used for painting the background if valid.
|
||||
wxBitmap m_bitmapBg;
|
||||
|
||||
wxDECLARE_DYNAMIC_CLASS_NO_COPY(wxPanel);
|
||||
};
|
||||
|
||||
|
@@ -11,6 +11,8 @@
|
||||
#ifndef _WX_MSW_PANEL_H_
|
||||
#define _WX_MSW_PANEL_H_
|
||||
|
||||
class WXDLLIMPEXP_FWD_CORE wxBrush;
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
// wxPanel
|
||||
// ----------------------------------------------------------------------------
|
||||
@@ -18,7 +20,7 @@
|
||||
class WXDLLIMPEXP_CORE wxPanel : public wxPanelBase
|
||||
{
|
||||
public:
|
||||
wxPanel() { }
|
||||
wxPanel() { Init(); }
|
||||
|
||||
wxPanel(wxWindow *parent,
|
||||
wxWindowID winid = wxID_ANY,
|
||||
@@ -27,6 +29,8 @@ public:
|
||||
long style = wxTAB_TRAVERSAL | wxNO_BORDER,
|
||||
const wxString& name = wxPanelNameStr)
|
||||
{
|
||||
Init();
|
||||
|
||||
Create(parent, winid, pos, size, style, name);
|
||||
}
|
||||
|
||||
@@ -48,7 +52,18 @@ public:
|
||||
)
|
||||
#endif // WXWIN_COMPATIBILITY_2_8
|
||||
|
||||
protected:
|
||||
void Init()
|
||||
{
|
||||
m_backgroundBrush = NULL;
|
||||
}
|
||||
|
||||
virtual void DoSetBackgroundBitmap(const wxBitmap& bmp);
|
||||
virtual WXHBRUSH MSWGetCustomBgBrush();
|
||||
|
||||
private:
|
||||
wxBrush *m_backgroundBrush;
|
||||
|
||||
wxDECLARE_DYNAMIC_CLASS_NO_COPY(wxPanel);
|
||||
};
|
||||
|
||||
|
@@ -52,6 +52,18 @@ public:
|
||||
const wxString& name = wxPanelNameStr);
|
||||
|
||||
|
||||
// Use the given bitmap to tile the background of this panel. This bitmap
|
||||
// will show through any transparent children.
|
||||
//
|
||||
// Notice that you must not prevent the base class EVT_ERASE_BACKGROUND
|
||||
// handler from running (i.e. not to handle this event yourself) for this
|
||||
// to work.
|
||||
void SetBackgroundBitmap(const wxBitmap& bmp)
|
||||
{
|
||||
DoSetBackgroundBitmap(bmp);
|
||||
}
|
||||
|
||||
|
||||
// implementation from now on
|
||||
// --------------------------
|
||||
|
||||
@@ -59,6 +71,9 @@ public:
|
||||
|
||||
WX_DECLARE_CONTROL_CONTAINER();
|
||||
|
||||
protected:
|
||||
virtual void DoSetBackgroundBitmap(const wxBitmap& bmp) = 0;
|
||||
|
||||
private:
|
||||
wxDECLARE_EVENT_TABLE();
|
||||
|
||||
@@ -70,6 +85,7 @@ private:
|
||||
#elif defined(__WXMSW__)
|
||||
#include "wx/msw/panel.h"
|
||||
#else
|
||||
#define wxHAS_GENERIC_PANEL
|
||||
#include "wx/generic/panelg.h"
|
||||
#endif
|
||||
|
||||
|
@@ -44,6 +44,13 @@ public:
|
||||
)
|
||||
#endif // WXWIN_COMPATIBILITY_2_8
|
||||
|
||||
protected:
|
||||
virtual void DoSetBackgroundBitmap(const wxBitmap& bmp)
|
||||
{
|
||||
// We have support for background bitmap even at the base class level.
|
||||
SetBackground(bmp, wxALIGN_NOT, wxTILE);
|
||||
}
|
||||
|
||||
private:
|
||||
wxDECLARE_DYNAMIC_CLASS_NO_COPY(wxPanel);
|
||||
};
|
||||
|
@@ -124,6 +124,21 @@ public:
|
||||
*/
|
||||
void OnSysColourChanged(wxSysColourChangedEvent& event);
|
||||
|
||||
/**
|
||||
Set the background bitmap for this panel.
|
||||
|
||||
If @a bmp is a valid bitmap, this bitmap will be tiled over the panel
|
||||
background and show through any of its transparent children. Passing an
|
||||
invalid bitmap reverts to the default background appearance.
|
||||
|
||||
Notice that you must not prevent the base class EVT_ERASE_BACKGROUND
|
||||
handler from running (i.e. not to handle this event yourself) for this
|
||||
to work.
|
||||
|
||||
@since 2.9.2
|
||||
*/
|
||||
void SetBackgroundBitmap(const wxBitmap& bmp);
|
||||
|
||||
/**
|
||||
Overrides wxWindow::SetFocus().
|
||||
|
||||
|
@@ -60,6 +60,14 @@ public:
|
||||
void UseBuffer(bool useBuffer) { m_useBuffer = useBuffer; Refresh(); }
|
||||
bool UsesBuffer() const { return m_useBuffer; }
|
||||
|
||||
void UseBgBitmap(bool useBgBmp)
|
||||
{
|
||||
m_useBgBmp = useBgBmp;
|
||||
SetBackgroundBitmap(m_useBgBmp ? GetBgBitmap() : wxBitmap());
|
||||
|
||||
Refresh();
|
||||
}
|
||||
|
||||
void EraseBgInPaint(bool erase) { m_eraseBgInPaint = erase; Refresh(); }
|
||||
|
||||
private:
|
||||
@@ -69,6 +77,24 @@ private:
|
||||
|
||||
void DoPaint(wxDC& dc);
|
||||
|
||||
// Create an easily recognizable background bitmap.
|
||||
static wxBitmap GetBgBitmap()
|
||||
{
|
||||
static const int BMP_SIZE = 40;
|
||||
|
||||
wxBitmap bmp(BMP_SIZE, BMP_SIZE);
|
||||
wxMemoryDC dc(bmp);
|
||||
dc.SetBackground(*wxCYAN);
|
||||
dc.Clear();
|
||||
|
||||
dc.SetPen(*wxBLUE_PEN);
|
||||
dc.DrawLine(0, BMP_SIZE/2, BMP_SIZE/2, 0);
|
||||
dc.DrawLine(BMP_SIZE/2, 0, BMP_SIZE, BMP_SIZE/2);
|
||||
dc.DrawLine(BMP_SIZE, BMP_SIZE/2, BMP_SIZE/2, BMP_SIZE);
|
||||
dc.DrawLine(BMP_SIZE/2, BMP_SIZE, 0, BMP_SIZE/2);
|
||||
|
||||
return bmp;
|
||||
}
|
||||
|
||||
wxBitmap m_bitmap;
|
||||
wxString m_text;
|
||||
@@ -76,6 +102,9 @@ private:
|
||||
// use wxMemoryDC in OnPaint()?
|
||||
bool m_useBuffer;
|
||||
|
||||
// use background bitmap?
|
||||
bool m_useBgBmp;
|
||||
|
||||
// erase background in OnPaint()?
|
||||
bool m_eraseBgInPaint;
|
||||
|
||||
@@ -90,6 +119,7 @@ public:
|
||||
|
||||
private:
|
||||
void OnUseBuffer(wxCommandEvent& event);
|
||||
void OnUseBgBitmap(wxCommandEvent& event);
|
||||
void OnEraseBgInPaint(wxCommandEvent& event);
|
||||
void OnChangeBgStyle(wxCommandEvent& event);
|
||||
void OnQuit(wxCommandEvent& event);
|
||||
@@ -120,6 +150,7 @@ enum
|
||||
{
|
||||
// menu items
|
||||
Erase_Menu_UseBuffer = 100,
|
||||
Erase_Menu_UseBgBitmap,
|
||||
Erase_Menu_EraseBgInPaint,
|
||||
Erase_Menu_BgStyleErase,
|
||||
Erase_Menu_BgStyleSystem,
|
||||
@@ -153,6 +184,7 @@ bool MyApp::OnInit()
|
||||
|
||||
BEGIN_EVENT_TABLE(MyFrame, wxFrame)
|
||||
EVT_MENU(Erase_Menu_UseBuffer, MyFrame::OnUseBuffer)
|
||||
EVT_MENU(Erase_Menu_UseBgBitmap, MyFrame::OnUseBgBitmap)
|
||||
EVT_MENU(Erase_Menu_EraseBgInPaint, MyFrame::OnEraseBgInPaint)
|
||||
EVT_MENU_RANGE(Erase_Menu_BgStyleErase, Erase_Menu_BgStylePaint,
|
||||
MyFrame::OnChangeBgStyle)
|
||||
@@ -174,6 +206,8 @@ MyFrame::MyFrame()
|
||||
|
||||
wxMenu *menuFile = new wxMenu("", wxMENU_TEAROFF);
|
||||
menuFile->AppendCheckItem(Erase_Menu_UseBuffer, "&Use memory DC\tCtrl-M");
|
||||
menuFile->AppendCheckItem(Erase_Menu_UseBgBitmap,
|
||||
"Use background &bitmap\tCtrl-B");
|
||||
menuFile->AppendCheckItem(Erase_Menu_EraseBgInPaint,
|
||||
"&Erase background in EVT_PAINT\tCtrl-R");
|
||||
menuFile->AppendSeparator();
|
||||
@@ -205,6 +239,11 @@ void MyFrame::OnUseBuffer(wxCommandEvent& event)
|
||||
m_canvas->UseBuffer(event.IsChecked());
|
||||
}
|
||||
|
||||
void MyFrame::OnUseBgBitmap(wxCommandEvent& event)
|
||||
{
|
||||
m_canvas->UseBgBitmap(event.IsChecked());
|
||||
}
|
||||
|
||||
void MyFrame::OnEraseBgInPaint(wxCommandEvent& event)
|
||||
{
|
||||
m_canvas->EraseBgInPaint(event.IsChecked());
|
||||
@@ -249,6 +288,7 @@ MyCanvas::MyCanvas(wxFrame *parent)
|
||||
: wxScrolledWindow(parent, wxID_ANY)
|
||||
{
|
||||
m_useBuffer = false;
|
||||
m_useBgBmp = false;
|
||||
m_eraseBgInPaint = false;
|
||||
|
||||
SetScrollbars( 10, 10, 40, 100, 0, 0 );
|
||||
@@ -310,7 +350,7 @@ void MyCanvas::DoPaint(wxDC& dc)
|
||||
|
||||
dc.DrawBitmap( m_bitmap, 20, 20, true );
|
||||
|
||||
dc.SetTextForeground(*wxWHITE);
|
||||
dc.SetTextForeground(*wxRED);
|
||||
dc.DrawText("This text is drawn from OnPaint", 65, 65);
|
||||
|
||||
wxString tmp;
|
||||
@@ -342,6 +382,14 @@ void MyCanvas::OnPaint( wxPaintEvent &WXUNUSED(event) )
|
||||
|
||||
void MyCanvas::OnEraseBackground( wxEraseEvent& event )
|
||||
{
|
||||
// We must not erase the background ourselves if we asked wxPanel to erase
|
||||
// it using a background bitmap.
|
||||
if ( m_useBgBmp )
|
||||
{
|
||||
event.Skip();
|
||||
return;
|
||||
}
|
||||
|
||||
wxASSERT_MSG
|
||||
(
|
||||
GetBackgroundStyle() == wxBG_STYLE_ERASE,
|
||||
|
69
src/generic/panelg.cpp
Normal file
69
src/generic/panelg.cpp
Normal file
@@ -0,0 +1,69 @@
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
// Name: src/generic/panelg.cpp
|
||||
// Purpose: Generic wxPanel implementation.
|
||||
// Author: Vadim Zeitlin
|
||||
// Created: 2011-03-20
|
||||
// RCS-ID: $Id: wxhead.cpp,v 1.11 2010-04-22 12:44:51 zeitlin Exp $
|
||||
// Copyright: (c) 2011 Vadim Zeitlin <vadim@wxwidgets.org>
|
||||
// Licence: wxWindows licence
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
// ============================================================================
|
||||
// declarations
|
||||
// ============================================================================
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
// headers
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
// for compilers that support precompilation, includes "wx.h".
|
||||
#include "wx/wxprec.h"
|
||||
|
||||
#ifdef __BORLANDC__
|
||||
#pragma hdrstop
|
||||
#endif
|
||||
|
||||
#ifdef wxHAS_GENERIC_PANEL
|
||||
|
||||
#ifndef WX_PRECOMP
|
||||
#include "wx/dc.h"
|
||||
#include "wx/panel.h"
|
||||
#endif // WX_PRECOMP
|
||||
|
||||
// ============================================================================
|
||||
// implementation
|
||||
// ============================================================================
|
||||
|
||||
void wxPanel::DoSetBackgroundBitmap(const wxBitmap& bmp)
|
||||
{
|
||||
m_bitmapBg = bmp;
|
||||
|
||||
if ( m_bitmapBg.IsOk() )
|
||||
{
|
||||
Connect(wxEVT_ERASE_BACKGROUND,
|
||||
wxEraseEventHandler(wxPanel::OnEraseBackground));
|
||||
}
|
||||
else
|
||||
{
|
||||
Disconnect(wxEVT_ERASE_BACKGROUND,
|
||||
wxEraseEventHandler(wxPanel::OnEraseBackground));
|
||||
}
|
||||
}
|
||||
|
||||
void wxPanel::OnEraseBackground(wxEraseEvent& event)
|
||||
{
|
||||
wxDC& dc = *event.GetDC();
|
||||
|
||||
const wxSize clientSize = GetClientSize();
|
||||
const wxSize bitmapSize = m_bitmapBg.GetSize();
|
||||
|
||||
for ( int x = 0; x < clientSize.x; x += bitmapSize.x )
|
||||
{
|
||||
for ( int y = 0; y < clientSize.y; y += bitmapSize.y )
|
||||
{
|
||||
dc.DrawBitmap(m_bitmapBg, x, y);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#endif // wxHAS_GENERIC_PANEL
|
@@ -24,6 +24,7 @@
|
||||
#endif
|
||||
|
||||
#ifndef WX_PRECOMP
|
||||
#include "wx/brush.h"
|
||||
#include "wx/panel.h"
|
||||
#endif // WX_PRECOMP
|
||||
|
||||
@@ -44,3 +45,17 @@ bool wxPanel::HasTransparentBackground()
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
void wxPanel::DoSetBackgroundBitmap(const wxBitmap& bmp)
|
||||
{
|
||||
delete m_backgroundBrush;
|
||||
m_backgroundBrush = bmp.IsOk() ? new wxBrush(bmp) : NULL;
|
||||
}
|
||||
|
||||
WXHBRUSH wxPanel::MSWGetCustomBgBrush()
|
||||
{
|
||||
if ( m_backgroundBrush )
|
||||
return (WXHBRUSH)m_backgroundBrush->GetResourceHandle();
|
||||
|
||||
return wxPanelBase::MSWGetCustomBgBrush();
|
||||
}
|
||||
|
Reference in New Issue
Block a user