From d23ad34771f21b31fccb2753238632b20180553d Mon Sep 17 00:00:00 2001 From: Zihan Chen Date: Tue, 24 Jan 2017 14:55:02 -0800 Subject: [PATCH] ... --- .../GacUI_Layout/Alignment/Alignment.vcxproj | 10 +- .../GacUI_Layout/Alignment/UI/Resource.xml | 10 +- .../GacUI_Layout/Alignment/UI/Source/Demo.h | 37 +- .../UI/Source/DemoPartialClasses.cpp | 214 +- .../Alignment/UI/Source/DemoPartialClasses.h | 114 +- Tutorial/GacUI_Layout/Flow/Flow.vcxproj | 10 +- Tutorial/GacUI_Layout/Flow/UI/Resource.xml | 10 +- Tutorial/GacUI_Layout/Flow/UI/Source/Demo.h | 37 +- .../Flow/UI/Source/DemoPartialClasses.cpp | 1639 ++++++++++- .../Flow/UI/Source/DemoPartialClasses.h | 271 +- Tutorial/GacUI_Layout/GacUI_Layout.sln | 11 +- .../RichTextEmbedding.vcxproj | 10 +- .../RichTextEmbedding/UI/Resource.xml | 14 +- .../RichTextEmbedding/UI/Source/Demo.h | 45 +- .../UI/Source/DemoPartialClasses.cpp | 739 ++++- .../UI/Source/DemoPartialClasses.h | 202 +- Tutorial/GacUI_Layout/Stack/Stack.vcxproj | 10 +- Tutorial/GacUI_Layout/Stack/UI/Resource.xml | 10 +- Tutorial/GacUI_Layout/Stack/UI/Source/Demo.h | 37 +- .../Stack/UI/Source/DemoPartialClasses.cpp | 611 +++- .../Stack/UI/Source/DemoPartialClasses.h | 161 +- Tutorial/GacUI_Layout/Table/Table.vcxproj | 10 +- Tutorial/GacUI_Layout/Table/UI/Resource.xml | 10 +- Tutorial/GacUI_Layout/Table/UI/Source/Demo.h | 37 +- .../Table/UI/Source/DemoPartialClasses.cpp | 436 ++- .../Table/UI/Source/DemoPartialClasses.h | 137 +- .../TableSplitter/TableSplitter.vcxproj | 4 +- .../TableSplitter/UI/Resource.xml | 10 +- .../TableSplitter/UI/Source/Demo.h | 37 +- .../UI/Source/DemoPartialClasses.cpp | 2482 ++++++++++++++++- .../UI/Source/DemoPartialClasses.h | 295 +- Tutorial/GacUI_Layout/UIRes/Alignment.bin | Bin 94911 -> 507 bytes Tutorial/GacUI_Layout/UIRes/Flow.bin | Bin 1228186 -> 527 bytes .../GacUI_Layout/UIRes/RichTextEmbedding.bin | Bin 564950 -> 64108 bytes Tutorial/GacUI_Layout/UIRes/Stack.bin | Bin 381723 -> 528 bytes Tutorial/GacUI_Layout/UIRes/Table.bin | Bin 314295 -> 503 bytes Tutorial/GacUI_Layout/UIRes/TableSplitter.bin | Bin 1501714 -> 511 bytes 37 files changed, 6901 insertions(+), 759 deletions(-) diff --git a/Tutorial/GacUI_Layout/Alignment/Alignment.vcxproj b/Tutorial/GacUI_Layout/Alignment/Alignment.vcxproj index 79efd164..e491dc6a 100644 --- a/Tutorial/GacUI_Layout/Alignment/Alignment.vcxproj +++ b/Tutorial/GacUI_Layout/Alignment/Alignment.vcxproj @@ -83,11 +83,6 @@ - - - {8018d622-66ba-4e65-9d03-bdac37ea9a54} - - @@ -95,6 +90,11 @@ + + + {96c559ca-9718-4bec-a053-28a0ab6a8ca2} + + diff --git a/Tutorial/GacUI_Layout/Alignment/UI/Resource.xml b/Tutorial/GacUI_Layout/Alignment/UI/Resource.xml index be2ec17e..f8a1e053 100644 --- a/Tutorial/GacUI_Layout/Alignment/UI/Resource.xml +++ b/Tutorial/GacUI_Layout/Alignment/UI/Resource.xml @@ -2,14 +2,10 @@ - Source - GacUIReflection.h + Source + ..\..\UIRes\Alignment.bin + GacUI.h Demo - - - - ..\..\UIRes - Alignment.bin diff --git a/Tutorial/GacUI_Layout/Alignment/UI/Source/Demo.h b/Tutorial/GacUI_Layout/Alignment/UI/Source/Demo.h index febeba0f..a12c85a4 100644 --- a/Tutorial/GacUI_Layout/Alignment/UI/Source/Demo.h +++ b/Tutorial/GacUI_Layout/Alignment/UI/Source/Demo.h @@ -1,16 +1,35 @@ -/*********************************************************************** -Vczh Library++ 3.0 -Developer: Zihan Chen(vczh) -GacUI::Demo +/*********************************************************************** +!!!!!! DO NOT MODIFY !!!!!! -This file is generated by: Vczh GacUI Resource Code Generator -************************************************************************ -DO NOT MODIFY +GacGen.exe Resource.xml + +This file is generated by Workflow compiler +https://github.com/vczh-libraries ***********************************************************************/ -#ifndef VCZH_GACUI_RESOURCE_CODE_GENERATOR_Demo -#define VCZH_GACUI_RESOURCE_CODE_GENERATOR_Demo +#ifndef VCZH_WORKFLOW_COMPILER_GENERATED_DEMO +#define VCZH_WORKFLOW_COMPILER_GENERATED_DEMO #include "DemoPartialClasses.h" +/*********************************************************************** +Reflection +***********************************************************************/ + +namespace vl +{ + namespace reflection + { + namespace description + { +#ifndef VCZH_DEBUG_NO_REFLECTION + DECL_TYPE_INFO(::demo::MainWindow) + DECL_TYPE_INFO(::demo::MainWindowConstructor) +#endif + + extern bool LoadDemoTypes(); + } + } +} + #endif diff --git a/Tutorial/GacUI_Layout/Alignment/UI/Source/DemoPartialClasses.cpp b/Tutorial/GacUI_Layout/Alignment/UI/Source/DemoPartialClasses.cpp index 1967f719..380cac9b 100644 --- a/Tutorial/GacUI_Layout/Alignment/UI/Source/DemoPartialClasses.cpp +++ b/Tutorial/GacUI_Layout/Alignment/UI/Source/DemoPartialClasses.cpp @@ -1,42 +1,158 @@ -/*********************************************************************** -Vczh Library++ 3.0 -Developer: Zihan Chen(vczh) -GacUI::Partial Classes +/*********************************************************************** +!!!!!! DO NOT MODIFY !!!!!! -This file is generated by: Vczh GacUI Resource Code Generator -************************************************************************ -DO NOT MODIFY +GacGen.exe Resource.xml + +This file is generated by Workflow compiler +https://github.com/vczh-libraries ***********************************************************************/ #include "Demo.h" +#if defined( _MSC_VER) +#pragma warning(push) +#pragma warning(disable:4250) +#elif defined(__GNUC__) +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wparentheses-equality" +#elif defined(__clang__) +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wparentheses-equality" +#endif + +#define GLOBAL_SYMBOL ::vl_workflow_global::Demo:: +#define GLOBAL_NAME ::vl_workflow_global::Demo::Instance(). +#define GLOBAL_OBJ &::vl_workflow_global::Demo::Instance() +#define USERIMPL(...) + +/*********************************************************************** +Global Variables +***********************************************************************/ + +BEGIN_GLOBAL_STORAGE_CLASS(vl_workflow_global_Demo) + vl_workflow_global::Demo instance; + INITIALIZE_GLOBAL_STORAGE_CLASS + FINALIZE_GLOBAL_STORAGE_CLASS +END_GLOBAL_STORAGE_CLASS(vl_workflow_global_Demo) + +namespace vl_workflow_global +{ +/*********************************************************************** +Global Functions +***********************************************************************/ + + Demo& Demo::Instance() + { + return Getvl_workflow_global_Demo().instance; + } +} + +/*********************************************************************** +Class (::demo::MainWindowConstructor) +***********************************************************************/ + namespace demo { - // #region CLASS_MEMBER_GUIEVENT_HANDLER (DO NOT PUT OTHER CONTENT IN THIS #region.) + void MainWindowConstructor::__vwsn_initialize_instance_(::demo::MainWindow* __vwsn_this_, ::vl::presentation::GuiResourcePathResolver* __vwsn_resolver_) + { + (::vl::__vwsn::This(this)->__vwsn_precompile_0 = __vwsn_this_); + (::vl::__vwsn::This(this)->__vwsn_precompile_8 = ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_0)->GetContainerComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_8)->SetInternalMargin([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = 5; __vwsn_temp__.top = 5; __vwsn_temp__.right = 5; __vwsn_temp__.bottom = 5; return __vwsn_temp__; }()); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_7 = ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_0)->GetBoundsComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_7)->SetPreferredMinSize([&](){ ::vl::presentation::Size __vwsn_temp__; __vwsn_temp__.x = 480; __vwsn_temp__.y = 320; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_0)->SetClientSize([&](){ ::vl::presentation::Size __vwsn_temp__; __vwsn_temp__.x = 480; __vwsn_temp__.y = 320; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_0)->SetText(::vl::WString(L"Alignment", false)); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateButtonStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_1 = new ::vl::presentation::controls::GuiButton(__vwsn_controlStyle_)); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_2 = ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_1)->GetBoundsComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_2)->SetPreferredMinSize([&](){ ::vl::presentation::Size __vwsn_temp__; __vwsn_temp__.x = 100; __vwsn_temp__.y = 30; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_2)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = 0; __vwsn_temp__.top = 0; __vwsn_temp__.right = (- 1); __vwsn_temp__.bottom = (- 1); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_1)->SetText(::vl::WString(L"Button", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_0)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::controls::GuiControl*>(::vl::__vwsn::This(this)->__vwsn_precompile_1))); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateButtonStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_3 = new ::vl::presentation::controls::GuiButton(__vwsn_controlStyle_)); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_4 = ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_3)->GetBoundsComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_4)->SetPreferredMinSize([&](){ ::vl::presentation::Size __vwsn_temp__; __vwsn_temp__.x = 100; __vwsn_temp__.y = 30; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_4)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = (- 1); __vwsn_temp__.top = 0; __vwsn_temp__.right = 0; __vwsn_temp__.bottom = (- 1); return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_3)->SetText(::vl::WString(L"Button", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_0)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::controls::GuiControl*>(::vl::__vwsn::This(this)->__vwsn_precompile_3))); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateButtonStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_5 = new ::vl::presentation::controls::GuiButton(__vwsn_controlStyle_)); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_6 = ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_5)->GetBoundsComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_6)->SetPreferredMinSize([&](){ ::vl::presentation::Size __vwsn_temp__; __vwsn_temp__.x = 100; __vwsn_temp__.y = 30; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_6)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = 0; __vwsn_temp__.top = (- 1); __vwsn_temp__.right = 0; __vwsn_temp__.bottom = 0; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_5)->SetText(::vl::WString(L"Button", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_0)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::controls::GuiControl*>(::vl::__vwsn::This(this)->__vwsn_precompile_5))); + } + } - void MainWindow::OnCreate() + MainWindowConstructor::MainWindowConstructor() { } - void MainWindow::OnDestroy() - { - } - - // #endregion CLASS_MEMBER_GUIEVENT_HANDLER +/*********************************************************************** +Class (::demo::MainWindow) +***********************************************************************/ MainWindow::MainWindow() + : ::vl::presentation::controls::GuiWindow(::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateWindowStyle()) { - InitializeComponents(); - OnCreate(); + auto __vwsn_resource_ = ::vl::__vwsn::This(::vl::presentation::GetResourceManager())->GetResourceFromClassName(::vl::WString(L"demo::MainWindow", 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)->__vwsn_initialize_instance_(this, ::vl::__vwsn::Ensure(static_cast<::vl::presentation::GuiResourcePathResolver*>(__vwsn_resolver_.Obj()))); } MainWindow::~MainWindow() { - OnDestroy(); - ClearSubscriptions(); + ::vl::__vwsn::This(this)->ClearSubscriptions(); } -} +} +#undef GLOBAL_SYMBOL +#undef GLOBAL_NAME +#undef GLOBAL_OBJ +#undef USERIMPL + +/*********************************************************************** +Reflection +***********************************************************************/ namespace vl { @@ -44,47 +160,61 @@ namespace vl { namespace description { - #define _ , - IMPL_CPP_TYPE_INFO(demo::MainWindow) +#ifndef VCZH_DEBUG_NO_REFLECTION + IMPL_CPP_TYPE_INFO(::demo::MainWindow) + IMPL_CPP_TYPE_INFO(::demo::MainWindowConstructor) - BEGIN_CLASS_MEMBER(demo::MainWindow) - CLASS_MEMBER_BASE(::vl::presentation::controls::GuiWindow) - CLASS_MEMBER_CONSTRUCTOR(demo::MainWindow*(), NO_PARAMETER) - END_CLASS_MEMBER(demo::MainWindow) +#define _ , + BEGIN_CLASS_MEMBER(::demo::MainWindow) + END_CLASS_MEMBER(::demo::MainWindow) - #undef _ + BEGIN_CLASS_MEMBER(::demo::MainWindowConstructor) + CLASS_MEMBER_METHOD(__vwsn_initialize_instance_, { L"__vwsn_this_" _ L"__vwsn_resolver_" }) + CLASS_MEMBER_FIELD(__vwsn_precompile_0) + CLASS_MEMBER_FIELD(__vwsn_precompile_1) + CLASS_MEMBER_FIELD(__vwsn_precompile_2) + CLASS_MEMBER_FIELD(__vwsn_precompile_3) + CLASS_MEMBER_FIELD(__vwsn_precompile_4) + CLASS_MEMBER_FIELD(__vwsn_precompile_5) + CLASS_MEMBER_FIELD(__vwsn_precompile_6) + CLASS_MEMBER_FIELD(__vwsn_precompile_7) + CLASS_MEMBER_FIELD(__vwsn_precompile_8) + END_CLASS_MEMBER(::demo::MainWindowConstructor) - class DemoResourceLoader : public Object, public ITypeLoader +#undef _ + class DemoTypeLoader : public Object, public ITypeLoader { public: void Load(ITypeManager* manager) { - ADD_TYPE_INFO(demo::MainWindow) + ADD_TYPE_INFO(::demo::MainWindow) + ADD_TYPE_INFO(::demo::MainWindowConstructor) } void Unload(ITypeManager* manager) { } }; +#endif - class DemoResourcePlugin : public Object, public vl::presentation::controls::IGuiPlugin + bool LoadDemoTypes() { - public: - void Load()override +#ifndef VCZH_DEBUG_NO_REFLECTION + if (auto manager = GetGlobalTypeManager()) { - GetGlobalTypeManager()->AddTypeLoader(new DemoResourceLoader); + return manager->AddTypeLoader(MakePtr()); } - - void AfterLoad()override - { - } - - void Unload()override - { - } - }; - GUI_REGISTER_PLUGIN(DemoResourcePlugin) +#endif + return false; + } } } } +#if defined( _MSC_VER) +#pragma warning(pop) +#elif defined(__GNUC__) +#pragma GCC diagnostic pop +#elif defined(__clang__) +#pragma clang diagnostic pop +#endif diff --git a/Tutorial/GacUI_Layout/Alignment/UI/Source/DemoPartialClasses.h b/Tutorial/GacUI_Layout/Alignment/UI/Source/DemoPartialClasses.h index 5038d7b8..7b17956d 100644 --- a/Tutorial/GacUI_Layout/Alignment/UI/Source/DemoPartialClasses.h +++ b/Tutorial/GacUI_Layout/Alignment/UI/Source/DemoPartialClasses.h @@ -1,76 +1,84 @@ -/*********************************************************************** -Vczh Library++ 3.0 -Developer: Zihan Chen(vczh) -GacUI::Partial Classes +/*********************************************************************** +!!!!!! DO NOT MODIFY !!!!!! -This file is generated by: Vczh GacUI Resource Code Generator -************************************************************************ -DO NOT MODIFY +GacGen.exe Resource.xml + +This file is generated by Workflow compiler +https://github.com/vczh-libraries ***********************************************************************/ -#ifndef VCZH_GACUI_RESOURCE_CODE_GENERATOR_Demo_PARTIAL_CLASSES -#define VCZH_GACUI_RESOURCE_CODE_GENERATOR_Demo_PARTIAL_CLASSES +#ifndef VCZH_WORKFLOW_COMPILER_GENERATED_DEMOPARTIALCLASSES +#define VCZH_WORKFLOW_COMPILER_GENERATED_DEMOPARTIALCLASSES -#include "GacUIReflection.h" + +#if defined( _MSC_VER) +#pragma warning(push) +#pragma warning(disable:4250) +#elif defined(__GNUC__) +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wparentheses-equality" +#elif defined(__clang__) +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wparentheses-equality" +#endif namespace demo { + class MainWindowConstructor; class MainWindow; - template - class MainWindow_ : public ::vl::presentation::controls::GuiWindow, public vl::presentation::GuiInstancePartialClass, public vl::reflection::Description + class MainWindowConstructor : public ::vl::Object, public ::vl::reflection::Description { - friend struct vl::reflection::description::CustomTypeDescriptorSelector; - private: +#ifndef VCZH_DEBUG_NO_REFLECTION + friend struct ::vl::reflection::description::CustomTypeDescriptorSelector; +#endif protected: - - void InitializeComponents() - { - if (InitializeFromResource()) - { - } - else - { - } - } + ::demo::MainWindow* __vwsn_precompile_0 = static_cast<::demo::MainWindow*>(nullptr); + ::vl::presentation::controls::GuiButton* __vwsn_precompile_1 = static_cast<::vl::presentation::controls::GuiButton*>(nullptr); + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_2 = static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr); + ::vl::presentation::controls::GuiButton* __vwsn_precompile_3 = static_cast<::vl::presentation::controls::GuiButton*>(nullptr); + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_4 = static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr); + ::vl::presentation::controls::GuiButton* __vwsn_precompile_5 = static_cast<::vl::presentation::controls::GuiButton*>(nullptr); + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_6 = static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr); + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_7 = static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr); + ::vl::presentation::compositions::GuiGraphicsComposition* __vwsn_precompile_8 = static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(nullptr); + void __vwsn_initialize_instance_(::demo::MainWindow* __vwsn_this_, ::vl::presentation::GuiResourcePathResolver* __vwsn_resolver_); public: - MainWindow_() - :vl::presentation::GuiInstancePartialClass<::vl::presentation::controls::GuiWindow>(L"demo::MainWindow") - ,::vl::presentation::controls::GuiWindow(vl::presentation::theme::GetCurrentTheme()->CreateWindowStyle()) - { - } + MainWindowConstructor(); }; -} -namespace vl -{ - namespace reflection + class MainWindow : public ::vl::presentation::controls::GuiWindow, public ::demo::MainWindowConstructor, public ::vl::reflection::Description { - namespace description - { - DECL_TYPE_INFO(demo::MainWindow) - - } - } -} -namespace demo -{ - class MainWindow : public demo::MainWindow_ - { - friend class demo::MainWindow_; - friend struct vl::reflection::description::CustomTypeDescriptorSelector; - protected: - - // #region CLASS_MEMBER_GUIEVENT_HANDLER (DO NOT PUT OTHER CONTENT IN THIS #region.) - void OnCreate(); - void OnDestroy(); - // #endregion CLASS_MEMBER_GUIEVENT_HANDLER + friend class ::demo::MainWindowConstructor; +#ifndef VCZH_DEBUG_NO_REFLECTION + friend struct ::vl::reflection::description::CustomTypeDescriptorSelector; +#endif public: MainWindow(); ~MainWindow(); }; + +} +/*********************************************************************** +Global Variables and Functions +***********************************************************************/ + +namespace vl_workflow_global +{ + class Demo + { + public: + + static Demo& Instance(); + }; } - +#if defined( _MSC_VER) +#pragma warning(pop) +#elif defined(__GNUC__) +#pragma GCC diagnostic pop +#elif defined(__clang__) +#pragma clang diagnostic pop +#endif #endif diff --git a/Tutorial/GacUI_Layout/Flow/Flow.vcxproj b/Tutorial/GacUI_Layout/Flow/Flow.vcxproj index 07c5e97c..0305a394 100644 --- a/Tutorial/GacUI_Layout/Flow/Flow.vcxproj +++ b/Tutorial/GacUI_Layout/Flow/Flow.vcxproj @@ -83,11 +83,6 @@ - - - {8018d622-66ba-4e65-9d03-bdac37ea9a54} - - @@ -95,6 +90,11 @@ + + + {96c559ca-9718-4bec-a053-28a0ab6a8ca2} + + diff --git a/Tutorial/GacUI_Layout/Flow/UI/Resource.xml b/Tutorial/GacUI_Layout/Flow/UI/Resource.xml index fb1fa63a..faba8f26 100644 --- a/Tutorial/GacUI_Layout/Flow/UI/Resource.xml +++ b/Tutorial/GacUI_Layout/Flow/UI/Resource.xml @@ -2,14 +2,10 @@ - Source - GacUIReflection.h + Source + ..\..\UIRes\Flow.bin + GacUI.h Demo - - - - ..\..\UIRes - Flow.bin diff --git a/Tutorial/GacUI_Layout/Flow/UI/Source/Demo.h b/Tutorial/GacUI_Layout/Flow/UI/Source/Demo.h index febeba0f..a12c85a4 100644 --- a/Tutorial/GacUI_Layout/Flow/UI/Source/Demo.h +++ b/Tutorial/GacUI_Layout/Flow/UI/Source/Demo.h @@ -1,16 +1,35 @@ -/*********************************************************************** -Vczh Library++ 3.0 -Developer: Zihan Chen(vczh) -GacUI::Demo +/*********************************************************************** +!!!!!! DO NOT MODIFY !!!!!! -This file is generated by: Vczh GacUI Resource Code Generator -************************************************************************ -DO NOT MODIFY +GacGen.exe Resource.xml + +This file is generated by Workflow compiler +https://github.com/vczh-libraries ***********************************************************************/ -#ifndef VCZH_GACUI_RESOURCE_CODE_GENERATOR_Demo -#define VCZH_GACUI_RESOURCE_CODE_GENERATOR_Demo +#ifndef VCZH_WORKFLOW_COMPILER_GENERATED_DEMO +#define VCZH_WORKFLOW_COMPILER_GENERATED_DEMO #include "DemoPartialClasses.h" +/*********************************************************************** +Reflection +***********************************************************************/ + +namespace vl +{ + namespace reflection + { + namespace description + { +#ifndef VCZH_DEBUG_NO_REFLECTION + DECL_TYPE_INFO(::demo::MainWindow) + DECL_TYPE_INFO(::demo::MainWindowConstructor) +#endif + + extern bool LoadDemoTypes(); + } + } +} + #endif diff --git a/Tutorial/GacUI_Layout/Flow/UI/Source/DemoPartialClasses.cpp b/Tutorial/GacUI_Layout/Flow/UI/Source/DemoPartialClasses.cpp index 1967f719..61be1e09 100644 --- a/Tutorial/GacUI_Layout/Flow/UI/Source/DemoPartialClasses.cpp +++ b/Tutorial/GacUI_Layout/Flow/UI/Source/DemoPartialClasses.cpp @@ -1,42 +1,1514 @@ -/*********************************************************************** -Vczh Library++ 3.0 -Developer: Zihan Chen(vczh) -GacUI::Partial Classes +/*********************************************************************** +!!!!!! DO NOT MODIFY !!!!!! -This file is generated by: Vczh GacUI Resource Code Generator -************************************************************************ -DO NOT MODIFY +GacGen.exe Resource.xml + +This file is generated by Workflow compiler +https://github.com/vczh-libraries ***********************************************************************/ #include "Demo.h" +#if defined( _MSC_VER) +#pragma warning(push) +#pragma warning(disable:4250) +#elif defined(__GNUC__) +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wparentheses-equality" +#elif defined(__clang__) +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wparentheses-equality" +#endif + +#define GLOBAL_SYMBOL ::vl_workflow_global::Demo:: +#define GLOBAL_NAME ::vl_workflow_global::Demo::Instance(). +#define GLOBAL_OBJ &::vl_workflow_global::Demo::Instance() +#define USERIMPL(...) + +/*********************************************************************** +Global Variables +***********************************************************************/ + +BEGIN_GLOBAL_STORAGE_CLASS(vl_workflow_global_Demo) + vl_workflow_global::Demo instance; + INITIALIZE_GLOBAL_STORAGE_CLASS + FINALIZE_GLOBAL_STORAGE_CLASS +END_GLOBAL_STORAGE_CLASS(vl_workflow_global_Demo) + +namespace vl_workflow_global +{ +/*********************************************************************** +Closure Definitions +***********************************************************************/ + + struct __vwsnf10_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ + { + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnf10_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0); + + void operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const; + }; + + struct __vwsnf11_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ + { + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnf11_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0); + + void operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const; + }; + + struct __vwsnf12_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ + { + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnf12_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0); + + void operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const; + }; + + struct __vwsnf13_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ + { + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnf13_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0); + + void operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const; + }; + + struct __vwsnf14_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ + { + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnf14_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0); + + void operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const; + }; + + struct __vwsnf15_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ + { + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnf15_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0); + + void operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const; + }; + + struct __vwsnf16_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ + { + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnf16_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0); + + void operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const; + }; + + struct __vwsnf17_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ + { + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnf17_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0); + + void operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const; + }; + + struct __vwsnf18_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ + { + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnf18_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0); + + void operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const; + }; + + struct __vwsnf19_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ + { + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnf19_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0); + + void operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const; + }; + + struct __vwsnf1_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ + { + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnf1_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0); + + void operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const; + }; + + struct __vwsnf20_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ + { + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnf20_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0); + + void operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const; + }; + + struct __vwsnf21_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ + { + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnf21_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0); + + void operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const; + }; + + struct __vwsnf22_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ + { + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnf22_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0); + + void operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const; + }; + + struct __vwsnf23_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ + { + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnf23_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0); + + void operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const; + }; + + struct __vwsnf2_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ + { + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnf2_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0); + + void operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const; + }; + + struct __vwsnf3_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ + { + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnf3_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0); + + void operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const; + }; + + struct __vwsnf4_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ + { + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnf4_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0); + + void operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const; + }; + + struct __vwsnf5_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ + { + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnf5_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0); + + void operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const; + }; + + struct __vwsnf6_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ + { + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnf6_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0); + + void operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const; + }; + + struct __vwsnf7_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ + { + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnf7_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0); + + void operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const; + }; + + struct __vwsnf8_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ + { + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnf8_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0); + + void operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const; + }; + + struct __vwsnf9_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ + { + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnf9_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0); + + void operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const; + }; + + //------------------------------------------------------------------- + + __vwsnf10_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf10_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + } + + void __vwsnf10_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const + { + { + auto radioButton = ::vl::__vwsn::Ensure(::vl::__vwsn::RawPtrCast<::vl::presentation::controls::GuiSelectableButton>(::vl::__vwsn::This(sender)->GetRelatedControl())); + if (::vl::__vwsn::This(radioButton)->GetSelected()) + { + ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->flowLayout)->SetAlignment(((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"Left", false)) ? ::vl::presentation::compositions::FlowAlignment::Left : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"Center", false)) ? ::vl::presentation::compositions::FlowAlignment::Center : ::vl::presentation::compositions::FlowAlignment::Extend))); + } + } + } + + //------------------------------------------------------------------- + + __vwsnf11_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf11_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + } + + void __vwsnf11_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const + { + { + auto radioButton = ::vl::__vwsn::Ensure(::vl::__vwsn::RawPtrCast<::vl::presentation::controls::GuiSelectableButton>(::vl::__vwsn::This(sender)->GetRelatedControl())); + if (::vl::__vwsn::This(radioButton)->GetSelected()) + { + ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->flowLayout)->SetAlignment(((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"Left", false)) ? ::vl::presentation::compositions::FlowAlignment::Left : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"Center", false)) ? ::vl::presentation::compositions::FlowAlignment::Center : ::vl::presentation::compositions::FlowAlignment::Extend))); + } + } + } + + //------------------------------------------------------------------- + + __vwsnf12_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf12_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + } + + void __vwsnf12_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const + { + { + using __vwsnt_0 = ::vl::presentation::compositions::GuiFlowItemComposition*; + FOREACH(__vwsnt_0, flowItem, ::vl::reflection::description::GetLazyList<::vl::presentation::compositions::GuiFlowItemComposition*>([&](){ decltype(auto) __vwsn_temp__ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->flowLayout)->GetFlowItems(); return ::vl::__vwsn::Unbox<::vl::Ptr<::vl::reflection::description::IValueReadonlyList>>(::vl::reflection::description::BoxParameter(__vwsn_temp__)); }())) + { + ::vl::__vwsn::This(flowItem)->SetExtraMargin(::vl::presentation::Margin{}); + } + auto selectedItem = ::vl::__vwsn::Ensure(::vl::__vwsn::RawPtrCast<::vl::presentation::compositions::GuiFlowItemComposition>(::vl::__vwsn::This(sender)->GetParent())); + ::vl::__vwsn::This(selectedItem)->SetExtraMargin([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = 10; __vwsn_temp__.top = 10; __vwsn_temp__.right = 10; __vwsn_temp__.bottom = 10; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->flowLayout)->MoveChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(selectedItem)), (::vl::__vwsn::This([&](){ decltype(auto) __vwsn_temp__ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->flowLayout)->GetFlowItems(); return ::vl::__vwsn::Unbox<::vl::Ptr<::vl::reflection::description::IValueReadonlyList>>(::vl::reflection::description::BoxParameter(__vwsn_temp__)); }().Obj())->GetCount() - 1)); + } + } + + //------------------------------------------------------------------- + + __vwsnf13_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf13_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + } + + void __vwsnf13_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const + { + { + using __vwsnt_0 = ::vl::presentation::compositions::GuiFlowItemComposition*; + FOREACH(__vwsnt_0, flowItem, ::vl::reflection::description::GetLazyList<::vl::presentation::compositions::GuiFlowItemComposition*>([&](){ decltype(auto) __vwsn_temp__ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->flowLayout)->GetFlowItems(); return ::vl::__vwsn::Unbox<::vl::Ptr<::vl::reflection::description::IValueReadonlyList>>(::vl::reflection::description::BoxParameter(__vwsn_temp__)); }())) + { + ::vl::__vwsn::This(flowItem)->SetExtraMargin(::vl::presentation::Margin{}); + } + auto selectedItem = ::vl::__vwsn::Ensure(::vl::__vwsn::RawPtrCast<::vl::presentation::compositions::GuiFlowItemComposition>(::vl::__vwsn::This(sender)->GetParent())); + ::vl::__vwsn::This(selectedItem)->SetExtraMargin([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = 10; __vwsn_temp__.top = 10; __vwsn_temp__.right = 10; __vwsn_temp__.bottom = 10; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->flowLayout)->MoveChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(selectedItem)), (::vl::__vwsn::This([&](){ decltype(auto) __vwsn_temp__ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->flowLayout)->GetFlowItems(); return ::vl::__vwsn::Unbox<::vl::Ptr<::vl::reflection::description::IValueReadonlyList>>(::vl::reflection::description::BoxParameter(__vwsn_temp__)); }().Obj())->GetCount() - 1)); + } + } + + //------------------------------------------------------------------- + + __vwsnf14_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf14_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + } + + void __vwsnf14_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const + { + { + using __vwsnt_0 = ::vl::presentation::compositions::GuiFlowItemComposition*; + FOREACH(__vwsnt_0, flowItem, ::vl::reflection::description::GetLazyList<::vl::presentation::compositions::GuiFlowItemComposition*>([&](){ decltype(auto) __vwsn_temp__ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->flowLayout)->GetFlowItems(); return ::vl::__vwsn::Unbox<::vl::Ptr<::vl::reflection::description::IValueReadonlyList>>(::vl::reflection::description::BoxParameter(__vwsn_temp__)); }())) + { + ::vl::__vwsn::This(flowItem)->SetExtraMargin(::vl::presentation::Margin{}); + } + auto selectedItem = ::vl::__vwsn::Ensure(::vl::__vwsn::RawPtrCast<::vl::presentation::compositions::GuiFlowItemComposition>(::vl::__vwsn::This(sender)->GetParent())); + ::vl::__vwsn::This(selectedItem)->SetExtraMargin([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = 10; __vwsn_temp__.top = 10; __vwsn_temp__.right = 10; __vwsn_temp__.bottom = 10; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->flowLayout)->MoveChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(selectedItem)), (::vl::__vwsn::This([&](){ decltype(auto) __vwsn_temp__ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->flowLayout)->GetFlowItems(); return ::vl::__vwsn::Unbox<::vl::Ptr<::vl::reflection::description::IValueReadonlyList>>(::vl::reflection::description::BoxParameter(__vwsn_temp__)); }().Obj())->GetCount() - 1)); + } + } + + //------------------------------------------------------------------- + + __vwsnf15_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf15_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + } + + void __vwsnf15_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const + { + { + using __vwsnt_0 = ::vl::presentation::compositions::GuiFlowItemComposition*; + FOREACH(__vwsnt_0, flowItem, ::vl::reflection::description::GetLazyList<::vl::presentation::compositions::GuiFlowItemComposition*>([&](){ decltype(auto) __vwsn_temp__ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->flowLayout)->GetFlowItems(); return ::vl::__vwsn::Unbox<::vl::Ptr<::vl::reflection::description::IValueReadonlyList>>(::vl::reflection::description::BoxParameter(__vwsn_temp__)); }())) + { + ::vl::__vwsn::This(flowItem)->SetExtraMargin(::vl::presentation::Margin{}); + } + auto selectedItem = ::vl::__vwsn::Ensure(::vl::__vwsn::RawPtrCast<::vl::presentation::compositions::GuiFlowItemComposition>(::vl::__vwsn::This(sender)->GetParent())); + ::vl::__vwsn::This(selectedItem)->SetExtraMargin([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = 10; __vwsn_temp__.top = 10; __vwsn_temp__.right = 10; __vwsn_temp__.bottom = 10; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->flowLayout)->MoveChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(selectedItem)), (::vl::__vwsn::This([&](){ decltype(auto) __vwsn_temp__ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->flowLayout)->GetFlowItems(); return ::vl::__vwsn::Unbox<::vl::Ptr<::vl::reflection::description::IValueReadonlyList>>(::vl::reflection::description::BoxParameter(__vwsn_temp__)); }().Obj())->GetCount() - 1)); + } + } + + //------------------------------------------------------------------- + + __vwsnf16_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf16_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + } + + void __vwsnf16_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const + { + { + using __vwsnt_0 = ::vl::presentation::compositions::GuiFlowItemComposition*; + FOREACH(__vwsnt_0, flowItem, ::vl::reflection::description::GetLazyList<::vl::presentation::compositions::GuiFlowItemComposition*>([&](){ decltype(auto) __vwsn_temp__ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->flowLayout)->GetFlowItems(); return ::vl::__vwsn::Unbox<::vl::Ptr<::vl::reflection::description::IValueReadonlyList>>(::vl::reflection::description::BoxParameter(__vwsn_temp__)); }())) + { + ::vl::__vwsn::This(flowItem)->SetExtraMargin(::vl::presentation::Margin{}); + } + auto selectedItem = ::vl::__vwsn::Ensure(::vl::__vwsn::RawPtrCast<::vl::presentation::compositions::GuiFlowItemComposition>(::vl::__vwsn::This(sender)->GetParent())); + ::vl::__vwsn::This(selectedItem)->SetExtraMargin([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = 10; __vwsn_temp__.top = 10; __vwsn_temp__.right = 10; __vwsn_temp__.bottom = 10; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->flowLayout)->MoveChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(selectedItem)), (::vl::__vwsn::This([&](){ decltype(auto) __vwsn_temp__ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->flowLayout)->GetFlowItems(); return ::vl::__vwsn::Unbox<::vl::Ptr<::vl::reflection::description::IValueReadonlyList>>(::vl::reflection::description::BoxParameter(__vwsn_temp__)); }().Obj())->GetCount() - 1)); + } + } + + //------------------------------------------------------------------- + + __vwsnf17_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf17_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + } + + void __vwsnf17_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const + { + { + using __vwsnt_0 = ::vl::presentation::compositions::GuiFlowItemComposition*; + FOREACH(__vwsnt_0, flowItem, ::vl::reflection::description::GetLazyList<::vl::presentation::compositions::GuiFlowItemComposition*>([&](){ decltype(auto) __vwsn_temp__ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->flowLayout)->GetFlowItems(); return ::vl::__vwsn::Unbox<::vl::Ptr<::vl::reflection::description::IValueReadonlyList>>(::vl::reflection::description::BoxParameter(__vwsn_temp__)); }())) + { + ::vl::__vwsn::This(flowItem)->SetExtraMargin(::vl::presentation::Margin{}); + } + auto selectedItem = ::vl::__vwsn::Ensure(::vl::__vwsn::RawPtrCast<::vl::presentation::compositions::GuiFlowItemComposition>(::vl::__vwsn::This(sender)->GetParent())); + ::vl::__vwsn::This(selectedItem)->SetExtraMargin([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = 10; __vwsn_temp__.top = 10; __vwsn_temp__.right = 10; __vwsn_temp__.bottom = 10; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->flowLayout)->MoveChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(selectedItem)), (::vl::__vwsn::This([&](){ decltype(auto) __vwsn_temp__ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->flowLayout)->GetFlowItems(); return ::vl::__vwsn::Unbox<::vl::Ptr<::vl::reflection::description::IValueReadonlyList>>(::vl::reflection::description::BoxParameter(__vwsn_temp__)); }().Obj())->GetCount() - 1)); + } + } + + //------------------------------------------------------------------- + + __vwsnf18_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf18_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + } + + void __vwsnf18_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const + { + { + using __vwsnt_0 = ::vl::presentation::compositions::GuiFlowItemComposition*; + FOREACH(__vwsnt_0, flowItem, ::vl::reflection::description::GetLazyList<::vl::presentation::compositions::GuiFlowItemComposition*>([&](){ decltype(auto) __vwsn_temp__ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->flowLayout)->GetFlowItems(); return ::vl::__vwsn::Unbox<::vl::Ptr<::vl::reflection::description::IValueReadonlyList>>(::vl::reflection::description::BoxParameter(__vwsn_temp__)); }())) + { + ::vl::__vwsn::This(flowItem)->SetExtraMargin(::vl::presentation::Margin{}); + } + auto selectedItem = ::vl::__vwsn::Ensure(::vl::__vwsn::RawPtrCast<::vl::presentation::compositions::GuiFlowItemComposition>(::vl::__vwsn::This(sender)->GetParent())); + ::vl::__vwsn::This(selectedItem)->SetExtraMargin([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = 10; __vwsn_temp__.top = 10; __vwsn_temp__.right = 10; __vwsn_temp__.bottom = 10; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->flowLayout)->MoveChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(selectedItem)), (::vl::__vwsn::This([&](){ decltype(auto) __vwsn_temp__ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->flowLayout)->GetFlowItems(); return ::vl::__vwsn::Unbox<::vl::Ptr<::vl::reflection::description::IValueReadonlyList>>(::vl::reflection::description::BoxParameter(__vwsn_temp__)); }().Obj())->GetCount() - 1)); + } + } + + //------------------------------------------------------------------- + + __vwsnf19_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf19_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + } + + void __vwsnf19_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const + { + { + using __vwsnt_0 = ::vl::presentation::compositions::GuiFlowItemComposition*; + FOREACH(__vwsnt_0, flowItem, ::vl::reflection::description::GetLazyList<::vl::presentation::compositions::GuiFlowItemComposition*>([&](){ decltype(auto) __vwsn_temp__ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->flowLayout)->GetFlowItems(); return ::vl::__vwsn::Unbox<::vl::Ptr<::vl::reflection::description::IValueReadonlyList>>(::vl::reflection::description::BoxParameter(__vwsn_temp__)); }())) + { + ::vl::__vwsn::This(flowItem)->SetExtraMargin(::vl::presentation::Margin{}); + } + auto selectedItem = ::vl::__vwsn::Ensure(::vl::__vwsn::RawPtrCast<::vl::presentation::compositions::GuiFlowItemComposition>(::vl::__vwsn::This(sender)->GetParent())); + ::vl::__vwsn::This(selectedItem)->SetExtraMargin([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = 10; __vwsn_temp__.top = 10; __vwsn_temp__.right = 10; __vwsn_temp__.bottom = 10; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->flowLayout)->MoveChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(selectedItem)), (::vl::__vwsn::This([&](){ decltype(auto) __vwsn_temp__ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->flowLayout)->GetFlowItems(); return ::vl::__vwsn::Unbox<::vl::Ptr<::vl::reflection::description::IValueReadonlyList>>(::vl::reflection::description::BoxParameter(__vwsn_temp__)); }().Obj())->GetCount() - 1)); + } + } + + //------------------------------------------------------------------- + + __vwsnf1_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf1_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + } + + void __vwsnf1_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const + { + { + auto radioButton = ::vl::__vwsn::Ensure(::vl::__vwsn::RawPtrCast<::vl::presentation::controls::GuiSelectableButton>(::vl::__vwsn::This(sender)->GetRelatedControl())); + if (::vl::__vwsn::This(radioButton)->GetSelected()) + { + auto direction = ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"LeftDown", false)) ? ::vl::presentation::AxisDirection::LeftDown : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"LeftUp", false)) ? ::vl::presentation::AxisDirection::LeftUp : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"RightDown", false)) ? ::vl::presentation::AxisDirection::RightDown : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"RightUp", false)) ? ::vl::presentation::AxisDirection::RightUp : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"UpRight", false)) ? ::vl::presentation::AxisDirection::UpRight : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"UpLeft", false)) ? ::vl::presentation::AxisDirection::UpLeft : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"DownLeft", false)) ? ::vl::presentation::AxisDirection::DownLeft : ::vl::presentation::AxisDirection::DownRight))))))); + auto axis = ::vl::Ptr<::vl::presentation::compositions::GuiAxis>(new ::vl::presentation::compositions::GuiAxis(direction)); + ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->flowLayout)->SetAxis(::vl::__vwsn::Ensure(::vl::Ptr<::vl::presentation::compositions::IGuiAxis>(axis))); + } + } + } + + //------------------------------------------------------------------- + + __vwsnf20_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf20_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + } + + void __vwsnf20_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const + { + { + using __vwsnt_0 = ::vl::presentation::compositions::GuiFlowItemComposition*; + FOREACH(__vwsnt_0, flowItem, ::vl::reflection::description::GetLazyList<::vl::presentation::compositions::GuiFlowItemComposition*>([&](){ decltype(auto) __vwsn_temp__ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->flowLayout)->GetFlowItems(); return ::vl::__vwsn::Unbox<::vl::Ptr<::vl::reflection::description::IValueReadonlyList>>(::vl::reflection::description::BoxParameter(__vwsn_temp__)); }())) + { + ::vl::__vwsn::This(flowItem)->SetExtraMargin(::vl::presentation::Margin{}); + } + auto selectedItem = ::vl::__vwsn::Ensure(::vl::__vwsn::RawPtrCast<::vl::presentation::compositions::GuiFlowItemComposition>(::vl::__vwsn::This(sender)->GetParent())); + ::vl::__vwsn::This(selectedItem)->SetExtraMargin([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = 10; __vwsn_temp__.top = 10; __vwsn_temp__.right = 10; __vwsn_temp__.bottom = 10; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->flowLayout)->MoveChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(selectedItem)), (::vl::__vwsn::This([&](){ decltype(auto) __vwsn_temp__ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->flowLayout)->GetFlowItems(); return ::vl::__vwsn::Unbox<::vl::Ptr<::vl::reflection::description::IValueReadonlyList>>(::vl::reflection::description::BoxParameter(__vwsn_temp__)); }().Obj())->GetCount() - 1)); + } + } + + //------------------------------------------------------------------- + + __vwsnf21_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf21_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + } + + void __vwsnf21_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const + { + { + using __vwsnt_0 = ::vl::presentation::compositions::GuiFlowItemComposition*; + FOREACH(__vwsnt_0, flowItem, ::vl::reflection::description::GetLazyList<::vl::presentation::compositions::GuiFlowItemComposition*>([&](){ decltype(auto) __vwsn_temp__ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->flowLayout)->GetFlowItems(); return ::vl::__vwsn::Unbox<::vl::Ptr<::vl::reflection::description::IValueReadonlyList>>(::vl::reflection::description::BoxParameter(__vwsn_temp__)); }())) + { + ::vl::__vwsn::This(flowItem)->SetExtraMargin(::vl::presentation::Margin{}); + } + auto selectedItem = ::vl::__vwsn::Ensure(::vl::__vwsn::RawPtrCast<::vl::presentation::compositions::GuiFlowItemComposition>(::vl::__vwsn::This(sender)->GetParent())); + ::vl::__vwsn::This(selectedItem)->SetExtraMargin([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = 10; __vwsn_temp__.top = 10; __vwsn_temp__.right = 10; __vwsn_temp__.bottom = 10; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->flowLayout)->MoveChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(selectedItem)), (::vl::__vwsn::This([&](){ decltype(auto) __vwsn_temp__ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->flowLayout)->GetFlowItems(); return ::vl::__vwsn::Unbox<::vl::Ptr<::vl::reflection::description::IValueReadonlyList>>(::vl::reflection::description::BoxParameter(__vwsn_temp__)); }().Obj())->GetCount() - 1)); + } + } + + //------------------------------------------------------------------- + + __vwsnf22_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf22_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + } + + void __vwsnf22_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const + { + { + using __vwsnt_0 = ::vl::presentation::compositions::GuiFlowItemComposition*; + FOREACH(__vwsnt_0, flowItem, ::vl::reflection::description::GetLazyList<::vl::presentation::compositions::GuiFlowItemComposition*>([&](){ decltype(auto) __vwsn_temp__ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->flowLayout)->GetFlowItems(); return ::vl::__vwsn::Unbox<::vl::Ptr<::vl::reflection::description::IValueReadonlyList>>(::vl::reflection::description::BoxParameter(__vwsn_temp__)); }())) + { + ::vl::__vwsn::This(flowItem)->SetExtraMargin(::vl::presentation::Margin{}); + } + auto selectedItem = ::vl::__vwsn::Ensure(::vl::__vwsn::RawPtrCast<::vl::presentation::compositions::GuiFlowItemComposition>(::vl::__vwsn::This(sender)->GetParent())); + ::vl::__vwsn::This(selectedItem)->SetExtraMargin([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = 10; __vwsn_temp__.top = 10; __vwsn_temp__.right = 10; __vwsn_temp__.bottom = 10; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->flowLayout)->MoveChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(selectedItem)), (::vl::__vwsn::This([&](){ decltype(auto) __vwsn_temp__ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->flowLayout)->GetFlowItems(); return ::vl::__vwsn::Unbox<::vl::Ptr<::vl::reflection::description::IValueReadonlyList>>(::vl::reflection::description::BoxParameter(__vwsn_temp__)); }().Obj())->GetCount() - 1)); + } + } + + //------------------------------------------------------------------- + + __vwsnf23_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf23_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + } + + void __vwsnf23_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const + { + { + using __vwsnt_0 = ::vl::presentation::compositions::GuiFlowItemComposition*; + FOREACH(__vwsnt_0, flowItem, ::vl::reflection::description::GetLazyList<::vl::presentation::compositions::GuiFlowItemComposition*>([&](){ decltype(auto) __vwsn_temp__ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->flowLayout)->GetFlowItems(); return ::vl::__vwsn::Unbox<::vl::Ptr<::vl::reflection::description::IValueReadonlyList>>(::vl::reflection::description::BoxParameter(__vwsn_temp__)); }())) + { + ::vl::__vwsn::This(flowItem)->SetExtraMargin(::vl::presentation::Margin{}); + } + auto selectedItem = ::vl::__vwsn::Ensure(::vl::__vwsn::RawPtrCast<::vl::presentation::compositions::GuiFlowItemComposition>(::vl::__vwsn::This(sender)->GetParent())); + ::vl::__vwsn::This(selectedItem)->SetExtraMargin([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = 10; __vwsn_temp__.top = 10; __vwsn_temp__.right = 10; __vwsn_temp__.bottom = 10; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->flowLayout)->MoveChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(selectedItem)), (::vl::__vwsn::This([&](){ decltype(auto) __vwsn_temp__ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->flowLayout)->GetFlowItems(); return ::vl::__vwsn::Unbox<::vl::Ptr<::vl::reflection::description::IValueReadonlyList>>(::vl::reflection::description::BoxParameter(__vwsn_temp__)); }().Obj())->GetCount() - 1)); + } + } + + //------------------------------------------------------------------- + + __vwsnf2_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf2_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + } + + void __vwsnf2_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const + { + { + auto radioButton = ::vl::__vwsn::Ensure(::vl::__vwsn::RawPtrCast<::vl::presentation::controls::GuiSelectableButton>(::vl::__vwsn::This(sender)->GetRelatedControl())); + if (::vl::__vwsn::This(radioButton)->GetSelected()) + { + auto direction = ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"LeftDown", false)) ? ::vl::presentation::AxisDirection::LeftDown : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"LeftUp", false)) ? ::vl::presentation::AxisDirection::LeftUp : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"RightDown", false)) ? ::vl::presentation::AxisDirection::RightDown : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"RightUp", false)) ? ::vl::presentation::AxisDirection::RightUp : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"UpRight", false)) ? ::vl::presentation::AxisDirection::UpRight : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"UpLeft", false)) ? ::vl::presentation::AxisDirection::UpLeft : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"DownLeft", false)) ? ::vl::presentation::AxisDirection::DownLeft : ::vl::presentation::AxisDirection::DownRight))))))); + auto axis = ::vl::Ptr<::vl::presentation::compositions::GuiAxis>(new ::vl::presentation::compositions::GuiAxis(direction)); + ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->flowLayout)->SetAxis(::vl::__vwsn::Ensure(::vl::Ptr<::vl::presentation::compositions::IGuiAxis>(axis))); + } + } + } + + //------------------------------------------------------------------- + + __vwsnf3_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf3_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + } + + void __vwsnf3_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const + { + { + auto radioButton = ::vl::__vwsn::Ensure(::vl::__vwsn::RawPtrCast<::vl::presentation::controls::GuiSelectableButton>(::vl::__vwsn::This(sender)->GetRelatedControl())); + if (::vl::__vwsn::This(radioButton)->GetSelected()) + { + auto direction = ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"LeftDown", false)) ? ::vl::presentation::AxisDirection::LeftDown : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"LeftUp", false)) ? ::vl::presentation::AxisDirection::LeftUp : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"RightDown", false)) ? ::vl::presentation::AxisDirection::RightDown : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"RightUp", false)) ? ::vl::presentation::AxisDirection::RightUp : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"UpRight", false)) ? ::vl::presentation::AxisDirection::UpRight : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"UpLeft", false)) ? ::vl::presentation::AxisDirection::UpLeft : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"DownLeft", false)) ? ::vl::presentation::AxisDirection::DownLeft : ::vl::presentation::AxisDirection::DownRight))))))); + auto axis = ::vl::Ptr<::vl::presentation::compositions::GuiAxis>(new ::vl::presentation::compositions::GuiAxis(direction)); + ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->flowLayout)->SetAxis(::vl::__vwsn::Ensure(::vl::Ptr<::vl::presentation::compositions::IGuiAxis>(axis))); + } + } + } + + //------------------------------------------------------------------- + + __vwsnf4_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf4_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + } + + void __vwsnf4_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const + { + { + auto radioButton = ::vl::__vwsn::Ensure(::vl::__vwsn::RawPtrCast<::vl::presentation::controls::GuiSelectableButton>(::vl::__vwsn::This(sender)->GetRelatedControl())); + if (::vl::__vwsn::This(radioButton)->GetSelected()) + { + auto direction = ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"LeftDown", false)) ? ::vl::presentation::AxisDirection::LeftDown : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"LeftUp", false)) ? ::vl::presentation::AxisDirection::LeftUp : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"RightDown", false)) ? ::vl::presentation::AxisDirection::RightDown : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"RightUp", false)) ? ::vl::presentation::AxisDirection::RightUp : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"UpRight", false)) ? ::vl::presentation::AxisDirection::UpRight : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"UpLeft", false)) ? ::vl::presentation::AxisDirection::UpLeft : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"DownLeft", false)) ? ::vl::presentation::AxisDirection::DownLeft : ::vl::presentation::AxisDirection::DownRight))))))); + auto axis = ::vl::Ptr<::vl::presentation::compositions::GuiAxis>(new ::vl::presentation::compositions::GuiAxis(direction)); + ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->flowLayout)->SetAxis(::vl::__vwsn::Ensure(::vl::Ptr<::vl::presentation::compositions::IGuiAxis>(axis))); + } + } + } + + //------------------------------------------------------------------- + + __vwsnf5_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf5_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + } + + void __vwsnf5_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const + { + { + auto radioButton = ::vl::__vwsn::Ensure(::vl::__vwsn::RawPtrCast<::vl::presentation::controls::GuiSelectableButton>(::vl::__vwsn::This(sender)->GetRelatedControl())); + if (::vl::__vwsn::This(radioButton)->GetSelected()) + { + auto direction = ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"LeftDown", false)) ? ::vl::presentation::AxisDirection::LeftDown : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"LeftUp", false)) ? ::vl::presentation::AxisDirection::LeftUp : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"RightDown", false)) ? ::vl::presentation::AxisDirection::RightDown : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"RightUp", false)) ? ::vl::presentation::AxisDirection::RightUp : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"UpRight", false)) ? ::vl::presentation::AxisDirection::UpRight : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"UpLeft", false)) ? ::vl::presentation::AxisDirection::UpLeft : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"DownLeft", false)) ? ::vl::presentation::AxisDirection::DownLeft : ::vl::presentation::AxisDirection::DownRight))))))); + auto axis = ::vl::Ptr<::vl::presentation::compositions::GuiAxis>(new ::vl::presentation::compositions::GuiAxis(direction)); + ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->flowLayout)->SetAxis(::vl::__vwsn::Ensure(::vl::Ptr<::vl::presentation::compositions::IGuiAxis>(axis))); + } + } + } + + //------------------------------------------------------------------- + + __vwsnf6_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf6_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + } + + void __vwsnf6_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const + { + { + auto radioButton = ::vl::__vwsn::Ensure(::vl::__vwsn::RawPtrCast<::vl::presentation::controls::GuiSelectableButton>(::vl::__vwsn::This(sender)->GetRelatedControl())); + if (::vl::__vwsn::This(radioButton)->GetSelected()) + { + auto direction = ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"LeftDown", false)) ? ::vl::presentation::AxisDirection::LeftDown : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"LeftUp", false)) ? ::vl::presentation::AxisDirection::LeftUp : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"RightDown", false)) ? ::vl::presentation::AxisDirection::RightDown : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"RightUp", false)) ? ::vl::presentation::AxisDirection::RightUp : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"UpRight", false)) ? ::vl::presentation::AxisDirection::UpRight : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"UpLeft", false)) ? ::vl::presentation::AxisDirection::UpLeft : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"DownLeft", false)) ? ::vl::presentation::AxisDirection::DownLeft : ::vl::presentation::AxisDirection::DownRight))))))); + auto axis = ::vl::Ptr<::vl::presentation::compositions::GuiAxis>(new ::vl::presentation::compositions::GuiAxis(direction)); + ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->flowLayout)->SetAxis(::vl::__vwsn::Ensure(::vl::Ptr<::vl::presentation::compositions::IGuiAxis>(axis))); + } + } + } + + //------------------------------------------------------------------- + + __vwsnf7_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf7_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + } + + void __vwsnf7_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const + { + { + auto radioButton = ::vl::__vwsn::Ensure(::vl::__vwsn::RawPtrCast<::vl::presentation::controls::GuiSelectableButton>(::vl::__vwsn::This(sender)->GetRelatedControl())); + if (::vl::__vwsn::This(radioButton)->GetSelected()) + { + auto direction = ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"LeftDown", false)) ? ::vl::presentation::AxisDirection::LeftDown : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"LeftUp", false)) ? ::vl::presentation::AxisDirection::LeftUp : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"RightDown", false)) ? ::vl::presentation::AxisDirection::RightDown : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"RightUp", false)) ? ::vl::presentation::AxisDirection::RightUp : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"UpRight", false)) ? ::vl::presentation::AxisDirection::UpRight : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"UpLeft", false)) ? ::vl::presentation::AxisDirection::UpLeft : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"DownLeft", false)) ? ::vl::presentation::AxisDirection::DownLeft : ::vl::presentation::AxisDirection::DownRight))))))); + auto axis = ::vl::Ptr<::vl::presentation::compositions::GuiAxis>(new ::vl::presentation::compositions::GuiAxis(direction)); + ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->flowLayout)->SetAxis(::vl::__vwsn::Ensure(::vl::Ptr<::vl::presentation::compositions::IGuiAxis>(axis))); + } + } + } + + //------------------------------------------------------------------- + + __vwsnf8_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf8_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + } + + void __vwsnf8_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const + { + { + auto radioButton = ::vl::__vwsn::Ensure(::vl::__vwsn::RawPtrCast<::vl::presentation::controls::GuiSelectableButton>(::vl::__vwsn::This(sender)->GetRelatedControl())); + if (::vl::__vwsn::This(radioButton)->GetSelected()) + { + auto direction = ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"LeftDown", false)) ? ::vl::presentation::AxisDirection::LeftDown : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"LeftUp", false)) ? ::vl::presentation::AxisDirection::LeftUp : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"RightDown", false)) ? ::vl::presentation::AxisDirection::RightDown : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"RightUp", false)) ? ::vl::presentation::AxisDirection::RightUp : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"UpRight", false)) ? ::vl::presentation::AxisDirection::UpRight : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"UpLeft", false)) ? ::vl::presentation::AxisDirection::UpLeft : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"DownLeft", false)) ? ::vl::presentation::AxisDirection::DownLeft : ::vl::presentation::AxisDirection::DownRight))))))); + auto axis = ::vl::Ptr<::vl::presentation::compositions::GuiAxis>(new ::vl::presentation::compositions::GuiAxis(direction)); + ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->flowLayout)->SetAxis(::vl::__vwsn::Ensure(::vl::Ptr<::vl::presentation::compositions::IGuiAxis>(axis))); + } + } + } + + //------------------------------------------------------------------- + + __vwsnf9_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf9_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + } + + void __vwsnf9_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const + { + { + auto radioButton = ::vl::__vwsn::Ensure(::vl::__vwsn::RawPtrCast<::vl::presentation::controls::GuiSelectableButton>(::vl::__vwsn::This(sender)->GetRelatedControl())); + if (::vl::__vwsn::This(radioButton)->GetSelected()) + { + ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->flowLayout)->SetAlignment(((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"Left", false)) ? ::vl::presentation::compositions::FlowAlignment::Left : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"Center", false)) ? ::vl::presentation::compositions::FlowAlignment::Center : ::vl::presentation::compositions::FlowAlignment::Extend))); + } + } + } +/*********************************************************************** +Global Functions +***********************************************************************/ + + Demo& Demo::Instance() + { + return Getvl_workflow_global_Demo().instance; + } +} + +/*********************************************************************** +Class (::demo::MainWindowConstructor) +***********************************************************************/ + namespace demo { - // #region CLASS_MEMBER_GUIEVENT_HANDLER (DO NOT PUT OTHER CONTENT IN THIS #region.) + void MainWindowConstructor::__vwsn_initialize_instance_(::demo::MainWindow* __vwsn_this_, ::vl::presentation::GuiResourcePathResolver* __vwsn_resolver_) + { + (::vl::__vwsn::This(this)->__vwsn_precompile_0 = __vwsn_this_); + (::vl::__vwsn::This(this)->__vwsn_precompile_72 = ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_0)->GetContainerComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_72)->SetMinSizeLimitation(::vl::presentation::compositions::GuiGraphicsComposition::MinSizeLimitation::LimitToElementAndChildren); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_71 = ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_0)->GetBoundsComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_71)->SetPreferredMinSize([&](){ ::vl::presentation::Size __vwsn_temp__; __vwsn_temp__.x = 480; __vwsn_temp__.y = 320; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_0)->SetClientSize([&](){ ::vl::presentation::Size __vwsn_temp__; __vwsn_temp__.x = 480; __vwsn_temp__.y = 320; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_0)->SetText(::vl::WString(L"Flow", false)); + } + (::vl::__vwsn::This(this)->groupAxis = new ::vl::presentation::controls::GuiSelectableButton::MutexGroupController()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_0)->AddComponent(::vl::__vwsn::Ensure(static_cast<::vl::presentation::controls::GuiComponent*>(::vl::__vwsn::This(this)->groupAxis))); + } + (::vl::__vwsn::This(this)->groupAlignment = new ::vl::presentation::controls::GuiSelectableButton::MutexGroupController()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_0)->AddComponent(::vl::__vwsn::Ensure(static_cast<::vl::presentation::controls::GuiComponent*>(::vl::__vwsn::This(this)->groupAlignment))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_1 = new ::vl::presentation::compositions::GuiTableComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_1)->SetMinSizeLimitation(::vl::presentation::compositions::GuiGraphicsComposition::MinSizeLimitation::LimitToElementAndChildren); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_1)->SetCellPadding(::vl::__vwsn::Parse<::vl::vint32_t>(::vl::WString(L"5", false))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_1)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = 5; __vwsn_temp__.top = 5; __vwsn_temp__.right = 5; __vwsn_temp__.bottom = 5; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_1)->SetRowsAndColumns(3, 3); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_1)->SetRowOption(0, [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_1)->SetRowOption(1, [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_1)->SetRowOption(2, [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Percentage; __vwsn_temp__.percentage = 1.0; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_1)->SetColumnOption(0, [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_1)->SetColumnOption(1, [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_1)->SetColumnOption(2, [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Percentage; __vwsn_temp__.percentage = 1.0; return __vwsn_temp__; }()); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_2 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_2)->SetSite(0, 0, 1, 1); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateGroupBoxStyle(); + (::vl::__vwsn::This(this)->groupBoxAxis = new ::vl::presentation::controls::GuiControl(__vwsn_controlStyle_)); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_21 = ::vl::__vwsn::This(::vl::__vwsn::This(this)->groupBoxAxis)->GetContainerComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_21)->SetMinSizeLimitation(::vl::presentation::compositions::GuiGraphicsComposition::MinSizeLimitation::LimitToElementAndChildren); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_20 = ::vl::__vwsn::This(::vl::__vwsn::This(this)->groupBoxAxis)->GetBoundsComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_20)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = 5; __vwsn_temp__.top = 5; __vwsn_temp__.right = 5; __vwsn_temp__.bottom = 5; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->groupBoxAxis)->SetText(::vl::WString(L"Axis", false)); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_3 = new ::vl::presentation::compositions::GuiTableComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_3)->SetMinSizeLimitation(::vl::presentation::compositions::GuiGraphicsComposition::MinSizeLimitation::LimitToElementAndChildren); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_3)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = 0; __vwsn_temp__.top = 0; __vwsn_temp__.right = 0; __vwsn_temp__.bottom = 0; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_3)->SetRowsAndColumns(4, 4); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_3)->SetRowOption(0, [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_3)->SetRowOption(1, [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_3)->SetRowOption(2, [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_3)->SetRowOption(3, [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_3)->SetColumnOption(0, [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_3)->SetColumnOption(1, [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_3)->SetColumnOption(2, [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_3)->SetColumnOption(3, [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_4 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_4)->SetSite(0, 1, 1, 1); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateRadioButtonStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_5 = new ::vl::presentation::controls::GuiSelectableButton(__vwsn_controlStyle_)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_5)->SetSelected(::vl::__vwsn::Parse(::vl::WString(L"true", false))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_5)->SetText(::vl::WString(L"RightDown", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_4)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_5)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_3)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_4))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_6 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_6)->SetSite(0, 2, 1, 1); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateRadioButtonStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_7 = new ::vl::presentation::controls::GuiSelectableButton(__vwsn_controlStyle_)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_7)->SetText(::vl::WString(L"LeftDown", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_6)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_7)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_3)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_6))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_8 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_8)->SetSite(1, 0, 1, 1); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateRadioButtonStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_9 = new ::vl::presentation::controls::GuiSelectableButton(__vwsn_controlStyle_)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_9)->SetText(::vl::WString(L"DownRight", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_8)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_9)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_3)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_8))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_10 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_10)->SetSite(1, 3, 1, 1); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateRadioButtonStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_11 = new ::vl::presentation::controls::GuiSelectableButton(__vwsn_controlStyle_)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_11)->SetText(::vl::WString(L"DownLeft", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_10)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_11)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_3)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_10))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_12 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_12)->SetSite(2, 0, 1, 1); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateRadioButtonStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_13 = new ::vl::presentation::controls::GuiSelectableButton(__vwsn_controlStyle_)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_13)->SetText(::vl::WString(L"UpRight", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_12)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_13)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_3)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_12))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_14 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_14)->SetSite(2, 3, 1, 1); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateRadioButtonStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_15 = new ::vl::presentation::controls::GuiSelectableButton(__vwsn_controlStyle_)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_15)->SetText(::vl::WString(L"UpLeft", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_14)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_15)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_3)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_14))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_16 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_16)->SetSite(3, 1, 1, 1); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateRadioButtonStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_17 = new ::vl::presentation::controls::GuiSelectableButton(__vwsn_controlStyle_)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_17)->SetText(::vl::WString(L"RightUp", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_16)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_17)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_3)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_16))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_18 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_18)->SetSite(3, 2, 1, 1); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateRadioButtonStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_19 = new ::vl::presentation::controls::GuiSelectableButton(__vwsn_controlStyle_)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_19)->SetText(::vl::WString(L"LeftUp", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_18)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_19)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_3)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_18))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(::vl::__vwsn::This(this)->groupBoxAxis)->GetContainerComposition())->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_3))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_2)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->groupBoxAxis)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_1)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_2))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_22 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_22)->SetSite(0, 1, 1, 1); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateGroupBoxStyle(); + (::vl::__vwsn::This(this)->groupBoxAlignment = new ::vl::presentation::controls::GuiControl(__vwsn_controlStyle_)); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_31 = ::vl::__vwsn::This(::vl::__vwsn::This(this)->groupBoxAlignment)->GetContainerComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_31)->SetMinSizeLimitation(::vl::presentation::compositions::GuiGraphicsComposition::MinSizeLimitation::LimitToElementAndChildren); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_30 = ::vl::__vwsn::This(::vl::__vwsn::This(this)->groupBoxAlignment)->GetBoundsComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_30)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = 5; __vwsn_temp__.top = 5; __vwsn_temp__.right = 5; __vwsn_temp__.bottom = 5; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->groupBoxAlignment)->SetText(::vl::WString(L"Alignment", false)); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_23 = new ::vl::presentation::compositions::GuiTableComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_23)->SetMinSizeLimitation(::vl::presentation::compositions::GuiGraphicsComposition::MinSizeLimitation::LimitToElementAndChildren); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_23)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = 0; __vwsn_temp__.top = 0; __vwsn_temp__.right = 0; __vwsn_temp__.bottom = 0; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_23)->SetRowsAndColumns(3, 1); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_23)->SetRowOption(0, [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_23)->SetRowOption(1, [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_23)->SetRowOption(2, [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_23)->SetColumnOption(0, [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_24 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_24)->SetSite(0, 0, 1, 1); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateRadioButtonStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_25 = new ::vl::presentation::controls::GuiSelectableButton(__vwsn_controlStyle_)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_25)->SetSelected(::vl::__vwsn::Parse(::vl::WString(L"true", false))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_25)->SetText(::vl::WString(L"Left", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_24)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_25)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_23)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_24))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_26 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_26)->SetSite(1, 0, 1, 1); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateRadioButtonStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_27 = new ::vl::presentation::controls::GuiSelectableButton(__vwsn_controlStyle_)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_27)->SetText(::vl::WString(L"Center", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_26)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_27)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_23)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_26))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_28 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_28)->SetSite(2, 0, 1, 1); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateRadioButtonStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_29 = new ::vl::presentation::controls::GuiSelectableButton(__vwsn_controlStyle_)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_29)->SetText(::vl::WString(L"Extend", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_28)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_29)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_23)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_28))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(::vl::__vwsn::This(this)->groupBoxAlignment)->GetContainerComposition())->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_23))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_22)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->groupBoxAlignment)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_1)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_22))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_32 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_32)->SetSite(1, 0, 1, 3); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateLabelStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_33 = new ::vl::presentation::controls::GuiLabel(__vwsn_controlStyle_)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_33)->SetText(::vl::WString(L"Click any button in stack items to enlarge it.", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_32)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_33)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_1)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_32))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_34 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_34)->SetSite(2, 0, 1, 3); + } + (::vl::__vwsn::This(this)->flowLayout = new ::vl::presentation::compositions::GuiFlowComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->flowLayout)->SetExtraMargin([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = 10; __vwsn_temp__.top = 10; __vwsn_temp__.right = 10; __vwsn_temp__.bottom = 10; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->flowLayout)->SetColumnPadding(::vl::__vwsn::Parse<::vl::vint32_t>(::vl::WString(L"5", false))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->flowLayout)->SetRowPadding(::vl::__vwsn::Parse<::vl::vint32_t>(::vl::WString(L"20", false))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->flowLayout)->SetMinSizeLimitation(::vl::presentation::compositions::GuiGraphicsComposition::MinSizeLimitation::LimitToElementAndChildren); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->flowLayout)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = 0; __vwsn_temp__.top = 0; __vwsn_temp__.right = 0; __vwsn_temp__.bottom = 0; return __vwsn_temp__; }()); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_35 = new ::vl::presentation::compositions::GuiFlowItemComposition()); + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateButtonStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_36 = new ::vl::presentation::controls::GuiButton(__vwsn_controlStyle_)); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_37 = ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_36)->GetBoundsComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_37)->SetPreferredMinSize([&](){ ::vl::presentation::Size __vwsn_temp__; __vwsn_temp__.x = 100; __vwsn_temp__.y = 100; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_37)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = 0; __vwsn_temp__.top = 0; __vwsn_temp__.right = 0; __vwsn_temp__.bottom = 0; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_36)->SetText(::vl::WString(L"Large 1", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_35)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_36)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->flowLayout)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_35))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_38 = new ::vl::presentation::compositions::GuiFlowItemComposition()); + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateButtonStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_39 = new ::vl::presentation::controls::GuiButton(__vwsn_controlStyle_)); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_40 = ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_39)->GetBoundsComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_40)->SetPreferredMinSize([&](){ ::vl::presentation::Size __vwsn_temp__; __vwsn_temp__.x = 75; __vwsn_temp__.y = 75; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_40)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = 0; __vwsn_temp__.top = 0; __vwsn_temp__.right = 0; __vwsn_temp__.bottom = 0; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_39)->SetText(::vl::WString(L"Medium 1", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_38)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_39)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->flowLayout)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_38))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_41 = new ::vl::presentation::compositions::GuiFlowItemComposition()); + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateButtonStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_42 = new ::vl::presentation::controls::GuiButton(__vwsn_controlStyle_)); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_43 = ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_42)->GetBoundsComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_43)->SetPreferredMinSize([&](){ ::vl::presentation::Size __vwsn_temp__; __vwsn_temp__.x = 50; __vwsn_temp__.y = 50; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_43)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = 0; __vwsn_temp__.top = 0; __vwsn_temp__.right = 0; __vwsn_temp__.bottom = 0; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_42)->SetText(::vl::WString(L"Small 1", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_41)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_42)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->flowLayout)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_41))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_44 = new ::vl::presentation::compositions::GuiFlowItemComposition()); + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateButtonStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_45 = new ::vl::presentation::controls::GuiButton(__vwsn_controlStyle_)); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_46 = ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_45)->GetBoundsComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_46)->SetPreferredMinSize([&](){ ::vl::presentation::Size __vwsn_temp__; __vwsn_temp__.x = 100; __vwsn_temp__.y = 100; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_46)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = 0; __vwsn_temp__.top = 0; __vwsn_temp__.right = 0; __vwsn_temp__.bottom = 0; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_45)->SetText(::vl::WString(L"Large 2", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_44)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_45)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->flowLayout)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_44))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_47 = new ::vl::presentation::compositions::GuiFlowItemComposition()); + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateButtonStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_48 = new ::vl::presentation::controls::GuiButton(__vwsn_controlStyle_)); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_49 = ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_48)->GetBoundsComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_49)->SetPreferredMinSize([&](){ ::vl::presentation::Size __vwsn_temp__; __vwsn_temp__.x = 75; __vwsn_temp__.y = 75; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_49)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = 0; __vwsn_temp__.top = 0; __vwsn_temp__.right = 0; __vwsn_temp__.bottom = 0; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_48)->SetText(::vl::WString(L"Medium 2", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_47)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_48)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->flowLayout)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_47))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_50 = new ::vl::presentation::compositions::GuiFlowItemComposition()); + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateButtonStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_51 = new ::vl::presentation::controls::GuiButton(__vwsn_controlStyle_)); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_52 = ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_51)->GetBoundsComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_52)->SetPreferredMinSize([&](){ ::vl::presentation::Size __vwsn_temp__; __vwsn_temp__.x = 50; __vwsn_temp__.y = 50; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_52)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = 0; __vwsn_temp__.top = 0; __vwsn_temp__.right = 0; __vwsn_temp__.bottom = 0; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_51)->SetText(::vl::WString(L"Small 2", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_50)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_51)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->flowLayout)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_50))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_53 = new ::vl::presentation::compositions::GuiFlowItemComposition()); + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateButtonStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_54 = new ::vl::presentation::controls::GuiButton(__vwsn_controlStyle_)); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_55 = ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_54)->GetBoundsComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_55)->SetPreferredMinSize([&](){ ::vl::presentation::Size __vwsn_temp__; __vwsn_temp__.x = 100; __vwsn_temp__.y = 100; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_55)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = 0; __vwsn_temp__.top = 0; __vwsn_temp__.right = 0; __vwsn_temp__.bottom = 0; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_54)->SetText(::vl::WString(L"Large 3", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_53)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_54)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->flowLayout)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_53))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_56 = new ::vl::presentation::compositions::GuiFlowItemComposition()); + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateButtonStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_57 = new ::vl::presentation::controls::GuiButton(__vwsn_controlStyle_)); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_58 = ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_57)->GetBoundsComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_58)->SetPreferredMinSize([&](){ ::vl::presentation::Size __vwsn_temp__; __vwsn_temp__.x = 75; __vwsn_temp__.y = 75; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_58)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = 0; __vwsn_temp__.top = 0; __vwsn_temp__.right = 0; __vwsn_temp__.bottom = 0; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_57)->SetText(::vl::WString(L"Medium 3", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_56)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_57)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->flowLayout)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_56))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_59 = new ::vl::presentation::compositions::GuiFlowItemComposition()); + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateButtonStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_60 = new ::vl::presentation::controls::GuiButton(__vwsn_controlStyle_)); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_61 = ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_60)->GetBoundsComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_61)->SetPreferredMinSize([&](){ ::vl::presentation::Size __vwsn_temp__; __vwsn_temp__.x = 50; __vwsn_temp__.y = 50; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_61)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = 0; __vwsn_temp__.top = 0; __vwsn_temp__.right = 0; __vwsn_temp__.bottom = 0; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_60)->SetText(::vl::WString(L"Small 3", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_59)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_60)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->flowLayout)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_59))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_62 = new ::vl::presentation::compositions::GuiFlowItemComposition()); + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateButtonStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_63 = new ::vl::presentation::controls::GuiButton(__vwsn_controlStyle_)); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_64 = ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_63)->GetBoundsComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_64)->SetPreferredMinSize([&](){ ::vl::presentation::Size __vwsn_temp__; __vwsn_temp__.x = 100; __vwsn_temp__.y = 100; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_64)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = 0; __vwsn_temp__.top = 0; __vwsn_temp__.right = 0; __vwsn_temp__.bottom = 0; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_63)->SetText(::vl::WString(L"Large 4", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_62)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_63)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->flowLayout)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_62))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_65 = new ::vl::presentation::compositions::GuiFlowItemComposition()); + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateButtonStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_66 = new ::vl::presentation::controls::GuiButton(__vwsn_controlStyle_)); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_67 = ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_66)->GetBoundsComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_67)->SetPreferredMinSize([&](){ ::vl::presentation::Size __vwsn_temp__; __vwsn_temp__.x = 75; __vwsn_temp__.y = 75; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_67)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = 0; __vwsn_temp__.top = 0; __vwsn_temp__.right = 0; __vwsn_temp__.bottom = 0; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_66)->SetText(::vl::WString(L"Medium 4", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_65)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_66)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->flowLayout)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_65))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_68 = new ::vl::presentation::compositions::GuiFlowItemComposition()); + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateButtonStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_69 = new ::vl::presentation::controls::GuiButton(__vwsn_controlStyle_)); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_70 = ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_69)->GetBoundsComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_70)->SetPreferredMinSize([&](){ ::vl::presentation::Size __vwsn_temp__; __vwsn_temp__.x = 50; __vwsn_temp__.y = 50; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_70)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = 0; __vwsn_temp__.top = 0; __vwsn_temp__.right = 0; __vwsn_temp__.bottom = 0; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_69)->SetText(::vl::WString(L"Small 4", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_68)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_69)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->flowLayout)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_68))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_34)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->flowLayout))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_1)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_34))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_0)->GetContainerComposition())->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_1))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_5)->SetGroupController(::vl::__vwsn::Ensure(static_cast<::vl::presentation::controls::GuiSelectableButton::GroupController*>(::vl::__vwsn::This(this)->groupAxis))); + } + { + auto __vwsn_event_handler_ = LAMBDA(::vl_workflow_global::__vwsnf1_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_5)->SelectedChanged, __vwsn_event_handler_); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_7)->SetGroupController(::vl::__vwsn::Ensure(static_cast<::vl::presentation::controls::GuiSelectableButton::GroupController*>(::vl::__vwsn::This(this)->groupAxis))); + } + { + auto __vwsn_event_handler_ = LAMBDA(::vl_workflow_global::__vwsnf2_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_7)->SelectedChanged, __vwsn_event_handler_); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_9)->SetGroupController(::vl::__vwsn::Ensure(static_cast<::vl::presentation::controls::GuiSelectableButton::GroupController*>(::vl::__vwsn::This(this)->groupAxis))); + } + { + auto __vwsn_event_handler_ = LAMBDA(::vl_workflow_global::__vwsnf3_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_9)->SelectedChanged, __vwsn_event_handler_); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_11)->SetGroupController(::vl::__vwsn::Ensure(static_cast<::vl::presentation::controls::GuiSelectableButton::GroupController*>(::vl::__vwsn::This(this)->groupAxis))); + } + { + auto __vwsn_event_handler_ = LAMBDA(::vl_workflow_global::__vwsnf4_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_11)->SelectedChanged, __vwsn_event_handler_); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_13)->SetGroupController(::vl::__vwsn::Ensure(static_cast<::vl::presentation::controls::GuiSelectableButton::GroupController*>(::vl::__vwsn::This(this)->groupAxis))); + } + { + auto __vwsn_event_handler_ = LAMBDA(::vl_workflow_global::__vwsnf5_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_13)->SelectedChanged, __vwsn_event_handler_); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_15)->SetGroupController(::vl::__vwsn::Ensure(static_cast<::vl::presentation::controls::GuiSelectableButton::GroupController*>(::vl::__vwsn::This(this)->groupAxis))); + } + { + auto __vwsn_event_handler_ = LAMBDA(::vl_workflow_global::__vwsnf6_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_15)->SelectedChanged, __vwsn_event_handler_); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_17)->SetGroupController(::vl::__vwsn::Ensure(static_cast<::vl::presentation::controls::GuiSelectableButton::GroupController*>(::vl::__vwsn::This(this)->groupAxis))); + } + { + auto __vwsn_event_handler_ = LAMBDA(::vl_workflow_global::__vwsnf7_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_17)->SelectedChanged, __vwsn_event_handler_); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_19)->SetGroupController(::vl::__vwsn::Ensure(static_cast<::vl::presentation::controls::GuiSelectableButton::GroupController*>(::vl::__vwsn::This(this)->groupAxis))); + } + { + auto __vwsn_event_handler_ = LAMBDA(::vl_workflow_global::__vwsnf8_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_19)->SelectedChanged, __vwsn_event_handler_); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_25)->SetGroupController(::vl::__vwsn::Ensure(static_cast<::vl::presentation::controls::GuiSelectableButton::GroupController*>(::vl::__vwsn::This(this)->groupAlignment))); + } + { + auto __vwsn_event_handler_ = LAMBDA(::vl_workflow_global::__vwsnf9_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_25)->SelectedChanged, __vwsn_event_handler_); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_27)->SetGroupController(::vl::__vwsn::Ensure(static_cast<::vl::presentation::controls::GuiSelectableButton::GroupController*>(::vl::__vwsn::This(this)->groupAlignment))); + } + { + auto __vwsn_event_handler_ = LAMBDA(::vl_workflow_global::__vwsnf10_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_27)->SelectedChanged, __vwsn_event_handler_); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_29)->SetGroupController(::vl::__vwsn::Ensure(static_cast<::vl::presentation::controls::GuiSelectableButton::GroupController*>(::vl::__vwsn::This(this)->groupAlignment))); + } + { + auto __vwsn_event_handler_ = LAMBDA(::vl_workflow_global::__vwsnf11_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_29)->SelectedChanged, __vwsn_event_handler_); + } + { + auto __vwsn_event_handler_ = LAMBDA(::vl_workflow_global::__vwsnf12_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_36)->Clicked, __vwsn_event_handler_); + } + { + auto __vwsn_event_handler_ = LAMBDA(::vl_workflow_global::__vwsnf13_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_39)->Clicked, __vwsn_event_handler_); + } + { + auto __vwsn_event_handler_ = LAMBDA(::vl_workflow_global::__vwsnf14_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_42)->Clicked, __vwsn_event_handler_); + } + { + auto __vwsn_event_handler_ = LAMBDA(::vl_workflow_global::__vwsnf15_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_45)->Clicked, __vwsn_event_handler_); + } + { + auto __vwsn_event_handler_ = LAMBDA(::vl_workflow_global::__vwsnf16_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_48)->Clicked, __vwsn_event_handler_); + } + { + auto __vwsn_event_handler_ = LAMBDA(::vl_workflow_global::__vwsnf17_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_51)->Clicked, __vwsn_event_handler_); + } + { + auto __vwsn_event_handler_ = LAMBDA(::vl_workflow_global::__vwsnf18_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_54)->Clicked, __vwsn_event_handler_); + } + { + auto __vwsn_event_handler_ = LAMBDA(::vl_workflow_global::__vwsnf19_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_57)->Clicked, __vwsn_event_handler_); + } + { + auto __vwsn_event_handler_ = LAMBDA(::vl_workflow_global::__vwsnf20_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_60)->Clicked, __vwsn_event_handler_); + } + { + auto __vwsn_event_handler_ = LAMBDA(::vl_workflow_global::__vwsnf21_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_63)->Clicked, __vwsn_event_handler_); + } + { + auto __vwsn_event_handler_ = LAMBDA(::vl_workflow_global::__vwsnf22_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_66)->Clicked, __vwsn_event_handler_); + } + { + auto __vwsn_event_handler_ = LAMBDA(::vl_workflow_global::__vwsnf23_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_69)->Clicked, __vwsn_event_handler_); + } + } - void MainWindow::OnCreate() + MainWindowConstructor::MainWindowConstructor() { } - void MainWindow::OnDestroy() - { - } - - // #endregion CLASS_MEMBER_GUIEVENT_HANDLER +/*********************************************************************** +Class (::demo::MainWindow) +***********************************************************************/ MainWindow::MainWindow() + : ::vl::presentation::controls::GuiWindow(::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateWindowStyle()) { - InitializeComponents(); - OnCreate(); + auto __vwsn_resource_ = ::vl::__vwsn::This(::vl::presentation::GetResourceManager())->GetResourceFromClassName(::vl::WString(L"demo::MainWindow", 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)->__vwsn_initialize_instance_(this, ::vl::__vwsn::Ensure(static_cast<::vl::presentation::GuiResourcePathResolver*>(__vwsn_resolver_.Obj()))); } MainWindow::~MainWindow() { - OnDestroy(); - ClearSubscriptions(); + ::vl::__vwsn::This(this)->ClearSubscriptions(); } -} +} +#undef GLOBAL_SYMBOL +#undef GLOBAL_NAME +#undef GLOBAL_OBJ +#undef USERIMPL + +/*********************************************************************** +Reflection +***********************************************************************/ namespace vl { @@ -44,47 +1516,130 @@ namespace vl { namespace description { - #define _ , - IMPL_CPP_TYPE_INFO(demo::MainWindow) +#ifndef VCZH_DEBUG_NO_REFLECTION + IMPL_CPP_TYPE_INFO(::demo::MainWindow) + IMPL_CPP_TYPE_INFO(::demo::MainWindowConstructor) - BEGIN_CLASS_MEMBER(demo::MainWindow) - CLASS_MEMBER_BASE(::vl::presentation::controls::GuiWindow) - CLASS_MEMBER_CONSTRUCTOR(demo::MainWindow*(), NO_PARAMETER) - END_CLASS_MEMBER(demo::MainWindow) +#define _ , + BEGIN_CLASS_MEMBER(::demo::MainWindow) + END_CLASS_MEMBER(::demo::MainWindow) - #undef _ + BEGIN_CLASS_MEMBER(::demo::MainWindowConstructor) + CLASS_MEMBER_METHOD(__vwsn_initialize_instance_, { L"__vwsn_this_" _ L"__vwsn_resolver_" }) + CLASS_MEMBER_FIELD(__vwsn_precompile_0) + CLASS_MEMBER_FIELD(__vwsn_precompile_1) + CLASS_MEMBER_FIELD(__vwsn_precompile_10) + CLASS_MEMBER_FIELD(__vwsn_precompile_11) + CLASS_MEMBER_FIELD(__vwsn_precompile_12) + CLASS_MEMBER_FIELD(__vwsn_precompile_13) + CLASS_MEMBER_FIELD(__vwsn_precompile_14) + CLASS_MEMBER_FIELD(__vwsn_precompile_15) + CLASS_MEMBER_FIELD(__vwsn_precompile_16) + CLASS_MEMBER_FIELD(__vwsn_precompile_17) + CLASS_MEMBER_FIELD(__vwsn_precompile_18) + CLASS_MEMBER_FIELD(__vwsn_precompile_19) + CLASS_MEMBER_FIELD(__vwsn_precompile_2) + CLASS_MEMBER_FIELD(__vwsn_precompile_20) + CLASS_MEMBER_FIELD(__vwsn_precompile_21) + CLASS_MEMBER_FIELD(__vwsn_precompile_22) + CLASS_MEMBER_FIELD(__vwsn_precompile_23) + CLASS_MEMBER_FIELD(__vwsn_precompile_24) + CLASS_MEMBER_FIELD(__vwsn_precompile_25) + CLASS_MEMBER_FIELD(__vwsn_precompile_26) + CLASS_MEMBER_FIELD(__vwsn_precompile_27) + CLASS_MEMBER_FIELD(__vwsn_precompile_28) + CLASS_MEMBER_FIELD(__vwsn_precompile_29) + CLASS_MEMBER_FIELD(__vwsn_precompile_3) + CLASS_MEMBER_FIELD(__vwsn_precompile_30) + CLASS_MEMBER_FIELD(__vwsn_precompile_31) + CLASS_MEMBER_FIELD(__vwsn_precompile_32) + CLASS_MEMBER_FIELD(__vwsn_precompile_33) + CLASS_MEMBER_FIELD(__vwsn_precompile_34) + CLASS_MEMBER_FIELD(__vwsn_precompile_35) + CLASS_MEMBER_FIELD(__vwsn_precompile_36) + CLASS_MEMBER_FIELD(__vwsn_precompile_37) + CLASS_MEMBER_FIELD(__vwsn_precompile_38) + CLASS_MEMBER_FIELD(__vwsn_precompile_39) + CLASS_MEMBER_FIELD(__vwsn_precompile_4) + CLASS_MEMBER_FIELD(__vwsn_precompile_40) + CLASS_MEMBER_FIELD(__vwsn_precompile_41) + CLASS_MEMBER_FIELD(__vwsn_precompile_42) + CLASS_MEMBER_FIELD(__vwsn_precompile_43) + CLASS_MEMBER_FIELD(__vwsn_precompile_44) + CLASS_MEMBER_FIELD(__vwsn_precompile_45) + CLASS_MEMBER_FIELD(__vwsn_precompile_46) + CLASS_MEMBER_FIELD(__vwsn_precompile_47) + CLASS_MEMBER_FIELD(__vwsn_precompile_48) + CLASS_MEMBER_FIELD(__vwsn_precompile_49) + CLASS_MEMBER_FIELD(__vwsn_precompile_5) + CLASS_MEMBER_FIELD(__vwsn_precompile_50) + CLASS_MEMBER_FIELD(__vwsn_precompile_51) + CLASS_MEMBER_FIELD(__vwsn_precompile_52) + CLASS_MEMBER_FIELD(__vwsn_precompile_53) + CLASS_MEMBER_FIELD(__vwsn_precompile_54) + CLASS_MEMBER_FIELD(__vwsn_precompile_55) + CLASS_MEMBER_FIELD(__vwsn_precompile_56) + CLASS_MEMBER_FIELD(__vwsn_precompile_57) + CLASS_MEMBER_FIELD(__vwsn_precompile_58) + CLASS_MEMBER_FIELD(__vwsn_precompile_59) + CLASS_MEMBER_FIELD(__vwsn_precompile_6) + CLASS_MEMBER_FIELD(__vwsn_precompile_60) + CLASS_MEMBER_FIELD(__vwsn_precompile_61) + CLASS_MEMBER_FIELD(__vwsn_precompile_62) + CLASS_MEMBER_FIELD(__vwsn_precompile_63) + CLASS_MEMBER_FIELD(__vwsn_precompile_64) + CLASS_MEMBER_FIELD(__vwsn_precompile_65) + CLASS_MEMBER_FIELD(__vwsn_precompile_66) + CLASS_MEMBER_FIELD(__vwsn_precompile_67) + CLASS_MEMBER_FIELD(__vwsn_precompile_68) + CLASS_MEMBER_FIELD(__vwsn_precompile_69) + CLASS_MEMBER_FIELD(__vwsn_precompile_7) + CLASS_MEMBER_FIELD(__vwsn_precompile_70) + CLASS_MEMBER_FIELD(__vwsn_precompile_71) + CLASS_MEMBER_FIELD(__vwsn_precompile_72) + CLASS_MEMBER_FIELD(__vwsn_precompile_8) + CLASS_MEMBER_FIELD(__vwsn_precompile_9) + CLASS_MEMBER_FIELD(flowLayout) + CLASS_MEMBER_FIELD(groupAlignment) + CLASS_MEMBER_FIELD(groupAxis) + CLASS_MEMBER_FIELD(groupBoxAlignment) + CLASS_MEMBER_FIELD(groupBoxAxis) + END_CLASS_MEMBER(::demo::MainWindowConstructor) - class DemoResourceLoader : public Object, public ITypeLoader +#undef _ + class DemoTypeLoader : public Object, public ITypeLoader { public: void Load(ITypeManager* manager) { - ADD_TYPE_INFO(demo::MainWindow) + ADD_TYPE_INFO(::demo::MainWindow) + ADD_TYPE_INFO(::demo::MainWindowConstructor) } void Unload(ITypeManager* manager) { } }; +#endif - class DemoResourcePlugin : public Object, public vl::presentation::controls::IGuiPlugin + bool LoadDemoTypes() { - public: - void Load()override +#ifndef VCZH_DEBUG_NO_REFLECTION + if (auto manager = GetGlobalTypeManager()) { - GetGlobalTypeManager()->AddTypeLoader(new DemoResourceLoader); + return manager->AddTypeLoader(MakePtr()); } - - void AfterLoad()override - { - } - - void Unload()override - { - } - }; - GUI_REGISTER_PLUGIN(DemoResourcePlugin) +#endif + return false; + } } } } +#if defined( _MSC_VER) +#pragma warning(pop) +#elif defined(__GNUC__) +#pragma GCC diagnostic pop +#elif defined(__clang__) +#pragma clang diagnostic pop +#endif diff --git a/Tutorial/GacUI_Layout/Flow/UI/Source/DemoPartialClasses.h b/Tutorial/GacUI_Layout/Flow/UI/Source/DemoPartialClasses.h index 00ec40e3..46a68fea 100644 --- a/Tutorial/GacUI_Layout/Flow/UI/Source/DemoPartialClasses.h +++ b/Tutorial/GacUI_Layout/Flow/UI/Source/DemoPartialClasses.h @@ -1,91 +1,226 @@ -/*********************************************************************** -Vczh Library++ 3.0 -Developer: Zihan Chen(vczh) -GacUI::Partial Classes +/*********************************************************************** +!!!!!! DO NOT MODIFY !!!!!! -This file is generated by: Vczh GacUI Resource Code Generator -************************************************************************ -DO NOT MODIFY +GacGen.exe Resource.xml + +This file is generated by Workflow compiler +https://github.com/vczh-libraries ***********************************************************************/ -#ifndef VCZH_GACUI_RESOURCE_CODE_GENERATOR_Demo_PARTIAL_CLASSES -#define VCZH_GACUI_RESOURCE_CODE_GENERATOR_Demo_PARTIAL_CLASSES +#ifndef VCZH_WORKFLOW_COMPILER_GENERATED_DEMOPARTIALCLASSES +#define VCZH_WORKFLOW_COMPILER_GENERATED_DEMOPARTIALCLASSES -#include "GacUIReflection.h" + +#if defined( _MSC_VER) +#pragma warning(push) +#pragma warning(disable:4250) +#elif defined(__GNUC__) +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wparentheses-equality" +#elif defined(__clang__) +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wparentheses-equality" +#endif + +namespace vl_workflow_global +{ + struct __vwsnf10_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + struct __vwsnf11_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + struct __vwsnf12_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + struct __vwsnf13_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + struct __vwsnf14_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + struct __vwsnf15_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + struct __vwsnf16_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + struct __vwsnf17_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + struct __vwsnf18_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + struct __vwsnf19_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + struct __vwsnf1_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + struct __vwsnf20_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + struct __vwsnf21_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + struct __vwsnf22_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + struct __vwsnf23_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + struct __vwsnf2_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + struct __vwsnf3_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + struct __vwsnf4_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + struct __vwsnf5_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + struct __vwsnf6_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + struct __vwsnf7_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + struct __vwsnf8_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + struct __vwsnf9_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; +} namespace demo { + class MainWindowConstructor; class MainWindow; - template - class MainWindow_ : public ::vl::presentation::controls::GuiWindow, public vl::presentation::GuiInstancePartialClass, public vl::reflection::Description + class MainWindowConstructor : public ::vl::Object, public ::vl::reflection::Description { - friend struct vl::reflection::description::CustomTypeDescriptorSelector; - private: + friend struct ::vl_workflow_global::__vwsnf10_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf11_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf12_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf13_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf14_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf15_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf16_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf17_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf18_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf19_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf1_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf20_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf21_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf22_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf23_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf2_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf3_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf4_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf5_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf6_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf7_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf8_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf9_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; +#ifndef VCZH_DEBUG_NO_REFLECTION + friend struct ::vl::reflection::description::CustomTypeDescriptorSelector; +#endif protected: - ::vl::presentation::compositions::GuiFlowComposition* flowLayout; - ::vl::presentation::controls::GuiSelectableButton::MutexGroupController* groupAlignment; - ::vl::presentation::controls::GuiSelectableButton::MutexGroupController* groupAxis; - ::vl::presentation::controls::GuiControl* groupBoxAlignment; - ::vl::presentation::controls::GuiControl* groupBoxAxis; - - void InitializeComponents() - { - if (InitializeFromResource()) - { - GUI_INSTANCE_REFERENCE(flowLayout); - GUI_INSTANCE_REFERENCE(groupAlignment); - GUI_INSTANCE_REFERENCE(groupAxis); - GUI_INSTANCE_REFERENCE(groupBoxAlignment); - GUI_INSTANCE_REFERENCE(groupBoxAxis); - } - else - { - } - } + ::vl::presentation::controls::GuiSelectableButton::MutexGroupController* groupAxis = static_cast<::vl::presentation::controls::GuiSelectableButton::MutexGroupController*>(nullptr); + ::vl::presentation::controls::GuiSelectableButton::MutexGroupController* groupAlignment = static_cast<::vl::presentation::controls::GuiSelectableButton::MutexGroupController*>(nullptr); + ::vl::presentation::controls::GuiControl* groupBoxAxis = static_cast<::vl::presentation::controls::GuiControl*>(nullptr); + ::vl::presentation::controls::GuiControl* groupBoxAlignment = static_cast<::vl::presentation::controls::GuiControl*>(nullptr); + ::vl::presentation::compositions::GuiFlowComposition* flowLayout = static_cast<::vl::presentation::compositions::GuiFlowComposition*>(nullptr); + ::demo::MainWindow* __vwsn_precompile_0 = static_cast<::demo::MainWindow*>(nullptr); + ::vl::presentation::compositions::GuiTableComposition* __vwsn_precompile_1 = static_cast<::vl::presentation::compositions::GuiTableComposition*>(nullptr); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_2 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::presentation::compositions::GuiTableComposition* __vwsn_precompile_3 = static_cast<::vl::presentation::compositions::GuiTableComposition*>(nullptr); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_4 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::presentation::controls::GuiSelectableButton* __vwsn_precompile_5 = static_cast<::vl::presentation::controls::GuiSelectableButton*>(nullptr); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_6 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::presentation::controls::GuiSelectableButton* __vwsn_precompile_7 = static_cast<::vl::presentation::controls::GuiSelectableButton*>(nullptr); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_8 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::presentation::controls::GuiSelectableButton* __vwsn_precompile_9 = static_cast<::vl::presentation::controls::GuiSelectableButton*>(nullptr); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_10 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::presentation::controls::GuiSelectableButton* __vwsn_precompile_11 = static_cast<::vl::presentation::controls::GuiSelectableButton*>(nullptr); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_12 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::presentation::controls::GuiSelectableButton* __vwsn_precompile_13 = static_cast<::vl::presentation::controls::GuiSelectableButton*>(nullptr); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_14 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::presentation::controls::GuiSelectableButton* __vwsn_precompile_15 = static_cast<::vl::presentation::controls::GuiSelectableButton*>(nullptr); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_16 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::presentation::controls::GuiSelectableButton* __vwsn_precompile_17 = static_cast<::vl::presentation::controls::GuiSelectableButton*>(nullptr); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_18 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::presentation::controls::GuiSelectableButton* __vwsn_precompile_19 = static_cast<::vl::presentation::controls::GuiSelectableButton*>(nullptr); + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_20 = static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr); + ::vl::presentation::compositions::GuiGraphicsComposition* __vwsn_precompile_21 = static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(nullptr); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_22 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::presentation::compositions::GuiTableComposition* __vwsn_precompile_23 = static_cast<::vl::presentation::compositions::GuiTableComposition*>(nullptr); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_24 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::presentation::controls::GuiSelectableButton* __vwsn_precompile_25 = static_cast<::vl::presentation::controls::GuiSelectableButton*>(nullptr); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_26 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::presentation::controls::GuiSelectableButton* __vwsn_precompile_27 = static_cast<::vl::presentation::controls::GuiSelectableButton*>(nullptr); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_28 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::presentation::controls::GuiSelectableButton* __vwsn_precompile_29 = static_cast<::vl::presentation::controls::GuiSelectableButton*>(nullptr); + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_30 = static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr); + ::vl::presentation::compositions::GuiGraphicsComposition* __vwsn_precompile_31 = static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(nullptr); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_32 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::presentation::controls::GuiLabel* __vwsn_precompile_33 = static_cast<::vl::presentation::controls::GuiLabel*>(nullptr); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_34 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::presentation::compositions::GuiFlowItemComposition* __vwsn_precompile_35 = static_cast<::vl::presentation::compositions::GuiFlowItemComposition*>(nullptr); + ::vl::presentation::controls::GuiButton* __vwsn_precompile_36 = static_cast<::vl::presentation::controls::GuiButton*>(nullptr); + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_37 = static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr); + ::vl::presentation::compositions::GuiFlowItemComposition* __vwsn_precompile_38 = static_cast<::vl::presentation::compositions::GuiFlowItemComposition*>(nullptr); + ::vl::presentation::controls::GuiButton* __vwsn_precompile_39 = static_cast<::vl::presentation::controls::GuiButton*>(nullptr); + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_40 = static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr); + ::vl::presentation::compositions::GuiFlowItemComposition* __vwsn_precompile_41 = static_cast<::vl::presentation::compositions::GuiFlowItemComposition*>(nullptr); + ::vl::presentation::controls::GuiButton* __vwsn_precompile_42 = static_cast<::vl::presentation::controls::GuiButton*>(nullptr); + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_43 = static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr); + ::vl::presentation::compositions::GuiFlowItemComposition* __vwsn_precompile_44 = static_cast<::vl::presentation::compositions::GuiFlowItemComposition*>(nullptr); + ::vl::presentation::controls::GuiButton* __vwsn_precompile_45 = static_cast<::vl::presentation::controls::GuiButton*>(nullptr); + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_46 = static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr); + ::vl::presentation::compositions::GuiFlowItemComposition* __vwsn_precompile_47 = static_cast<::vl::presentation::compositions::GuiFlowItemComposition*>(nullptr); + ::vl::presentation::controls::GuiButton* __vwsn_precompile_48 = static_cast<::vl::presentation::controls::GuiButton*>(nullptr); + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_49 = static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr); + ::vl::presentation::compositions::GuiFlowItemComposition* __vwsn_precompile_50 = static_cast<::vl::presentation::compositions::GuiFlowItemComposition*>(nullptr); + ::vl::presentation::controls::GuiButton* __vwsn_precompile_51 = static_cast<::vl::presentation::controls::GuiButton*>(nullptr); + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_52 = static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr); + ::vl::presentation::compositions::GuiFlowItemComposition* __vwsn_precompile_53 = static_cast<::vl::presentation::compositions::GuiFlowItemComposition*>(nullptr); + ::vl::presentation::controls::GuiButton* __vwsn_precompile_54 = static_cast<::vl::presentation::controls::GuiButton*>(nullptr); + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_55 = static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr); + ::vl::presentation::compositions::GuiFlowItemComposition* __vwsn_precompile_56 = static_cast<::vl::presentation::compositions::GuiFlowItemComposition*>(nullptr); + ::vl::presentation::controls::GuiButton* __vwsn_precompile_57 = static_cast<::vl::presentation::controls::GuiButton*>(nullptr); + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_58 = static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr); + ::vl::presentation::compositions::GuiFlowItemComposition* __vwsn_precompile_59 = static_cast<::vl::presentation::compositions::GuiFlowItemComposition*>(nullptr); + ::vl::presentation::controls::GuiButton* __vwsn_precompile_60 = static_cast<::vl::presentation::controls::GuiButton*>(nullptr); + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_61 = static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr); + ::vl::presentation::compositions::GuiFlowItemComposition* __vwsn_precompile_62 = static_cast<::vl::presentation::compositions::GuiFlowItemComposition*>(nullptr); + ::vl::presentation::controls::GuiButton* __vwsn_precompile_63 = static_cast<::vl::presentation::controls::GuiButton*>(nullptr); + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_64 = static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr); + ::vl::presentation::compositions::GuiFlowItemComposition* __vwsn_precompile_65 = static_cast<::vl::presentation::compositions::GuiFlowItemComposition*>(nullptr); + ::vl::presentation::controls::GuiButton* __vwsn_precompile_66 = static_cast<::vl::presentation::controls::GuiButton*>(nullptr); + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_67 = static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr); + ::vl::presentation::compositions::GuiFlowItemComposition* __vwsn_precompile_68 = static_cast<::vl::presentation::compositions::GuiFlowItemComposition*>(nullptr); + ::vl::presentation::controls::GuiButton* __vwsn_precompile_69 = static_cast<::vl::presentation::controls::GuiButton*>(nullptr); + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_70 = static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr); + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_71 = static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr); + ::vl::presentation::compositions::GuiGraphicsComposition* __vwsn_precompile_72 = static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(nullptr); + void __vwsn_initialize_instance_(::demo::MainWindow* __vwsn_this_, ::vl::presentation::GuiResourcePathResolver* __vwsn_resolver_); public: - MainWindow_() - :vl::presentation::GuiInstancePartialClass<::vl::presentation::controls::GuiWindow>(L"demo::MainWindow") - ,::vl::presentation::controls::GuiWindow(vl::presentation::theme::GetCurrentTheme()->CreateWindowStyle()) - ,flowLayout(0) - ,groupAlignment(0) - ,groupAxis(0) - ,groupBoxAlignment(0) - ,groupBoxAxis(0) - { - } + MainWindowConstructor(); }; -} -namespace vl -{ - namespace reflection + class MainWindow : public ::vl::presentation::controls::GuiWindow, public ::demo::MainWindowConstructor, public ::vl::reflection::Description { - namespace description - { - DECL_TYPE_INFO(demo::MainWindow) - - } - } -} -namespace demo -{ - class MainWindow : public demo::MainWindow_ - { - friend class demo::MainWindow_; - friend struct vl::reflection::description::CustomTypeDescriptorSelector; - protected: - - // #region CLASS_MEMBER_GUIEVENT_HANDLER (DO NOT PUT OTHER CONTENT IN THIS #region.) - void OnCreate(); - void OnDestroy(); - // #endregion CLASS_MEMBER_GUIEVENT_HANDLER + friend class ::demo::MainWindowConstructor; + friend struct ::vl_workflow_global::__vwsnf10_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf11_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf12_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf13_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf14_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf15_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf16_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf17_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf18_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf19_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf1_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf20_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf21_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf22_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf23_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf2_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf3_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf4_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf5_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf6_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf7_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf8_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf9_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; +#ifndef VCZH_DEBUG_NO_REFLECTION + friend struct ::vl::reflection::description::CustomTypeDescriptorSelector; +#endif public: MainWindow(); ~MainWindow(); }; + +} +/*********************************************************************** +Global Variables and Functions +***********************************************************************/ + +namespace vl_workflow_global +{ + class Demo + { + public: + + static Demo& Instance(); + }; } - +#if defined( _MSC_VER) +#pragma warning(pop) +#elif defined(__GNUC__) +#pragma GCC diagnostic pop +#elif defined(__clang__) +#pragma clang diagnostic pop +#endif #endif diff --git a/Tutorial/GacUI_Layout/GacUI_Layout.sln b/Tutorial/GacUI_Layout/GacUI_Layout.sln index c4052de2..40d84181 100644 --- a/Tutorial/GacUI_Layout/GacUI_Layout.sln +++ b/Tutorial/GacUI_Layout/GacUI_Layout.sln @@ -1,7 +1,7 @@  Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio 2013 -VisualStudioVersion = 12.0.21005.1 +# Visual Studio 14 +VisualStudioVersion = 14.0.25420.1 MinimumVisualStudioVersion = 10.0.40219.1 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Alignment", "Alignment\Alignment.vcxproj", "{5250F07C-55C7-45F6-91E0-438792FB28DC}" EndProject @@ -9,8 +9,6 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Lib", "Lib", "{31A1319F-F66 EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "GacUILite", "..\Lib\GacUILite\GacUILite.vcxproj", "{96C559CA-9718-4BEC-A053-28A0AB6A8CA2}" EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "GacUI", "..\Lib\GacUI\GacUI.vcxproj", "{8018D622-66BA-4E65-9D03-BDAC37EA9A54}" -EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Stack", "Stack\Stack.vcxproj", "{29B382EC-47FE-4514-89E1-20DAAB2129A3}" EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Table", "Table\Table.vcxproj", "{EB722167-66B6-4F11-809F-2B20FF2357FC}" @@ -35,10 +33,6 @@ Global {96C559CA-9718-4BEC-A053-28A0AB6A8CA2}.Debug|Win32.Build.0 = Debug|Win32 {96C559CA-9718-4BEC-A053-28A0AB6A8CA2}.Release|Win32.ActiveCfg = Release|Win32 {96C559CA-9718-4BEC-A053-28A0AB6A8CA2}.Release|Win32.Build.0 = Release|Win32 - {8018D622-66BA-4E65-9D03-BDAC37EA9A54}.Debug|Win32.ActiveCfg = Debug|Win32 - {8018D622-66BA-4E65-9D03-BDAC37EA9A54}.Debug|Win32.Build.0 = Debug|Win32 - {8018D622-66BA-4E65-9D03-BDAC37EA9A54}.Release|Win32.ActiveCfg = Release|Win32 - {8018D622-66BA-4E65-9D03-BDAC37EA9A54}.Release|Win32.Build.0 = Release|Win32 {29B382EC-47FE-4514-89E1-20DAAB2129A3}.Debug|Win32.ActiveCfg = Debug|Win32 {29B382EC-47FE-4514-89E1-20DAAB2129A3}.Debug|Win32.Build.0 = Debug|Win32 {29B382EC-47FE-4514-89E1-20DAAB2129A3}.Release|Win32.ActiveCfg = Release|Win32 @@ -65,6 +59,5 @@ Global EndGlobalSection GlobalSection(NestedProjects) = preSolution {96C559CA-9718-4BEC-A053-28A0AB6A8CA2} = {31A1319F-F666-4586-940C-7A05E56C9A59} - {8018D622-66BA-4E65-9D03-BDAC37EA9A54} = {31A1319F-F666-4586-940C-7A05E56C9A59} EndGlobalSection EndGlobal diff --git a/Tutorial/GacUI_Layout/RichTextEmbedding/RichTextEmbedding.vcxproj b/Tutorial/GacUI_Layout/RichTextEmbedding/RichTextEmbedding.vcxproj index 4007ff2c..e3cb9dd3 100644 --- a/Tutorial/GacUI_Layout/RichTextEmbedding/RichTextEmbedding.vcxproj +++ b/Tutorial/GacUI_Layout/RichTextEmbedding/RichTextEmbedding.vcxproj @@ -83,11 +83,6 @@ - - - {8018d622-66ba-4e65-9d03-bdac37ea9a54} - - @@ -100,6 +95,11 @@ + + + {96c559ca-9718-4bec-a053-28a0ab6a8ca2} + + diff --git a/Tutorial/GacUI_Layout/RichTextEmbedding/UI/Resource.xml b/Tutorial/GacUI_Layout/RichTextEmbedding/UI/Resource.xml index 40ce9cd8..3b01640e 100644 --- a/Tutorial/GacUI_Layout/RichTextEmbedding/UI/Resource.xml +++ b/Tutorial/GacUI_Layout/RichTextEmbedding/UI/Resource.xml @@ -2,14 +2,10 @@ - Source - GacUIReflection.h + Source + ..\..\UIRes\RichTextEmbedding.bin + GacUI.h Demo - - - - ..\..\UIRes - RichTextEmbedding.bin @@ -18,7 +14,7 @@ MainWindow.xml diff --git a/Tutorial/GacUI_Layout/RichTextEmbedding/UI/Source/Demo.h b/Tutorial/GacUI_Layout/RichTextEmbedding/UI/Source/Demo.h index febeba0f..70f80eae 100644 --- a/Tutorial/GacUI_Layout/RichTextEmbedding/UI/Source/Demo.h +++ b/Tutorial/GacUI_Layout/RichTextEmbedding/UI/Source/Demo.h @@ -1,16 +1,43 @@ -/*********************************************************************** -Vczh Library++ 3.0 -Developer: Zihan Chen(vczh) -GacUI::Demo +/*********************************************************************** +!!!!!! DO NOT MODIFY !!!!!! -This file is generated by: Vczh GacUI Resource Code Generator -************************************************************************ -DO NOT MODIFY +GacGen.exe Resource.xml + +This file is generated by Workflow compiler +https://github.com/vczh-libraries ***********************************************************************/ -#ifndef VCZH_GACUI_RESOURCE_CODE_GENERATOR_Demo -#define VCZH_GACUI_RESOURCE_CODE_GENERATOR_Demo +#ifndef VCZH_WORKFLOW_COMPILER_GENERATED_DEMO +#define VCZH_WORKFLOW_COMPILER_GENERATED_DEMO #include "DemoPartialClasses.h" +/*********************************************************************** +Reflection +***********************************************************************/ + +namespace vl +{ + namespace reflection + { + namespace description + { +#ifndef VCZH_DEBUG_NO_REFLECTION + DECL_TYPE_INFO(::demo::IViewModel) + DECL_TYPE_INFO(::demo::MainWindow) + DECL_TYPE_INFO(::demo::MainWindowConstructor) + + BEGIN_INTERFACE_PROXY_NOPARENT_SHAREDPTR(::demo::IViewModel) + void OpenUrl(const ::vl::WString& url) override + { + INVOKE_INTERFACE_PROXY(OpenUrl, url); + } + END_INTERFACE_PROXY(::demo::IViewModel) +#endif + + extern bool LoadDemoTypes(); + } + } +} + #endif diff --git a/Tutorial/GacUI_Layout/RichTextEmbedding/UI/Source/DemoPartialClasses.cpp b/Tutorial/GacUI_Layout/RichTextEmbedding/UI/Source/DemoPartialClasses.cpp index f0614a36..a3e471ee 100644 --- a/Tutorial/GacUI_Layout/RichTextEmbedding/UI/Source/DemoPartialClasses.cpp +++ b/Tutorial/GacUI_Layout/RichTextEmbedding/UI/Source/DemoPartialClasses.cpp @@ -1,42 +1,623 @@ -/*********************************************************************** -Vczh Library++ 3.0 -Developer: Zihan Chen(vczh) -GacUI::Partial Classes +/*********************************************************************** +!!!!!! DO NOT MODIFY !!!!!! -This file is generated by: Vczh GacUI Resource Code Generator -************************************************************************ -DO NOT MODIFY +GacGen.exe Resource.xml + +This file is generated by Workflow compiler +https://github.com/vczh-libraries ***********************************************************************/ #include "Demo.h" +#if defined( _MSC_VER) +#pragma warning(push) +#pragma warning(disable:4250) +#elif defined(__GNUC__) +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wparentheses-equality" +#elif defined(__clang__) +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wparentheses-equality" +#endif + +#define GLOBAL_SYMBOL ::vl_workflow_global::Demo:: +#define GLOBAL_NAME ::vl_workflow_global::Demo::Instance(). +#define GLOBAL_OBJ &::vl_workflow_global::Demo::Instance() +#define USERIMPL(...) + +/*********************************************************************** +Global Variables +***********************************************************************/ + +BEGIN_GLOBAL_STORAGE_CLASS(vl_workflow_global_Demo) + vl_workflow_global::Demo instance; + INITIALIZE_GLOBAL_STORAGE_CLASS + FINALIZE_GLOBAL_STORAGE_CLASS +END_GLOBAL_STORAGE_CLASS(vl_workflow_global_Demo) + +namespace vl_workflow_global +{ +/*********************************************************************** +Closure Definitions +***********************************************************************/ + + struct __vwsnf1_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ + { + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnf1_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0); + + void operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const; + }; + + //------------------------------------------------------------------- + + __vwsnf1_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf1_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + } + + void __vwsnf1_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const + { + ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->ViewModel.Obj())->OpenUrl(::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->documentViewer)->GetActiveHyperlinkReference()); + } +/*********************************************************************** +Global Functions +***********************************************************************/ + + Demo& Demo::Instance() + { + return Getvl_workflow_global_Demo().instance; + } +} + +/*********************************************************************** +Class (::demo::MainWindowConstructor) +***********************************************************************/ + namespace demo { - // #region CLASS_MEMBER_GUIEVENT_HANDLER (DO NOT PUT OTHER CONTENT IN THIS #region.) + void MainWindowConstructor::__vwsn_initialize_instance_(::demo::MainWindow* __vwsn_this_, ::vl::presentation::GuiResourcePathResolver* __vwsn_resolver_) + { + (::vl::__vwsn::This(this)->__vwsn_precompile_0 = __vwsn_this_); + (::vl::__vwsn::This(this)->ViewModel = ::vl::__vwsn::This(__vwsn_this_)->GetViewModel()); + (::vl::__vwsn::This(this)->__vwsn_precompile_52 = ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_0)->GetContainerComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_52)->SetMinSizeLimitation(::vl::presentation::compositions::GuiGraphicsComposition::MinSizeLimitation::LimitToElementAndChildren); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_51 = ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_0)->GetBoundsComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_51)->SetPreferredMinSize([&](){ ::vl::presentation::Size __vwsn_temp__; __vwsn_temp__.x = 480; __vwsn_temp__.y = 640; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_0)->SetClientSize([&](){ ::vl::presentation::Size __vwsn_temp__; __vwsn_temp__.x = 480; __vwsn_temp__.y = 320; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_0)->SetText(::vl::WString(L"RichTextEmbedding", false)); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateDocumentViewerStyle(); + (::vl::__vwsn::This(this)->documentViewer = new ::vl::presentation::controls::GuiDocumentViewer(__vwsn_controlStyle_)); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_50 = ::vl::__vwsn::This(::vl::__vwsn::This(this)->documentViewer)->GetBoundsComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_50)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = 5; __vwsn_temp__.top = 5; __vwsn_temp__.right = 5; __vwsn_temp__.bottom = 5; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->documentViewer)->SetEditMode(::vl::presentation::controls::GuiDocumentCommonInterface::EditMode::ViewOnly); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_1 = ::vl::Ptr<::vl::presentation::controls::GuiDocumentItem>(new ::vl::presentation::controls::GuiDocumentItem(::vl::WString(L"Button", false)))); + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateButtonStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_2 = new ::vl::presentation::controls::GuiButton(__vwsn_controlStyle_)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_2)->SetText(::vl::WString(L"Button", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_1.Obj())->GetContainer())->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_2)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->documentViewer)->AddDocumentItem(::vl::__vwsn::This(this)->__vwsn_precompile_1); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_3 = ::vl::Ptr<::vl::presentation::controls::GuiDocumentItem>(new ::vl::presentation::controls::GuiDocumentItem(::vl::WString(L"TreeView", false)))); + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateTreeViewStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_4 = new ::vl::presentation::controls::GuiTreeView(__vwsn_controlStyle_)); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_8 = ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_4)->GetBoundsComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_8)->SetPreferredMinSize([&](){ ::vl::presentation::Size __vwsn_temp__; __vwsn_temp__.x = 200; __vwsn_temp__.y = 100; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_4)->SetVerticalAlwaysVisible(::vl::__vwsn::Parse(::vl::WString(L"false", false))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_4)->SetHorizontalAlwaysVisible(::vl::__vwsn::Parse(::vl::WString(L"false", false))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_5 = ::vl::Ptr<::vl::presentation::controls::tree::MemoryNodeProvider>(new ::vl::presentation::controls::tree::MemoryNodeProvider(::vl::Ptr<::vl::presentation::controls::tree::TreeViewItem>(new ::vl::presentation::controls::tree::TreeViewItem())))); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_5.Obj())->SetExpanding(::vl::__vwsn::Parse(::vl::WString(L"true", false))); + } + { + (::vl::__vwsn::This(::vl::__vwsn::Ensure(::vl::__vwsn::SharedPtrCast<::vl::presentation::controls::tree::TreeViewItem>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_5.Obj())->GetData().Obj())).Obj())->text = ::vl::WString(L"GacUI Renderers", false)); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_5.Obj())->NotifyDataModified(); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_6 = ::vl::Ptr<::vl::presentation::controls::tree::MemoryNodeProvider>(new ::vl::presentation::controls::tree::MemoryNodeProvider(::vl::Ptr<::vl::presentation::controls::tree::TreeViewItem>(new ::vl::presentation::controls::tree::TreeViewItem())))); + { + (::vl::__vwsn::This(::vl::__vwsn::Ensure(::vl::__vwsn::SharedPtrCast<::vl::presentation::controls::tree::TreeViewItem>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_6.Obj())->GetData().Obj())).Obj())->text = ::vl::WString(L"Direct2D", false)); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_6.Obj())->NotifyDataModified(); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_5.Obj())->Children().Obj())->Add(::vl::__vwsn::Box(::vl::__vwsn::This(this)->__vwsn_precompile_6)); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_7 = ::vl::Ptr<::vl::presentation::controls::tree::MemoryNodeProvider>(new ::vl::presentation::controls::tree::MemoryNodeProvider(::vl::Ptr<::vl::presentation::controls::tree::TreeViewItem>(new ::vl::presentation::controls::tree::TreeViewItem())))); + { + (::vl::__vwsn::This(::vl::__vwsn::Ensure(::vl::__vwsn::SharedPtrCast<::vl::presentation::controls::tree::TreeViewItem>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_7.Obj())->GetData().Obj())).Obj())->text = ::vl::WString(L"GDI", false)); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_7.Obj())->NotifyDataModified(); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_5.Obj())->Children().Obj())->Add(::vl::__vwsn::Box(::vl::__vwsn::This(this)->__vwsn_precompile_7)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_4)->Nodes().Obj())->Children().Obj())->Add(::vl::__vwsn::Box(::vl::__vwsn::This(this)->__vwsn_precompile_5)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_3.Obj())->GetContainer())->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_4)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->documentViewer)->AddDocumentItem(::vl::__vwsn::This(this)->__vwsn_precompile_3); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_9 = ::vl::Ptr<::vl::presentation::controls::GuiDocumentItem>(new ::vl::presentation::controls::GuiDocumentItem(::vl::WString(L"Menu", false)))); + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateMenuBarStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_10 = new ::vl::presentation::controls::GuiToolstripMenuBar(__vwsn_controlStyle_)); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateMenuBarButtonStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_11 = new ::vl::presentation::controls::GuiToolstripButton(__vwsn_controlStyle_)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_11)->SetAlt(::vl::WString(L"F", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_11)->SetText(::vl::WString(L"File", false)); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_12 = ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_11)->EnsureToolstripSubMenu()); + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateMenuItemButtonStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_13 = new ::vl::presentation::controls::GuiToolstripButton(__vwsn_controlStyle_)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_13)->SetAlt(::vl::WString(L"N", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_13)->SetText(::vl::WString(L"New", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_12)->GetToolstripItems().Obj())->Add(::vl::__vwsn::Box(::vl::__vwsn::This(this)->__vwsn_precompile_13)); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateMenuItemButtonStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_14 = new ::vl::presentation::controls::GuiToolstripButton(__vwsn_controlStyle_)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_14)->SetAlt(::vl::WString(L"O", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_14)->SetText(::vl::WString(L"Open", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_12)->GetToolstripItems().Obj())->Add(::vl::__vwsn::Box(::vl::__vwsn::This(this)->__vwsn_precompile_14)); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateMenuItemButtonStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_15 = new ::vl::presentation::controls::GuiToolstripButton(__vwsn_controlStyle_)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_15)->SetAlt(::vl::WString(L"S", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_15)->SetText(::vl::WString(L"Save", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_12)->GetToolstripItems().Obj())->Add(::vl::__vwsn::Box(::vl::__vwsn::This(this)->__vwsn_precompile_15)); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateMenuItemButtonStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_16 = new ::vl::presentation::controls::GuiToolstripButton(__vwsn_controlStyle_)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_16)->SetAlt(::vl::WString(L"A", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_16)->SetText(::vl::WString(L"Save As ...", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_12)->GetToolstripItems().Obj())->Add(::vl::__vwsn::Box(::vl::__vwsn::This(this)->__vwsn_precompile_16)); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateMenuSplitterStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_17 = new ::vl::presentation::controls::GuiControl(__vwsn_controlStyle_)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_12)->GetToolstripItems().Obj())->Add(::vl::__vwsn::Box(::vl::__vwsn::This(this)->__vwsn_precompile_17)); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateMenuItemButtonStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_18 = new ::vl::presentation::controls::GuiToolstripButton(__vwsn_controlStyle_)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_18)->SetAlt(::vl::WString(L"X", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_18)->SetText(::vl::WString(L"Exit", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_12)->GetToolstripItems().Obj())->Add(::vl::__vwsn::Box(::vl::__vwsn::This(this)->__vwsn_precompile_18)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_10)->GetToolstripItems().Obj())->Add(::vl::__vwsn::Box(::vl::__vwsn::This(this)->__vwsn_precompile_11)); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateMenuBarButtonStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_19 = new ::vl::presentation::controls::GuiToolstripButton(__vwsn_controlStyle_)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_19)->SetAlt(::vl::WString(L"E", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_19)->SetText(::vl::WString(L"Edit", false)); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_20 = ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_19)->EnsureToolstripSubMenu()); + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateMenuItemButtonStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_21 = new ::vl::presentation::controls::GuiToolstripButton(__vwsn_controlStyle_)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_21)->SetAlt(::vl::WString(L"U", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_21)->SetText(::vl::WString(L"Undo", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_20)->GetToolstripItems().Obj())->Add(::vl::__vwsn::Box(::vl::__vwsn::This(this)->__vwsn_precompile_21)); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateMenuItemButtonStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_22 = new ::vl::presentation::controls::GuiToolstripButton(__vwsn_controlStyle_)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_22)->SetAlt(::vl::WString(L"R", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_22)->SetText(::vl::WString(L"Redo", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_20)->GetToolstripItems().Obj())->Add(::vl::__vwsn::Box(::vl::__vwsn::This(this)->__vwsn_precompile_22)); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateMenuSplitterStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_23 = new ::vl::presentation::controls::GuiControl(__vwsn_controlStyle_)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_20)->GetToolstripItems().Obj())->Add(::vl::__vwsn::Box(::vl::__vwsn::This(this)->__vwsn_precompile_23)); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateMenuItemButtonStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_24 = new ::vl::presentation::controls::GuiToolstripButton(__vwsn_controlStyle_)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_24)->SetAlt(::vl::WString(L"T", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_24)->SetText(::vl::WString(L"Cut", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_20)->GetToolstripItems().Obj())->Add(::vl::__vwsn::Box(::vl::__vwsn::This(this)->__vwsn_precompile_24)); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateMenuItemButtonStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_25 = new ::vl::presentation::controls::GuiToolstripButton(__vwsn_controlStyle_)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_25)->SetAlt(::vl::WString(L"C", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_25)->SetText(::vl::WString(L"Copy", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_20)->GetToolstripItems().Obj())->Add(::vl::__vwsn::Box(::vl::__vwsn::This(this)->__vwsn_precompile_25)); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateMenuItemButtonStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_26 = new ::vl::presentation::controls::GuiToolstripButton(__vwsn_controlStyle_)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_26)->SetAlt(::vl::WString(L"P", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_26)->SetText(::vl::WString(L"Paste", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_20)->GetToolstripItems().Obj())->Add(::vl::__vwsn::Box(::vl::__vwsn::This(this)->__vwsn_precompile_26)); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateMenuSplitterStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_27 = new ::vl::presentation::controls::GuiControl(__vwsn_controlStyle_)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_20)->GetToolstripItems().Obj())->Add(::vl::__vwsn::Box(::vl::__vwsn::This(this)->__vwsn_precompile_27)); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateMenuItemButtonStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_28 = new ::vl::presentation::controls::GuiToolstripButton(__vwsn_controlStyle_)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_28)->SetAlt(::vl::WString(L"A", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_28)->SetText(::vl::WString(L"Select All", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_20)->GetToolstripItems().Obj())->Add(::vl::__vwsn::Box(::vl::__vwsn::This(this)->__vwsn_precompile_28)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_10)->GetToolstripItems().Obj())->Add(::vl::__vwsn::Box(::vl::__vwsn::This(this)->__vwsn_precompile_19)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_9.Obj())->GetContainer())->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_10)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->documentViewer)->AddDocumentItem(::vl::__vwsn::This(this)->__vwsn_precompile_9); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_29 = ::vl::Ptr<::vl::presentation::controls::GuiDocumentItem>(new ::vl::presentation::controls::GuiDocumentItem(::vl::WString(L"Table", false)))); + (::vl::__vwsn::This(this)->__vwsn_precompile_30 = new ::vl::presentation::compositions::GuiTableComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_30)->SetCellPadding(::vl::__vwsn::Parse<::vl::vint32_t>(::vl::WString(L"5", false))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_30)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = 0; __vwsn_temp__.top = 0; __vwsn_temp__.right = 0; __vwsn_temp__.bottom = 0; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_30)->SetRowsAndColumns(3, 3); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_30)->SetRowOption(0, [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_30)->SetRowOption(1, [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_30)->SetRowOption(2, [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_30)->SetColumnOption(0, [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_30)->SetColumnOption(1, [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_30)->SetColumnOption(2, [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_31 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement>(::vl::reflection::description::Element_Constructor<::vl::presentation::elements::GuiSolidBorderElement>())); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_31.Obj())->SetColor(::vl::__vwsn::Parse<::vl::presentation::Color>(::vl::WString(L"#000000", false))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_30)->SetOwnedElement(::vl::__vwsn::Ensure(::vl::Ptr<::vl::presentation::elements::IGuiGraphicsElement>(::vl::__vwsn::This(this)->__vwsn_precompile_31))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_32 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_32)->SetSite(0, 0, 1, 1); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateLabelStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_33 = new ::vl::presentation::controls::GuiLabel(__vwsn_controlStyle_)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_33)->SetText(::vl::WString(L"XOR", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_32)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_33)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_30)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_32))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_34 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_34)->SetSite(0, 1, 1, 1); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateLabelStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_35 = new ::vl::presentation::controls::GuiLabel(__vwsn_controlStyle_)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_35)->SetText(::vl::WString(L"false", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_34)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_35)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_30)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_34))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_36 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_36)->SetSite(0, 2, 1, 1); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateLabelStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_37 = new ::vl::presentation::controls::GuiLabel(__vwsn_controlStyle_)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_37)->SetText(::vl::WString(L"true", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_36)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_37)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_30)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_36))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_38 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_38)->SetSite(1, 0, 1, 1); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateLabelStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_39 = new ::vl::presentation::controls::GuiLabel(__vwsn_controlStyle_)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_39)->SetText(::vl::WString(L"false", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_38)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_39)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_30)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_38))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_40 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_40)->SetSite(1, 1, 1, 1); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateLabelStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_41 = new ::vl::presentation::controls::GuiLabel(__vwsn_controlStyle_)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_41)->SetText(::vl::WString(L"false", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_40)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_41)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_30)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_40))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_42 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_42)->SetSite(1, 2, 1, 1); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateLabelStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_43 = new ::vl::presentation::controls::GuiLabel(__vwsn_controlStyle_)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_43)->SetText(::vl::WString(L"true", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_42)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_43)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_30)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_42))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_44 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_44)->SetSite(2, 0, 1, 1); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateLabelStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_45 = new ::vl::presentation::controls::GuiLabel(__vwsn_controlStyle_)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_45)->SetText(::vl::WString(L"true", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_44)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_45)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_30)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_44))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_46 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_46)->SetSite(2, 1, 1, 1); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateLabelStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_47 = new ::vl::presentation::controls::GuiLabel(__vwsn_controlStyle_)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_47)->SetText(::vl::WString(L"true", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_46)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_47)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_30)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_46))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_48 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_48)->SetSite(2, 2, 1, 1); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateLabelStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_49 = new ::vl::presentation::controls::GuiLabel(__vwsn_controlStyle_)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_49)->SetText(::vl::WString(L"false", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_48)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_49)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_30)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_48))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_29.Obj())->GetContainer())->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_30))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->documentViewer)->AddDocumentItem(::vl::__vwsn::This(this)->__vwsn_precompile_29); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_0)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::controls::GuiControl*>(::vl::__vwsn::This(this)->documentViewer))); + } + { + auto __vwsn_resource_item_ = ::vl::__vwsn::This(__vwsn_resolver_)->ResolveResource(::vl::WString(L"res", false), ::vl::WString(L"EmbeddedDocument/Document", false)); + if ((! static_cast(__vwsn_resource_item_))) + { + throw ::vl::Exception(::vl::WString(L"Resource \"res://EmbeddedDocument/Document\" does not exist.", false)); + } + auto __vwsn_resource_value_ = ::vl::__vwsn::SharedPtrCast<::vl::presentation::DocumentModel>(__vwsn_resource_item_.Obj()); + if ((! static_cast(__vwsn_resource_value_))) + { + throw ::vl::Exception(::vl::WString(L"Resource \"res://EmbeddedDocument/Document\" cannot be read as type \"presentation::DocumentModel\".", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->documentViewer)->SetDocument(__vwsn_resource_value_); + } + } + { + auto __vwsn_event_handler_ = LAMBDA(::vl_workflow_global::__vwsnf1_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(::vl::__vwsn::This(this)->documentViewer)->ActiveHyperlinkExecuted, __vwsn_event_handler_); + } + } - void MainWindow::OnCreate() + MainWindowConstructor::MainWindowConstructor() { } - void MainWindow::OnDestroy() +/*********************************************************************** +Class (::demo::MainWindow) +***********************************************************************/ + + ::vl::Ptr<::demo::IViewModel> MainWindow::GetViewModel() { + return ::vl::__vwsn::This(this)->__vwsn_parameter_ViewModel; } - // #endregion CLASS_MEMBER_GUIEVENT_HANDLER - - MainWindow::MainWindow(vl::Ptr ViewModel) + MainWindow::MainWindow(::vl::Ptr<::demo::IViewModel> __vwsn_ctor_parameter_ViewModel) + : ::vl::presentation::controls::GuiWindow(::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateWindowStyle()) { - InitializeComponents(ViewModel); - OnCreate(); + (::vl::__vwsn::This(this)->__vwsn_parameter_ViewModel = __vwsn_ctor_parameter_ViewModel); + auto __vwsn_resource_ = ::vl::__vwsn::This(::vl::presentation::GetResourceManager())->GetResourceFromClassName(::vl::WString(L"demo::MainWindow", 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)->__vwsn_initialize_instance_(this, ::vl::__vwsn::Ensure(static_cast<::vl::presentation::GuiResourcePathResolver*>(__vwsn_resolver_.Obj()))); } MainWindow::~MainWindow() { - OnDestroy(); - ClearSubscriptions(); + ::vl::__vwsn::This(this)->ClearSubscriptions(); } -} +/*********************************************************************** +Class (::demo::IViewModel) +***********************************************************************/ + +} +#undef GLOBAL_SYMBOL +#undef GLOBAL_NAME +#undef GLOBAL_OBJ +#undef USERIMPL + +/*********************************************************************** +Reflection +***********************************************************************/ namespace vl { @@ -44,56 +625,116 @@ namespace vl { namespace description { - #define _ , - IMPL_CPP_TYPE_INFO(demo::IViewModel) - IMPL_CPP_TYPE_INFO(demo::MainWindow) +#ifndef VCZH_DEBUG_NO_REFLECTION + IMPL_CPP_TYPE_INFO(::demo::IViewModel) + IMPL_CPP_TYPE_INFO(::demo::MainWindow) + IMPL_CPP_TYPE_INFO(::demo::MainWindowConstructor) - BEGIN_CLASS_MEMBER(demo::IViewModel) - CLASS_MEMBER_BASE(::vl::reflection::IDescriptable) - CLASS_MEMBER_METHOD(OpenUrl, { L"url" }); - END_CLASS_MEMBER(demo::IViewModel) +#define _ , + BEGIN_INTERFACE_MEMBER(::demo::IViewModel) + CLASS_MEMBER_METHOD(OpenUrl, { L"url" }) + END_INTERFACE_MEMBER(::demo::IViewModel) - BEGIN_CLASS_MEMBER(demo::MainWindow) - CLASS_MEMBER_BASE(::vl::presentation::controls::GuiWindow) - CLASS_MEMBER_CONSTRUCTOR(demo::MainWindow*(vl::Ptr), { L"ViewModel" }) + BEGIN_CLASS_MEMBER(::demo::MainWindow) + CLASS_MEMBER_METHOD(GetViewModel, NO_PARAMETER) + CLASS_MEMBER_FIELD(__vwsn_parameter_ViewModel) + CLASS_MEMBER_PROPERTY_READONLY(ViewModel, GetViewModel) + END_CLASS_MEMBER(::demo::MainWindow) - CLASS_MEMBER_PROPERTY_READONLY_FAST(ViewModel) - END_CLASS_MEMBER(demo::MainWindow) + BEGIN_CLASS_MEMBER(::demo::MainWindowConstructor) + CLASS_MEMBER_METHOD(__vwsn_initialize_instance_, { L"__vwsn_this_" _ L"__vwsn_resolver_" }) + CLASS_MEMBER_FIELD(__vwsn_precompile_0) + CLASS_MEMBER_FIELD(__vwsn_precompile_1) + CLASS_MEMBER_FIELD(__vwsn_precompile_10) + CLASS_MEMBER_FIELD(__vwsn_precompile_11) + CLASS_MEMBER_FIELD(__vwsn_precompile_12) + CLASS_MEMBER_FIELD(__vwsn_precompile_13) + CLASS_MEMBER_FIELD(__vwsn_precompile_14) + CLASS_MEMBER_FIELD(__vwsn_precompile_15) + CLASS_MEMBER_FIELD(__vwsn_precompile_16) + CLASS_MEMBER_FIELD(__vwsn_precompile_17) + CLASS_MEMBER_FIELD(__vwsn_precompile_18) + CLASS_MEMBER_FIELD(__vwsn_precompile_19) + CLASS_MEMBER_FIELD(__vwsn_precompile_2) + CLASS_MEMBER_FIELD(__vwsn_precompile_20) + CLASS_MEMBER_FIELD(__vwsn_precompile_21) + CLASS_MEMBER_FIELD(__vwsn_precompile_22) + CLASS_MEMBER_FIELD(__vwsn_precompile_23) + CLASS_MEMBER_FIELD(__vwsn_precompile_24) + CLASS_MEMBER_FIELD(__vwsn_precompile_25) + CLASS_MEMBER_FIELD(__vwsn_precompile_26) + CLASS_MEMBER_FIELD(__vwsn_precompile_27) + CLASS_MEMBER_FIELD(__vwsn_precompile_28) + CLASS_MEMBER_FIELD(__vwsn_precompile_29) + CLASS_MEMBER_FIELD(__vwsn_precompile_3) + CLASS_MEMBER_FIELD(__vwsn_precompile_30) + CLASS_MEMBER_FIELD(__vwsn_precompile_31) + CLASS_MEMBER_FIELD(__vwsn_precompile_32) + CLASS_MEMBER_FIELD(__vwsn_precompile_33) + CLASS_MEMBER_FIELD(__vwsn_precompile_34) + CLASS_MEMBER_FIELD(__vwsn_precompile_35) + CLASS_MEMBER_FIELD(__vwsn_precompile_36) + CLASS_MEMBER_FIELD(__vwsn_precompile_37) + CLASS_MEMBER_FIELD(__vwsn_precompile_38) + CLASS_MEMBER_FIELD(__vwsn_precompile_39) + CLASS_MEMBER_FIELD(__vwsn_precompile_4) + CLASS_MEMBER_FIELD(__vwsn_precompile_40) + CLASS_MEMBER_FIELD(__vwsn_precompile_41) + CLASS_MEMBER_FIELD(__vwsn_precompile_42) + CLASS_MEMBER_FIELD(__vwsn_precompile_43) + CLASS_MEMBER_FIELD(__vwsn_precompile_44) + CLASS_MEMBER_FIELD(__vwsn_precompile_45) + CLASS_MEMBER_FIELD(__vwsn_precompile_46) + CLASS_MEMBER_FIELD(__vwsn_precompile_47) + CLASS_MEMBER_FIELD(__vwsn_precompile_48) + CLASS_MEMBER_FIELD(__vwsn_precompile_49) + CLASS_MEMBER_FIELD(__vwsn_precompile_5) + CLASS_MEMBER_FIELD(__vwsn_precompile_50) + CLASS_MEMBER_FIELD(__vwsn_precompile_51) + CLASS_MEMBER_FIELD(__vwsn_precompile_52) + CLASS_MEMBER_FIELD(__vwsn_precompile_6) + CLASS_MEMBER_FIELD(__vwsn_precompile_7) + CLASS_MEMBER_FIELD(__vwsn_precompile_8) + CLASS_MEMBER_FIELD(__vwsn_precompile_9) + CLASS_MEMBER_FIELD(ViewModel) + CLASS_MEMBER_FIELD(documentViewer) + END_CLASS_MEMBER(::demo::MainWindowConstructor) - #undef _ - - class DemoResourceLoader : public Object, public ITypeLoader +#undef _ + class DemoTypeLoader : public Object, public ITypeLoader { public: void Load(ITypeManager* manager) { - ADD_TYPE_INFO(demo::IViewModel) - ADD_TYPE_INFO(demo::MainWindow) + ADD_TYPE_INFO(::demo::IViewModel) + ADD_TYPE_INFO(::demo::MainWindow) + ADD_TYPE_INFO(::demo::MainWindowConstructor) } void Unload(ITypeManager* manager) { } }; +#endif - class DemoResourcePlugin : public Object, public vl::presentation::controls::IGuiPlugin + bool LoadDemoTypes() { - public: - void Load()override +#ifndef VCZH_DEBUG_NO_REFLECTION + if (auto manager = GetGlobalTypeManager()) { - GetGlobalTypeManager()->AddTypeLoader(new DemoResourceLoader); + return manager->AddTypeLoader(MakePtr()); } - - void AfterLoad()override - { - } - - void Unload()override - { - } - }; - GUI_REGISTER_PLUGIN(DemoResourcePlugin) +#endif + return false; + } } } } +#if defined( _MSC_VER) +#pragma warning(pop) +#elif defined(__GNUC__) +#pragma GCC diagnostic pop +#elif defined(__clang__) +#pragma clang diagnostic pop +#endif diff --git a/Tutorial/GacUI_Layout/RichTextEmbedding/UI/Source/DemoPartialClasses.h b/Tutorial/GacUI_Layout/RichTextEmbedding/UI/Source/DemoPartialClasses.h index 3b9b9e0d..efd59fb4 100644 --- a/Tutorial/GacUI_Layout/RichTextEmbedding/UI/Source/DemoPartialClasses.h +++ b/Tutorial/GacUI_Layout/RichTextEmbedding/UI/Source/DemoPartialClasses.h @@ -1,95 +1,149 @@ -/*********************************************************************** -Vczh Library++ 3.0 -Developer: Zihan Chen(vczh) -GacUI::Partial Classes +/*********************************************************************** +!!!!!! DO NOT MODIFY !!!!!! -This file is generated by: Vczh GacUI Resource Code Generator -************************************************************************ -DO NOT MODIFY +GacGen.exe Resource.xml + +This file is generated by Workflow compiler +https://github.com/vczh-libraries ***********************************************************************/ -#ifndef VCZH_GACUI_RESOURCE_CODE_GENERATOR_Demo_PARTIAL_CLASSES -#define VCZH_GACUI_RESOURCE_CODE_GENERATOR_Demo_PARTIAL_CLASSES +#ifndef VCZH_WORKFLOW_COMPILER_GENERATED_DEMOPARTIALCLASSES +#define VCZH_WORKFLOW_COMPILER_GENERATED_DEMOPARTIALCLASSES -#include "GacUIReflection.h" + +#if defined( _MSC_VER) +#pragma warning(push) +#pragma warning(disable:4250) +#elif defined(__GNUC__) +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wparentheses-equality" +#elif defined(__clang__) +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wparentheses-equality" +#endif + +namespace vl_workflow_global +{ + struct __vwsnf1_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; +} namespace demo { - class IViewModel; + class MainWindowConstructor; class MainWindow; + class IViewModel; - class IViewModel : public virtual ::vl::reflection::IDescriptable, public vl::reflection::Description + class MainWindowConstructor : public ::vl::Object, public ::vl::reflection::Description { + friend struct ::vl_workflow_global::__vwsnf1_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; +#ifndef VCZH_DEBUG_NO_REFLECTION + friend struct ::vl::reflection::description::CustomTypeDescriptorSelector; +#endif + protected: + ::vl::Ptr<::demo::IViewModel> ViewModel = ::vl::Ptr<::demo::IViewModel>(); + ::vl::presentation::controls::GuiDocumentViewer* documentViewer = static_cast<::vl::presentation::controls::GuiDocumentViewer*>(nullptr); + ::demo::MainWindow* __vwsn_precompile_0 = static_cast<::demo::MainWindow*>(nullptr); + ::vl::Ptr<::vl::presentation::controls::GuiDocumentItem> __vwsn_precompile_1 = ::vl::Ptr<::vl::presentation::controls::GuiDocumentItem>(); + ::vl::presentation::controls::GuiButton* __vwsn_precompile_2 = static_cast<::vl::presentation::controls::GuiButton*>(nullptr); + ::vl::Ptr<::vl::presentation::controls::GuiDocumentItem> __vwsn_precompile_3 = ::vl::Ptr<::vl::presentation::controls::GuiDocumentItem>(); + ::vl::presentation::controls::GuiTreeView* __vwsn_precompile_4 = static_cast<::vl::presentation::controls::GuiTreeView*>(nullptr); + ::vl::Ptr<::vl::presentation::controls::tree::MemoryNodeProvider> __vwsn_precompile_5 = ::vl::Ptr<::vl::presentation::controls::tree::MemoryNodeProvider>(); + ::vl::Ptr<::vl::presentation::controls::tree::MemoryNodeProvider> __vwsn_precompile_6 = ::vl::Ptr<::vl::presentation::controls::tree::MemoryNodeProvider>(); + ::vl::Ptr<::vl::presentation::controls::tree::MemoryNodeProvider> __vwsn_precompile_7 = ::vl::Ptr<::vl::presentation::controls::tree::MemoryNodeProvider>(); + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_8 = static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr); + ::vl::Ptr<::vl::presentation::controls::GuiDocumentItem> __vwsn_precompile_9 = ::vl::Ptr<::vl::presentation::controls::GuiDocumentItem>(); + ::vl::presentation::controls::GuiToolstripMenuBar* __vwsn_precompile_10 = static_cast<::vl::presentation::controls::GuiToolstripMenuBar*>(nullptr); + ::vl::presentation::controls::GuiToolstripButton* __vwsn_precompile_11 = static_cast<::vl::presentation::controls::GuiToolstripButton*>(nullptr); + ::vl::presentation::controls::GuiToolstripMenu* __vwsn_precompile_12 = static_cast<::vl::presentation::controls::GuiToolstripMenu*>(nullptr); + ::vl::presentation::controls::GuiToolstripButton* __vwsn_precompile_13 = static_cast<::vl::presentation::controls::GuiToolstripButton*>(nullptr); + ::vl::presentation::controls::GuiToolstripButton* __vwsn_precompile_14 = static_cast<::vl::presentation::controls::GuiToolstripButton*>(nullptr); + ::vl::presentation::controls::GuiToolstripButton* __vwsn_precompile_15 = static_cast<::vl::presentation::controls::GuiToolstripButton*>(nullptr); + ::vl::presentation::controls::GuiToolstripButton* __vwsn_precompile_16 = static_cast<::vl::presentation::controls::GuiToolstripButton*>(nullptr); + ::vl::presentation::controls::GuiControl* __vwsn_precompile_17 = static_cast<::vl::presentation::controls::GuiControl*>(nullptr); + ::vl::presentation::controls::GuiToolstripButton* __vwsn_precompile_18 = static_cast<::vl::presentation::controls::GuiToolstripButton*>(nullptr); + ::vl::presentation::controls::GuiToolstripButton* __vwsn_precompile_19 = static_cast<::vl::presentation::controls::GuiToolstripButton*>(nullptr); + ::vl::presentation::controls::GuiToolstripMenu* __vwsn_precompile_20 = static_cast<::vl::presentation::controls::GuiToolstripMenu*>(nullptr); + ::vl::presentation::controls::GuiToolstripButton* __vwsn_precompile_21 = static_cast<::vl::presentation::controls::GuiToolstripButton*>(nullptr); + ::vl::presentation::controls::GuiToolstripButton* __vwsn_precompile_22 = static_cast<::vl::presentation::controls::GuiToolstripButton*>(nullptr); + ::vl::presentation::controls::GuiControl* __vwsn_precompile_23 = static_cast<::vl::presentation::controls::GuiControl*>(nullptr); + ::vl::presentation::controls::GuiToolstripButton* __vwsn_precompile_24 = static_cast<::vl::presentation::controls::GuiToolstripButton*>(nullptr); + ::vl::presentation::controls::GuiToolstripButton* __vwsn_precompile_25 = static_cast<::vl::presentation::controls::GuiToolstripButton*>(nullptr); + ::vl::presentation::controls::GuiToolstripButton* __vwsn_precompile_26 = static_cast<::vl::presentation::controls::GuiToolstripButton*>(nullptr); + ::vl::presentation::controls::GuiControl* __vwsn_precompile_27 = static_cast<::vl::presentation::controls::GuiControl*>(nullptr); + ::vl::presentation::controls::GuiToolstripButton* __vwsn_precompile_28 = static_cast<::vl::presentation::controls::GuiToolstripButton*>(nullptr); + ::vl::Ptr<::vl::presentation::controls::GuiDocumentItem> __vwsn_precompile_29 = ::vl::Ptr<::vl::presentation::controls::GuiDocumentItem>(); + ::vl::presentation::compositions::GuiTableComposition* __vwsn_precompile_30 = static_cast<::vl::presentation::compositions::GuiTableComposition*>(nullptr); + ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement> __vwsn_precompile_31 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement>(); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_32 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::presentation::controls::GuiLabel* __vwsn_precompile_33 = static_cast<::vl::presentation::controls::GuiLabel*>(nullptr); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_34 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::presentation::controls::GuiLabel* __vwsn_precompile_35 = static_cast<::vl::presentation::controls::GuiLabel*>(nullptr); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_36 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::presentation::controls::GuiLabel* __vwsn_precompile_37 = static_cast<::vl::presentation::controls::GuiLabel*>(nullptr); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_38 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::presentation::controls::GuiLabel* __vwsn_precompile_39 = static_cast<::vl::presentation::controls::GuiLabel*>(nullptr); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_40 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::presentation::controls::GuiLabel* __vwsn_precompile_41 = static_cast<::vl::presentation::controls::GuiLabel*>(nullptr); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_42 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::presentation::controls::GuiLabel* __vwsn_precompile_43 = static_cast<::vl::presentation::controls::GuiLabel*>(nullptr); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_44 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::presentation::controls::GuiLabel* __vwsn_precompile_45 = static_cast<::vl::presentation::controls::GuiLabel*>(nullptr); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_46 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::presentation::controls::GuiLabel* __vwsn_precompile_47 = static_cast<::vl::presentation::controls::GuiLabel*>(nullptr); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_48 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::presentation::controls::GuiLabel* __vwsn_precompile_49 = static_cast<::vl::presentation::controls::GuiLabel*>(nullptr); + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_50 = static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr); + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_51 = static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr); + ::vl::presentation::compositions::GuiGraphicsComposition* __vwsn_precompile_52 = static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(nullptr); + void __vwsn_initialize_instance_(::demo::MainWindow* __vwsn_this_, ::vl::presentation::GuiResourcePathResolver* __vwsn_resolver_); public: - virtual void OpenUrl(::vl::WString url) = 0; + MainWindowConstructor(); }; - template - class MainWindow_ : public ::vl::presentation::controls::GuiWindow, public vl::presentation::GuiInstancePartialClass, public vl::reflection::Description + class MainWindow : public ::vl::presentation::controls::GuiWindow, public ::demo::MainWindowConstructor, public ::vl::reflection::Description { - friend struct vl::reflection::description::CustomTypeDescriptorSelector; - private: - vl::Ptr ViewModel_; - protected: - ::vl::presentation::controls::GuiDocumentViewer* documentViewer; - - void InitializeComponents(vl::Ptr ViewModel) - { - ViewModel_ = ViewModel; - if (InitializeFromResource()) - { - GUI_INSTANCE_REFERENCE(documentViewer); - } - else - { - ViewModel_ = 0; - } - } + friend class ::demo::MainWindowConstructor; + friend struct ::vl_workflow_global::__vwsnf1_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; +#ifndef VCZH_DEBUG_NO_REFLECTION + friend struct ::vl::reflection::description::CustomTypeDescriptorSelector; +#endif public: - MainWindow_() - :vl::presentation::GuiInstancePartialClass<::vl::presentation::controls::GuiWindow>(L"demo::MainWindow") - ,::vl::presentation::controls::GuiWindow(vl::presentation::theme::GetCurrentTheme()->CreateWindowStyle()) - ,documentViewer(0) - { - } - - vl::Ptr GetViewModel() - { - return ViewModel_; - } - }; - -} -namespace vl -{ - namespace reflection - { - namespace description - { - DECL_TYPE_INFO(demo::IViewModel) - DECL_TYPE_INFO(demo::MainWindow) - - } - } -} -namespace demo -{ - class MainWindow : public demo::MainWindow_ - { - friend class demo::MainWindow_; - friend struct vl::reflection::description::CustomTypeDescriptorSelector; - protected: - - // #region CLASS_MEMBER_GUIEVENT_HANDLER (DO NOT PUT OTHER CONTENT IN THIS #region.) - void OnCreate(); - void OnDestroy(); - // #endregion CLASS_MEMBER_GUIEVENT_HANDLER - public: - MainWindow(vl::Ptr ViewModel); + ::vl::Ptr<::demo::IViewModel> __vwsn_parameter_ViewModel = ::vl::Ptr<::demo::IViewModel>(); + ::vl::Ptr<::demo::IViewModel> GetViewModel(); + MainWindow(::vl::Ptr<::demo::IViewModel> __vwsn_ctor_parameter_ViewModel); ~MainWindow(); }; + + class IViewModel : public virtual ::vl::reflection::IDescriptable, public ::vl::reflection::Description + { +#ifndef VCZH_DEBUG_NO_REFLECTION + friend struct ::vl::reflection::description::CustomTypeDescriptorSelector; +#endif + public: + virtual void OpenUrl(const ::vl::WString& url) = 0; + }; + +} +/*********************************************************************** +Global Variables and Functions +***********************************************************************/ + +namespace vl_workflow_global +{ + class Demo + { + public: + + static Demo& Instance(); + }; } - +#if defined( _MSC_VER) +#pragma warning(pop) +#elif defined(__GNUC__) +#pragma GCC diagnostic pop +#elif defined(__clang__) +#pragma clang diagnostic pop +#endif #endif diff --git a/Tutorial/GacUI_Layout/Stack/Stack.vcxproj b/Tutorial/GacUI_Layout/Stack/Stack.vcxproj index 14ed4e63..1adda1f9 100644 --- a/Tutorial/GacUI_Layout/Stack/Stack.vcxproj +++ b/Tutorial/GacUI_Layout/Stack/Stack.vcxproj @@ -83,11 +83,6 @@ - - - {8018d622-66ba-4e65-9d03-bdac37ea9a54} - - @@ -95,6 +90,11 @@ + + + {96c559ca-9718-4bec-a053-28a0ab6a8ca2} + + diff --git a/Tutorial/GacUI_Layout/Stack/UI/Resource.xml b/Tutorial/GacUI_Layout/Stack/UI/Resource.xml index 60dd6ae9..b8b64d71 100644 --- a/Tutorial/GacUI_Layout/Stack/UI/Resource.xml +++ b/Tutorial/GacUI_Layout/Stack/UI/Resource.xml @@ -2,14 +2,10 @@ - Source - GacUIReflection.h + Source + ..\..\UIRes\Stack.bin + GacUI.h Demo - - - - ..\..\UIRes - Stack.bin diff --git a/Tutorial/GacUI_Layout/Stack/UI/Source/Demo.h b/Tutorial/GacUI_Layout/Stack/UI/Source/Demo.h index febeba0f..a12c85a4 100644 --- a/Tutorial/GacUI_Layout/Stack/UI/Source/Demo.h +++ b/Tutorial/GacUI_Layout/Stack/UI/Source/Demo.h @@ -1,16 +1,35 @@ -/*********************************************************************** -Vczh Library++ 3.0 -Developer: Zihan Chen(vczh) -GacUI::Demo +/*********************************************************************** +!!!!!! DO NOT MODIFY !!!!!! -This file is generated by: Vczh GacUI Resource Code Generator -************************************************************************ -DO NOT MODIFY +GacGen.exe Resource.xml + +This file is generated by Workflow compiler +https://github.com/vczh-libraries ***********************************************************************/ -#ifndef VCZH_GACUI_RESOURCE_CODE_GENERATOR_Demo -#define VCZH_GACUI_RESOURCE_CODE_GENERATOR_Demo +#ifndef VCZH_WORKFLOW_COMPILER_GENERATED_DEMO +#define VCZH_WORKFLOW_COMPILER_GENERATED_DEMO #include "DemoPartialClasses.h" +/*********************************************************************** +Reflection +***********************************************************************/ + +namespace vl +{ + namespace reflection + { + namespace description + { +#ifndef VCZH_DEBUG_NO_REFLECTION + DECL_TYPE_INFO(::demo::MainWindow) + DECL_TYPE_INFO(::demo::MainWindowConstructor) +#endif + + extern bool LoadDemoTypes(); + } + } +} + #endif diff --git a/Tutorial/GacUI_Layout/Stack/UI/Source/DemoPartialClasses.cpp b/Tutorial/GacUI_Layout/Stack/UI/Source/DemoPartialClasses.cpp index 1967f719..9103d434 100644 --- a/Tutorial/GacUI_Layout/Stack/UI/Source/DemoPartialClasses.cpp +++ b/Tutorial/GacUI_Layout/Stack/UI/Source/DemoPartialClasses.cpp @@ -1,42 +1,539 @@ -/*********************************************************************** -Vczh Library++ 3.0 -Developer: Zihan Chen(vczh) -GacUI::Partial Classes +/*********************************************************************** +!!!!!! DO NOT MODIFY !!!!!! -This file is generated by: Vczh GacUI Resource Code Generator -************************************************************************ -DO NOT MODIFY +GacGen.exe Resource.xml + +This file is generated by Workflow compiler +https://github.com/vczh-libraries ***********************************************************************/ #include "Demo.h" +#if defined( _MSC_VER) +#pragma warning(push) +#pragma warning(disable:4250) +#elif defined(__GNUC__) +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wparentheses-equality" +#elif defined(__clang__) +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wparentheses-equality" +#endif + +#define GLOBAL_SYMBOL ::vl_workflow_global::Demo:: +#define GLOBAL_NAME ::vl_workflow_global::Demo::Instance(). +#define GLOBAL_OBJ &::vl_workflow_global::Demo::Instance() +#define USERIMPL(...) + +/*********************************************************************** +Global Variables +***********************************************************************/ + +BEGIN_GLOBAL_STORAGE_CLASS(vl_workflow_global_Demo) + vl_workflow_global::Demo instance; + INITIALIZE_GLOBAL_STORAGE_CLASS + FINALIZE_GLOBAL_STORAGE_CLASS +END_GLOBAL_STORAGE_CLASS(vl_workflow_global_Demo) + +namespace vl_workflow_global +{ +/*********************************************************************** +Closure Definitions +***********************************************************************/ + + struct __vwsnf1_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ + { + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnf1_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0); + + void operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const; + }; + + struct __vwsnf2_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ + { + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnf2_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0); + + void operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const; + }; + + struct __vwsnf3_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ + { + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnf3_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0); + + void operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const; + }; + + struct __vwsnf4_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ + { + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnf4_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0); + + void operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const; + }; + + struct __vwsnf5_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ + { + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnf5_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0); + + void operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const; + }; + + struct __vwsnf6_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ + { + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnf6_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0); + + void operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const; + }; + + struct __vwsnf7_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ + { + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnf7_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0); + + void operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const; + }; + + //------------------------------------------------------------------- + + __vwsnf1_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf1_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + } + + void __vwsnf1_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const + { + { + auto radioButton = ::vl::__vwsn::Ensure(::vl::__vwsn::RawPtrCast<::vl::presentation::controls::GuiSelectableButton>(::vl::__vwsn::This(sender)->GetRelatedControl())); + if (::vl::__vwsn::This(radioButton)->GetSelected()) + { + ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->stackLayout)->SetDirection(((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"Horizontal", false)) ? ::vl::presentation::compositions::GuiStackComposition::Direction::Horizontal : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"Vertical", false)) ? ::vl::presentation::compositions::GuiStackComposition::Direction::Vertical : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"ReversedHorizontal", false)) ? ::vl::presentation::compositions::GuiStackComposition::Direction::ReversedHorizontal : ::vl::presentation::compositions::GuiStackComposition::Direction::ReversedVertical)))); + } + } + } + + //------------------------------------------------------------------- + + __vwsnf2_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf2_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + } + + void __vwsnf2_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const + { + { + auto radioButton = ::vl::__vwsn::Ensure(::vl::__vwsn::RawPtrCast<::vl::presentation::controls::GuiSelectableButton>(::vl::__vwsn::This(sender)->GetRelatedControl())); + if (::vl::__vwsn::This(radioButton)->GetSelected()) + { + ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->stackLayout)->SetDirection(((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"Horizontal", false)) ? ::vl::presentation::compositions::GuiStackComposition::Direction::Horizontal : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"Vertical", false)) ? ::vl::presentation::compositions::GuiStackComposition::Direction::Vertical : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"ReversedHorizontal", false)) ? ::vl::presentation::compositions::GuiStackComposition::Direction::ReversedHorizontal : ::vl::presentation::compositions::GuiStackComposition::Direction::ReversedVertical)))); + } + } + } + + //------------------------------------------------------------------- + + __vwsnf3_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf3_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + } + + void __vwsnf3_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const + { + { + auto radioButton = ::vl::__vwsn::Ensure(::vl::__vwsn::RawPtrCast<::vl::presentation::controls::GuiSelectableButton>(::vl::__vwsn::This(sender)->GetRelatedControl())); + if (::vl::__vwsn::This(radioButton)->GetSelected()) + { + ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->stackLayout)->SetDirection(((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"Horizontal", false)) ? ::vl::presentation::compositions::GuiStackComposition::Direction::Horizontal : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"Vertical", false)) ? ::vl::presentation::compositions::GuiStackComposition::Direction::Vertical : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"ReversedHorizontal", false)) ? ::vl::presentation::compositions::GuiStackComposition::Direction::ReversedHorizontal : ::vl::presentation::compositions::GuiStackComposition::Direction::ReversedVertical)))); + } + } + } + + //------------------------------------------------------------------- + + __vwsnf4_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf4_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + } + + void __vwsnf4_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const + { + { + auto radioButton = ::vl::__vwsn::Ensure(::vl::__vwsn::RawPtrCast<::vl::presentation::controls::GuiSelectableButton>(::vl::__vwsn::This(sender)->GetRelatedControl())); + if (::vl::__vwsn::This(radioButton)->GetSelected()) + { + ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->stackLayout)->SetDirection(((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"Horizontal", false)) ? ::vl::presentation::compositions::GuiStackComposition::Direction::Horizontal : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"Vertical", false)) ? ::vl::presentation::compositions::GuiStackComposition::Direction::Vertical : ((::vl::__vwsn::This(radioButton)->GetText() == ::vl::WString(L"ReversedHorizontal", false)) ? ::vl::presentation::compositions::GuiStackComposition::Direction::ReversedHorizontal : ::vl::presentation::compositions::GuiStackComposition::Direction::ReversedVertical)))); + } + } + } + + //------------------------------------------------------------------- + + __vwsnf5_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf5_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + } + + void __vwsnf5_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const + { + { + using __vwsnt_0 = ::vl::presentation::compositions::GuiStackItemComposition*; + FOREACH(__vwsnt_0, stackItem, ::vl::reflection::description::GetLazyList<::vl::presentation::compositions::GuiStackItemComposition*>([&](){ decltype(auto) __vwsn_temp__ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->stackLayout)->GetStackItems(); return ::vl::__vwsn::Unbox<::vl::Ptr<::vl::reflection::description::IValueReadonlyList>>(::vl::reflection::description::BoxParameter(__vwsn_temp__)); }())) + { + ::vl::__vwsn::This(stackItem)->SetExtraMargin(::vl::presentation::Margin{}); + } + auto selectedItem = ::vl::__vwsn::Ensure(::vl::__vwsn::RawPtrCast<::vl::presentation::compositions::GuiStackItemComposition>(::vl::__vwsn::This(sender)->GetParent())); + ::vl::__vwsn::This(selectedItem)->SetExtraMargin([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = 10; __vwsn_temp__.top = 10; __vwsn_temp__.right = 10; __vwsn_temp__.bottom = 10; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->stackLayout)->MoveChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(selectedItem)), (::vl::__vwsn::This([&](){ decltype(auto) __vwsn_temp__ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->stackLayout)->GetStackItems(); return ::vl::__vwsn::Unbox<::vl::Ptr<::vl::reflection::description::IValueReadonlyList>>(::vl::reflection::description::BoxParameter(__vwsn_temp__)); }().Obj())->GetCount() - 1)); + } + } + + //------------------------------------------------------------------- + + __vwsnf6_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf6_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + } + + void __vwsnf6_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const + { + { + using __vwsnt_0 = ::vl::presentation::compositions::GuiStackItemComposition*; + FOREACH(__vwsnt_0, stackItem, ::vl::reflection::description::GetLazyList<::vl::presentation::compositions::GuiStackItemComposition*>([&](){ decltype(auto) __vwsn_temp__ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->stackLayout)->GetStackItems(); return ::vl::__vwsn::Unbox<::vl::Ptr<::vl::reflection::description::IValueReadonlyList>>(::vl::reflection::description::BoxParameter(__vwsn_temp__)); }())) + { + ::vl::__vwsn::This(stackItem)->SetExtraMargin(::vl::presentation::Margin{}); + } + auto selectedItem = ::vl::__vwsn::Ensure(::vl::__vwsn::RawPtrCast<::vl::presentation::compositions::GuiStackItemComposition>(::vl::__vwsn::This(sender)->GetParent())); + ::vl::__vwsn::This(selectedItem)->SetExtraMargin([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = 10; __vwsn_temp__.top = 10; __vwsn_temp__.right = 10; __vwsn_temp__.bottom = 10; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->stackLayout)->MoveChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(selectedItem)), (::vl::__vwsn::This([&](){ decltype(auto) __vwsn_temp__ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->stackLayout)->GetStackItems(); return ::vl::__vwsn::Unbox<::vl::Ptr<::vl::reflection::description::IValueReadonlyList>>(::vl::reflection::description::BoxParameter(__vwsn_temp__)); }().Obj())->GetCount() - 1)); + } + } + + //------------------------------------------------------------------- + + __vwsnf7_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf7_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + } + + void __vwsnf7_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const + { + { + using __vwsnt_0 = ::vl::presentation::compositions::GuiStackItemComposition*; + FOREACH(__vwsnt_0, stackItem, ::vl::reflection::description::GetLazyList<::vl::presentation::compositions::GuiStackItemComposition*>([&](){ decltype(auto) __vwsn_temp__ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->stackLayout)->GetStackItems(); return ::vl::__vwsn::Unbox<::vl::Ptr<::vl::reflection::description::IValueReadonlyList>>(::vl::reflection::description::BoxParameter(__vwsn_temp__)); }())) + { + ::vl::__vwsn::This(stackItem)->SetExtraMargin(::vl::presentation::Margin{}); + } + auto selectedItem = ::vl::__vwsn::Ensure(::vl::__vwsn::RawPtrCast<::vl::presentation::compositions::GuiStackItemComposition>(::vl::__vwsn::This(sender)->GetParent())); + ::vl::__vwsn::This(selectedItem)->SetExtraMargin([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = 10; __vwsn_temp__.top = 10; __vwsn_temp__.right = 10; __vwsn_temp__.bottom = 10; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->stackLayout)->MoveChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(selectedItem)), (::vl::__vwsn::This([&](){ decltype(auto) __vwsn_temp__ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->stackLayout)->GetStackItems(); return ::vl::__vwsn::Unbox<::vl::Ptr<::vl::reflection::description::IValueReadonlyList>>(::vl::reflection::description::BoxParameter(__vwsn_temp__)); }().Obj())->GetCount() - 1)); + } + } +/*********************************************************************** +Global Functions +***********************************************************************/ + + Demo& Demo::Instance() + { + return Getvl_workflow_global_Demo().instance; + } +} + +/*********************************************************************** +Class (::demo::MainWindowConstructor) +***********************************************************************/ + namespace demo { - // #region CLASS_MEMBER_GUIEVENT_HANDLER (DO NOT PUT OTHER CONTENT IN THIS #region.) + void MainWindowConstructor::__vwsn_initialize_instance_(::demo::MainWindow* __vwsn_this_, ::vl::presentation::GuiResourcePathResolver* __vwsn_resolver_) + { + (::vl::__vwsn::This(this)->__vwsn_precompile_0 = __vwsn_this_); + (::vl::__vwsn::This(this)->__vwsn_precompile_22 = ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_0)->GetBoundsComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_22)->SetPreferredMinSize([&](){ ::vl::presentation::Size __vwsn_temp__; __vwsn_temp__.x = 480; __vwsn_temp__.y = 320; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_0)->SetClientSize([&](){ ::vl::presentation::Size __vwsn_temp__; __vwsn_temp__.x = 480; __vwsn_temp__.y = 320; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_0)->SetText(::vl::WString(L"Stack", false)); + } + (::vl::__vwsn::This(this)->groupStackDirection = new ::vl::presentation::controls::GuiSelectableButton::MutexGroupController()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_0)->AddComponent(::vl::__vwsn::Ensure(static_cast<::vl::presentation::controls::GuiComponent*>(::vl::__vwsn::This(this)->groupStackDirection))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_1 = new ::vl::presentation::compositions::GuiTableComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_1)->SetCellPadding(::vl::__vwsn::Parse<::vl::vint32_t>(::vl::WString(L"5", false))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_1)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = 5; __vwsn_temp__.top = 5; __vwsn_temp__.right = 5; __vwsn_temp__.bottom = 5; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_1)->SetRowsAndColumns(6, 1); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_1)->SetRowOption(0, [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_1)->SetRowOption(1, [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_1)->SetRowOption(2, [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_1)->SetRowOption(3, [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_1)->SetRowOption(4, [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_1)->SetRowOption(5, [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Percentage; __vwsn_temp__.percentage = 1.0; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_1)->SetColumnOption(0, [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Percentage; __vwsn_temp__.percentage = 1.0; return __vwsn_temp__; }()); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_2 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_2)->SetSite(0, 0, 1, 1); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateRadioButtonStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_3 = new ::vl::presentation::controls::GuiSelectableButton(__vwsn_controlStyle_)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_3)->SetSelected(::vl::__vwsn::Parse(::vl::WString(L"true", false))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_3)->SetText(::vl::WString(L"Horizontal", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_2)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_3)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_1)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_2))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_4 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_4)->SetSite(1, 0, 1, 1); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateRadioButtonStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_5 = new ::vl::presentation::controls::GuiSelectableButton(__vwsn_controlStyle_)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_5)->SetText(::vl::WString(L"Vertical", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_4)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_5)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_1)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_4))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_6 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_6)->SetSite(2, 0, 1, 1); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateRadioButtonStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_7 = new ::vl::presentation::controls::GuiSelectableButton(__vwsn_controlStyle_)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_7)->SetText(::vl::WString(L"ReversedHorizontal", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_6)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_7)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_1)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_6))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_8 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_8)->SetSite(3, 0, 1, 1); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateRadioButtonStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_9 = new ::vl::presentation::controls::GuiSelectableButton(__vwsn_controlStyle_)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_9)->SetText(::vl::WString(L"ReversedVertical", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_8)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_9)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_1)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_8))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_10 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_10)->SetSite(4, 0, 1, 1); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateLabelStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_11 = new ::vl::presentation::controls::GuiLabel(__vwsn_controlStyle_)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_11)->SetText(::vl::WString(L"Click any button in stack items to enlarge it.", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_10)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_11)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_1)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_10))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_12 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_12)->SetSite(5, 0, 1, 1); + } + (::vl::__vwsn::This(this)->stackLayout = new ::vl::presentation::compositions::GuiStackComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->stackLayout)->SetExtraMargin([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = 10; __vwsn_temp__.top = 10; __vwsn_temp__.right = 10; __vwsn_temp__.bottom = 10; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->stackLayout)->SetPadding(::vl::__vwsn::Parse<::vl::vint32_t>(::vl::WString(L"5", false))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->stackLayout)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = 0; __vwsn_temp__.top = 0; __vwsn_temp__.right = 0; __vwsn_temp__.bottom = 0; return __vwsn_temp__; }()); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_13 = new ::vl::presentation::compositions::GuiStackItemComposition()); + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateButtonStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_14 = new ::vl::presentation::controls::GuiButton(__vwsn_controlStyle_)); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_15 = ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_14)->GetBoundsComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_15)->SetPreferredMinSize([&](){ ::vl::presentation::Size __vwsn_temp__; __vwsn_temp__.x = 100; __vwsn_temp__.y = 100; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_15)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = 0; __vwsn_temp__.top = 0; __vwsn_temp__.right = 0; __vwsn_temp__.bottom = 0; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_14)->SetText(::vl::WString(L"Large", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_13)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_14)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->stackLayout)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_13))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_16 = new ::vl::presentation::compositions::GuiStackItemComposition()); + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateButtonStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_17 = new ::vl::presentation::controls::GuiButton(__vwsn_controlStyle_)); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_18 = ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_17)->GetBoundsComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_18)->SetPreferredMinSize([&](){ ::vl::presentation::Size __vwsn_temp__; __vwsn_temp__.x = 75; __vwsn_temp__.y = 75; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_18)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = 0; __vwsn_temp__.top = 0; __vwsn_temp__.right = 0; __vwsn_temp__.bottom = 0; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_17)->SetText(::vl::WString(L"Medium", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_16)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_17)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->stackLayout)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_16))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_19 = new ::vl::presentation::compositions::GuiStackItemComposition()); + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateButtonStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_20 = new ::vl::presentation::controls::GuiButton(__vwsn_controlStyle_)); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_21 = ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_20)->GetBoundsComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_21)->SetPreferredMinSize([&](){ ::vl::presentation::Size __vwsn_temp__; __vwsn_temp__.x = 50; __vwsn_temp__.y = 50; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_21)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = 0; __vwsn_temp__.top = 0; __vwsn_temp__.right = 0; __vwsn_temp__.bottom = 0; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_20)->SetText(::vl::WString(L"Small", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_19)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_20)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->stackLayout)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_19))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_12)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->stackLayout))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_1)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_12))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_0)->GetContainerComposition())->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_1))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_3)->SetGroupController(::vl::__vwsn::Ensure(static_cast<::vl::presentation::controls::GuiSelectableButton::GroupController*>(::vl::__vwsn::This(this)->groupStackDirection))); + } + { + auto __vwsn_event_handler_ = LAMBDA(::vl_workflow_global::__vwsnf1_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_3)->SelectedChanged, __vwsn_event_handler_); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_5)->SetGroupController(::vl::__vwsn::Ensure(static_cast<::vl::presentation::controls::GuiSelectableButton::GroupController*>(::vl::__vwsn::This(this)->groupStackDirection))); + } + { + auto __vwsn_event_handler_ = LAMBDA(::vl_workflow_global::__vwsnf2_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_5)->SelectedChanged, __vwsn_event_handler_); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_7)->SetGroupController(::vl::__vwsn::Ensure(static_cast<::vl::presentation::controls::GuiSelectableButton::GroupController*>(::vl::__vwsn::This(this)->groupStackDirection))); + } + { + auto __vwsn_event_handler_ = LAMBDA(::vl_workflow_global::__vwsnf3_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_7)->SelectedChanged, __vwsn_event_handler_); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_9)->SetGroupController(::vl::__vwsn::Ensure(static_cast<::vl::presentation::controls::GuiSelectableButton::GroupController*>(::vl::__vwsn::This(this)->groupStackDirection))); + } + { + auto __vwsn_event_handler_ = LAMBDA(::vl_workflow_global::__vwsnf4_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_9)->SelectedChanged, __vwsn_event_handler_); + } + { + auto __vwsn_event_handler_ = LAMBDA(::vl_workflow_global::__vwsnf5_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_14)->Clicked, __vwsn_event_handler_); + } + { + auto __vwsn_event_handler_ = LAMBDA(::vl_workflow_global::__vwsnf6_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_17)->Clicked, __vwsn_event_handler_); + } + { + auto __vwsn_event_handler_ = LAMBDA(::vl_workflow_global::__vwsnf7_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this)); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_20)->Clicked, __vwsn_event_handler_); + } + } - void MainWindow::OnCreate() + MainWindowConstructor::MainWindowConstructor() { } - void MainWindow::OnDestroy() - { - } - - // #endregion CLASS_MEMBER_GUIEVENT_HANDLER +/*********************************************************************** +Class (::demo::MainWindow) +***********************************************************************/ MainWindow::MainWindow() + : ::vl::presentation::controls::GuiWindow(::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateWindowStyle()) { - InitializeComponents(); - OnCreate(); + auto __vwsn_resource_ = ::vl::__vwsn::This(::vl::presentation::GetResourceManager())->GetResourceFromClassName(::vl::WString(L"demo::MainWindow", 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)->__vwsn_initialize_instance_(this, ::vl::__vwsn::Ensure(static_cast<::vl::presentation::GuiResourcePathResolver*>(__vwsn_resolver_.Obj()))); } MainWindow::~MainWindow() { - OnDestroy(); - ClearSubscriptions(); + ::vl::__vwsn::This(this)->ClearSubscriptions(); } -} +} +#undef GLOBAL_SYMBOL +#undef GLOBAL_NAME +#undef GLOBAL_OBJ +#undef USERIMPL + +/*********************************************************************** +Reflection +***********************************************************************/ namespace vl { @@ -44,47 +541,77 @@ namespace vl { namespace description { - #define _ , - IMPL_CPP_TYPE_INFO(demo::MainWindow) +#ifndef VCZH_DEBUG_NO_REFLECTION + IMPL_CPP_TYPE_INFO(::demo::MainWindow) + IMPL_CPP_TYPE_INFO(::demo::MainWindowConstructor) - BEGIN_CLASS_MEMBER(demo::MainWindow) - CLASS_MEMBER_BASE(::vl::presentation::controls::GuiWindow) - CLASS_MEMBER_CONSTRUCTOR(demo::MainWindow*(), NO_PARAMETER) - END_CLASS_MEMBER(demo::MainWindow) +#define _ , + BEGIN_CLASS_MEMBER(::demo::MainWindow) + END_CLASS_MEMBER(::demo::MainWindow) - #undef _ + BEGIN_CLASS_MEMBER(::demo::MainWindowConstructor) + CLASS_MEMBER_METHOD(__vwsn_initialize_instance_, { L"__vwsn_this_" _ L"__vwsn_resolver_" }) + CLASS_MEMBER_FIELD(__vwsn_precompile_0) + CLASS_MEMBER_FIELD(__vwsn_precompile_1) + CLASS_MEMBER_FIELD(__vwsn_precompile_10) + CLASS_MEMBER_FIELD(__vwsn_precompile_11) + CLASS_MEMBER_FIELD(__vwsn_precompile_12) + CLASS_MEMBER_FIELD(__vwsn_precompile_13) + CLASS_MEMBER_FIELD(__vwsn_precompile_14) + CLASS_MEMBER_FIELD(__vwsn_precompile_15) + CLASS_MEMBER_FIELD(__vwsn_precompile_16) + CLASS_MEMBER_FIELD(__vwsn_precompile_17) + CLASS_MEMBER_FIELD(__vwsn_precompile_18) + CLASS_MEMBER_FIELD(__vwsn_precompile_19) + CLASS_MEMBER_FIELD(__vwsn_precompile_2) + CLASS_MEMBER_FIELD(__vwsn_precompile_20) + CLASS_MEMBER_FIELD(__vwsn_precompile_21) + CLASS_MEMBER_FIELD(__vwsn_precompile_22) + CLASS_MEMBER_FIELD(__vwsn_precompile_3) + CLASS_MEMBER_FIELD(__vwsn_precompile_4) + CLASS_MEMBER_FIELD(__vwsn_precompile_5) + CLASS_MEMBER_FIELD(__vwsn_precompile_6) + CLASS_MEMBER_FIELD(__vwsn_precompile_7) + CLASS_MEMBER_FIELD(__vwsn_precompile_8) + CLASS_MEMBER_FIELD(__vwsn_precompile_9) + CLASS_MEMBER_FIELD(groupStackDirection) + CLASS_MEMBER_FIELD(stackLayout) + END_CLASS_MEMBER(::demo::MainWindowConstructor) - class DemoResourceLoader : public Object, public ITypeLoader +#undef _ + class DemoTypeLoader : public Object, public ITypeLoader { public: void Load(ITypeManager* manager) { - ADD_TYPE_INFO(demo::MainWindow) + ADD_TYPE_INFO(::demo::MainWindow) + ADD_TYPE_INFO(::demo::MainWindowConstructor) } void Unload(ITypeManager* manager) { } }; +#endif - class DemoResourcePlugin : public Object, public vl::presentation::controls::IGuiPlugin + bool LoadDemoTypes() { - public: - void Load()override +#ifndef VCZH_DEBUG_NO_REFLECTION + if (auto manager = GetGlobalTypeManager()) { - GetGlobalTypeManager()->AddTypeLoader(new DemoResourceLoader); + return manager->AddTypeLoader(MakePtr()); } - - void AfterLoad()override - { - } - - void Unload()override - { - } - }; - GUI_REGISTER_PLUGIN(DemoResourcePlugin) +#endif + return false; + } } } } +#if defined( _MSC_VER) +#pragma warning(pop) +#elif defined(__GNUC__) +#pragma GCC diagnostic pop +#elif defined(__clang__) +#pragma clang diagnostic pop +#endif diff --git a/Tutorial/GacUI_Layout/Stack/UI/Source/DemoPartialClasses.h b/Tutorial/GacUI_Layout/Stack/UI/Source/DemoPartialClasses.h index 8b05175b..cdf59aac 100644 --- a/Tutorial/GacUI_Layout/Stack/UI/Source/DemoPartialClasses.h +++ b/Tutorial/GacUI_Layout/Stack/UI/Source/DemoPartialClasses.h @@ -1,82 +1,125 @@ -/*********************************************************************** -Vczh Library++ 3.0 -Developer: Zihan Chen(vczh) -GacUI::Partial Classes +/*********************************************************************** +!!!!!! DO NOT MODIFY !!!!!! -This file is generated by: Vczh GacUI Resource Code Generator -************************************************************************ -DO NOT MODIFY +GacGen.exe Resource.xml + +This file is generated by Workflow compiler +https://github.com/vczh-libraries ***********************************************************************/ -#ifndef VCZH_GACUI_RESOURCE_CODE_GENERATOR_Demo_PARTIAL_CLASSES -#define VCZH_GACUI_RESOURCE_CODE_GENERATOR_Demo_PARTIAL_CLASSES +#ifndef VCZH_WORKFLOW_COMPILER_GENERATED_DEMOPARTIALCLASSES +#define VCZH_WORKFLOW_COMPILER_GENERATED_DEMOPARTIALCLASSES -#include "GacUIReflection.h" + +#if defined( _MSC_VER) +#pragma warning(push) +#pragma warning(disable:4250) +#elif defined(__GNUC__) +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wparentheses-equality" +#elif defined(__clang__) +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wparentheses-equality" +#endif + +namespace vl_workflow_global +{ + struct __vwsnf1_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + struct __vwsnf2_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + struct __vwsnf3_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + struct __vwsnf4_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + struct __vwsnf5_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + struct __vwsnf6_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + struct __vwsnf7_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; +} namespace demo { + class MainWindowConstructor; class MainWindow; - template - class MainWindow_ : public ::vl::presentation::controls::GuiWindow, public vl::presentation::GuiInstancePartialClass, public vl::reflection::Description + class MainWindowConstructor : public ::vl::Object, public ::vl::reflection::Description { - friend struct vl::reflection::description::CustomTypeDescriptorSelector; - private: + friend struct ::vl_workflow_global::__vwsnf1_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf2_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf3_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf4_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf5_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf6_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf7_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; +#ifndef VCZH_DEBUG_NO_REFLECTION + friend struct ::vl::reflection::description::CustomTypeDescriptorSelector; +#endif protected: - ::vl::presentation::controls::GuiSelectableButton::MutexGroupController* groupStackDirection; - ::vl::presentation::compositions::GuiStackComposition* stackLayout; - - void InitializeComponents() - { - if (InitializeFromResource()) - { - GUI_INSTANCE_REFERENCE(groupStackDirection); - GUI_INSTANCE_REFERENCE(stackLayout); - } - else - { - } - } + ::vl::presentation::controls::GuiSelectableButton::MutexGroupController* groupStackDirection = static_cast<::vl::presentation::controls::GuiSelectableButton::MutexGroupController*>(nullptr); + ::vl::presentation::compositions::GuiStackComposition* stackLayout = static_cast<::vl::presentation::compositions::GuiStackComposition*>(nullptr); + ::demo::MainWindow* __vwsn_precompile_0 = static_cast<::demo::MainWindow*>(nullptr); + ::vl::presentation::compositions::GuiTableComposition* __vwsn_precompile_1 = static_cast<::vl::presentation::compositions::GuiTableComposition*>(nullptr); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_2 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::presentation::controls::GuiSelectableButton* __vwsn_precompile_3 = static_cast<::vl::presentation::controls::GuiSelectableButton*>(nullptr); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_4 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::presentation::controls::GuiSelectableButton* __vwsn_precompile_5 = static_cast<::vl::presentation::controls::GuiSelectableButton*>(nullptr); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_6 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::presentation::controls::GuiSelectableButton* __vwsn_precompile_7 = static_cast<::vl::presentation::controls::GuiSelectableButton*>(nullptr); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_8 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::presentation::controls::GuiSelectableButton* __vwsn_precompile_9 = static_cast<::vl::presentation::controls::GuiSelectableButton*>(nullptr); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_10 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::presentation::controls::GuiLabel* __vwsn_precompile_11 = static_cast<::vl::presentation::controls::GuiLabel*>(nullptr); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_12 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::presentation::compositions::GuiStackItemComposition* __vwsn_precompile_13 = static_cast<::vl::presentation::compositions::GuiStackItemComposition*>(nullptr); + ::vl::presentation::controls::GuiButton* __vwsn_precompile_14 = static_cast<::vl::presentation::controls::GuiButton*>(nullptr); + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_15 = static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr); + ::vl::presentation::compositions::GuiStackItemComposition* __vwsn_precompile_16 = static_cast<::vl::presentation::compositions::GuiStackItemComposition*>(nullptr); + ::vl::presentation::controls::GuiButton* __vwsn_precompile_17 = static_cast<::vl::presentation::controls::GuiButton*>(nullptr); + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_18 = static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr); + ::vl::presentation::compositions::GuiStackItemComposition* __vwsn_precompile_19 = static_cast<::vl::presentation::compositions::GuiStackItemComposition*>(nullptr); + ::vl::presentation::controls::GuiButton* __vwsn_precompile_20 = static_cast<::vl::presentation::controls::GuiButton*>(nullptr); + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_21 = static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr); + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_22 = static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr); + void __vwsn_initialize_instance_(::demo::MainWindow* __vwsn_this_, ::vl::presentation::GuiResourcePathResolver* __vwsn_resolver_); public: - MainWindow_() - :vl::presentation::GuiInstancePartialClass<::vl::presentation::controls::GuiWindow>(L"demo::MainWindow") - ,::vl::presentation::controls::GuiWindow(vl::presentation::theme::GetCurrentTheme()->CreateWindowStyle()) - ,groupStackDirection(0) - ,stackLayout(0) - { - } + MainWindowConstructor(); }; -} -namespace vl -{ - namespace reflection + class MainWindow : public ::vl::presentation::controls::GuiWindow, public ::demo::MainWindowConstructor, public ::vl::reflection::Description { - namespace description - { - DECL_TYPE_INFO(demo::MainWindow) - - } - } -} -namespace demo -{ - class MainWindow : public demo::MainWindow_ - { - friend class demo::MainWindow_; - friend struct vl::reflection::description::CustomTypeDescriptorSelector; - protected: - - // #region CLASS_MEMBER_GUIEVENT_HANDLER (DO NOT PUT OTHER CONTENT IN THIS #region.) - void OnCreate(); - void OnDestroy(); - // #endregion CLASS_MEMBER_GUIEVENT_HANDLER + friend class ::demo::MainWindowConstructor; + friend struct ::vl_workflow_global::__vwsnf1_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf2_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf3_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf4_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf5_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf6_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf7_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; +#ifndef VCZH_DEBUG_NO_REFLECTION + friend struct ::vl::reflection::description::CustomTypeDescriptorSelector; +#endif public: MainWindow(); ~MainWindow(); }; + +} +/*********************************************************************** +Global Variables and Functions +***********************************************************************/ + +namespace vl_workflow_global +{ + class Demo + { + public: + + static Demo& Instance(); + }; } - +#if defined( _MSC_VER) +#pragma warning(pop) +#elif defined(__GNUC__) +#pragma GCC diagnostic pop +#elif defined(__clang__) +#pragma clang diagnostic pop +#endif #endif diff --git a/Tutorial/GacUI_Layout/Table/Table.vcxproj b/Tutorial/GacUI_Layout/Table/Table.vcxproj index 1327a374..767afcba 100644 --- a/Tutorial/GacUI_Layout/Table/Table.vcxproj +++ b/Tutorial/GacUI_Layout/Table/Table.vcxproj @@ -83,11 +83,6 @@ - - - {8018d622-66ba-4e65-9d03-bdac37ea9a54} - - @@ -95,6 +90,11 @@ + + + {96c559ca-9718-4bec-a053-28a0ab6a8ca2} + + diff --git a/Tutorial/GacUI_Layout/Table/UI/Resource.xml b/Tutorial/GacUI_Layout/Table/UI/Resource.xml index 2ce00c12..765b00b8 100644 --- a/Tutorial/GacUI_Layout/Table/UI/Resource.xml +++ b/Tutorial/GacUI_Layout/Table/UI/Resource.xml @@ -2,14 +2,10 @@ - Source - GacUIReflection.h + Source + ..\..\UIRes\Table.bin + GacUI.h Demo - - - - ..\..\UIRes - Table.bin diff --git a/Tutorial/GacUI_Layout/Table/UI/Source/Demo.h b/Tutorial/GacUI_Layout/Table/UI/Source/Demo.h index febeba0f..a12c85a4 100644 --- a/Tutorial/GacUI_Layout/Table/UI/Source/Demo.h +++ b/Tutorial/GacUI_Layout/Table/UI/Source/Demo.h @@ -1,16 +1,35 @@ -/*********************************************************************** -Vczh Library++ 3.0 -Developer: Zihan Chen(vczh) -GacUI::Demo +/*********************************************************************** +!!!!!! DO NOT MODIFY !!!!!! -This file is generated by: Vczh GacUI Resource Code Generator -************************************************************************ -DO NOT MODIFY +GacGen.exe Resource.xml + +This file is generated by Workflow compiler +https://github.com/vczh-libraries ***********************************************************************/ -#ifndef VCZH_GACUI_RESOURCE_CODE_GENERATOR_Demo -#define VCZH_GACUI_RESOURCE_CODE_GENERATOR_Demo +#ifndef VCZH_WORKFLOW_COMPILER_GENERATED_DEMO +#define VCZH_WORKFLOW_COMPILER_GENERATED_DEMO #include "DemoPartialClasses.h" +/*********************************************************************** +Reflection +***********************************************************************/ + +namespace vl +{ + namespace reflection + { + namespace description + { +#ifndef VCZH_DEBUG_NO_REFLECTION + DECL_TYPE_INFO(::demo::MainWindow) + DECL_TYPE_INFO(::demo::MainWindowConstructor) +#endif + + extern bool LoadDemoTypes(); + } + } +} + #endif diff --git a/Tutorial/GacUI_Layout/Table/UI/Source/DemoPartialClasses.cpp b/Tutorial/GacUI_Layout/Table/UI/Source/DemoPartialClasses.cpp index 1967f719..913a6120 100644 --- a/Tutorial/GacUI_Layout/Table/UI/Source/DemoPartialClasses.cpp +++ b/Tutorial/GacUI_Layout/Table/UI/Source/DemoPartialClasses.cpp @@ -1,42 +1,357 @@ -/*********************************************************************** -Vczh Library++ 3.0 -Developer: Zihan Chen(vczh) -GacUI::Partial Classes +/*********************************************************************** +!!!!!! DO NOT MODIFY !!!!!! -This file is generated by: Vczh GacUI Resource Code Generator -************************************************************************ -DO NOT MODIFY +GacGen.exe Resource.xml + +This file is generated by Workflow compiler +https://github.com/vczh-libraries ***********************************************************************/ #include "Demo.h" +#if defined( _MSC_VER) +#pragma warning(push) +#pragma warning(disable:4250) +#elif defined(__GNUC__) +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wparentheses-equality" +#elif defined(__clang__) +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wparentheses-equality" +#endif + +#define GLOBAL_SYMBOL ::vl_workflow_global::Demo:: +#define GLOBAL_NAME ::vl_workflow_global::Demo::Instance(). +#define GLOBAL_OBJ &::vl_workflow_global::Demo::Instance() +#define USERIMPL(...) + +/*********************************************************************** +Global Variables +***********************************************************************/ + +BEGIN_GLOBAL_STORAGE_CLASS(vl_workflow_global_Demo) + vl_workflow_global::Demo instance; + INITIALIZE_GLOBAL_STORAGE_CLASS + FINALIZE_GLOBAL_STORAGE_CLASS +END_GLOBAL_STORAGE_CLASS(vl_workflow_global_Demo) + +namespace vl_workflow_global +{ +/*********************************************************************** +Global Functions +***********************************************************************/ + + Demo& Demo::Instance() + { + return Getvl_workflow_global_Demo().instance; + } +} + +/*********************************************************************** +Class (::demo::MainWindowConstructor) +***********************************************************************/ + namespace demo { - // #region CLASS_MEMBER_GUIEVENT_HANDLER (DO NOT PUT OTHER CONTENT IN THIS #region.) + void MainWindowConstructor::__vwsn_initialize_instance_(::demo::MainWindow* __vwsn_this_, ::vl::presentation::GuiResourcePathResolver* __vwsn_resolver_) + { + (::vl::__vwsn::This(this)->__vwsn_precompile_0 = __vwsn_this_); + (::vl::__vwsn::This(this)->__vwsn_precompile_31 = ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_0)->GetBoundsComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_31)->SetPreferredMinSize([&](){ ::vl::presentation::Size __vwsn_temp__; __vwsn_temp__.x = 480; __vwsn_temp__.y = 320; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_0)->SetClientSize([&](){ ::vl::presentation::Size __vwsn_temp__; __vwsn_temp__.x = 480; __vwsn_temp__.y = 320; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_0)->SetText(::vl::WString(L"Table", false)); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_1 = new ::vl::presentation::compositions::GuiTableComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_1)->SetMinSizeLimitation(::vl::presentation::compositions::GuiGraphicsComposition::MinSizeLimitation::LimitToElementAndChildren); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_1)->SetCellPadding(::vl::__vwsn::Parse<::vl::vint32_t>(::vl::WString(L"5", false))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_1)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = 5; __vwsn_temp__.top = 5; __vwsn_temp__.right = 5; __vwsn_temp__.bottom = 5; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_1)->SetRowsAndColumns(6, 3); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_1)->SetRowOption(0, [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_1)->SetRowOption(1, [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Absolute; __vwsn_temp__.absolute = 20; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_1)->SetRowOption(2, [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_1)->SetRowOption(3, [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_1)->SetRowOption(4, [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Percentage; __vwsn_temp__.percentage = 1.0; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_1)->SetRowOption(5, [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_1)->SetColumnOption(0, [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_1)->SetColumnOption(1, [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Percentage; __vwsn_temp__.percentage = 1.0; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_1)->SetColumnOption(2, [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_2 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_2)->SetSite(0, 0, 1, 3); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_3 = ::vl::Ptr<::vl::presentation::elements::GuiSolidLabelElement>(::vl::reflection::description::Element_Constructor<::vl::presentation::elements::GuiSolidLabelElement>())); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_3.Obj())->SetVerticalAlignment(::vl::presentation::Alignment::Center); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_3.Obj())->SetHorizontalAlignment(::vl::presentation::Alignment::Center); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_3.Obj())->SetFont([&](){ ::vl::presentation::FontProperties __vwsn_temp__; __vwsn_temp__.fontFamily = ::vl::WString(L"Lucida Calligraphy", false); __vwsn_temp__.size = 96; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_3.Obj())->SetText(::vl::WString(L"GacUI", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_2)->SetOwnedElement(::vl::__vwsn::Ensure(::vl::Ptr<::vl::presentation::elements::IGuiGraphicsElement>(::vl::__vwsn::This(this)->__vwsn_precompile_3))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_1)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_2))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_4 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_4)->SetSite(2, 0, 1, 1); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateLabelStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_5 = new ::vl::presentation::controls::GuiLabel(__vwsn_controlStyle_)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_5)->SetText(::vl::WString(L"User Name:", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_4)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_5)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_1)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_4))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_6 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_6)->SetSite(2, 1, 1, 1); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateTextBoxStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_7 = new ::vl::presentation::controls::GuiSinglelineTextBox(__vwsn_controlStyle_)); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_8 = ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_7)->GetBoundsComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_8)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = 0; __vwsn_temp__.top = 0; __vwsn_temp__.right = 0; __vwsn_temp__.bottom = 0; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_6)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_7)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_1)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_6))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_9 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_9)->SetSite(2, 2, 1, 1); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateButtonStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_10 = new ::vl::presentation::controls::GuiButton(__vwsn_controlStyle_)); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_11 = ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_10)->GetBoundsComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_11)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = 0; __vwsn_temp__.top = 0; __vwsn_temp__.right = 0; __vwsn_temp__.bottom = 0; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_10)->SetText(::vl::WString(L"Forget User Name ...", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_9)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_10)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_1)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_9))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_12 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_12)->SetSite(3, 0, 1, 1); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateLabelStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_13 = new ::vl::presentation::controls::GuiLabel(__vwsn_controlStyle_)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_13)->SetText(::vl::WString(L"Password:", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_12)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_13)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_1)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_12))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_14 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_14)->SetSite(3, 1, 1, 1); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateTextBoxStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_15 = new ::vl::presentation::controls::GuiSinglelineTextBox(__vwsn_controlStyle_)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_15)->SetPasswordChar(::vl::__vwsn::Parse(::vl::WString(L"*", false))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_16 = ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_15)->GetBoundsComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_16)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = 0; __vwsn_temp__.top = 0; __vwsn_temp__.right = 0; __vwsn_temp__.bottom = 0; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_14)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_15)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_1)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_14))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_17 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_17)->SetSite(3, 2, 1, 1); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateButtonStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_18 = new ::vl::presentation::controls::GuiButton(__vwsn_controlStyle_)); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_19 = ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_18)->GetBoundsComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_19)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = 0; __vwsn_temp__.top = 0; __vwsn_temp__.right = 0; __vwsn_temp__.bottom = 0; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_18)->SetText(::vl::WString(L"Forget Password ...", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_17)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_18)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_1)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_17))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_20 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_20)->SetSite(5, 0, 1, 3); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_21 = new ::vl::presentation::compositions::GuiTableComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_21)->SetMinSizeLimitation(::vl::presentation::compositions::GuiGraphicsComposition::MinSizeLimitation::LimitToElementAndChildren); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_21)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = 0; __vwsn_temp__.top = 0; __vwsn_temp__.right = 0; __vwsn_temp__.bottom = 0; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_21)->SetRowsAndColumns(1, 4); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_21)->SetRowOption(0, [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_21)->SetColumnOption(0, [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_21)->SetColumnOption(1, [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_21)->SetColumnOption(2, [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Percentage; __vwsn_temp__.percentage = 1.0; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_21)->SetColumnOption(3, [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_22 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_22)->SetInternalMargin([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.right = 10; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_22)->SetSite(0, 0, 1, 1); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateButtonStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_23 = new ::vl::presentation::controls::GuiButton(__vwsn_controlStyle_)); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_24 = ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_23)->GetBoundsComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_24)->SetPreferredMinSize([&](){ ::vl::presentation::Size __vwsn_temp__; __vwsn_temp__.x = 100; __vwsn_temp__.y = 30; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_23)->SetText(::vl::WString(L"Sign Up ...", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_22)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_23)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_21)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_22))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_25 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_25)->SetSite(0, 1, 1, 1); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateButtonStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_26 = new ::vl::presentation::controls::GuiButton(__vwsn_controlStyle_)); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_27 = ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_26)->GetBoundsComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_27)->SetPreferredMinSize([&](){ ::vl::presentation::Size __vwsn_temp__; __vwsn_temp__.x = 100; __vwsn_temp__.y = 30; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_26)->SetText(::vl::WString(L"Log In", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_25)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_26)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_21)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_25))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_28 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_28)->SetSite(0, 3, 1, 1); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateButtonStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_29 = new ::vl::presentation::controls::GuiButton(__vwsn_controlStyle_)); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_30 = ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_29)->GetBoundsComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_30)->SetPreferredMinSize([&](){ ::vl::presentation::Size __vwsn_temp__; __vwsn_temp__.x = 100; __vwsn_temp__.y = 30; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_29)->SetText(::vl::WString(L"Close", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_28)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_29)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_21)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_28))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_20)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_21))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_1)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_20))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_0)->GetContainerComposition())->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_1))); + } + } - void MainWindow::OnCreate() + MainWindowConstructor::MainWindowConstructor() { } - void MainWindow::OnDestroy() - { - } - - // #endregion CLASS_MEMBER_GUIEVENT_HANDLER +/*********************************************************************** +Class (::demo::MainWindow) +***********************************************************************/ MainWindow::MainWindow() + : ::vl::presentation::controls::GuiWindow(::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateWindowStyle()) { - InitializeComponents(); - OnCreate(); + auto __vwsn_resource_ = ::vl::__vwsn::This(::vl::presentation::GetResourceManager())->GetResourceFromClassName(::vl::WString(L"demo::MainWindow", 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)->__vwsn_initialize_instance_(this, ::vl::__vwsn::Ensure(static_cast<::vl::presentation::GuiResourcePathResolver*>(__vwsn_resolver_.Obj()))); } MainWindow::~MainWindow() { - OnDestroy(); - ClearSubscriptions(); + ::vl::__vwsn::This(this)->ClearSubscriptions(); } -} +} +#undef GLOBAL_SYMBOL +#undef GLOBAL_NAME +#undef GLOBAL_OBJ +#undef USERIMPL + +/*********************************************************************** +Reflection +***********************************************************************/ namespace vl { @@ -44,47 +359,84 @@ namespace vl { namespace description { - #define _ , - IMPL_CPP_TYPE_INFO(demo::MainWindow) +#ifndef VCZH_DEBUG_NO_REFLECTION + IMPL_CPP_TYPE_INFO(::demo::MainWindow) + IMPL_CPP_TYPE_INFO(::demo::MainWindowConstructor) - BEGIN_CLASS_MEMBER(demo::MainWindow) - CLASS_MEMBER_BASE(::vl::presentation::controls::GuiWindow) - CLASS_MEMBER_CONSTRUCTOR(demo::MainWindow*(), NO_PARAMETER) - END_CLASS_MEMBER(demo::MainWindow) +#define _ , + BEGIN_CLASS_MEMBER(::demo::MainWindow) + END_CLASS_MEMBER(::demo::MainWindow) - #undef _ + BEGIN_CLASS_MEMBER(::demo::MainWindowConstructor) + CLASS_MEMBER_METHOD(__vwsn_initialize_instance_, { L"__vwsn_this_" _ L"__vwsn_resolver_" }) + CLASS_MEMBER_FIELD(__vwsn_precompile_0) + CLASS_MEMBER_FIELD(__vwsn_precompile_1) + CLASS_MEMBER_FIELD(__vwsn_precompile_10) + CLASS_MEMBER_FIELD(__vwsn_precompile_11) + CLASS_MEMBER_FIELD(__vwsn_precompile_12) + CLASS_MEMBER_FIELD(__vwsn_precompile_13) + CLASS_MEMBER_FIELD(__vwsn_precompile_14) + CLASS_MEMBER_FIELD(__vwsn_precompile_15) + CLASS_MEMBER_FIELD(__vwsn_precompile_16) + CLASS_MEMBER_FIELD(__vwsn_precompile_17) + CLASS_MEMBER_FIELD(__vwsn_precompile_18) + CLASS_MEMBER_FIELD(__vwsn_precompile_19) + CLASS_MEMBER_FIELD(__vwsn_precompile_2) + CLASS_MEMBER_FIELD(__vwsn_precompile_20) + CLASS_MEMBER_FIELD(__vwsn_precompile_21) + CLASS_MEMBER_FIELD(__vwsn_precompile_22) + CLASS_MEMBER_FIELD(__vwsn_precompile_23) + CLASS_MEMBER_FIELD(__vwsn_precompile_24) + CLASS_MEMBER_FIELD(__vwsn_precompile_25) + CLASS_MEMBER_FIELD(__vwsn_precompile_26) + CLASS_MEMBER_FIELD(__vwsn_precompile_27) + CLASS_MEMBER_FIELD(__vwsn_precompile_28) + CLASS_MEMBER_FIELD(__vwsn_precompile_29) + CLASS_MEMBER_FIELD(__vwsn_precompile_3) + CLASS_MEMBER_FIELD(__vwsn_precompile_30) + CLASS_MEMBER_FIELD(__vwsn_precompile_31) + CLASS_MEMBER_FIELD(__vwsn_precompile_4) + CLASS_MEMBER_FIELD(__vwsn_precompile_5) + CLASS_MEMBER_FIELD(__vwsn_precompile_6) + CLASS_MEMBER_FIELD(__vwsn_precompile_7) + CLASS_MEMBER_FIELD(__vwsn_precompile_8) + CLASS_MEMBER_FIELD(__vwsn_precompile_9) + END_CLASS_MEMBER(::demo::MainWindowConstructor) - class DemoResourceLoader : public Object, public ITypeLoader +#undef _ + class DemoTypeLoader : public Object, public ITypeLoader { public: void Load(ITypeManager* manager) { - ADD_TYPE_INFO(demo::MainWindow) + ADD_TYPE_INFO(::demo::MainWindow) + ADD_TYPE_INFO(::demo::MainWindowConstructor) } void Unload(ITypeManager* manager) { } }; +#endif - class DemoResourcePlugin : public Object, public vl::presentation::controls::IGuiPlugin + bool LoadDemoTypes() { - public: - void Load()override +#ifndef VCZH_DEBUG_NO_REFLECTION + if (auto manager = GetGlobalTypeManager()) { - GetGlobalTypeManager()->AddTypeLoader(new DemoResourceLoader); + return manager->AddTypeLoader(MakePtr()); } - - void AfterLoad()override - { - } - - void Unload()override - { - } - }; - GUI_REGISTER_PLUGIN(DemoResourcePlugin) +#endif + return false; + } } } } +#if defined( _MSC_VER) +#pragma warning(pop) +#elif defined(__GNUC__) +#pragma GCC diagnostic pop +#elif defined(__clang__) +#pragma clang diagnostic pop +#endif diff --git a/Tutorial/GacUI_Layout/Table/UI/Source/DemoPartialClasses.h b/Tutorial/GacUI_Layout/Table/UI/Source/DemoPartialClasses.h index 5038d7b8..522d9b5e 100644 --- a/Tutorial/GacUI_Layout/Table/UI/Source/DemoPartialClasses.h +++ b/Tutorial/GacUI_Layout/Table/UI/Source/DemoPartialClasses.h @@ -1,76 +1,107 @@ -/*********************************************************************** -Vczh Library++ 3.0 -Developer: Zihan Chen(vczh) -GacUI::Partial Classes +/*********************************************************************** +!!!!!! DO NOT MODIFY !!!!!! -This file is generated by: Vczh GacUI Resource Code Generator -************************************************************************ -DO NOT MODIFY +GacGen.exe Resource.xml + +This file is generated by Workflow compiler +https://github.com/vczh-libraries ***********************************************************************/ -#ifndef VCZH_GACUI_RESOURCE_CODE_GENERATOR_Demo_PARTIAL_CLASSES -#define VCZH_GACUI_RESOURCE_CODE_GENERATOR_Demo_PARTIAL_CLASSES +#ifndef VCZH_WORKFLOW_COMPILER_GENERATED_DEMOPARTIALCLASSES +#define VCZH_WORKFLOW_COMPILER_GENERATED_DEMOPARTIALCLASSES -#include "GacUIReflection.h" + +#if defined( _MSC_VER) +#pragma warning(push) +#pragma warning(disable:4250) +#elif defined(__GNUC__) +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wparentheses-equality" +#elif defined(__clang__) +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wparentheses-equality" +#endif namespace demo { + class MainWindowConstructor; class MainWindow; - template - class MainWindow_ : public ::vl::presentation::controls::GuiWindow, public vl::presentation::GuiInstancePartialClass, public vl::reflection::Description + class MainWindowConstructor : public ::vl::Object, public ::vl::reflection::Description { - friend struct vl::reflection::description::CustomTypeDescriptorSelector; - private: +#ifndef VCZH_DEBUG_NO_REFLECTION + friend struct ::vl::reflection::description::CustomTypeDescriptorSelector; +#endif protected: - - void InitializeComponents() - { - if (InitializeFromResource()) - { - } - else - { - } - } + ::demo::MainWindow* __vwsn_precompile_0 = static_cast<::demo::MainWindow*>(nullptr); + ::vl::presentation::compositions::GuiTableComposition* __vwsn_precompile_1 = static_cast<::vl::presentation::compositions::GuiTableComposition*>(nullptr); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_2 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::Ptr<::vl::presentation::elements::GuiSolidLabelElement> __vwsn_precompile_3 = ::vl::Ptr<::vl::presentation::elements::GuiSolidLabelElement>(); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_4 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::presentation::controls::GuiLabel* __vwsn_precompile_5 = static_cast<::vl::presentation::controls::GuiLabel*>(nullptr); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_6 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::presentation::controls::GuiSinglelineTextBox* __vwsn_precompile_7 = static_cast<::vl::presentation::controls::GuiSinglelineTextBox*>(nullptr); + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_8 = static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_9 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::presentation::controls::GuiButton* __vwsn_precompile_10 = static_cast<::vl::presentation::controls::GuiButton*>(nullptr); + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_11 = static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_12 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::presentation::controls::GuiLabel* __vwsn_precompile_13 = static_cast<::vl::presentation::controls::GuiLabel*>(nullptr); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_14 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::presentation::controls::GuiSinglelineTextBox* __vwsn_precompile_15 = static_cast<::vl::presentation::controls::GuiSinglelineTextBox*>(nullptr); + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_16 = static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_17 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::presentation::controls::GuiButton* __vwsn_precompile_18 = static_cast<::vl::presentation::controls::GuiButton*>(nullptr); + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_19 = static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_20 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::presentation::compositions::GuiTableComposition* __vwsn_precompile_21 = static_cast<::vl::presentation::compositions::GuiTableComposition*>(nullptr); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_22 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::presentation::controls::GuiButton* __vwsn_precompile_23 = static_cast<::vl::presentation::controls::GuiButton*>(nullptr); + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_24 = static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_25 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::presentation::controls::GuiButton* __vwsn_precompile_26 = static_cast<::vl::presentation::controls::GuiButton*>(nullptr); + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_27 = static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_28 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::presentation::controls::GuiButton* __vwsn_precompile_29 = static_cast<::vl::presentation::controls::GuiButton*>(nullptr); + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_30 = static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr); + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_31 = static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr); + void __vwsn_initialize_instance_(::demo::MainWindow* __vwsn_this_, ::vl::presentation::GuiResourcePathResolver* __vwsn_resolver_); public: - MainWindow_() - :vl::presentation::GuiInstancePartialClass<::vl::presentation::controls::GuiWindow>(L"demo::MainWindow") - ,::vl::presentation::controls::GuiWindow(vl::presentation::theme::GetCurrentTheme()->CreateWindowStyle()) - { - } + MainWindowConstructor(); }; -} -namespace vl -{ - namespace reflection + class MainWindow : public ::vl::presentation::controls::GuiWindow, public ::demo::MainWindowConstructor, public ::vl::reflection::Description { - namespace description - { - DECL_TYPE_INFO(demo::MainWindow) - - } - } -} -namespace demo -{ - class MainWindow : public demo::MainWindow_ - { - friend class demo::MainWindow_; - friend struct vl::reflection::description::CustomTypeDescriptorSelector; - protected: - - // #region CLASS_MEMBER_GUIEVENT_HANDLER (DO NOT PUT OTHER CONTENT IN THIS #region.) - void OnCreate(); - void OnDestroy(); - // #endregion CLASS_MEMBER_GUIEVENT_HANDLER + friend class ::demo::MainWindowConstructor; +#ifndef VCZH_DEBUG_NO_REFLECTION + friend struct ::vl::reflection::description::CustomTypeDescriptorSelector; +#endif public: MainWindow(); ~MainWindow(); }; + +} +/*********************************************************************** +Global Variables and Functions +***********************************************************************/ + +namespace vl_workflow_global +{ + class Demo + { + public: + + static Demo& Instance(); + }; } - +#if defined( _MSC_VER) +#pragma warning(pop) +#elif defined(__GNUC__) +#pragma GCC diagnostic pop +#elif defined(__clang__) +#pragma clang diagnostic pop +#endif #endif diff --git a/Tutorial/GacUI_Layout/TableSplitter/TableSplitter.vcxproj b/Tutorial/GacUI_Layout/TableSplitter/TableSplitter.vcxproj index a324f935..dfdd83d9 100644 --- a/Tutorial/GacUI_Layout/TableSplitter/TableSplitter.vcxproj +++ b/Tutorial/GacUI_Layout/TableSplitter/TableSplitter.vcxproj @@ -91,8 +91,8 @@ - - {8018d622-66ba-4e65-9d03-bdac37ea9a54} + + {96c559ca-9718-4bec-a053-28a0ab6a8ca2} diff --git a/Tutorial/GacUI_Layout/TableSplitter/UI/Resource.xml b/Tutorial/GacUI_Layout/TableSplitter/UI/Resource.xml index fde6506f..cc13b5c8 100644 --- a/Tutorial/GacUI_Layout/TableSplitter/UI/Resource.xml +++ b/Tutorial/GacUI_Layout/TableSplitter/UI/Resource.xml @@ -2,14 +2,10 @@ - Source - GacUIReflection.h + Source + ..\..\UIRes\TableSplitter.bin + GacUI.h Demo - - - - ..\..\UIRes - TableSplitter.bin diff --git a/Tutorial/GacUI_Layout/TableSplitter/UI/Source/Demo.h b/Tutorial/GacUI_Layout/TableSplitter/UI/Source/Demo.h index febeba0f..a12c85a4 100644 --- a/Tutorial/GacUI_Layout/TableSplitter/UI/Source/Demo.h +++ b/Tutorial/GacUI_Layout/TableSplitter/UI/Source/Demo.h @@ -1,16 +1,35 @@ -/*********************************************************************** -Vczh Library++ 3.0 -Developer: Zihan Chen(vczh) -GacUI::Demo +/*********************************************************************** +!!!!!! DO NOT MODIFY !!!!!! -This file is generated by: Vczh GacUI Resource Code Generator -************************************************************************ -DO NOT MODIFY +GacGen.exe Resource.xml + +This file is generated by Workflow compiler +https://github.com/vczh-libraries ***********************************************************************/ -#ifndef VCZH_GACUI_RESOURCE_CODE_GENERATOR_Demo -#define VCZH_GACUI_RESOURCE_CODE_GENERATOR_Demo +#ifndef VCZH_WORKFLOW_COMPILER_GENERATED_DEMO +#define VCZH_WORKFLOW_COMPILER_GENERATED_DEMO #include "DemoPartialClasses.h" +/*********************************************************************** +Reflection +***********************************************************************/ + +namespace vl +{ + namespace reflection + { + namespace description + { +#ifndef VCZH_DEBUG_NO_REFLECTION + DECL_TYPE_INFO(::demo::MainWindow) + DECL_TYPE_INFO(::demo::MainWindowConstructor) +#endif + + extern bool LoadDemoTypes(); + } + } +} + #endif diff --git a/Tutorial/GacUI_Layout/TableSplitter/UI/Source/DemoPartialClasses.cpp b/Tutorial/GacUI_Layout/TableSplitter/UI/Source/DemoPartialClasses.cpp index 1967f719..2123f442 100644 --- a/Tutorial/GacUI_Layout/TableSplitter/UI/Source/DemoPartialClasses.cpp +++ b/Tutorial/GacUI_Layout/TableSplitter/UI/Source/DemoPartialClasses.cpp @@ -1,42 +1,2336 @@ -/*********************************************************************** -Vczh Library++ 3.0 -Developer: Zihan Chen(vczh) -GacUI::Partial Classes +/*********************************************************************** +!!!!!! DO NOT MODIFY !!!!!! -This file is generated by: Vczh GacUI Resource Code Generator -************************************************************************ -DO NOT MODIFY +GacGen.exe Resource.xml + +This file is generated by Workflow compiler +https://github.com/vczh-libraries ***********************************************************************/ #include "Demo.h" +#if defined( _MSC_VER) +#pragma warning(push) +#pragma warning(disable:4250) +#elif defined(__GNUC__) +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wparentheses-equality" +#elif defined(__clang__) +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wparentheses-equality" +#endif + +#define GLOBAL_SYMBOL ::vl_workflow_global::Demo:: +#define GLOBAL_NAME ::vl_workflow_global::Demo::Instance(). +#define GLOBAL_OBJ &::vl_workflow_global::Demo::Instance() +#define USERIMPL(...) + +/*********************************************************************** +Global Variables +***********************************************************************/ + +BEGIN_GLOBAL_STORAGE_CLASS(vl_workflow_global_Demo) + vl_workflow_global::Demo instance; + INITIALIZE_GLOBAL_STORAGE_CLASS + FINALIZE_GLOBAL_STORAGE_CLASS +END_GLOBAL_STORAGE_CLASS(vl_workflow_global_Demo) + +namespace vl_workflow_global +{ +/*********************************************************************** +Closure Definitions +***********************************************************************/ + + struct __vwsnf1_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ + { + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnf1_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0); + + void operator()(::vl::reflection::description::Value __vwsn_value_) const; + }; + + struct __vwsnf2_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ + { + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnf2_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0); + + void operator()(::vl::reflection::description::Value __vwsn_value_) const; + }; + + struct __vwsnf3_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ + { + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnf3_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0); + + void operator()(::vl::reflection::description::Value __vwsn_value_) const; + }; + + struct __vwsnf4_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ + { + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnf4_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0); + + void operator()(::vl::reflection::description::Value __vwsn_value_) const; + }; + + struct __vwsnf5_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ + { + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnf5_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0); + + void operator()(::vl::reflection::description::Value __vwsn_value_) const; + }; + + struct __vwsnf6_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ + { + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnf6_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0); + + void operator()(::vl::reflection::description::Value __vwsn_value_) const; + }; + + struct __vwsnf7_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ + { + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnf7_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0); + + void operator()(::vl::reflection::description::Value __vwsn_value_) const; + }; + + struct __vwsnf8_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ + { + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnf8_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0); + + void operator()(::vl::reflection::description::Value __vwsn_value_) const; + }; + + struct __vwsnf9_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ + { + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnf9_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0); + + void operator()(::vl::reflection::description::Value __vwsn_value_) const; + }; + + class __vwsnc10_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener : public ::vl::Object, public virtual ::vl::reflection::description::IValueListener + { + public: + ::vl::Ptr<::vl::reflection::description::IValueDictionary> __vwsn_bind_listeners_; + ::vl::reflection::description::IValueSubscription* __vwsn_subscription_; + ::vl::reflection::description::IValueSubscription* __vwsnthis_0; + ::demo::MainWindowConstructor* __vwsnthis_1; + + __vwsnc10_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener(::vl::Ptr<::vl::reflection::description::IValueDictionary> __vwsnctor___vwsn_bind_listeners_, ::vl::reflection::description::IValueSubscription* __vwsnctor___vwsn_subscription_, ::vl::reflection::description::IValueSubscription* __vwsnctorthis_0, ::demo::MainWindowConstructor* __vwsnctorthis_1); + + ::vl::reflection::description::IValueSubscription* GetSubscription() override; + bool GetStopped() override; + bool StopListening() override; + }; + + class __vwsnc11_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnc11_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription(::demo::MainWindowConstructor* __vwsnctorthis_0); + + ::vl::presentation::compositions::GuiTableComposition* __vwsn_bind_cache_0 = nullptr; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_0; + bool __vwsn_bind_opened_ = false; + bool __vwsn_bind_closed_ = false; + ::vl::Ptr<::vl::reflection::description::IValueDictionary> __vwsn_bind_listeners_; + void __vwsn_bind_activator_(); + void __vwsn_bind_callback_0_0(::vl::presentation::compositions::GuiGraphicsComposition* __vwsn_bind_callback_argument_0, ::vl::presentation::compositions::GuiEventArgs* __vwsn_bind_callback_argument_1); + void __vwsn_bind_initialize_(); + ::vl::Ptr<::vl::reflection::description::IValueListener> Subscribe(const ::vl::Func& __vwsn_bind_callback_) override; + bool Update() override; + bool Close() override; + }; + + class __vwsnc12_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener : public ::vl::Object, public virtual ::vl::reflection::description::IValueListener + { + public: + ::vl::Ptr<::vl::reflection::description::IValueDictionary> __vwsn_bind_listeners_; + ::vl::reflection::description::IValueSubscription* __vwsn_subscription_; + ::vl::reflection::description::IValueSubscription* __vwsnthis_0; + ::demo::MainWindowConstructor* __vwsnthis_1; + + __vwsnc12_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener(::vl::Ptr<::vl::reflection::description::IValueDictionary> __vwsnctor___vwsn_bind_listeners_, ::vl::reflection::description::IValueSubscription* __vwsnctor___vwsn_subscription_, ::vl::reflection::description::IValueSubscription* __vwsnctorthis_0, ::demo::MainWindowConstructor* __vwsnctorthis_1); + + ::vl::reflection::description::IValueSubscription* GetSubscription() override; + bool GetStopped() override; + bool StopListening() override; + }; + + class __vwsnc13_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnc13_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription(::demo::MainWindowConstructor* __vwsnctorthis_0); + + ::vl::presentation::compositions::GuiTableComposition* __vwsn_bind_cache_0 = nullptr; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_0; + bool __vwsn_bind_opened_ = false; + bool __vwsn_bind_closed_ = false; + ::vl::Ptr<::vl::reflection::description::IValueDictionary> __vwsn_bind_listeners_; + void __vwsn_bind_activator_(); + void __vwsn_bind_callback_0_0(::vl::presentation::compositions::GuiGraphicsComposition* __vwsn_bind_callback_argument_0, ::vl::presentation::compositions::GuiEventArgs* __vwsn_bind_callback_argument_1); + void __vwsn_bind_initialize_(); + ::vl::Ptr<::vl::reflection::description::IValueListener> Subscribe(const ::vl::Func& __vwsn_bind_callback_) override; + bool Update() override; + bool Close() override; + }; + + class __vwsnc14_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener : public ::vl::Object, public virtual ::vl::reflection::description::IValueListener + { + public: + ::vl::Ptr<::vl::reflection::description::IValueDictionary> __vwsn_bind_listeners_; + ::vl::reflection::description::IValueSubscription* __vwsn_subscription_; + ::vl::reflection::description::IValueSubscription* __vwsnthis_0; + ::demo::MainWindowConstructor* __vwsnthis_1; + + __vwsnc14_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener(::vl::Ptr<::vl::reflection::description::IValueDictionary> __vwsnctor___vwsn_bind_listeners_, ::vl::reflection::description::IValueSubscription* __vwsnctor___vwsn_subscription_, ::vl::reflection::description::IValueSubscription* __vwsnctorthis_0, ::demo::MainWindowConstructor* __vwsnctorthis_1); + + ::vl::reflection::description::IValueSubscription* GetSubscription() override; + bool GetStopped() override; + bool StopListening() override; + }; + + class __vwsnc15_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnc15_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription(::demo::MainWindowConstructor* __vwsnctorthis_0); + + ::vl::presentation::compositions::GuiTableComposition* __vwsn_bind_cache_0 = nullptr; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_0; + bool __vwsn_bind_opened_ = false; + bool __vwsn_bind_closed_ = false; + ::vl::Ptr<::vl::reflection::description::IValueDictionary> __vwsn_bind_listeners_; + void __vwsn_bind_activator_(); + void __vwsn_bind_callback_0_0(::vl::presentation::compositions::GuiGraphicsComposition* __vwsn_bind_callback_argument_0, ::vl::presentation::compositions::GuiEventArgs* __vwsn_bind_callback_argument_1); + void __vwsn_bind_initialize_(); + ::vl::Ptr<::vl::reflection::description::IValueListener> Subscribe(const ::vl::Func& __vwsn_bind_callback_) override; + bool Update() override; + bool Close() override; + }; + + class __vwsnc16_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener : public ::vl::Object, public virtual ::vl::reflection::description::IValueListener + { + public: + ::vl::Ptr<::vl::reflection::description::IValueDictionary> __vwsn_bind_listeners_; + ::vl::reflection::description::IValueSubscription* __vwsn_subscription_; + ::vl::reflection::description::IValueSubscription* __vwsnthis_0; + ::demo::MainWindowConstructor* __vwsnthis_1; + + __vwsnc16_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener(::vl::Ptr<::vl::reflection::description::IValueDictionary> __vwsnctor___vwsn_bind_listeners_, ::vl::reflection::description::IValueSubscription* __vwsnctor___vwsn_subscription_, ::vl::reflection::description::IValueSubscription* __vwsnctorthis_0, ::demo::MainWindowConstructor* __vwsnctorthis_1); + + ::vl::reflection::description::IValueSubscription* GetSubscription() override; + bool GetStopped() override; + bool StopListening() override; + }; + + class __vwsnc17_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnc17_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription(::demo::MainWindowConstructor* __vwsnctorthis_0); + + ::vl::presentation::controls::GuiSelectableButton* __vwsn_bind_cache_0 = nullptr; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_0; + bool __vwsn_bind_opened_ = false; + bool __vwsn_bind_closed_ = false; + ::vl::Ptr<::vl::reflection::description::IValueDictionary> __vwsn_bind_listeners_; + void __vwsn_bind_activator_(); + void __vwsn_bind_callback_0_0(::vl::presentation::compositions::GuiGraphicsComposition* __vwsn_bind_callback_argument_0, ::vl::presentation::compositions::GuiEventArgs* __vwsn_bind_callback_argument_1); + void __vwsn_bind_initialize_(); + ::vl::Ptr<::vl::reflection::description::IValueListener> Subscribe(const ::vl::Func& __vwsn_bind_callback_) override; + bool Update() override; + bool Close() override; + }; + + class __vwsnc18_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener : public ::vl::Object, public virtual ::vl::reflection::description::IValueListener + { + public: + ::vl::Ptr<::vl::reflection::description::IValueDictionary> __vwsn_bind_listeners_; + ::vl::reflection::description::IValueSubscription* __vwsn_subscription_; + ::vl::reflection::description::IValueSubscription* __vwsnthis_0; + ::demo::MainWindowConstructor* __vwsnthis_1; + + __vwsnc18_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener(::vl::Ptr<::vl::reflection::description::IValueDictionary> __vwsnctor___vwsn_bind_listeners_, ::vl::reflection::description::IValueSubscription* __vwsnctor___vwsn_subscription_, ::vl::reflection::description::IValueSubscription* __vwsnctorthis_0, ::demo::MainWindowConstructor* __vwsnctorthis_1); + + ::vl::reflection::description::IValueSubscription* GetSubscription() override; + bool GetStopped() override; + bool StopListening() override; + }; + + class __vwsnc1_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnc1_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription(::demo::MainWindowConstructor* __vwsnctorthis_0); + + ::vl::presentation::compositions::GuiTableComposition* __vwsn_bind_cache_0 = nullptr; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_0; + bool __vwsn_bind_opened_ = false; + bool __vwsn_bind_closed_ = false; + ::vl::Ptr<::vl::reflection::description::IValueDictionary> __vwsn_bind_listeners_; + void __vwsn_bind_activator_(); + void __vwsn_bind_callback_0_0(::vl::presentation::compositions::GuiGraphicsComposition* __vwsn_bind_callback_argument_0, ::vl::presentation::compositions::GuiEventArgs* __vwsn_bind_callback_argument_1); + void __vwsn_bind_initialize_(); + ::vl::Ptr<::vl::reflection::description::IValueListener> Subscribe(const ::vl::Func& __vwsn_bind_callback_) override; + bool Update() override; + bool Close() override; + }; + + class __vwsnc2_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener : public ::vl::Object, public virtual ::vl::reflection::description::IValueListener + { + public: + ::vl::Ptr<::vl::reflection::description::IValueDictionary> __vwsn_bind_listeners_; + ::vl::reflection::description::IValueSubscription* __vwsn_subscription_; + ::vl::reflection::description::IValueSubscription* __vwsnthis_0; + ::demo::MainWindowConstructor* __vwsnthis_1; + + __vwsnc2_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener(::vl::Ptr<::vl::reflection::description::IValueDictionary> __vwsnctor___vwsn_bind_listeners_, ::vl::reflection::description::IValueSubscription* __vwsnctor___vwsn_subscription_, ::vl::reflection::description::IValueSubscription* __vwsnctorthis_0, ::demo::MainWindowConstructor* __vwsnctorthis_1); + + ::vl::reflection::description::IValueSubscription* GetSubscription() override; + bool GetStopped() override; + bool StopListening() override; + }; + + class __vwsnc3_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnc3_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription(::demo::MainWindowConstructor* __vwsnctorthis_0); + + ::vl::presentation::compositions::GuiTableComposition* __vwsn_bind_cache_0 = nullptr; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_0; + bool __vwsn_bind_opened_ = false; + bool __vwsn_bind_closed_ = false; + ::vl::Ptr<::vl::reflection::description::IValueDictionary> __vwsn_bind_listeners_; + void __vwsn_bind_activator_(); + void __vwsn_bind_callback_0_0(::vl::presentation::compositions::GuiGraphicsComposition* __vwsn_bind_callback_argument_0, ::vl::presentation::compositions::GuiEventArgs* __vwsn_bind_callback_argument_1); + void __vwsn_bind_initialize_(); + ::vl::Ptr<::vl::reflection::description::IValueListener> Subscribe(const ::vl::Func& __vwsn_bind_callback_) override; + bool Update() override; + bool Close() override; + }; + + class __vwsnc4_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener : public ::vl::Object, public virtual ::vl::reflection::description::IValueListener + { + public: + ::vl::Ptr<::vl::reflection::description::IValueDictionary> __vwsn_bind_listeners_; + ::vl::reflection::description::IValueSubscription* __vwsn_subscription_; + ::vl::reflection::description::IValueSubscription* __vwsnthis_0; + ::demo::MainWindowConstructor* __vwsnthis_1; + + __vwsnc4_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener(::vl::Ptr<::vl::reflection::description::IValueDictionary> __vwsnctor___vwsn_bind_listeners_, ::vl::reflection::description::IValueSubscription* __vwsnctor___vwsn_subscription_, ::vl::reflection::description::IValueSubscription* __vwsnctorthis_0, ::demo::MainWindowConstructor* __vwsnctorthis_1); + + ::vl::reflection::description::IValueSubscription* GetSubscription() override; + bool GetStopped() override; + bool StopListening() override; + }; + + class __vwsnc5_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnc5_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription(::demo::MainWindowConstructor* __vwsnctorthis_0); + + ::vl::presentation::compositions::GuiTableComposition* __vwsn_bind_cache_0 = nullptr; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_0; + bool __vwsn_bind_opened_ = false; + bool __vwsn_bind_closed_ = false; + ::vl::Ptr<::vl::reflection::description::IValueDictionary> __vwsn_bind_listeners_; + void __vwsn_bind_activator_(); + void __vwsn_bind_callback_0_0(::vl::presentation::compositions::GuiGraphicsComposition* __vwsn_bind_callback_argument_0, ::vl::presentation::compositions::GuiEventArgs* __vwsn_bind_callback_argument_1); + void __vwsn_bind_initialize_(); + ::vl::Ptr<::vl::reflection::description::IValueListener> Subscribe(const ::vl::Func& __vwsn_bind_callback_) override; + bool Update() override; + bool Close() override; + }; + + class __vwsnc6_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener : public ::vl::Object, public virtual ::vl::reflection::description::IValueListener + { + public: + ::vl::Ptr<::vl::reflection::description::IValueDictionary> __vwsn_bind_listeners_; + ::vl::reflection::description::IValueSubscription* __vwsn_subscription_; + ::vl::reflection::description::IValueSubscription* __vwsnthis_0; + ::demo::MainWindowConstructor* __vwsnthis_1; + + __vwsnc6_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener(::vl::Ptr<::vl::reflection::description::IValueDictionary> __vwsnctor___vwsn_bind_listeners_, ::vl::reflection::description::IValueSubscription* __vwsnctor___vwsn_subscription_, ::vl::reflection::description::IValueSubscription* __vwsnctorthis_0, ::demo::MainWindowConstructor* __vwsnctorthis_1); + + ::vl::reflection::description::IValueSubscription* GetSubscription() override; + bool GetStopped() override; + bool StopListening() override; + }; + + class __vwsnc7_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnc7_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription(::demo::MainWindowConstructor* __vwsnctorthis_0); + + ::vl::presentation::compositions::GuiTableComposition* __vwsn_bind_cache_0 = nullptr; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_0; + bool __vwsn_bind_opened_ = false; + bool __vwsn_bind_closed_ = false; + ::vl::Ptr<::vl::reflection::description::IValueDictionary> __vwsn_bind_listeners_; + void __vwsn_bind_activator_(); + void __vwsn_bind_callback_0_0(::vl::presentation::compositions::GuiGraphicsComposition* __vwsn_bind_callback_argument_0, ::vl::presentation::compositions::GuiEventArgs* __vwsn_bind_callback_argument_1); + void __vwsn_bind_initialize_(); + ::vl::Ptr<::vl::reflection::description::IValueListener> Subscribe(const ::vl::Func& __vwsn_bind_callback_) override; + bool Update() override; + bool Close() override; + }; + + class __vwsnc8_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener : public ::vl::Object, public virtual ::vl::reflection::description::IValueListener + { + public: + ::vl::Ptr<::vl::reflection::description::IValueDictionary> __vwsn_bind_listeners_; + ::vl::reflection::description::IValueSubscription* __vwsn_subscription_; + ::vl::reflection::description::IValueSubscription* __vwsnthis_0; + ::demo::MainWindowConstructor* __vwsnthis_1; + + __vwsnc8_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener(::vl::Ptr<::vl::reflection::description::IValueDictionary> __vwsnctor___vwsn_bind_listeners_, ::vl::reflection::description::IValueSubscription* __vwsnctor___vwsn_subscription_, ::vl::reflection::description::IValueSubscription* __vwsnctorthis_0, ::demo::MainWindowConstructor* __vwsnctorthis_1); + + ::vl::reflection::description::IValueSubscription* GetSubscription() override; + bool GetStopped() override; + bool StopListening() override; + }; + + class __vwsnc9_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnc9_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription(::demo::MainWindowConstructor* __vwsnctorthis_0); + + ::vl::presentation::compositions::GuiTableComposition* __vwsn_bind_cache_0 = nullptr; + ::vl::Ptr<::vl::reflection::description::IEventHandler> __vwsn_bind_handler_0_0; + bool __vwsn_bind_opened_ = false; + bool __vwsn_bind_closed_ = false; + ::vl::Ptr<::vl::reflection::description::IValueDictionary> __vwsn_bind_listeners_; + void __vwsn_bind_activator_(); + void __vwsn_bind_callback_0_0(::vl::presentation::compositions::GuiGraphicsComposition* __vwsn_bind_callback_argument_0, ::vl::presentation::compositions::GuiEventArgs* __vwsn_bind_callback_argument_1); + void __vwsn_bind_initialize_(); + ::vl::Ptr<::vl::reflection::description::IValueListener> Subscribe(const ::vl::Func& __vwsn_bind_callback_) override; + bool Update() override; + bool Close() override; + }; + + //------------------------------------------------------------------- + + __vwsnf1_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf1_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + } + + void __vwsnf1_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::reflection::description::Value __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->__vwsn_precompile_16)->GetText(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::WString>(__vwsn_value_); + if ((__vwsn_old_ == __vwsn_new_)) + { + return; + } + ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->__vwsn_precompile_16)->SetText(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf2_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf2_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + } + + void __vwsnf2_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::reflection::description::Value __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->__vwsn_precompile_18)->GetText(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::WString>(__vwsn_value_); + if ((__vwsn_old_ == __vwsn_new_)) + { + return; + } + ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->__vwsn_precompile_18)->SetText(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf3_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf3_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + } + + void __vwsnf3_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::reflection::description::Value __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->__vwsn_precompile_24)->GetText(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::WString>(__vwsn_value_); + if ((__vwsn_old_ == __vwsn_new_)) + { + return; + } + ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->__vwsn_precompile_24)->SetText(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf4_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf4_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + } + + void __vwsnf4_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::reflection::description::Value __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->__vwsn_precompile_26)->GetText(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::WString>(__vwsn_value_); + if ((__vwsn_old_ == __vwsn_new_)) + { + return; + } + ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->__vwsn_precompile_26)->SetText(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf5_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf5_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + } + + void __vwsnf5_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::reflection::description::Value __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->__vwsn_precompile_28)->GetText(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::WString>(__vwsn_value_); + if ((__vwsn_old_ == __vwsn_new_)) + { + return; + } + ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->__vwsn_precompile_28)->SetText(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf6_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf6_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + } + + void __vwsnf6_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::reflection::description::Value __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->__vwsn_precompile_30)->GetText(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::WString>(__vwsn_value_); + if ((__vwsn_old_ == __vwsn_new_)) + { + return; + } + ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->__vwsn_precompile_30)->SetText(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf7_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf7_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + } + + void __vwsnf7_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::reflection::description::Value __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->__vwsn_precompile_36)->GetText(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::WString>(__vwsn_value_); + if ((__vwsn_old_ == __vwsn_new_)) + { + return; + } + ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->__vwsn_precompile_36)->SetText(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf8_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf8_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + } + + void __vwsnf8_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::reflection::description::Value __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->__vwsn_precompile_38)->GetText(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::WString>(__vwsn_value_); + if ((__vwsn_old_ == __vwsn_new_)) + { + return; + } + ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->__vwsn_precompile_38)->SetText(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf9_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf9_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + } + + void __vwsnf9_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::reflection::description::Value __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->table)->GetBorderVisible(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox(__vwsn_value_); + if ((__vwsn_old_ == __vwsn_new_)) + { + return; + } + ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->table)->SetBorderVisible(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnc10_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener::__vwsnc10_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener(::vl::Ptr<::vl::reflection::description::IValueDictionary> __vwsnctor___vwsn_bind_listeners_, ::vl::reflection::description::IValueSubscription* __vwsnctor___vwsn_subscription_, ::vl::reflection::description::IValueSubscription* __vwsnctorthis_0, ::demo::MainWindowConstructor* __vwsnctorthis_1) + :__vwsn_bind_listeners_(__vwsnctor___vwsn_bind_listeners_) + , __vwsn_subscription_(__vwsnctor___vwsn_subscription_) + , __vwsnthis_0(__vwsnctorthis_0) + , __vwsnthis_1(__vwsnctorthis_1) + { + } + + ::vl::reflection::description::IValueSubscription* __vwsnc10_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener::GetSubscription() + { + return ::vl::__vwsn::This(this)->__vwsn_subscription_; + } + + bool __vwsnc10_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener::GetStopped() + { + return (! ::vl::__vwsn::This(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_bind_listeners_.Obj())->GetKeys().Obj())->Contains(::vl::__vwsn::Box(this))); + } + + bool __vwsnc10_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener::StopListening() + { + if (::vl::__vwsn::This(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_bind_listeners_.Obj())->GetKeys().Obj())->Contains(::vl::__vwsn::Box(this))) + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_bind_listeners_.Obj())->Remove(::vl::__vwsn::Box(this)); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc11_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::__vwsnc11_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription(::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + this->__vwsn_bind_cache_0 = static_cast<::vl::presentation::compositions::GuiTableComposition*>(nullptr); + this->__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_opened_ = false; + this->__vwsn_bind_closed_ = false; + this->__vwsn_bind_listeners_ = ::vl::reflection::description::IValueDictionary::Create(); + } + + void __vwsnc11_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::__vwsn_bind_activator_() + { + auto __vwsn_bind_activator_result_ = ((::vl::WString(L"", false) + [&](auto _){ return ::vl::__vwsn::ToString(::vl::__vwsn::This(_)->GetRowOption(2).absolute); }(__vwsn_bind_cache_0)) + ::vl::WString(L"px", false)); + using __vwsnt_0 = ::vl::reflection::description::Value; + FOREACH(__vwsnt_0, __vwsn_bind_callback_, ::vl::reflection::description::GetLazyList<::vl::reflection::description::Value>(::vl::__vwsn::This(__vwsn_bind_listeners_.Obj())->GetValues())) + { + ::vl::__vwsn::Unbox<::vl::Func>(__vwsn_bind_callback_)(::vl::__vwsn::Box(__vwsn_bind_activator_result_)); + } + } + + void __vwsnc11_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0(::vl::presentation::compositions::GuiGraphicsComposition* __vwsn_bind_callback_argument_0, ::vl::presentation::compositions::GuiEventArgs* __vwsn_bind_callback_argument_1) + { + ::vl::__vwsn::This(this)->__vwsn_bind_activator_(); + } + + void __vwsnc11_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::__vwsn_bind_initialize_() + { + (__vwsn_bind_cache_0 = ::vl::__vwsn::This(__vwsnthis_0)->table); + (__vwsn_bind_handler_0_0 = ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_0)->ConfigChanged, ::vl::Func(::vl::__vwsn::This(this), &__vwsnc11_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0))); + } + + ::vl::Ptr<::vl::reflection::description::IValueListener> __vwsnc11_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::Subscribe(const ::vl::Func& __vwsn_bind_callback_) + { + if ((! __vwsn_bind_opened_)) + { + (__vwsn_bind_opened_ = true); + ::vl::__vwsn::This(this)->__vwsn_bind_initialize_(); + } + auto __vwsn_subscription_ = this; + auto __vwsn_listener_shared_ = ::vl::Ptr<::vl::reflection::description::IValueListener>(new ::vl_workflow_global::__vwsnc12_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener(__vwsn_bind_listeners_, __vwsn_subscription_, this, __vwsnthis_0)); + ::vl::__vwsn::This(__vwsn_bind_listeners_.Obj())->Set(::vl::__vwsn::Box(__vwsn_listener_shared_), ::vl::__vwsn::Box(__vwsn_bind_callback_)); + return __vwsn_listener_shared_; + } + + bool __vwsnc11_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::Update() + { + if ((! __vwsn_bind_closed_)) + { + ::vl::__vwsn::This(this)->__vwsn_bind_activator_(); + return true; + } + return false; + } + + bool __vwsnc11_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::Close() + { + if ((! __vwsn_bind_closed_)) + { + (__vwsn_bind_closed_ = true); + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_0)->ConfigChanged, __vwsn_bind_handler_0_0); + (__vwsn_bind_cache_0 = static_cast<::vl::presentation::compositions::GuiTableComposition*>(nullptr)); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + ::vl::__vwsn::This(__vwsn_bind_listeners_.Obj())->Clear(); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc12_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener::__vwsnc12_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener(::vl::Ptr<::vl::reflection::description::IValueDictionary> __vwsnctor___vwsn_bind_listeners_, ::vl::reflection::description::IValueSubscription* __vwsnctor___vwsn_subscription_, ::vl::reflection::description::IValueSubscription* __vwsnctorthis_0, ::demo::MainWindowConstructor* __vwsnctorthis_1) + :__vwsn_bind_listeners_(__vwsnctor___vwsn_bind_listeners_) + , __vwsn_subscription_(__vwsnctor___vwsn_subscription_) + , __vwsnthis_0(__vwsnctorthis_0) + , __vwsnthis_1(__vwsnctorthis_1) + { + } + + ::vl::reflection::description::IValueSubscription* __vwsnc12_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener::GetSubscription() + { + return ::vl::__vwsn::This(this)->__vwsn_subscription_; + } + + bool __vwsnc12_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener::GetStopped() + { + return (! ::vl::__vwsn::This(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_bind_listeners_.Obj())->GetKeys().Obj())->Contains(::vl::__vwsn::Box(this))); + } + + bool __vwsnc12_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener::StopListening() + { + if (::vl::__vwsn::This(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_bind_listeners_.Obj())->GetKeys().Obj())->Contains(::vl::__vwsn::Box(this))) + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_bind_listeners_.Obj())->Remove(::vl::__vwsn::Box(this)); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc13_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::__vwsnc13_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription(::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + this->__vwsn_bind_cache_0 = static_cast<::vl::presentation::compositions::GuiTableComposition*>(nullptr); + this->__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_opened_ = false; + this->__vwsn_bind_closed_ = false; + this->__vwsn_bind_listeners_ = ::vl::reflection::description::IValueDictionary::Create(); + } + + void __vwsnc13_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::__vwsn_bind_activator_() + { + auto __vwsn_bind_activator_result_ = ((::vl::WString(L"", false) + [&](auto _){ return ::vl::__vwsn::ToString(::vl::__vwsn::This(_)->GetRowOption(5).absolute); }(__vwsn_bind_cache_0)) + ::vl::WString(L"px", false)); + using __vwsnt_0 = ::vl::reflection::description::Value; + FOREACH(__vwsnt_0, __vwsn_bind_callback_, ::vl::reflection::description::GetLazyList<::vl::reflection::description::Value>(::vl::__vwsn::This(__vwsn_bind_listeners_.Obj())->GetValues())) + { + ::vl::__vwsn::Unbox<::vl::Func>(__vwsn_bind_callback_)(::vl::__vwsn::Box(__vwsn_bind_activator_result_)); + } + } + + void __vwsnc13_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0(::vl::presentation::compositions::GuiGraphicsComposition* __vwsn_bind_callback_argument_0, ::vl::presentation::compositions::GuiEventArgs* __vwsn_bind_callback_argument_1) + { + ::vl::__vwsn::This(this)->__vwsn_bind_activator_(); + } + + void __vwsnc13_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::__vwsn_bind_initialize_() + { + (__vwsn_bind_cache_0 = ::vl::__vwsn::This(__vwsnthis_0)->table); + (__vwsn_bind_handler_0_0 = ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_0)->ConfigChanged, ::vl::Func(::vl::__vwsn::This(this), &__vwsnc13_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0))); + } + + ::vl::Ptr<::vl::reflection::description::IValueListener> __vwsnc13_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::Subscribe(const ::vl::Func& __vwsn_bind_callback_) + { + if ((! __vwsn_bind_opened_)) + { + (__vwsn_bind_opened_ = true); + ::vl::__vwsn::This(this)->__vwsn_bind_initialize_(); + } + auto __vwsn_subscription_ = this; + auto __vwsn_listener_shared_ = ::vl::Ptr<::vl::reflection::description::IValueListener>(new ::vl_workflow_global::__vwsnc14_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener(__vwsn_bind_listeners_, __vwsn_subscription_, this, __vwsnthis_0)); + ::vl::__vwsn::This(__vwsn_bind_listeners_.Obj())->Set(::vl::__vwsn::Box(__vwsn_listener_shared_), ::vl::__vwsn::Box(__vwsn_bind_callback_)); + return __vwsn_listener_shared_; + } + + bool __vwsnc13_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::Update() + { + if ((! __vwsn_bind_closed_)) + { + ::vl::__vwsn::This(this)->__vwsn_bind_activator_(); + return true; + } + return false; + } + + bool __vwsnc13_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::Close() + { + if ((! __vwsn_bind_closed_)) + { + (__vwsn_bind_closed_ = true); + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_0)->ConfigChanged, __vwsn_bind_handler_0_0); + (__vwsn_bind_cache_0 = static_cast<::vl::presentation::compositions::GuiTableComposition*>(nullptr)); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + ::vl::__vwsn::This(__vwsn_bind_listeners_.Obj())->Clear(); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc14_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener::__vwsnc14_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener(::vl::Ptr<::vl::reflection::description::IValueDictionary> __vwsnctor___vwsn_bind_listeners_, ::vl::reflection::description::IValueSubscription* __vwsnctor___vwsn_subscription_, ::vl::reflection::description::IValueSubscription* __vwsnctorthis_0, ::demo::MainWindowConstructor* __vwsnctorthis_1) + :__vwsn_bind_listeners_(__vwsnctor___vwsn_bind_listeners_) + , __vwsn_subscription_(__vwsnctor___vwsn_subscription_) + , __vwsnthis_0(__vwsnctorthis_0) + , __vwsnthis_1(__vwsnctorthis_1) + { + } + + ::vl::reflection::description::IValueSubscription* __vwsnc14_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener::GetSubscription() + { + return ::vl::__vwsn::This(this)->__vwsn_subscription_; + } + + bool __vwsnc14_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener::GetStopped() + { + return (! ::vl::__vwsn::This(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_bind_listeners_.Obj())->GetKeys().Obj())->Contains(::vl::__vwsn::Box(this))); + } + + bool __vwsnc14_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener::StopListening() + { + if (::vl::__vwsn::This(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_bind_listeners_.Obj())->GetKeys().Obj())->Contains(::vl::__vwsn::Box(this))) + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_bind_listeners_.Obj())->Remove(::vl::__vwsn::Box(this)); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc15_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::__vwsnc15_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription(::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + this->__vwsn_bind_cache_0 = static_cast<::vl::presentation::compositions::GuiTableComposition*>(nullptr); + this->__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_opened_ = false; + this->__vwsn_bind_closed_ = false; + this->__vwsn_bind_listeners_ = ::vl::reflection::description::IValueDictionary::Create(); + } + + void __vwsnc15_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::__vwsn_bind_activator_() + { + auto __vwsn_bind_activator_result_ = ((::vl::WString(L"", false) + [&](auto _){ return ::vl::__vwsn::ToString(::vl::__vwsn::This(_)->GetRowOption(6).absolute); }(__vwsn_bind_cache_0)) + ::vl::WString(L"px", false)); + using __vwsnt_0 = ::vl::reflection::description::Value; + FOREACH(__vwsnt_0, __vwsn_bind_callback_, ::vl::reflection::description::GetLazyList<::vl::reflection::description::Value>(::vl::__vwsn::This(__vwsn_bind_listeners_.Obj())->GetValues())) + { + ::vl::__vwsn::Unbox<::vl::Func>(__vwsn_bind_callback_)(::vl::__vwsn::Box(__vwsn_bind_activator_result_)); + } + } + + void __vwsnc15_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0(::vl::presentation::compositions::GuiGraphicsComposition* __vwsn_bind_callback_argument_0, ::vl::presentation::compositions::GuiEventArgs* __vwsn_bind_callback_argument_1) + { + ::vl::__vwsn::This(this)->__vwsn_bind_activator_(); + } + + void __vwsnc15_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::__vwsn_bind_initialize_() + { + (__vwsn_bind_cache_0 = ::vl::__vwsn::This(__vwsnthis_0)->table); + (__vwsn_bind_handler_0_0 = ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_0)->ConfigChanged, ::vl::Func(::vl::__vwsn::This(this), &__vwsnc15_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0))); + } + + ::vl::Ptr<::vl::reflection::description::IValueListener> __vwsnc15_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::Subscribe(const ::vl::Func& __vwsn_bind_callback_) + { + if ((! __vwsn_bind_opened_)) + { + (__vwsn_bind_opened_ = true); + ::vl::__vwsn::This(this)->__vwsn_bind_initialize_(); + } + auto __vwsn_subscription_ = this; + auto __vwsn_listener_shared_ = ::vl::Ptr<::vl::reflection::description::IValueListener>(new ::vl_workflow_global::__vwsnc16_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener(__vwsn_bind_listeners_, __vwsn_subscription_, this, __vwsnthis_0)); + ::vl::__vwsn::This(__vwsn_bind_listeners_.Obj())->Set(::vl::__vwsn::Box(__vwsn_listener_shared_), ::vl::__vwsn::Box(__vwsn_bind_callback_)); + return __vwsn_listener_shared_; + } + + bool __vwsnc15_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::Update() + { + if ((! __vwsn_bind_closed_)) + { + ::vl::__vwsn::This(this)->__vwsn_bind_activator_(); + return true; + } + return false; + } + + bool __vwsnc15_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::Close() + { + if ((! __vwsn_bind_closed_)) + { + (__vwsn_bind_closed_ = true); + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_0)->ConfigChanged, __vwsn_bind_handler_0_0); + (__vwsn_bind_cache_0 = static_cast<::vl::presentation::compositions::GuiTableComposition*>(nullptr)); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + ::vl::__vwsn::This(__vwsn_bind_listeners_.Obj())->Clear(); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc16_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener::__vwsnc16_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener(::vl::Ptr<::vl::reflection::description::IValueDictionary> __vwsnctor___vwsn_bind_listeners_, ::vl::reflection::description::IValueSubscription* __vwsnctor___vwsn_subscription_, ::vl::reflection::description::IValueSubscription* __vwsnctorthis_0, ::demo::MainWindowConstructor* __vwsnctorthis_1) + :__vwsn_bind_listeners_(__vwsnctor___vwsn_bind_listeners_) + , __vwsn_subscription_(__vwsnctor___vwsn_subscription_) + , __vwsnthis_0(__vwsnctorthis_0) + , __vwsnthis_1(__vwsnctorthis_1) + { + } + + ::vl::reflection::description::IValueSubscription* __vwsnc16_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener::GetSubscription() + { + return ::vl::__vwsn::This(this)->__vwsn_subscription_; + } + + bool __vwsnc16_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener::GetStopped() + { + return (! ::vl::__vwsn::This(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_bind_listeners_.Obj())->GetKeys().Obj())->Contains(::vl::__vwsn::Box(this))); + } + + bool __vwsnc16_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener::StopListening() + { + if (::vl::__vwsn::This(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_bind_listeners_.Obj())->GetKeys().Obj())->Contains(::vl::__vwsn::Box(this))) + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_bind_listeners_.Obj())->Remove(::vl::__vwsn::Box(this)); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc17_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::__vwsnc17_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription(::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + this->__vwsn_bind_cache_0 = static_cast<::vl::presentation::controls::GuiSelectableButton*>(nullptr); + this->__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_opened_ = false; + this->__vwsn_bind_closed_ = false; + this->__vwsn_bind_listeners_ = ::vl::reflection::description::IValueDictionary::Create(); + } + + void __vwsnc17_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::__vwsn_bind_activator_() + { + auto __vwsn_bind_activator_result_ = ::vl::__vwsn::This(__vwsn_bind_cache_0)->GetSelected(); + using __vwsnt_0 = ::vl::reflection::description::Value; + FOREACH(__vwsnt_0, __vwsn_bind_callback_, ::vl::reflection::description::GetLazyList<::vl::reflection::description::Value>(::vl::__vwsn::This(__vwsn_bind_listeners_.Obj())->GetValues())) + { + ::vl::__vwsn::Unbox<::vl::Func>(__vwsn_bind_callback_)(::vl::__vwsn::Box(__vwsn_bind_activator_result_)); + } + } + + void __vwsnc17_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0(::vl::presentation::compositions::GuiGraphicsComposition* __vwsn_bind_callback_argument_0, ::vl::presentation::compositions::GuiEventArgs* __vwsn_bind_callback_argument_1) + { + ::vl::__vwsn::This(this)->__vwsn_bind_activator_(); + } + + void __vwsnc17_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::__vwsn_bind_initialize_() + { + (__vwsn_bind_cache_0 = ::vl::__vwsn::This(__vwsnthis_0)->checkBorder); + (__vwsn_bind_handler_0_0 = ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_0)->SelectedChanged, ::vl::Func(::vl::__vwsn::This(this), &__vwsnc17_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0))); + } + + ::vl::Ptr<::vl::reflection::description::IValueListener> __vwsnc17_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::Subscribe(const ::vl::Func& __vwsn_bind_callback_) + { + if ((! __vwsn_bind_opened_)) + { + (__vwsn_bind_opened_ = true); + ::vl::__vwsn::This(this)->__vwsn_bind_initialize_(); + } + auto __vwsn_subscription_ = this; + auto __vwsn_listener_shared_ = ::vl::Ptr<::vl::reflection::description::IValueListener>(new ::vl_workflow_global::__vwsnc18_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener(__vwsn_bind_listeners_, __vwsn_subscription_, this, __vwsnthis_0)); + ::vl::__vwsn::This(__vwsn_bind_listeners_.Obj())->Set(::vl::__vwsn::Box(__vwsn_listener_shared_), ::vl::__vwsn::Box(__vwsn_bind_callback_)); + return __vwsn_listener_shared_; + } + + bool __vwsnc17_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::Update() + { + if ((! __vwsn_bind_closed_)) + { + ::vl::__vwsn::This(this)->__vwsn_bind_activator_(); + return true; + } + return false; + } + + bool __vwsnc17_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::Close() + { + if ((! __vwsn_bind_closed_)) + { + (__vwsn_bind_closed_ = true); + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_0)->SelectedChanged, __vwsn_bind_handler_0_0); + (__vwsn_bind_cache_0 = static_cast<::vl::presentation::controls::GuiSelectableButton*>(nullptr)); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + ::vl::__vwsn::This(__vwsn_bind_listeners_.Obj())->Clear(); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc18_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener::__vwsnc18_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener(::vl::Ptr<::vl::reflection::description::IValueDictionary> __vwsnctor___vwsn_bind_listeners_, ::vl::reflection::description::IValueSubscription* __vwsnctor___vwsn_subscription_, ::vl::reflection::description::IValueSubscription* __vwsnctorthis_0, ::demo::MainWindowConstructor* __vwsnctorthis_1) + :__vwsn_bind_listeners_(__vwsnctor___vwsn_bind_listeners_) + , __vwsn_subscription_(__vwsnctor___vwsn_subscription_) + , __vwsnthis_0(__vwsnctorthis_0) + , __vwsnthis_1(__vwsnctorthis_1) + { + } + + ::vl::reflection::description::IValueSubscription* __vwsnc18_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener::GetSubscription() + { + return ::vl::__vwsn::This(this)->__vwsn_subscription_; + } + + bool __vwsnc18_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener::GetStopped() + { + return (! ::vl::__vwsn::This(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_bind_listeners_.Obj())->GetKeys().Obj())->Contains(::vl::__vwsn::Box(this))); + } + + bool __vwsnc18_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener::StopListening() + { + if (::vl::__vwsn::This(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_bind_listeners_.Obj())->GetKeys().Obj())->Contains(::vl::__vwsn::Box(this))) + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_bind_listeners_.Obj())->Remove(::vl::__vwsn::Box(this)); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc1_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::__vwsnc1_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription(::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + this->__vwsn_bind_cache_0 = static_cast<::vl::presentation::compositions::GuiTableComposition*>(nullptr); + this->__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_opened_ = false; + this->__vwsn_bind_closed_ = false; + this->__vwsn_bind_listeners_ = ::vl::reflection::description::IValueDictionary::Create(); + } + + void __vwsnc1_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::__vwsn_bind_activator_() + { + auto __vwsn_bind_activator_result_ = ((::vl::WString(L"", false) + [&](auto _){ return ::vl::__vwsn::ToString(::vl::__vwsn::This(_)->GetColumnOption(1).absolute); }(__vwsn_bind_cache_0)) + ::vl::WString(L"px", false)); + using __vwsnt_0 = ::vl::reflection::description::Value; + FOREACH(__vwsnt_0, __vwsn_bind_callback_, ::vl::reflection::description::GetLazyList<::vl::reflection::description::Value>(::vl::__vwsn::This(__vwsn_bind_listeners_.Obj())->GetValues())) + { + ::vl::__vwsn::Unbox<::vl::Func>(__vwsn_bind_callback_)(::vl::__vwsn::Box(__vwsn_bind_activator_result_)); + } + } + + void __vwsnc1_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0(::vl::presentation::compositions::GuiGraphicsComposition* __vwsn_bind_callback_argument_0, ::vl::presentation::compositions::GuiEventArgs* __vwsn_bind_callback_argument_1) + { + ::vl::__vwsn::This(this)->__vwsn_bind_activator_(); + } + + void __vwsnc1_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::__vwsn_bind_initialize_() + { + (__vwsn_bind_cache_0 = ::vl::__vwsn::This(__vwsnthis_0)->table); + (__vwsn_bind_handler_0_0 = ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_0)->ConfigChanged, ::vl::Func(::vl::__vwsn::This(this), &__vwsnc1_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0))); + } + + ::vl::Ptr<::vl::reflection::description::IValueListener> __vwsnc1_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::Subscribe(const ::vl::Func& __vwsn_bind_callback_) + { + if ((! __vwsn_bind_opened_)) + { + (__vwsn_bind_opened_ = true); + ::vl::__vwsn::This(this)->__vwsn_bind_initialize_(); + } + auto __vwsn_subscription_ = this; + auto __vwsn_listener_shared_ = ::vl::Ptr<::vl::reflection::description::IValueListener>(new ::vl_workflow_global::__vwsnc2_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener(__vwsn_bind_listeners_, __vwsn_subscription_, this, __vwsnthis_0)); + ::vl::__vwsn::This(__vwsn_bind_listeners_.Obj())->Set(::vl::__vwsn::Box(__vwsn_listener_shared_), ::vl::__vwsn::Box(__vwsn_bind_callback_)); + return __vwsn_listener_shared_; + } + + bool __vwsnc1_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::Update() + { + if ((! __vwsn_bind_closed_)) + { + ::vl::__vwsn::This(this)->__vwsn_bind_activator_(); + return true; + } + return false; + } + + bool __vwsnc1_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::Close() + { + if ((! __vwsn_bind_closed_)) + { + (__vwsn_bind_closed_ = true); + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_0)->ConfigChanged, __vwsn_bind_handler_0_0); + (__vwsn_bind_cache_0 = static_cast<::vl::presentation::compositions::GuiTableComposition*>(nullptr)); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + ::vl::__vwsn::This(__vwsn_bind_listeners_.Obj())->Clear(); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc2_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener::__vwsnc2_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener(::vl::Ptr<::vl::reflection::description::IValueDictionary> __vwsnctor___vwsn_bind_listeners_, ::vl::reflection::description::IValueSubscription* __vwsnctor___vwsn_subscription_, ::vl::reflection::description::IValueSubscription* __vwsnctorthis_0, ::demo::MainWindowConstructor* __vwsnctorthis_1) + :__vwsn_bind_listeners_(__vwsnctor___vwsn_bind_listeners_) + , __vwsn_subscription_(__vwsnctor___vwsn_subscription_) + , __vwsnthis_0(__vwsnctorthis_0) + , __vwsnthis_1(__vwsnctorthis_1) + { + } + + ::vl::reflection::description::IValueSubscription* __vwsnc2_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener::GetSubscription() + { + return ::vl::__vwsn::This(this)->__vwsn_subscription_; + } + + bool __vwsnc2_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener::GetStopped() + { + return (! ::vl::__vwsn::This(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_bind_listeners_.Obj())->GetKeys().Obj())->Contains(::vl::__vwsn::Box(this))); + } + + bool __vwsnc2_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener::StopListening() + { + if (::vl::__vwsn::This(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_bind_listeners_.Obj())->GetKeys().Obj())->Contains(::vl::__vwsn::Box(this))) + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_bind_listeners_.Obj())->Remove(::vl::__vwsn::Box(this)); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc3_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::__vwsnc3_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription(::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + this->__vwsn_bind_cache_0 = static_cast<::vl::presentation::compositions::GuiTableComposition*>(nullptr); + this->__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_opened_ = false; + this->__vwsn_bind_closed_ = false; + this->__vwsn_bind_listeners_ = ::vl::reflection::description::IValueDictionary::Create(); + } + + void __vwsnc3_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::__vwsn_bind_activator_() + { + auto __vwsn_bind_activator_result_ = ((::vl::WString(L"", false) + [&](auto _){ return ::vl::__vwsn::ToString(::vl::__vwsn::This(_)->GetColumnOption(2).absolute); }(__vwsn_bind_cache_0)) + ::vl::WString(L"px", false)); + using __vwsnt_0 = ::vl::reflection::description::Value; + FOREACH(__vwsnt_0, __vwsn_bind_callback_, ::vl::reflection::description::GetLazyList<::vl::reflection::description::Value>(::vl::__vwsn::This(__vwsn_bind_listeners_.Obj())->GetValues())) + { + ::vl::__vwsn::Unbox<::vl::Func>(__vwsn_bind_callback_)(::vl::__vwsn::Box(__vwsn_bind_activator_result_)); + } + } + + void __vwsnc3_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0(::vl::presentation::compositions::GuiGraphicsComposition* __vwsn_bind_callback_argument_0, ::vl::presentation::compositions::GuiEventArgs* __vwsn_bind_callback_argument_1) + { + ::vl::__vwsn::This(this)->__vwsn_bind_activator_(); + } + + void __vwsnc3_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::__vwsn_bind_initialize_() + { + (__vwsn_bind_cache_0 = ::vl::__vwsn::This(__vwsnthis_0)->table); + (__vwsn_bind_handler_0_0 = ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_0)->ConfigChanged, ::vl::Func(::vl::__vwsn::This(this), &__vwsnc3_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0))); + } + + ::vl::Ptr<::vl::reflection::description::IValueListener> __vwsnc3_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::Subscribe(const ::vl::Func& __vwsn_bind_callback_) + { + if ((! __vwsn_bind_opened_)) + { + (__vwsn_bind_opened_ = true); + ::vl::__vwsn::This(this)->__vwsn_bind_initialize_(); + } + auto __vwsn_subscription_ = this; + auto __vwsn_listener_shared_ = ::vl::Ptr<::vl::reflection::description::IValueListener>(new ::vl_workflow_global::__vwsnc4_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener(__vwsn_bind_listeners_, __vwsn_subscription_, this, __vwsnthis_0)); + ::vl::__vwsn::This(__vwsn_bind_listeners_.Obj())->Set(::vl::__vwsn::Box(__vwsn_listener_shared_), ::vl::__vwsn::Box(__vwsn_bind_callback_)); + return __vwsn_listener_shared_; + } + + bool __vwsnc3_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::Update() + { + if ((! __vwsn_bind_closed_)) + { + ::vl::__vwsn::This(this)->__vwsn_bind_activator_(); + return true; + } + return false; + } + + bool __vwsnc3_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::Close() + { + if ((! __vwsn_bind_closed_)) + { + (__vwsn_bind_closed_ = true); + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_0)->ConfigChanged, __vwsn_bind_handler_0_0); + (__vwsn_bind_cache_0 = static_cast<::vl::presentation::compositions::GuiTableComposition*>(nullptr)); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + ::vl::__vwsn::This(__vwsn_bind_listeners_.Obj())->Clear(); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc4_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener::__vwsnc4_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener(::vl::Ptr<::vl::reflection::description::IValueDictionary> __vwsnctor___vwsn_bind_listeners_, ::vl::reflection::description::IValueSubscription* __vwsnctor___vwsn_subscription_, ::vl::reflection::description::IValueSubscription* __vwsnctorthis_0, ::demo::MainWindowConstructor* __vwsnctorthis_1) + :__vwsn_bind_listeners_(__vwsnctor___vwsn_bind_listeners_) + , __vwsn_subscription_(__vwsnctor___vwsn_subscription_) + , __vwsnthis_0(__vwsnctorthis_0) + , __vwsnthis_1(__vwsnctorthis_1) + { + } + + ::vl::reflection::description::IValueSubscription* __vwsnc4_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener::GetSubscription() + { + return ::vl::__vwsn::This(this)->__vwsn_subscription_; + } + + bool __vwsnc4_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener::GetStopped() + { + return (! ::vl::__vwsn::This(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_bind_listeners_.Obj())->GetKeys().Obj())->Contains(::vl::__vwsn::Box(this))); + } + + bool __vwsnc4_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener::StopListening() + { + if (::vl::__vwsn::This(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_bind_listeners_.Obj())->GetKeys().Obj())->Contains(::vl::__vwsn::Box(this))) + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_bind_listeners_.Obj())->Remove(::vl::__vwsn::Box(this)); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc5_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::__vwsnc5_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription(::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + this->__vwsn_bind_cache_0 = static_cast<::vl::presentation::compositions::GuiTableComposition*>(nullptr); + this->__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_opened_ = false; + this->__vwsn_bind_closed_ = false; + this->__vwsn_bind_listeners_ = ::vl::reflection::description::IValueDictionary::Create(); + } + + void __vwsnc5_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::__vwsn_bind_activator_() + { + auto __vwsn_bind_activator_result_ = ((::vl::WString(L"", false) + [&](auto _){ return ::vl::__vwsn::ToString(::vl::__vwsn::This(_)->GetColumnOption(5).absolute); }(__vwsn_bind_cache_0)) + ::vl::WString(L"px", false)); + using __vwsnt_0 = ::vl::reflection::description::Value; + FOREACH(__vwsnt_0, __vwsn_bind_callback_, ::vl::reflection::description::GetLazyList<::vl::reflection::description::Value>(::vl::__vwsn::This(__vwsn_bind_listeners_.Obj())->GetValues())) + { + ::vl::__vwsn::Unbox<::vl::Func>(__vwsn_bind_callback_)(::vl::__vwsn::Box(__vwsn_bind_activator_result_)); + } + } + + void __vwsnc5_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0(::vl::presentation::compositions::GuiGraphicsComposition* __vwsn_bind_callback_argument_0, ::vl::presentation::compositions::GuiEventArgs* __vwsn_bind_callback_argument_1) + { + ::vl::__vwsn::This(this)->__vwsn_bind_activator_(); + } + + void __vwsnc5_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::__vwsn_bind_initialize_() + { + (__vwsn_bind_cache_0 = ::vl::__vwsn::This(__vwsnthis_0)->table); + (__vwsn_bind_handler_0_0 = ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_0)->ConfigChanged, ::vl::Func(::vl::__vwsn::This(this), &__vwsnc5_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0))); + } + + ::vl::Ptr<::vl::reflection::description::IValueListener> __vwsnc5_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::Subscribe(const ::vl::Func& __vwsn_bind_callback_) + { + if ((! __vwsn_bind_opened_)) + { + (__vwsn_bind_opened_ = true); + ::vl::__vwsn::This(this)->__vwsn_bind_initialize_(); + } + auto __vwsn_subscription_ = this; + auto __vwsn_listener_shared_ = ::vl::Ptr<::vl::reflection::description::IValueListener>(new ::vl_workflow_global::__vwsnc6_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener(__vwsn_bind_listeners_, __vwsn_subscription_, this, __vwsnthis_0)); + ::vl::__vwsn::This(__vwsn_bind_listeners_.Obj())->Set(::vl::__vwsn::Box(__vwsn_listener_shared_), ::vl::__vwsn::Box(__vwsn_bind_callback_)); + return __vwsn_listener_shared_; + } + + bool __vwsnc5_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::Update() + { + if ((! __vwsn_bind_closed_)) + { + ::vl::__vwsn::This(this)->__vwsn_bind_activator_(); + return true; + } + return false; + } + + bool __vwsnc5_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::Close() + { + if ((! __vwsn_bind_closed_)) + { + (__vwsn_bind_closed_ = true); + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_0)->ConfigChanged, __vwsn_bind_handler_0_0); + (__vwsn_bind_cache_0 = static_cast<::vl::presentation::compositions::GuiTableComposition*>(nullptr)); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + ::vl::__vwsn::This(__vwsn_bind_listeners_.Obj())->Clear(); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc6_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener::__vwsnc6_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener(::vl::Ptr<::vl::reflection::description::IValueDictionary> __vwsnctor___vwsn_bind_listeners_, ::vl::reflection::description::IValueSubscription* __vwsnctor___vwsn_subscription_, ::vl::reflection::description::IValueSubscription* __vwsnctorthis_0, ::demo::MainWindowConstructor* __vwsnctorthis_1) + :__vwsn_bind_listeners_(__vwsnctor___vwsn_bind_listeners_) + , __vwsn_subscription_(__vwsnctor___vwsn_subscription_) + , __vwsnthis_0(__vwsnctorthis_0) + , __vwsnthis_1(__vwsnctorthis_1) + { + } + + ::vl::reflection::description::IValueSubscription* __vwsnc6_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener::GetSubscription() + { + return ::vl::__vwsn::This(this)->__vwsn_subscription_; + } + + bool __vwsnc6_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener::GetStopped() + { + return (! ::vl::__vwsn::This(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_bind_listeners_.Obj())->GetKeys().Obj())->Contains(::vl::__vwsn::Box(this))); + } + + bool __vwsnc6_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener::StopListening() + { + if (::vl::__vwsn::This(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_bind_listeners_.Obj())->GetKeys().Obj())->Contains(::vl::__vwsn::Box(this))) + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_bind_listeners_.Obj())->Remove(::vl::__vwsn::Box(this)); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc7_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::__vwsnc7_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription(::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + this->__vwsn_bind_cache_0 = static_cast<::vl::presentation::compositions::GuiTableComposition*>(nullptr); + this->__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_opened_ = false; + this->__vwsn_bind_closed_ = false; + this->__vwsn_bind_listeners_ = ::vl::reflection::description::IValueDictionary::Create(); + } + + void __vwsnc7_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::__vwsn_bind_activator_() + { + auto __vwsn_bind_activator_result_ = ((::vl::WString(L"", false) + [&](auto _){ return ::vl::__vwsn::ToString(::vl::__vwsn::This(_)->GetColumnOption(6).absolute); }(__vwsn_bind_cache_0)) + ::vl::WString(L"px", false)); + using __vwsnt_0 = ::vl::reflection::description::Value; + FOREACH(__vwsnt_0, __vwsn_bind_callback_, ::vl::reflection::description::GetLazyList<::vl::reflection::description::Value>(::vl::__vwsn::This(__vwsn_bind_listeners_.Obj())->GetValues())) + { + ::vl::__vwsn::Unbox<::vl::Func>(__vwsn_bind_callback_)(::vl::__vwsn::Box(__vwsn_bind_activator_result_)); + } + } + + void __vwsnc7_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0(::vl::presentation::compositions::GuiGraphicsComposition* __vwsn_bind_callback_argument_0, ::vl::presentation::compositions::GuiEventArgs* __vwsn_bind_callback_argument_1) + { + ::vl::__vwsn::This(this)->__vwsn_bind_activator_(); + } + + void __vwsnc7_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::__vwsn_bind_initialize_() + { + (__vwsn_bind_cache_0 = ::vl::__vwsn::This(__vwsnthis_0)->table); + (__vwsn_bind_handler_0_0 = ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_0)->ConfigChanged, ::vl::Func(::vl::__vwsn::This(this), &__vwsnc7_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0))); + } + + ::vl::Ptr<::vl::reflection::description::IValueListener> __vwsnc7_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::Subscribe(const ::vl::Func& __vwsn_bind_callback_) + { + if ((! __vwsn_bind_opened_)) + { + (__vwsn_bind_opened_ = true); + ::vl::__vwsn::This(this)->__vwsn_bind_initialize_(); + } + auto __vwsn_subscription_ = this; + auto __vwsn_listener_shared_ = ::vl::Ptr<::vl::reflection::description::IValueListener>(new ::vl_workflow_global::__vwsnc8_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener(__vwsn_bind_listeners_, __vwsn_subscription_, this, __vwsnthis_0)); + ::vl::__vwsn::This(__vwsn_bind_listeners_.Obj())->Set(::vl::__vwsn::Box(__vwsn_listener_shared_), ::vl::__vwsn::Box(__vwsn_bind_callback_)); + return __vwsn_listener_shared_; + } + + bool __vwsnc7_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::Update() + { + if ((! __vwsn_bind_closed_)) + { + ::vl::__vwsn::This(this)->__vwsn_bind_activator_(); + return true; + } + return false; + } + + bool __vwsnc7_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::Close() + { + if ((! __vwsn_bind_closed_)) + { + (__vwsn_bind_closed_ = true); + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_0)->ConfigChanged, __vwsn_bind_handler_0_0); + (__vwsn_bind_cache_0 = static_cast<::vl::presentation::compositions::GuiTableComposition*>(nullptr)); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + ::vl::__vwsn::This(__vwsn_bind_listeners_.Obj())->Clear(); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc8_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener::__vwsnc8_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener(::vl::Ptr<::vl::reflection::description::IValueDictionary> __vwsnctor___vwsn_bind_listeners_, ::vl::reflection::description::IValueSubscription* __vwsnctor___vwsn_subscription_, ::vl::reflection::description::IValueSubscription* __vwsnctorthis_0, ::demo::MainWindowConstructor* __vwsnctorthis_1) + :__vwsn_bind_listeners_(__vwsnctor___vwsn_bind_listeners_) + , __vwsn_subscription_(__vwsnctor___vwsn_subscription_) + , __vwsnthis_0(__vwsnctorthis_0) + , __vwsnthis_1(__vwsnctorthis_1) + { + } + + ::vl::reflection::description::IValueSubscription* __vwsnc8_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener::GetSubscription() + { + return ::vl::__vwsn::This(this)->__vwsn_subscription_; + } + + bool __vwsnc8_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener::GetStopped() + { + return (! ::vl::__vwsn::This(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_bind_listeners_.Obj())->GetKeys().Obj())->Contains(::vl::__vwsn::Box(this))); + } + + bool __vwsnc8_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener::StopListening() + { + if (::vl::__vwsn::This(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_bind_listeners_.Obj())->GetKeys().Obj())->Contains(::vl::__vwsn::Box(this))) + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_bind_listeners_.Obj())->Remove(::vl::__vwsn::Box(this)); + return true; + } + return false; + } + + //------------------------------------------------------------------- + + __vwsnc9_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::__vwsnc9_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription(::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + this->__vwsn_bind_cache_0 = static_cast<::vl::presentation::compositions::GuiTableComposition*>(nullptr); + this->__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>(); + this->__vwsn_bind_opened_ = false; + this->__vwsn_bind_closed_ = false; + this->__vwsn_bind_listeners_ = ::vl::reflection::description::IValueDictionary::Create(); + } + + void __vwsnc9_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::__vwsn_bind_activator_() + { + auto __vwsn_bind_activator_result_ = ((::vl::WString(L"", false) + [&](auto _){ return ::vl::__vwsn::ToString(::vl::__vwsn::This(_)->GetRowOption(1).absolute); }(__vwsn_bind_cache_0)) + ::vl::WString(L"px", false)); + using __vwsnt_0 = ::vl::reflection::description::Value; + FOREACH(__vwsnt_0, __vwsn_bind_callback_, ::vl::reflection::description::GetLazyList<::vl::reflection::description::Value>(::vl::__vwsn::This(__vwsn_bind_listeners_.Obj())->GetValues())) + { + ::vl::__vwsn::Unbox<::vl::Func>(__vwsn_bind_callback_)(::vl::__vwsn::Box(__vwsn_bind_activator_result_)); + } + } + + void __vwsnc9_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0(::vl::presentation::compositions::GuiGraphicsComposition* __vwsn_bind_callback_argument_0, ::vl::presentation::compositions::GuiEventArgs* __vwsn_bind_callback_argument_1) + { + ::vl::__vwsn::This(this)->__vwsn_bind_activator_(); + } + + void __vwsnc9_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::__vwsn_bind_initialize_() + { + (__vwsn_bind_cache_0 = ::vl::__vwsn::This(__vwsnthis_0)->table); + (__vwsn_bind_handler_0_0 = ::vl::__vwsn::EventAttach(::vl::__vwsn::This(__vwsn_bind_cache_0)->ConfigChanged, ::vl::Func(::vl::__vwsn::This(this), &__vwsnc9_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::__vwsn_bind_callback_0_0))); + } + + ::vl::Ptr<::vl::reflection::description::IValueListener> __vwsnc9_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::Subscribe(const ::vl::Func& __vwsn_bind_callback_) + { + if ((! __vwsn_bind_opened_)) + { + (__vwsn_bind_opened_ = true); + ::vl::__vwsn::This(this)->__vwsn_bind_initialize_(); + } + auto __vwsn_subscription_ = this; + auto __vwsn_listener_shared_ = ::vl::Ptr<::vl::reflection::description::IValueListener>(new ::vl_workflow_global::__vwsnc10_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener(__vwsn_bind_listeners_, __vwsn_subscription_, this, __vwsnthis_0)); + ::vl::__vwsn::This(__vwsn_bind_listeners_.Obj())->Set(::vl::__vwsn::Box(__vwsn_listener_shared_), ::vl::__vwsn::Box(__vwsn_bind_callback_)); + return __vwsn_listener_shared_; + } + + bool __vwsnc9_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::Update() + { + if ((! __vwsn_bind_closed_)) + { + ::vl::__vwsn::This(this)->__vwsn_bind_activator_(); + return true; + } + return false; + } + + bool __vwsnc9_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription::Close() + { + if ((! __vwsn_bind_closed_)) + { + (__vwsn_bind_closed_ = true); + ::vl::__vwsn::EventDetach(::vl::__vwsn::This(__vwsn_bind_cache_0)->ConfigChanged, __vwsn_bind_handler_0_0); + (__vwsn_bind_cache_0 = static_cast<::vl::presentation::compositions::GuiTableComposition*>(nullptr)); + (__vwsn_bind_handler_0_0 = ::vl::Ptr<::vl::reflection::description::IEventHandler>()); + ::vl::__vwsn::This(__vwsn_bind_listeners_.Obj())->Clear(); + return true; + } + return false; + } + +/*********************************************************************** +Global Functions +***********************************************************************/ + + Demo& Demo::Instance() + { + return Getvl_workflow_global_Demo().instance; + } +} + +/*********************************************************************** +Class (::demo::MainWindowConstructor) +***********************************************************************/ + namespace demo { - // #region CLASS_MEMBER_GUIEVENT_HANDLER (DO NOT PUT OTHER CONTENT IN THIS #region.) + void MainWindowConstructor::__vwsn_initialize_instance_(::demo::MainWindow* __vwsn_this_, ::vl::presentation::GuiResourcePathResolver* __vwsn_resolver_) + { + (::vl::__vwsn::This(this)->__vwsn_precompile_0 = __vwsn_this_); + (::vl::__vwsn::This(this)->__vwsn_precompile_96 = ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_0)->GetBoundsComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_96)->SetPreferredMinSize([&](){ ::vl::presentation::Size __vwsn_temp__; __vwsn_temp__.x = 640; __vwsn_temp__.y = 480; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_0)->SetClientSize([&](){ ::vl::presentation::Size __vwsn_temp__; __vwsn_temp__.x = 640; __vwsn_temp__.y = 480; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_0)->SetText(::vl::WString(L"TableSplitter", false)); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_1 = new ::vl::presentation::compositions::GuiTableComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_1)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = 0; __vwsn_temp__.top = 0; __vwsn_temp__.right = 0; __vwsn_temp__.bottom = 0; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_1)->SetCellPadding(::vl::__vwsn::Parse<::vl::vint32_t>(::vl::WString(L"5", false))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_1)->SetRowsAndColumns(2, 1); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_1)->SetRowOption(0, [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_1)->SetRowOption(1, [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Percentage; __vwsn_temp__.percentage = 1.0; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_1)->SetColumnOption(0, [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Percentage; __vwsn_temp__.percentage = 1.0; return __vwsn_temp__; }()); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_2 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_2)->SetSite(0, 0, 1, 1); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateCheckBoxStyle(); + (::vl::__vwsn::This(this)->checkBorder = new ::vl::presentation::controls::GuiSelectableButton(__vwsn_controlStyle_)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->checkBorder)->SetSelected(::vl::__vwsn::Parse(::vl::WString(L"true", false))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->checkBorder)->SetText(::vl::WString(L"Table size contains borders", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_2)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->checkBorder)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_1)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_2))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_3 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_3)->SetSite(1, 0, 1, 1); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateGroupBoxStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_4 = new ::vl::presentation::controls::GuiControl(__vwsn_controlStyle_)); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_95 = ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_4)->GetBoundsComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_95)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = 0; __vwsn_temp__.top = 0; __vwsn_temp__.right = 0; __vwsn_temp__.bottom = 0; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_4)->SetText(::vl::WString(L"Drag spaces between cells to resize", false)); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_5 = new ::vl::presentation::compositions::GuiBoundsComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_5)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = 0; __vwsn_temp__.top = 0; __vwsn_temp__.right = 0; __vwsn_temp__.bottom = 0; return __vwsn_temp__; }()); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_6 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement>(::vl::reflection::description::Element_Constructor<::vl::presentation::elements::GuiSolidBorderElement>())); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_6.Obj())->SetColor(::vl::__vwsn::Parse<::vl::presentation::Color>(::vl::WString(L"#0000FF", false))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_5)->SetOwnedElement(::vl::__vwsn::Ensure(::vl::Ptr<::vl::presentation::elements::IGuiGraphicsElement>(::vl::__vwsn::This(this)->__vwsn_precompile_6))); + } + (::vl::__vwsn::This(this)->table = new ::vl::presentation::compositions::GuiTableComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->SetAlignmentToParent([&](){ ::vl::presentation::Margin __vwsn_temp__; __vwsn_temp__.left = 0; __vwsn_temp__.top = 0; __vwsn_temp__.right = 0; __vwsn_temp__.bottom = 0; return __vwsn_temp__; }()); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->SetCellPadding(::vl::__vwsn::Parse<::vl::vint32_t>(::vl::WString(L"5", false))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->SetRowsAndColumns(7, 7); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->SetRowOption(0, [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->SetRowOption(1, [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Absolute; __vwsn_temp__.absolute = 50; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->SetRowOption(2, [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Absolute; __vwsn_temp__.absolute = 50; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->SetRowOption(3, [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Percentage; __vwsn_temp__.percentage = 0.5; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->SetRowOption(4, [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Percentage; __vwsn_temp__.percentage = 0.5; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->SetRowOption(5, [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Absolute; __vwsn_temp__.absolute = 50; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->SetRowOption(6, [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Absolute; __vwsn_temp__.absolute = 50; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->SetColumnOption(0, [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::MinSize; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->SetColumnOption(1, [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Absolute; __vwsn_temp__.absolute = 50; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->SetColumnOption(2, [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Absolute; __vwsn_temp__.absolute = 50; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->SetColumnOption(3, [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Percentage; __vwsn_temp__.percentage = 0.5; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->SetColumnOption(4, [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Percentage; __vwsn_temp__.percentage = 0.5; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->SetColumnOption(5, [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Absolute; __vwsn_temp__.absolute = 50; return __vwsn_temp__; }()); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->SetColumnOption(6, [&](){ ::vl::presentation::compositions::GuiCellOption __vwsn_temp__; __vwsn_temp__.composeType = ::vl::presentation::compositions::GuiCellOption::ComposeType::Absolute; __vwsn_temp__.absolute = 50; return __vwsn_temp__; }()); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_7 = new ::vl::presentation::compositions::GuiRowSplitterComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_7)->SetRowsToTheTop(::vl::__vwsn::Parse<::vl::vint32_t>(::vl::WString(L"2", false))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_7))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_8 = new ::vl::presentation::compositions::GuiRowSplitterComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_8)->SetRowsToTheTop(::vl::__vwsn::Parse<::vl::vint32_t>(::vl::WString(L"3", false))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_8))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_9 = new ::vl::presentation::compositions::GuiRowSplitterComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_9)->SetRowsToTheTop(::vl::__vwsn::Parse<::vl::vint32_t>(::vl::WString(L"5", false))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_9))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_10 = new ::vl::presentation::compositions::GuiRowSplitterComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_10)->SetRowsToTheTop(::vl::__vwsn::Parse<::vl::vint32_t>(::vl::WString(L"6", false))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_10))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_11 = new ::vl::presentation::compositions::GuiColumnSplitterComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_11)->SetColumnsToTheLeft(::vl::__vwsn::Parse<::vl::vint32_t>(::vl::WString(L"2", false))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_11))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_12 = new ::vl::presentation::compositions::GuiColumnSplitterComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_12)->SetColumnsToTheLeft(::vl::__vwsn::Parse<::vl::vint32_t>(::vl::WString(L"3", false))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_12))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_13 = new ::vl::presentation::compositions::GuiColumnSplitterComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_13)->SetColumnsToTheLeft(::vl::__vwsn::Parse<::vl::vint32_t>(::vl::WString(L"5", false))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_13))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_14 = new ::vl::presentation::compositions::GuiColumnSplitterComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_14)->SetColumnsToTheLeft(::vl::__vwsn::Parse<::vl::vint32_t>(::vl::WString(L"6", false))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_14))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_15 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_15)->SetSite(0, 1, 1, 1); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateLabelStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_16 = new ::vl::presentation::controls::GuiLabel(__vwsn_controlStyle_)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_15)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_16)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_15))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_17 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_17)->SetSite(0, 2, 1, 1); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateLabelStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_18 = new ::vl::presentation::controls::GuiLabel(__vwsn_controlStyle_)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_17)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_18)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_17))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_19 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_19)->SetSite(0, 3, 1, 1); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateLabelStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_20 = new ::vl::presentation::controls::GuiLabel(__vwsn_controlStyle_)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_20)->SetText(::vl::WString(L"50%", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_19)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_20)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_19))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_21 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_21)->SetSite(0, 4, 1, 1); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateLabelStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_22 = new ::vl::presentation::controls::GuiLabel(__vwsn_controlStyle_)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_22)->SetText(::vl::WString(L"50%", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_21)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_22)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_21))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_23 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_23)->SetSite(0, 5, 1, 1); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateLabelStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_24 = new ::vl::presentation::controls::GuiLabel(__vwsn_controlStyle_)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_23)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_24)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_23))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_25 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_25)->SetSite(0, 6, 1, 1); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateLabelStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_26 = new ::vl::presentation::controls::GuiLabel(__vwsn_controlStyle_)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_25)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_26)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_25))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_27 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_27)->SetSite(1, 0, 1, 1); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateLabelStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_28 = new ::vl::presentation::controls::GuiLabel(__vwsn_controlStyle_)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_27)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_28)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_27))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_29 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_29)->SetSite(2, 0, 1, 1); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateLabelStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_30 = new ::vl::presentation::controls::GuiLabel(__vwsn_controlStyle_)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_29)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_30)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_29))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_31 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_31)->SetSite(3, 0, 1, 1); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateLabelStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_32 = new ::vl::presentation::controls::GuiLabel(__vwsn_controlStyle_)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_32)->SetText(::vl::WString(L"50%", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_31)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_32)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_31))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_33 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_33)->SetSite(4, 0, 1, 1); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateLabelStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_34 = new ::vl::presentation::controls::GuiLabel(__vwsn_controlStyle_)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_34)->SetText(::vl::WString(L"50%", false)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_33)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_34)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_33))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_35 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_35)->SetSite(5, 0, 1, 1); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateLabelStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_36 = new ::vl::presentation::controls::GuiLabel(__vwsn_controlStyle_)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_35)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_36)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_35))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_37 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_37)->SetSite(6, 0, 1, 1); + } + { + auto __vwsn_controlStyle_ = ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateLabelStyle(); + (::vl::__vwsn::This(this)->__vwsn_precompile_38 = new ::vl::presentation::controls::GuiLabel(__vwsn_controlStyle_)); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_37)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_38)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_37))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_39 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_39)->SetSite(1, 1, 1, 1); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_40 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement>(::vl::reflection::description::Element_Constructor<::vl::presentation::elements::GuiSolidBorderElement>())); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_40.Obj())->SetColor(::vl::__vwsn::Parse<::vl::presentation::Color>(::vl::WString(L"#FF8000", false))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_39)->SetOwnedElement(::vl::__vwsn::Ensure(::vl::Ptr<::vl::presentation::elements::IGuiGraphicsElement>(::vl::__vwsn::This(this)->__vwsn_precompile_40))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_39))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_41 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_41)->SetSite(1, 2, 1, 1); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_42 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement>(::vl::reflection::description::Element_Constructor<::vl::presentation::elements::GuiSolidBorderElement>())); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_42.Obj())->SetColor(::vl::__vwsn::Parse<::vl::presentation::Color>(::vl::WString(L"#FF8000", false))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_41)->SetOwnedElement(::vl::__vwsn::Ensure(::vl::Ptr<::vl::presentation::elements::IGuiGraphicsElement>(::vl::__vwsn::This(this)->__vwsn_precompile_42))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_41))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_43 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_43)->SetSite(2, 1, 1, 1); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_44 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement>(::vl::reflection::description::Element_Constructor<::vl::presentation::elements::GuiSolidBorderElement>())); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_44.Obj())->SetColor(::vl::__vwsn::Parse<::vl::presentation::Color>(::vl::WString(L"#FF8000", false))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_43)->SetOwnedElement(::vl::__vwsn::Ensure(::vl::Ptr<::vl::presentation::elements::IGuiGraphicsElement>(::vl::__vwsn::This(this)->__vwsn_precompile_44))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_43))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_45 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_45)->SetSite(2, 2, 1, 1); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_46 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement>(::vl::reflection::description::Element_Constructor<::vl::presentation::elements::GuiSolidBorderElement>())); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_46.Obj())->SetColor(::vl::__vwsn::Parse<::vl::presentation::Color>(::vl::WString(L"#FF8000", false))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_45)->SetOwnedElement(::vl::__vwsn::Ensure(::vl::Ptr<::vl::presentation::elements::IGuiGraphicsElement>(::vl::__vwsn::This(this)->__vwsn_precompile_46))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_45))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_47 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_47)->SetSite(1, 5, 1, 1); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_48 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement>(::vl::reflection::description::Element_Constructor<::vl::presentation::elements::GuiSolidBorderElement>())); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_48.Obj())->SetColor(::vl::__vwsn::Parse<::vl::presentation::Color>(::vl::WString(L"#FF8000", false))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_47)->SetOwnedElement(::vl::__vwsn::Ensure(::vl::Ptr<::vl::presentation::elements::IGuiGraphicsElement>(::vl::__vwsn::This(this)->__vwsn_precompile_48))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_47))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_49 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_49)->SetSite(1, 6, 1, 1); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_50 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement>(::vl::reflection::description::Element_Constructor<::vl::presentation::elements::GuiSolidBorderElement>())); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_50.Obj())->SetColor(::vl::__vwsn::Parse<::vl::presentation::Color>(::vl::WString(L"#FF8000", false))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_49)->SetOwnedElement(::vl::__vwsn::Ensure(::vl::Ptr<::vl::presentation::elements::IGuiGraphicsElement>(::vl::__vwsn::This(this)->__vwsn_precompile_50))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_49))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_51 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_51)->SetSite(2, 5, 1, 1); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_52 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement>(::vl::reflection::description::Element_Constructor<::vl::presentation::elements::GuiSolidBorderElement>())); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_52.Obj())->SetColor(::vl::__vwsn::Parse<::vl::presentation::Color>(::vl::WString(L"#FF8000", false))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_51)->SetOwnedElement(::vl::__vwsn::Ensure(::vl::Ptr<::vl::presentation::elements::IGuiGraphicsElement>(::vl::__vwsn::This(this)->__vwsn_precompile_52))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_51))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_53 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_53)->SetSite(2, 6, 1, 1); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_54 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement>(::vl::reflection::description::Element_Constructor<::vl::presentation::elements::GuiSolidBorderElement>())); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_54.Obj())->SetColor(::vl::__vwsn::Parse<::vl::presentation::Color>(::vl::WString(L"#FF8000", false))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_53)->SetOwnedElement(::vl::__vwsn::Ensure(::vl::Ptr<::vl::presentation::elements::IGuiGraphicsElement>(::vl::__vwsn::This(this)->__vwsn_precompile_54))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_53))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_55 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_55)->SetSite(5, 1, 1, 1); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_56 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement>(::vl::reflection::description::Element_Constructor<::vl::presentation::elements::GuiSolidBorderElement>())); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_56.Obj())->SetColor(::vl::__vwsn::Parse<::vl::presentation::Color>(::vl::WString(L"#FF8000", false))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_55)->SetOwnedElement(::vl::__vwsn::Ensure(::vl::Ptr<::vl::presentation::elements::IGuiGraphicsElement>(::vl::__vwsn::This(this)->__vwsn_precompile_56))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_55))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_57 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_57)->SetSite(5, 2, 1, 1); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_58 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement>(::vl::reflection::description::Element_Constructor<::vl::presentation::elements::GuiSolidBorderElement>())); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_58.Obj())->SetColor(::vl::__vwsn::Parse<::vl::presentation::Color>(::vl::WString(L"#FF8000", false))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_57)->SetOwnedElement(::vl::__vwsn::Ensure(::vl::Ptr<::vl::presentation::elements::IGuiGraphicsElement>(::vl::__vwsn::This(this)->__vwsn_precompile_58))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_57))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_59 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_59)->SetSite(6, 1, 1, 1); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_60 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement>(::vl::reflection::description::Element_Constructor<::vl::presentation::elements::GuiSolidBorderElement>())); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_60.Obj())->SetColor(::vl::__vwsn::Parse<::vl::presentation::Color>(::vl::WString(L"#FF8000", false))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_59)->SetOwnedElement(::vl::__vwsn::Ensure(::vl::Ptr<::vl::presentation::elements::IGuiGraphicsElement>(::vl::__vwsn::This(this)->__vwsn_precompile_60))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_59))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_61 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_61)->SetSite(6, 2, 1, 1); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_62 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement>(::vl::reflection::description::Element_Constructor<::vl::presentation::elements::GuiSolidBorderElement>())); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_62.Obj())->SetColor(::vl::__vwsn::Parse<::vl::presentation::Color>(::vl::WString(L"#FF8000", false))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_61)->SetOwnedElement(::vl::__vwsn::Ensure(::vl::Ptr<::vl::presentation::elements::IGuiGraphicsElement>(::vl::__vwsn::This(this)->__vwsn_precompile_62))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_61))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_63 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_63)->SetSite(5, 5, 1, 1); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_64 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement>(::vl::reflection::description::Element_Constructor<::vl::presentation::elements::GuiSolidBorderElement>())); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_64.Obj())->SetColor(::vl::__vwsn::Parse<::vl::presentation::Color>(::vl::WString(L"#FF8000", false))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_63)->SetOwnedElement(::vl::__vwsn::Ensure(::vl::Ptr<::vl::presentation::elements::IGuiGraphicsElement>(::vl::__vwsn::This(this)->__vwsn_precompile_64))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_63))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_65 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_65)->SetSite(5, 6, 1, 1); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_66 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement>(::vl::reflection::description::Element_Constructor<::vl::presentation::elements::GuiSolidBorderElement>())); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_66.Obj())->SetColor(::vl::__vwsn::Parse<::vl::presentation::Color>(::vl::WString(L"#FF8000", false))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_65)->SetOwnedElement(::vl::__vwsn::Ensure(::vl::Ptr<::vl::presentation::elements::IGuiGraphicsElement>(::vl::__vwsn::This(this)->__vwsn_precompile_66))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_65))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_67 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_67)->SetSite(6, 5, 1, 1); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_68 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement>(::vl::reflection::description::Element_Constructor<::vl::presentation::elements::GuiSolidBorderElement>())); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_68.Obj())->SetColor(::vl::__vwsn::Parse<::vl::presentation::Color>(::vl::WString(L"#FF8000", false))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_67)->SetOwnedElement(::vl::__vwsn::Ensure(::vl::Ptr<::vl::presentation::elements::IGuiGraphicsElement>(::vl::__vwsn::This(this)->__vwsn_precompile_68))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_67))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_69 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_69)->SetSite(6, 6, 1, 1); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_70 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement>(::vl::reflection::description::Element_Constructor<::vl::presentation::elements::GuiSolidBorderElement>())); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_70.Obj())->SetColor(::vl::__vwsn::Parse<::vl::presentation::Color>(::vl::WString(L"#FF8000", false))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_69)->SetOwnedElement(::vl::__vwsn::Ensure(::vl::Ptr<::vl::presentation::elements::IGuiGraphicsElement>(::vl::__vwsn::This(this)->__vwsn_precompile_70))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_69))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_71 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_71)->SetSite(1, 3, 1, 2); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_72 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement>(::vl::reflection::description::Element_Constructor<::vl::presentation::elements::GuiSolidBorderElement>())); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_72.Obj())->SetColor(::vl::__vwsn::Parse<::vl::presentation::Color>(::vl::WString(L"#FF8000", false))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_71)->SetOwnedElement(::vl::__vwsn::Ensure(::vl::Ptr<::vl::presentation::elements::IGuiGraphicsElement>(::vl::__vwsn::This(this)->__vwsn_precompile_72))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_71))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_73 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_73)->SetSite(2, 3, 1, 2); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_74 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement>(::vl::reflection::description::Element_Constructor<::vl::presentation::elements::GuiSolidBorderElement>())); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_74.Obj())->SetColor(::vl::__vwsn::Parse<::vl::presentation::Color>(::vl::WString(L"#FF8000", false))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_73)->SetOwnedElement(::vl::__vwsn::Ensure(::vl::Ptr<::vl::presentation::elements::IGuiGraphicsElement>(::vl::__vwsn::This(this)->__vwsn_precompile_74))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_73))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_75 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_75)->SetSite(5, 3, 1, 2); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_76 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement>(::vl::reflection::description::Element_Constructor<::vl::presentation::elements::GuiSolidBorderElement>())); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_76.Obj())->SetColor(::vl::__vwsn::Parse<::vl::presentation::Color>(::vl::WString(L"#FF8000", false))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_75)->SetOwnedElement(::vl::__vwsn::Ensure(::vl::Ptr<::vl::presentation::elements::IGuiGraphicsElement>(::vl::__vwsn::This(this)->__vwsn_precompile_76))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_75))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_77 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_77)->SetSite(6, 3, 1, 2); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_78 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement>(::vl::reflection::description::Element_Constructor<::vl::presentation::elements::GuiSolidBorderElement>())); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_78.Obj())->SetColor(::vl::__vwsn::Parse<::vl::presentation::Color>(::vl::WString(L"#FF8000", false))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_77)->SetOwnedElement(::vl::__vwsn::Ensure(::vl::Ptr<::vl::presentation::elements::IGuiGraphicsElement>(::vl::__vwsn::This(this)->__vwsn_precompile_78))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_77))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_79 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_79)->SetSite(3, 1, 2, 1); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_80 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement>(::vl::reflection::description::Element_Constructor<::vl::presentation::elements::GuiSolidBorderElement>())); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_80.Obj())->SetColor(::vl::__vwsn::Parse<::vl::presentation::Color>(::vl::WString(L"#FF8000", false))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_79)->SetOwnedElement(::vl::__vwsn::Ensure(::vl::Ptr<::vl::presentation::elements::IGuiGraphicsElement>(::vl::__vwsn::This(this)->__vwsn_precompile_80))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_79))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_81 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_81)->SetSite(3, 2, 2, 1); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_82 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement>(::vl::reflection::description::Element_Constructor<::vl::presentation::elements::GuiSolidBorderElement>())); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_82.Obj())->SetColor(::vl::__vwsn::Parse<::vl::presentation::Color>(::vl::WString(L"#FF8000", false))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_81)->SetOwnedElement(::vl::__vwsn::Ensure(::vl::Ptr<::vl::presentation::elements::IGuiGraphicsElement>(::vl::__vwsn::This(this)->__vwsn_precompile_82))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_81))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_83 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_83)->SetSite(3, 5, 2, 1); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_84 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement>(::vl::reflection::description::Element_Constructor<::vl::presentation::elements::GuiSolidBorderElement>())); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_84.Obj())->SetColor(::vl::__vwsn::Parse<::vl::presentation::Color>(::vl::WString(L"#FF8000", false))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_83)->SetOwnedElement(::vl::__vwsn::Ensure(::vl::Ptr<::vl::presentation::elements::IGuiGraphicsElement>(::vl::__vwsn::This(this)->__vwsn_precompile_84))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_83))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_85 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_85)->SetSite(3, 6, 2, 1); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_86 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement>(::vl::reflection::description::Element_Constructor<::vl::presentation::elements::GuiSolidBorderElement>())); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_86.Obj())->SetColor(::vl::__vwsn::Parse<::vl::presentation::Color>(::vl::WString(L"#FF8000", false))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_85)->SetOwnedElement(::vl::__vwsn::Ensure(::vl::Ptr<::vl::presentation::elements::IGuiGraphicsElement>(::vl::__vwsn::This(this)->__vwsn_precompile_86))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_85))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_87 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_87)->SetSite(3, 3, 1, 1); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_88 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement>(::vl::reflection::description::Element_Constructor<::vl::presentation::elements::GuiSolidBorderElement>())); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_88.Obj())->SetColor(::vl::__vwsn::Parse<::vl::presentation::Color>(::vl::WString(L"#008000", false))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_87)->SetOwnedElement(::vl::__vwsn::Ensure(::vl::Ptr<::vl::presentation::elements::IGuiGraphicsElement>(::vl::__vwsn::This(this)->__vwsn_precompile_88))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_87))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_89 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_89)->SetSite(3, 4, 1, 1); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_90 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement>(::vl::reflection::description::Element_Constructor<::vl::presentation::elements::GuiSolidBorderElement>())); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_90.Obj())->SetColor(::vl::__vwsn::Parse<::vl::presentation::Color>(::vl::WString(L"#008000", false))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_89)->SetOwnedElement(::vl::__vwsn::Ensure(::vl::Ptr<::vl::presentation::elements::IGuiGraphicsElement>(::vl::__vwsn::This(this)->__vwsn_precompile_90))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_89))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_91 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_91)->SetSite(4, 3, 1, 1); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_92 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement>(::vl::reflection::description::Element_Constructor<::vl::presentation::elements::GuiSolidBorderElement>())); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_92.Obj())->SetColor(::vl::__vwsn::Parse<::vl::presentation::Color>(::vl::WString(L"#008000", false))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_91)->SetOwnedElement(::vl::__vwsn::Ensure(::vl::Ptr<::vl::presentation::elements::IGuiGraphicsElement>(::vl::__vwsn::This(this)->__vwsn_precompile_92))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_91))); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_93 = new ::vl::presentation::compositions::GuiCellComposition()); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_93)->SetSite(4, 4, 1, 1); + } + (::vl::__vwsn::This(this)->__vwsn_precompile_94 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement>(::vl::reflection::description::Element_Constructor<::vl::presentation::elements::GuiSolidBorderElement>())); + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_94.Obj())->SetColor(::vl::__vwsn::Parse<::vl::presentation::Color>(::vl::WString(L"#008000", false))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_93)->SetOwnedElement(::vl::__vwsn::Ensure(::vl::Ptr<::vl::presentation::elements::IGuiGraphicsElement>(::vl::__vwsn::This(this)->__vwsn_precompile_94))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->table)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_93))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_5)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->table))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_4)->GetContainerComposition())->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_5))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_3)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_4)->GetBoundsComposition()))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_1)->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_3))); + } + { + ::vl::__vwsn::This(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_0)->GetContainerComposition())->AddChild(::vl::__vwsn::Ensure(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_1))); + } + { + auto __vwsn_created_subscription_ = ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc1_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription(this))); + ::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->Subscribe(LAMBDA(::vl_workflow_global::__vwsnf1_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this))); + ::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->Update(); + } + { + auto __vwsn_created_subscription_ = ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc3_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription(this))); + ::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->Subscribe(LAMBDA(::vl_workflow_global::__vwsnf2_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this))); + ::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->Update(); + } + { + auto __vwsn_created_subscription_ = ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc5_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription(this))); + ::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->Subscribe(LAMBDA(::vl_workflow_global::__vwsnf3_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this))); + ::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->Update(); + } + { + auto __vwsn_created_subscription_ = ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc7_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription(this))); + ::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->Subscribe(LAMBDA(::vl_workflow_global::__vwsnf4_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this))); + ::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->Update(); + } + { + auto __vwsn_created_subscription_ = ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc9_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription(this))); + ::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->Subscribe(LAMBDA(::vl_workflow_global::__vwsnf5_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this))); + ::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->Update(); + } + { + auto __vwsn_created_subscription_ = ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc11_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription(this))); + ::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->Subscribe(LAMBDA(::vl_workflow_global::__vwsnf6_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this))); + ::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->Update(); + } + { + auto __vwsn_created_subscription_ = ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc13_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription(this))); + ::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->Subscribe(LAMBDA(::vl_workflow_global::__vwsnf7_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this))); + ::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->Update(); + } + { + auto __vwsn_created_subscription_ = ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc15_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription(this))); + ::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->Subscribe(LAMBDA(::vl_workflow_global::__vwsnf8_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this))); + ::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->Update(); + } + { + auto __vwsn_created_subscription_ = ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc17_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription(this))); + ::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->Subscribe(LAMBDA(::vl_workflow_global::__vwsnf9_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this))); + ::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->Update(); + } + } - void MainWindow::OnCreate() + MainWindowConstructor::MainWindowConstructor() { } - void MainWindow::OnDestroy() - { - } - - // #endregion CLASS_MEMBER_GUIEVENT_HANDLER +/*********************************************************************** +Class (::demo::MainWindow) +***********************************************************************/ MainWindow::MainWindow() + : ::vl::presentation::controls::GuiWindow(::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateWindowStyle()) { - InitializeComponents(); - OnCreate(); + auto __vwsn_resource_ = ::vl::__vwsn::This(::vl::presentation::GetResourceManager())->GetResourceFromClassName(::vl::WString(L"demo::MainWindow", 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)->__vwsn_initialize_instance_(this, ::vl::__vwsn::Ensure(static_cast<::vl::presentation::GuiResourcePathResolver*>(__vwsn_resolver_.Obj()))); } MainWindow::~MainWindow() { - OnDestroy(); - ClearSubscriptions(); + ::vl::__vwsn::This(this)->ClearSubscriptions(); } -} +} +#undef GLOBAL_SYMBOL +#undef GLOBAL_NAME +#undef GLOBAL_OBJ +#undef USERIMPL + +/*********************************************************************** +Reflection +***********************************************************************/ namespace vl { @@ -44,47 +2338,151 @@ namespace vl { namespace description { - #define _ , - IMPL_CPP_TYPE_INFO(demo::MainWindow) +#ifndef VCZH_DEBUG_NO_REFLECTION + IMPL_CPP_TYPE_INFO(::demo::MainWindow) + IMPL_CPP_TYPE_INFO(::demo::MainWindowConstructor) - BEGIN_CLASS_MEMBER(demo::MainWindow) - CLASS_MEMBER_BASE(::vl::presentation::controls::GuiWindow) - CLASS_MEMBER_CONSTRUCTOR(demo::MainWindow*(), NO_PARAMETER) - END_CLASS_MEMBER(demo::MainWindow) +#define _ , + BEGIN_CLASS_MEMBER(::demo::MainWindow) + END_CLASS_MEMBER(::demo::MainWindow) - #undef _ + BEGIN_CLASS_MEMBER(::demo::MainWindowConstructor) + CLASS_MEMBER_METHOD(__vwsn_initialize_instance_, { L"__vwsn_this_" _ L"__vwsn_resolver_" }) + CLASS_MEMBER_FIELD(__vwsn_precompile_0) + CLASS_MEMBER_FIELD(__vwsn_precompile_1) + CLASS_MEMBER_FIELD(__vwsn_precompile_10) + CLASS_MEMBER_FIELD(__vwsn_precompile_11) + CLASS_MEMBER_FIELD(__vwsn_precompile_12) + CLASS_MEMBER_FIELD(__vwsn_precompile_13) + CLASS_MEMBER_FIELD(__vwsn_precompile_14) + CLASS_MEMBER_FIELD(__vwsn_precompile_15) + CLASS_MEMBER_FIELD(__vwsn_precompile_16) + CLASS_MEMBER_FIELD(__vwsn_precompile_17) + CLASS_MEMBER_FIELD(__vwsn_precompile_18) + CLASS_MEMBER_FIELD(__vwsn_precompile_19) + CLASS_MEMBER_FIELD(__vwsn_precompile_2) + CLASS_MEMBER_FIELD(__vwsn_precompile_20) + CLASS_MEMBER_FIELD(__vwsn_precompile_21) + CLASS_MEMBER_FIELD(__vwsn_precompile_22) + CLASS_MEMBER_FIELD(__vwsn_precompile_23) + CLASS_MEMBER_FIELD(__vwsn_precompile_24) + CLASS_MEMBER_FIELD(__vwsn_precompile_25) + CLASS_MEMBER_FIELD(__vwsn_precompile_26) + CLASS_MEMBER_FIELD(__vwsn_precompile_27) + CLASS_MEMBER_FIELD(__vwsn_precompile_28) + CLASS_MEMBER_FIELD(__vwsn_precompile_29) + CLASS_MEMBER_FIELD(__vwsn_precompile_3) + CLASS_MEMBER_FIELD(__vwsn_precompile_30) + CLASS_MEMBER_FIELD(__vwsn_precompile_31) + CLASS_MEMBER_FIELD(__vwsn_precompile_32) + CLASS_MEMBER_FIELD(__vwsn_precompile_33) + CLASS_MEMBER_FIELD(__vwsn_precompile_34) + CLASS_MEMBER_FIELD(__vwsn_precompile_35) + CLASS_MEMBER_FIELD(__vwsn_precompile_36) + CLASS_MEMBER_FIELD(__vwsn_precompile_37) + CLASS_MEMBER_FIELD(__vwsn_precompile_38) + CLASS_MEMBER_FIELD(__vwsn_precompile_39) + CLASS_MEMBER_FIELD(__vwsn_precompile_4) + CLASS_MEMBER_FIELD(__vwsn_precompile_40) + CLASS_MEMBER_FIELD(__vwsn_precompile_41) + CLASS_MEMBER_FIELD(__vwsn_precompile_42) + CLASS_MEMBER_FIELD(__vwsn_precompile_43) + CLASS_MEMBER_FIELD(__vwsn_precompile_44) + CLASS_MEMBER_FIELD(__vwsn_precompile_45) + CLASS_MEMBER_FIELD(__vwsn_precompile_46) + CLASS_MEMBER_FIELD(__vwsn_precompile_47) + CLASS_MEMBER_FIELD(__vwsn_precompile_48) + CLASS_MEMBER_FIELD(__vwsn_precompile_49) + CLASS_MEMBER_FIELD(__vwsn_precompile_5) + CLASS_MEMBER_FIELD(__vwsn_precompile_50) + CLASS_MEMBER_FIELD(__vwsn_precompile_51) + CLASS_MEMBER_FIELD(__vwsn_precompile_52) + CLASS_MEMBER_FIELD(__vwsn_precompile_53) + CLASS_MEMBER_FIELD(__vwsn_precompile_54) + CLASS_MEMBER_FIELD(__vwsn_precompile_55) + CLASS_MEMBER_FIELD(__vwsn_precompile_56) + CLASS_MEMBER_FIELD(__vwsn_precompile_57) + CLASS_MEMBER_FIELD(__vwsn_precompile_58) + CLASS_MEMBER_FIELD(__vwsn_precompile_59) + CLASS_MEMBER_FIELD(__vwsn_precompile_6) + CLASS_MEMBER_FIELD(__vwsn_precompile_60) + CLASS_MEMBER_FIELD(__vwsn_precompile_61) + CLASS_MEMBER_FIELD(__vwsn_precompile_62) + CLASS_MEMBER_FIELD(__vwsn_precompile_63) + CLASS_MEMBER_FIELD(__vwsn_precompile_64) + CLASS_MEMBER_FIELD(__vwsn_precompile_65) + CLASS_MEMBER_FIELD(__vwsn_precompile_66) + CLASS_MEMBER_FIELD(__vwsn_precompile_67) + CLASS_MEMBER_FIELD(__vwsn_precompile_68) + CLASS_MEMBER_FIELD(__vwsn_precompile_69) + CLASS_MEMBER_FIELD(__vwsn_precompile_7) + CLASS_MEMBER_FIELD(__vwsn_precompile_70) + CLASS_MEMBER_FIELD(__vwsn_precompile_71) + CLASS_MEMBER_FIELD(__vwsn_precompile_72) + CLASS_MEMBER_FIELD(__vwsn_precompile_73) + CLASS_MEMBER_FIELD(__vwsn_precompile_74) + CLASS_MEMBER_FIELD(__vwsn_precompile_75) + CLASS_MEMBER_FIELD(__vwsn_precompile_76) + CLASS_MEMBER_FIELD(__vwsn_precompile_77) + CLASS_MEMBER_FIELD(__vwsn_precompile_78) + CLASS_MEMBER_FIELD(__vwsn_precompile_79) + CLASS_MEMBER_FIELD(__vwsn_precompile_8) + CLASS_MEMBER_FIELD(__vwsn_precompile_80) + CLASS_MEMBER_FIELD(__vwsn_precompile_81) + CLASS_MEMBER_FIELD(__vwsn_precompile_82) + CLASS_MEMBER_FIELD(__vwsn_precompile_83) + CLASS_MEMBER_FIELD(__vwsn_precompile_84) + CLASS_MEMBER_FIELD(__vwsn_precompile_85) + CLASS_MEMBER_FIELD(__vwsn_precompile_86) + CLASS_MEMBER_FIELD(__vwsn_precompile_87) + CLASS_MEMBER_FIELD(__vwsn_precompile_88) + CLASS_MEMBER_FIELD(__vwsn_precompile_89) + CLASS_MEMBER_FIELD(__vwsn_precompile_9) + CLASS_MEMBER_FIELD(__vwsn_precompile_90) + CLASS_MEMBER_FIELD(__vwsn_precompile_91) + CLASS_MEMBER_FIELD(__vwsn_precompile_92) + CLASS_MEMBER_FIELD(__vwsn_precompile_93) + CLASS_MEMBER_FIELD(__vwsn_precompile_94) + CLASS_MEMBER_FIELD(__vwsn_precompile_95) + CLASS_MEMBER_FIELD(__vwsn_precompile_96) + CLASS_MEMBER_FIELD(checkBorder) + CLASS_MEMBER_FIELD(table) + END_CLASS_MEMBER(::demo::MainWindowConstructor) - class DemoResourceLoader : public Object, public ITypeLoader +#undef _ + class DemoTypeLoader : public Object, public ITypeLoader { public: void Load(ITypeManager* manager) { - ADD_TYPE_INFO(demo::MainWindow) + ADD_TYPE_INFO(::demo::MainWindow) + ADD_TYPE_INFO(::demo::MainWindowConstructor) } void Unload(ITypeManager* manager) { } }; +#endif - class DemoResourcePlugin : public Object, public vl::presentation::controls::IGuiPlugin + bool LoadDemoTypes() { - public: - void Load()override +#ifndef VCZH_DEBUG_NO_REFLECTION + if (auto manager = GetGlobalTypeManager()) { - GetGlobalTypeManager()->AddTypeLoader(new DemoResourceLoader); + return manager->AddTypeLoader(MakePtr()); } - - void AfterLoad()override - { - } - - void Unload()override - { - } - }; - GUI_REGISTER_PLUGIN(DemoResourcePlugin) +#endif + return false; + } } } } +#if defined( _MSC_VER) +#pragma warning(pop) +#elif defined(__GNUC__) +#pragma GCC diagnostic pop +#elif defined(__clang__) +#pragma clang diagnostic pop +#endif diff --git a/Tutorial/GacUI_Layout/TableSplitter/UI/Source/DemoPartialClasses.h b/Tutorial/GacUI_Layout/TableSplitter/UI/Source/DemoPartialClasses.h index d947103f..91dfa515 100644 --- a/Tutorial/GacUI_Layout/TableSplitter/UI/Source/DemoPartialClasses.h +++ b/Tutorial/GacUI_Layout/TableSplitter/UI/Source/DemoPartialClasses.h @@ -1,82 +1,259 @@ -/*********************************************************************** -Vczh Library++ 3.0 -Developer: Zihan Chen(vczh) -GacUI::Partial Classes +/*********************************************************************** +!!!!!! DO NOT MODIFY !!!!!! -This file is generated by: Vczh GacUI Resource Code Generator -************************************************************************ -DO NOT MODIFY +GacGen.exe Resource.xml + +This file is generated by Workflow compiler +https://github.com/vczh-libraries ***********************************************************************/ -#ifndef VCZH_GACUI_RESOURCE_CODE_GENERATOR_Demo_PARTIAL_CLASSES -#define VCZH_GACUI_RESOURCE_CODE_GENERATOR_Demo_PARTIAL_CLASSES +#ifndef VCZH_WORKFLOW_COMPILER_GENERATED_DEMOPARTIALCLASSES +#define VCZH_WORKFLOW_COMPILER_GENERATED_DEMOPARTIALCLASSES -#include "GacUIReflection.h" + +#if defined( _MSC_VER) +#pragma warning(push) +#pragma warning(disable:4250) +#elif defined(__GNUC__) +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wparentheses-equality" +#elif defined(__clang__) +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wparentheses-equality" +#endif + +namespace vl_workflow_global +{ + class __vwsnc10_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener; + class __vwsnc11_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription; + class __vwsnc12_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener; + class __vwsnc13_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription; + class __vwsnc14_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener; + class __vwsnc15_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription; + class __vwsnc16_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener; + class __vwsnc17_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription; + class __vwsnc18_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener; + class __vwsnc1_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription; + class __vwsnc2_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener; + class __vwsnc3_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription; + class __vwsnc4_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener; + class __vwsnc5_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription; + class __vwsnc6_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener; + class __vwsnc7_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription; + class __vwsnc8_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener; + class __vwsnc9_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription; + struct __vwsnf1_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + struct __vwsnf2_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + struct __vwsnf3_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + struct __vwsnf4_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + struct __vwsnf5_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + struct __vwsnf6_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + struct __vwsnf7_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + struct __vwsnf8_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + struct __vwsnf9_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; +} namespace demo { + class MainWindowConstructor; class MainWindow; - template - class MainWindow_ : public ::vl::presentation::controls::GuiWindow, public vl::presentation::GuiInstancePartialClass, public vl::reflection::Description + class MainWindowConstructor : public ::vl::Object, public ::vl::reflection::Description { - friend struct vl::reflection::description::CustomTypeDescriptorSelector; - private: + friend class ::vl_workflow_global::__vwsnc10_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener; + friend class ::vl_workflow_global::__vwsnc11_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc12_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener; + friend class ::vl_workflow_global::__vwsnc13_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc14_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener; + friend class ::vl_workflow_global::__vwsnc15_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc16_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener; + friend class ::vl_workflow_global::__vwsnc17_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc18_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener; + friend class ::vl_workflow_global::__vwsnc1_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc2_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener; + friend class ::vl_workflow_global::__vwsnc3_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc4_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener; + friend class ::vl_workflow_global::__vwsnc5_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc6_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener; + friend class ::vl_workflow_global::__vwsnc7_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc8_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener; + friend class ::vl_workflow_global::__vwsnc9_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription; + friend struct ::vl_workflow_global::__vwsnf1_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf2_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf3_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf4_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf5_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf6_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf7_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf8_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf9_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; +#ifndef VCZH_DEBUG_NO_REFLECTION + friend struct ::vl::reflection::description::CustomTypeDescriptorSelector; +#endif protected: - ::vl::presentation::controls::GuiSelectableButton* checkBorder; - ::vl::presentation::compositions::GuiTableComposition* table; - - void InitializeComponents() - { - if (InitializeFromResource()) - { - GUI_INSTANCE_REFERENCE(checkBorder); - GUI_INSTANCE_REFERENCE(table); - } - else - { - } - } + ::vl::presentation::controls::GuiSelectableButton* checkBorder = static_cast<::vl::presentation::controls::GuiSelectableButton*>(nullptr); + ::vl::presentation::compositions::GuiTableComposition* table = static_cast<::vl::presentation::compositions::GuiTableComposition*>(nullptr); + ::demo::MainWindow* __vwsn_precompile_0 = static_cast<::demo::MainWindow*>(nullptr); + ::vl::presentation::compositions::GuiTableComposition* __vwsn_precompile_1 = static_cast<::vl::presentation::compositions::GuiTableComposition*>(nullptr); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_2 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_3 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::presentation::controls::GuiControl* __vwsn_precompile_4 = static_cast<::vl::presentation::controls::GuiControl*>(nullptr); + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_5 = static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr); + ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement> __vwsn_precompile_6 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement>(); + ::vl::presentation::compositions::GuiRowSplitterComposition* __vwsn_precompile_7 = static_cast<::vl::presentation::compositions::GuiRowSplitterComposition*>(nullptr); + ::vl::presentation::compositions::GuiRowSplitterComposition* __vwsn_precompile_8 = static_cast<::vl::presentation::compositions::GuiRowSplitterComposition*>(nullptr); + ::vl::presentation::compositions::GuiRowSplitterComposition* __vwsn_precompile_9 = static_cast<::vl::presentation::compositions::GuiRowSplitterComposition*>(nullptr); + ::vl::presentation::compositions::GuiRowSplitterComposition* __vwsn_precompile_10 = static_cast<::vl::presentation::compositions::GuiRowSplitterComposition*>(nullptr); + ::vl::presentation::compositions::GuiColumnSplitterComposition* __vwsn_precompile_11 = static_cast<::vl::presentation::compositions::GuiColumnSplitterComposition*>(nullptr); + ::vl::presentation::compositions::GuiColumnSplitterComposition* __vwsn_precompile_12 = static_cast<::vl::presentation::compositions::GuiColumnSplitterComposition*>(nullptr); + ::vl::presentation::compositions::GuiColumnSplitterComposition* __vwsn_precompile_13 = static_cast<::vl::presentation::compositions::GuiColumnSplitterComposition*>(nullptr); + ::vl::presentation::compositions::GuiColumnSplitterComposition* __vwsn_precompile_14 = static_cast<::vl::presentation::compositions::GuiColumnSplitterComposition*>(nullptr); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_15 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::presentation::controls::GuiLabel* __vwsn_precompile_16 = static_cast<::vl::presentation::controls::GuiLabel*>(nullptr); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_17 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::presentation::controls::GuiLabel* __vwsn_precompile_18 = static_cast<::vl::presentation::controls::GuiLabel*>(nullptr); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_19 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::presentation::controls::GuiLabel* __vwsn_precompile_20 = static_cast<::vl::presentation::controls::GuiLabel*>(nullptr); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_21 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::presentation::controls::GuiLabel* __vwsn_precompile_22 = static_cast<::vl::presentation::controls::GuiLabel*>(nullptr); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_23 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::presentation::controls::GuiLabel* __vwsn_precompile_24 = static_cast<::vl::presentation::controls::GuiLabel*>(nullptr); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_25 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::presentation::controls::GuiLabel* __vwsn_precompile_26 = static_cast<::vl::presentation::controls::GuiLabel*>(nullptr); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_27 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::presentation::controls::GuiLabel* __vwsn_precompile_28 = static_cast<::vl::presentation::controls::GuiLabel*>(nullptr); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_29 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::presentation::controls::GuiLabel* __vwsn_precompile_30 = static_cast<::vl::presentation::controls::GuiLabel*>(nullptr); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_31 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::presentation::controls::GuiLabel* __vwsn_precompile_32 = static_cast<::vl::presentation::controls::GuiLabel*>(nullptr); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_33 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::presentation::controls::GuiLabel* __vwsn_precompile_34 = static_cast<::vl::presentation::controls::GuiLabel*>(nullptr); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_35 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::presentation::controls::GuiLabel* __vwsn_precompile_36 = static_cast<::vl::presentation::controls::GuiLabel*>(nullptr); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_37 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::presentation::controls::GuiLabel* __vwsn_precompile_38 = static_cast<::vl::presentation::controls::GuiLabel*>(nullptr); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_39 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement> __vwsn_precompile_40 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement>(); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_41 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement> __vwsn_precompile_42 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement>(); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_43 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement> __vwsn_precompile_44 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement>(); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_45 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement> __vwsn_precompile_46 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement>(); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_47 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement> __vwsn_precompile_48 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement>(); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_49 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement> __vwsn_precompile_50 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement>(); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_51 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement> __vwsn_precompile_52 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement>(); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_53 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement> __vwsn_precompile_54 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement>(); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_55 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement> __vwsn_precompile_56 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement>(); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_57 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement> __vwsn_precompile_58 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement>(); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_59 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement> __vwsn_precompile_60 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement>(); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_61 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement> __vwsn_precompile_62 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement>(); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_63 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement> __vwsn_precompile_64 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement>(); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_65 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement> __vwsn_precompile_66 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement>(); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_67 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement> __vwsn_precompile_68 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement>(); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_69 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement> __vwsn_precompile_70 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement>(); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_71 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement> __vwsn_precompile_72 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement>(); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_73 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement> __vwsn_precompile_74 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement>(); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_75 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement> __vwsn_precompile_76 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement>(); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_77 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement> __vwsn_precompile_78 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement>(); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_79 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement> __vwsn_precompile_80 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement>(); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_81 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement> __vwsn_precompile_82 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement>(); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_83 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement> __vwsn_precompile_84 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement>(); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_85 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement> __vwsn_precompile_86 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement>(); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_87 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement> __vwsn_precompile_88 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement>(); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_89 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement> __vwsn_precompile_90 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement>(); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_91 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement> __vwsn_precompile_92 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement>(); + ::vl::presentation::compositions::GuiCellComposition* __vwsn_precompile_93 = static_cast<::vl::presentation::compositions::GuiCellComposition*>(nullptr); + ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement> __vwsn_precompile_94 = ::vl::Ptr<::vl::presentation::elements::GuiSolidBorderElement>(); + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_95 = static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr); + ::vl::presentation::compositions::GuiBoundsComposition* __vwsn_precompile_96 = static_cast<::vl::presentation::compositions::GuiBoundsComposition*>(nullptr); + void __vwsn_initialize_instance_(::demo::MainWindow* __vwsn_this_, ::vl::presentation::GuiResourcePathResolver* __vwsn_resolver_); public: - MainWindow_() - :vl::presentation::GuiInstancePartialClass<::vl::presentation::controls::GuiWindow>(L"demo::MainWindow") - ,::vl::presentation::controls::GuiWindow(vl::presentation::theme::GetCurrentTheme()->CreateWindowStyle()) - ,checkBorder(0) - ,table(0) - { - } + MainWindowConstructor(); }; -} -namespace vl -{ - namespace reflection + class MainWindow : public ::vl::presentation::controls::GuiWindow, public ::demo::MainWindowConstructor, public ::vl::reflection::Description { - namespace description - { - DECL_TYPE_INFO(demo::MainWindow) - - } - } -} -namespace demo -{ - class MainWindow : public demo::MainWindow_ - { - friend class demo::MainWindow_; - friend struct vl::reflection::description::CustomTypeDescriptorSelector; - protected: - - // #region CLASS_MEMBER_GUIEVENT_HANDLER (DO NOT PUT OTHER CONTENT IN THIS #region.) - void OnCreate(); - void OnDestroy(); - // #endregion CLASS_MEMBER_GUIEVENT_HANDLER + friend class ::demo::MainWindowConstructor; + friend class ::vl_workflow_global::__vwsnc10_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener; + friend class ::vl_workflow_global::__vwsnc11_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc12_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener; + friend class ::vl_workflow_global::__vwsnc13_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc14_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener; + friend class ::vl_workflow_global::__vwsnc15_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc16_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener; + friend class ::vl_workflow_global::__vwsnc17_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc18_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener; + friend class ::vl_workflow_global::__vwsnc1_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc2_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener; + friend class ::vl_workflow_global::__vwsnc3_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc4_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener; + friend class ::vl_workflow_global::__vwsnc5_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc6_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener; + friend class ::vl_workflow_global::__vwsnc7_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription; + friend class ::vl_workflow_global::__vwsnc8_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener; + friend class ::vl_workflow_global::__vwsnc9_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription; + friend struct ::vl_workflow_global::__vwsnf1_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf2_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf3_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf4_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf5_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf6_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf7_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf8_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf9_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; +#ifndef VCZH_DEBUG_NO_REFLECTION + friend struct ::vl::reflection::description::CustomTypeDescriptorSelector; +#endif public: MainWindow(); ~MainWindow(); }; + +} +/*********************************************************************** +Global Variables and Functions +***********************************************************************/ + +namespace vl_workflow_global +{ + class Demo + { + public: + + static Demo& Instance(); + }; } - +#if defined( _MSC_VER) +#pragma warning(pop) +#elif defined(__GNUC__) +#pragma GCC diagnostic pop +#elif defined(__clang__) +#pragma clang diagnostic pop +#endif #endif diff --git a/Tutorial/GacUI_Layout/UIRes/Alignment.bin b/Tutorial/GacUI_Layout/UIRes/Alignment.bin index a30ad6175e038419f0f34fb8483254090354e13e..ccada0e2ad3065de5f710fe05b8c5245c6e1a74b 100644 GIT binary patch delta 152 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 VN6)0^O|;sz_Qhp)gaID$^zWOB>+b*n diff --git a/Tutorial/GacUI_Layout/UIRes/Flow.bin b/Tutorial/GacUI_Layout/UIRes/Flow.bin index 69426b6d372c13eb6046d09b7b756ab9e2aa4b86..cc62164aac1a1eb470016b13fa216c9109e5003d 100644 GIT binary patch delta 144 zcmbRB+pC|2k!2!dJSPJbFi$U>$0;&#qVV(^CpknW?obn9hsuCx_r&B-PrVF=iHyRN z`59%V{}AWo(FjT{&Mz%WP8ESF1krkWF+ddR36zU*%gHa-OUlffd{9n=Cm5{MEk7qE SwP>;}qts+3rXCKcMg{<``65sN literal 1228186 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 AIRF3v diff --git a/Tutorial/GacUI_Layout/UIRes/RichTextEmbedding.bin b/Tutorial/GacUI_Layout/UIRes/RichTextEmbedding.bin index 3ac0ec54c1a8a9858829fb37e8b08d6e6c07e58c..fe2441ba967416ec773e115d237123aea883edbe 100644 GIT binary patch delta 188 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 z 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 diff --git a/Tutorial/GacUI_Layout/UIRes/Table.bin b/Tutorial/GacUI_Layout/UIRes/Table.bin index d1eb1484a2ee221678f8fd497db37a65ee82afd5..d2ca79787b3d9fa68f1a78a678c8b25290b964f8 100644 GIT binary patch delta 160 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�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 Sw)w0njnTImb)+#xiT?+LMj~ON)|I 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≪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