diff --git a/samples/xrc/Makefile.in b/samples/xrc/Makefile.in
index 077428584a..06542df69d 100644
--- a/samples/xrc/Makefile.in
+++ b/samples/xrc/Makefile.in
@@ -203,7 +203,7 @@ xrcdemo$(EXEEXT): $(XRCDEMO_OBJECTS) $(__xrcdemo___win32rc)
data:
@mkdir -p ./rc
- @for f in aui.xpm aui.xrc artprov.xpm artprov.xrc basicdlg.xpm basicdlg.xrc controls.xpm controls.xrc custclas.xpm custclas.xrc derivdlg.xpm derivdlg.xrc fileopen.gif filesave.gif frame.xrc fuzzy.gif menu.xrc platform.xpm platform.xrc quotes.gif resource.xrc toolbar.xrc uncenter.xpm objref.xrc objrefdlg.xpm uncenter.xrc update.gif variable.xpm variable.xrc throbber.gif stop.xpm wxbanner.gif; do \
+ @for f in aui.xpm aui.xrc artprov.xpm artprov.xrc basicdlg.xpm basicdlg.xrc controls.xpm controls.xrc custclas.xpm custclas.xrc derivdlg.xpm derivdlg.xrc fileopen.gif filesave.gif frame.xrc fuzzy.gif menu.xrc platform.xpm platform.xrc quotes.gif resource.xrc toolbar.xrc uncenter.xpm objref.xrc objrefdlg.xpm uncenter.xrc update.gif variable.xpm variable.xrc variants.xpm variants.xrc throbber.gif stop.xpm wxbanner.gif; do \
if test ! -f ./rc/$$f -a ! -d ./rc/$$f ; \
then x=yep ; \
else x=`find $(srcdir)/rc/$$f -newer ./rc/$$f -print` ; \
diff --git a/samples/xrc/makefile.bcc b/samples/xrc/makefile.bcc
index 3aef18bb69..689584bc2a 100644
--- a/samples/xrc/makefile.bcc
+++ b/samples/xrc/makefile.bcc
@@ -261,7 +261,7 @@ $(OBJS)\xrcdemo.exe: $(XRCDEMO_OBJECTS) $(OBJS)\xrcdemo_sample.res
data:
if not exist $(OBJS)\rc mkdir $(OBJS)\rc
- for %f in (aui.xpm aui.xrc artprov.xpm artprov.xrc basicdlg.xpm basicdlg.xrc controls.xpm controls.xrc custclas.xpm custclas.xrc derivdlg.xpm derivdlg.xrc fileopen.gif filesave.gif frame.xrc fuzzy.gif menu.xrc platform.xpm platform.xrc quotes.gif resource.xrc toolbar.xrc uncenter.xpm objref.xrc objrefdlg.xpm uncenter.xrc update.gif variable.xpm variable.xrc throbber.gif stop.xpm wxbanner.gif) do if not exist $(OBJS)\rc\%f copy .\rc\%f $(OBJS)\rc
+ for %f in (aui.xpm aui.xrc artprov.xpm artprov.xrc basicdlg.xpm basicdlg.xrc controls.xpm controls.xrc custclas.xpm custclas.xrc derivdlg.xpm derivdlg.xrc fileopen.gif filesave.gif frame.xrc fuzzy.gif menu.xrc platform.xpm platform.xrc quotes.gif resource.xrc toolbar.xrc uncenter.xpm objref.xrc objrefdlg.xpm uncenter.xrc update.gif variable.xpm variable.xrc variants.xpm variants.xrc throbber.gif stop.xpm wxbanner.gif) do if not exist $(OBJS)\rc\%f copy .\rc\%f $(OBJS)\rc
$(OBJS)\xrcdemo_sample.res: .\..\..\samples\sample.rc
brcc32 -32 -r -fo$@ -i$(BCCDIR)\include -d__WXMSW__ $(__WXUNIV_DEFINE_p_1) $(__DEBUG_DEFINE_p_1) $(__NDEBUG_DEFINE_p_1) $(__EXCEPTIONS_DEFINE_p_1) $(__RTTI_DEFINE_p_1) $(__THREAD_DEFINE_p_1) $(__UNICODE_DEFINE_p_1) -i$(SETUPHDIR) -i.\..\..\include $(____CAIRO_INCLUDEDIR_FILENAMES_1_p) -i. $(__DLLFLAG_p_1) -i.\..\..\samples -dNOPCH .\..\..\samples\sample.rc
diff --git a/samples/xrc/makefile.gcc b/samples/xrc/makefile.gcc
index e056220dd6..1b81414626 100644
--- a/samples/xrc/makefile.gcc
+++ b/samples/xrc/makefile.gcc
@@ -250,7 +250,7 @@ $(OBJS)\xrcdemo.exe: $(XRCDEMO_OBJECTS) $(OBJS)\xrcdemo_sample_rc.o
data:
if not exist $(OBJS)\rc mkdir $(OBJS)\rc
- for %%f in (aui.xpm aui.xrc artprov.xpm artprov.xrc basicdlg.xpm basicdlg.xrc controls.xpm controls.xrc custclas.xpm custclas.xrc derivdlg.xpm derivdlg.xrc fileopen.gif filesave.gif frame.xrc fuzzy.gif menu.xrc platform.xpm platform.xrc quotes.gif resource.xrc toolbar.xrc uncenter.xpm objref.xrc objrefdlg.xpm uncenter.xrc update.gif variable.xpm variable.xrc throbber.gif stop.xpm wxbanner.gif) do if not exist $(OBJS)\rc\%%f copy .\rc\%%f $(OBJS)\rc
+ for %%f in (aui.xpm aui.xrc artprov.xpm artprov.xrc basicdlg.xpm basicdlg.xrc controls.xpm controls.xrc custclas.xpm custclas.xrc derivdlg.xpm derivdlg.xrc fileopen.gif filesave.gif frame.xrc fuzzy.gif menu.xrc platform.xpm platform.xrc quotes.gif resource.xrc toolbar.xrc uncenter.xpm objref.xrc objrefdlg.xpm uncenter.xrc update.gif variable.xpm variable.xrc variants.xpm variants.xrc throbber.gif stop.xpm wxbanner.gif) do if not exist $(OBJS)\rc\%%f copy .\rc\%%f $(OBJS)\rc
$(OBJS)\xrcdemo_sample_rc.o: ./../../samples/sample.rc
$(WINDRES) -i$< -o$@ --define __WXMSW__ $(__WXUNIV_DEFINE_p_1) $(__DEBUG_DEFINE_p_1) $(__NDEBUG_DEFINE_p_1) $(__EXCEPTIONS_DEFINE_p_1) $(__RTTI_DEFINE_p_1) $(__THREAD_DEFINE_p_1) $(__UNICODE_DEFINE_p_1) --include-dir $(SETUPHDIR) --include-dir ./../../include $(__CAIRO_INCLUDEDIR_p) --include-dir . $(__DLLFLAG_p_1) --include-dir ./../../samples --define NOPCH
diff --git a/samples/xrc/makefile.vc b/samples/xrc/makefile.vc
index e743069073..921bdc675b 100644
--- a/samples/xrc/makefile.vc
+++ b/samples/xrc/makefile.vc
@@ -384,7 +384,7 @@ $(OBJS)\xrcdemo.exe: $(XRCDEMO_OBJECTS) $(OBJS)\xrcdemo_sample.res
data:
if not exist $(OBJS)\rc mkdir $(OBJS)\rc
- for %f in (aui.xpm aui.xrc artprov.xpm artprov.xrc basicdlg.xpm basicdlg.xrc controls.xpm controls.xrc custclas.xpm custclas.xrc derivdlg.xpm derivdlg.xrc fileopen.gif filesave.gif frame.xrc fuzzy.gif menu.xrc platform.xpm platform.xrc quotes.gif resource.xrc toolbar.xrc uncenter.xpm objref.xrc objrefdlg.xpm uncenter.xrc update.gif variable.xpm variable.xrc throbber.gif stop.xpm wxbanner.gif) do if not exist $(OBJS)\rc\%f copy .\rc\%f $(OBJS)\rc
+ for %f in (aui.xpm aui.xrc artprov.xpm artprov.xrc basicdlg.xpm basicdlg.xrc controls.xpm controls.xrc custclas.xpm custclas.xrc derivdlg.xpm derivdlg.xrc fileopen.gif filesave.gif frame.xrc fuzzy.gif menu.xrc platform.xpm platform.xrc quotes.gif resource.xrc toolbar.xrc uncenter.xpm objref.xrc objrefdlg.xpm uncenter.xrc update.gif variable.xpm variable.xrc variants.xpm variants.xrc throbber.gif stop.xpm wxbanner.gif) do if not exist $(OBJS)\rc\%f copy .\rc\%f $(OBJS)\rc
$(OBJS)\xrcdemo_sample.res: .\..\..\samples\sample.rc
rc /fo$@ /d WIN32 $(____DEBUGRUNTIME_3_p_1) /d _CRT_SECURE_NO_DEPRECATE=1 /d _CRT_NON_CONFORMING_SWPRINTFS=1 /d _SCL_SECURE_NO_WARNINGS=1 $(__NO_VC_CRTDBG_p_1) /d __WXMSW__ $(__WXUNIV_DEFINE_p_1) $(__DEBUG_DEFINE_p_1) $(__NDEBUG_DEFINE_p_1) $(__EXCEPTIONS_DEFINE_p_1) $(__RTTI_DEFINE_p_1) $(__THREAD_DEFINE_p_1) $(__UNICODE_DEFINE_p_1) /i $(SETUPHDIR) /i .\..\..\include $(____CAIRO_INCLUDEDIR_FILENAMES_1_p) /i . $(__DLLFLAG_p_1) /d _WINDOWS /i .\..\..\samples /d NOPCH .\..\..\samples\sample.rc
diff --git a/samples/xrc/myframe.cpp b/samples/xrc/myframe.cpp
index f4c64c45b8..67819b8277 100644
--- a/samples/xrc/myframe.cpp
+++ b/samples/xrc/myframe.cpp
@@ -91,6 +91,7 @@ wxBEGIN_EVENT_TABLE(MyFrame, wxFrame)
EVT_MENU(XRCID("platform_property_tool_or_menuitem"), MyFrame::OnPlatformPropertyToolOrMenuCommand)
EVT_MENU(XRCID("art_provider_tool_or_menuitem"), MyFrame::OnArtProviderToolOrMenuCommand)
EVT_MENU(XRCID("variable_expansion_tool_or_menuitem"), MyFrame::OnVariableExpansionToolOrMenuCommand)
+ EVT_MENU(XRCID("variants"), MyFrame::OnVariants)
EVT_MENU(XRCID("recursive_load"), MyFrame::OnRecursiveLoad)
EVT_MENU(wxID_ABOUT, MyFrame::OnAboutToolOrMenuCommand)
wxEND_EVENT_TABLE()
@@ -343,6 +344,13 @@ void MyFrame::OnVariableExpansionToolOrMenuCommand(wxCommandEvent& WXUNUSED(even
dlg.ShowModal();
}
+void MyFrame::OnVariants(wxCommandEvent& WXUNUSED(event))
+{
+ wxDialog dlg;
+ wxXmlResource::Get()->LoadDialog(&dlg, this, wxT("variants_dialog"));
+ dlg.ShowModal();
+}
+
void MyFrame::OnRecursiveLoad(wxCommandEvent& WXUNUSED(event))
{
// this dialog is created manually to show how you can inject a single
diff --git a/samples/xrc/myframe.h b/samples/xrc/myframe.h
index 52c3d8ce52..c4e88deba9 100644
--- a/samples/xrc/myframe.h
+++ b/samples/xrc/myframe.h
@@ -49,6 +49,7 @@ private:
void OnPlatformPropertyToolOrMenuCommand(wxCommandEvent& event);
void OnArtProviderToolOrMenuCommand(wxCommandEvent& event);
void OnVariableExpansionToolOrMenuCommand(wxCommandEvent& event);
+ void OnVariants(wxCommandEvent& event);
void OnRecursiveLoad(wxCommandEvent& event);
void OnAnimationCtrlPlay(wxCommandEvent& event);
diff --git a/samples/xrc/rc/derivdlg.xrc b/samples/xrc/rc/derivdlg.xrc
index 26bea4f7c6..b1df3f0880 100644
--- a/samples/xrc/rc/derivdlg.xrc
+++ b/samples/xrc/rc/derivdlg.xrc
@@ -27,7 +27,6 @@
5
+