From: Vadim Zeitlin Date: Mon, 22 Aug 2011 12:18:56 +0000 (+0000) Subject: Add XRC handler for wxBannerWindow and a test for it to the xrc sample. X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/ae2047c32a7a90f7b0e0b600b3e88a5ef9ff1fe0?ds=sidebyside Add XRC handler for wxBannerWindow and a test for it to the xrc sample. Also document the new XRC format elements. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68840 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- diff --git a/Makefile.in b/Makefile.in index 7f8608caa8..6d0ed4894e 100644 --- a/Makefile.in +++ b/Makefile.in @@ -1662,6 +1662,7 @@ XRCDLL_CXXFLAGS = $(__xrcdll_PCH_INC) -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) \ XRCDLL_OBJECTS = \ $(__xrcdll___win32rc) \ xrcdll_xh_animatctrl.o \ + xrcdll_xh_bannerwindow.o \ xrcdll_xh_bmp.o \ xrcdll_xh_bmpcbox.o \ xrcdll_xh_bmpbt.o \ @@ -1732,6 +1733,7 @@ XRCLIB_CXXFLAGS = $(__xrclib_PCH_INC) -D__WX$(TOOLKIT)__ $(__WXUNIV_DEFINE_p) \ $(__INC_EXPAT_p) $(CXXWARNINGS) $(CPPFLAGS) $(CXXFLAGS) XRCLIB_OBJECTS = \ xrclib_xh_animatctrl.o \ + xrclib_xh_bannerwindow.o \ xrclib_xh_bmp.o \ xrclib_xh_bmpcbox.o \ xrclib_xh_bmpbt.o \ @@ -4089,6 +4091,7 @@ COND_USE_GUI_1_ALL_GUI_HEADERS = \ wx/debugrpt.h \ wx/xrc/xh_all.h \ wx/xrc/xh_animatctrl.h \ + wx/xrc/xh_bannerwindow.h \ wx/xrc/xh_bmpbt.h \ wx/xrc/xh_bmp.h \ wx/xrc/xh_bmpcbox.h \ @@ -4396,6 +4399,7 @@ COND_USE_GUI_1___MONOLIB_GUI_SRC_OBJECTS = \ monodll_debugrpt.o \ monodll_dbgrptg.o \ monodll_xh_animatctrl.o \ + monodll_xh_bannerwindow.o \ monodll_xh_bmp.o \ monodll_xh_bmpcbox.o \ monodll_xh_bmpbt.o \ @@ -6328,6 +6332,7 @@ COND_USE_GUI_1___MONOLIB_GUI_SRC_OBJECTS_1 = \ monolib_debugrpt.o \ monolib_dbgrptg.o \ monolib_xh_animatctrl.o \ + monolib_xh_bannerwindow.o \ monolib_xh_bmp.o \ monolib_xh_bmpcbox.o \ monolib_xh_bmpbt.o \ @@ -17163,6 +17168,9 @@ monodll_dbgrptg.o: $(srcdir)/src/generic/dbgrptg.cpp $(MONODLL_ODEP) monodll_xh_animatctrl.o: $(srcdir)/src/xrc/xh_animatctrl.cpp $(MONODLL_ODEP) $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/xrc/xh_animatctrl.cpp +monodll_xh_bannerwindow.o: $(srcdir)/src/xrc/xh_bannerwindow.cpp $(MONODLL_ODEP) + $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/xrc/xh_bannerwindow.cpp + monodll_xh_bmp.o: $(srcdir)/src/xrc/xh_bmp.cpp $(MONODLL_ODEP) $(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/xrc/xh_bmp.cpp @@ -22491,6 +22499,9 @@ monolib_dbgrptg.o: $(srcdir)/src/generic/dbgrptg.cpp $(MONOLIB_ODEP) monolib_xh_animatctrl.o: $(srcdir)/src/xrc/xh_animatctrl.cpp $(MONOLIB_ODEP) $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/xrc/xh_animatctrl.cpp +monolib_xh_bannerwindow.o: $(srcdir)/src/xrc/xh_bannerwindow.cpp $(MONOLIB_ODEP) + $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/xrc/xh_bannerwindow.cpp + monolib_xh_bmp.o: $(srcdir)/src/xrc/xh_bmp.cpp $(MONOLIB_ODEP) $(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/xrc/xh_bmp.cpp @@ -36171,6 +36182,9 @@ xrcdll_version_rc.o: $(srcdir)/src/msw/version.rc $(XRCDLL_ODEP) xrcdll_xh_animatctrl.o: $(srcdir)/src/xrc/xh_animatctrl.cpp $(XRCDLL_ODEP) $(CXXC) -c -o $@ $(XRCDLL_CXXFLAGS) $(srcdir)/src/xrc/xh_animatctrl.cpp +xrcdll_xh_bannerwindow.o: $(srcdir)/src/xrc/xh_bannerwindow.cpp $(XRCDLL_ODEP) + $(CXXC) -c -o $@ $(XRCDLL_CXXFLAGS) $(srcdir)/src/xrc/xh_bannerwindow.cpp + xrcdll_xh_bmp.o: $(srcdir)/src/xrc/xh_bmp.cpp $(XRCDLL_ODEP) $(CXXC) -c -o $@ $(XRCDLL_CXXFLAGS) $(srcdir)/src/xrc/xh_bmp.cpp @@ -36360,6 +36374,9 @@ xrcdll_xmlrsall.o: $(srcdir)/src/xrc/xmlrsall.cpp $(XRCDLL_ODEP) xrclib_xh_animatctrl.o: $(srcdir)/src/xrc/xh_animatctrl.cpp $(XRCLIB_ODEP) $(CXXC) -c -o $@ $(XRCLIB_CXXFLAGS) $(srcdir)/src/xrc/xh_animatctrl.cpp +xrclib_xh_bannerwindow.o: $(srcdir)/src/xrc/xh_bannerwindow.cpp $(XRCLIB_ODEP) + $(CXXC) -c -o $@ $(XRCLIB_CXXFLAGS) $(srcdir)/src/xrc/xh_bannerwindow.cpp + xrclib_xh_bmp.o: $(srcdir)/src/xrc/xh_bmp.cpp $(XRCLIB_ODEP) $(CXXC) -c -o $@ $(XRCLIB_CXXFLAGS) $(srcdir)/src/xrc/xh_bmp.cpp diff --git a/build/bakefiles/files.bkl b/build/bakefiles/files.bkl index 38fbc2d7e5..5340ade4b2 100644 --- a/build/bakefiles/files.bkl +++ b/build/bakefiles/files.bkl @@ -3357,6 +3357,7 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file! src/xrc/xh_animatctrl.cpp + src/xrc/xh_bannerwindow.cpp src/xrc/xh_bmp.cpp src/xrc/xh_bmpcbox.cpp src/xrc/xh_bmpbt.cpp @@ -3425,6 +3426,7 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file! wx/xrc/xh_all.h wx/xrc/xh_animatctrl.h + wx/xrc/xh_bannerwindow.h wx/xrc/xh_bmpbt.h wx/xrc/xh_bmp.h wx/xrc/xh_bmpcbox.h diff --git a/build/msw/makefile.bcc b/build/msw/makefile.bcc index 1d39fdb2a2..53c1e4a69d 100644 --- a/build/msw/makefile.bcc +++ b/build/msw/makefile.bcc @@ -1136,6 +1136,7 @@ XRCDLL_CXXFLAGS = $(__RUNTIME_LIBS) -I$(BCCDIR)\include $(__DEBUGINFO) \ XRCDLL_OBJECTS = \ $(OBJS)\xrcdll_dummy.obj \ $(OBJS)\xrcdll_xh_animatctrl.obj \ + $(OBJS)\xrcdll_xh_bannerwindow.obj \ $(OBJS)\xrcdll_xh_bmp.obj \ $(OBJS)\xrcdll_xh_bmpcbox.obj \ $(OBJS)\xrcdll_xh_bmpbt.obj \ @@ -1210,6 +1211,7 @@ XRCLIB_CXXFLAGS = $(__RUNTIME_LIBS) -I$(BCCDIR)\include $(__DEBUGINFO) \ XRCLIB_OBJECTS = \ $(OBJS)\xrclib_dummy.obj \ $(OBJS)\xrclib_xh_animatctrl.obj \ + $(OBJS)\xrclib_xh_bannerwindow.obj \ $(OBJS)\xrclib_xh_bmp.obj \ $(OBJS)\xrclib_xh_bmpcbox.obj \ $(OBJS)\xrclib_xh_bmpbt.obj \ @@ -1578,6 +1580,7 @@ ____MONOLIB_GUI_SRC_FILENAMES_OBJECTS = \ $(OBJS)\monodll_debugrpt.obj \ $(OBJS)\monodll_dbgrptg.obj \ $(OBJS)\monodll_xh_animatctrl.obj \ + $(OBJS)\monodll_xh_bannerwindow.obj \ $(OBJS)\monodll_xh_bmp.obj \ $(OBJS)\monodll_xh_bmpcbox.obj \ $(OBJS)\monodll_xh_bmpbt.obj \ @@ -2344,6 +2347,7 @@ ____MONOLIB_GUI_SRC_FILENAMES_1_OBJECTS = \ $(OBJS)\monolib_debugrpt.obj \ $(OBJS)\monolib_dbgrptg.obj \ $(OBJS)\monolib_xh_animatctrl.obj \ + $(OBJS)\monolib_xh_bannerwindow.obj \ $(OBJS)\monolib_xh_bmp.obj \ $(OBJS)\monolib_xh_bmpcbox.obj \ $(OBJS)\monolib_xh_bmpbt.obj \ @@ -6706,6 +6710,9 @@ $(OBJS)\monodll_dbgrptg.obj: ..\..\src\generic\dbgrptg.cpp $(OBJS)\monodll_xh_animatctrl.obj: ..\..\src\xrc\xh_animatctrl.cpp $(CXX) -q -c -P -o$@ $(MONODLL_CXXFLAGS) ..\..\src\xrc\xh_animatctrl.cpp +$(OBJS)\monodll_xh_bannerwindow.obj: ..\..\src\xrc\xh_bannerwindow.cpp + $(CXX) -q -c -P -o$@ $(MONODLL_CXXFLAGS) ..\..\src\xrc\xh_bannerwindow.cpp + $(OBJS)\monodll_xh_bmp.obj: ..\..\src\xrc\xh_bmp.cpp $(CXX) -q -c -P -o$@ $(MONODLL_CXXFLAGS) ..\..\src\xrc\xh_bmp.cpp @@ -9062,6 +9069,9 @@ $(OBJS)\monolib_dbgrptg.obj: ..\..\src\generic\dbgrptg.cpp $(OBJS)\monolib_xh_animatctrl.obj: ..\..\src\xrc\xh_animatctrl.cpp $(CXX) -q -c -P -o$@ $(MONOLIB_CXXFLAGS) ..\..\src\xrc\xh_animatctrl.cpp +$(OBJS)\monolib_xh_bannerwindow.obj: ..\..\src\xrc\xh_bannerwindow.cpp + $(CXX) -q -c -P -o$@ $(MONOLIB_CXXFLAGS) ..\..\src\xrc\xh_bannerwindow.cpp + $(OBJS)\monolib_xh_bmp.obj: ..\..\src\xrc\xh_bmp.cpp $(CXX) -q -c -P -o$@ $(MONOLIB_CXXFLAGS) ..\..\src\xrc\xh_bmp.cpp @@ -14705,6 +14715,9 @@ $(OBJS)\xrcdll_version.res: ..\..\src\msw\version.rc $(OBJS)\xrcdll_xh_animatctrl.obj: ..\..\src\xrc\xh_animatctrl.cpp $(CXX) -q -c -P -o$@ $(XRCDLL_CXXFLAGS) ..\..\src\xrc\xh_animatctrl.cpp +$(OBJS)\xrcdll_xh_bannerwindow.obj: ..\..\src\xrc\xh_bannerwindow.cpp + $(CXX) -q -c -P -o$@ $(XRCDLL_CXXFLAGS) ..\..\src\xrc\xh_bannerwindow.cpp + $(OBJS)\xrcdll_xh_bmp.obj: ..\..\src\xrc\xh_bmp.cpp $(CXX) -q -c -P -o$@ $(XRCDLL_CXXFLAGS) ..\..\src\xrc\xh_bmp.cpp @@ -14897,6 +14910,9 @@ $(OBJS)\xrclib_dummy.obj: ..\..\src\common\dummy.cpp $(OBJS)\xrclib_xh_animatctrl.obj: ..\..\src\xrc\xh_animatctrl.cpp $(CXX) -q -c -P -o$@ $(XRCLIB_CXXFLAGS) ..\..\src\xrc\xh_animatctrl.cpp +$(OBJS)\xrclib_xh_bannerwindow.obj: ..\..\src\xrc\xh_bannerwindow.cpp + $(CXX) -q -c -P -o$@ $(XRCLIB_CXXFLAGS) ..\..\src\xrc\xh_bannerwindow.cpp + $(OBJS)\xrclib_xh_bmp.obj: ..\..\src\xrc\xh_bmp.cpp $(CXX) -q -c -P -o$@ $(XRCLIB_CXXFLAGS) ..\..\src\xrc\xh_bmp.cpp diff --git a/build/msw/makefile.gcc b/build/msw/makefile.gcc index 656b0327de..5cc712209a 100644 --- a/build/msw/makefile.gcc +++ b/build/msw/makefile.gcc @@ -1134,6 +1134,7 @@ XRCDLL_OBJECTS = \ $(OBJS)\xrcdll_dummy.o \ $(OBJS)\xrcdll_version_rc.o \ $(OBJS)\xrcdll_xh_animatctrl.o \ + $(OBJS)\xrcdll_xh_bannerwindow.o \ $(OBJS)\xrcdll_xh_bmp.o \ $(OBJS)\xrcdll_xh_bmpcbox.o \ $(OBJS)\xrcdll_xh_bmpbt.o \ @@ -1207,6 +1208,7 @@ XRCLIB_CXXFLAGS = $(__DEBUGINFO) $(__OPTIMIZEFLAG) $(__THREADSFLAG) $(GCCFLAGS) XRCLIB_OBJECTS = \ $(OBJS)\xrclib_dummy.o \ $(OBJS)\xrclib_xh_animatctrl.o \ + $(OBJS)\xrclib_xh_bannerwindow.o \ $(OBJS)\xrclib_xh_bmp.o \ $(OBJS)\xrclib_xh_bmpcbox.o \ $(OBJS)\xrclib_xh_bmpbt.o \ @@ -1588,6 +1590,7 @@ ____MONOLIB_GUI_SRC_FILENAMES_OBJECTS = \ $(OBJS)\monodll_debugrpt.o \ $(OBJS)\monodll_dbgrptg.o \ $(OBJS)\monodll_xh_animatctrl.o \ + $(OBJS)\monodll_xh_bannerwindow.o \ $(OBJS)\monodll_xh_bmp.o \ $(OBJS)\monodll_xh_bmpcbox.o \ $(OBJS)\monodll_xh_bmpbt.o \ @@ -2360,6 +2363,7 @@ ____MONOLIB_GUI_SRC_FILENAMES_1_OBJECTS = \ $(OBJS)\monolib_debugrpt.o \ $(OBJS)\monolib_dbgrptg.o \ $(OBJS)\monolib_xh_animatctrl.o \ + $(OBJS)\monolib_xh_bannerwindow.o \ $(OBJS)\monolib_xh_bmp.o \ $(OBJS)\monolib_xh_bmpcbox.o \ $(OBJS)\monolib_xh_bmpbt.o \ @@ -6856,6 +6860,9 @@ $(OBJS)\monodll_dbgrptg.o: ../../src/generic/dbgrptg.cpp $(OBJS)\monodll_xh_animatctrl.o: ../../src/xrc/xh_animatctrl.cpp $(CXX) -c -o $@ $(MONODLL_CXXFLAGS) $(CPPDEPS) $< +$(OBJS)\monodll_xh_bannerwindow.o: ../../src/xrc/xh_bannerwindow.cpp + $(CXX) -c -o $@ $(MONODLL_CXXFLAGS) $(CPPDEPS) $< + $(OBJS)\monodll_xh_bmp.o: ../../src/xrc/xh_bmp.cpp $(CXX) -c -o $@ $(MONODLL_CXXFLAGS) $(CPPDEPS) $< @@ -9212,6 +9219,9 @@ $(OBJS)\monolib_dbgrptg.o: ../../src/generic/dbgrptg.cpp $(OBJS)\monolib_xh_animatctrl.o: ../../src/xrc/xh_animatctrl.cpp $(CXX) -c -o $@ $(MONOLIB_CXXFLAGS) $(CPPDEPS) $< +$(OBJS)\monolib_xh_bannerwindow.o: ../../src/xrc/xh_bannerwindow.cpp + $(CXX) -c -o $@ $(MONOLIB_CXXFLAGS) $(CPPDEPS) $< + $(OBJS)\monolib_xh_bmp.o: ../../src/xrc/xh_bmp.cpp $(CXX) -c -o $@ $(MONOLIB_CXXFLAGS) $(CPPDEPS) $< @@ -14855,6 +14865,9 @@ $(OBJS)\xrcdll_version_rc.o: ../../src/msw/version.rc $(OBJS)\xrcdll_xh_animatctrl.o: ../../src/xrc/xh_animatctrl.cpp $(CXX) -c -o $@ $(XRCDLL_CXXFLAGS) $(CPPDEPS) $< +$(OBJS)\xrcdll_xh_bannerwindow.o: ../../src/xrc/xh_bannerwindow.cpp + $(CXX) -c -o $@ $(XRCDLL_CXXFLAGS) $(CPPDEPS) $< + $(OBJS)\xrcdll_xh_bmp.o: ../../src/xrc/xh_bmp.cpp $(CXX) -c -o $@ $(XRCDLL_CXXFLAGS) $(CPPDEPS) $< @@ -15047,6 +15060,9 @@ $(OBJS)\xrclib_dummy.o: ../../src/common/dummy.cpp $(OBJS)\xrclib_xh_animatctrl.o: ../../src/xrc/xh_animatctrl.cpp $(CXX) -c -o $@ $(XRCLIB_CXXFLAGS) $(CPPDEPS) $< +$(OBJS)\xrclib_xh_bannerwindow.o: ../../src/xrc/xh_bannerwindow.cpp + $(CXX) -c -o $@ $(XRCLIB_CXXFLAGS) $(CPPDEPS) $< + $(OBJS)\xrclib_xh_bmp.o: ../../src/xrc/xh_bmp.cpp $(CXX) -c -o $@ $(XRCLIB_CXXFLAGS) $(CPPDEPS) $< diff --git a/build/msw/makefile.vc b/build/msw/makefile.vc index 7948df179b..23cf9f1399 100644 --- a/build/msw/makefile.vc +++ b/build/msw/makefile.vc @@ -1211,6 +1211,7 @@ XRCDLL_CXXFLAGS = /M$(__RUNTIME_LIBS_395)$(__DEBUGRUNTIME) /DWIN32 \ XRCDLL_OBJECTS = \ $(OBJS)\xrcdll_dummy.obj \ $(OBJS)\xrcdll_xh_animatctrl.obj \ + $(OBJS)\xrcdll_xh_bannerwindow.obj \ $(OBJS)\xrcdll_xh_bmp.obj \ $(OBJS)\xrcdll_xh_bmpcbox.obj \ $(OBJS)\xrcdll_xh_bmpbt.obj \ @@ -1289,6 +1290,7 @@ XRCLIB_CXXFLAGS = /M$(__RUNTIME_LIBS_410)$(__DEBUGRUNTIME) /DWIN32 \ XRCLIB_OBJECTS = \ $(OBJS)\xrclib_dummy.obj \ $(OBJS)\xrclib_xh_animatctrl.obj \ + $(OBJS)\xrclib_xh_bannerwindow.obj \ $(OBJS)\xrclib_xh_bmp.obj \ $(OBJS)\xrclib_xh_bmpcbox.obj \ $(OBJS)\xrclib_xh_bmpbt.obj \ @@ -1786,6 +1788,7 @@ ____MONOLIB_GUI_SRC_FILENAMES_OBJECTS = \ $(OBJS)\monodll_debugrpt.obj \ $(OBJS)\monodll_dbgrptg.obj \ $(OBJS)\monodll_xh_animatctrl.obj \ + $(OBJS)\monodll_xh_bannerwindow.obj \ $(OBJS)\monodll_xh_bmp.obj \ $(OBJS)\monodll_xh_bmpcbox.obj \ $(OBJS)\monodll_xh_bmpbt.obj \ @@ -2558,6 +2561,7 @@ ____MONOLIB_GUI_SRC_FILENAMES_1_OBJECTS = \ $(OBJS)\monolib_debugrpt.obj \ $(OBJS)\monolib_dbgrptg.obj \ $(OBJS)\monolib_xh_animatctrl.obj \ + $(OBJS)\monolib_xh_bannerwindow.obj \ $(OBJS)\monolib_xh_bmp.obj \ $(OBJS)\monolib_xh_bmpcbox.obj \ $(OBJS)\monolib_xh_bmpbt.obj \ @@ -7286,6 +7290,9 @@ $(OBJS)\monodll_dbgrptg.obj: ..\..\src\generic\dbgrptg.cpp $(OBJS)\monodll_xh_animatctrl.obj: ..\..\src\xrc\xh_animatctrl.cpp $(CXX) /c /nologo /TP /Fo$@ $(MONODLL_CXXFLAGS) ..\..\src\xrc\xh_animatctrl.cpp +$(OBJS)\monodll_xh_bannerwindow.obj: ..\..\src\xrc\xh_bannerwindow.cpp + $(CXX) /c /nologo /TP /Fo$@ $(MONODLL_CXXFLAGS) ..\..\src\xrc\xh_bannerwindow.cpp + $(OBJS)\monodll_xh_bmp.obj: ..\..\src\xrc\xh_bmp.cpp $(CXX) /c /nologo /TP /Fo$@ $(MONODLL_CXXFLAGS) ..\..\src\xrc\xh_bmp.cpp @@ -9642,6 +9649,9 @@ $(OBJS)\monolib_dbgrptg.obj: ..\..\src\generic\dbgrptg.cpp $(OBJS)\monolib_xh_animatctrl.obj: ..\..\src\xrc\xh_animatctrl.cpp $(CXX) /c /nologo /TP /Fo$@ $(MONOLIB_CXXFLAGS) ..\..\src\xrc\xh_animatctrl.cpp +$(OBJS)\monolib_xh_bannerwindow.obj: ..\..\src\xrc\xh_bannerwindow.cpp + $(CXX) /c /nologo /TP /Fo$@ $(MONOLIB_CXXFLAGS) ..\..\src\xrc\xh_bannerwindow.cpp + $(OBJS)\monolib_xh_bmp.obj: ..\..\src\xrc\xh_bmp.cpp $(CXX) /c /nologo /TP /Fo$@ $(MONOLIB_CXXFLAGS) ..\..\src\xrc\xh_bmp.cpp @@ -15285,6 +15295,9 @@ $(OBJS)\xrcdll_version.res: ..\..\src\msw\version.rc $(OBJS)\xrcdll_xh_animatctrl.obj: ..\..\src\xrc\xh_animatctrl.cpp $(CXX) /c /nologo /TP /Fo$@ $(XRCDLL_CXXFLAGS) ..\..\src\xrc\xh_animatctrl.cpp +$(OBJS)\xrcdll_xh_bannerwindow.obj: ..\..\src\xrc\xh_bannerwindow.cpp + $(CXX) /c /nologo /TP /Fo$@ $(XRCDLL_CXXFLAGS) ..\..\src\xrc\xh_bannerwindow.cpp + $(OBJS)\xrcdll_xh_bmp.obj: ..\..\src\xrc\xh_bmp.cpp $(CXX) /c /nologo /TP /Fo$@ $(XRCDLL_CXXFLAGS) ..\..\src\xrc\xh_bmp.cpp @@ -15477,6 +15490,9 @@ $(OBJS)\xrclib_dummy.obj: ..\..\src\common\dummy.cpp $(OBJS)\xrclib_xh_animatctrl.obj: ..\..\src\xrc\xh_animatctrl.cpp $(CXX) /c /nologo /TP /Fo$@ $(XRCLIB_CXXFLAGS) ..\..\src\xrc\xh_animatctrl.cpp +$(OBJS)\xrclib_xh_bannerwindow.obj: ..\..\src\xrc\xh_bannerwindow.cpp + $(CXX) /c /nologo /TP /Fo$@ $(XRCLIB_CXXFLAGS) ..\..\src\xrc\xh_bannerwindow.cpp + $(OBJS)\xrclib_xh_bmp.obj: ..\..\src\xrc\xh_bmp.cpp $(CXX) /c /nologo /TP /Fo$@ $(XRCLIB_CXXFLAGS) ..\..\src\xrc\xh_bmp.cpp diff --git a/build/msw/makefile.wat b/build/msw/makefile.wat index 9f2d8525e1..0eee311b67 100644 --- a/build/msw/makefile.wat +++ b/build/msw/makefile.wat @@ -138,6 +138,7 @@ ____MONOLIB_GUI_SRC_FILENAMES_OBJECTS = & $(OBJS)\monodll_debugrpt.obj & $(OBJS)\monodll_dbgrptg.obj & $(OBJS)\monodll_xh_animatctrl.obj & + $(OBJS)\monodll_xh_bannerwindow.obj & $(OBJS)\monodll_xh_bmp.obj & $(OBJS)\monodll_xh_bmpcbox.obj & $(OBJS)\monodll_xh_bmpbt.obj & @@ -915,6 +916,7 @@ ____MONOLIB_GUI_SRC_FILENAMES_1_OBJECTS = & $(OBJS)\monolib_debugrpt.obj & $(OBJS)\monolib_dbgrptg.obj & $(OBJS)\monolib_xh_animatctrl.obj & + $(OBJS)\monolib_xh_bannerwindow.obj & $(OBJS)\monolib_xh_bmp.obj & $(OBJS)\monolib_xh_bmpcbox.obj & $(OBJS)\monolib_xh_bmpbt.obj & @@ -4568,6 +4570,7 @@ XRCDLL_CXXFLAGS = -bd $(__DEBUGINFO) $(__OPTIMIZEFLAG) $(__THREADSFLAG) & XRCDLL_OBJECTS = & $(OBJS)\xrcdll_dummy.obj & $(OBJS)\xrcdll_xh_animatctrl.obj & + $(OBJS)\xrcdll_xh_bannerwindow.obj & $(OBJS)\xrcdll_xh_bmp.obj & $(OBJS)\xrcdll_xh_bmpcbox.obj & $(OBJS)\xrcdll_xh_bmpbt.obj & @@ -4642,6 +4645,7 @@ XRCLIB_CXXFLAGS = $(__DEBUGINFO) $(__OPTIMIZEFLAG) $(__THREADSFLAG) & XRCLIB_OBJECTS = & $(OBJS)\xrclib_dummy.obj & $(OBJS)\xrclib_xh_animatctrl.obj & + $(OBJS)\xrclib_xh_bannerwindow.obj & $(OBJS)\xrclib_xh_bmp.obj & $(OBJS)\xrclib_xh_bmpcbox.obj & $(OBJS)\xrclib_xh_bmpbt.obj & @@ -7115,6 +7119,9 @@ $(OBJS)\monodll_dbgrptg.obj : .AUTODEPEND ..\..\src\generic\dbgrptg.cpp $(OBJS)\monodll_xh_animatctrl.obj : .AUTODEPEND ..\..\src\xrc\xh_animatctrl.cpp $(CXX) -bt=nt -zq -fo=$^@ $(MONODLL_CXXFLAGS) $< +$(OBJS)\monodll_xh_bannerwindow.obj : .AUTODEPEND ..\..\src\xrc\xh_bannerwindow.cpp + $(CXX) -bt=nt -zq -fo=$^@ $(MONODLL_CXXFLAGS) $< + $(OBJS)\monodll_xh_bmp.obj : .AUTODEPEND ..\..\src\xrc\xh_bmp.cpp $(CXX) -bt=nt -zq -fo=$^@ $(MONODLL_CXXFLAGS) $< @@ -9471,6 +9478,9 @@ $(OBJS)\monolib_dbgrptg.obj : .AUTODEPEND ..\..\src\generic\dbgrptg.cpp $(OBJS)\monolib_xh_animatctrl.obj : .AUTODEPEND ..\..\src\xrc\xh_animatctrl.cpp $(CXX) -bt=nt -zq -fo=$^@ $(MONOLIB_CXXFLAGS) $< +$(OBJS)\monolib_xh_bannerwindow.obj : .AUTODEPEND ..\..\src\xrc\xh_bannerwindow.cpp + $(CXX) -bt=nt -zq -fo=$^@ $(MONOLIB_CXXFLAGS) $< + $(OBJS)\monolib_xh_bmp.obj : .AUTODEPEND ..\..\src\xrc\xh_bmp.cpp $(CXX) -bt=nt -zq -fo=$^@ $(MONOLIB_CXXFLAGS) $< @@ -15114,6 +15124,9 @@ $(OBJS)\xrcdll_version.res : .AUTODEPEND ..\..\src\msw\version.rc $(OBJS)\xrcdll_xh_animatctrl.obj : .AUTODEPEND ..\..\src\xrc\xh_animatctrl.cpp $(CXX) -bt=nt -zq -fo=$^@ $(XRCDLL_CXXFLAGS) $< +$(OBJS)\xrcdll_xh_bannerwindow.obj : .AUTODEPEND ..\..\src\xrc\xh_bannerwindow.cpp + $(CXX) -bt=nt -zq -fo=$^@ $(XRCDLL_CXXFLAGS) $< + $(OBJS)\xrcdll_xh_bmp.obj : .AUTODEPEND ..\..\src\xrc\xh_bmp.cpp $(CXX) -bt=nt -zq -fo=$^@ $(XRCDLL_CXXFLAGS) $< @@ -15306,6 +15319,9 @@ $(OBJS)\xrclib_dummy.obj : .AUTODEPEND ..\..\src\common\dummy.cpp $(OBJS)\xrclib_xh_animatctrl.obj : .AUTODEPEND ..\..\src\xrc\xh_animatctrl.cpp $(CXX) -bt=nt -zq -fo=$^@ $(XRCLIB_CXXFLAGS) $< +$(OBJS)\xrclib_xh_bannerwindow.obj : .AUTODEPEND ..\..\src\xrc\xh_bannerwindow.cpp + $(CXX) -bt=nt -zq -fo=$^@ $(XRCLIB_CXXFLAGS) $< + $(OBJS)\xrclib_xh_bmp.obj : .AUTODEPEND ..\..\src\xrc\xh_bmp.cpp $(CXX) -bt=nt -zq -fo=$^@ $(XRCLIB_CXXFLAGS) $< diff --git a/build/msw/wx_core.dsp b/build/msw/wx_core.dsp index 995d25ffa7..38ab8b52e0 100644 --- a/build/msw/wx_core.dsp +++ b/build/msw/wx_core.dsp @@ -6996,6 +6996,10 @@ SOURCE=..\..\include\wx\xrc\xh_animatctrl.h # End Source File # Begin Source File +SOURCE=..\..\include\wx\xrc\xh_bannerwindow.h +# End Source File +# Begin Source File + SOURCE=..\..\include\wx\xrc\xh_bmp.h # End Source File # Begin Source File diff --git a/build/msw/wx_vc7_core.vcproj b/build/msw/wx_vc7_core.vcproj index d25e53cc90..3c9f272d85 100644 --- a/build/msw/wx_vc7_core.vcproj +++ b/build/msw/wx_vc7_core.vcproj @@ -5823,6 +5823,9 @@ RelativePath="..\..\include\wx\xrc\xh_animatctrl.h"> + + + + + + + + diff --git a/build/msw/wx_vc8_xrc.vcproj b/build/msw/wx_vc8_xrc.vcproj index 08681c2d25..a5af2d1002 100644 --- a/build/msw/wx_vc8_xrc.vcproj +++ b/build/msw/wx_vc8_xrc.vcproj @@ -1059,6 +1059,10 @@ > + + @@ -1309,6 +1313,10 @@ > + + diff --git a/build/msw/wx_vc9_core.vcproj b/build/msw/wx_vc9_core.vcproj index 6b1255c1d2..a2ebc1ddfd 100644 --- a/build/msw/wx_vc9_core.vcproj +++ b/build/msw/wx_vc9_core.vcproj @@ -7780,6 +7780,10 @@ > + + diff --git a/build/msw/wx_vc9_xrc.vcproj b/build/msw/wx_vc9_xrc.vcproj index 293c02e231..60ae208560 100644 --- a/build/msw/wx_vc9_xrc.vcproj +++ b/build/msw/wx_vc9_xrc.vcproj @@ -1055,6 +1055,10 @@ > + + @@ -1305,6 +1309,10 @@ > + + diff --git a/build/msw/wx_xrc.dsp b/build/msw/wx_xrc.dsp index f231d43d1b..7c65856699 100644 --- a/build/msw/wx_xrc.dsp +++ b/build/msw/wx_xrc.dsp @@ -538,6 +538,10 @@ SOURCE=..\..\include\wx\xrc\xh_animatctrl.h # End Source File # Begin Source File +SOURCE=..\..\include\wx\xrc\xh_bannerwindow.h +# End Source File +# Begin Source File + SOURCE=..\..\include\wx\xrc\xh_bmp.h # End Source File # Begin Source File @@ -786,6 +790,10 @@ SOURCE=..\..\src\xrc\xh_animatctrl.cpp # End Source File # Begin Source File +SOURCE=..\..\src\xrc\xh_bannerwindow.cpp +# End Source File +# Begin Source File + SOURCE=..\..\src\xrc\xh_bmp.cpp # End Source File # Begin Source File diff --git a/docs/doxygen/overviews/xrc_format.h b/docs/doxygen/overviews/xrc_format.h index 88e32f791c..72d5405f4a 100644 --- a/docs/doxygen/overviews/xrc_format.h +++ b/docs/doxygen/overviews/xrc_format.h @@ -526,6 +526,27 @@ controls cannot have children. @endTable +@subsubsection xrc_wxanimationctrl wxBannerWindow + +@beginTable +@hdr3col{property, type, description} +@row3col{direction, @c wxLEFT|wxRIGHT|wxTOP|wxBOTTOM, + The side along which the banner will be positioned.} +@row3col{bitmap, @ref overview_xrcformat_type_bitmap, + Bitmap to use as the banner background.} +@row3col{title, @ref overview_xrcformat_type_text, + Banner title, should be single line.} +@row3col{message, @ref overview_xrcformat_type_text, + Possibly multi-line banner message.} +@row3col{gradient-start, @ref overview_xrcformat_type_colour, + Starting colour of the gradient used as banner background. Can't be used if + a valid bitmap is specified.} +@row3col{gradient-end, @ref overview_xrcformat_type_colour, + End colour of the gradient used as banner background. Can't be used if + a valid bitmap is specified.} +@endTable + + @subsubsection xrc_wxbitmapbutton wxBitmapButton @beginTable diff --git a/include/wx/xrc/xh_all.h b/include/wx/xrc/xh_all.h index 21bd620de8..7825a72b31 100644 --- a/include/wx/xrc/xh_all.h +++ b/include/wx/xrc/xh_all.h @@ -15,6 +15,7 @@ // Existing handlers: #include "wx/xrc/xh_animatctrl.h" +#include "wx/xrc/xh_bannerwindow.h" #include "wx/xrc/xh_bmp.h" #include "wx/xrc/xh_bmpbt.h" #include "wx/xrc/xh_bmpcbox.h" diff --git a/include/wx/xrc/xh_bannerwindow.h b/include/wx/xrc/xh_bannerwindow.h new file mode 100644 index 0000000000..bc4a53d381 --- /dev/null +++ b/include/wx/xrc/xh_bannerwindow.h @@ -0,0 +1,31 @@ +/////////////////////////////////////////////////////////////////////////////// +// Name: wx/xrc/xh_bannerwindow.h +// Purpose: Declaration of wxBannerWindow XRC handler. +// Author: Vadim Zeitlin +// Created: 2011-08-16 +// RCS-ID: $Id$ +// Copyright: (c) 2011 Vadim Zeitlin +// Licence: wxWindows licence +/////////////////////////////////////////////////////////////////////////////// + +#ifndef _WX_XH_BANNERWINDOW_H_ +#define _WX_XH_BANNERWINDOW_H_ + +#include "wx/xrc/xmlres.h" + +#if wxUSE_XRC && wxUSE_BANNERWINDOW + +class WXDLLIMPEXP_XRC wxBannerWindowXmlHandler : public wxXmlResourceHandler +{ +public: + wxBannerWindowXmlHandler(); + + virtual wxObject *DoCreateResource(); + virtual bool CanHandle(wxXmlNode *node); + + wxDECLARE_DYNAMIC_CLASS(wxBannerWindowXmlHandler); +}; + +#endif // wxUSE_XRC && wxUSE_BANNERWINDOW + +#endif // _WX_XH_BANNERWINDOW_H_ diff --git a/samples/xrc/rc/controls.xrc b/samples/xrc/rc/controls.xrc index b50afb8112..f0ad8ffac1 100644 --- a/samples/xrc/rc/controls.xrc +++ b/samples/xrc/rc/controls.xrc @@ -54,6 +54,68 @@ + + + + + wxHORIZONTAL + + + wxEXPAND + + Welcome to banner demo page! + This is a default wxLEFT banner with some text.\nThe banner on the top uses a bitmap. + + + + + wxEXPAND|wxLEFT|wxRIGHT + + 15 + + wxVERTICAL + + + wxEXPAND + + wxTOP + wxbanner.gif + yellow + + Tip: + You can also use text\n and bitmap together. + + + + + + + + + wxEXPAND + + wxBOTTOM + A word of advice: + You probably shouldn't use banners\non all four sides at once. + + + + + + + wxEXPAND + + wxRIGHT + Custom Banner + You can change the gradient colours. + #7f7f7f + #ffffff + + + + + + diff --git a/samples/xrc/rc/wxbanner.gif b/samples/xrc/rc/wxbanner.gif new file mode 100644 index 0000000000..466d970f03 Binary files /dev/null and b/samples/xrc/rc/wxbanner.gif differ diff --git a/src/xrc/xh_bannerwindow.cpp b/src/xrc/xh_bannerwindow.cpp new file mode 100644 index 0000000000..6507c85500 --- /dev/null +++ b/src/xrc/xh_bannerwindow.cpp @@ -0,0 +1,88 @@ +/////////////////////////////////////////////////////////////////////////////// +// Name: srx/xrc/xh_bannerwindow.h +// Purpose: Implementation of wxBannerWindow XRC handler. +// Author: Vadim Zeitlin +// Created: 2011-08-16 +// RCS-ID: $Id$ +// Copyright: (c) 2011 Vadim Zeitlin +// Licence: wxWindows licence +/////////////////////////////////////////////////////////////////////////////// + +// For compilers that support precompilation, includes "wx.h". +#include "wx/wxprec.h" + +#ifdef __BORLANDC__ + #pragma hdrstop +#endif + +#if wxUSE_XRC && wxUSE_BANNERWINDOW + +#include "wx/xrc/xh_bannerwindow.h" +#include "wx/bannerwindow.h" + +wxIMPLEMENT_DYNAMIC_CLASS(wxBannerWindowXmlHandler, wxXmlResourceHandler) + +wxBannerWindowXmlHandler::wxBannerWindowXmlHandler() + : wxXmlResourceHandler() +{ + AddWindowStyles(); +} + +wxObject *wxBannerWindowXmlHandler::DoCreateResource() +{ + XRC_MAKE_INSTANCE(banner, wxBannerWindow) + + banner->Create(m_parentAsWindow, + GetID(), + GetDirection(wxS("direction")), + GetPosition(), + GetSize(), + GetStyle(wxS("style")), + GetName()); + + SetupWindow(banner); + + const wxColour colStart = GetColour(wxS("gradient-start")); + const wxColour colEnd = GetColour(wxS("gradient-end")); + if ( colStart.IsOk() || colEnd.IsOk() ) + { + if ( !colStart.IsOk() || !colEnd.IsOk() ) + { + ReportError + ( + "Both start and end gradient colours must be " + "specified if either one is." + ); + } + else + { + banner->SetGradient(colStart, colEnd); + } + } + + wxBitmap bitmap = GetBitmap(); + if ( bitmap.IsOk() ) + { + if ( colStart.IsOk() || colEnd.IsOk() ) + { + ReportError + ( + "Gradient colours are ignored by wxBannerWindow " + "if the background bitmap is specified." + ); + } + + banner->SetBitmap(bitmap); + } + + banner->SetText(GetText(wxS("title")), GetText(wxS("message"))); + + return banner; +} + +bool wxBannerWindowXmlHandler::CanHandle(wxXmlNode *node) +{ + return IsOfClass(node, wxS("wxBannerWindow")); +} + +#endif // wxUSE_XRC && wxUSE_BANNERWINDOW diff --git a/src/xrc/xmlrsall.cpp b/src/xrc/xmlrsall.cpp index b116c5d994..993b8de982 100644 --- a/src/xrc/xmlrsall.cpp +++ b/src/xrc/xmlrsall.cpp @@ -38,6 +38,9 @@ void wxXmlResource::InitAllHandlers() #if wxUSE_ANIMATIONCTRL AddHandler(new wxAnimationCtrlXmlHandler); #endif +#if wxUSE_BANNERWINDOW + AddHandler(new wxBannerWindowXmlHandler); +#endif #if wxUSE_BITMAPCOMBOBOX AddHandler(new wxBitmapComboBoxXmlHandler); #endif