This commit is contained in:
Zihan Chen
2017-01-24 16:01:34 -08:00
parent 50c97f6aae
commit a5605bd53d
9 changed files with 4231 additions and 540 deletions
@@ -4,7 +4,7 @@
<Folder name="Cpp">
<Text name="SourceFolder">Source</Text>
<Text name="Resource">..\..\UIRes\AddressBook.bin</Text>
<Text name="NormalInclude">GacUI.h</Text>
<Text name="NormalInclude">GacUIReflection.h</Text>
<Text name="Name">Demo</Text>
</Folder>
</Folder>
@@ -109,6 +109,19 @@
<Instance name="MainWindowResource">
<Instance ref.Class="demo::MainWindow">
<ref.Parameter Name="ViewModel" Class="demo::IViewModel"/>
<ref.Members>
<![CDATA[
func ClearViewSelection() : void
{
commandBigIcon.Selected = false;
commandSmallIcon.Selected = false;
commandList.Selected = false;
commandDetail.Selected = false;
commandTile.Selected = false;
commandInformation.Selected = false;
}
]]>
</ref.Members>
<Window ref.Name="self" Text="AddressBook" ClientSize="x:640 y:480">
<att.BoundsComposition-set PreferredMinSize="x:640 y:480"/>
@@ -313,8 +326,31 @@
<Instance name="NewFolderWindowResource">
<Instance ref.CodeBehind="false" ref.Class="demo::NewFolderWindow">
<ref.Property Name="FolderName" Type="string" Value=""/>
<ref.Property Name="Ready" Type="bool" Value="true"/>
<ref.Members>
<![CDATA[
@cpp:Protected
var folderName : string = "";
event FolderNameChanged();
func GetFolderName() : string
{
return folderName;
}
func SetFolderName(value : string) : void
{
if (folderName != value)
{
folderName = value;
FolderNameChanged();
}
}
prop FolderName : string {GetFolderName, SetFolderName : FolderNameChanged}
var Ready : bool = true;
]]>
</ref.Members>
<Window ref.Name="self" Text="New Folder" ClientSize="x:240 y:120" MaximizedBox="false" MinimizedBox="false" SizeBox="false">
<att.FolderName-bind>textBoxName.Text</att.FolderName-bind>
@@ -360,9 +396,32 @@
<Instance name="NewContactWindowResource">
<Instance ref.CodeBehind="false" ref.Class="demo::NewContactWindow">
<ref.Property Name="ForEdit" Type="bool" Value="false"/>
<ref.Property Name="Ready" Type="bool" Value="true"/>
<ref.Parameter Name="Contact" Class="demo::IContact"/>
<ref.Members>
<![CDATA[
@cpp:Protected
var forEdit : bool = false;
event ForEditChanged();
func GetForEdit() : bool
{
return forEdit;
}
func SetForEdit(value : bool) : void
{
if (forEdit != value)
{
forEdit = value;
ForEditChanged();
}
}
prop ForEdit : bool {GetForEdit, SetForEdit : ForEditChanged}
var Ready : bool = true;
]]>
</ref.Members>
<Window ref.Name="self" Text-bind="self.ForEdit ? 'Edit Contact' : 'New Contact'" ClientSize="x:480 y:360" MaximizedBox="false" MinimizedBox="false" SizeBox="false">
<Table CellPadding="5" AlignmentToParent="left:0 top:0 right:0 bottom:0">
@@ -1,17 +1,144 @@
/***********************************************************************
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"
#include "MainWindow.h"
/***********************************************************************
Reflection
***********************************************************************/
namespace vl
{
namespace reflection
{
namespace description
{
#ifndef VCZH_DEBUG_NO_REFLECTION
DECL_TYPE_INFO(::demo::ICategory)
DECL_TYPE_INFO(::demo::IContact)
DECL_TYPE_INFO(::demo::IViewModel)
DECL_TYPE_INFO(::demo::MainWindow)
DECL_TYPE_INFO(::demo::MainWindowConstructor)
DECL_TYPE_INFO(::demo::NewContactWindow)
DECL_TYPE_INFO(::demo::NewContactWindowConstructor)
DECL_TYPE_INFO(::demo::NewFolderWindow)
DECL_TYPE_INFO(::demo::NewFolderWindowConstructor)
BEGIN_INTERFACE_PROXY_NOPARENT_SHAREDPTR(::demo::ICategory)
::vl::Ptr<::vl::reflection::description::IValueObservableList> GetContacts() override
{
INVOKEGET_INTERFACE_PROXY_NOPARAMS(GetContacts);
}
::vl::Ptr<::vl::reflection::description::IValueObservableList> GetFolders() override
{
INVOKEGET_INTERFACE_PROXY_NOPARAMS(GetFolders);
}
::vl::Ptr<::vl::presentation::GuiImageData> GetImage() override
{
INVOKEGET_INTERFACE_PROXY_NOPARAMS(GetImage);
}
::vl::WString GetName() override
{
INVOKEGET_INTERFACE_PROXY_NOPARAMS(GetName);
}
::demo::ICategory* GetParent() override
{
INVOKEGET_INTERFACE_PROXY_NOPARAMS(GetParent);
}
END_INTERFACE_PROXY(::demo::ICategory)
BEGIN_INTERFACE_PROXY_NOPARENT_SHAREDPTR(::demo::IContact)
::vl::WString GetAddress() override
{
INVOKEGET_INTERFACE_PROXY_NOPARAMS(GetAddress);
}
::vl::Ptr<::vl::presentation::GuiImageData> GetBigImage() override
{
INVOKEGET_INTERFACE_PROXY_NOPARAMS(GetBigImage);
}
::vl::DateTime GetBirthday() override
{
INVOKEGET_INTERFACE_PROXY_NOPARAMS(GetBirthday);
}
::vl::WString GetBirthdayText() override
{
INVOKEGET_INTERFACE_PROXY_NOPARAMS(GetBirthdayText);
}
::vl::WString GetName() override
{
INVOKEGET_INTERFACE_PROXY_NOPARAMS(GetName);
}
::vl::WString GetPhone() override
{
INVOKEGET_INTERFACE_PROXY_NOPARAMS(GetPhone);
}
::vl::Ptr<::vl::presentation::GuiImageData> GetSmallImage() override
{
INVOKEGET_INTERFACE_PROXY_NOPARAMS(GetSmallImage);
}
void Update(const ::vl::WString& name, ::vl::DateTime birthday, const ::vl::WString& phone, const ::vl::WString& address) override
{
INVOKE_INTERFACE_PROXY(Update, name, birthday, phone, address);
}
END_INTERFACE_PROXY(::demo::IContact)
BEGIN_INTERFACE_PROXY_NOPARENT_SHAREDPTR(::demo::IViewModel)
void AddCategory(const ::vl::WString& name) override
{
INVOKE_INTERFACE_PROXY(AddCategory, name);
}
void AddContact(::vl::Ptr<::demo::IContact> contact) override
{
INVOKE_INTERFACE_PROXY(AddContact, contact);
}
::vl::Ptr<::demo::IContact> CreateContact() override
{
INVOKEGET_INTERFACE_PROXY_NOPARAMS(CreateContact);
}
::vl::Ptr<::demo::ICategory> GetRootCategory() override
{
INVOKEGET_INTERFACE_PROXY_NOPARAMS(GetRootCategory);
}
::vl::Ptr<::demo::ICategory> GetSelectedCategory() override
{
INVOKEGET_INTERFACE_PROXY_NOPARAMS(GetSelectedCategory);
}
::vl::Ptr<::demo::IContact> GetSelectedContact() override
{
INVOKEGET_INTERFACE_PROXY_NOPARAMS(GetSelectedContact);
}
void RemoveCategory() override
{
INVOKE_INTERFACE_PROXY_NOPARAMS(RemoveCategory);
}
void RemoveContact() override
{
INVOKE_INTERFACE_PROXY_NOPARAMS(RemoveContact);
}
void SetSelectedCategory(::vl::Ptr<::demo::ICategory> value) override
{
INVOKE_INTERFACE_PROXY(SetSelectedCategory, value);
}
void SetSelectedContact(::vl::Ptr<::demo::IContact> value) override
{
INVOKE_INTERFACE_PROXY(SetSelectedContact, value);
}
END_INTERFACE_PROXY(::demo::IViewModel)
#endif
extern bool LoadDemoTypes();
}
}
}
#endif
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
@@ -1,89 +1,123 @@
/***********************************************************************
Vczh Library++ 3.0
Developer: Zihan Chen(vczh)
GacUI::MainWindow
/***********************************************************************
!!!!!! DO NOT MODIFY !!!!!!
This file is generated by: Vczh GacUI Resource Code Generator
GacGen.exe Resource.xml
This file is generated by Workflow compiler
https://github.com/vczh-libraries
***********************************************************************/
#define GAC_HEADER_USE_NAMESPACE
#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(...)
/***********************************************************************
Class (::demo::MainWindow)
***********************************************************************/
namespace demo
{
// #region CLASS_MEMBER_GUIEVENT_HANDLER (DO NOT PUT OTHER CONTENT IN THIS #region.)
void MainWindow::ClearViewSelection()
{
::vl::__vwsn::This(::vl::__vwsn::This(this)->commandBigIcon)->SetSelected(false);
::vl::__vwsn::This(::vl::__vwsn::This(this)->commandSmallIcon)->SetSelected(false);
::vl::__vwsn::This(::vl::__vwsn::This(this)->commandList)->SetSelected(false);
::vl::__vwsn::This(::vl::__vwsn::This(this)->commandDetail)->SetSelected(false);
::vl::__vwsn::This(::vl::__vwsn::This(this)->commandTile)->SetSelected(false);
::vl::__vwsn::This(::vl::__vwsn::This(this)->commandInformation)->SetSelected(false);
}
void MainWindow::commandBigIcon_Executed(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs& arguments)
::vl::Ptr<::demo::IViewModel> MainWindow::GetViewModel()
{
return ::vl::__vwsn::This(this)->__vwsn_parameter_ViewModel;
}
USERIMPL(/* ::demo::MainWindow */)
void MainWindow::commandBigIcon_Executed(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments)
{
ClearViewSelection();
commandBigIcon->SetSelected(true);
listViewContacts->ChangeItemStyle(new list::ListViewBigIconContentProvider);
listViewContacts->ChangeItemStyle(new vl::presentation::controls::list::ListViewBigIconContentProvider);
}
void MainWindow::commandDetail_Executed(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs& arguments)
USERIMPL(/* ::demo::MainWindow */)
void MainWindow::commandSmallIcon_Executed(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments)
{
ClearViewSelection();
commandDetail->SetSelected(true);
listViewContacts->ChangeItemStyle(new list::ListViewDetailContentProvider);
commandBigIcon->SetSelected(true);
listViewContacts->ChangeItemStyle(new vl::presentation::controls::list::ListViewSmallIconContentProvider);
}
void MainWindow::commandInformation_Executed(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs& arguments)
USERIMPL(/* ::demo::MainWindow */)
void MainWindow::commandList_Executed(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments)
{
ClearViewSelection();
commandInformation->SetSelected(true);
listViewContacts->ChangeItemStyle(new list::ListViewInformationContentProvider);
commandBigIcon->SetSelected(true);
listViewContacts->ChangeItemStyle(new vl::presentation::controls::list::ListViewListContentProvider);
}
void MainWindow::commandList_Executed(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs& arguments)
USERIMPL(/* ::demo::MainWindow */)
void MainWindow::commandDetail_Executed(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments)
{
ClearViewSelection();
commandList->SetSelected(true);
listViewContacts->ChangeItemStyle(new list::ListViewListContentProvider);
commandBigIcon->SetSelected(true);
listViewContacts->ChangeItemStyle(new vl::presentation::controls::list::ListViewDetailContentProvider);
}
void MainWindow::commandSmallIcon_Executed(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs& arguments)
USERIMPL(/* ::demo::MainWindow */)
void MainWindow::commandTile_Executed(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments)
{
ClearViewSelection();
commandSmallIcon->SetSelected(true);
listViewContacts->ChangeItemStyle(new list::ListViewSmallIconContentProvider);
commandBigIcon->SetSelected(true);
listViewContacts->ChangeItemStyle(new vl::presentation::controls::list::ListViewTileContentProvider);
}
void MainWindow::commandTile_Executed(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs& arguments)
USERIMPL(/* ::demo::MainWindow */)
void MainWindow::commandInformation_Executed(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments)
{
ClearViewSelection();
commandTile->SetSelected(true);
listViewContacts->ChangeItemStyle(new list::ListViewTileContentProvider);
commandBigIcon->SetSelected(true);
listViewContacts->ChangeItemStyle(new vl::presentation::controls::list::ListViewInformationContentProvider);
}
void MainWindow::OnCreate()
MainWindow::MainWindow(::vl::Ptr<::demo::IViewModel> __vwsn_ctor_parameter_ViewModel)
: ::vl::presentation::controls::GuiWindow(::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateWindowStyle())
{
}
void MainWindow::OnDestroy()
{
}
// #endregion CLASS_MEMBER_GUIEVENT_HANDLER
void MainWindow::ClearViewSelection()
{
commandBigIcon->SetSelected(false);
commandSmallIcon->SetSelected(false);
commandList->SetSelected(false);
commandDetail->SetSelected(false);
commandTile->SetSelected(false);
commandInformation->SetSelected(false);
}
MainWindow::MainWindow(vl::Ptr<demo::IViewModel> ViewModel)
{
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();
}
}
#undef GLOBAL_SYMBOL
#undef GLOBAL_NAME
#undef GLOBAL_OBJ
#undef USERIMPL
#if defined( _MSC_VER)
#pragma warning(pop)
#elif defined(__GNUC__)
#pragma GCC diagnostic pop
#elif defined(__clang__)
#pragma clang diagnostic pop
#endif
@@ -1,40 +1,97 @@
/***********************************************************************
Vczh Library++ 3.0
Developer: Zihan Chen(vczh)
GacUI::MainWindow
/***********************************************************************
!!!!!! DO NOT MODIFY !!!!!!
This file is generated by: Vczh GacUI Resource Code Generator
GacGen.exe Resource.xml
This file is generated by Workflow compiler
https://github.com/vczh-libraries
***********************************************************************/
#ifndef VCZH_GACUI_RESOURCE_CODE_GENERATOR_Demo_MainWindow
#define VCZH_GACUI_RESOURCE_CODE_GENERATOR_Demo_MainWindow
#ifndef VCZH_WORKFLOW_COMPILER_GENERATED_MAINWINDOW
#define VCZH_WORKFLOW_COMPILER_GENERATED_MAINWINDOW
#include "DemoPartialClasses.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 MainWindow : public demo::MainWindow_<demo::MainWindow>
class MainWindow : public ::vl::presentation::controls::GuiWindow, public ::demo::MainWindowConstructor, public ::vl::reflection::Description<MainWindow>
{
friend class demo::MainWindow_<demo::MainWindow>;
friend struct vl::reflection::description::CustomTypeDescriptorSelector<demo::MainWindow>;
protected:
// #region CLASS_MEMBER_GUIEVENT_HANDLER (DO NOT PUT OTHER CONTENT IN THIS #region.)
void commandBigIcon_Executed(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs& arguments);
void commandDetail_Executed(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs& arguments);
void commandInformation_Executed(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs& arguments);
void commandList_Executed(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs& arguments);
void commandSmallIcon_Executed(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs& arguments);
void commandTile_Executed(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs& arguments);
void OnCreate();
void OnDestroy();
// #endregion CLASS_MEMBER_GUIEVENT_HANDLER
void ClearViewSelection();
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::__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::__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::__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::__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__;
friend struct ::vl_workflow_global::__vwsno14_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__;
friend struct ::vl_workflow_global::__vwsno15_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__;
friend struct ::vl_workflow_global::__vwsno16_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__;
friend struct ::vl_workflow_global::__vwsno17_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__;
friend struct ::vl_workflow_global::__vwsno18_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__;
friend struct ::vl_workflow_global::__vwsno19_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__;
#ifndef VCZH_DEBUG_NO_REFLECTION
friend struct ::vl::reflection::description::CustomTypeDescriptorSelector<MainWindow>;
#endif
public:
MainWindow(vl::Ptr<demo::IViewModel> ViewModel);
void ClearViewSelection();
::vl::Ptr<::demo::IViewModel> __vwsn_parameter_ViewModel = ::vl::Ptr<::demo::IViewModel>();
::vl::Ptr<::demo::IViewModel> GetViewModel();
protected:
void commandBigIcon_Executed(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments);
void commandSmallIcon_Executed(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments);
void commandList_Executed(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments);
void commandDetail_Executed(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments);
void commandTile_Executed(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments);
void commandInformation_Executed(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments);
public:
MainWindow(::vl::Ptr<::demo::IViewModel> __vwsn_ctor_parameter_ViewModel);
~MainWindow();
};
}
#if defined( _MSC_VER)
#pragma warning(pop)
#elif defined(__GNUC__)
#pragma GCC diagnostic pop
#elif defined(__clang__)
#pragma clang diagnostic pop
#endif
#endif