diff --git a/Import/GacUI.cpp b/Import/GacUI.cpp index a11c82ac..90703e11 100644 --- a/Import/GacUI.cpp +++ b/Import/GacUI.cpp @@ -4723,62 +4723,67 @@ namespace vl using namespace reflection::description; using namespace templates; - Value ReadProperty(const Value& thisObject, const WString& propertyName) + template + struct DefaultValueOf { -#ifndef VCZH_DEBUG_NO_REFLECTION - if (!thisObject.IsNull() && propertyName != L"") + static T Get() { - auto td = thisObject.GetTypeDescriptor(); - auto info = td->GetPropertyByName(propertyName, true); - if (info && info->IsReadable()) - { - return info->GetValue(thisObject); - } - else - { - return Value(); - } + return TypedValueSerializerProvider::GetDefaultValue(); + } + }; + + template + struct DefaultValueOf> + { + static Ptr Get() + { + return nullptr; + } + }; + + template<> + struct DefaultValueOf + { + static Value Get() + { + return Value(); + } + }; + + template + T ReadProperty(const Value& thisObject, const ItemProperty& propertyName) + { + if (!thisObject.IsNull() && propertyName) + { + return propertyName(thisObject); + } + else + { + return DefaultValueOf::Get(); } - return thisObject; -#else - CHECK_FAIL(L"ReadProperty(const Value&, const WString&)#This function cannot be called without reflection enabled."); -#endif } - void WriteProperty(Value& thisObject, const WString& propertyName, const Value& newValue) + template + T ReadProperty(const Value& thisObject, const WritableItemProperty& propertyName) { -#ifndef VCZH_DEBUG_NO_REFLECTION - if (!thisObject.IsNull() && propertyName != L"") + auto defaultValue = DefaultValueOf::Get(); + if (!thisObject.IsNull() && propertyName) { - auto td = thisObject.GetTypeDescriptor(); - auto info = td->GetPropertyByName(propertyName, true); - if (info && info->IsWritable()) - { - info->SetValue(thisObject, newValue); - } + return propertyName(thisObject, defaultValue, false); + } + else + { + return defaultValue; } -#else - CHECK_FAIL(L"WriteProperty(const Value&, const WString&, const Value&)#This function cannot be called without reflection enabled."); -#endif } - WString GetValueText(const Value& value) + template + void WriteProperty(const Value& thisObject, const WritableItemProperty& propertyName, const T& value) { -#ifndef VCZH_DEBUG_NO_REFLECTION - if (auto td = value.GetTypeDescriptor()) + if (!thisObject.IsNull() && propertyName) { - if (auto st = td->GetSerializableType()) - { - WString result; - st->Serialize(value, result); - return result; - } - return L"<" + td->GetTypeName() + L">"; + propertyName(thisObject, value, true); } - return L""; -#else - CHECK_FAIL(L"GetValueText(const Value&)#This function cannot be called without reflection enabled."); -#endif } /*********************************************************************** @@ -4916,7 +4921,7 @@ GuiBindableTextList::ItemSource { if (0 <= itemIndex && itemIndex < itemSource->GetCount()) { - return GetValueText(ReadProperty(itemSource->Get(itemIndex), textProperty)); + return ReadProperty(itemSource->Get(itemIndex), textProperty); } } return L""; @@ -4924,21 +4929,13 @@ GuiBindableTextList::ItemSource bool GuiBindableTextList::ItemSource::GetChecked(vint itemIndex) { -#ifndef VCZH_DEBUG_NO_REFLECTION if (itemSource) { if (0 <= itemIndex && itemIndex < itemSource->GetCount()) { - auto value = ReadProperty(itemSource->Get(itemIndex), checkedProperty); - if (value.GetTypeDescriptor() == description::GetTypeDescriptor()) - { - return UnboxValue(value); - } + return ReadProperty(itemSource->Get(itemIndex), checkedProperty); } } -#else - CHECK_FAIL(L"GuiBindableTextList::ItemSource::GetChecked(vint)#This function cannot be called without reflection enabled."); -#endif return false; } @@ -4949,7 +4946,7 @@ GuiBindableTextList::ItemSource if (0 <= itemIndex && itemIndex < itemSource->GetCount()) { auto thisValue = itemSource->Get(itemIndex); - WriteProperty(thisValue, checkedProperty, BoxValue(value)); + WriteProperty(thisValue, checkedProperty, value); } } } @@ -4981,12 +4978,12 @@ GuiBindableTextList itemSource->SetItemSource(_itemSource); } - const WString& GuiBindableTextList::GetTextProperty() + ItemProperty GuiBindableTextList::GetTextProperty() { return itemSource->textProperty; } - void GuiBindableTextList::SetTextProperty(const WString& value) + void GuiBindableTextList::SetTextProperty(const ItemProperty& value) { if (itemSource->textProperty != value) { @@ -4996,12 +4993,12 @@ GuiBindableTextList } } - const WString& GuiBindableTextList::GetCheckedProperty() + WritableItemProperty GuiBindableTextList::GetCheckedProperty() { return itemSource->checkedProperty; } - void GuiBindableTextList::SetCheckedProperty(const WString& value) + void GuiBindableTextList::SetCheckedProperty(const WritableItemProperty& value) { if (itemSource->checkedProperty != value) { @@ -5197,8 +5194,7 @@ GuiBindableListView::ItemSource { if (0 <= itemIndex && itemIndex < itemSource->GetCount()) { - auto value = ReadProperty(itemSource->Get(itemIndex), smallImageProperty); - return value.GetSharedPtr().Cast(); + return ReadProperty(itemSource->Get(itemIndex), smallImageProperty); } } return nullptr; @@ -5210,8 +5206,7 @@ GuiBindableListView::ItemSource { if (0 <= itemIndex && itemIndex < itemSource->GetCount()) { - auto value = ReadProperty(itemSource->Get(itemIndex), largeImageProperty); - return value.GetSharedPtr().Cast(); + return ReadProperty(itemSource->Get(itemIndex), largeImageProperty); } } return nullptr; @@ -5223,7 +5218,7 @@ GuiBindableListView::ItemSource { if (0 <= itemIndex && itemIndex < itemSource->GetCount() && columns.Count()>0) { - return GetValueText(ReadProperty(itemSource->Get(itemIndex), columns[0]->GetTextProperty())); + return ReadProperty(itemSource->Get(itemIndex), columns[0]->GetTextProperty()); } } return L""; @@ -5235,7 +5230,7 @@ GuiBindableListView::ItemSource { if (0 <= itemIndex && itemIndex < itemSource->GetCount() && 0 <= index && index < columns.Count() - 1) { - return GetValueText(ReadProperty(itemSource->Get(itemIndex), columns[index + 1]->GetTextProperty())); + return ReadProperty(itemSource->Get(itemIndex), columns[index + 1]->GetTextProperty()); } } return L""; @@ -5378,12 +5373,12 @@ GuiBindableListView itemSource->SetItemSource(_itemSource); } - const WString& GuiBindableListView::GetLargeImageProperty() + ItemProperty> GuiBindableListView::GetLargeImageProperty() { return itemSource->largeImageProperty; } - void GuiBindableListView::SetLargeImageProperty(const WString& value) + void GuiBindableListView::SetLargeImageProperty(const ItemProperty>& value) { if (itemSource->largeImageProperty != value) { @@ -5393,12 +5388,12 @@ GuiBindableListView } } - const WString& GuiBindableListView::GetSmallImageProperty() + ItemProperty> GuiBindableListView::GetSmallImageProperty() { return itemSource->smallImageProperty; } - void GuiBindableListView::SetSmallImageProperty(const WString& value) + void GuiBindableListView::SetSmallImageProperty(const ItemProperty>& value) { if (itemSource->smallImageProperty != value) { @@ -5421,15 +5416,12 @@ GuiBindableTreeView::ItemSourceNode void GuiBindableTreeView::ItemSourceNode::PrepareChildren() { -#ifndef VCZH_DEBUG_NO_REFLECTION if (!childrenVirtualList) { - auto value = ReadProperty(itemSource, rootProvider->childrenProperty); - if (auto td = value.GetTypeDescriptor()) + if (auto value = ReadProperty(itemSource, rootProvider->childrenProperty)) { - if (td->CanConvertTo(description::GetTypeDescriptor())) + if (auto ol = value.Cast()) { - auto ol = UnboxValue>(value); itemChangedEventHandler = ol->ItemChanged.Add([this](vint start, vint oldCount, vint newCount) { callback->OnBeforeItemModified(this, start, oldCount, newCount); @@ -5444,14 +5436,13 @@ GuiBindableTreeView::ItemSourceNode }); childrenVirtualList = ol; } - else if (td->CanConvertTo(description::GetTypeDescriptor())) + else if (auto rl = value.Cast()) { - childrenVirtualList = UnboxValue>(value); + childrenVirtualList = rl; } - else if (td->CanConvertTo(description::GetTypeDescriptor())) + else { - auto e = UnboxValue>(value); - childrenVirtualList = IValueList::Create(GetLazyList(e)); + childrenVirtualList = IValueList::Create(GetLazyList(value)); } } @@ -5468,9 +5459,6 @@ GuiBindableTreeView::ItemSourceNode children.Add(node); } } -#else - CHECK_FAIL(L"GuiBindableTreeView::ItemSourceNode::PrepareChildren()#This function cannot be called without reflection enabled."); -#endif } void GuiBindableTreeView::ItemSourceNode::UnprepareChildren() @@ -5680,8 +5668,7 @@ GuiBindableTreeView::ItemSource { if (auto itemSourceNode = dynamic_cast(node)) { - auto value = ReadProperty(itemSourceNode->GetItemSource(), imageProperty); - return value.GetSharedPtr().Cast(); + return ReadProperty(itemSourceNode->GetItemSource(), imageProperty); } return nullptr; } @@ -5690,7 +5677,7 @@ GuiBindableTreeView::ItemSource { if (auto itemSourceNode = dynamic_cast(node)) { - return GetValueText(ReadProperty(itemSourceNode->GetItemSource(), textProperty)); + return ReadProperty(itemSourceNode->GetItemSource(), textProperty); } return L""; } @@ -5723,12 +5710,12 @@ GuiBindableTreeView itemSource->SetItemSource(_itemSource); } - const WString& GuiBindableTreeView::GetTextProperty() + ItemProperty GuiBindableTreeView::GetTextProperty() { return itemSource->textProperty; } - void GuiBindableTreeView::SetTextProperty(const WString& value) + void GuiBindableTreeView::SetTextProperty(const ItemProperty& value) { if (itemSource->textProperty != value) { @@ -5738,12 +5725,12 @@ GuiBindableTreeView } } - const WString& GuiBindableTreeView::GetImageProperty() + ItemProperty> GuiBindableTreeView::GetImageProperty() { return itemSource->imageProperty; } - void GuiBindableTreeView::SetImageProperty(const WString& value) + void GuiBindableTreeView::SetImageProperty(const ItemProperty>& value) { if (itemSource->imageProperty != value) { @@ -5753,12 +5740,12 @@ GuiBindableTreeView } } - const WString& GuiBindableTreeView::GetChildrenProperty() + ItemProperty> GuiBindableTreeView::GetChildrenProperty() { return itemSource->childrenProperty; } - void GuiBindableTreeView::SetChildrenProperty(const WString& value) + void GuiBindableTreeView::SetChildrenProperty(const ItemProperty>& value) { if (itemSource->childrenProperty != value) { @@ -5814,7 +5801,14 @@ GuiBindableDataColumn WString BindableDataColumn::GetCellText(vint row) { - return GetValueText(GetCellValue(row)); + if (dataProvider->itemSource) + { + if (0 <= row && row < dataProvider->itemSource->GetCount()) + { + return ReadProperty(dataProvider->itemSource->Get(row), textProperty); + } + } + return L""; } description::Value BindableDataColumn::GetCellValue(vint row) @@ -5840,13 +5834,32 @@ GuiBindableDataColumn } } } + + ItemProperty BindableDataColumn::GetTextProperty() + { + return textProperty; + } - const WString& BindableDataColumn::GetValueProperty() + void BindableDataColumn::SetTextProperty(const ItemProperty& value) + { + if (textProperty != value) + { + textProperty = value; + if (commandExecutor) + { + commandExecutor->OnDataProviderColumnChanged(); + } + compositions::GuiEventArgs arguments; + TextPropertyChanged.Execute(arguments); + } + } + + WritableItemProperty BindableDataColumn::GetValueProperty() { return valueProperty; } - void BindableDataColumn::SetValueProperty(const WString& value) + void BindableDataColumn::SetValueProperty(const WritableItemProperty& value) { if (valueProperty != value) { @@ -9307,6 +9320,11 @@ GuiListControl GuiSelectableListControl ***********************************************************************/ + void GuiSelectableListControl::NotifySelectionChanged() + { + SelectionChanged.Execute(GetNotifyEventArguments()); + } + void GuiSelectableListControl::OnItemModified(vint start, vint count, vint newCount) { GuiListControl::OnItemModified(start, count, newCount); @@ -9493,7 +9511,7 @@ GuiSelectableListControl } selectedItems.Add(itemIndex); OnItemSelectionChanged(itemIndex, value); - SelectionChanged.Execute(GetNotifyEventArguments()); + NotifySelectionChanged(); } } else @@ -9501,7 +9519,7 @@ GuiSelectableListControl if(selectedItems.Remove(itemIndex)) { OnItemSelectionChanged(itemIndex, value); - SelectionChanged.Execute(GetNotifyEventArguments()); + NotifySelectionChanged(); } } } @@ -9531,7 +9549,7 @@ GuiSelectableListControl } selectedItemIndexEnd=itemIndex; SetMultipleItemsSelectedSilently(selectedItemIndexStart, selectedItemIndexEnd, true); - SelectionChanged.Execute(GetNotifyEventArguments()); + NotifySelectionChanged(); } else { @@ -9547,7 +9565,7 @@ GuiSelectableListControl selectedItems.RemoveAt(index); } OnItemSelectionChanged(itemIndex, index==-1); - SelectionChanged.Execute(GetNotifyEventArguments()); + NotifySelectionChanged(); } else { @@ -9555,7 +9573,7 @@ GuiSelectableListControl OnItemSelectionCleared(); selectedItems.Add(itemIndex); OnItemSelectionChanged(itemIndex, true); - SelectionChanged.Execute(GetNotifyEventArguments()); + NotifySelectionChanged(); } selectedItemIndexStart=itemIndex; selectedItemIndexEnd=itemIndex; @@ -9622,7 +9640,7 @@ GuiSelectableListControl { selectedItems.Clear(); OnItemSelectionCleared(); - SelectionChanged.Execute(GetNotifyEventArguments()); + NotifySelectionChanged(); } } @@ -12266,12 +12284,12 @@ ListViewColumn NotifyUpdate(); } - const WString& ListViewColumn::GetTextProperty() + ItemProperty ListViewColumn::GetTextProperty() { return textProperty; } - void ListViewColumn::SetTextProperty(const WString& value) + void ListViewColumn::SetTextProperty(const ItemProperty& value) { textProperty = value; NotifyUpdate(); diff --git a/Import/GacUI.h b/Import/GacUI.h index 3d639923..603b2b66 100644 --- a/Import/GacUI.h +++ b/Import/GacUI.h @@ -10901,6 +10901,7 @@ Selectable List Control vint selectedItemIndexStart; vint selectedItemIndexEnd; + void NotifySelectionChanged(); void OnItemModified(vint start, vint count, vint newCount)override; void OnStyleInstalled(vint itemIndex, IItemStyleController* style)override; void OnStyleUninstalled(IItemStyleController* style)override; @@ -11692,6 +11693,12 @@ namespace vl { class GuiListViewBase; + template + using ItemProperty = Func; + + template + using WritableItemProperty = Func; + namespace list { @@ -12424,7 +12431,7 @@ ListView protected: ListViewColumns* owner; WString text; - WString textProperty; + ItemProperty textProperty; vint size; GuiMenu* dropdownPopup; GuiListViewColumnHeader::ColumnSortingState sortingState; @@ -12444,10 +12451,10 @@ ListView void SetText(const WString& value); /// Get the text property of this item. /// The text property of this item. - const WString& GetTextProperty(); + ItemProperty GetTextProperty(); /// Set the text property of this item. /// The text property of this item. - void SetTextProperty(const WString& value); + void SetTextProperty(const ItemProperty& value); /// Get the size of this item. /// The size of this item. vint GetSize(); @@ -16745,8 +16752,8 @@ GuiBindableTextList Ptr itemSource; public: - WString textProperty; - WString checkedProperty; + ItemProperty textProperty; + WritableItemProperty checkedProperty; public: ItemSource(); @@ -16804,17 +16811,17 @@ GuiBindableTextList /// Get the text property name to get the item text from an item. /// The text property name. - const WString& GetTextProperty(); + ItemProperty GetTextProperty(); /// Set the text property name to get the item text from an item. /// The text property name. - void SetTextProperty(const WString& value); + void SetTextProperty(const ItemProperty& value); /// Get the checked property name to get the check state from an item. /// The checked property name. - const WString& GetCheckedProperty(); + WritableItemProperty GetCheckedProperty(); /// Set the checked property name to get the check state from an item. /// The checked property name. - void SetCheckedProperty(const WString& value); + void SetCheckedProperty(const WritableItemProperty& value); /// Get the selected item. /// Returns the selected item. If there are multiple selected items, or there is no selected item, null will be returned. @@ -16845,8 +16852,8 @@ GuiBindableListView Ptr itemSource; public: - WString largeImageProperty; - WString smallImageProperty; + ItemProperty> largeImageProperty; + ItemProperty> smallImageProperty; public: ItemSource(); @@ -16932,17 +16939,17 @@ GuiBindableListView /// Get the large image property name to get the large image from an item. /// The large image property name. - const WString& GetLargeImageProperty(); + ItemProperty> GetLargeImageProperty(); /// Set the large image property name to get the large image from an item. /// The large image property name. - void SetLargeImageProperty(const WString& value); + void SetLargeImageProperty(const ItemProperty>& value); /// Get the small image property name to get the small image from an item. /// The small image property name. - const WString& GetSmallImageProperty(); + ItemProperty> GetSmallImageProperty(); /// Set the small image property name to get the small image from an item. /// The small image property name. - void SetSmallImageProperty(const WString& value); + void SetSmallImageProperty(const ItemProperty>& value); /// Get the selected item. /// Returns the selected item. If there are multiple selected items, or there is no selected item, null will be returned. @@ -16956,6 +16963,7 @@ GuiBindableTreeView /// A bindable Tree view control. class GuiBindableTreeView : public GuiVirtualTreeView, public Description { + using IValueEnumerable = reflection::description::IValueEnumerable; protected: class ItemSource; @@ -17006,9 +17014,9 @@ GuiBindableTreeView { friend class ItemSourceNode; public: - WString textProperty; - WString imageProperty; - WString childrenProperty; + ItemProperty textProperty; + ItemProperty> imageProperty; + ItemProperty> childrenProperty; Ptr rootNode; public: @@ -17065,24 +17073,24 @@ GuiBindableTreeView /// Get the text property name to get the item text from an item. /// The text property name. - const WString& GetTextProperty(); + ItemProperty GetTextProperty(); /// Set the text property name to get the item text from an item. /// The text property name. - void SetTextProperty(const WString& value); + void SetTextProperty(const ItemProperty& value); /// Get the image property name to get the image from an item. /// The image property name. - const WString& GetImageProperty(); + ItemProperty> GetImageProperty(); /// Set the image property name to get the image from an item. /// The image property name. - void SetImageProperty(const WString& value); + void SetImageProperty(const ItemProperty>& value); /// Get the children property name to get the children from an item. /// The children property name. - const WString& GetChildrenProperty(); + ItemProperty> GetChildrenProperty(); /// Set the children property name to get the children from an item. /// The children property name. - void SetChildrenProperty(const WString& value); + void SetChildrenProperty(const ItemProperty>& value); /// Get the selected item. /// Returns the selected item. If there are multiple selected items, or there is no selected item, null will be returned. @@ -17101,9 +17109,12 @@ GuiBindableDataGrid class BindableDataColumn : public StructuredColummProviderBase, public Description { friend class BindableDataProvider; + + using Value = reflection::description::Value; protected: BindableDataProvider* dataProvider; - WString valueProperty; + ItemProperty textProperty; + WritableItemProperty valueProperty; public: BindableDataColumn(); @@ -17111,6 +17122,7 @@ GuiBindableDataGrid /// Value property name changed event. compositions::GuiNotifyEvent ValuePropertyChanged; + compositions::GuiNotifyEvent TextPropertyChanged; void SaveCellData(vint row, IDataEditor* dataEditor)override; WString GetCellText(vint row)override; @@ -17123,13 +17135,20 @@ GuiBindableDataGrid /// The row index of the item. /// The value property name. void SetCellValue(vint row, description::Value value); + + /// Get the text property name to get the cell text from an item. + /// The text property name. + ItemProperty GetTextProperty(); + /// Set the text property name to get the cell text from an item. + /// The text property name. + void SetTextProperty(const ItemProperty& value); /// Get the value property name to get the cell value from an item. /// The value property name. - const WString& GetValueProperty(); - /// Set the value property name to get the cell value to an item. + WritableItemProperty GetValueProperty(); + /// Set the value property name to get the cell value from an item. /// The value property name. - void SetValueProperty(const WString& value); + void SetValueProperty(const WritableItemProperty& value); /// Get the view model context which will be used as a view model to create visualizers and editors. /// The value model context. diff --git a/Import/GacUICompiler.cpp b/Import/GacUICompiler.cpp index 51946cbc..6d235595 100644 --- a/Import/GacUICompiler.cpp +++ b/Import/GacUICompiler.cpp @@ -210,29 +210,29 @@ IGuiInstanceLoader return false; } - Ptr IGuiInstanceLoader::CreateRootInstance(const TypeInfo& typeInfo, ArgumentMap& arguments, collections::List& errors) + Ptr IGuiInstanceLoader::CreateRootInstance(types::ResolvingResult& resolvingResult, const TypeInfo& typeInfo, ArgumentMap& arguments, collections::List& errors) { - CHECK_FAIL(L"IGuiInstanceLoader::CreateControlTemplateArgument(const TypeInfo&, Ptr, collections::List&)#This function is not implemented."); + CHECK_FAIL(L"IGuiInstanceLoader::CreateControlTemplateArgument(types::ResolvingResult&, const TypeInfo&, Ptr, collections::List&)#This function is not implemented."); } - Ptr IGuiInstanceLoader::InitializeRootInstance(const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List& errors) + Ptr IGuiInstanceLoader::InitializeRootInstance(types::ResolvingResult& resolvingResult, const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List& errors) { return nullptr; } - Ptr IGuiInstanceLoader::CreateInstance(const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List& errors) + Ptr IGuiInstanceLoader::CreateInstance(types::ResolvingResult& resolvingResult, const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List& errors) { - CHECK_FAIL(L"IGuiInstanceLoader::CreateInstance(const TypeInfo&, GlobalStringKey, ArgumentMap&, collections::List&)#This function is not implemented."); + CHECK_FAIL(L"IGuiInstanceLoader::CreateInstance(types::ResolvingResult&, const TypeInfo&, GlobalStringKey, ArgumentMap&, collections::List&)#This function is not implemented."); } - Ptr IGuiInstanceLoader::AssignParameters(const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List& errors) + Ptr IGuiInstanceLoader::AssignParameters(types::ResolvingResult& resolvingResult, const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List& errors) { - CHECK_FAIL(L"IGuiInstanceLoader::AssignParameters(const TypeInfo&, GlobalStringKey, ArgumentMap&, collections::List&)#This function is not implemented."); + CHECK_FAIL(L"IGuiInstanceLoader::AssignParameters(types::ResolvingResult&, const TypeInfo&, GlobalStringKey, ArgumentMap&, collections::List&)#This function is not implemented."); } - Ptr IGuiInstanceLoader::GetParameter(const PropertyInfo& propertyInfo, GlobalStringKey variableName, collections::List& errors) + Ptr IGuiInstanceLoader::GetParameter(types::ResolvingResult& resolvingResult, const PropertyInfo& propertyInfo, GlobalStringKey variableName, collections::List& errors) { - CHECK_FAIL(L"IGuiInstanceLoader::GetParameter(const PropertyInfo&, GlobalStringKey, collections::List&)#This function is not implemented."); + CHECK_FAIL(L"IGuiInstanceLoader::GetParameter(types::ResolvingResult&, const PropertyInfo&, GlobalStringKey, collections::List&)#This function is not implemented."); } /*********************************************************************** @@ -549,6 +549,59 @@ GuiDefaultInstanceLoader } } } + + bool IsItemPropertyName(IPropertyInfo* prop) + { + auto name = prop->GetName(); + return name.Length() >= 8 && name.Right(8) == L"Property"; + } + + bool IsItemPropertyType(ITypeInfo* propType) + { + if (propType->GetDecorator() == ITypeInfo::SharedPtr) + { + auto genericType = propType->GetElementType(); + if (genericType->GetDecorator() == ITypeInfo::Generic && genericType->GetGenericArgumentCount() == 2) + { + if (genericType->GetElementType()->GetTypeDescriptor() == description::GetTypeDescriptor()) + { + if (genericType->GetGenericArgument(1)->GetTypeDescriptor() == description::GetTypeDescriptor()) + { + return true; + } + } + } + } + return false; + } + + bool IsWritableItemPropertyType(ITypeInfo* propType) + { + if (propType->GetDecorator() == ITypeInfo::SharedPtr) + { + auto genericType = propType->GetElementType(); + if (genericType->GetDecorator() == ITypeInfo::Generic && genericType->GetGenericArgumentCount() == 4) + { + if (genericType->GetElementType()->GetTypeDescriptor() == description::GetTypeDescriptor()) + { + if (genericType->GetGenericArgument(1)->GetTypeDescriptor() == description::GetTypeDescriptor() + && genericType->GetGenericArgument(3)->GetTypeDescriptor() == description::GetTypeDescriptor()) + { + if (IsSameType(genericType->GetGenericArgument(0), genericType->GetGenericArgument(2))) + { + return true; + } + } + } + } + } + return false; + } + + bool IsItemProperty(IPropertyInfo* prop) + { + return prop && IsItemPropertyName(prop) && (IsItemPropertyType(prop->GetReturn()) || IsWritableItemPropertyType(prop->GetReturn())); + } PropertyType GetPropertyTypeCached(const PropertyInfo& propertyInfo) { @@ -577,15 +630,22 @@ GuiDefaultInstanceLoader } } - if (FillPropertyInfo(result, propType)) + IPropertyInfo* prop = propertyInfo.typeInfo.typeDescriptor->GetPropertyByName(propertyInfo.propertyName.ToString(), true); + if (IsItemProperty(prop)) { - IPropertyInfo* prop = propertyInfo.typeInfo.typeDescriptor->GetPropertyByName(propertyInfo.propertyName.ToString(), true); - PropertyType value(result, prop); - propertyTypes.Add(key, value); - return value; + result->acceptableTypes.Add(description::GetTypeDescriptor()); } + else if (!FillPropertyInfo(result, propType)) + { + goto UNSUPPORTED; + } + + PropertyType value(result, prop); + propertyTypes.Add(key, value); + return value; } + UNSUPPORTED: PropertyType value(GuiInstancePropertyInfo::Unsupported(), 0); propertyTypes.Add(key, value); return value; @@ -610,7 +670,7 @@ GuiDefaultInstanceLoader GetInstanceConstructor(typeInfo.typeDescriptor) != nullptr; } - Ptr CreateInstance(const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List& errors)override + Ptr CreateInstance(types::ResolvingResult& resolvingResult, const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List& errors)override { CTOR_PARAM_PREFIX auto defaultCtor = GetDefaultConstructor(typeInfo.typeDescriptor); @@ -656,7 +716,7 @@ GuiDefaultInstanceLoader return stat; } - Ptr AssignParameters(const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List& errors)override + Ptr AssignParameters(types::ResolvingResult& resolvingResult, const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List& errors)override { auto block = MakePtr(); @@ -738,6 +798,234 @@ GuiDefaultInstanceLoader break; case GuiInstancePropertyInfo::SupportAssign: { + auto propertyValueExpression = arguments.GetByIndex(index)[0].expression; + + if (IsItemPropertyName(propertyType.f1)) + { + bool isItemProperty = IsItemPropertyType(propertyType.f1->GetReturn()); + bool isWritableItemProperty = IsWritableItemPropertyType(propertyType.f1->GetReturn()); + + if (isItemProperty || isWritableItemProperty) + { + auto propertyDescription = propertyValueExpression.Cast()->value.value; + Ptr propertyExpression; + { + auto typeParser = GetParserManager()->GetParser(L"WORKFLOW-EXPRESSION"); + List parserErrors; + propertyExpression = typeParser->TypedParse(propertyDescription, parserErrors); + if (!propertyExpression) + { + errors.Add(L"Precompile: Failed to parse the value of property \"" + propertyType.f1->GetName() + L"\": " + propertyDescription); + break; + } + }; + + vint indexItemType = resolvingResult.envVars.Keys().IndexOf(GlobalStringKey::Get(L"ItemType")); + if (indexItemType == -1) + { + auto error + = L"Precompile: env.ItemType must be specified before assigning \"" + + propertyDescription + + L"\" to property \"" + + propertyType.f1->GetName() + + L"\" of type \"" + + propertyType.f1->GetOwnerTypeDescriptor()->GetTypeName() + + L"\"."; + errors.Add(error); + break; + } + + Ptr itemType; + { + auto typeParser = GetParserManager()->GetParser(L"WORKFLOW-TYPE"); + const auto& values = resolvingResult.envVars.GetByIndex(indexItemType); + auto code = values[values.Count() - 1]; + + List parserErrors; + itemType = typeParser->TypedParse(code, parserErrors); + if (!itemType) + { + errors.Add(L"Precompile: Failed to parse the value of env.ItemType: " + code); + break; + } + }; + + vint indexItemName = resolvingResult.envVars.Keys().IndexOf(GlobalStringKey::Get(L"ItemName")); + WString itemName(L"item", false); + if (indexItemName != -1) + { + const auto& values = resolvingResult.envVars.GetByIndex(indexItemName); + itemName = values[values.Count() - 1]; + } + + if (auto refExpr = propertyExpression.Cast()) + { + if (refExpr->name.value != itemName) + { + auto refItem = MakePtr(); + refItem->name.value = itemName; + + auto member = MakePtr(); + member->parent = refItem; + member->name.value = refExpr->name.value; + + propertyExpression = member; + } + } + + auto funcDecl = MakePtr(); + funcDecl->anonymity = WfFunctionAnonymity::Anonymous; + { + auto genericType = propertyType.f1->GetReturn()->GetElementType(); + funcDecl->returnType = GetTypeFromTypeInfo(genericType->GetGenericArgument(0)); + { + auto argument = MakePtr(); + argument->name.value = L""; + argument->type = GetTypeFromTypeInfo(genericType->GetGenericArgument(1)); + funcDecl->arguments.Add(argument); + } + + if (isWritableItemProperty) + { + { + auto argument = MakePtr(); + argument->name.value = L""; + argument->type = GetTypeFromTypeInfo(genericType->GetGenericArgument(2)); + funcDecl->arguments.Add(argument); + } + { + auto argument = MakePtr(); + argument->name.value = L""; + argument->type = GetTypeFromTypeInfo(genericType->GetGenericArgument(3)); + funcDecl->arguments.Add(argument); + } + } + } + + auto funcBlock = MakePtr(); + funcDecl->statement = funcBlock; + + { + auto refItem = MakePtr(); + refItem->name.value = L""; + + auto refCast = MakePtr(); + refCast->strategy = WfTypeCastingStrategy::Strong; + refCast->type = itemType; + refCast->expression = refItem; + + auto varDecl = MakePtr(); + varDecl->name.value = itemName; + varDecl->expression = refCast; + + auto varStat = MakePtr(); + varStat->variable = varDecl; + funcBlock->statements.Add(varStat); + } + + Ptr returnStat; + { + returnStat = MakePtr(); + returnStat->expression = propertyExpression; + } + + if (isItemProperty) + { + funcBlock->statements.Add(returnStat); + } + else if (isWritableItemProperty) + { + auto ifStat = MakePtr(); + funcBlock->statements.Add(ifStat); + { + auto refUpdate = MakePtr(); + refUpdate->name.value = L""; + + ifStat->expression = refUpdate; + } + { + auto block = MakePtr(); + ifStat->trueBranch = block; + + { + auto refValue = MakePtr(); + refValue->name.value = L""; + + auto assignExpr = MakePtr(); + assignExpr->op = WfBinaryOperator::Assign; + assignExpr->first = CopyExpression(propertyExpression); + assignExpr->second = refValue; + + auto stat = MakePtr(); + stat->expression = assignExpr; + block->statements.Add(stat); + } + { + auto returnStat = MakePtr(); + block->statements.Add(returnStat); + + auto returnType = propertyType.f1->GetReturn()->GetElementType()->GetGenericArgument(0); + auto returnTd = returnType->GetTypeDescriptor(); + + if ((returnTd->GetTypeDescriptorFlags() & TypeDescriptorFlags::ReferenceType) != TypeDescriptorFlags::Undefined) + { + auto expr = MakePtr(); + expr->value = WfLiteralValue::Null; + returnStat->expression = expr; + } + else if ((returnTd->GetTypeDescriptorFlags() & TypeDescriptorFlags::EnumType) != TypeDescriptorFlags::Undefined) + { + auto zero = MakePtr(); + zero->value.value = L"0"; + + auto expr = MakePtr(); + expr->type = GetTypeFromTypeInfo(returnType); + expr->expression = zero; + returnStat->expression = expr; + } + else if (returnTd->GetTypeDescriptorFlags() == TypeDescriptorFlags::Struct) + { + auto expr = MakePtr(); + returnStat->expression = expr; + } + else if (returnTd == description::GetTypeDescriptor()) + { + returnStat->expression = MakePtr(); + } + else if (returnTd == description::GetTypeDescriptor()) + { + auto expr = MakePtr(); + expr->value = WfLiteralValue::False; + returnStat->expression = expr; + } + else if (returnTd == description::GetTypeDescriptor() || returnTd == description::GetTypeDescriptor()) + { + auto expr = MakePtr(); + expr->value.value = L"0"; + returnStat->expression = expr; + } + else + { + auto expr = MakePtr(); + expr->value.value = L"0"; + returnStat->expression = expr; + } + } + } + { + auto block = MakePtr(); + ifStat->falseBranch = block; + + block->statements.Add(returnStat); + } + } + + auto funcExpr = MakePtr(); + funcExpr->function = funcDecl; + propertyValueExpression = funcExpr; + } + } + auto refValue = MakePtr(); refValue->name.value = variableName.ToString(); @@ -748,7 +1036,7 @@ GuiDefaultInstanceLoader auto assign = MakePtr(); assign->op = WfBinaryOperator::Assign; assign->first = refProp; - assign->second = arguments.GetByIndex(index)[0].expression; + assign->second = propertyValueExpression; auto stat = MakePtr(); stat->expression = assign; @@ -768,7 +1056,7 @@ GuiDefaultInstanceLoader return nullptr; } - Ptr GetParameter(const PropertyInfo& propertyInfo, GlobalStringKey variableName, collections::List& errors)override + Ptr GetParameter(types::ResolvingResult& resolvingResult, const PropertyInfo& propertyInfo, GlobalStringKey variableName, collections::List& errors)override { auto refValue = MakePtr(); refValue->name.value = variableName.ToString(); @@ -1101,12 +1389,12 @@ GuiResourceInstanceBinder (uri) return false; } - Ptr GenerateConstructorArgument(IGuiInstanceLoader* loader, const IGuiInstanceLoader::PropertyInfo& prop, Ptr propInfo, const WString& code, collections::List& errors)override + Ptr GenerateConstructorArgument(types::ResolvingResult& resolvingResult, IGuiInstanceLoader* loader, const IGuiInstanceLoader::PropertyInfo& prop, Ptr propInfo, const WString& code, collections::List& errors)override { CHECK_FAIL(L"GuiResourceInstanceBinder::GenerateConstructorArgument()#This binder does not support binding to constructor arguments. Please call ApplicableToConstructorArgument() to determine before calling this function."); } - Ptr GenerateInstallStatement(GlobalStringKey variableName, description::IPropertyInfo* propertyInfo, IGuiInstanceLoader* loader, const IGuiInstanceLoader::PropertyInfo& prop, Ptr propInfo, const WString& code, collections::List& errors)override + Ptr GenerateInstallStatement(types::ResolvingResult& resolvingResult, GlobalStringKey variableName, description::IPropertyInfo* propertyInfo, IGuiInstanceLoader* loader, const IGuiInstanceLoader::PropertyInfo& prop, Ptr propInfo, const WString& code, collections::List& errors)override { WString protocol, path; if (!IsResourceUrl(code, protocol, path)) @@ -1116,7 +1404,7 @@ GuiResourceInstanceBinder (uri) } else { - return Workflow_InstallUriProperty(variableName, loader, prop, propInfo, protocol, path, errors); + return Workflow_InstallUriProperty(resolvingResult, variableName, loader, prop, propInfo, protocol, path, errors); } } }; @@ -1143,16 +1431,16 @@ GuiReferenceInstanceBinder (ref) return false; } - Ptr GenerateConstructorArgument(IGuiInstanceLoader* loader, const IGuiInstanceLoader::PropertyInfo& prop, Ptr propInfo, const WString& code, collections::List& errors)override + Ptr GenerateConstructorArgument(types::ResolvingResult& resolvingResult, IGuiInstanceLoader* loader, const IGuiInstanceLoader::PropertyInfo& prop, Ptr propInfo, const WString& code, collections::List& errors)override { CHECK_FAIL(L"GuiReferenceInstanceBinder::GenerateConstructorArgument()#This binder does not support binding to constructor arguments. Please call ApplicableToConstructorArgument() to determine before calling this function."); } - Ptr GenerateInstallStatement(GlobalStringKey variableName, description::IPropertyInfo* propertyInfo, IGuiInstanceLoader* loader, const IGuiInstanceLoader::PropertyInfo& prop, Ptr propInfo, const WString& code, collections::List& errors)override + Ptr GenerateInstallStatement(types::ResolvingResult& resolvingResult, GlobalStringKey variableName, description::IPropertyInfo* propertyInfo, IGuiInstanceLoader* loader, const IGuiInstanceLoader::PropertyInfo& prop, Ptr propInfo, const WString& code, collections::List& errors)override { auto expression = MakePtr(); expression->name.value = code; - return Workflow_InstallEvalProperty(variableName, loader, prop, propInfo, expression, errors); + return Workflow_InstallEvalProperty(resolvingResult, variableName, loader, prop, propInfo, expression, errors); } }; @@ -1178,7 +1466,7 @@ GuiEvalInstanceBinder (eval) return false; } - Ptr GenerateConstructorArgument(IGuiInstanceLoader* loader, const IGuiInstanceLoader::PropertyInfo& prop, Ptr propInfo, const WString& code, collections::List& errors)override + Ptr GenerateConstructorArgument(types::ResolvingResult& resolvingResult, IGuiInstanceLoader* loader, const IGuiInstanceLoader::PropertyInfo& prop, Ptr propInfo, const WString& code, collections::List& errors)override { if (auto expression = Workflow_ParseExpression(code, errors)) { @@ -1187,11 +1475,11 @@ GuiEvalInstanceBinder (eval) return nullptr; } - Ptr GenerateInstallStatement(GlobalStringKey variableName, description::IPropertyInfo* propertyInfo, IGuiInstanceLoader* loader, const IGuiInstanceLoader::PropertyInfo& prop, Ptr propInfo, const WString& code, collections::List& errors)override + Ptr GenerateInstallStatement(types::ResolvingResult& resolvingResult, GlobalStringKey variableName, description::IPropertyInfo* propertyInfo, IGuiInstanceLoader* loader, const IGuiInstanceLoader::PropertyInfo& prop, Ptr propInfo, const WString& code, collections::List& errors)override { if (auto expression = Workflow_ParseExpression(code, errors)) { - return Workflow_InstallEvalProperty(variableName, loader, prop, propInfo, expression, errors); + return Workflow_InstallEvalProperty(resolvingResult, variableName, loader, prop, propInfo, expression, errors); } return nullptr; } @@ -1219,12 +1507,12 @@ GuiBindInstanceBinder (bind) return true; } - Ptr GenerateConstructorArgument(IGuiInstanceLoader* loader, const IGuiInstanceLoader::PropertyInfo& prop, Ptr propInfo, const WString& code, collections::List& errors)override + Ptr GenerateConstructorArgument(types::ResolvingResult& resolvingResult, IGuiInstanceLoader* loader, const IGuiInstanceLoader::PropertyInfo& prop, Ptr propInfo, const WString& code, collections::List& errors)override { CHECK_FAIL(L"GuiBindInstanceBinder::GenerateConstructorArgument()#This binder does not support binding to constructor arguments. Please call ApplicableToConstructorArgument() to determine before calling this function."); } - Ptr GenerateInstallStatement(GlobalStringKey variableName, description::IPropertyInfo* propertyInfo, IGuiInstanceLoader* loader, const IGuiInstanceLoader::PropertyInfo& prop, Ptr propInfo, const WString& code, collections::List& errors)override + Ptr GenerateInstallStatement(types::ResolvingResult& resolvingResult, GlobalStringKey variableName, description::IPropertyInfo* propertyInfo, IGuiInstanceLoader* loader, const IGuiInstanceLoader::PropertyInfo& prop, Ptr propInfo, const WString& code, collections::List& errors)override { WString typeExpr; { @@ -1243,7 +1531,7 @@ GuiBindInstanceBinder (bind) } if (auto expression = Workflow_ParseExpression(L"bind((" + code + L") of (" + typeExpr + L"))", errors)) { - return Workflow_InstallBindProperty(variableName, propertyInfo, expression); + return Workflow_InstallBindProperty(resolvingResult, variableName, propertyInfo, expression); } return nullptr; } @@ -1271,16 +1559,16 @@ GuiFormatInstanceBinder (format) return true; } - Ptr GenerateConstructorArgument(IGuiInstanceLoader* loader, const IGuiInstanceLoader::PropertyInfo& prop, Ptr propInfo, const WString& code, collections::List& errors)override + Ptr GenerateConstructorArgument(types::ResolvingResult& resolvingResult, IGuiInstanceLoader* loader, const IGuiInstanceLoader::PropertyInfo& prop, Ptr propInfo, const WString& code, collections::List& errors)override { CHECK_FAIL(L"GuiFormatInstanceBinder::GenerateConstructorArgument()#This binder does not support binding to constructor arguments. Please call ApplicableToConstructorArgument() to determine before calling this function."); } - Ptr GenerateInstallStatement(GlobalStringKey variableName, description::IPropertyInfo* propertyInfo, IGuiInstanceLoader* loader, const IGuiInstanceLoader::PropertyInfo& prop, Ptr propInfo, const WString& code, collections::List& errors)override + Ptr GenerateInstallStatement(types::ResolvingResult& resolvingResult, GlobalStringKey variableName, description::IPropertyInfo* propertyInfo, IGuiInstanceLoader* loader, const IGuiInstanceLoader::PropertyInfo& prop, Ptr propInfo, const WString& code, collections::List& errors)override { if (auto expression = Workflow_ParseExpression(L"bind($\"" + code + L"\")", errors)) { - return Workflow_InstallBindProperty(variableName, propertyInfo, expression); + return Workflow_InstallBindProperty(resolvingResult, variableName, propertyInfo, expression); } return nullptr; } @@ -1298,11 +1586,11 @@ GuiEvalInstanceEventBinder (eval) return GlobalStringKey::_Eval; } - Ptr GenerateInstallStatement(GlobalStringKey variableName, description::IEventInfo* eventInfo, const WString& code, collections::List& errors)override + Ptr GenerateInstallStatement(types::ResolvingResult& resolvingResult, GlobalStringKey variableName, description::IEventInfo* eventInfo, const WString& code, collections::List& errors)override { if (auto statement = Workflow_ParseStatement(code, errors)) { - return Workflow_InstallEvalEvent(variableName, eventInfo, statement); + return Workflow_InstallEvalEvent(resolvingResult, variableName, eventInfo, statement); } return nullptr; } @@ -2210,6 +2498,10 @@ GuiInstanceContext values.Add(ctor); } } + else if (!name->IsPropertyElementName() && !name->IsEventElementName()) + { + errors.Add(L"Unknown element name: \"" + element->name.value + L"\"."); + } } } } @@ -2238,7 +2530,7 @@ GuiInstanceContext // collect a value as a new attribute setter if (setters.Keys().Contains(GlobalStringKey::Get(name->name))) { - errors.Add(L"Duplicated attribute name \"" + name->name + L"\"."); + errors.Add(L"Duplicated property \"" + name->name + L"\"."); } else { @@ -2281,10 +2573,10 @@ GuiInstanceContext { if(name->IsEventElementName()) { - // collect a value as a new attribute setter + // collect a value as an event setter if (eventHandlers.Keys().Contains(GlobalStringKey::Get(name->name))) { - errors.Add(L"Duplicated event name \"" + name->name + L"\"."); + errors.Add(L"Duplicated event \"" + name->name + L"\"."); } else { @@ -2330,12 +2622,24 @@ GuiInstanceContext setter->instanceName = GlobalStringKey::Get(att->value.value); } } + else if (name->IsEnvironmentAttributeName()) + { + // collect environment variables + if (setter->environmentVariables.Keys().Contains(GlobalStringKey::Get(name->name))) + { + errors.Add(L"Duplicated environment variable \"" + name->name + L"\"."); + } + else + { + setter->environmentVariables.Add(GlobalStringKey::Get(name->name), att->value.value); + } + } else if(name->IsPropertyAttributeName()) { // collect attributes setters if (setter->setters.Keys().Contains(GlobalStringKey::Get(name->name))) { - errors.Add(L"Duplicated attribute name \"" + name->name + L"\"."); + errors.Add(L"Duplicated property \"" + name->name + L"\"."); } else { @@ -2351,7 +2655,11 @@ GuiInstanceContext else if (name->IsEventAttributeName()) { // collect event setters - if (!setter->eventHandlers.Keys().Contains(GlobalStringKey::Get(name->name))) + if (setter->eventHandlers.Keys().Contains(GlobalStringKey::Get(name->name))) + { + errors.Add(L"Duplicated event \"" + name->name + L"\"."); + } + else { auto value = MakePtr(); value->binding = GlobalStringKey::Get(name->binding); @@ -2359,6 +2667,10 @@ GuiInstanceContext setter->eventHandlers.Add(GlobalStringKey::Get(name->name), value); } } + else + { + errors.Add(L"Unknown attribute name: \"" + att->name.value + L"\"."); + } } } @@ -2447,7 +2759,7 @@ GuiInstanceContext L"presentation::controls::tree::*;" L"presentation::elements::*;" L"presentation::elements::Gui*;" - L"presentation::elements::text*;" + L"presentation::elements::text::*;" L"presentation::compositions::*;" L"presentation::templates::*"; namespaceAttributes.Add(att); @@ -2904,7 +3216,7 @@ GuiAxisInstanceLoader return typeName == typeInfo.typeName; } - Ptr CreateInstance(const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List& errors)override + Ptr CreateInstance(types::ResolvingResult& resolvingResult, const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List& errors)override { if (typeName == typeInfo.typeName) { @@ -2970,7 +3282,7 @@ GuiCompositionInstanceLoader return IGuiInstanceLoader::GetPropertyType(propertyInfo); } - Ptr AssignParameters(const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List& errors)override + Ptr AssignParameters(types::ResolvingResult& resolvingResult, const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List& errors)override { auto block = MakePtr(); @@ -3098,7 +3410,7 @@ GuiTableCompositionInstanceLoader return IGuiInstanceLoader::GetPropertyType(propertyInfo); } - Ptr AssignParameters(const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List& errors)override + Ptr AssignParameters(types::ResolvingResult& resolvingResult, const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List& errors)override { auto block = MakePtr(); @@ -3227,7 +3539,7 @@ GuiCellCompositionInstanceLoader return IGuiInstanceLoader::GetPropertyType(propertyInfo); } - Ptr AssignParameters(const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List& errors)override + Ptr AssignParameters(types::ResolvingResult& resolvingResult, const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List& errors)override { auto block = MakePtr(); @@ -3433,7 +3745,7 @@ GuiDocumentItemInstanceLoader return typeName == typeInfo.typeName; } - Ptr CreateInstance(const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List& errors)override + Ptr CreateInstance(types::ResolvingResult& resolvingResult, const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List& errors)override { if (typeInfo.typeName == GetTypeName()) { @@ -3461,7 +3773,7 @@ GuiDocumentItemInstanceLoader return nullptr; } - Ptr AssignParameters(const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List& errors)override + Ptr AssignParameters(types::ResolvingResult& resolvingResult, const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List& errors)override { auto block = MakePtr(); @@ -3546,7 +3858,7 @@ GuiDocumentViewerInstanceLoader return BASE_TYPE::GetPropertyType(propertyInfo); } - Ptr AssignParameters(const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List& errors)override + Ptr AssignParameters(types::ResolvingResult& resolvingResult, const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List& errors)override { auto block = MakePtr(); @@ -3578,7 +3890,7 @@ GuiDocumentViewerInstanceLoader { return block; } - return BASE_TYPE::AssignParameters(typeInfo, variableName, arguments, errors); + return BASE_TYPE::AssignParameters(resolvingResult, typeInfo, variableName, arguments, errors); } }; #undef BASE_TYPE @@ -3611,7 +3923,7 @@ GuiDocumentLabelInstanceLoader return BASE_TYPE::GetPropertyType(propertyInfo); } - Ptr AssignParameters(const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List& errors)override + Ptr AssignParameters(types::ResolvingResult& resolvingResult, const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List& errors)override { auto block = MakePtr(); @@ -3643,7 +3955,7 @@ GuiDocumentLabelInstanceLoader { return block; } - return BASE_TYPE::AssignParameters(typeInfo, variableName, arguments, errors); + return BASE_TYPE::AssignParameters(resolvingResult, typeInfo, variableName, arguments, errors); } }; #undef BASE_TYPE @@ -3746,7 +4058,7 @@ GuiSelectableListControlInstanceLoader return IGuiInstanceLoader::GetPropertyType(propertyInfo); } - Ptr AssignParameters(const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List& errors)override + Ptr AssignParameters(types::ResolvingResult& resolvingResult, const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List& errors)override { auto block = MakePtr(); @@ -3805,7 +4117,7 @@ GuiVirtualTreeViewInstanceLoader return IGuiInstanceLoader::GetPropertyType(propertyInfo); } - Ptr AssignParameters(const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List& errors)override + Ptr AssignParameters(types::ResolvingResult& resolvingResult, const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List& errors)override { auto block = MakePtr(); @@ -3881,7 +4193,7 @@ GuiComboBoxInstanceLoader return BASE_TYPE::GetPropertyType(propertyInfo); } - Ptr AssignParameters(const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List& errors)override + Ptr AssignParameters(types::ResolvingResult& resolvingResult, const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List& errors)override { auto block = MakePtr(); @@ -4175,7 +4487,7 @@ GuiTreeViewInstanceLoader return BASE_TYPE::GetPropertyType(propertyInfo); } - Ptr AssignParameters(const typename BASE_TYPE::TypeInfo& typeInfo, GlobalStringKey variableName, typename BASE_TYPE::ArgumentMap& arguments, collections::List& errors)override + Ptr AssignParameters(types::ResolvingResult& resolvingResult, const typename BASE_TYPE::TypeInfo& typeInfo, GlobalStringKey variableName, typename BASE_TYPE::ArgumentMap& arguments, collections::List& errors)override { auto block = MakePtr(); @@ -4212,7 +4524,7 @@ GuiTreeViewInstanceLoader { return block; } - return BASE_TYPE::AssignParameters(typeInfo, variableName, arguments, errors); + return BASE_TYPE::AssignParameters(resolvingResult, typeInfo, variableName, arguments, errors); } }; #undef BASE_TYPE @@ -4298,7 +4610,7 @@ GuiBindableDataColumnInstanceLoader return IGuiInstanceLoader::GetPropertyType(propertyInfo); } - Ptr AssignParameters(const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List& errors)override + Ptr AssignParameters(types::ResolvingResult& resolvingResult, const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List& errors)override { auto block = MakePtr(); @@ -4351,7 +4663,7 @@ GuiBindableDataColumnInstanceLoader auto refVisualizerFactory = MakePtr(); refVisualizerFactory->parent = refContainer; - refVisualizerFactory->name.value = L"Visualizer"; + refVisualizerFactory->name.value = L"VisualizerFactory"; auto refLastFactory = MakePtr(); refLastFactory->parent = refContainer; @@ -4483,7 +4795,7 @@ GuiBindableDataGridInstanceLoader return BASE_TYPE::GetPropertyType(propertyInfo); } - Ptr AssignParameters(const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List& errors)override + Ptr AssignParameters(types::ResolvingResult& resolvingResult, const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List& errors)override { auto block = MakePtr(); @@ -4512,7 +4824,7 @@ GuiBindableDataGridInstanceLoader { return block; } - return BASE_TYPE::AssignParameters(typeInfo, variableName, arguments, errors); + return BASE_TYPE::AssignParameters(resolvingResult, typeInfo, variableName, arguments, errors); } }; #undef BASE_TYPE @@ -4575,7 +4887,7 @@ GuiTreeNodeInstanceLoader return typeInfo.typeName == GetTypeName(); } - Ptr CreateInstance(const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List& errors)override + Ptr CreateInstance(types::ResolvingResult& resolvingResult, const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List& errors)override { if (typeInfo.typeName == GetTypeName()) { @@ -4601,7 +4913,7 @@ GuiTreeNodeInstanceLoader return nullptr; } - Ptr AssignParameters(const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List& errors)override + Ptr AssignParameters(types::ResolvingResult& resolvingResult, const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List& errors)override { auto block = MakePtr(); @@ -4785,7 +5097,7 @@ GuiControlInstanceLoader return IGuiInstanceLoader::GetPropertyType(propertyInfo); } - Ptr AssignParameters(const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List& errors)override + Ptr AssignParameters(types::ResolvingResult& resolvingResult, const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List& errors)override { auto block = MakePtr(); @@ -5097,7 +5409,7 @@ GuiTabInstanceLoader return BASE_TYPE::GetPropertyType(propertyInfo); } - Ptr AssignParameters(const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List& errors)override + Ptr AssignParameters(types::ResolvingResult& resolvingResult, const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List& errors)override { auto block = MakePtr(); @@ -5143,7 +5455,7 @@ GuiTabInstanceLoader { return block; } - return BASE_TYPE::AssignParameters(typeInfo, variableName, arguments, errors); + return BASE_TYPE::AssignParameters(resolvingResult, typeInfo, variableName, arguments, errors); } }; #undef BASE_TYPE @@ -5185,7 +5497,7 @@ GuiTabPageInstanceLoader return IGuiInstanceLoader::GetPropertyType(propertyInfo); } - Ptr AssignParameters(const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List& errors)override + Ptr AssignParameters(types::ResolvingResult& resolvingResult, const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List& errors)override { auto block = MakePtr(); @@ -5358,7 +5670,7 @@ GuiTemplateInstanceLoader return false; } - Ptr CreateInstance(const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List& errors)override + Ptr CreateInstance(types::ResolvingResult& resolvingResult, const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List& errors)override { if (!CanCreate(typeInfo)) { @@ -5538,7 +5850,7 @@ GuiToolstripMenuInstanceLoader return BASE_TYPE::GetPropertyType(propertyInfo); } - Ptr AssignParameters(const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List& errors)override + Ptr AssignParameters(types::ResolvingResult& resolvingResult, const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List& errors)override { if (auto statement = AddControlToToolstrip(variableName, arguments, errors)) { @@ -5546,7 +5858,7 @@ GuiToolstripMenuInstanceLoader } else { - return BASE_TYPE::AssignParameters(typeInfo, variableName, arguments, errors); + return BASE_TYPE::AssignParameters(resolvingResult, typeInfo, variableName, arguments, errors); } } }; @@ -5580,7 +5892,7 @@ GuiToolstripMenuBarInstanceLoader return BASE_TYPE::GetPropertyType(propertyInfo); } - Ptr AssignParameters(const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List& errors)override + Ptr AssignParameters(types::ResolvingResult& resolvingResult, const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List& errors)override { if (auto statement = AddControlToToolstrip(variableName, arguments, errors)) { @@ -5588,7 +5900,7 @@ GuiToolstripMenuBarInstanceLoader } else { - return BASE_TYPE::AssignParameters(typeInfo, variableName, arguments, errors); + return BASE_TYPE::AssignParameters(resolvingResult, typeInfo, variableName, arguments, errors); } } }; @@ -5622,7 +5934,7 @@ GuiToolstripToolBarInstanceLoader return BASE_TYPE::GetPropertyType(propertyInfo); } - Ptr AssignParameters(const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List& errors)override + Ptr AssignParameters(types::ResolvingResult& resolvingResult, const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List& errors)override { if (auto statement = AddControlToToolstrip(variableName, arguments, errors)) { @@ -5630,7 +5942,7 @@ GuiToolstripToolBarInstanceLoader } else { - return BASE_TYPE::AssignParameters(typeInfo, variableName, arguments, errors); + return BASE_TYPE::AssignParameters(resolvingResult, typeInfo, variableName, arguments, errors); } } }; @@ -5668,7 +5980,7 @@ GuiToolstripButtonInstanceLoader return BASE_TYPE::GetPropertyType(propertyInfo); } - Ptr GetParameter(const PropertyInfo& propertyInfo, GlobalStringKey variableName, collections::List& errors)override + Ptr GetParameter(types::ResolvingResult& resolvingResult, const PropertyInfo& propertyInfo, GlobalStringKey variableName, collections::List& errors)override { if (propertyInfo.propertyName == _SubMenu) { @@ -5684,7 +5996,7 @@ GuiToolstripButtonInstanceLoader return call; } - return BASE_TYPE::GetParameter(propertyInfo, variableName, errors); + return BASE_TYPE::GetParameter(resolvingResult, propertyInfo, variableName, errors); } }; #undef BASE_TYPE @@ -5891,6 +6203,15 @@ ApplyStyle dst->eventHandlers.Add(eventName, srcValue); } } + + FOREACH_INDEXER(GlobalStringKey, varName, srcIndex, src->environmentVariables.Keys()) + { + if (!dst->environmentVariables.Keys().Contains(varName)) + { + auto srcValue = src->environmentVariables.Values()[srcIndex]; + dst->environmentVariables.Add(varName, srcValue); + } + } } void ApplyStyle(Ptr style, Ptr ctor) @@ -6925,7 +7246,7 @@ Workflow_GenerateInstanceClass { if (!beforePrecompile) { - if (auto call = resolvingResult.rootLoader->CreateRootInstance(resolvingResult.rootTypeInfo, resolvingResult.rootCtorArguments, errors)) + if (auto call = resolvingResult.rootLoader->CreateRootInstance(resolvingResult, resolvingResult.rootTypeInfo, resolvingResult.rootCtorArguments, errors)) { ctor->baseConstructorCalls.Add(call); } @@ -7805,6 +8126,8 @@ WorkflowGenerateBindingVisitor if (reprTypeInfo.typeDescriptor && (reprTypeInfo.typeDescriptor->GetTypeDescriptorFlags() & TypeDescriptorFlags::ReferenceType) != TypeDescriptorFlags::Undefined) { + WORKFLOW_ENVIRONMENT_VARIABLE_ADD + FOREACH_INDEXER(Ptr, setter, index, repr->setters.Values()) { auto propertyName = repr->setters.Keys()[index]; @@ -7820,7 +8143,7 @@ WorkflowGenerateBindingVisitor if (instancePropertyInfo || !binder->RequirePropertyExist()) { - if (auto statement = binder->GenerateInstallStatement(repr->instanceName, instancePropertyInfo, propertyResolving.loader, propertyResolving.propertyInfo, propertyResolving.info, expressionCode, errors)) + if (auto statement = binder->GenerateInstallStatement(resolvingResult, repr->instanceName, instancePropertyInfo, propertyResolving.loader, propertyResolving.propertyInfo, propertyResolving.info, expressionCode, errors)) { if (Workflow_ValidateStatement(resolvingResult, errors, expressionCode, statement)) { @@ -7847,50 +8170,52 @@ WorkflowGenerateBindingVisitor } } } - } - FOREACH_INDEXER(Ptr, handler, index, repr->eventHandlers.Values()) - { - if (reprTypeInfo.typeDescriptor) + FOREACH_INDEXER(Ptr, handler, index, repr->eventHandlers.Values()) { - GlobalStringKey propertyName = repr->eventHandlers.Keys()[index]; - auto td = reprTypeInfo.typeDescriptor; - auto eventInfo = td->GetEventByName(propertyName.ToString(), true); - - if (!eventInfo) + if (reprTypeInfo.typeDescriptor) { - errors.Add(L"Precompile: Event \"" + propertyName.ToString() + L"\" cannot be found in type \"" + reprTypeInfo.typeName.ToString() + L"\"."); - } - else - { - Ptr statement; + GlobalStringKey propertyName = repr->eventHandlers.Keys()[index]; + auto td = reprTypeInfo.typeDescriptor; + auto eventInfo = td->GetEventByName(propertyName.ToString(), true); - if (handler->binding == GlobalStringKey::Empty) + if (!eventInfo) { - statement = Workflow_InstallEvent(repr->instanceName, eventInfo, handler->value); + errors.Add(L"Precompile: Event \"" + propertyName.ToString() + L"\" cannot be found in type \"" + reprTypeInfo.typeName.ToString() + L"\"."); } else { - auto binder = GetInstanceLoaderManager()->GetInstanceEventBinder(handler->binding); - if (binder) + Ptr statement; + + if (handler->binding == GlobalStringKey::Empty) { - statement = binder->GenerateInstallStatement(repr->instanceName, eventInfo, handler->value, errors); + statement = Workflow_InstallEvent(resolvingResult, repr->instanceName, eventInfo, handler->value); } else { - errors.Add(L"The appropriate IGuiInstanceEventBinder of binding \"-" + handler->binding.ToString() + L"\" cannot be found."); + auto binder = GetInstanceLoaderManager()->GetInstanceEventBinder(handler->binding); + if (binder) + { + statement = binder->GenerateInstallStatement(resolvingResult, repr->instanceName, eventInfo, handler->value, errors); + } + else + { + errors.Add(L"The appropriate IGuiInstanceEventBinder of binding \"-" + handler->binding.ToString() + L"\" cannot be found."); + } } - } - if (statement) - { - if (Workflow_ValidateStatement(resolvingResult, errors, handler->value, statement)) + if (statement) { - statements->statements.Add(statement); + if (Workflow_ValidateStatement(resolvingResult, errors, handler->value, statement)) + { + statements->statements.Add(statement); + } } } } } + + WORKFLOW_ENVIRONMENT_VARIABLE_REMOVE } } @@ -8002,6 +8327,8 @@ WorkflowGenerateCreatingVisitor if (reprTypeInfo.typeDescriptor && (reprTypeInfo.typeDescriptor->GetTypeDescriptorFlags() & TypeDescriptorFlags::ReferenceType) != TypeDescriptorFlags::Undefined) { + WORKFLOW_ENVIRONMENT_VARIABLE_ADD + Group usedProps; FOREACH(GlobalStringKey, prop, From(repr->setters.Keys()).Reverse()) { @@ -8012,7 +8339,7 @@ WorkflowGenerateCreatingVisitor auto setTarget = dynamic_cast(setter->values[0].Obj()); auto info = resolvingResult.propertyResolvings[setTarget]; vint errorCount = errors.Count(); - if (auto expr = info.loader->GetParameter(propInfo, repr->instanceName, errors)) + if (auto expr = info.loader->GetParameter(resolvingResult, propInfo, repr->instanceName, errors)) { auto refInstance = MakePtr(); refInstance->name.value = setTarget->instanceName.ToString(); @@ -8050,7 +8377,7 @@ WorkflowGenerateCreatingVisitor vint errorCount = errors.Count(); IGuiInstanceLoader::ArgumentMap arguments; arguments.Add(prop, GetArgumentInfo(value.Obj())); - if (auto stat = info.loader->AssignParameters(reprTypeInfo, repr->instanceName, arguments, errors)) + if (auto stat = info.loader->AssignParameters(resolvingResult, reprTypeInfo, repr->instanceName, arguments, errors)) { statements->statements.Add(stat); } @@ -8084,7 +8411,7 @@ WorkflowGenerateCreatingVisitor } vint errorCount = errors.Count(); - if (auto stat = info.loader->AssignParameters(reprTypeInfo, repr->instanceName, arguments, errors)) + if (auto stat = info.loader->AssignParameters(resolvingResult, reprTypeInfo, repr->instanceName, arguments, errors)) { statements->statements.Add(stat); } @@ -8103,6 +8430,8 @@ WorkflowGenerateCreatingVisitor } } } + + WORKFLOW_ENVIRONMENT_VARIABLE_REMOVE } } @@ -8110,6 +8439,9 @@ WorkflowGenerateCreatingVisitor { List ctorProps; loader->GetConstructorParameters(typeInfo, ctorProps); + + WORKFLOW_ENVIRONMENT_VARIABLE_ADD + FOREACH(GlobalStringKey, prop, ctorProps) { auto index = repr->setters.Keys().IndexOf(prop); @@ -8132,7 +8464,7 @@ WorkflowGenerateCreatingVisitor auto propInfo = IGuiInstanceLoader::PropertyInfo(typeInfo, prop); auto resolvedPropInfo = loader->GetPropertyType(propInfo); auto value = setter->values[0].Cast(); - if (auto expression = binder->GenerateConstructorArgument(loader, propInfo, resolvedPropInfo, value->text, errors)) + if (auto expression = binder->GenerateConstructorArgument(resolvingResult, loader, propInfo, resolvedPropInfo, value->text, errors)) { IGuiInstanceLoader::ArgumentInfo argument; argument.expression = expression; @@ -8146,6 +8478,8 @@ WorkflowGenerateCreatingVisitor } } } + + WORKFLOW_ENVIRONMENT_VARIABLE_REMOVE } void Visit(GuiConstructorRepr* repr)override @@ -8198,7 +8532,7 @@ WorkflowGenerateCreatingVisitor if (resolvingResult.rootCtorArguments.Count() > 0) { - if (auto stat = ctorLoader->InitializeRootInstance(ctorTypeInfo, repr->instanceName, resolvingResult.rootCtorArguments, errors)) + if (auto stat = ctorLoader->InitializeRootInstance(resolvingResult, ctorTypeInfo, repr->instanceName, resolvingResult.rootCtorArguments, errors)) { statements->statements.Add(stat); } @@ -8233,7 +8567,7 @@ WorkflowGenerateCreatingVisitor FillCtorArguments(repr, ctorLoader, ctorTypeInfo, arguments); vint errorCount = errors.Count(); - if (auto ctorStats = ctorLoader->CreateInstance(ctorTypeInfo, repr->instanceName, arguments, errors)) + if (auto ctorStats = ctorLoader->CreateInstance(resolvingResult, ctorTypeInfo, repr->instanceName, arguments, errors)) { statements->statements.Add(ctorStats); } @@ -8274,7 +8608,7 @@ namespace vl Workflow_InstallBindProperty ***********************************************************************/ - Ptr Workflow_InstallUriProperty(GlobalStringKey variableName, IGuiInstanceLoader* loader, const IGuiInstanceLoader::PropertyInfo& prop, Ptr propInfo, const WString& protocol, const WString& path, collections::List& errors) + Ptr Workflow_InstallUriProperty(types::ResolvingResult& resolvingResult, GlobalStringKey variableName, IGuiInstanceLoader* loader, const IGuiInstanceLoader::PropertyInfo& prop, Ptr propInfo, const WString& protocol, const WString& path, collections::List& errors) { auto subBlock = MakePtr(); { @@ -8431,7 +8765,7 @@ Workflow_InstallBindProperty arguments.Add(prop.propertyName, argumentInfo); } - if (auto stat = loader->AssignParameters(prop.typeInfo, variableName, arguments, errors)) + if (auto stat = loader->AssignParameters(resolvingResult, prop.typeInfo, variableName, arguments, errors)) { subBlock->statements.Add(stat); } @@ -8443,7 +8777,7 @@ Workflow_InstallBindProperty Workflow_InstallBindProperty ***********************************************************************/ - Ptr Workflow_InstallBindProperty(GlobalStringKey variableName, description::IPropertyInfo* propertyInfo, Ptr bindExpression) + Ptr Workflow_InstallBindProperty(types::ResolvingResult& resolvingResult, GlobalStringKey variableName, description::IPropertyInfo* propertyInfo, Ptr bindExpression) { auto subBlock = MakePtr(); { @@ -8601,7 +8935,7 @@ Workflow_InstallBindProperty Workflow_InstallEvalProperty ***********************************************************************/ - Ptr Workflow_InstallEvalProperty(GlobalStringKey variableName, IGuiInstanceLoader* loader, const IGuiInstanceLoader::PropertyInfo& prop, Ptr propInfo, Ptr evalExpression, collections::List& errors) + Ptr Workflow_InstallEvalProperty(types::ResolvingResult& resolvingResult, GlobalStringKey variableName, IGuiInstanceLoader* loader, const IGuiInstanceLoader::PropertyInfo& prop, Ptr propInfo, Ptr evalExpression, collections::List& errors) { IGuiInstanceLoader::ArgumentMap arguments; { @@ -8611,14 +8945,14 @@ Workflow_InstallEvalProperty arguments.Add(prop.propertyName, argumentInfo); } - return loader->AssignParameters(prop.typeInfo, variableName, arguments, errors); + return loader->AssignParameters(resolvingResult, prop.typeInfo, variableName, arguments, errors); } /*********************************************************************** Workflow_InstallEvent ***********************************************************************/ - Ptr Workflow_InstallEvent(GlobalStringKey variableName, description::IEventInfo* eventInfo, const WString& handlerName) + Ptr Workflow_InstallEvent(types::ResolvingResult& resolvingResult, GlobalStringKey variableName, description::IEventInfo* eventInfo, const WString& handlerName) { vint count = eventInfo->GetHandlerType()->GetElementType()->GetGenericArgumentCount() - 1; @@ -8725,7 +9059,7 @@ Workflow_GenerateEventHandler for (vint i = 0; i < count; i++) { auto arg = MakePtr(); - arg->name.value = L"" + itow(i + 1); + arg->name.value = L"arg" + itow(i + 1); arg->type = GetTypeFromTypeInfo(type.Obj()); func->arguments.Add(arg); } @@ -8738,7 +9072,7 @@ Workflow_GenerateEventHandler Workflow_InstallEvalEvent ***********************************************************************/ - Ptr Workflow_InstallEvalEvent(GlobalStringKey variableName, description::IEventInfo* eventInfo, Ptr evalStatement) + Ptr Workflow_InstallEvalEvent(types::ResolvingResult& resolvingResult, GlobalStringKey variableName, description::IEventInfo* eventInfo, Ptr evalStatement) { auto func = Workflow_GenerateEventHandler(eventInfo); diff --git a/Import/GacUICompiler.h b/Import/GacUICompiler.h index a415a46d..e834128a 100644 --- a/Import/GacUICompiler.h +++ b/Import/GacUICompiler.h @@ -253,9 +253,11 @@ Instance Representation typedef collections::Dictionary> SetteValuerMap; typedef collections::Dictionary> EventHandlerMap; + typedef collections::Dictionary EnvironmentVariableMap; public: SetteValuerMap setters; // empty key means default property EventHandlerMap eventHandlers; + EnvironmentVariableMap environmentVariables; GlobalStringKey instanceName; void Accept(IVisitor* visitor)override{visitor->Visit(this);} @@ -326,12 +328,13 @@ Instance Context WString name; WString binding; - bool IsCtorName(){ return category==L"" && name!=L"" && binding==L""; } - bool IsReferenceAttributeName(){ return namespaceName==L"" && category==L"ref" && name!=L"" && binding==L""; } - bool IsPropertyAttributeName(){ return namespaceName==L"" && category==L"" && name!=L""; } - bool IsPropertyElementName(){ return namespaceName==L"" && category==L"att" && name!=L""; } - bool IsEventAttributeName(){ return namespaceName==L"" && category==L"ev" && name!=L""; } - bool IsEventElementName(){ return namespaceName==L"" && category==L"ev" && name!=L""; } + bool IsCtorName() { return category == L"" && name != L"" && binding == L""; } + bool IsReferenceAttributeName() { return namespaceName == L"" && category == L"ref" && name != L"" && binding == L""; } + bool IsEnvironmentAttributeName() { return namespaceName == L"" && category == L"env" && name != L""; } + bool IsPropertyAttributeName() { return namespaceName == L"" && category == L"" && name != L""; } + bool IsPropertyElementName() { return namespaceName == L"" && category == L"att" && name != L""; } + bool IsEventAttributeName() { return namespaceName == L"" && category == L"ev" && name != L""; } + bool IsEventElementName() { return namespaceName == L"" && category == L"ev" && name != L""; } }; public: Ptr instance; @@ -409,6 +412,11 @@ namespace vl { using namespace reflection; + namespace types + { + struct ResolvingResult; + } + /*********************************************************************** Instance Loader ***********************************************************************/ @@ -509,11 +517,11 @@ Instance Loader virtual Ptr GetPropertyType(const PropertyInfo& propertyInfo); virtual bool CanCreate(const TypeInfo& typeInfo); - virtual Ptr CreateRootInstance(const TypeInfo& typeInfo, ArgumentMap& arguments, collections::List& errors); - virtual Ptr InitializeRootInstance(const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List& errors); - virtual Ptr CreateInstance(const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List& errors); - virtual Ptr AssignParameters(const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List& errors); - virtual Ptr GetParameter(const PropertyInfo& propertyInfo, GlobalStringKey variableName, collections::List& errors); + virtual Ptr CreateRootInstance(types::ResolvingResult& resolvingResult, const TypeInfo& typeInfo, ArgumentMap& arguments, collections::List& errors); + virtual Ptr InitializeRootInstance(types::ResolvingResult& resolvingResult, const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List& errors); + virtual Ptr CreateInstance(types::ResolvingResult& resolvingResult, const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List& errors); + virtual Ptr AssignParameters(types::ResolvingResult& resolvingResult, const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List& errors); + virtual Ptr GetParameter(types::ResolvingResult& resolvingResult, const PropertyInfo& propertyInfo, GlobalStringKey variableName, collections::List& errors); }; /*********************************************************************** @@ -526,15 +534,15 @@ Instance Binder virtual GlobalStringKey GetBindingName() = 0; virtual bool ApplicableToConstructorArgument() = 0; virtual bool RequirePropertyExist() = 0; - virtual Ptr GenerateConstructorArgument(IGuiInstanceLoader* loader, const IGuiInstanceLoader::PropertyInfo& prop, Ptr propInfo, const WString& code, collections::List& errors) = 0; - virtual Ptr GenerateInstallStatement(GlobalStringKey variableName, description::IPropertyInfo* propertyInfo, IGuiInstanceLoader* loader, const IGuiInstanceLoader::PropertyInfo& prop, Ptr propInfo, const WString& code, collections::List& errors) = 0; + virtual Ptr GenerateConstructorArgument(types::ResolvingResult& resolvingResult, IGuiInstanceLoader* loader, const IGuiInstanceLoader::PropertyInfo& prop, Ptr propInfo, const WString& code, collections::List& errors) = 0; + virtual Ptr GenerateInstallStatement(types::ResolvingResult& resolvingResult, GlobalStringKey variableName, description::IPropertyInfo* propertyInfo, IGuiInstanceLoader* loader, const IGuiInstanceLoader::PropertyInfo& prop, Ptr propInfo, const WString& code, collections::List& errors) = 0; }; class IGuiInstanceEventBinder : public IDescriptable, public Description { public: virtual GlobalStringKey GetBindingName() = 0; - virtual Ptr GenerateInstallStatement(GlobalStringKey variableName, description::IEventInfo* eventInfo, const WString& code, collections::List& errors) = 0; + virtual Ptr GenerateInstallStatement(types::ResolvingResult& resolvingResult, GlobalStringKey variableName, description::IEventInfo* eventInfo, const WString& code, collections::List& errors) = 0; }; /*********************************************************************** @@ -741,24 +749,26 @@ namespace vl typedef collections::Dictionary> TypeOverrideMap; typedef collections::Dictionary PropertyResolvingMap; typedef collections::List ErrorList; + typedef collections::Group EnvironmentVariableGroup; struct ResolvingResult : public Object, public Description { - Ptr context; - reflection::description::ITypeDescriptor* rootTypeDescriptor = nullptr; - collections::List sharedModules; + Ptr context; // compiling context + reflection::description::ITypeDescriptor* rootTypeDescriptor = nullptr; // type of the context + collections::List sharedModules; // code of all shared workflow scripts + EnvironmentVariableGroup envVars; // current environment variable value stacks - Ptr moduleForValidate; - Ptr moduleContent; + Ptr moduleForValidate; // module skeleton for validating statements + Ptr moduleContent; // placeholder in moduleForValidate for validating statements - collections::List referenceNames; + collections::List referenceNames; // all reference names IGuiInstanceLoader::ArgumentMap rootCtorArguments; IGuiInstanceLoader* rootLoader = nullptr; IGuiInstanceLoader::TypeInfo rootTypeInfo; - VariableTypeInfoMap typeInfos; - TypeOverrideMap typeOverrides; - PropertyResolvingMap propertyResolvings; + VariableTypeInfoMap typeInfos; // type of references + TypeOverrideMap typeOverrides; // extra type information of references + PropertyResolvingMap propertyResolvings; // information of property values which are calling constructors }; } extern workflow::analyzer::WfLexicalScopeManager* Workflow_GetSharedManager(); @@ -778,12 +788,12 @@ WorkflowCompiler (Parser) WorkflowCompiler (Installation) ***********************************************************************/ - extern Ptr Workflow_InstallUriProperty(GlobalStringKey variableName, IGuiInstanceLoader* loader, const IGuiInstanceLoader::PropertyInfo& prop, Ptr propInfo, const WString& protocol, const WString& path, collections::List& errors); - extern Ptr Workflow_InstallBindProperty(GlobalStringKey variableName, description::IPropertyInfo* propertyInfo, Ptr bindExpression); - extern Ptr Workflow_InstallEvalProperty(GlobalStringKey variableName, IGuiInstanceLoader* loader, const IGuiInstanceLoader::PropertyInfo& prop, Ptr propInfo, Ptr evalExpression, collections::List& errors); - extern Ptr Workflow_InstallEvent(GlobalStringKey variableName, description::IEventInfo* eventInfo, const WString& handlerName); + extern Ptr Workflow_InstallUriProperty(types::ResolvingResult& resolvingResult, GlobalStringKey variableName, IGuiInstanceLoader* loader, const IGuiInstanceLoader::PropertyInfo& prop, Ptr propInfo, const WString& protocol, const WString& path, collections::List& errors); + extern Ptr Workflow_InstallBindProperty(types::ResolvingResult& resolvingResult, GlobalStringKey variableName, description::IPropertyInfo* propertyInfo, Ptr bindExpression); + extern Ptr Workflow_InstallEvalProperty(types::ResolvingResult& resolvingResult, GlobalStringKey variableName, IGuiInstanceLoader* loader, const IGuiInstanceLoader::PropertyInfo& prop, Ptr propInfo, Ptr evalExpression, collections::List& errors); + extern Ptr Workflow_InstallEvent(types::ResolvingResult& resolvingResult, GlobalStringKey variableName, description::IEventInfo* eventInfo, const WString& handlerName); extern Ptr Workflow_GenerateEventHandler(description::IEventInfo* eventInfo); - extern Ptr Workflow_InstallEvalEvent(GlobalStringKey variableName, description::IEventInfo* eventInfo, Ptr evalStatement); + extern Ptr Workflow_InstallEvalEvent(types::ResolvingResult& resolvingResult, GlobalStringKey variableName, description::IEventInfo* eventInfo, Ptr evalStatement); /*********************************************************************** WorkflowCompiler (Compile) @@ -835,6 +845,21 @@ WorkflowCompiler (Compile) extern bool Workflow_ValidateStatement(types::ResolvingResult& resolvingResult, types::ErrorList& errors, const WString& code, Ptr statement); extern Ptr Workflow_PrecompileInstanceContext(types::ResolvingResult& resolvingResult, types::ErrorList& errors); extern Ptr Workflow_GenerateInstanceClass(types::ResolvingResult& resolvingResult, types::ErrorList& errors, vint passIndex); + +#define WORKFLOW_ENVIRONMENT_VARIABLE_ADD\ + FOREACH_INDEXER(GlobalStringKey, envVar, index, repr->environmentVariables.Keys())\ + {\ + auto value = repr->environmentVariables.Values()[index];\ + resolvingResult.envVars.Add(envVar, value);\ + }\ + +#define WORKFLOW_ENVIRONMENT_VARIABLE_REMOVE\ + FOREACH_INDEXER(GlobalStringKey, envVar, index, repr->environmentVariables.Keys())\ + {\ + auto value = repr->environmentVariables.Values()[index];\ + resolvingResult.envVars.Remove(envVar, value);\ + }\ + } } @@ -1210,8 +1235,17 @@ GuiVrtualTypeInstanceLoader return typeName == typeInfo.typeName; } - Ptr CreateInstance_ControlTemplate(const TypeInfo& typeInfo, Ptr controlTemplate, collections::List& errors) + Ptr CreateInstance_ControlTemplate(const TypeInfo& typeInfo, ArgumentMap& arguments, collections::List& errors) { + Ptr controlTemplate; + { + auto index = arguments.Keys().IndexOf(GlobalStringKey::_ControlTemplate); + if (index != -1) + { + controlTemplate = arguments.GetByIndex(index)[0].expression; + } + } + if (controlTemplate) { if (auto controlTemplateTd = GetControlTemplateType(controlTemplate, typeInfo, errors)) @@ -1236,40 +1270,27 @@ GuiVrtualTypeInstanceLoader } } - Ptr CreateRootInstance(const TypeInfo& typeInfo, ArgumentMap& arguments, collections::List& errors)override + Ptr CreateRootInstance(types::ResolvingResult& resolvingResult, const TypeInfo& typeInfo, ArgumentMap& arguments, collections::List& errors)override { - auto controlType = TypeInfoRetriver::CreateTypeInfo(); - auto index = arguments.Keys().IndexOf(GlobalStringKey::_ControlTemplate); - if (index != -1) + if (auto createStyleExpr = CreateInstance_ControlTemplate(typeInfo, arguments, errors)) { - auto controlTemplate = arguments.GetByIndex(index)[0].expression; - if (auto createStyleExpr = CreateInstance_ControlTemplate(typeInfo, controlTemplate, errors)) - { - auto createControl = MakePtr(); - createControl->type = GetTypeFromTypeInfo(controlType.Obj()); - createControl->arguments.Add(createStyleExpr); - return createControl; - } + auto createControl = MakePtr(); + createControl->type = GetTypeFromTypeInfo(TypeInfoRetriver::CreateTypeInfo().Obj()); + createControl->arguments.Add(createStyleExpr); + return createControl; } return nullptr; } - Ptr CreateInstance(const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List& errors)override + Ptr CreateInstance(types::ResolvingResult& resolvingResult, const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List& errors)override { CHECK_ERROR(typeName == typeInfo.typeName, L"GuiTemplateControlInstanceLoader::CreateInstance# Wrong type info is provided."); vint indexControlTemplate = arguments.Keys().IndexOf(GlobalStringKey::_ControlTemplate); - Ptr createStyleExpr; + auto createStyleExpr = CreateInstance_ControlTemplate(typeInfo, arguments, errors); + if (!createStyleExpr) { - Ptr controlTemplate; - if (indexControlTemplate != -1) - { - controlTemplate = arguments.GetByIndex(indexControlTemplate)[0].expression; - } - if (!(createStyleExpr = CreateInstance_ControlTemplate(typeInfo, controlTemplate, errors))) - { - return nullptr; - } + return nullptr; } auto block = MakePtr(); diff --git a/Import/GacUIReflection.cpp b/Import/GacUIReflection.cpp index 311ff8e7..c922d85f 100644 --- a/Import/GacUIReflection.cpp +++ b/Import/GacUIReflection.cpp @@ -3059,6 +3059,7 @@ Type Declaration CLASS_MEMBER_METHOD(GetCellValue, { L"row" }) CLASS_MEMBER_METHOD(SetCellValue, { L"row" _ L"value" }) + CLASS_MEMBER_PROPERTY_GUIEVENT_FAST(TextProperty) CLASS_MEMBER_PROPERTY_GUIEVENT_FAST(ValueProperty) CLASS_MEMBER_PROPERTY_READONLY_FAST(ViewModelContext) END_CLASS_MEMBER(BindableDataColumn) diff --git a/Tutorial/GacUI_Controls/AddressBook/AddressBook.vcxproj b/Tutorial/GacUI_Controls/AddressBook/AddressBook.vcxproj index ad45d35a..a0430dc7 100644 --- a/Tutorial/GacUI_Controls/AddressBook/AddressBook.vcxproj +++ b/Tutorial/GacUI_Controls/AddressBook/AddressBook.vcxproj @@ -53,7 +53,7 @@ Level3 Disabled - WIN32;_DEBUG;_WINDOWS;%(PreprocessorDefinitions) + WIN32;_DEBUG;_WINDOWS;%(PreprocessorDefinitions);VCZH_DEBUG_NO_REFLECTION true @@ -69,7 +69,7 @@ MaxSpeed true true - WIN32;NDEBUG;_WINDOWS;%(PreprocessorDefinitions) + WIN32;NDEBUG;_WINDOWS;%(PreprocessorDefinitions);VCZH_DEBUG_NO_REFLECTION true @@ -79,11 +79,6 @@ true - - - {8018d622-66ba-4e65-9d03-bdac37ea9a54} - - @@ -99,6 +94,11 @@ + + + {96c559ca-9718-4bec-a053-28a0ab6a8ca2} + + diff --git a/Tutorial/GacUI_Controls/AddressBook/UI/Resource.xml b/Tutorial/GacUI_Controls/AddressBook/UI/Resource.xml index a980e676..b42e112d 100644 --- a/Tutorial/GacUI_Controls/AddressBook/UI/Resource.xml +++ b/Tutorial/GacUI_Controls/AddressBook/UI/Resource.xml @@ -255,7 +255,7 @@ - + ViewModel.GetRootCategory() Name Image @@ -298,7 +298,7 @@ - + ViewModel.SelectedCategory.Contacts ?? null BigImage diff --git a/Tutorial/GacUI_Controls/AddressBook/UI/Source/DemoPartialClasses.cpp b/Tutorial/GacUI_Controls/AddressBook/UI/Source/DemoPartialClasses.cpp index 1343ae19..b7f3aa94 100644 --- a/Tutorial/GacUI_Controls/AddressBook/UI/Source/DemoPartialClasses.cpp +++ b/Tutorial/GacUI_Controls/AddressBook/UI/Source/DemoPartialClasses.cpp @@ -38,619 +38,17 @@ END_GLOBAL_STORAGE_CLASS(vl_workflow_global_Demo) namespace vl_workflow_global { /*********************************************************************** -Closure Definitions +Global Functions ***********************************************************************/ - struct __vwsnf10_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ + Demo& Demo::Instance() { - ::demo::MainWindowConstructor* __vwsnthis_0; + return Getvl_workflow_global_Demo().instance; + } - __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()() 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()(const ::vl::reflection::description::Value& __vwsn_value_) 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 __vwsnf1_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ - { - ::demo::MainWindowConstructor* __vwsnthis_0; - - __vwsnf1_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0); - - void operator()(const ::vl::reflection::description::Value& __vwsn_value_) 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()(const ::vl::reflection::description::Value& __vwsn_value_) 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()(const ::vl::reflection::description::Value& __vwsn_value_) 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()(const ::vl::reflection::description::Value& __vwsn_value_) const; - }; - - struct __vwsnf23_Demo_demo_NewContactWindowConstructor___vwsn_initialize_instance__ - { - ::demo::NewContactWindowConstructor* __vwsnthis_0; - - __vwsnf23_Demo_demo_NewContactWindowConstructor___vwsn_initialize_instance__(::demo::NewContactWindowConstructor* __vwsnctorthis_0); - - void operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const; - }; - - struct __vwsnf24_Demo_demo_NewContactWindowConstructor___vwsn_initialize_instance__ - { - ::demo::NewContactWindowConstructor* __vwsnthis_0; - - __vwsnf24_Demo_demo_NewContactWindowConstructor___vwsn_initialize_instance__(::demo::NewContactWindowConstructor* __vwsnctorthis_0); - - void operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const; - }; - - struct __vwsnf25_Demo_demo_NewContactWindowConstructor___vwsn_initialize_instance__ - { - ::demo::NewContactWindowConstructor* __vwsnthis_0; - - __vwsnf25_Demo_demo_NewContactWindowConstructor___vwsn_initialize_instance__(::demo::NewContactWindowConstructor* __vwsnctorthis_0); - - void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; - }; - - struct __vwsnf26_Demo_demo_NewFolderWindowConstructor___vwsn_initialize_instance__ - { - ::demo::NewFolderWindowConstructor* __vwsnthis_0; - - __vwsnf26_Demo_demo_NewFolderWindowConstructor___vwsn_initialize_instance__(::demo::NewFolderWindowConstructor* __vwsnctorthis_0); - - void operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const; - }; - - struct __vwsnf27_Demo_demo_NewFolderWindowConstructor___vwsn_initialize_instance__ - { - ::demo::NewFolderWindowConstructor* __vwsnthis_0; - - __vwsnf27_Demo_demo_NewFolderWindowConstructor___vwsn_initialize_instance__(::demo::NewFolderWindowConstructor* __vwsnctorthis_0); - - void operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const; - }; - - struct __vwsnf28_Demo_demo_NewFolderWindowConstructor___vwsn_initialize_instance__ - { - ::demo::NewFolderWindowConstructor* __vwsnthis_0; - - __vwsnf28_Demo_demo_NewFolderWindowConstructor___vwsn_initialize_instance__(::demo::NewFolderWindowConstructor* __vwsnctorthis_0); - - void operator()(const ::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::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const; - }; - - struct __vwsnf3_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___ - { - ::demo::NewFolderWindow* window; - ::demo::MainWindowConstructor* __vwsnthis_0; - - __vwsnf3_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___(::demo::NewFolderWindow* __vwsnctor_window, ::demo::MainWindowConstructor* __vwsnctorthis_0); - - void operator()() 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()(const ::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::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()(const ::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::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const; - }; - - struct __vwsnf8_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___ - { - ::vl::Ptr<::demo::IContact> contact; - ::demo::NewContactWindow* window; - ::demo::MainWindowConstructor* __vwsnthis_0; - - __vwsnf8_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___(::vl::Ptr<::demo::IContact> __vwsnctor_contact, ::demo::NewContactWindow* __vwsnctor_window, ::demo::MainWindowConstructor* __vwsnctorthis_0); - - void operator()() 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()(const ::vl::reflection::description::Value& __vwsn_value_) const; - }; - - struct __vwsno14_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ - { - ::demo::MainWindow* __vwsn_this_; - ::demo::MainWindowConstructor* __vwsnthis_0; - - __vwsno14_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindow* __vwsnctor___vwsn_this_, ::demo::MainWindowConstructor* __vwsnctorthis_0); - - void operator()(::vl::presentation::compositions::GuiGraphicsComposition* __vwsno_1, ::vl::presentation::compositions::GuiEventArgs* __vwsno_2) const; - }; - - struct __vwsno15_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ - { - ::demo::MainWindow* __vwsn_this_; - ::demo::MainWindowConstructor* __vwsnthis_0; - - __vwsno15_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindow* __vwsnctor___vwsn_this_, ::demo::MainWindowConstructor* __vwsnctorthis_0); - - void operator()(::vl::presentation::compositions::GuiGraphicsComposition* __vwsno_1, ::vl::presentation::compositions::GuiEventArgs* __vwsno_2) const; - }; - - struct __vwsno16_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ - { - ::demo::MainWindow* __vwsn_this_; - ::demo::MainWindowConstructor* __vwsnthis_0; - - __vwsno16_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindow* __vwsnctor___vwsn_this_, ::demo::MainWindowConstructor* __vwsnctorthis_0); - - void operator()(::vl::presentation::compositions::GuiGraphicsComposition* __vwsno_1, ::vl::presentation::compositions::GuiEventArgs* __vwsno_2) const; - }; - - struct __vwsno17_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ - { - ::demo::MainWindow* __vwsn_this_; - ::demo::MainWindowConstructor* __vwsnthis_0; - - __vwsno17_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindow* __vwsnctor___vwsn_this_, ::demo::MainWindowConstructor* __vwsnctorthis_0); - - void operator()(::vl::presentation::compositions::GuiGraphicsComposition* __vwsno_1, ::vl::presentation::compositions::GuiEventArgs* __vwsno_2) const; - }; - - struct __vwsno18_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ - { - ::demo::MainWindow* __vwsn_this_; - ::demo::MainWindowConstructor* __vwsnthis_0; - - __vwsno18_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindow* __vwsnctor___vwsn_this_, ::demo::MainWindowConstructor* __vwsnctorthis_0); - - void operator()(::vl::presentation::compositions::GuiGraphicsComposition* __vwsno_1, ::vl::presentation::compositions::GuiEventArgs* __vwsno_2) const; - }; - - struct __vwsno19_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ - { - ::demo::MainWindow* __vwsn_this_; - ::demo::MainWindowConstructor* __vwsnthis_0; - - __vwsno19_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindow* __vwsnctor___vwsn_this_, ::demo::MainWindowConstructor* __vwsnctorthis_0); - - void operator()(::vl::presentation::compositions::GuiGraphicsComposition* __vwsno_1, ::vl::presentation::compositions::GuiEventArgs* __vwsno_2) const; - }; - - class __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::Ptr<::demo::IViewModel> __vwsn_bind_cache_0; - ::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(); - 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::controls::GuiBindableTreeView* __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::controls::GuiBindableListView* __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_NewContactWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription - { - public: - ::demo::NewContactWindowConstructor* __vwsnthis_0; - - __vwsnc17_Demo_demo_NewContactWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription(::demo::NewContactWindowConstructor* __vwsnctorthis_0); - - ::demo::NewContactWindow* __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(); - 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_NewContactWindowConstructor___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::NewContactWindowConstructor* __vwsnthis_1; - - __vwsnc18_Demo_demo_NewContactWindowConstructor___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::NewContactWindowConstructor* __vwsnctorthis_1); - - ::vl::reflection::description::IValueSubscription* GetSubscription() override; - bool GetStopped() override; - bool StopListening() override; - }; - - class __vwsnc19_Demo_demo_NewFolderWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription - { - public: - ::demo::NewFolderWindowConstructor* __vwsnthis_0; - - __vwsnc19_Demo_demo_NewFolderWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription(::demo::NewFolderWindowConstructor* __vwsnctorthis_0); - - ::vl::presentation::controls::GuiDocumentLabel* __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 __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::Ptr<::demo::IViewModel> __vwsn_bind_cache_0; - ::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(); - 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 __vwsnc20_Demo_demo_NewFolderWindowConstructor___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::NewFolderWindowConstructor* __vwsnthis_1; - - __vwsnc20_Demo_demo_NewFolderWindowConstructor___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::NewFolderWindowConstructor* __vwsnctorthis_1); - - ::vl::reflection::description::IValueSubscription* GetSubscription() override; - bool GetStopped() override; - bool StopListening() 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::Ptr<::demo::IViewModel> __vwsn_bind_cache_0; - ::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(); - 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::Ptr<::demo::IViewModel> __vwsn_bind_cache_0; - ::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(); - 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::Ptr<::demo::IViewModel> __vwsn_bind_cache_0; - ::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(); - 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::Ptr<::demo::IViewModel> __vwsn_bind_cache_0; - ::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(); - void __vwsn_bind_initialize_(); - ::vl::Ptr<::vl::reflection::description::IValueListener> Subscribe(const ::vl::Func& __vwsn_bind_callback_) override; - bool Update() override; - bool Close() override; - }; +/*********************************************************************** +Closures +***********************************************************************/ //------------------------------------------------------------------- @@ -659,67 +57,7 @@ Closure Definitions { } - void __vwsnf10_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const - { - { - auto window = new ::demo::NewContactWindow(::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->ViewModel.Obj())->GetSelectedContact()); - ::vl::__vwsn::This(window)->SetForEdit(true); - ::vl::__vwsn::This(window)->MoveToScreenCenter(); - ::vl::__vwsn::This(window)->ShowModalAndDelete(static_cast<::vl::presentation::controls::GuiWindow*>(::vl::__vwsn::This(__vwsnthis_0)->self), LAMBDA(::vl_workflow_global::__vwsnf11_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___(__vwsnthis_0))); - } - } - - //------------------------------------------------------------------- - - __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()() const - { - } - - //------------------------------------------------------------------- - - __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()(const ::vl::reflection::description::Value& __vwsn_value_) const - { - auto __vwsn_old_ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->commandDeleteContact)->GetEnabled(); - auto __vwsn_new_ = ::vl::__vwsn::Unbox(__vwsn_value_); - if ((__vwsn_old_ == __vwsn_new_)) - { - return; - } - ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->commandDeleteContact)->SetEnabled(__vwsn_new_); - } - - //------------------------------------------------------------------- - - __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 - { - { - ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->ViewModel.Obj())->RemoveContact(); - } - } - - //------------------------------------------------------------------- - - __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()(const ::vl::reflection::description::Value& __vwsn_value_) const + void __vwsnf10_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const { auto __vwsn_old_ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->commandNewFolder)->GetEnabled(); auto __vwsn_new_ = ::vl::__vwsn::Unbox(__vwsn_value_); @@ -732,178 +70,29 @@ Closure Definitions //------------------------------------------------------------------- - __vwsnf20_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf20_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) + __vwsnf11_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf11_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) :__vwsnthis_0(__vwsnctorthis_0) { } - void __vwsnf20_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const - { - auto __vwsn_old_ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->listViewContacts)->GetItemSource(); - auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::Ptr<::vl::reflection::description::IValueEnumerable>>(__vwsn_value_); - if ((__vwsn_old_.Obj() == __vwsn_new_.Obj())) - { - return; - } - ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->listViewContacts)->SetItemSource(__vwsn_new_); - } - - //------------------------------------------------------------------- - - __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()(const ::vl::reflection::description::Value& __vwsn_value_) const - { - auto __vwsn_old_ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->__vwsn_precompile_38.Obj())->GetSelectedCategory(); - auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::Ptr<::demo::ICategory>>(__vwsn_value_); - if ((__vwsn_old_.Obj() == __vwsn_new_.Obj())) - { - return; - } - ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->__vwsn_precompile_38.Obj())->SetSelectedCategory(__vwsn_new_); - } - - //------------------------------------------------------------------- - - __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()(const ::vl::reflection::description::Value& __vwsn_value_) const - { - auto __vwsn_old_ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->__vwsn_precompile_38.Obj())->GetSelectedContact(); - auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::Ptr<::demo::IContact>>(__vwsn_value_); - if ((__vwsn_old_.Obj() == __vwsn_new_.Obj())) - { - return; - } - ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->__vwsn_precompile_38.Obj())->SetSelectedContact(__vwsn_new_); - } - - //------------------------------------------------------------------- - - __vwsnf23_Demo_demo_NewContactWindowConstructor___vwsn_initialize_instance__::__vwsnf23_Demo_demo_NewContactWindowConstructor___vwsn_initialize_instance__(::demo::NewContactWindowConstructor* __vwsnctorthis_0) - :__vwsnthis_0(__vwsnctorthis_0) - { - } - - void __vwsnf23_Demo_demo_NewContactWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const - { - { - ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->Contact.Obj())->Update(::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->textBoxName)->GetText(), ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->datePickerBirthday)->GetDate(), ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->textBoxPhone)->GetText(), ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->textBoxAddress)->GetText()); - ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->self)->Close(); - } - } - - //------------------------------------------------------------------- - - __vwsnf24_Demo_demo_NewContactWindowConstructor___vwsn_initialize_instance__::__vwsnf24_Demo_demo_NewContactWindowConstructor___vwsn_initialize_instance__(::demo::NewContactWindowConstructor* __vwsnctorthis_0) - :__vwsnthis_0(__vwsnctorthis_0) - { - } - - void __vwsnf24_Demo_demo_NewContactWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const - { - { - (::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->self)->Ready = false); - ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->self)->Close(); - } - } - - //------------------------------------------------------------------- - - __vwsnf25_Demo_demo_NewContactWindowConstructor___vwsn_initialize_instance__::__vwsnf25_Demo_demo_NewContactWindowConstructor___vwsn_initialize_instance__(::demo::NewContactWindowConstructor* __vwsnctorthis_0) - :__vwsnthis_0(__vwsnctorthis_0) - { - } - - void __vwsnf25_Demo_demo_NewContactWindowConstructor___vwsn_initialize_instance__::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const - { - auto __vwsn_old_ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->self)->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)->self)->SetText(__vwsn_new_); - } - - //------------------------------------------------------------------- - - __vwsnf26_Demo_demo_NewFolderWindowConstructor___vwsn_initialize_instance__::__vwsnf26_Demo_demo_NewFolderWindowConstructor___vwsn_initialize_instance__(::demo::NewFolderWindowConstructor* __vwsnctorthis_0) - :__vwsnthis_0(__vwsnctorthis_0) - { - } - - void __vwsnf26_Demo_demo_NewFolderWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const - { - { - ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->self)->Close(); - } - } - - //------------------------------------------------------------------- - - __vwsnf27_Demo_demo_NewFolderWindowConstructor___vwsn_initialize_instance__::__vwsnf27_Demo_demo_NewFolderWindowConstructor___vwsn_initialize_instance__(::demo::NewFolderWindowConstructor* __vwsnctorthis_0) - :__vwsnthis_0(__vwsnctorthis_0) - { - } - - void __vwsnf27_Demo_demo_NewFolderWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const - { - { - (::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->self)->Ready = false); - ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->self)->Close(); - } - } - - //------------------------------------------------------------------- - - __vwsnf28_Demo_demo_NewFolderWindowConstructor___vwsn_initialize_instance__::__vwsnf28_Demo_demo_NewFolderWindowConstructor___vwsn_initialize_instance__(::demo::NewFolderWindowConstructor* __vwsnctorthis_0) - :__vwsnthis_0(__vwsnctorthis_0) - { - } - - void __vwsnf28_Demo_demo_NewFolderWindowConstructor___vwsn_initialize_instance__::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const - { - auto __vwsn_old_ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->self)->GetFolderName(); - auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::WString>(__vwsn_value_); - if ((__vwsn_old_ == __vwsn_new_)) - { - return; - } - ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->self)->SetFolderName(__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::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const + void __vwsnf11_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const { { auto window = new ::demo::NewFolderWindow(); ::vl::__vwsn::This(window)->MoveToScreenCenter(); - ::vl::__vwsn::This(window)->ShowModalAndDelete(static_cast<::vl::presentation::controls::GuiWindow*>(::vl::__vwsn::This(__vwsnthis_0)->self), LAMBDA(::vl_workflow_global::__vwsnf3_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___(window, __vwsnthis_0))); + ::vl::__vwsn::This(window)->ShowModalAndDelete(static_cast<::vl::presentation::controls::GuiWindow*>(::vl::__vwsn::This(__vwsnthis_0)->self), LAMBDA(::vl_workflow_global::__vwsnf12_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___(window, __vwsnthis_0))); } } //------------------------------------------------------------------- - __vwsnf3_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___::__vwsnf3_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___(::demo::NewFolderWindow* __vwsnctor_window, ::demo::MainWindowConstructor* __vwsnctorthis_0) + __vwsnf12_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___::__vwsnf12_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___(::demo::NewFolderWindow* __vwsnctor_window, ::demo::MainWindowConstructor* __vwsnctorthis_0) :window(__vwsnctor_window) , __vwsnthis_0(__vwsnctorthis_0) { } - void __vwsnf3_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___::operator()() const + void __vwsnf12_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___::operator()() const { if (::vl::__vwsn::This(::vl::__vwsn::This(this)->window)->Ready) { @@ -913,12 +102,12 @@ Closure Definitions //------------------------------------------------------------------- - __vwsnf4_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf4_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) + __vwsnf13_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf13_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) :__vwsnthis_0(__vwsnctorthis_0) { } - void __vwsnf4_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + void __vwsnf13_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const { auto __vwsn_old_ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->commandDeleteFolder)->GetEnabled(); auto __vwsn_new_ = ::vl::__vwsn::Unbox(__vwsn_value_); @@ -931,12 +120,12 @@ Closure Definitions //------------------------------------------------------------------- - __vwsnf5_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf5_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) + __vwsnf14_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf14_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 + void __vwsnf14_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())->RemoveCategory(); @@ -945,12 +134,12 @@ Closure Definitions //------------------------------------------------------------------- - __vwsnf6_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf6_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) + __vwsnf15_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf15_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) :__vwsnthis_0(__vwsnctorthis_0) { } - void __vwsnf6_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + void __vwsnf15_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const { auto __vwsn_old_ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->commandNewContact)->GetEnabled(); auto __vwsn_new_ = ::vl::__vwsn::Unbox(__vwsn_value_); @@ -963,31 +152,31 @@ Closure Definitions //------------------------------------------------------------------- - __vwsnf7_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf7_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) + __vwsnf16_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf16_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 + void __vwsnf16_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const { { auto contact = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->ViewModel.Obj())->CreateContact(); auto window = new ::demo::NewContactWindow(contact); ::vl::__vwsn::This(window)->MoveToScreenCenter(); - ::vl::__vwsn::This(window)->ShowModalAndDelete(static_cast<::vl::presentation::controls::GuiWindow*>(::vl::__vwsn::This(__vwsnthis_0)->self), LAMBDA(::vl_workflow_global::__vwsnf8_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___(contact, window, __vwsnthis_0))); + ::vl::__vwsn::This(window)->ShowModalAndDelete(static_cast<::vl::presentation::controls::GuiWindow*>(::vl::__vwsn::This(__vwsnthis_0)->self), LAMBDA(::vl_workflow_global::__vwsnf17_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___(contact, window, __vwsnthis_0))); } } //------------------------------------------------------------------- - __vwsnf8_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___::__vwsnf8_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___(::vl::Ptr<::demo::IContact> __vwsnctor_contact, ::demo::NewContactWindow* __vwsnctor_window, ::demo::MainWindowConstructor* __vwsnctorthis_0) + __vwsnf17_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___::__vwsnf17_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___(::vl::Ptr<::demo::IContact> __vwsnctor_contact, ::demo::NewContactWindow* __vwsnctor_window, ::demo::MainWindowConstructor* __vwsnctorthis_0) :contact(__vwsnctor_contact) , window(__vwsnctor_window) , __vwsnthis_0(__vwsnctorthis_0) { } - void __vwsnf8_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___::operator()() const + void __vwsnf17_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___::operator()() const { if (::vl::__vwsn::This(::vl::__vwsn::This(this)->window)->Ready) { @@ -997,12 +186,12 @@ Closure Definitions //------------------------------------------------------------------- - __vwsnf9_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf9_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) + __vwsnf18_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf18_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) :__vwsnthis_0(__vwsnctorthis_0) { } - void __vwsnf9_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + void __vwsnf18_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const { auto __vwsn_old_ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->commandEditContact)->GetEnabled(); auto __vwsn_new_ = ::vl::__vwsn::Unbox(__vwsn_value_); @@ -1015,78 +204,404 @@ Closure Definitions //------------------------------------------------------------------- - __vwsno14_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsno14_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindow* __vwsnctor___vwsn_this_, ::demo::MainWindowConstructor* __vwsnctorthis_0) + __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 + { + { + auto window = new ::demo::NewContactWindow(::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->ViewModel.Obj())->GetSelectedContact()); + ::vl::__vwsn::This(window)->SetForEdit(true); + ::vl::__vwsn::This(window)->MoveToScreenCenter(); + ::vl::__vwsn::This(window)->ShowModalAndDelete(static_cast<::vl::presentation::controls::GuiWindow*>(::vl::__vwsn::This(__vwsnthis_0)->self), LAMBDA(::vl_workflow_global::__vwsnf20_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___(__vwsnthis_0))); + } + } + + //------------------------------------------------------------------- + + __vwsnf1_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf1_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + } + + ::vl::Ptr<::vl::reflection::description::IValueEnumerable> __vwsnf1_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(const ::vl::reflection::description::Value& __vwsn_item_) const + { + auto item = ::vl::__vwsn::Unbox<::vl::Ptr<::demo::ICategory>>(__vwsn_item_); + return ::vl::Ptr<::vl::reflection::description::IValueEnumerable>(::vl::__vwsn::This(item.Obj())->GetFolders()); + } + + //------------------------------------------------------------------- + + __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()() const + { + } + + //------------------------------------------------------------------- + + __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()(const ::vl::reflection::description::Value& __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->commandDeleteContact)->GetEnabled(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox(__vwsn_value_); + if ((__vwsn_old_ == __vwsn_new_)) + { + return; + } + ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->commandDeleteContact)->SetEnabled(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __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 + { + { + ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->ViewModel.Obj())->RemoveContact(); + } + } + + //------------------------------------------------------------------- + + __vwsnf29_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf29_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + } + + void __vwsnf29_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->listViewContacts)->GetItemSource(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::Ptr<::vl::reflection::description::IValueEnumerable>>(__vwsn_value_); + if ((__vwsn_old_.Obj() == __vwsn_new_.Obj())) + { + return; + } + ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->listViewContacts)->SetItemSource(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf2_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf2_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + } + + ::vl::Ptr<::vl::presentation::GuiImageData> __vwsnf2_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(const ::vl::reflection::description::Value& __vwsn_item_) const + { + auto item = ::vl::__vwsn::Unbox<::vl::Ptr<::demo::ICategory>>(__vwsn_item_); + return ::vl::__vwsn::This(item.Obj())->GetImage(); + } + + //------------------------------------------------------------------- + + __vwsnf30_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf30_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + } + + void __vwsnf30_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->__vwsn_precompile_38.Obj())->GetSelectedCategory(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::Ptr<::demo::ICategory>>(__vwsn_value_); + if ((__vwsn_old_.Obj() == __vwsn_new_.Obj())) + { + return; + } + ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->__vwsn_precompile_38.Obj())->SetSelectedCategory(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf31_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf31_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + } + + void __vwsnf31_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->__vwsn_precompile_38.Obj())->GetSelectedContact(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::Ptr<::demo::IContact>>(__vwsn_value_); + if ((__vwsn_old_.Obj() == __vwsn_new_.Obj())) + { + return; + } + ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->__vwsn_precompile_38.Obj())->SetSelectedContact(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf32_Demo_demo_NewContactWindowConstructor___vwsn_initialize_instance__::__vwsnf32_Demo_demo_NewContactWindowConstructor___vwsn_initialize_instance__(::demo::NewContactWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + } + + void __vwsnf32_Demo_demo_NewContactWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const + { + { + ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->Contact.Obj())->Update(::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->textBoxName)->GetText(), ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->datePickerBirthday)->GetDate(), ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->textBoxPhone)->GetText(), ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->textBoxAddress)->GetText()); + ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->self)->Close(); + } + } + + //------------------------------------------------------------------- + + __vwsnf33_Demo_demo_NewContactWindowConstructor___vwsn_initialize_instance__::__vwsnf33_Demo_demo_NewContactWindowConstructor___vwsn_initialize_instance__(::demo::NewContactWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + } + + void __vwsnf33_Demo_demo_NewContactWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const + { + { + (::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->self)->Ready = false); + ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->self)->Close(); + } + } + + //------------------------------------------------------------------- + + __vwsnf34_Demo_demo_NewContactWindowConstructor___vwsn_initialize_instance__::__vwsnf34_Demo_demo_NewContactWindowConstructor___vwsn_initialize_instance__(::demo::NewContactWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + } + + void __vwsnf34_Demo_demo_NewContactWindowConstructor___vwsn_initialize_instance__::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->self)->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)->self)->SetText(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf35_Demo_demo_NewFolderWindowConstructor___vwsn_initialize_instance__::__vwsnf35_Demo_demo_NewFolderWindowConstructor___vwsn_initialize_instance__(::demo::NewFolderWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + } + + void __vwsnf35_Demo_demo_NewFolderWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const + { + { + ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->self)->Close(); + } + } + + //------------------------------------------------------------------- + + __vwsnf36_Demo_demo_NewFolderWindowConstructor___vwsn_initialize_instance__::__vwsnf36_Demo_demo_NewFolderWindowConstructor___vwsn_initialize_instance__(::demo::NewFolderWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + } + + void __vwsnf36_Demo_demo_NewFolderWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const + { + { + (::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->self)->Ready = false); + ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->self)->Close(); + } + } + + //------------------------------------------------------------------- + + __vwsnf37_Demo_demo_NewFolderWindowConstructor___vwsn_initialize_instance__::__vwsnf37_Demo_demo_NewFolderWindowConstructor___vwsn_initialize_instance__(::demo::NewFolderWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + } + + void __vwsnf37_Demo_demo_NewFolderWindowConstructor___vwsn_initialize_instance__::operator()(const ::vl::reflection::description::Value& __vwsn_value_) const + { + auto __vwsn_old_ = ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->self)->GetFolderName(); + auto __vwsn_new_ = ::vl::__vwsn::Unbox<::vl::WString>(__vwsn_value_); + if ((__vwsn_old_ == __vwsn_new_)) + { + return; + } + ::vl::__vwsn::This(::vl::__vwsn::This(__vwsnthis_0)->self)->SetFolderName(__vwsn_new_); + } + + //------------------------------------------------------------------- + + __vwsnf3_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf3_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + } + + ::vl::WString __vwsnf3_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(const ::vl::reflection::description::Value& __vwsn_item_) const + { + auto item = ::vl::__vwsn::Unbox<::vl::Ptr<::demo::ICategory>>(__vwsn_item_); + return ::vl::__vwsn::This(item.Obj())->GetName(); + } + + //------------------------------------------------------------------- + + __vwsnf4_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf4_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + } + + ::vl::Ptr<::vl::presentation::GuiImageData> __vwsnf4_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(const ::vl::reflection::description::Value& __vwsn_item_) const + { + auto item = ::vl::__vwsn::Unbox<::vl::Ptr<::demo::IContact>>(__vwsn_item_); + return ::vl::__vwsn::This(item.Obj())->GetSmallImage(); + } + + //------------------------------------------------------------------- + + __vwsnf5_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf5_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + } + + ::vl::Ptr<::vl::presentation::GuiImageData> __vwsnf5_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(const ::vl::reflection::description::Value& __vwsn_item_) const + { + auto item = ::vl::__vwsn::Unbox<::vl::Ptr<::demo::IContact>>(__vwsn_item_); + return ::vl::__vwsn::This(item.Obj())->GetBigImage(); + } + + //------------------------------------------------------------------- + + __vwsnf6_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf6_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + } + + ::vl::WString __vwsnf6_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(const ::vl::reflection::description::Value& __vwsn_item_) const + { + auto item = ::vl::__vwsn::Unbox<::vl::Ptr<::demo::IContact>>(__vwsn_item_); + return ::vl::__vwsn::This(item.Obj())->GetName(); + } + + //------------------------------------------------------------------- + + __vwsnf7_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf7_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + } + + ::vl::WString __vwsnf7_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(const ::vl::reflection::description::Value& __vwsn_item_) const + { + auto item = ::vl::__vwsn::Unbox<::vl::Ptr<::demo::IContact>>(__vwsn_item_); + return ::vl::__vwsn::This(item.Obj())->GetBirthdayText(); + } + + //------------------------------------------------------------------- + + __vwsnf8_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf8_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + } + + ::vl::WString __vwsnf8_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(const ::vl::reflection::description::Value& __vwsn_item_) const + { + auto item = ::vl::__vwsn::Unbox<::vl::Ptr<::demo::IContact>>(__vwsn_item_); + return ::vl::__vwsn::This(item.Obj())->GetPhone(); + } + + //------------------------------------------------------------------- + + __vwsnf9_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf9_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + } + + ::vl::WString __vwsnf9_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(const ::vl::reflection::description::Value& __vwsn_item_) const + { + auto item = ::vl::__vwsn::Unbox<::vl::Ptr<::demo::IContact>>(__vwsn_item_); + return ::vl::__vwsn::This(item.Obj())->GetAddress(); + } + + //------------------------------------------------------------------- + + __vwsno23_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsno23_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindow* __vwsnctor___vwsn_this_, ::demo::MainWindowConstructor* __vwsnctorthis_0) :__vwsn_this_(__vwsnctor___vwsn_this_) , __vwsnthis_0(__vwsnctorthis_0) { } - void __vwsno14_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* __vwsno_1, ::vl::presentation::compositions::GuiEventArgs* __vwsno_2) const + void __vwsno23_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* __vwsno_1, ::vl::presentation::compositions::GuiEventArgs* __vwsno_2) const { return ::vl::__vwsn::This(__vwsn_this_)->commandBigIcon_Executed(__vwsno_1, __vwsno_2); } //------------------------------------------------------------------- - __vwsno15_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsno15_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindow* __vwsnctor___vwsn_this_, ::demo::MainWindowConstructor* __vwsnctorthis_0) + __vwsno24_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsno24_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindow* __vwsnctor___vwsn_this_, ::demo::MainWindowConstructor* __vwsnctorthis_0) :__vwsn_this_(__vwsnctor___vwsn_this_) , __vwsnthis_0(__vwsnctorthis_0) { } - void __vwsno15_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* __vwsno_1, ::vl::presentation::compositions::GuiEventArgs* __vwsno_2) const + void __vwsno24_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* __vwsno_1, ::vl::presentation::compositions::GuiEventArgs* __vwsno_2) const { return ::vl::__vwsn::This(__vwsn_this_)->commandSmallIcon_Executed(__vwsno_1, __vwsno_2); } //------------------------------------------------------------------- - __vwsno16_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsno16_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindow* __vwsnctor___vwsn_this_, ::demo::MainWindowConstructor* __vwsnctorthis_0) + __vwsno25_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsno25_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindow* __vwsnctor___vwsn_this_, ::demo::MainWindowConstructor* __vwsnctorthis_0) :__vwsn_this_(__vwsnctor___vwsn_this_) , __vwsnthis_0(__vwsnctorthis_0) { } - void __vwsno16_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* __vwsno_1, ::vl::presentation::compositions::GuiEventArgs* __vwsno_2) const + void __vwsno25_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* __vwsno_1, ::vl::presentation::compositions::GuiEventArgs* __vwsno_2) const { return ::vl::__vwsn::This(__vwsn_this_)->commandList_Executed(__vwsno_1, __vwsno_2); } //------------------------------------------------------------------- - __vwsno17_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsno17_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindow* __vwsnctor___vwsn_this_, ::demo::MainWindowConstructor* __vwsnctorthis_0) + __vwsno26_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsno26_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindow* __vwsnctor___vwsn_this_, ::demo::MainWindowConstructor* __vwsnctorthis_0) :__vwsn_this_(__vwsnctor___vwsn_this_) , __vwsnthis_0(__vwsnctorthis_0) { } - void __vwsno17_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* __vwsno_1, ::vl::presentation::compositions::GuiEventArgs* __vwsno_2) const + void __vwsno26_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* __vwsno_1, ::vl::presentation::compositions::GuiEventArgs* __vwsno_2) const { return ::vl::__vwsn::This(__vwsn_this_)->commandDetail_Executed(__vwsno_1, __vwsno_2); } //------------------------------------------------------------------- - __vwsno18_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsno18_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindow* __vwsnctor___vwsn_this_, ::demo::MainWindowConstructor* __vwsnctorthis_0) + __vwsno27_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsno27_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindow* __vwsnctor___vwsn_this_, ::demo::MainWindowConstructor* __vwsnctorthis_0) :__vwsn_this_(__vwsnctor___vwsn_this_) , __vwsnthis_0(__vwsnctorthis_0) { } - void __vwsno18_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* __vwsno_1, ::vl::presentation::compositions::GuiEventArgs* __vwsno_2) const + void __vwsno27_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* __vwsno_1, ::vl::presentation::compositions::GuiEventArgs* __vwsno_2) const { return ::vl::__vwsn::This(__vwsn_this_)->commandTile_Executed(__vwsno_1, __vwsno_2); } //------------------------------------------------------------------- - __vwsno19_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsno19_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindow* __vwsnctor___vwsn_this_, ::demo::MainWindowConstructor* __vwsnctorthis_0) + __vwsno28_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsno28_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindow* __vwsnctor___vwsn_this_, ::demo::MainWindowConstructor* __vwsnctorthis_0) :__vwsn_this_(__vwsnctor___vwsn_this_) , __vwsnthis_0(__vwsnctorthis_0) { } - void __vwsno19_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* __vwsno_1, ::vl::presentation::compositions::GuiEventArgs* __vwsno_2) const + void __vwsno28_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(::vl::presentation::compositions::GuiGraphicsComposition* __vwsno_1, ::vl::presentation::compositions::GuiEventArgs* __vwsno_2) const { return ::vl::__vwsn::This(__vwsn_this_)->commandInformation_Executed(__vwsno_1, __vwsno_2); } @@ -2091,14 +1606,6 @@ Closure Definitions return false; } -/*********************************************************************** -Global Functions -***********************************************************************/ - - Demo& Demo::Instance() - { - return Getvl_workflow_global_Demo().instance; - } } /*********************************************************************** @@ -2268,13 +1775,13 @@ namespace demo (::vl::__vwsn::This(this)->treeViewFolders = new ::vl::presentation::controls::GuiBindableTreeView(__vwsn_controlStyle_)); } { - ::vl::__vwsn::This(::vl::__vwsn::This(this)->treeViewFolders)->SetChildrenProperty(::vl::WString(L"Folders", false)); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->treeViewFolders)->SetChildrenProperty(LAMBDA(::vl_workflow_global::__vwsnf1_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this))); } { - ::vl::__vwsn::This(::vl::__vwsn::This(this)->treeViewFolders)->SetImageProperty(::vl::WString(L"Image", false)); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->treeViewFolders)->SetImageProperty(LAMBDA(::vl_workflow_global::__vwsnf2_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this))); } { - ::vl::__vwsn::This(::vl::__vwsn::This(this)->treeViewFolders)->SetTextProperty(::vl::WString(L"Name", false)); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->treeViewFolders)->SetTextProperty(LAMBDA(::vl_workflow_global::__vwsnf3_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this))); } { ::vl::__vwsn::This(::vl::__vwsn::This(this)->treeViewFolders)->SetVerticalAlwaysVisible(::vl::__vwsn::Parse(::vl::WString(L"false", false))); @@ -2442,10 +1949,10 @@ namespace demo ::vl::__vwsn::This(__vwsn_collection_.Obj())->Add(::vl::__vwsn::Box(::vl::__vwsn::Parse<::vl::vint32_t>(::vl::WString(L"2", false)))); } { - ::vl::__vwsn::This(::vl::__vwsn::This(this)->listViewContacts)->SetSmallImageProperty(::vl::WString(L"SmallImage", false)); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->listViewContacts)->SetSmallImageProperty(LAMBDA(::vl_workflow_global::__vwsnf4_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this))); } { - ::vl::__vwsn::This(::vl::__vwsn::This(this)->listViewContacts)->SetLargeImageProperty(::vl::WString(L"BigImage", false)); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->listViewContacts)->SetLargeImageProperty(LAMBDA(::vl_workflow_global::__vwsnf5_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this))); } { ::vl::__vwsn::This(::vl::__vwsn::This(this)->listViewContacts)->SetVerticalAlwaysVisible(::vl::__vwsn::Parse(::vl::WString(L"false", false))); @@ -2462,7 +1969,7 @@ namespace demo ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_31.Obj())->SetSize(::vl::__vwsn::Parse<::vl::vint32_t>(::vl::WString(L"120", false))); } { - ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_31.Obj())->SetTextProperty(::vl::WString(L"Name", false)); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_31.Obj())->SetTextProperty(LAMBDA(::vl_workflow_global::__vwsnf6_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this))); } { ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_31.Obj())->SetText(::vl::WString(L"Name", false)); @@ -2476,7 +1983,7 @@ namespace demo ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_32.Obj())->SetSize(::vl::__vwsn::Parse<::vl::vint32_t>(::vl::WString(L"120", false))); } { - ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_32.Obj())->SetTextProperty(::vl::WString(L"BirthdayText", false)); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_32.Obj())->SetTextProperty(LAMBDA(::vl_workflow_global::__vwsnf7_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this))); } { ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_32.Obj())->SetText(::vl::WString(L"Birthday", false)); @@ -2490,7 +1997,7 @@ namespace demo ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_33.Obj())->SetSize(::vl::__vwsn::Parse<::vl::vint32_t>(::vl::WString(L"120", false))); } { - ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_33.Obj())->SetTextProperty(::vl::WString(L"Phone", false)); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_33.Obj())->SetTextProperty(LAMBDA(::vl_workflow_global::__vwsnf8_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this))); } { ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_33.Obj())->SetText(::vl::WString(L"Phone", false)); @@ -2504,7 +2011,7 @@ namespace demo ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_34.Obj())->SetSize(::vl::__vwsn::Parse<::vl::vint32_t>(::vl::WString(L"120", false))); } { - ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_34.Obj())->SetTextProperty(::vl::WString(L"Address", false)); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_34.Obj())->SetTextProperty(LAMBDA(::vl_workflow_global::__vwsnf9_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this))); } { ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_34.Obj())->SetText(::vl::WString(L"Address", false)); @@ -2548,11 +2055,11 @@ namespace demo } { 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())->Subscribe(LAMBDA(::vl_workflow_global::__vwsnf10_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this))); ::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->Update(); } { - auto __vwsn_event_handler_ = LAMBDA(::vl_workflow_global::__vwsnf2_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this)); + 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)->commandNewFolder)->Executed, __vwsn_event_handler_); } { @@ -2572,11 +2079,11 @@ namespace demo } { 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::__vwsnf4_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this))); + ::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->Subscribe(LAMBDA(::vl_workflow_global::__vwsnf13_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this))); ::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->Update(); } { - auto __vwsn_event_handler_ = LAMBDA(::vl_workflow_global::__vwsnf5_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this)); + 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)->commandDeleteFolder)->Executed, __vwsn_event_handler_); } { @@ -2596,11 +2103,11 @@ namespace demo } { 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::__vwsnf6_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this))); + ::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->Subscribe(LAMBDA(::vl_workflow_global::__vwsnf15_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this))); ::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->Update(); } { - auto __vwsn_event_handler_ = LAMBDA(::vl_workflow_global::__vwsnf7_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this)); + 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)->commandNewContact)->Executed, __vwsn_event_handler_); } { @@ -2620,11 +2127,11 @@ namespace demo } { 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::__vwsnf9_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this))); + ::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->Subscribe(LAMBDA(::vl_workflow_global::__vwsnf18_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this))); ::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->Update(); } { - auto __vwsn_event_handler_ = LAMBDA(::vl_workflow_global::__vwsnf10_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this)); + 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)->commandEditContact)->Executed, __vwsn_event_handler_); } { @@ -2644,11 +2151,11 @@ namespace demo } { 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::__vwsnf12_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this))); + ::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->Subscribe(LAMBDA(::vl_workflow_global::__vwsnf21_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this))); ::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->Update(); } { - auto __vwsn_event_handler_ = LAMBDA(::vl_workflow_global::__vwsnf13_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this)); + 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)->commandDeleteContact)->Executed, __vwsn_event_handler_); } { @@ -2667,7 +2174,7 @@ namespace demo } } { - ::vl::__vwsn::EventAttach(::vl::__vwsn::This(::vl::__vwsn::This(this)->commandBigIcon)->Executed, LAMBDA(::vl_workflow_global::__vwsno14_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(__vwsn_this_, this))); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(::vl::__vwsn::This(this)->commandBigIcon)->Executed, LAMBDA(::vl_workflow_global::__vwsno23_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(__vwsn_this_, this))); } { auto __vwsn_resource_item_ = ::vl::__vwsn::This(__vwsn_resolver_)->ResolveResource(::vl::WString(L"res", false), ::vl::WString(L"Images/SmallIcon", false)); @@ -2685,7 +2192,7 @@ namespace demo } } { - ::vl::__vwsn::EventAttach(::vl::__vwsn::This(::vl::__vwsn::This(this)->commandSmallIcon)->Executed, LAMBDA(::vl_workflow_global::__vwsno15_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(__vwsn_this_, this))); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(::vl::__vwsn::This(this)->commandSmallIcon)->Executed, LAMBDA(::vl_workflow_global::__vwsno24_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(__vwsn_this_, this))); } { auto __vwsn_resource_item_ = ::vl::__vwsn::This(__vwsn_resolver_)->ResolveResource(::vl::WString(L"res", false), ::vl::WString(L"Images/List", false)); @@ -2703,7 +2210,7 @@ namespace demo } } { - ::vl::__vwsn::EventAttach(::vl::__vwsn::This(::vl::__vwsn::This(this)->commandList)->Executed, LAMBDA(::vl_workflow_global::__vwsno16_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(__vwsn_this_, this))); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(::vl::__vwsn::This(this)->commandList)->Executed, LAMBDA(::vl_workflow_global::__vwsno25_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(__vwsn_this_, this))); } { auto __vwsn_resource_item_ = ::vl::__vwsn::This(__vwsn_resolver_)->ResolveResource(::vl::WString(L"res", false), ::vl::WString(L"Images/Detail", false)); @@ -2721,7 +2228,7 @@ namespace demo } } { - ::vl::__vwsn::EventAttach(::vl::__vwsn::This(::vl::__vwsn::This(this)->commandDetail)->Executed, LAMBDA(::vl_workflow_global::__vwsno17_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(__vwsn_this_, this))); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(::vl::__vwsn::This(this)->commandDetail)->Executed, LAMBDA(::vl_workflow_global::__vwsno26_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(__vwsn_this_, this))); } { auto __vwsn_resource_item_ = ::vl::__vwsn::This(__vwsn_resolver_)->ResolveResource(::vl::WString(L"res", false), ::vl::WString(L"Images/Tile", false)); @@ -2739,7 +2246,7 @@ namespace demo } } { - ::vl::__vwsn::EventAttach(::vl::__vwsn::This(::vl::__vwsn::This(this)->commandTile)->Executed, LAMBDA(::vl_workflow_global::__vwsno18_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(__vwsn_this_, this))); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(::vl::__vwsn::This(this)->commandTile)->Executed, LAMBDA(::vl_workflow_global::__vwsno27_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(__vwsn_this_, this))); } { auto __vwsn_resource_item_ = ::vl::__vwsn::This(__vwsn_resolver_)->ResolveResource(::vl::WString(L"res", false), ::vl::WString(L"Images/Information", false)); @@ -2757,7 +2264,7 @@ namespace demo } } { - ::vl::__vwsn::EventAttach(::vl::__vwsn::This(::vl::__vwsn::This(this)->commandInformation)->Executed, LAMBDA(::vl_workflow_global::__vwsno19_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(__vwsn_this_, this))); + ::vl::__vwsn::EventAttach(::vl::__vwsn::This(::vl::__vwsn::This(this)->commandInformation)->Executed, LAMBDA(::vl_workflow_global::__vwsno28_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(__vwsn_this_, this))); } { ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_7)->SetCommand(::vl::__vwsn::This(this)->commandNewFolder); @@ -2797,17 +2304,17 @@ namespace demo } { 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::__vwsnf20_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this))); + ::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->Subscribe(LAMBDA(::vl_workflow_global::__vwsnf29_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::__vwsnf21_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this))); + ::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->Subscribe(LAMBDA(::vl_workflow_global::__vwsnf30_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::__vwsnf22_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this))); + ::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->Subscribe(LAMBDA(::vl_workflow_global::__vwsnf31_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this))); ::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->Update(); } } @@ -3081,16 +2588,16 @@ Class (::demo::NewContactWindowConstructor) ::vl::__vwsn::This(::vl::__vwsn::This(this)->datePickerBirthday)->SetDate(::vl::__vwsn::This(::vl::__vwsn::This(this)->Contact.Obj())->GetBirthday()); } { - auto __vwsn_event_handler_ = LAMBDA(::vl_workflow_global::__vwsnf23_Demo_demo_NewContactWindowConstructor___vwsn_initialize_instance__(this)); + auto __vwsn_event_handler_ = LAMBDA(::vl_workflow_global::__vwsnf32_Demo_demo_NewContactWindowConstructor___vwsn_initialize_instance__(this)); ::vl::__vwsn::EventAttach(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_18)->Clicked, __vwsn_event_handler_); } { - auto __vwsn_event_handler_ = LAMBDA(::vl_workflow_global::__vwsnf24_Demo_demo_NewContactWindowConstructor___vwsn_initialize_instance__(this)); + auto __vwsn_event_handler_ = LAMBDA(::vl_workflow_global::__vwsnf33_Demo_demo_NewContactWindowConstructor___vwsn_initialize_instance__(this)); ::vl::__vwsn::EventAttach(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_21)->Clicked, __vwsn_event_handler_); } { auto __vwsn_created_subscription_ = ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc17_Demo_demo_NewContactWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription(this))); - ::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->Subscribe(LAMBDA(::vl_workflow_global::__vwsnf25_Demo_demo_NewContactWindowConstructor___vwsn_initialize_instance__(this))); + ::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->Subscribe(LAMBDA(::vl_workflow_global::__vwsnf34_Demo_demo_NewContactWindowConstructor___vwsn_initialize_instance__(this))); ::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->Update(); } } @@ -3271,16 +2778,16 @@ Class (::demo::NewFolderWindowConstructor) ::vl::__vwsn::This(::vl::__vwsn::This(::vl::__vwsn::This(this)->self)->GetContainerComposition())->AddChild(static_cast<::vl::presentation::compositions::GuiGraphicsComposition*>(::vl::__vwsn::This(this)->__vwsn_precompile_0)); } { - auto __vwsn_event_handler_ = LAMBDA(::vl_workflow_global::__vwsnf26_Demo_demo_NewFolderWindowConstructor___vwsn_initialize_instance__(this)); + auto __vwsn_event_handler_ = LAMBDA(::vl_workflow_global::__vwsnf35_Demo_demo_NewFolderWindowConstructor___vwsn_initialize_instance__(this)); ::vl::__vwsn::EventAttach(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_6)->Clicked, __vwsn_event_handler_); } { - auto __vwsn_event_handler_ = LAMBDA(::vl_workflow_global::__vwsnf27_Demo_demo_NewFolderWindowConstructor___vwsn_initialize_instance__(this)); + auto __vwsn_event_handler_ = LAMBDA(::vl_workflow_global::__vwsnf36_Demo_demo_NewFolderWindowConstructor___vwsn_initialize_instance__(this)); ::vl::__vwsn::EventAttach(::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_9)->Clicked, __vwsn_event_handler_); } { auto __vwsn_created_subscription_ = ::vl::__vwsn::This(__vwsn_this_)->AddSubscription(::vl::Ptr<::vl::reflection::description::IValueSubscription>(new ::vl_workflow_global::__vwsnc19_Demo_demo_NewFolderWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription(this))); - ::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->Subscribe(LAMBDA(::vl_workflow_global::__vwsnf28_Demo_demo_NewFolderWindowConstructor___vwsn_initialize_instance__(this))); + ::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->Subscribe(LAMBDA(::vl_workflow_global::__vwsnf37_Demo_demo_NewFolderWindowConstructor___vwsn_initialize_instance__(this))); ::vl::__vwsn::This(__vwsn_created_subscription_.Obj())->Update(); } } diff --git a/Tutorial/GacUI_Controls/AddressBook/UI/Source/DemoPartialClasses.h b/Tutorial/GacUI_Controls/AddressBook/UI/Source/DemoPartialClasses.h index 0d5ee8dd..6dc77f86 100644 --- a/Tutorial/GacUI_Controls/AddressBook/UI/Source/DemoPartialClasses.h +++ b/Tutorial/GacUI_Controls/AddressBook/UI/Source/DemoPartialClasses.h @@ -28,6 +28,43 @@ https://github.com/vczh-libraries 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 __vwsnf29_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + struct __vwsnf2_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + struct __vwsnf30_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + struct __vwsnf31_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + struct __vwsnf32_Demo_demo_NewContactWindowConstructor___vwsn_initialize_instance__; + struct __vwsnf33_Demo_demo_NewContactWindowConstructor___vwsn_initialize_instance__; + struct __vwsnf34_Demo_demo_NewContactWindowConstructor___vwsn_initialize_instance__; + struct __vwsnf35_Demo_demo_NewFolderWindowConstructor___vwsn_initialize_instance__; + struct __vwsnf36_Demo_demo_NewFolderWindowConstructor___vwsn_initialize_instance__; + struct __vwsnf37_Demo_demo_NewFolderWindowConstructor___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__; + struct __vwsno23_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + struct __vwsno24_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + struct __vwsno25_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + struct __vwsno26_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + struct __vwsno27_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + struct __vwsno28_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; 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; @@ -48,34 +85,6 @@ namespace vl_workflow_global 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 __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 __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_NewContactWindowConstructor___vwsn_initialize_instance__; - struct __vwsnf24_Demo_demo_NewContactWindowConstructor___vwsn_initialize_instance__; - struct __vwsnf25_Demo_demo_NewContactWindowConstructor___vwsn_initialize_instance__; - struct __vwsnf26_Demo_demo_NewFolderWindowConstructor___vwsn_initialize_instance__; - struct __vwsnf27_Demo_demo_NewFolderWindowConstructor___vwsn_initialize_instance__; - struct __vwsnf28_Demo_demo_NewFolderWindowConstructor___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__; - struct __vwsno14_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; - struct __vwsno15_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; - struct __vwsno16_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; - struct __vwsno17_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; - struct __vwsno18_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; - struct __vwsno19_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; } namespace demo @@ -109,27 +118,36 @@ namespace demo 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::__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::__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::__vwsnf29_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::__vwsnf30_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf31_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::__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__; + friend struct ::vl_workflow_global::__vwsno23_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsno24_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsno25_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsno26_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsno27_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsno28_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; #ifndef VCZH_DEBUG_NO_REFLECTION friend struct ::vl::reflection::description::CustomTypeDescriptorSelector; #endif @@ -198,9 +216,9 @@ namespace demo { friend class ::vl_workflow_global::__vwsnc17_Demo_demo_NewContactWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription; friend class ::vl_workflow_global::__vwsnc18_Demo_demo_NewContactWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener; - friend struct ::vl_workflow_global::__vwsnf23_Demo_demo_NewContactWindowConstructor___vwsn_initialize_instance__; - friend struct ::vl_workflow_global::__vwsnf24_Demo_demo_NewContactWindowConstructor___vwsn_initialize_instance__; - friend struct ::vl_workflow_global::__vwsnf25_Demo_demo_NewContactWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf32_Demo_demo_NewContactWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf33_Demo_demo_NewContactWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf34_Demo_demo_NewContactWindowConstructor___vwsn_initialize_instance__; #ifndef VCZH_DEBUG_NO_REFLECTION friend struct ::vl::reflection::description::CustomTypeDescriptorSelector; #endif @@ -244,9 +262,9 @@ namespace demo friend class ::demo::NewContactWindowConstructor; friend class ::vl_workflow_global::__vwsnc17_Demo_demo_NewContactWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription; friend class ::vl_workflow_global::__vwsnc18_Demo_demo_NewContactWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener; - friend struct ::vl_workflow_global::__vwsnf23_Demo_demo_NewContactWindowConstructor___vwsn_initialize_instance__; - friend struct ::vl_workflow_global::__vwsnf24_Demo_demo_NewContactWindowConstructor___vwsn_initialize_instance__; - friend struct ::vl_workflow_global::__vwsnf25_Demo_demo_NewContactWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf32_Demo_demo_NewContactWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf33_Demo_demo_NewContactWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf34_Demo_demo_NewContactWindowConstructor___vwsn_initialize_instance__; #ifndef VCZH_DEBUG_NO_REFLECTION friend struct ::vl::reflection::description::CustomTypeDescriptorSelector; #endif @@ -267,9 +285,9 @@ namespace demo { friend class ::vl_workflow_global::__vwsnc19_Demo_demo_NewFolderWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription; friend class ::vl_workflow_global::__vwsnc20_Demo_demo_NewFolderWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener; - friend struct ::vl_workflow_global::__vwsnf26_Demo_demo_NewFolderWindowConstructor___vwsn_initialize_instance__; - friend struct ::vl_workflow_global::__vwsnf27_Demo_demo_NewFolderWindowConstructor___vwsn_initialize_instance__; - friend struct ::vl_workflow_global::__vwsnf28_Demo_demo_NewFolderWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf35_Demo_demo_NewFolderWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf36_Demo_demo_NewFolderWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf37_Demo_demo_NewFolderWindowConstructor___vwsn_initialize_instance__; #ifndef VCZH_DEBUG_NO_REFLECTION friend struct ::vl::reflection::description::CustomTypeDescriptorSelector; #endif @@ -297,9 +315,9 @@ namespace demo friend class ::demo::NewFolderWindowConstructor; friend class ::vl_workflow_global::__vwsnc19_Demo_demo_NewFolderWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription; friend class ::vl_workflow_global::__vwsnc20_Demo_demo_NewFolderWindowConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener; - friend struct ::vl_workflow_global::__vwsnf26_Demo_demo_NewFolderWindowConstructor___vwsn_initialize_instance__; - friend struct ::vl_workflow_global::__vwsnf27_Demo_demo_NewFolderWindowConstructor___vwsn_initialize_instance__; - friend struct ::vl_workflow_global::__vwsnf28_Demo_demo_NewFolderWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf35_Demo_demo_NewFolderWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf36_Demo_demo_NewFolderWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf37_Demo_demo_NewFolderWindowConstructor___vwsn_initialize_instance__; #ifndef VCZH_DEBUG_NO_REFLECTION friend struct ::vl::reflection::description::CustomTypeDescriptorSelector; #endif @@ -376,6 +394,702 @@ namespace vl_workflow_global static Demo& Instance(); }; + +/*********************************************************************** +Closures +***********************************************************************/ + + 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()(const ::vl::reflection::description::Value& __vwsn_value_) 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::NewFolderWindow* window; + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnf12_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___(::demo::NewFolderWindow* __vwsnctor_window, ::demo::MainWindowConstructor* __vwsnctorthis_0); + + void operator()() 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()(const ::vl::reflection::description::Value& __vwsn_value_) 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()(const ::vl::reflection::description::Value& __vwsn_value_) 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___ + { + ::vl::Ptr<::demo::IContact> contact; + ::demo::NewContactWindow* window; + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnf17_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___(::vl::Ptr<::demo::IContact> __vwsnctor_contact, ::demo::NewContactWindow* __vwsnctor_window, ::demo::MainWindowConstructor* __vwsnctorthis_0); + + void operator()() 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()(const ::vl::reflection::description::Value& __vwsn_value_) 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); + + ::vl::Ptr<::vl::reflection::description::IValueEnumerable> operator()(const ::vl::reflection::description::Value& __vwsn_item_) 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()() 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()(const ::vl::reflection::description::Value& __vwsn_value_) 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 __vwsnf29_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ + { + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnf29_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0); + + void operator()(const ::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); + + ::vl::Ptr<::vl::presentation::GuiImageData> operator()(const ::vl::reflection::description::Value& __vwsn_item_) const; + }; + + struct __vwsnf30_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ + { + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnf30_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0); + + void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; + }; + + struct __vwsnf31_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ + { + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnf31_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0); + + void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; + }; + + struct __vwsnf32_Demo_demo_NewContactWindowConstructor___vwsn_initialize_instance__ + { + ::demo::NewContactWindowConstructor* __vwsnthis_0; + + __vwsnf32_Demo_demo_NewContactWindowConstructor___vwsn_initialize_instance__(::demo::NewContactWindowConstructor* __vwsnctorthis_0); + + void operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const; + }; + + struct __vwsnf33_Demo_demo_NewContactWindowConstructor___vwsn_initialize_instance__ + { + ::demo::NewContactWindowConstructor* __vwsnthis_0; + + __vwsnf33_Demo_demo_NewContactWindowConstructor___vwsn_initialize_instance__(::demo::NewContactWindowConstructor* __vwsnctorthis_0); + + void operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const; + }; + + struct __vwsnf34_Demo_demo_NewContactWindowConstructor___vwsn_initialize_instance__ + { + ::demo::NewContactWindowConstructor* __vwsnthis_0; + + __vwsnf34_Demo_demo_NewContactWindowConstructor___vwsn_initialize_instance__(::demo::NewContactWindowConstructor* __vwsnctorthis_0); + + void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; + }; + + struct __vwsnf35_Demo_demo_NewFolderWindowConstructor___vwsn_initialize_instance__ + { + ::demo::NewFolderWindowConstructor* __vwsnthis_0; + + __vwsnf35_Demo_demo_NewFolderWindowConstructor___vwsn_initialize_instance__(::demo::NewFolderWindowConstructor* __vwsnctorthis_0); + + void operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const; + }; + + struct __vwsnf36_Demo_demo_NewFolderWindowConstructor___vwsn_initialize_instance__ + { + ::demo::NewFolderWindowConstructor* __vwsnthis_0; + + __vwsnf36_Demo_demo_NewFolderWindowConstructor___vwsn_initialize_instance__(::demo::NewFolderWindowConstructor* __vwsnctorthis_0); + + void operator()(::vl::presentation::compositions::GuiGraphicsComposition* sender, ::vl::presentation::compositions::GuiEventArgs* arguments) const; + }; + + struct __vwsnf37_Demo_demo_NewFolderWindowConstructor___vwsn_initialize_instance__ + { + ::demo::NewFolderWindowConstructor* __vwsnthis_0; + + __vwsnf37_Demo_demo_NewFolderWindowConstructor___vwsn_initialize_instance__(::demo::NewFolderWindowConstructor* __vwsnctorthis_0); + + void operator()(const ::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); + + ::vl::WString operator()(const ::vl::reflection::description::Value& __vwsn_item_) const; + }; + + struct __vwsnf4_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ + { + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnf4_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0); + + ::vl::Ptr<::vl::presentation::GuiImageData> operator()(const ::vl::reflection::description::Value& __vwsn_item_) const; + }; + + struct __vwsnf5_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ + { + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnf5_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0); + + ::vl::Ptr<::vl::presentation::GuiImageData> operator()(const ::vl::reflection::description::Value& __vwsn_item_) const; + }; + + struct __vwsnf6_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ + { + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnf6_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0); + + ::vl::WString operator()(const ::vl::reflection::description::Value& __vwsn_item_) const; + }; + + struct __vwsnf7_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ + { + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnf7_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0); + + ::vl::WString operator()(const ::vl::reflection::description::Value& __vwsn_item_) const; + }; + + struct __vwsnf8_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ + { + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnf8_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0); + + ::vl::WString operator()(const ::vl::reflection::description::Value& __vwsn_item_) const; + }; + + struct __vwsnf9_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ + { + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnf9_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0); + + ::vl::WString operator()(const ::vl::reflection::description::Value& __vwsn_item_) const; + }; + + struct __vwsno23_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ + { + ::demo::MainWindow* __vwsn_this_; + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsno23_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindow* __vwsnctor___vwsn_this_, ::demo::MainWindowConstructor* __vwsnctorthis_0); + + void operator()(::vl::presentation::compositions::GuiGraphicsComposition* __vwsno_1, ::vl::presentation::compositions::GuiEventArgs* __vwsno_2) const; + }; + + struct __vwsno24_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ + { + ::demo::MainWindow* __vwsn_this_; + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsno24_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindow* __vwsnctor___vwsn_this_, ::demo::MainWindowConstructor* __vwsnctorthis_0); + + void operator()(::vl::presentation::compositions::GuiGraphicsComposition* __vwsno_1, ::vl::presentation::compositions::GuiEventArgs* __vwsno_2) const; + }; + + struct __vwsno25_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ + { + ::demo::MainWindow* __vwsn_this_; + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsno25_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindow* __vwsnctor___vwsn_this_, ::demo::MainWindowConstructor* __vwsnctorthis_0); + + void operator()(::vl::presentation::compositions::GuiGraphicsComposition* __vwsno_1, ::vl::presentation::compositions::GuiEventArgs* __vwsno_2) const; + }; + + struct __vwsno26_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ + { + ::demo::MainWindow* __vwsn_this_; + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsno26_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindow* __vwsnctor___vwsn_this_, ::demo::MainWindowConstructor* __vwsnctorthis_0); + + void operator()(::vl::presentation::compositions::GuiGraphicsComposition* __vwsno_1, ::vl::presentation::compositions::GuiEventArgs* __vwsno_2) const; + }; + + struct __vwsno27_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ + { + ::demo::MainWindow* __vwsn_this_; + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsno27_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindow* __vwsnctor___vwsn_this_, ::demo::MainWindowConstructor* __vwsnctorthis_0); + + void operator()(::vl::presentation::compositions::GuiGraphicsComposition* __vwsno_1, ::vl::presentation::compositions::GuiEventArgs* __vwsno_2) const; + }; + + struct __vwsno28_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__ + { + ::demo::MainWindow* __vwsn_this_; + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsno28_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindow* __vwsnctor___vwsn_this_, ::demo::MainWindowConstructor* __vwsnctorthis_0); + + void operator()(::vl::presentation::compositions::GuiGraphicsComposition* __vwsno_1, ::vl::presentation::compositions::GuiEventArgs* __vwsno_2) const; + }; + + class __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::Ptr<::demo::IViewModel> __vwsn_bind_cache_0; + ::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(); + 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::controls::GuiBindableTreeView* __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::controls::GuiBindableListView* __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_NewContactWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::demo::NewContactWindowConstructor* __vwsnthis_0; + + __vwsnc17_Demo_demo_NewContactWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription(::demo::NewContactWindowConstructor* __vwsnctorthis_0); + + ::demo::NewContactWindow* __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(); + 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_NewContactWindowConstructor___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::NewContactWindowConstructor* __vwsnthis_1; + + __vwsnc18_Demo_demo_NewContactWindowConstructor___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::NewContactWindowConstructor* __vwsnctorthis_1); + + ::vl::reflection::description::IValueSubscription* GetSubscription() override; + bool GetStopped() override; + bool StopListening() override; + }; + + class __vwsnc19_Demo_demo_NewFolderWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::demo::NewFolderWindowConstructor* __vwsnthis_0; + + __vwsnc19_Demo_demo_NewFolderWindowConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription(::demo::NewFolderWindowConstructor* __vwsnctorthis_0); + + ::vl::presentation::controls::GuiDocumentLabel* __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 __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::Ptr<::demo::IViewModel> __vwsn_bind_cache_0; + ::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(); + 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 __vwsnc20_Demo_demo_NewFolderWindowConstructor___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::NewFolderWindowConstructor* __vwsnthis_1; + + __vwsnc20_Demo_demo_NewFolderWindowConstructor___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::NewFolderWindowConstructor* __vwsnctorthis_1); + + ::vl::reflection::description::IValueSubscription* GetSubscription() override; + bool GetStopped() override; + bool StopListening() 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::Ptr<::demo::IViewModel> __vwsn_bind_cache_0; + ::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(); + 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::Ptr<::demo::IViewModel> __vwsn_bind_cache_0; + ::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(); + 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::Ptr<::demo::IViewModel> __vwsn_bind_cache_0; + ::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(); + 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::Ptr<::demo::IViewModel> __vwsn_bind_cache_0; + ::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(); + void __vwsn_bind_initialize_(); + ::vl::Ptr<::vl::reflection::description::IValueListener> Subscribe(const ::vl::Func& __vwsn_bind_callback_) override; + bool Update() override; + bool Close() override; + }; } #if defined( _MSC_VER) diff --git a/Tutorial/GacUI_Controls/AddressBook/UI/Source/MainWindow.h b/Tutorial/GacUI_Controls/AddressBook/UI/Source/MainWindow.h index 3889baf8..bb8381f8 100644 --- a/Tutorial/GacUI_Controls/AddressBook/UI/Source/MainWindow.h +++ b/Tutorial/GacUI_Controls/AddressBook/UI/Source/MainWindow.h @@ -45,27 +45,36 @@ namespace demo 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::__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::__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::__vwsnf29_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::__vwsnf30_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsnf31_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::__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__; + friend struct ::vl_workflow_global::__vwsno23_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsno24_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsno25_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsno26_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsno27_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; + friend struct ::vl_workflow_global::__vwsno28_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; #ifndef VCZH_DEBUG_NO_REFLECTION friend struct ::vl::reflection::description::CustomTypeDescriptorSelector; #endif diff --git a/Tutorial/GacUI_Controls/ColorPicker/ColorPicker.vcxproj b/Tutorial/GacUI_Controls/ColorPicker/ColorPicker.vcxproj index 98058c8c..fc755dac 100644 --- a/Tutorial/GacUI_Controls/ColorPicker/ColorPicker.vcxproj +++ b/Tutorial/GacUI_Controls/ColorPicker/ColorPicker.vcxproj @@ -53,7 +53,7 @@ Level3 Disabled - WIN32;_DEBUG;_WINDOWS;%(PreprocessorDefinitions) + WIN32;_DEBUG;_WINDOWS;%(PreprocessorDefinitions);VCZH_DEBUG_NO_REFLECTION true @@ -69,7 +69,7 @@ MaxSpeed true true - WIN32;NDEBUG;_WINDOWS;%(PreprocessorDefinitions) + WIN32;NDEBUG;_WINDOWS;%(PreprocessorDefinitions);VCZH_DEBUG_NO_REFLECTION true @@ -91,8 +91,8 @@ - - {8018d622-66ba-4e65-9d03-bdac37ea9a54} + + {96c559ca-9718-4bec-a053-28a0ab6a8ca2} diff --git a/Tutorial/GacUI_Controls/ColorPicker/UI/Resource.xml b/Tutorial/GacUI_Controls/ColorPicker/UI/Resource.xml index 4c1ff5e5..9a07ae1a 100644 --- a/Tutorial/GacUI_Controls/ColorPicker/UI/Resource.xml +++ b/Tutorial/GacUI_Controls/ColorPicker/UI/Resource.xml @@ -63,8 +63,8 @@ demo::ColorBomboItemTemplate - - name + + ItemName ViewModel.ColorItems demo::ColorListItemTemplate diff --git a/Tutorial/GacUI_Controls/ColorPicker/UI/Source/DemoPartialClasses.cpp b/Tutorial/GacUI_Controls/ColorPicker/UI/Source/DemoPartialClasses.cpp index af860c52..d04fc646 100644 --- a/Tutorial/GacUI_Controls/ColorPicker/UI/Source/DemoPartialClasses.cpp +++ b/Tutorial/GacUI_Controls/ColorPicker/UI/Source/DemoPartialClasses.cpp @@ -38,204 +38,17 @@ END_GLOBAL_STORAGE_CLASS(vl_workflow_global_Demo) namespace vl_workflow_global { /*********************************************************************** -Closure Definitions +Global Functions ***********************************************************************/ - struct __vwsnf1_Demo_demo_ColorBomboItemTemplateConstructor___vwsn_initialize_instance__ + Demo& Demo::Instance() { - ::demo::ColorBomboItemTemplateConstructor* __vwsnthis_0; + return Getvl_workflow_global_Demo().instance; + } - __vwsnf1_Demo_demo_ColorBomboItemTemplateConstructor___vwsn_initialize_instance__(::demo::ColorBomboItemTemplateConstructor* __vwsnctorthis_0); - - void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; - }; - - struct __vwsnf2_Demo_demo_ColorBomboItemTemplateConstructor___vwsn_initialize_instance__ - { - ::demo::ColorBomboItemTemplateConstructor* __vwsnthis_0; - - __vwsnf2_Demo_demo_ColorBomboItemTemplateConstructor___vwsn_initialize_instance__(::demo::ColorBomboItemTemplateConstructor* __vwsnctorthis_0); - - void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; - }; - - struct __vwsnf3_Demo_demo_ColorListItemTemplateConstructor___vwsn_initialize_instance__ - { - ::demo::ColorListItemTemplateConstructor* __vwsnthis_0; - - __vwsnf3_Demo_demo_ColorListItemTemplateConstructor___vwsn_initialize_instance__(::demo::ColorListItemTemplateConstructor* __vwsnctorthis_0); - - void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; - }; - - struct __vwsnf4_Demo_demo_ColorListItemTemplateConstructor___vwsn_initialize_instance__ - { - ::demo::ColorListItemTemplateConstructor* __vwsnthis_0; - - __vwsnf4_Demo_demo_ColorListItemTemplateConstructor___vwsn_initialize_instance__(::demo::ColorListItemTemplateConstructor* __vwsnctorthis_0); - - void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; - }; - - class __vwsnc10_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_presentation_templates_GuiTemplate_IFactory : public ::vl::Object, public virtual ::vl::presentation::templates::GuiTemplate::IFactory - { - public: - ::demo::MainWindowConstructor* __vwsnthis_0; - - __vwsnc10_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_presentation_templates_GuiTemplate_IFactory(::demo::MainWindowConstructor* __vwsnctorthis_0); - - ::vl::presentation::templates::GuiTemplate* CreateTemplate(const ::vl::reflection::description::Value& __vwsn_viewModel_) override; - }; - - class __vwsnc1_Demo_demo_ColorBomboItemTemplateConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription - { - public: - ::demo::ColorBomboItemTemplateConstructor* __vwsnthis_0; - - __vwsnc1_Demo_demo_ColorBomboItemTemplateConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription(::demo::ColorBomboItemTemplateConstructor* __vwsnctorthis_0); - - ::demo::ColorBomboItemTemplate* __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(); - 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_ColorBomboItemTemplateConstructor___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::ColorBomboItemTemplateConstructor* __vwsnthis_1; - - __vwsnc2_Demo_demo_ColorBomboItemTemplateConstructor___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::ColorBomboItemTemplateConstructor* __vwsnctorthis_1); - - ::vl::reflection::description::IValueSubscription* GetSubscription() override; - bool GetStopped() override; - bool StopListening() override; - }; - - class __vwsnc3_Demo_demo_ColorBomboItemTemplateConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription - { - public: - ::demo::ColorBomboItemTemplateConstructor* __vwsnthis_0; - - __vwsnc3_Demo_demo_ColorBomboItemTemplateConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription(::demo::ColorBomboItemTemplateConstructor* __vwsnctorthis_0); - - ::demo::ColorBomboItemTemplate* __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_ColorBomboItemTemplateConstructor___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::ColorBomboItemTemplateConstructor* __vwsnthis_1; - - __vwsnc4_Demo_demo_ColorBomboItemTemplateConstructor___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::ColorBomboItemTemplateConstructor* __vwsnctorthis_1); - - ::vl::reflection::description::IValueSubscription* GetSubscription() override; - bool GetStopped() override; - bool StopListening() override; - }; - - class __vwsnc5_Demo_demo_ColorListItemTemplateConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription - { - public: - ::demo::ColorListItemTemplateConstructor* __vwsnthis_0; - - __vwsnc5_Demo_demo_ColorListItemTemplateConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription(::demo::ColorListItemTemplateConstructor* __vwsnctorthis_0); - - ::demo::ColorListItemTemplate* __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_ColorListItemTemplateConstructor___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::ColorListItemTemplateConstructor* __vwsnthis_1; - - __vwsnc6_Demo_demo_ColorListItemTemplateConstructor___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::ColorListItemTemplateConstructor* __vwsnctorthis_1); - - ::vl::reflection::description::IValueSubscription* GetSubscription() override; - bool GetStopped() override; - bool StopListening() override; - }; - - class __vwsnc7_Demo_demo_ColorListItemTemplateConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription - { - public: - ::demo::ColorListItemTemplateConstructor* __vwsnthis_0; - - __vwsnc7_Demo_demo_ColorListItemTemplateConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription(::demo::ColorListItemTemplateConstructor* __vwsnctorthis_0); - - ::demo::ColorListItemTemplate* __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_ColorListItemTemplateConstructor___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::ColorListItemTemplateConstructor* __vwsnthis_1; - - __vwsnc8_Demo_demo_ColorListItemTemplateConstructor___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::ColorListItemTemplateConstructor* __vwsnctorthis_1); - - ::vl::reflection::description::IValueSubscription* GetSubscription() override; - bool GetStopped() override; - bool StopListening() override; - }; - - class __vwsnc9_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_presentation_templates_GuiTemplate_IFactory : public ::vl::Object, public virtual ::vl::presentation::templates::GuiTemplate::IFactory - { - public: - ::demo::MainWindowConstructor* __vwsnthis_0; - - __vwsnc9_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_presentation_templates_GuiTemplate_IFactory(::demo::MainWindowConstructor* __vwsnctorthis_0); - - ::vl::presentation::templates::GuiTemplate* CreateTemplate(const ::vl::reflection::description::Value& __vwsn_viewModel_) override; - }; +/*********************************************************************** +Closures +***********************************************************************/ //------------------------------------------------------------------- @@ -311,6 +124,19 @@ Closure Definitions //------------------------------------------------------------------- + __vwsnf5_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::__vwsnf5_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(::demo::MainWindowConstructor* __vwsnctorthis_0) + :__vwsnthis_0(__vwsnctorthis_0) + { + } + + ::vl::WString __vwsnf5_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__::operator()(const ::vl::reflection::description::Value& __vwsn_item_) const + { + auto item = ::vl::__vwsn::Unbox<::vl::Ptr<::demo::IColorItem>>(__vwsn_item_); + return ::vl::__vwsn::This(item.Obj())->GetItemName(); + } + + //------------------------------------------------------------------- + __vwsnc10_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_presentation_templates_GuiTemplate_IFactory::__vwsnc10_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_presentation_templates_GuiTemplate_IFactory(::demo::MainWindowConstructor* __vwsnctorthis_0) :__vwsnthis_0(__vwsnctorthis_0) { @@ -747,14 +573,6 @@ Closure Definitions throw ::vl::Exception(::vl::WString(L"Cannot find a matched control template to create.", false)); } -/*********************************************************************** -Global Functions -***********************************************************************/ - - Demo& Demo::Instance() - { - return Getvl_workflow_global_Demo().instance; - } } /*********************************************************************** @@ -990,7 +808,7 @@ Class (::demo::MainWindowConstructor) (::vl::__vwsn::This(this)->__vwsn_precompile_6 = new ::vl::presentation::controls::GuiBindableTextList(__vwsn_controlStyle_, ::vl::__vwsn::This(::vl::presentation::theme::GetCurrentTheme())->CreateTextListItemStyle())); } { - ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_6)->SetTextProperty(::vl::WString(L"name", false)); + ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_6)->SetTextProperty(LAMBDA(::vl_workflow_global::__vwsnf5_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__(this))); } { ::vl::__vwsn::This(::vl::__vwsn::This(this)->__vwsn_precompile_6)->SetVerticalAlwaysVisible(::vl::__vwsn::Parse(::vl::WString(L"false", false))); diff --git a/Tutorial/GacUI_Controls/ColorPicker/UI/Source/DemoPartialClasses.h b/Tutorial/GacUI_Controls/ColorPicker/UI/Source/DemoPartialClasses.h index d616b5ef..36a557dc 100644 --- a/Tutorial/GacUI_Controls/ColorPicker/UI/Source/DemoPartialClasses.h +++ b/Tutorial/GacUI_Controls/ColorPicker/UI/Source/DemoPartialClasses.h @@ -28,6 +28,11 @@ https://github.com/vczh-libraries namespace vl_workflow_global { + struct __vwsnf1_Demo_demo_ColorBomboItemTemplateConstructor___vwsn_initialize_instance__; + struct __vwsnf2_Demo_demo_ColorBomboItemTemplateConstructor___vwsn_initialize_instance__; + struct __vwsnf3_Demo_demo_ColorListItemTemplateConstructor___vwsn_initialize_instance__; + struct __vwsnf4_Demo_demo_ColorListItemTemplateConstructor___vwsn_initialize_instance__; + struct __vwsnf5_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; class __vwsnc10_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_presentation_templates_GuiTemplate_IFactory; class __vwsnc1_Demo_demo_ColorBomboItemTemplateConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription; class __vwsnc2_Demo_demo_ColorBomboItemTemplateConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener; @@ -38,10 +43,6 @@ namespace vl_workflow_global class __vwsnc7_Demo_demo_ColorListItemTemplateConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription; class __vwsnc8_Demo_demo_ColorListItemTemplateConstructor___vwsn_initialize_instance__Subscribe__vl_reflection_description_IValueListener; class __vwsnc9_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_presentation_templates_GuiTemplate_IFactory; - struct __vwsnf1_Demo_demo_ColorBomboItemTemplateConstructor___vwsn_initialize_instance__; - struct __vwsnf2_Demo_demo_ColorBomboItemTemplateConstructor___vwsn_initialize_instance__; - struct __vwsnf3_Demo_demo_ColorListItemTemplateConstructor___vwsn_initialize_instance__; - struct __vwsnf4_Demo_demo_ColorListItemTemplateConstructor___vwsn_initialize_instance__; } namespace demo @@ -146,6 +147,7 @@ namespace demo { friend class ::vl_workflow_global::__vwsnc10_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_presentation_templates_GuiTemplate_IFactory; friend class ::vl_workflow_global::__vwsnc9_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_presentation_templates_GuiTemplate_IFactory; + friend struct ::vl_workflow_global::__vwsnf5_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; #ifndef VCZH_DEBUG_NO_REFLECTION friend struct ::vl::reflection::description::CustomTypeDescriptorSelector; #endif @@ -170,6 +172,7 @@ namespace demo friend class ::demo::MainWindowConstructor; friend class ::vl_workflow_global::__vwsnc10_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_presentation_templates_GuiTemplate_IFactory; friend class ::vl_workflow_global::__vwsnc9_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_presentation_templates_GuiTemplate_IFactory; + friend struct ::vl_workflow_global::__vwsnf5_Demo_demo_MainWindowConstructor___vwsn_initialize_instance__; #ifndef VCZH_DEBUG_NO_REFLECTION friend struct ::vl::reflection::description::CustomTypeDescriptorSelector; #endif @@ -212,6 +215,215 @@ namespace vl_workflow_global static Demo& Instance(); }; + +/*********************************************************************** +Closures +***********************************************************************/ + + struct __vwsnf1_Demo_demo_ColorBomboItemTemplateConstructor___vwsn_initialize_instance__ + { + ::demo::ColorBomboItemTemplateConstructor* __vwsnthis_0; + + __vwsnf1_Demo_demo_ColorBomboItemTemplateConstructor___vwsn_initialize_instance__(::demo::ColorBomboItemTemplateConstructor* __vwsnctorthis_0); + + void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; + }; + + struct __vwsnf2_Demo_demo_ColorBomboItemTemplateConstructor___vwsn_initialize_instance__ + { + ::demo::ColorBomboItemTemplateConstructor* __vwsnthis_0; + + __vwsnf2_Demo_demo_ColorBomboItemTemplateConstructor___vwsn_initialize_instance__(::demo::ColorBomboItemTemplateConstructor* __vwsnctorthis_0); + + void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; + }; + + struct __vwsnf3_Demo_demo_ColorListItemTemplateConstructor___vwsn_initialize_instance__ + { + ::demo::ColorListItemTemplateConstructor* __vwsnthis_0; + + __vwsnf3_Demo_demo_ColorListItemTemplateConstructor___vwsn_initialize_instance__(::demo::ColorListItemTemplateConstructor* __vwsnctorthis_0); + + void operator()(const ::vl::reflection::description::Value& __vwsn_value_) const; + }; + + struct __vwsnf4_Demo_demo_ColorListItemTemplateConstructor___vwsn_initialize_instance__ + { + ::demo::ColorListItemTemplateConstructor* __vwsnthis_0; + + __vwsnf4_Demo_demo_ColorListItemTemplateConstructor___vwsn_initialize_instance__(::demo::ColorListItemTemplateConstructor* __vwsnctorthis_0); + + void operator()(const ::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); + + ::vl::WString operator()(const ::vl::reflection::description::Value& __vwsn_item_) const; + }; + + class __vwsnc10_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_presentation_templates_GuiTemplate_IFactory : public ::vl::Object, public virtual ::vl::presentation::templates::GuiTemplate::IFactory + { + public: + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnc10_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_presentation_templates_GuiTemplate_IFactory(::demo::MainWindowConstructor* __vwsnctorthis_0); + + ::vl::presentation::templates::GuiTemplate* CreateTemplate(const ::vl::reflection::description::Value& __vwsn_viewModel_) override; + }; + + class __vwsnc1_Demo_demo_ColorBomboItemTemplateConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::demo::ColorBomboItemTemplateConstructor* __vwsnthis_0; + + __vwsnc1_Demo_demo_ColorBomboItemTemplateConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription(::demo::ColorBomboItemTemplateConstructor* __vwsnctorthis_0); + + ::demo::ColorBomboItemTemplate* __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(); + 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_ColorBomboItemTemplateConstructor___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::ColorBomboItemTemplateConstructor* __vwsnthis_1; + + __vwsnc2_Demo_demo_ColorBomboItemTemplateConstructor___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::ColorBomboItemTemplateConstructor* __vwsnctorthis_1); + + ::vl::reflection::description::IValueSubscription* GetSubscription() override; + bool GetStopped() override; + bool StopListening() override; + }; + + class __vwsnc3_Demo_demo_ColorBomboItemTemplateConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::demo::ColorBomboItemTemplateConstructor* __vwsnthis_0; + + __vwsnc3_Demo_demo_ColorBomboItemTemplateConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription(::demo::ColorBomboItemTemplateConstructor* __vwsnctorthis_0); + + ::demo::ColorBomboItemTemplate* __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_ColorBomboItemTemplateConstructor___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::ColorBomboItemTemplateConstructor* __vwsnthis_1; + + __vwsnc4_Demo_demo_ColorBomboItemTemplateConstructor___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::ColorBomboItemTemplateConstructor* __vwsnctorthis_1); + + ::vl::reflection::description::IValueSubscription* GetSubscription() override; + bool GetStopped() override; + bool StopListening() override; + }; + + class __vwsnc5_Demo_demo_ColorListItemTemplateConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::demo::ColorListItemTemplateConstructor* __vwsnthis_0; + + __vwsnc5_Demo_demo_ColorListItemTemplateConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription(::demo::ColorListItemTemplateConstructor* __vwsnctorthis_0); + + ::demo::ColorListItemTemplate* __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_ColorListItemTemplateConstructor___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::ColorListItemTemplateConstructor* __vwsnthis_1; + + __vwsnc6_Demo_demo_ColorListItemTemplateConstructor___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::ColorListItemTemplateConstructor* __vwsnctorthis_1); + + ::vl::reflection::description::IValueSubscription* GetSubscription() override; + bool GetStopped() override; + bool StopListening() override; + }; + + class __vwsnc7_Demo_demo_ColorListItemTemplateConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription : public ::vl::Object, public virtual ::vl::reflection::description::IValueSubscription + { + public: + ::demo::ColorListItemTemplateConstructor* __vwsnthis_0; + + __vwsnc7_Demo_demo_ColorListItemTemplateConstructor___vwsn_initialize_instance___vl_reflection_description_IValueSubscription(::demo::ColorListItemTemplateConstructor* __vwsnctorthis_0); + + ::demo::ColorListItemTemplate* __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_ColorListItemTemplateConstructor___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::ColorListItemTemplateConstructor* __vwsnthis_1; + + __vwsnc8_Demo_demo_ColorListItemTemplateConstructor___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::ColorListItemTemplateConstructor* __vwsnctorthis_1); + + ::vl::reflection::description::IValueSubscription* GetSubscription() override; + bool GetStopped() override; + bool StopListening() override; + }; + + class __vwsnc9_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_presentation_templates_GuiTemplate_IFactory : public ::vl::Object, public virtual ::vl::presentation::templates::GuiTemplate::IFactory + { + public: + ::demo::MainWindowConstructor* __vwsnthis_0; + + __vwsnc9_Demo_demo_MainWindowConstructor___vwsn_initialize_instance___vl_presentation_templates_GuiTemplate_IFactory(::demo::MainWindowConstructor* __vwsnctorthis_0); + + ::vl::presentation::templates::GuiTemplate* CreateTemplate(const ::vl::reflection::description::Value& __vwsn_viewModel_) override; + }; } #if defined( _MSC_VER) diff --git a/Tutorial/GacUI_Controls/GacUI_Controls.sln b/Tutorial/GacUI_Controls/GacUI_Controls.sln index 445e2579..32d04926 100644 --- a/Tutorial/GacUI_Controls/GacUI_Controls.sln +++ b/Tutorial/GacUI_Controls/GacUI_Controls.sln @@ -1,14 +1,12 @@  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}") = "ContainersAndButtons", "ContainersAndButtons\ContainersAndButtons.vcxproj", "{0C211930-C5DA-4567-A752-1D847CADEC1C}" EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Lib", "Lib", "{739DADD1-5B91-464A-B477-7581D6323E2B}" EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "GacUI", "..\Lib\GacUI\GacUI.vcxproj", "{8018D622-66BA-4E65-9D03-BDAC37EA9A54}" -EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "GacUILite", "..\Lib\GacUILite\GacUILite.vcxproj", "{96C559CA-9718-4BEC-A053-28A0AB6A8CA2}" EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "TextEditor", "TextEditor\TextEditor.vcxproj", "{66069A5E-F697-42E2-8D9E-7D6E82019838}" @@ -27,10 +25,6 @@ Global {0C211930-C5DA-4567-A752-1D847CADEC1C}.Debug|Win32.Build.0 = Debug|Win32 {0C211930-C5DA-4567-A752-1D847CADEC1C}.Release|Win32.ActiveCfg = Release|Win32 {0C211930-C5DA-4567-A752-1D847CADEC1C}.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 {96C559CA-9718-4BEC-A053-28A0AB6A8CA2}.Debug|Win32.ActiveCfg = Debug|Win32 {96C559CA-9718-4BEC-A053-28A0AB6A8CA2}.Debug|Win32.Build.0 = Debug|Win32 {96C559CA-9718-4BEC-A053-28A0AB6A8CA2}.Release|Win32.ActiveCfg = Release|Win32 @@ -52,7 +46,6 @@ Global HideSolutionNode = FALSE EndGlobalSection GlobalSection(NestedProjects) = preSolution - {8018D622-66BA-4E65-9D03-BDAC37EA9A54} = {739DADD1-5B91-464A-B477-7581D6323E2B} {96C559CA-9718-4BEC-A053-28A0AB6A8CA2} = {739DADD1-5B91-464A-B477-7581D6323E2B} EndGlobalSection EndGlobal