diff --git a/Tutorial/GacUI_ControlTemplate/UIRes/WindowSkin.bin b/Tutorial/GacUI_ControlTemplate/UIRes/WindowSkin.bin index 019263f0..7078ecf3 100644 Binary files a/Tutorial/GacUI_ControlTemplate/UIRes/WindowSkin.bin and b/Tutorial/GacUI_ControlTemplate/UIRes/WindowSkin.bin differ diff --git a/Tutorial/GacUI_ControlTemplate/WindowSkin/UI/Resource.xml b/Tutorial/GacUI_ControlTemplate/WindowSkin/UI/Resource.xml index e8337253..35bf54b4 100644 --- a/Tutorial/GacUI_ControlTemplate/WindowSkin/UI/Resource.xml +++ b/Tutorial/GacUI_ControlTemplate/WindowSkin/UI/Resource.xml @@ -4,11 +4,19 @@ Source ..\..\UIRes\WindowSkin.bin - GacUI.h + Skins/DarkSkin/DarkSkin.h Demo + + + + + + + + - + diff --git a/Tutorial/GacUI_ControlTemplate/WindowSkin/UI/Source/DemoPartialClasses.cpp b/Tutorial/GacUI_ControlTemplate/WindowSkin/UI/Source/DemoPartialClasses.cpp index 23e8ac95..e84b00d3 100644 --- a/Tutorial/GacUI_ControlTemplate/WindowSkin/UI/Source/DemoPartialClasses.cpp +++ b/Tutorial/GacUI_ControlTemplate/WindowSkin/UI/Source/DemoPartialClasses.cpp @@ -56,12 +56,12 @@ Closures //------------------------------------------------------------------- - __vwsnf1_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_::__vwsnf1_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_(::demo::MainWindowConstructor* __vwsnctorthis_0) + __vwsnf2_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_::__vwsnf2_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_(::demo::MainWindowConstructor* __vwsnctorthis_0) :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) { } - void __vwsnf1_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + void __vwsnf2_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const { auto __vwsn_old_ = ::vl::__vwsn::This(__vwsnthis_0->self)->GetMaximizedBox(); auto __vwsn_new_ = ::vl::__vwsn::Unbox(__vwsn_value_); @@ -74,12 +74,12 @@ Closures //------------------------------------------------------------------- - __vwsnf2_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_::__vwsnf2_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_(::demo::MainWindowConstructor* __vwsnctorthis_0) + __vwsnf3_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_::__vwsnf3_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_(::demo::MainWindowConstructor* __vwsnctorthis_0) :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) { } - void __vwsnf2_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + void __vwsnf3_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const { auto __vwsn_old_ = ::vl::__vwsn::This(__vwsnthis_0->self)->GetMinimizedBox(); auto __vwsn_new_ = ::vl::__vwsn::Unbox(__vwsn_value_); @@ -92,12 +92,12 @@ Closures //------------------------------------------------------------------- - __vwsnf3_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_::__vwsnf3_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_(::demo::MainWindowConstructor* __vwsnctorthis_0) + __vwsnf4_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_::__vwsnf4_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_(::demo::MainWindowConstructor* __vwsnctorthis_0) :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) { } - void __vwsnf3_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + void __vwsnf4_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const { auto __vwsn_old_ = ::vl::__vwsn::This(__vwsnthis_0->self)->GetBorder(); auto __vwsn_new_ = ::vl::__vwsn::Unbox(__vwsn_value_); @@ -110,12 +110,12 @@ Closures //------------------------------------------------------------------- - __vwsnf4_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_::__vwsnf4_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_(::demo::MainWindowConstructor* __vwsnctorthis_0) + __vwsnf5_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_::__vwsnf5_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_(::demo::MainWindowConstructor* __vwsnctorthis_0) :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) { } - void __vwsnf4_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + void __vwsnf5_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const { auto __vwsn_old_ = ::vl::__vwsn::This(__vwsnthis_0->self)->GetSizeBox(); auto __vwsn_new_ = ::vl::__vwsn::Unbox(__vwsn_value_); @@ -128,12 +128,12 @@ Closures //------------------------------------------------------------------- - __vwsnf5_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_::__vwsnf5_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_(::demo::MainWindowConstructor* __vwsnctorthis_0) + __vwsnf6_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_::__vwsnf6_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_(::demo::MainWindowConstructor* __vwsnctorthis_0) :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) { } - void __vwsnf5_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + void __vwsnf6_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const { auto __vwsn_old_ = ::vl::__vwsn::This(__vwsnthis_0->self)->GetIconVisible(); auto __vwsn_new_ = ::vl::__vwsn::Unbox(__vwsn_value_); @@ -146,12 +146,12 @@ Closures //------------------------------------------------------------------- - __vwsnf6_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_::__vwsnf6_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_(::demo::MainWindowConstructor* __vwsnctorthis_0) + __vwsnf7_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_::__vwsnf7_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_(::demo::MainWindowConstructor* __vwsnctorthis_0) :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) { } - void __vwsnf6_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + void __vwsnf7_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const { auto __vwsn_old_ = ::vl::__vwsn::This(__vwsnthis_0->self)->GetTitleBar(); auto __vwsn_new_ = ::vl::__vwsn::Unbox(__vwsn_value_); @@ -164,6 +164,19 @@ Closures //------------------------------------------------------------------- + __vwsno1_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_::__vwsno1_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_(::demo::MainWindow* __vwsnctor___vwsn_this_, ::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsn_this_(__vwsnctor___vwsn_this_) + , __vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) + { + } + + void __vwsno1_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_::operator()(::vl::presentation::compositions::GuiGraphicsComposition* __vwsno_1, ::vl::presentation::compositions::GuiEventArgs* __vwsno_2) const + { + return ::vl::__vwsn::This(__vwsn_this_)->checkFrame_SelectionChanged(__vwsno_1, __vwsno_2); + } + + //------------------------------------------------------------------- + __vwsnc1_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize__vl_reflection_description_IValueSubscription::__vwsnc1_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize__vl_reflection_description_IValueSubscription(::demo::MainWindowConstructor* __vwsnctorthis_0) :__vwsnthis_0(::vl::__vwsn::This(__vwsnctorthis_0)) { @@ -547,16 +560,16 @@ namespace demo } (this->__vwsn_precompile_0 = new ::vl::presentation::compositions::GuiStackComposition()); { - ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetMinSizeLimitation(::vl::presentation::compositions::GuiGraphicsComposition::MinSizeLimitation::LimitToElementAndChildren); + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetPadding(static_cast<::vl::vint>(5)); } { - ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetPadding(static_cast<::vl::vint>(5)); + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetDirection(::vl::presentation::compositions::GuiStackComposition::Direction::Vertical); } { ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(5); __vwsn_temp__.top = static_cast<::vl::vint>(5); __vwsn_temp__.right = static_cast<::vl::vint>(5); __vwsn_temp__.bottom = static_cast<::vl::vint>(5); return __vwsn_temp__; }()); } { - ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetDirection(::vl::presentation::compositions::GuiStackComposition::Direction::Vertical); + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetMinSizeLimitation(::vl::presentation::compositions::GuiGraphicsComposition::MinSizeLimitation::LimitToElementAndChildren); } (this->__vwsn_precompile_1 = new ::vl::presentation::compositions::GuiStackItemComposition()); { @@ -674,35 +687,38 @@ namespace demo ::vl::__vwsn::This(::vl::__vwsn::This(this->self)->GetContainerComposition())->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->__vwsn_precompile_0)); } { - auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc1_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize__vl_reflection_description_IValueSubscription(this)); - ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->ValueChanged, LAMBDA(::vl_workflow_global::__vwsnf1_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_(this))); - ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(__vwsn_created_subscription_); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(this->checkFrame)->SelectedChanged, LAMBDA(::vl_workflow_global::__vwsno1_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_(__vwsn_this_, this))); } { - auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc2_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize__vl_reflection_description_IValueSubscription(this)); + auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc1_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize__vl_reflection_description_IValueSubscription(this)); ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->ValueChanged, LAMBDA(::vl_workflow_global::__vwsnf2_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_(this))); ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(__vwsn_created_subscription_); } { - auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc3_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize__vl_reflection_description_IValueSubscription(this)); + auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc2_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize__vl_reflection_description_IValueSubscription(this)); ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->ValueChanged, LAMBDA(::vl_workflow_global::__vwsnf3_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_(this))); ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(__vwsn_created_subscription_); } { - auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc4_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize__vl_reflection_description_IValueSubscription(this)); + auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc3_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize__vl_reflection_description_IValueSubscription(this)); ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->ValueChanged, LAMBDA(::vl_workflow_global::__vwsnf4_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_(this))); ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(__vwsn_created_subscription_); } { - auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc5_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize__vl_reflection_description_IValueSubscription(this)); + auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc4_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize__vl_reflection_description_IValueSubscription(this)); ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->ValueChanged, LAMBDA(::vl_workflow_global::__vwsnf5_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_(this))); ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(__vwsn_created_subscription_); } { - auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc6_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize__vl_reflection_description_IValueSubscription(this)); + auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc5_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize__vl_reflection_description_IValueSubscription(this)); ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->ValueChanged, LAMBDA(::vl_workflow_global::__vwsnf6_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_(this))); ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(__vwsn_created_subscription_); } + { + auto __vwsn_created_subscription_ = ::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc6_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize__vl_reflection_description_IValueSubscription(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->ValueChanged, LAMBDA(::vl_workflow_global::__vwsnf7_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_(this))); + ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(__vwsn_created_subscription_); + } } MainWindowConstructor::MainWindowConstructor() @@ -725,6 +741,65 @@ namespace demo { } +/*********************************************************************** +Class (::demo::SystemFrameWindowTemplateConstructor) +***********************************************************************/ + + void SystemFrameWindowTemplateConstructor::__vwsn_demo_SystemFrameWindowTemplate_Initialize(::demo::SystemFrameWindowTemplate* __vwsn_this_) + { + (this->__vwsn_precompile_0 = __vwsn_this_); + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetMinSizeLimitation(::vl::presentation::compositions::GuiGraphicsComposition::MinSizeLimitation::LimitToElementAndChildren); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetCustomFrameEnabled(false); + } + (this->__vwsn_precompile_1 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBackgroundElement>(::vl::reflection::description::Element_Constructor<::vl::presentation::elements::GuiSolidBackgroundElement>())); + { + ::vl::__vwsn::This(this->__vwsn_precompile_1.Obj())->SetColor(::vl::__vwsn::Parse<::vl::presentation::Color>(::vl::WString(L"#2D2D30", false))); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetOwnedElement(::vl::Ptr<::vl::presentation::elements::IGuiGraphicsElement>(this->__vwsn_precompile_1)); + } + (this->container = new ::vl::presentation::compositions::GuiBoundsComposition()); + { + ::vl::__vwsn::This(this->container)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = static_cast<::vl::vint>(0); __vwsn_temp__.top = static_cast<::vl::vint>(0); __vwsn_temp__.right = static_cast<::vl::vint>(0); __vwsn_temp__.bottom = static_cast<::vl::vint>(0); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(this->container)->SetMinSizeLimitation(::vl::presentation::compositions::GuiGraphicsComposition::MinSizeLimitation::LimitToElementAndChildren); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->container)); + } + { + ::vl::__vwsn::This(this->__vwsn_precompile_0)->SetContainerComposition(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(this->container)); + } + } + + SystemFrameWindowTemplateConstructor::SystemFrameWindowTemplateConstructor() + : container(static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr)) + , __vwsn_precompile_0(static_cast<::demo::SystemFrameWindowTemplate*>(nullptr)) + , __vwsn_precompile_1(::vl::Ptr<::vl::presentation::elements::GuiSolidBackgroundElement>()) + { + } + +/*********************************************************************** +Class (::demo::SystemFrameWindowTemplate) +***********************************************************************/ + + SystemFrameWindowTemplate::SystemFrameWindowTemplate() + { + auto __vwsn_resource_ = ::vl::__vwsn::This(::vl::presentation::GetResourceManager())->GetResourceFromClassName(::vl::WString(L"demo::SystemFrameWindowTemplate", false)); + auto __vwsn_resolver_ = ::vl::Ptr<::vl::presentation::GuiResourcePathResolver>(new ::vl::presentation::GuiResourcePathResolver(__vwsn_resource_, ::vl::__vwsn::This(__vwsn_resource_.Obj())->GetWorkingDirectory())); + ::vl::__vwsn::This(this)->SetResourceResolver(__vwsn_resolver_); + ::vl::__vwsn::This(this)->__vwsn_demo_SystemFrameWindowTemplate_Initialize(this); + } + + SystemFrameWindowTemplate::~SystemFrameWindowTemplate() + { + this->FinalizeInstanceRecursively(static_cast<::vl::presentation::templates::GuiTemplate*>(this)); + } + } #undef GLOBAL_SYMBOL #undef GLOBAL_NAME diff --git a/Tutorial/GacUI_ControlTemplate/WindowSkin/UI/Source/DemoPartialClasses.h b/Tutorial/GacUI_ControlTemplate/WindowSkin/UI/Source/DemoPartialClasses.h index 5682034d..80845576 100644 --- a/Tutorial/GacUI_ControlTemplate/WindowSkin/UI/Source/DemoPartialClasses.h +++ b/Tutorial/GacUI_ControlTemplate/WindowSkin/UI/Source/DemoPartialClasses.h @@ -10,7 +10,7 @@ https://github.com/vczh-libraries #ifndef VCZH_WORKFLOW_COMPILER_GENERATED_DEMOPARTIALCLASSES #define VCZH_WORKFLOW_COMPILER_GENERATED_DEMOPARTIALCLASSES -#include "GacUI.h" +#include "Skins/DarkSkin/DarkSkin.h" #if defined( _MSC_VER) #pragma warning(push) @@ -24,12 +24,13 @@ https://github.com/vczh-libraries namespace vl_workflow_global { - struct __vwsnf1_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_; struct __vwsnf2_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_; struct __vwsnf3_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_; struct __vwsnf4_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_; struct __vwsnf5_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_; struct __vwsnf6_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_; + struct __vwsnf7_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_; + struct __vwsno1_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_; class __vwsnc1_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize__vl_reflection_description_IValueSubscription; class __vwsnc2_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize__vl_reflection_description_IValueSubscription; class __vwsnc3_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize__vl_reflection_description_IValueSubscription; @@ -42,6 +43,8 @@ namespace demo { class MainWindowConstructor; class MainWindow; + class SystemFrameWindowTemplateConstructor; + class SystemFrameWindowTemplate; class MainWindowConstructor : public ::vl::Object, public ::vl::reflection::Description { @@ -51,12 +54,13 @@ namespace demo friend class ::vl_workflow_global::__vwsnc4_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize__vl_reflection_description_IValueSubscription; friend class ::vl_workflow_global::__vwsnc5_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize__vl_reflection_description_IValueSubscription; friend class ::vl_workflow_global::__vwsnc6_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize__vl_reflection_description_IValueSubscription; - friend struct ::vl_workflow_global::__vwsnf1_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_; friend struct ::vl_workflow_global::__vwsnf2_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_; friend struct ::vl_workflow_global::__vwsnf3_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_; friend struct ::vl_workflow_global::__vwsnf4_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_; friend struct ::vl_workflow_global::__vwsnf5_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_; friend struct ::vl_workflow_global::__vwsnf6_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf7_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsno1_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_; #ifdef VCZH_DESCRIPTABLEOBJECT_WITH_METADATA friend struct ::vl::reflection::description::CustomTypeDescriptorSelector; #endif @@ -82,6 +86,31 @@ namespace demo MainWindowConstructor(); }; + class SystemFrameWindowTemplateConstructor : public ::vl::Object, public ::vl::reflection::Description + { +#ifdef VCZH_DESCRIPTABLEOBJECT_WITH_METADATA + friend struct ::vl::reflection::description::CustomTypeDescriptorSelector; +#endif + protected: + ::vl::presentation::compositions::GuiBoundsComposition* container; + ::demo::SystemFrameWindowTemplate* __vwsn_precompile_0; + ::vl::Ptr<::vl::presentation::elements::GuiSolidBackgroundElement> __vwsn_precompile_1; + void __vwsn_demo_SystemFrameWindowTemplate_Initialize(::demo::SystemFrameWindowTemplate* __vwsn_this_); + public: + SystemFrameWindowTemplateConstructor(); + }; + + class SystemFrameWindowTemplate : public ::vl::presentation::templates::GuiWindowTemplate, public ::demo::SystemFrameWindowTemplateConstructor, public ::vl::reflection::Description + { + friend class ::demo::SystemFrameWindowTemplateConstructor; +#ifdef VCZH_DESCRIPTABLEOBJECT_WITH_METADATA + friend struct ::vl::reflection::description::CustomTypeDescriptorSelector; +#endif + public: + SystemFrameWindowTemplate(); + ~SystemFrameWindowTemplate(); + }; + } /*********************************************************************** Global Variables and Functions @@ -100,15 +129,6 @@ namespace vl_workflow_global Closures ***********************************************************************/ - struct __vwsnf1_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_ - { - ::demo::MainWindowConstructor* __vwsnthis_0; - - __vwsnf1_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_(::demo::MainWindowConstructor* __vwsnctorthis_0); - - void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; - }; - struct __vwsnf2_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_ { ::demo::MainWindowConstructor* __vwsnthis_0; @@ -154,6 +174,25 @@ Closures void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; }; + struct __vwsnf7_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_ + { + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnf7_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_(::demo::MainWindowConstructor* __vwsnctorthis_0); + + void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; + }; + + struct __vwsno1_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_ + { + ::demo::MainWindow* __vwsn_this_; + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsno1_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_(::demo::MainWindow* __vwsnctor___vwsn_this_, ::demo::MainWindowConstructor* __vwsnctorthis_0); + + void operator()(::vl::presentation::compositions::GuiGraphicsComposition* __vwsno_1, ::vl::presentation::compositions::GuiEventArgs* __vwsno_2) const; + }; + class __vwsnc1_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize__vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription { public: diff --git a/Tutorial/GacUI_ControlTemplate/WindowSkin/UI/Source/DemoReflection.cpp b/Tutorial/GacUI_ControlTemplate/WindowSkin/UI/Source/DemoReflection.cpp index 7973532d..935fc971 100644 --- a/Tutorial/GacUI_ControlTemplate/WindowSkin/UI/Source/DemoReflection.cpp +++ b/Tutorial/GacUI_ControlTemplate/WindowSkin/UI/Source/DemoReflection.cpp @@ -32,6 +32,8 @@ namespace vl #ifndef VCZH_DEBUG_NO_REFLECTION IMPL_CPP_TYPE_INFO(demo::MainWindow) IMPL_CPP_TYPE_INFO(demo::MainWindowConstructor) + IMPL_CPP_TYPE_INFO(demo::SystemFrameWindowTemplate) + IMPL_CPP_TYPE_INFO(demo::SystemFrameWindowTemplateConstructor) #ifdef VCZH_DESCRIPTABLEOBJECT_WITH_METADATA #define _ , @@ -39,6 +41,7 @@ namespace vl CLASS_MEMBER_BASE(::vl::presentation::controls::GuiWindow) CLASS_MEMBER_BASE(::demo::MainWindowConstructor) CLASS_MEMBER_CONSTRUCTOR(::demo::MainWindow*(), NO_PARAMETER) + CLASS_MEMBER_METHOD(checkFrame_SelectionChanged, { L"sender" _ L"arguments" }) END_CLASS_MEMBER(::demo::MainWindow) BEGIN_CLASS_MEMBER(::demo::MainWindowConstructor) @@ -63,6 +66,21 @@ namespace vl CLASS_MEMBER_FIELD(self) END_CLASS_MEMBER(::demo::MainWindowConstructor) + BEGIN_CLASS_MEMBER(::demo::SystemFrameWindowTemplate) + CLASS_MEMBER_BASE(::vl::presentation::templates::GuiWindowTemplate) + CLASS_MEMBER_BASE(::demo::SystemFrameWindowTemplateConstructor) + CLASS_MEMBER_CONSTRUCTOR(::demo::SystemFrameWindowTemplate*(), NO_PARAMETER) + END_CLASS_MEMBER(::demo::SystemFrameWindowTemplate) + + BEGIN_CLASS_MEMBER(::demo::SystemFrameWindowTemplateConstructor) + CLASS_MEMBER_BASE(::vl::reflection::DescriptableObject) + CLASS_MEMBER_CONSTRUCTOR(::vl::Ptr<::demo::SystemFrameWindowTemplateConstructor>(), NO_PARAMETER) + CLASS_MEMBER_METHOD(__vwsn_demo_SystemFrameWindowTemplate_Initialize, { L"__vwsn_this_" }) + CLASS_MEMBER_FIELD(__vwsn_precompile_0) + CLASS_MEMBER_FIELD(__vwsn_precompile_1) + CLASS_MEMBER_FIELD(container) + END_CLASS_MEMBER(::demo::SystemFrameWindowTemplateConstructor) + #undef _ class DemoTypeLoader : public Object, public ITypeLoader { @@ -71,6 +89,8 @@ namespace vl { ADD_TYPE_INFO(::demo::MainWindow) ADD_TYPE_INFO(::demo::MainWindowConstructor) + ADD_TYPE_INFO(::demo::SystemFrameWindowTemplate) + ADD_TYPE_INFO(::demo::SystemFrameWindowTemplateConstructor) } void Unload(ITypeManager* manager) diff --git a/Tutorial/GacUI_ControlTemplate/WindowSkin/UI/Source/DemoReflection.h b/Tutorial/GacUI_ControlTemplate/WindowSkin/UI/Source/DemoReflection.h index b52cbdd2..98bc70b1 100644 --- a/Tutorial/GacUI_ControlTemplate/WindowSkin/UI/Source/DemoReflection.h +++ b/Tutorial/GacUI_ControlTemplate/WindowSkin/UI/Source/DemoReflection.h @@ -35,6 +35,8 @@ namespace vl #ifndef VCZH_DEBUG_NO_REFLECTION DECL_TYPE_INFO(::demo::MainWindow) DECL_TYPE_INFO(::demo::MainWindowConstructor) + DECL_TYPE_INFO(::demo::SystemFrameWindowTemplate) + DECL_TYPE_INFO(::demo::SystemFrameWindowTemplateConstructor) #endif extern bool LoadDemoTypes(); diff --git a/Tutorial/GacUI_ControlTemplate/WindowSkin/UI/Source/MainWindow.cpp b/Tutorial/GacUI_ControlTemplate/WindowSkin/UI/Source/MainWindow.cpp index 1c753de7..e451b94b 100644 --- a/Tutorial/GacUI_ControlTemplate/WindowSkin/UI/Source/MainWindow.cpp +++ b/Tutorial/GacUI_ControlTemplate/WindowSkin/UI/Source/MainWindow.cpp @@ -29,12 +29,33 @@ https://github.com/vczh-libraries #define GLOBAL_NAME ::vl_workflow_global::Demo::Instance(). #define GLOBAL_OBJ &::vl_workflow_global::Demo::Instance() +/* USER_CONTENT_BEGIN(custom global declarations) */ +/* USER_CONTENT_END() */ + /*********************************************************************** Class (::demo::MainWindow) ***********************************************************************/ namespace demo { + void MainWindow::checkFrame_SelectionChanged(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) + {/* USER_CONTENT_BEGIN(::demo::MainWindow) */ + if (checkFrame->GetSelected()) + { + SetControlTemplate([](const vl::reflection::description::Value&)->vl::presentation::templates::GuiControlTemplate* + { + return new darkskin::WindowTemplate(); + }); + } + else + { + SetControlTemplate([](const vl::reflection::description::Value&)->vl::presentation::templates::GuiControlTemplate* + { + return new SystemFrameWindowTemplate(); + }); + } + }/* USER_CONTENT_END() */ + MainWindow::MainWindow() : ::vl::presentation::controls::GuiWindow(::vl::presentation::theme::ThemeName::Window) { diff --git a/Tutorial/GacUI_ControlTemplate/WindowSkin/UI/Source/MainWindow.h b/Tutorial/GacUI_ControlTemplate/WindowSkin/UI/Source/MainWindow.h index 15526295..8d8481e6 100644 --- a/Tutorial/GacUI_ControlTemplate/WindowSkin/UI/Source/MainWindow.h +++ b/Tutorial/GacUI_ControlTemplate/WindowSkin/UI/Source/MainWindow.h @@ -33,18 +33,24 @@ namespace demo friend class ::vl_workflow_global::__vwsnc4_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize__vl_reflection_description_IValueSubscription; friend class ::vl_workflow_global::__vwsnc5_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize__vl_reflection_description_IValueSubscription; friend class ::vl_workflow_global::__vwsnc6_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize__vl_reflection_description_IValueSubscription; - friend struct ::vl_workflow_global::__vwsnf1_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_; friend struct ::vl_workflow_global::__vwsnf2_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_; friend struct ::vl_workflow_global::__vwsnf3_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_; friend struct ::vl_workflow_global::__vwsnf4_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_; friend struct ::vl_workflow_global::__vwsnf5_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_; friend struct ::vl_workflow_global::__vwsnf6_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsnf7_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_; + friend struct ::vl_workflow_global::__vwsno1_Demo_demo_MainWindowConstructor___vwsn_demo_MainWindow_Initialize_; #ifdef VCZH_DESCRIPTABLEOBJECT_WITH_METADATA friend struct ::vl::reflection::description::CustomTypeDescriptorSelector; #endif + protected: + void checkFrame_SelectionChanged(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments); public: MainWindow(); ~MainWindow(); + + /* USER_CONTENT_BEGIN(custom members of ::demo::MainWindow) */ + /* USER_CONTENT_END() */ }; }