Add XRC handler for wxInfoBar

Update the schema and the sample to show it in action.

Closes https://github.com/wxWidgets/wxWidgets/pull/1564
This commit is contained in:
Ilya Sinitsyn
2019-09-26 17:08:31 +07:00
committed by Vadim Zeitlin
parent 68b36aed6d
commit 7f91481294
27 changed files with 404 additions and 3 deletions

View File

@@ -1761,6 +1761,7 @@ XRCDLL_OBJECTS = \
xrcdll_xh_grid.o \
xrcdll_xh_html.o \
xrcdll_xh_hyperlink.o \
xrcdll_xh_infobar.o \
xrcdll_xh_listb.o \
xrcdll_xh_listbk.o \
xrcdll_xh_listc.o \
@@ -1836,6 +1837,7 @@ XRCLIB_OBJECTS = \
xrclib_xh_grid.o \
xrclib_xh_html.o \
xrclib_xh_hyperlink.o \
xrclib_xh_infobar.o \
xrclib_xh_listb.o \
xrclib_xh_listbk.o \
xrclib_xh_listc.o \
@@ -4016,6 +4018,7 @@ COND_USE_GUI_1_ALL_GUI_HEADERS = \
wx/xrc/xh_grid.h \
wx/xrc/xh_html.h \
wx/xrc/xh_hyperlink.h \
wx/xrc/xh_infobar.h \
wx/xrc/xh_listb.h \
wx/xrc/xh_listbk.h \
wx/xrc/xh_listc.h \
@@ -4323,6 +4326,7 @@ COND_USE_GUI_1___MONOLIB_GUI_SRC_OBJECTS = \
monodll_xh_grid.o \
monodll_xh_html.o \
monodll_xh_hyperlink.o \
monodll_xh_infobar.o \
monodll_xh_listb.o \
monodll_xh_listbk.o \
monodll_xh_listc.o \
@@ -6309,6 +6313,7 @@ COND_USE_GUI_1___MONOLIB_GUI_SRC_OBJECTS_1 = \
monolib_xh_grid.o \
monolib_xh_html.o \
monolib_xh_hyperlink.o \
monolib_xh_infobar.o \
monolib_xh_listb.o \
monolib_xh_listbk.o \
monolib_xh_listc.o \
@@ -17218,6 +17223,9 @@ monodll_xh_html.o: $(srcdir)/src/xrc/xh_html.cpp $(MONODLL_ODEP)
monodll_xh_hyperlink.o: $(srcdir)/src/xrc/xh_hyperlink.cpp $(MONODLL_ODEP)
$(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/xrc/xh_hyperlink.cpp
monodll_xh_infobar.o: $(srcdir)/src/xrc/xh_infobar.cpp $(MONODLL_ODEP)
$(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/xrc/xh_infobar.cpp
monodll_xh_listb.o: $(srcdir)/src/xrc/xh_listb.cpp $(MONODLL_ODEP)
$(CXXC) -c -o $@ $(MONODLL_CXXFLAGS) $(srcdir)/src/xrc/xh_listb.cpp
@@ -22486,6 +22494,9 @@ monolib_xh_html.o: $(srcdir)/src/xrc/xh_html.cpp $(MONOLIB_ODEP)
monolib_xh_hyperlink.o: $(srcdir)/src/xrc/xh_hyperlink.cpp $(MONOLIB_ODEP)
$(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/xrc/xh_hyperlink.cpp
monolib_xh_infobar.o: $(srcdir)/src/xrc/xh_infobar.cpp $(MONOLIB_ODEP)
$(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/xrc/xh_infobar.cpp
monolib_xh_listb.o: $(srcdir)/src/xrc/xh_listb.cpp $(MONOLIB_ODEP)
$(CXXC) -c -o $@ $(MONOLIB_CXXFLAGS) $(srcdir)/src/xrc/xh_listb.cpp
@@ -36094,6 +36105,9 @@ xrcdll_xh_html.o: $(srcdir)/src/xrc/xh_html.cpp $(XRCDLL_ODEP)
xrcdll_xh_hyperlink.o: $(srcdir)/src/xrc/xh_hyperlink.cpp $(XRCDLL_ODEP)
$(CXXC) -c -o $@ $(XRCDLL_CXXFLAGS) $(srcdir)/src/xrc/xh_hyperlink.cpp
xrcdll_xh_infobar.o: $(srcdir)/src/xrc/xh_infobar.cpp $(XRCDLL_ODEP)
$(CXXC) -c -o $@ $(XRCDLL_CXXFLAGS) $(srcdir)/src/xrc/xh_infobar.cpp
xrcdll_xh_listb.o: $(srcdir)/src/xrc/xh_listb.cpp $(XRCDLL_ODEP)
$(CXXC) -c -o $@ $(XRCDLL_CXXFLAGS) $(srcdir)/src/xrc/xh_listb.cpp
@@ -36298,6 +36312,9 @@ xrclib_xh_html.o: $(srcdir)/src/xrc/xh_html.cpp $(XRCLIB_ODEP)
xrclib_xh_hyperlink.o: $(srcdir)/src/xrc/xh_hyperlink.cpp $(XRCLIB_ODEP)
$(CXXC) -c -o $@ $(XRCLIB_CXXFLAGS) $(srcdir)/src/xrc/xh_hyperlink.cpp
xrclib_xh_infobar.o: $(srcdir)/src/xrc/xh_infobar.cpp $(XRCLIB_ODEP)
$(CXXC) -c -o $@ $(XRCLIB_CXXFLAGS) $(srcdir)/src/xrc/xh_infobar.cpp
xrclib_xh_listb.o: $(srcdir)/src/xrc/xh_listb.cpp $(XRCLIB_ODEP)
$(CXXC) -c -o $@ $(XRCLIB_CXXFLAGS) $(srcdir)/src/xrc/xh_listb.cpp

View File

@@ -3096,6 +3096,7 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file!
src/xrc/xh_grid.cpp
src/xrc/xh_html.cpp
src/xrc/xh_hyperlink.cpp
src/xrc/xh_infobar.cpp
src/xrc/xh_listb.cpp
src/xrc/xh_listbk.cpp
src/xrc/xh_listc.cpp
@@ -3168,6 +3169,7 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file!
wx/xrc/xh_grid.h
wx/xrc/xh_html.h
wx/xrc/xh_hyperlink.h
wx/xrc/xh_infobar.h
wx/xrc/xh_listb.h
wx/xrc/xh_listbk.h
wx/xrc/xh_listc.h

View File

@@ -2911,6 +2911,7 @@ set(XRC_SRC
src/xrc/xh_grid.cpp
src/xrc/xh_html.cpp
src/xrc/xh_hyperlink.cpp
src/xrc/xh_infobar.cpp
src/xrc/xh_listb.cpp
src/xrc/xh_listbk.cpp
src/xrc/xh_listc.cpp
@@ -2984,6 +2985,7 @@ set(XRC_HDR
wx/xrc/xh_grid.h
wx/xrc/xh_html.h
wx/xrc/xh_hyperlink.h
wx/xrc/xh_infobar.h
wx/xrc/xh_listb.h
wx/xrc/xh_listbk.h
wx/xrc/xh_listc.h

View File

@@ -2855,6 +2855,7 @@ XRC_SRC =
src/xrc/xh_grid.cpp
src/xrc/xh_html.cpp
src/xrc/xh_hyperlink.cpp
src/xrc/xh_infobar.cpp
src/xrc/xh_listb.cpp
src/xrc/xh_listbk.cpp
src/xrc/xh_listc.cpp
@@ -2926,6 +2927,7 @@ XRC_HDR =
wx/xrc/xh_grid.h
wx/xrc/xh_html.h
wx/xrc/xh_hyperlink.h
wx/xrc/xh_infobar.h
wx/xrc/xh_listb.h
wx/xrc/xh_listbk.h
wx/xrc/xh_listc.h

View File

@@ -1238,6 +1238,7 @@ XRCDLL_OBJECTS = \
$(OBJS)\xrcdll_xh_grid.obj \
$(OBJS)\xrcdll_xh_html.obj \
$(OBJS)\xrcdll_xh_hyperlink.obj \
$(OBJS)\xrcdll_xh_infobar.obj \
$(OBJS)\xrcdll_xh_listb.obj \
$(OBJS)\xrcdll_xh_listbk.obj \
$(OBJS)\xrcdll_xh_listc.obj \
@@ -1316,6 +1317,7 @@ XRCLIB_OBJECTS = \
$(OBJS)\xrclib_xh_grid.obj \
$(OBJS)\xrclib_xh_html.obj \
$(OBJS)\xrclib_xh_hyperlink.obj \
$(OBJS)\xrclib_xh_infobar.obj \
$(OBJS)\xrclib_xh_listb.obj \
$(OBJS)\xrclib_xh_listbk.obj \
$(OBJS)\xrclib_xh_listc.obj \
@@ -1710,6 +1712,7 @@ ____MONOLIB_GUI_SRC_FILENAMES_OBJECTS = \
$(OBJS)\monodll_xh_grid.obj \
$(OBJS)\monodll_xh_html.obj \
$(OBJS)\monodll_xh_hyperlink.obj \
$(OBJS)\monodll_xh_infobar.obj \
$(OBJS)\monodll_xh_listb.obj \
$(OBJS)\monodll_xh_listbk.obj \
$(OBJS)\monodll_xh_listc.obj \
@@ -2542,6 +2545,7 @@ ____MONOLIB_GUI_SRC_FILENAMES_1_OBJECTS = \
$(OBJS)\monolib_xh_grid.obj \
$(OBJS)\monolib_xh_html.obj \
$(OBJS)\monolib_xh_hyperlink.obj \
$(OBJS)\monolib_xh_infobar.obj \
$(OBJS)\monolib_xh_listb.obj \
$(OBJS)\monolib_xh_listbk.obj \
$(OBJS)\monolib_xh_listc.obj \
@@ -7338,6 +7342,9 @@ $(OBJS)\monodll_xh_html.obj: ..\..\src\xrc\xh_html.cpp
$(OBJS)\monodll_xh_hyperlink.obj: ..\..\src\xrc\xh_hyperlink.cpp
$(CXX) -q -c -P -o$@ $(MONODLL_CXXFLAGS) ..\..\src\xrc\xh_hyperlink.cpp
$(OBJS)\monodll_xh_infobar.obj: ..\..\src\xrc\xh_infobar.cpp
$(CXX) -q -c -P -o$@ $(MONODLL_CXXFLAGS) ..\..\src\xrc\xh_infobar.cpp
$(OBJS)\monodll_xh_listb.obj: ..\..\src\xrc\xh_listb.cpp
$(CXX) -q -c -P -o$@ $(MONODLL_CXXFLAGS) ..\..\src\xrc\xh_listb.cpp
@@ -9887,6 +9894,9 @@ $(OBJS)\monolib_xh_html.obj: ..\..\src\xrc\xh_html.cpp
$(OBJS)\monolib_xh_hyperlink.obj: ..\..\src\xrc\xh_hyperlink.cpp
$(CXX) -q -c -P -o$@ $(MONOLIB_CXXFLAGS) ..\..\src\xrc\xh_hyperlink.cpp
$(OBJS)\monolib_xh_infobar.obj: ..\..\src\xrc\xh_infobar.cpp
$(CXX) -q -c -P -o$@ $(MONOLIB_CXXFLAGS) ..\..\src\xrc\xh_infobar.cpp
$(OBJS)\monolib_xh_listb.obj: ..\..\src\xrc\xh_listb.cpp
$(CXX) -q -c -P -o$@ $(MONOLIB_CXXFLAGS) ..\..\src\xrc\xh_listb.cpp
@@ -16136,6 +16146,9 @@ $(OBJS)\xrcdll_xh_html.obj: ..\..\src\xrc\xh_html.cpp
$(OBJS)\xrcdll_xh_hyperlink.obj: ..\..\src\xrc\xh_hyperlink.cpp
$(CXX) -q -c -P -o$@ $(XRCDLL_CXXFLAGS) ..\..\src\xrc\xh_hyperlink.cpp
$(OBJS)\xrcdll_xh_infobar.obj: ..\..\src\xrc\xh_infobar.cpp
$(CXX) -q -c -P -o$@ $(XRCDLL_CXXFLAGS) ..\..\src\xrc\xh_infobar.cpp
$(OBJS)\xrcdll_xh_listb.obj: ..\..\src\xrc\xh_listb.cpp
$(CXX) -q -c -P -o$@ $(XRCDLL_CXXFLAGS) ..\..\src\xrc\xh_listb.cpp
@@ -16343,6 +16356,9 @@ $(OBJS)\xrclib_xh_html.obj: ..\..\src\xrc\xh_html.cpp
$(OBJS)\xrclib_xh_hyperlink.obj: ..\..\src\xrc\xh_hyperlink.cpp
$(CXX) -q -c -P -o$@ $(XRCLIB_CXXFLAGS) ..\..\src\xrc\xh_hyperlink.cpp
$(OBJS)\xrclib_xh_infobar.obj: ..\..\src\xrc\xh_infobar.cpp
$(CXX) -q -c -P -o$@ $(XRCLIB_CXXFLAGS) ..\..\src\xrc\xh_infobar.cpp
$(OBJS)\xrclib_xh_listb.obj: ..\..\src\xrc\xh_listb.cpp
$(CXX) -q -c -P -o$@ $(XRCLIB_CXXFLAGS) ..\..\src\xrc\xh_listb.cpp

View File

@@ -1245,6 +1245,7 @@ XRCDLL_OBJECTS = \
$(OBJS)\xrcdll_xh_grid.o \
$(OBJS)\xrcdll_xh_html.o \
$(OBJS)\xrcdll_xh_hyperlink.o \
$(OBJS)\xrcdll_xh_infobar.o \
$(OBJS)\xrcdll_xh_listb.o \
$(OBJS)\xrcdll_xh_listbk.o \
$(OBJS)\xrcdll_xh_listc.o \
@@ -1323,6 +1324,7 @@ XRCLIB_OBJECTS = \
$(OBJS)\xrclib_xh_grid.o \
$(OBJS)\xrclib_xh_html.o \
$(OBJS)\xrclib_xh_hyperlink.o \
$(OBJS)\xrclib_xh_infobar.o \
$(OBJS)\xrclib_xh_listb.o \
$(OBJS)\xrclib_xh_listbk.o \
$(OBJS)\xrclib_xh_listc.o \
@@ -1735,6 +1737,7 @@ ____MONOLIB_GUI_SRC_FILENAMES_OBJECTS = \
$(OBJS)\monodll_xh_grid.o \
$(OBJS)\monodll_xh_html.o \
$(OBJS)\monodll_xh_hyperlink.o \
$(OBJS)\monodll_xh_infobar.o \
$(OBJS)\monodll_xh_listb.o \
$(OBJS)\monodll_xh_listbk.o \
$(OBJS)\monodll_xh_listc.o \
@@ -2573,6 +2576,7 @@ ____MONOLIB_GUI_SRC_FILENAMES_1_OBJECTS = \
$(OBJS)\monolib_xh_grid.o \
$(OBJS)\monolib_xh_html.o \
$(OBJS)\monolib_xh_hyperlink.o \
$(OBJS)\monolib_xh_infobar.o \
$(OBJS)\monolib_xh_listb.o \
$(OBJS)\monolib_xh_listbk.o \
$(OBJS)\monolib_xh_listc.o \
@@ -7520,6 +7524,9 @@ $(OBJS)\monodll_xh_html.o: ../../src/xrc/xh_html.cpp
$(OBJS)\monodll_xh_hyperlink.o: ../../src/xrc/xh_hyperlink.cpp
$(CXX) -c -o $@ $(MONODLL_CXXFLAGS) $(CPPDEPS) $<
$(OBJS)\monodll_xh_infobar.o: ../../src/xrc/xh_infobar.cpp
$(CXX) -c -o $@ $(MONODLL_CXXFLAGS) $(CPPDEPS) $<
$(OBJS)\monodll_xh_listb.o: ../../src/xrc/xh_listb.cpp
$(CXX) -c -o $@ $(MONODLL_CXXFLAGS) $(CPPDEPS) $<
@@ -10069,6 +10076,9 @@ $(OBJS)\monolib_xh_html.o: ../../src/xrc/xh_html.cpp
$(OBJS)\monolib_xh_hyperlink.o: ../../src/xrc/xh_hyperlink.cpp
$(CXX) -c -o $@ $(MONOLIB_CXXFLAGS) $(CPPDEPS) $<
$(OBJS)\monolib_xh_infobar.o: ../../src/xrc/xh_infobar.cpp
$(CXX) -c -o $@ $(MONOLIB_CXXFLAGS) $(CPPDEPS) $<
$(OBJS)\monolib_xh_listb.o: ../../src/xrc/xh_listb.cpp
$(CXX) -c -o $@ $(MONOLIB_CXXFLAGS) $(CPPDEPS) $<
@@ -16318,6 +16328,9 @@ $(OBJS)\xrcdll_xh_html.o: ../../src/xrc/xh_html.cpp
$(OBJS)\xrcdll_xh_hyperlink.o: ../../src/xrc/xh_hyperlink.cpp
$(CXX) -c -o $@ $(XRCDLL_CXXFLAGS) $(CPPDEPS) $<
$(OBJS)\xrcdll_xh_infobar.o: ../../src/xrc/xh_infobar.cpp
$(CXX) -c -o $@ $(XRCDLL_CXXFLAGS) $(CPPDEPS) $<
$(OBJS)\xrcdll_xh_listb.o: ../../src/xrc/xh_listb.cpp
$(CXX) -c -o $@ $(XRCDLL_CXXFLAGS) $(CPPDEPS) $<
@@ -16525,6 +16538,9 @@ $(OBJS)\xrclib_xh_html.o: ../../src/xrc/xh_html.cpp
$(OBJS)\xrclib_xh_hyperlink.o: ../../src/xrc/xh_hyperlink.cpp
$(CXX) -c -o $@ $(XRCLIB_CXXFLAGS) $(CPPDEPS) $<
$(OBJS)\xrclib_xh_infobar.o: ../../src/xrc/xh_infobar.cpp
$(CXX) -c -o $@ $(XRCLIB_CXXFLAGS) $(CPPDEPS) $<
$(OBJS)\xrclib_xh_listb.o: ../../src/xrc/xh_listb.cpp
$(CXX) -c -o $@ $(XRCLIB_CXXFLAGS) $(CPPDEPS) $<

View File

@@ -1375,6 +1375,7 @@ XRCDLL_OBJECTS = \
$(OBJS)\xrcdll_xh_grid.obj \
$(OBJS)\xrcdll_xh_html.obj \
$(OBJS)\xrcdll_xh_hyperlink.obj \
$(OBJS)\xrcdll_xh_infobar.obj \
$(OBJS)\xrcdll_xh_listb.obj \
$(OBJS)\xrcdll_xh_listbk.obj \
$(OBJS)\xrcdll_xh_listc.obj \
@@ -1459,6 +1460,7 @@ XRCLIB_OBJECTS = \
$(OBJS)\xrclib_xh_grid.obj \
$(OBJS)\xrclib_xh_html.obj \
$(OBJS)\xrclib_xh_hyperlink.obj \
$(OBJS)\xrclib_xh_infobar.obj \
$(OBJS)\xrclib_xh_listb.obj \
$(OBJS)\xrclib_xh_listbk.obj \
$(OBJS)\xrclib_xh_listc.obj \
@@ -2027,6 +2029,7 @@ ____MONOLIB_GUI_SRC_FILENAMES_OBJECTS = \
$(OBJS)\monodll_xh_grid.obj \
$(OBJS)\monodll_xh_html.obj \
$(OBJS)\monodll_xh_hyperlink.obj \
$(OBJS)\monodll_xh_infobar.obj \
$(OBJS)\monodll_xh_listb.obj \
$(OBJS)\monodll_xh_listbk.obj \
$(OBJS)\monodll_xh_listc.obj \
@@ -2865,6 +2868,7 @@ ____MONOLIB_GUI_SRC_FILENAMES_1_OBJECTS = \
$(OBJS)\monolib_xh_grid.obj \
$(OBJS)\monolib_xh_html.obj \
$(OBJS)\monolib_xh_hyperlink.obj \
$(OBJS)\monolib_xh_infobar.obj \
$(OBJS)\monolib_xh_listb.obj \
$(OBJS)\monolib_xh_listbk.obj \
$(OBJS)\monolib_xh_listc.obj \
@@ -8047,6 +8051,9 @@ $(OBJS)\monodll_xh_html.obj: ..\..\src\xrc\xh_html.cpp
$(OBJS)\monodll_xh_hyperlink.obj: ..\..\src\xrc\xh_hyperlink.cpp
$(CXX) /c /nologo /TP /Fo$@ $(MONODLL_CXXFLAGS) ..\..\src\xrc\xh_hyperlink.cpp
$(OBJS)\monodll_xh_infobar.obj: ..\..\src\xrc\xh_infobar.cpp
$(CXX) /c /nologo /TP /Fo$@ $(MONODLL_CXXFLAGS) ..\..\src\xrc\xh_infobar.cpp
$(OBJS)\monodll_xh_listb.obj: ..\..\src\xrc\xh_listb.cpp
$(CXX) /c /nologo /TP /Fo$@ $(MONODLL_CXXFLAGS) ..\..\src\xrc\xh_listb.cpp
@@ -10596,6 +10603,9 @@ $(OBJS)\monolib_xh_html.obj: ..\..\src\xrc\xh_html.cpp
$(OBJS)\monolib_xh_hyperlink.obj: ..\..\src\xrc\xh_hyperlink.cpp
$(CXX) /c /nologo /TP /Fo$@ $(MONOLIB_CXXFLAGS) ..\..\src\xrc\xh_hyperlink.cpp
$(OBJS)\monolib_xh_infobar.obj: ..\..\src\xrc\xh_infobar.cpp
$(CXX) /c /nologo /TP /Fo$@ $(MONOLIB_CXXFLAGS) ..\..\src\xrc\xh_infobar.cpp
$(OBJS)\monolib_xh_listb.obj: ..\..\src\xrc\xh_listb.cpp
$(CXX) /c /nologo /TP /Fo$@ $(MONOLIB_CXXFLAGS) ..\..\src\xrc\xh_listb.cpp
@@ -16845,6 +16855,9 @@ $(OBJS)\xrcdll_xh_html.obj: ..\..\src\xrc\xh_html.cpp
$(OBJS)\xrcdll_xh_hyperlink.obj: ..\..\src\xrc\xh_hyperlink.cpp
$(CXX) /c /nologo /TP /Fo$@ $(XRCDLL_CXXFLAGS) ..\..\src\xrc\xh_hyperlink.cpp
$(OBJS)\xrcdll_xh_infobar.obj: ..\..\src\xrc\xh_infobar.cpp
$(CXX) /c /nologo /TP /Fo$@ $(XRCDLL_CXXFLAGS) ..\..\src\xrc\xh_infobar.cpp
$(OBJS)\xrcdll_xh_listb.obj: ..\..\src\xrc\xh_listb.cpp
$(CXX) /c /nologo /TP /Fo$@ $(XRCDLL_CXXFLAGS) ..\..\src\xrc\xh_listb.cpp
@@ -17052,6 +17065,9 @@ $(OBJS)\xrclib_xh_html.obj: ..\..\src\xrc\xh_html.cpp
$(OBJS)\xrclib_xh_hyperlink.obj: ..\..\src\xrc\xh_hyperlink.cpp
$(CXX) /c /nologo /TP /Fo$@ $(XRCLIB_CXXFLAGS) ..\..\src\xrc\xh_hyperlink.cpp
$(OBJS)\xrclib_xh_infobar.obj: ..\..\src\xrc\xh_infobar.cpp
$(CXX) /c /nologo /TP /Fo$@ $(XRCLIB_CXXFLAGS) ..\..\src\xrc\xh_infobar.cpp
$(OBJS)\xrclib_xh_listb.obj: ..\..\src\xrc\xh_listb.cpp
$(CXX) /c /nologo /TP /Fo$@ $(XRCLIB_CXXFLAGS) ..\..\src\xrc\xh_listb.cpp

View File

@@ -3014,6 +3014,9 @@
<File
RelativePath="..\..\include\wx\xrc\xh_hyperlink.h">
</File>
<File
RelativePath="..\..\include\wx\xrc\xh_infobar.h">
</File>
<File
RelativePath="..\..\include\wx\xrc\xh_listb.h">
</File>

View File

@@ -512,6 +512,9 @@
<File
RelativePath="..\..\include\wx\xrc\xh_hyperlink.h">
</File>
<File
RelativePath="..\..\include\wx\xrc\xh_infobar.h">
</File>
<File
RelativePath="..\..\include\wx\xrc\xh_listb.h">
</File>
@@ -715,6 +718,9 @@
<File
RelativePath="..\..\src\xrc\xh_hyperlink.cpp">
</File>
<File
RelativePath="..\..\src\xrc\xh_infobar.cpp">
</File>
<File
RelativePath="..\..\src\xrc\xh_listb.cpp">
</File>

View File

@@ -4520,6 +4520,10 @@
RelativePath="..\..\include\wx\xrc\xh_hyperlink.h"
>
</File>
<File
RelativePath="..\..\include\wx\xrc\xh_infobar.h"
>
</File>
<File
RelativePath="..\..\include\wx\xrc\xh_listb.h"
>

View File

@@ -1185,6 +1185,10 @@
RelativePath="..\..\include\wx\xrc\xh_hyperlink.h"
>
</File>
<File
RelativePath="..\..\include\wx\xrc\xh_infobar.h"
>
</File>
<File
RelativePath="..\..\include\wx\xrc\xh_listb.h"
>
@@ -1455,6 +1459,10 @@
RelativePath="..\..\src\xrc\xh_hyperlink.cpp"
>
</File>
<File
RelativePath="..\..\src\xrc\xh_infobar.cpp"
>
</File>
<File
RelativePath="..\..\src\xrc\xh_listb.cpp"
>

View File

@@ -4516,6 +4516,10 @@
RelativePath="..\..\include\wx\xrc\xh_hyperlink.h"
>
</File>
<File
RelativePath="..\..\include\wx\xrc\xh_infobar.h"
>
</File>
<File
RelativePath="..\..\include\wx\xrc\xh_listb.h"
>

View File

@@ -1181,6 +1181,10 @@
RelativePath="..\..\include\wx\xrc\xh_hyperlink.h"
>
</File>
<File
RelativePath="..\..\include\wx\xrc\xh_infobar.h"
>
</File>
<File
RelativePath="..\..\include\wx\xrc\xh_listb.h"
>
@@ -1451,6 +1455,10 @@
RelativePath="..\..\src\xrc\xh_hyperlink.cpp"
>
</File>
<File
RelativePath="..\..\src\xrc\xh_infobar.cpp"
>
</File>
<File
RelativePath="..\..\src\xrc\xh_listb.cpp"
>

View File

@@ -486,6 +486,7 @@
<ClCompile Include="..\..\src\xrc\xh_html.cpp" />
<ClCompile Include="..\..\src\xrc\xh_htmllbox.cpp" />
<ClCompile Include="..\..\src\xrc\xh_hyperlink.cpp" />
<ClCompile Include="..\..\src\xrc\xh_infobar.cpp" />
<ClCompile Include="..\..\src\xrc\xh_listb.cpp" />
<ClCompile Include="..\..\src\xrc\xh_listbk.cpp" />
<ClCompile Include="..\..\src\xrc\xh_listc.cpp" />
@@ -585,6 +586,7 @@
<ClInclude Include="..\..\include\wx\xrc\xh_html.h" />
<ClInclude Include="..\..\include\wx\xrc\xh_htmllbox.h" />
<ClInclude Include="..\..\include\wx\xrc\xh_hyperlink.h" />
<ClInclude Include="..\..\include\wx\xrc\xh_infobar.h" />
<ClInclude Include="..\..\include\wx\xrc\xh_listb.h" />
<ClInclude Include="..\..\include\wx\xrc\xh_listbk.h" />
<ClInclude Include="..\..\include\wx\xrc\xh_listc.h" />

View File

@@ -121,6 +121,9 @@
<ClCompile Include="..\..\src\xrc\xh_hyperlink.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\..\src\xrc\xh_infobar.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="..\..\src\xrc\xh_listb.cpp">
<Filter>Source Files</Filter>
</ClCompile>
@@ -335,6 +338,9 @@
<ClInclude Include="..\..\include\wx\xrc\xh_hyperlink.h">
<Filter>Common Headers</Filter>
</ClInclude>
<ClInclude Include="..\..\include\wx\xrc\xh_infobar.h">
<Filter>Common Headers</Filter>
</ClInclude>
<ClInclude Include="..\..\include\wx\xrc\xh_listb.h">
<Filter>Common Headers</Filter>
</ClInclude>

View File

@@ -2286,6 +2286,9 @@
CE32C5250F2834D4B81BE898 /* appprogress.mm in Sources */ = {isa = PBXBuildFile; fileRef = BD91A34971FB3D0299B894A5 /* appprogress.mm */; };
CE32C5250F2834D4B81BE899 /* appprogress.mm in Sources */ = {isa = PBXBuildFile; fileRef = BD91A34971FB3D0299B894A5 /* appprogress.mm */; };
CE32C5250F2834D4B81BE89A /* appprogress.mm in Sources */ = {isa = PBXBuildFile; fileRef = BD91A34971FB3D0299B894A5 /* appprogress.mm */; };
EA10DA3199813E90B39C70D3 /* xh_infobar.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 45C65E309F3A39598C043657 /* xh_infobar.cpp */; };
EA10DA3199813E90B39C70D4 /* xh_infobar.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 45C65E309F3A39598C043657 /* xh_infobar.cpp */; };
EA10DA3199813E90B39C70D5 /* xh_infobar.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 45C65E309F3A39598C043657 /* xh_infobar.cpp */; };
CEBAAB0C77983358A601BFFE /* jdmaster.c in Sources */ = {isa = PBXBuildFile; fileRef = ED19EF377E653F71B1876259 /* jdmaster.c */; };
CEBAAB0C77983358A601BFFF /* jdmaster.c in Sources */ = {isa = PBXBuildFile; fileRef = ED19EF377E653F71B1876259 /* jdmaster.c */; };
CEBAAB0C77983358A601C000 /* jdmaster.c in Sources */ = {isa = PBXBuildFile; fileRef = ED19EF377E653F71B1876259 /* jdmaster.c */; };
@@ -4629,6 +4632,7 @@
CD72950967F33809931D4968 /* LexAbaqus.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = LexAbaqus.cxx; path = ../../src/stc/scintilla/lexers/LexAbaqus.cxx; sourceTree = "<group>"; };
CDA232B9FFD33B7482E69B58 /* xh_tglbtn.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = xh_tglbtn.cpp; path = ../../src/xrc/xh_tglbtn.cpp; sourceTree = "<group>"; };
CDB4AB7CDABA3A54B4F8207B /* imaggif.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = imaggif.cpp; path = ../../src/common/imaggif.cpp; sourceTree = "<group>"; };
45C65E309F3A39598C043657 /* xh_infobar.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = xh_infobar.cpp; path = ../../src/xrc/xh_infobar.cpp; sourceTree = "<group>"; };
CF23AF3EFC5731B2A5BCF4A3 /* choicdgg.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = choicdgg.cpp; path = ../../src/generic/choicdgg.cpp; sourceTree = "<group>"; };
CF4F4F5211933057824B5621 /* button_osx.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = button_osx.cpp; path = ../../src/osx/button_osx.cpp; sourceTree = "<group>"; };
CF502E0E4D853CBBBEC885EF /* LexerSimple.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = LexerSimple.cxx; path = ../../src/stc/scintilla/lexlib/LexerSimple.cxx; sourceTree = "<group>"; };
@@ -5776,6 +5780,7 @@
93B77251C0E0382D9A8E113D /* xh_grid.cpp */,
889FFA9573A835F280A21CB4 /* xh_html.cpp */,
B4E4032CA9883CA4B25BE082 /* xh_hyperlink.cpp */,
45C65E309F3A39598C043657 /* xh_infobar.cpp */,
B4DCCF66D880330A9EE9B6B2 /* xh_listb.cpp */,
57EB0085AFB93BFC88AC6FFC /* xh_listbk.cpp */,
5F5D02D60DCA35358B2780C7 /* xh_listc.cpp */,
@@ -7943,6 +7948,7 @@
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
EA10DA3199813E90B39C70D5 /* xh_infobar.cpp in Sources */,
8F949B9010863F66A58FFEF3 /* xh_activityindicator.cpp in Sources */,
FBE4DB30865D3177B3A9993D /* xh_animatctrl.cpp in Sources */,
702616D38A5B345D9CC87116 /* xh_bannerwindow.cpp in Sources */,
@@ -8151,6 +8157,7 @@
9FB1E1763EFA334CA0C07C4A /* tarstrm.cpp in Sources */,
2E4747E0736B30569ACD5423 /* textbuf.cpp in Sources */,
6167245C417A32179EC37D2E /* textfile.cpp in Sources */,
EA10DA3199813E90B39C70D4 /* xh_infobar.cpp in Sources */,
B20B7313102232A4B3E01ABB /* threadinfo.cpp in Sources */,
98AD7D0478BA36249B03C624 /* time.cpp in Sources */,
7FC3D17B3C853FE58841002E /* timercmn.cpp in Sources */,
@@ -9378,6 +9385,7 @@
9FB1E1763EFA334CA0C07C49 /* tarstrm.cpp in Sources */,
2E4747E0736B30569ACD5422 /* textbuf.cpp in Sources */,
6167245C417A32179EC37D2D /* textfile.cpp in Sources */,
EA10DA3199813E90B39C70D3 /* xh_infobar.cpp in Sources */,
B20B7313102232A4B3E01ABA /* threadinfo.cpp in Sources */,
98AD7D0478BA36249B03C623 /* time.cpp in Sources */,
7FC3D17B3C853FE58841002D /* timercmn.cpp in Sources */,

View File

@@ -685,6 +685,7 @@
CDC0FF253B503BA19693D68D /* xh_propdlg.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 49BF55FA3427335097F99A2C /* xh_propdlg.cpp */; };
CE17002B5B7E375582747639 /* xh_choic.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 89EC3C6F9AEF3F6DA7CEB3B3 /* xh_choic.cpp */; };
CE2C937117FE3AB599DD30B9 /* sound_osx.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A9B2316B32653DA0939A372D /* sound_osx.cpp */; };
EA10DA3199813E90B39C70D3 /* xh_infobar.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 45C65E309F3A39598C043657 /* xh_infobar.cpp */; };
CEBAAB0C77983358A601BFFE /* jdmaster.c in Sources */ = {isa = PBXBuildFile; fileRef = ED19EF377E653F71B1876259 /* jdmaster.c */; };
CEC6430AEB6E3200BFA75D07 /* jfdctint.c in Sources */ = {isa = PBXBuildFile; fileRef = 90EC2A5B80EE3031BA4087B9 /* jfdctint.c */; };
CEE0D7A7D5D8323B9957A780 /* notifmsgg.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 924AA3A156F834BCA1A57976 /* notifmsgg.cpp */; };
@@ -1556,6 +1557,7 @@
CD72950967F33809931D4968 /* LexAbaqus.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = LexAbaqus.cxx; path = ../../src/stc/scintilla/lexers/LexAbaqus.cxx; sourceTree = "<group>"; };
CDA232B9FFD33B7482E69B58 /* xh_tglbtn.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = xh_tglbtn.cpp; path = ../../src/xrc/xh_tglbtn.cpp; sourceTree = "<group>"; };
CDB4AB7CDABA3A54B4F8207B /* imaggif.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = imaggif.cpp; path = ../../src/common/imaggif.cpp; sourceTree = "<group>"; };
45C65E309F3A39598C043657 /* xh_infobar.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = xh_infobar.cpp; path = ../../src/xrc/xh_infobar.cpp; sourceTree = "<group>"; };
CF23AF3EFC5731B2A5BCF4A3 /* choicdgg.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = choicdgg.cpp; path = ../../src/generic/choicdgg.cpp; sourceTree = "<group>"; };
CF4F4F5211933057824B5621 /* button_osx.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = button_osx.cpp; path = ../../src/osx/button_osx.cpp; sourceTree = "<group>"; };
CF502E0E4D853CBBBEC885EF /* LexerSimple.cxx */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; name = LexerSimple.cxx; path = ../../src/stc/scintilla/lexlib/LexerSimple.cxx; sourceTree = "<group>"; };
@@ -2330,6 +2332,7 @@
60328E6EA3793DA990E18FC1 /* xrc */ = {
isa = PBXGroup;
children = (
45C65E309F3A39598C043657 /* xh_infobar.cpp */,
BB60FA0E3524391D8581AD7C /* xh_activityindicator.cpp */,
8C1E755F2408363288B2CE69 /* xh_animatctrl.cpp */,
3116006345D833509865FF7F /* xh_bannerwindow.cpp */,
@@ -3345,6 +3348,7 @@
F3AC352D6DAE3A12A5664768 /* styleparams.cpp in Sources */,
2A7640E4210334AC93366900 /* winpars.cpp in Sources */,
87AA9C5D887B3C31A2AFB49D /* htmllbox.cpp in Sources */,
EA10DA3199813E90B39C70D3 /* xh_infobar.cpp in Sources */,
8F949B9010863F66A58FFEF1 /* xh_activityindicator.cpp in Sources */,
FBE4DB30865D3177B3A9993B /* xh_animatctrl.cpp in Sources */,
702616D38A5B345D9CC87114 /* xh_bannerwindow.cpp in Sources */,

View File

@@ -392,6 +392,16 @@ Examples:
@endcode
@subsection overview_xrcformat_type_showeffect Show Effect
One of the @ref wxShowEffect values.
Example:
@code
<showeffect>wxSHOW_EFFECT_EXPAND</showeffect>
@endcode
@subsection overview_xrcformat_type_font Font
XRC uses similar, but more flexible, abstract description of fonts to that
@@ -1221,6 +1231,40 @@ page.
@endTable
@subsubsection xrc_wxinfobar wxInfoBar
@beginTable
@hdr3col{property, type, description}
@row3col{showeffect, @ref overview_xrcformat_type_showeffect,
The effect to use when showing the bar (optional).}
@row3col{hideeffect, @ref overview_xrcformat_type_showeffect,
The effect to use when hiding the bar (optional).}
@row3col{effectduration, integer,
The duration of the animation used when showing or hiding the bar
(optional).}
@row3col{button, object,
Add a button to be shown in the info bar (see wxInfoBar::AddButton);
this property is of class "button" has name (can be one of standard
button ID) and has optional label property. If no buttons are added
to the info bar, the default "Close" button will be shown.}
@endTable
Example:
@code
<object class="wxInfoBar">
<effectduration>1000</effectduration>
<showeffect>wxSHOW_EFFECT_EXPAND</showeffect>
<hideeffect>wxSHOW_EFFECT_SLIDE_TO_RIGHT</hideeffect>
<object class="button" name="wxID_UNDO"/>
<object class="button" name="wxID_REDO">
<label>Redo Custom Label</label>
</object>
</object>
@endcode
@since 3.1.3
@subsubsection xrc_wxlistbox wxListBox
@beginTable

View File

@@ -45,6 +45,7 @@
#include "wx/xrc/xh_html.h"
#include "wx/xrc/xh_htmllbox.h"
#include "wx/xrc/xh_hyperlink.h"
#include "wx/xrc/xh_infobar.h"
#include "wx/xrc/xh_listb.h"
#include "wx/xrc/xh_listc.h"
#include "wx/xrc/xh_listbk.h"

View File

@@ -0,0 +1,36 @@
/////////////////////////////////////////////////////////////////////////////
// Name: wx/xrc/xh_infobar.h
// Purpose: XML resource handler for wxInfoBar
// Author: Ilya Sinitsyn
// Created: 2019-09-25
// Copyright: (c) 2019 TT-Solutions SARL
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_XH_INFOBAR_H_
#define _WX_XH_INFOBAR_H_
#include "wx/xrc/xmlres.h"
#if wxUSE_XRC && wxUSE_INFOBAR
class WXDLLIMPEXP_XRC wxInfoBarXmlHandler : public wxXmlResourceHandler
{
wxDECLARE_DYNAMIC_CLASS(wxInfoBarXmlHandler);
public:
wxInfoBarXmlHandler();
virtual wxObject *DoCreateResource() wxOVERRIDE;
virtual bool CanHandle(wxXmlNode *node) wxOVERRIDE;
private:
wxShowEffect GetShowEffect(wxString const& param);
bool m_insideBar;
wxString m_effectNames[wxSHOW_EFFECT_MAX];
};
#endif // wxUSE_XRC && wxUSE_INFOBAR
#endif // _WX_XH_INFOBAR_H_

View File

@@ -193,6 +193,7 @@ builtinWindowClasses =
| wxGrid
| wxHtmlWindow
| wxHyperlinkCtrl
| wxInfoBar
| wxListBox
| wxListbook
| wxListCtrl
@@ -293,6 +294,7 @@ builtinClassesNames =
| "wxGrid"
| "wxHtmlWindow"
| "wxHyperlinkCtrl"
| "wxInfoBar"
| "wxListBox"
| "wxListbook"
| "wxListCtrl"
@@ -444,6 +446,12 @@ t_unsigned = xsd:nonNegativeInteger
t_float = xsd:float
t_direction = "wxLEFT" | "wxRIGHT" | "wxTOP" | "wxBOTTOM"
t_style = xsd:string { pattern = "(wx[A-Z0-9_]+)( *\| *(wx[A-Z0-9_]+))*" }
t_showeffect = "wxSHOW_EFFECT_NONE" | "wxSHOW_EFFECT_ROLL_TO_LEFT" |
"wxSHOW_EFFECT_ROLL_TO_RIGHT" | "wxSHOW_EFFECT_ROLL_TO_TOP" |
"wxSHOW_EFFECT_ROLL_TO_BOTTOM" | "wxSHOW_EFFECT_SLIDE_TO_LEFT" |
"wxSHOW_EFFECT_SLIDE_TO_RIGHT" | "wxSHOW_EFFECT_SLIDE_TO_TOP" |
"wxSHOW_EFFECT_SLIDE_TO_BOTTOM" | "wxSHOW_EFFECT_BLEND" |
"wxSHOW_EFFECT_EXPAND"
t_url = string
t_colour = xsd:string { pattern = "#[0-9a-zA-Z][0-9a-zA-Z][0-9a-zA-Z][0-9a-zA-Z][0-9a-zA-Z][0-9a-zA-Z]" } |
@@ -1020,6 +1028,23 @@ wxHyperlinkCtrl =
}
wxInfoBar =
element object {
attribute class { "wxInfoBar" } &
stdObjectNodeAttributes &
stdWindowProperties &
[xrc:p="o"] element effectduration {_, t_integer }* &
[xrc:p="o"] element showeffect {_, t_showeffect }* &
[xrc:p="o"] element hideeffect {_, t_showeffect }* &
element object {
attribute class { "button" } &
attribute name { t_identifier }? &
platform &
[xrc:p="o"] element label {_, t_text }*
}*
}
wxListBox =
element object {
attribute class { "wxListBox" } &

View File

@@ -52,6 +52,7 @@
#include "objrefdlg.h"
// For functions to manipulate the corresponding controls.
#include "wx/animate.h"
#include "wx/infobar.h"
#include "wx/treectrl.h"
#include "wx/listctrl.h"
@@ -265,6 +266,12 @@ void MyFrame::OnControlsToolOrMenuCommand(wxCommandEvent& WXUNUSED(event))
XRCID("controls_animation_button_play"));
#endif
#if wxUSE_INFOBAR
// Show the message on button click
dlg.Bind(wxEVT_BUTTON, &MyFrame::OnInfoBarShowMessage, this,
XRCID("controls_infobar_button_message"));
#endif
// All done. Show the dialog.
dlg.ShowModal();
}
@@ -405,3 +412,18 @@ void MyFrame::OnAboutToolOrMenuCommand(wxCommandEvent& WXUNUSED(event))
wxMessageBox(msg, _("About XML resources demo"), wxOK | wxICON_INFORMATION, this);
}
void MyFrame::OnInfoBarShowMessage(wxCommandEvent& event)
{
#if wxUSE_INFOBAR
// get the pointers we need
wxButton *btn = wxDynamicCast(event.GetEventObject(), wxButton);
if ( !btn || !btn->GetParent() )
return;
wxWindow *win = btn->GetParent();
wxInfoBar *ctrl = XRCCTRL(*win, "controls_infobar", wxInfoBar);
ctrl->ShowMessage("Message", wxICON_QUESTION);
#endif
}

View File

@@ -52,6 +52,7 @@ private:
void OnVariants(wxCommandEvent& event);
void OnRecursiveLoad(wxCommandEvent& event);
void OnAnimationCtrlPlay(wxCommandEvent& event);
void OnInfoBarShowMessage(wxCommandEvent& event);
// Any class wishing to process wxWidgets events must use this macro
wxDECLARE_EVENT_TABLE();

View File

@@ -547,6 +547,39 @@ lay them out using wxSizers, absolute positioning, everything you like!
</object>
</object>
</object>
<object class="choicebookpage">
<label>wxInfoBar</label>
<object class="wxPanel" name="infobarctrl">
<object class="wxBoxSizer">
<orient>wxVERTICAL</orient>
<object class="sizeritem">
<flag>wxALIGN_CENTRE|wxALL</flag>
<border>5</border>
<object class="wxButton" name="controls_infobar_button_message">
<label>Show Message</label>
</object>
</object>
<object class="spacer">
<option>1</option>
</object>
<object class="sizeritem">
<flag>wxEXPAND</flag>
<object class="wxInfoBar" name="controls_infobar">
<effectduration>1000</effectduration>
<showeffect>wxSHOW_EFFECT_EXPAND</showeffect>
<hideeffect>wxSHOW_EFFECT_SLIDE_TO_RIGHT</hideeffect>
<object class="button" name="wxID_UNDO"/>
<object class="button" name="wxID_REDO">
<label>Redo Custom Label</label>
</object>
</object>
</object>
</object>
</object>
</object>
<object class="choicebookpage">
<label>wxListBox</label>
<object class="wxPanel" name="listbox">

View File

@@ -59,7 +59,7 @@ OBJECTS=xh_bmp.obj,xh_bmpbt.obj,xh_bttn.obj,xh_cald.obj,xh_chckb.obj,\
xh_filectrl.obj,xh_cmdlinkbn.obj,xh_toolbk.obj,xh_bannerwindow.obj,\
xh_timectrl.obj,xmlreshandler.obj,xh_ribbon.obj,xh_auitoolb.obj,\
xh_aui.obj,xh_simplebook.obj,xh_activityindicator.obj,\
xh_dataview.obj
xh_dataview.obj,xh_infobar.obj
SOURCES =xh_bmp.cpp,xh_bmpbt.cpp,xh_bttn.cpp,xh_cald.cpp,xh_chckb.cpp,\
xh_chckl.cpp,xh_choic.cpp,xh_combo.cpp,xh_dlg.cpp,xh_frame.cpp,\
@@ -77,7 +77,7 @@ SOURCES =xh_bmp.cpp,xh_bmpbt.cpp,xh_bttn.cpp,xh_cald.cpp,xh_chckb.cpp,\
xh_filectrl.cpp,xh_cmdlinkbn.cpp,xh_toolbk.cpp,xh_bannerwindow.cpp,\
xh_timectrl.cpp,xmlreshandler.cpp,xh_ribbon.cpp,xh_auitoolb.cpp,\
xh_aui.cpp,xh_simplebook.cpp,xh_activityindicator.cpp,\
xh_dataview.cpp
xh_dataview.cpp,xh_infobar.cpp
all : $(SOURCES)
$(MMS)$(MMSQUALIFIERS) $(OBJECTS)
@@ -143,6 +143,7 @@ xh_listbk.obj : xh_listbk.cpp
xh_choicbk.obj : xh_choicbk.cpp
xh_dirpicker.obj : xh_dirpicker.cpp
xh_hyperlink.obj : xh_hyperlink.cpp
xh_infobar.obj : xh_infobar.cpp
xh_filepicker.obj : xh_filepicker.cpp
xh_fontpicker.obj : xh_fontpicker.cpp
xh_clrpicker.obj : xh_clrpicker.cpp

111
src/xrc/xh_infobar.cpp Normal file
View File

@@ -0,0 +1,111 @@
/////////////////////////////////////////////////////////////////////////////
// Name: src/xrc/xh_infobar.cpp
// Purpose: XML resource handler for wxInfoBar
// Author: Ilya Sinitsyn
// Created: 2019-09-25
// Copyright: (c) 2019 TT-Solutions SARL
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
// For compilers that support precompilation, includes "wx.h".
#include "wx/wxprec.h"
#ifdef __BORLANDC__
#pragma hdrstop
#endif
#if wxUSE_XRC && wxUSE_INFOBAR
#include "wx/xrc/xh_infobar.h"
#include "wx/infobar.h"
#include "wx/xml/xml.h"
wxIMPLEMENT_DYNAMIC_CLASS(wxInfoBarXmlHandler, wxXmlResourceHandler);
#define XRC_ADD_SHOW_EFFECT(style) m_effectNames[style] = #style;
wxInfoBarXmlHandler::wxInfoBarXmlHandler()
: wxXmlResourceHandler(), m_insideBar(false)
{
XRC_ADD_SHOW_EFFECT(wxSHOW_EFFECT_NONE);
XRC_ADD_SHOW_EFFECT(wxSHOW_EFFECT_ROLL_TO_LEFT);
XRC_ADD_SHOW_EFFECT(wxSHOW_EFFECT_ROLL_TO_RIGHT);
XRC_ADD_SHOW_EFFECT(wxSHOW_EFFECT_ROLL_TO_TOP);
XRC_ADD_SHOW_EFFECT(wxSHOW_EFFECT_ROLL_TO_BOTTOM);
XRC_ADD_SHOW_EFFECT(wxSHOW_EFFECT_SLIDE_TO_LEFT);
XRC_ADD_SHOW_EFFECT(wxSHOW_EFFECT_SLIDE_TO_RIGHT);
XRC_ADD_SHOW_EFFECT(wxSHOW_EFFECT_SLIDE_TO_TOP);
XRC_ADD_SHOW_EFFECT(wxSHOW_EFFECT_SLIDE_TO_BOTTOM);
XRC_ADD_SHOW_EFFECT(wxSHOW_EFFECT_BLEND);
XRC_ADD_SHOW_EFFECT(wxSHOW_EFFECT_EXPAND);
}
wxObject *wxInfoBarXmlHandler::DoCreateResource()
{
if ( m_class == "wxInfoBar" )
{
XRC_MAKE_INSTANCE(control, wxInfoBar)
control->Create(m_parentAsWindow, GetID());
SetupWindow(control);
wxShowEffect showEffect = GetShowEffect("showeffect");
wxShowEffect hideEffect = GetShowEffect("hideeffect");
if ( showEffect != wxSHOW_EFFECT_NONE || hideEffect != wxSHOW_EFFECT_NONE )
control->SetShowHideEffects(showEffect, hideEffect);
if ( HasParam("effectduration") )
control->SetEffectDuration(GetLong("effectduration"));
m_insideBar = true;
CreateChildrenPrivately(control);
m_insideBar = false;
return control;
}
else
{
// inside the element now,
// handle buttons
wxInfoBar * const infoBar = wxDynamicCast(m_parentAsWindow, wxInfoBar);
wxCHECK_MSG(infoBar, NULL, "must have wxInfoBar parent");
infoBar->AddButton(GetID(), GetText("label"));
return NULL;
}
}
bool wxInfoBarXmlHandler::CanHandle(wxXmlNode *node)
{
return (IsOfClass(node, "wxInfoBar") ||
(m_insideBar && IsOfClass(node, "button")));
}
wxShowEffect wxInfoBarXmlHandler::GetShowEffect(wxString const& param)
{
if ( !HasParam(param) )
return wxSHOW_EFFECT_NONE;
wxString const& value = GetParamValue(param);
for ( int i = 0; i < wxSHOW_EFFECT_MAX; ++i )
{
if ( value == m_effectNames[i] )
return static_cast<wxShowEffect>(i);
}
ReportParamError
(
param,
wxString::Format("unknown show effect \"%s\"", value)
);
return wxSHOW_EFFECT_NONE;
}
#endif // wxUSE_XRC && wxUSE_INFOBAR

View File

@@ -123,6 +123,9 @@ void wxXmlResource::InitAllHandlers()
#if wxUSE_HYPERLINKCTRL
AddHandler( new wxHyperlinkCtrlXmlHandler);
#endif
#if wxUSE_INFOBAR
AddHandler(new wxInfoBarXmlHandler);
#endif
#if wxUSE_LISTBOOK
AddHandler(new wxListbookXmlHandler);
#endif