mirror of
https://github.com/vczh-libraries/Release.git
synced 2026-03-27 01:23:05 +08:00
Update release
This commit is contained in:
@@ -43013,7 +43013,7 @@ GuiResourceNodeBase
|
||||
auto current = parent;
|
||||
while (current && current->GetParent())
|
||||
{
|
||||
resourcePath = parent->GetName() + L"/" + resourcePath;
|
||||
resourcePath = current->GetName() + L"/" + resourcePath;
|
||||
current = current->GetParent();
|
||||
}
|
||||
return resourcePath;
|
||||
|
||||
@@ -613,9 +613,35 @@ GuiDefaultInstanceLoader
|
||||
}
|
||||
}
|
||||
break;
|
||||
case GuiInstancePropertyInfo::SupportAssign:
|
||||
case GuiInstancePropertyInfo::SupportArray:
|
||||
{
|
||||
{
|
||||
auto refArray = MakePtr<WfConstructorExpression>();
|
||||
FOREACH(ArgumentInfo, item, arguments.GetByIndex(index))
|
||||
{
|
||||
auto argument = MakePtr<WfConstructorArgument>();
|
||||
argument->key = item.expression;
|
||||
refArray->arguments.Add(argument);
|
||||
}
|
||||
|
||||
auto refValue = MakePtr<WfReferenceExpression>();
|
||||
refValue->name.value = variableName.ToString();
|
||||
|
||||
auto refProp = MakePtr<WfMemberExpression>();
|
||||
refProp->parent = refValue;
|
||||
refProp->name.value = prop.ToString();
|
||||
|
||||
auto assign = MakePtr<WfBinaryExpression>();
|
||||
assign->op = WfBinaryOperator::Assign;
|
||||
assign->first = refProp;
|
||||
assign->second = refArray;
|
||||
|
||||
auto stat = MakePtr<WfExpressionStatement>();
|
||||
stat->expression = assign;
|
||||
block->statements.Add(stat);
|
||||
}
|
||||
break;
|
||||
case GuiInstancePropertyInfo::SupportAssign:
|
||||
{
|
||||
auto refValue = MakePtr<WfReferenceExpression>();
|
||||
refValue->name.value = variableName.ToString();
|
||||
|
||||
@@ -3275,6 +3301,7 @@ GuiDocumentViewerInstanceLoader
|
||||
void GetPropertyNames(const TypeInfo& typeInfo, collections::List<GlobalStringKey>& propertyNames)override
|
||||
{
|
||||
propertyNames.Add(GlobalStringKey::Empty);
|
||||
BASE_TYPE::GetPropertyNames(typeInfo, propertyNames);
|
||||
}
|
||||
|
||||
Ptr<GuiInstancePropertyInfo> GetPropertyType(const PropertyInfo& propertyInfo)override
|
||||
@@ -3318,7 +3345,7 @@ GuiDocumentViewerInstanceLoader
|
||||
{
|
||||
return block;
|
||||
}
|
||||
return nullptr;
|
||||
return BASE_TYPE::AssignParameters(typeInfo, variableName, arguments, errors);
|
||||
}
|
||||
};
|
||||
#undef BASE_TYPE
|
||||
@@ -3339,6 +3366,7 @@ GuiDocumentLabelInstanceLoader
|
||||
void GetPropertyNames(const TypeInfo& typeInfo, collections::List<GlobalStringKey>& propertyNames)override
|
||||
{
|
||||
propertyNames.Add(GlobalStringKey::Empty);
|
||||
BASE_TYPE::GetPropertyNames(typeInfo, propertyNames);
|
||||
}
|
||||
|
||||
Ptr<GuiInstancePropertyInfo> GetPropertyType(const PropertyInfo& propertyInfo)override
|
||||
@@ -3382,7 +3410,7 @@ GuiDocumentLabelInstanceLoader
|
||||
{
|
||||
return block;
|
||||
}
|
||||
return nullptr;
|
||||
return BASE_TYPE::AssignParameters(typeInfo, variableName, arguments, errors);
|
||||
}
|
||||
};
|
||||
#undef BASE_TYPE
|
||||
@@ -3674,6 +3702,7 @@ GuiListViewInstanceLoader
|
||||
propertyNames.Add(_View);
|
||||
propertyNames.Add(_IconSize);
|
||||
}
|
||||
BASE_TYPE::GetConstructorParameters(typeInfo, propertyNames);
|
||||
}
|
||||
|
||||
Ptr<GuiInstancePropertyInfo> GetPropertyType(const typename BASE_TYPE::PropertyInfo& propertyInfo)override
|
||||
@@ -3690,7 +3719,7 @@ GuiListViewInstanceLoader
|
||||
info->scope = GuiInstancePropertyInfo::Constructor;
|
||||
return info;
|
||||
}
|
||||
return IGuiInstanceLoader::GetPropertyType(propertyInfo);
|
||||
return BASE_TYPE::GetPropertyType(propertyInfo);
|
||||
}
|
||||
};
|
||||
#undef BASE_TYPE
|
||||
@@ -3721,11 +3750,11 @@ GuiListViewInstanceLoader
|
||||
|
||||
void GetConstructorParameters(const TypeInfo& typeInfo, collections::List<GlobalStringKey>& propertyNames)override
|
||||
{
|
||||
BASE_TYPE::GetConstructorParameters(typeInfo, propertyNames);
|
||||
if (typeInfo.typeName == GetTypeName())
|
||||
{
|
||||
propertyNames.Add(_ItemSource);
|
||||
}
|
||||
BASE_TYPE::GetConstructorParameters(typeInfo, propertyNames);
|
||||
}
|
||||
|
||||
Ptr<GuiInstancePropertyInfo> GetPropertyType(const PropertyInfo& propertyInfo)override
|
||||
@@ -3808,6 +3837,7 @@ GuiTreeViewInstanceLoader
|
||||
{
|
||||
propertyNames.Add(_Nodes);
|
||||
}
|
||||
BASE_TYPE::GetPropertyNames(typeInfo, propertyNames);
|
||||
}
|
||||
|
||||
void GetConstructorParameters(const typename BASE_TYPE::TypeInfo& typeInfo, collections::List<GlobalStringKey>& propertyNames)override
|
||||
@@ -3817,6 +3847,7 @@ GuiTreeViewInstanceLoader
|
||||
propertyNames.Add(_Nodes);
|
||||
propertyNames.Add(_IconSize);
|
||||
}
|
||||
BASE_TYPE::GetConstructorParameters(typeInfo, propertyNames);
|
||||
}
|
||||
|
||||
Ptr<GuiInstancePropertyInfo> GetPropertyType(const typename BASE_TYPE::PropertyInfo& propertyInfo)override
|
||||
@@ -3834,7 +3865,7 @@ GuiTreeViewInstanceLoader
|
||||
info->scope = GuiInstancePropertyInfo::Constructor;
|
||||
return info;
|
||||
}
|
||||
return IGuiInstanceLoader::GetPropertyType(propertyInfo);
|
||||
return BASE_TYPE::GetPropertyType(propertyInfo);
|
||||
}
|
||||
|
||||
Ptr<workflow::WfStatement> AssignParameters(const typename BASE_TYPE::TypeInfo& typeInfo, GlobalStringKey variableName, typename BASE_TYPE::ArgumentMap& arguments, collections::List<WString>& errors)override
|
||||
@@ -3874,7 +3905,7 @@ GuiTreeViewInstanceLoader
|
||||
{
|
||||
return block;
|
||||
}
|
||||
return nullptr;
|
||||
return BASE_TYPE::AssignParameters(typeInfo, variableName, arguments, errors);
|
||||
}
|
||||
};
|
||||
#undef BASE_TYPE
|
||||
@@ -3905,11 +3936,11 @@ GuiTreeViewInstanceLoader
|
||||
|
||||
void GetConstructorParameters(const TypeInfo& typeInfo, collections::List<GlobalStringKey>& propertyNames)override
|
||||
{
|
||||
BASE_TYPE::GetConstructorParameters(typeInfo, propertyNames);
|
||||
if (typeInfo.typeName == GetTypeName())
|
||||
{
|
||||
propertyNames.Add(_ItemSource);
|
||||
}
|
||||
BASE_TYPE::GetConstructorParameters(typeInfo, propertyNames);
|
||||
}
|
||||
|
||||
Ptr<GuiInstancePropertyInfo> GetPropertyType(const PropertyInfo& propertyInfo)override
|
||||
@@ -3966,6 +3997,7 @@ GuiBindableTextListInstanceLoader
|
||||
{
|
||||
propertyNames.Add(_ItemSource);
|
||||
}
|
||||
BASE_TYPE::GetConstructorParameters(typeInfo, propertyNames);
|
||||
}
|
||||
|
||||
Ptr<GuiInstancePropertyInfo> GetPropertyType(const PropertyInfo& propertyInfo)override
|
||||
@@ -3977,7 +4009,7 @@ GuiBindableTextListInstanceLoader
|
||||
info->required = true;
|
||||
return info;
|
||||
}
|
||||
return IGuiInstanceLoader::GetPropertyType(propertyInfo);
|
||||
return BASE_TYPE::GetPropertyType(propertyInfo);
|
||||
}
|
||||
};
|
||||
#undef BASE_TYPE
|
||||
@@ -4187,6 +4219,7 @@ GuiBindableDataGridInstanceLoader
|
||||
void GetPropertyNames(const TypeInfo& typeInfo, collections::List<GlobalStringKey>& propertyNames)override
|
||||
{
|
||||
propertyNames.Add(_Columns);
|
||||
BASE_TYPE::GetPropertyNames(typeInfo, propertyNames);
|
||||
}
|
||||
|
||||
void GetConstructorParameters(const TypeInfo& typeInfo, collections::List<GlobalStringKey>& propertyNames)override
|
||||
@@ -4196,6 +4229,7 @@ GuiBindableDataGridInstanceLoader
|
||||
propertyNames.Add(_ItemSource);
|
||||
propertyNames.Add(_ViewModelContext);
|
||||
}
|
||||
BASE_TYPE::GetConstructorParameters(typeInfo, propertyNames);
|
||||
}
|
||||
|
||||
Ptr<GuiInstancePropertyInfo> GetPropertyType(const PropertyInfo& propertyInfo)override
|
||||
@@ -4219,7 +4253,7 @@ GuiBindableDataGridInstanceLoader
|
||||
info->bindable = true;
|
||||
return info;
|
||||
}
|
||||
return IGuiInstanceLoader::GetPropertyType(propertyInfo);
|
||||
return BASE_TYPE::GetPropertyType(propertyInfo);
|
||||
}
|
||||
|
||||
Ptr<workflow::WfStatement> AssignParameters(const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List<WString>& errors)override
|
||||
@@ -4251,7 +4285,7 @@ GuiBindableDataGridInstanceLoader
|
||||
{
|
||||
return block;
|
||||
}
|
||||
return nullptr;
|
||||
return BASE_TYPE::AssignParameters(typeInfo, variableName, arguments, errors);
|
||||
}
|
||||
};
|
||||
#undef BASE_TYPE
|
||||
@@ -4641,12 +4675,13 @@ GuiComboBoxInstanceLoader
|
||||
_ListControl = GlobalStringKey::Get(L"ListControl");
|
||||
}
|
||||
|
||||
void GetPropertyNames(const TypeInfo& typeInfo, collections::List<GlobalStringKey>& propertyNames)override
|
||||
void GetConstructorParameters(const TypeInfo& typeInfo, collections::List<GlobalStringKey>& propertyNames)override
|
||||
{
|
||||
if (typeInfo.typeName == GetTypeName())
|
||||
{
|
||||
propertyNames.Add(_ListControl);
|
||||
}
|
||||
BASE_TYPE::GetConstructorParameters(typeInfo, propertyNames);
|
||||
}
|
||||
|
||||
Ptr<GuiInstancePropertyInfo> GetPropertyType(const PropertyInfo& propertyInfo)override
|
||||
@@ -4658,7 +4693,7 @@ GuiComboBoxInstanceLoader
|
||||
info->required = true;
|
||||
return info;
|
||||
}
|
||||
return IGuiInstanceLoader::GetPropertyType(propertyInfo);
|
||||
return BASE_TYPE::GetPropertyType(propertyInfo);
|
||||
}
|
||||
};
|
||||
#undef BASE_TYPE
|
||||
@@ -4866,6 +4901,7 @@ GuiTabInstanceLoader
|
||||
void GetPropertyNames(const TypeInfo& typeInfo, collections::List<GlobalStringKey>& propertyNames)override
|
||||
{
|
||||
propertyNames.Add(GlobalStringKey::Empty);
|
||||
BASE_TYPE::GetPropertyNames(typeInfo, propertyNames);
|
||||
}
|
||||
|
||||
Ptr<GuiInstancePropertyInfo> GetPropertyType(const PropertyInfo& propertyInfo)override
|
||||
@@ -4923,7 +4959,7 @@ GuiTabInstanceLoader
|
||||
{
|
||||
return block;
|
||||
}
|
||||
return nullptr;
|
||||
return BASE_TYPE::AssignParameters(typeInfo, variableName, arguments, errors);
|
||||
}
|
||||
};
|
||||
#undef BASE_TYPE
|
||||
@@ -5122,6 +5158,7 @@ GuiToolstripMenuInstanceLoader
|
||||
void GetPropertyNames(const TypeInfo& typeInfo, collections::List<GlobalStringKey>& propertyNames)override
|
||||
{
|
||||
propertyNames.Add(GlobalStringKey::Empty);
|
||||
BASE_TYPE::GetPropertyNames(typeInfo, propertyNames);
|
||||
}
|
||||
|
||||
Ptr<GuiInstancePropertyInfo> GetPropertyType(const PropertyInfo& propertyInfo)override
|
||||
@@ -5135,7 +5172,14 @@ GuiToolstripMenuInstanceLoader
|
||||
|
||||
Ptr<workflow::WfStatement> AssignParameters(const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List<WString>& errors)override
|
||||
{
|
||||
return AddControlToToolstrip(variableName, arguments, errors);
|
||||
if (auto statement = AddControlToToolstrip(variableName, arguments, errors))
|
||||
{
|
||||
return statement;
|
||||
}
|
||||
else
|
||||
{
|
||||
return BASE_TYPE::AssignParameters(typeInfo, variableName, arguments, errors);
|
||||
}
|
||||
}
|
||||
};
|
||||
#undef BASE_TYPE
|
||||
@@ -5156,6 +5200,7 @@ GuiToolstripMenuBarInstanceLoader
|
||||
void GetPropertyNames(const TypeInfo& typeInfo, collections::List<GlobalStringKey>& propertyNames)override
|
||||
{
|
||||
propertyNames.Add(GlobalStringKey::Empty);
|
||||
BASE_TYPE::GetPropertyNames(typeInfo, propertyNames);
|
||||
}
|
||||
|
||||
Ptr<GuiInstancePropertyInfo> GetPropertyType(const PropertyInfo& propertyInfo)override
|
||||
@@ -5169,7 +5214,14 @@ GuiToolstripMenuBarInstanceLoader
|
||||
|
||||
Ptr<workflow::WfStatement> AssignParameters(const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List<WString>& errors)override
|
||||
{
|
||||
return AddControlToToolstrip(variableName, arguments, errors);
|
||||
if (auto statement = AddControlToToolstrip(variableName, arguments, errors))
|
||||
{
|
||||
return statement;
|
||||
}
|
||||
else
|
||||
{
|
||||
return BASE_TYPE::AssignParameters(typeInfo, variableName, arguments, errors);
|
||||
}
|
||||
}
|
||||
};
|
||||
#undef BASE_TYPE
|
||||
@@ -5190,6 +5242,7 @@ GuiToolstripToolBarInstanceLoader
|
||||
void GetPropertyNames(const TypeInfo& typeInfo, collections::List<GlobalStringKey>& propertyNames)override
|
||||
{
|
||||
propertyNames.Add(GlobalStringKey::Empty);
|
||||
BASE_TYPE::GetPropertyNames(typeInfo, propertyNames);
|
||||
}
|
||||
|
||||
Ptr<GuiInstancePropertyInfo> GetPropertyType(const PropertyInfo& propertyInfo)override
|
||||
@@ -5203,7 +5256,14 @@ GuiToolstripToolBarInstanceLoader
|
||||
|
||||
Ptr<workflow::WfStatement> AssignParameters(const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, collections::List<WString>& errors)override
|
||||
{
|
||||
return AddControlToToolstrip(variableName, arguments, errors);
|
||||
if (auto statement = AddControlToToolstrip(variableName, arguments, errors))
|
||||
{
|
||||
return statement;
|
||||
}
|
||||
else
|
||||
{
|
||||
return BASE_TYPE::AssignParameters(typeInfo, variableName, arguments, errors);
|
||||
}
|
||||
}
|
||||
};
|
||||
#undef BASE_TYPE
|
||||
@@ -5228,6 +5288,7 @@ GuiToolstripButtonInstanceLoader
|
||||
void GetPropertyNames(const TypeInfo& typeInfo, collections::List<GlobalStringKey>& propertyNames)override
|
||||
{
|
||||
propertyNames.Add(_SubMenu);
|
||||
BASE_TYPE::GetPropertyNames(typeInfo, propertyNames);
|
||||
}
|
||||
|
||||
Ptr<GuiInstancePropertyInfo> GetPropertyType(const PropertyInfo& propertyInfo)override
|
||||
@@ -5255,7 +5316,7 @@ GuiToolstripButtonInstanceLoader
|
||||
|
||||
return call;
|
||||
}
|
||||
return nullptr;
|
||||
return BASE_TYPE::GetParameter(propertyInfo, variableName, errors);
|
||||
}
|
||||
};
|
||||
#undef BASE_TYPE
|
||||
@@ -10274,6 +10335,7 @@ Workflow_PrecompileInstanceContext
|
||||
|
||||
Ptr<workflow::runtime::WfAssembly> Workflow_PrecompileInstanceContext(Ptr<GuiInstanceContext> context, types::ErrorList& errors)
|
||||
{
|
||||
vint previousErrorCount = errors.Count();
|
||||
ITypeDescriptor* rootTypeDescriptor = 0;
|
||||
if (context->className == L"")
|
||||
{
|
||||
@@ -10289,7 +10351,7 @@ Workflow_PrecompileInstanceContext
|
||||
types::ResolvingResult resolvingResult;
|
||||
rootTypeDescriptor = Workflow_CollectReferences(context, resolvingResult, errors);
|
||||
|
||||
if (errors.Count() == 0)
|
||||
if (errors.Count() == previousErrorCount)
|
||||
{
|
||||
auto statements = MakePtr<WfBlockStatement>();
|
||||
Workflow_GenerateCreating(context, resolvingResult, rootTypeDescriptor, statements, errors);
|
||||
|
||||
@@ -3940,7 +3940,7 @@ GuiVrtualTypeInstanceLoader
|
||||
auto funcCreateTemplate = MakePtr<WfFunctionDeclaration>();
|
||||
funcCreateTemplate->anonymity = WfFunctionAnonymity::Named;
|
||||
funcCreateTemplate->name.value = L"CreateTemplate";
|
||||
funcCreateTemplate->returnType = GetTypeFromTypeInfo(templateType.Obj());
|
||||
funcCreateTemplate->returnType = GetTypeFromTypeInfo(TypeInfoRetriver<GuiTemplate*>::CreateTypeInfo().Obj());
|
||||
|
||||
auto argViewModel = MakePtr<WfFunctionArgument>();
|
||||
argViewModel->type = GetTypeFromTypeInfo(TypeInfoRetriver<Value>::CreateTypeInfo().Obj());
|
||||
@@ -4078,7 +4078,7 @@ GuiVrtualTypeInstanceLoader
|
||||
}
|
||||
|
||||
auto controlTemplateName = controlTemplateNameExpr->value.value;
|
||||
if (wcschr(controlTemplateName.Buffer(), L';') == nullptr)
|
||||
if (wcschr(controlTemplateName.Buffer(), L';') != nullptr)
|
||||
{
|
||||
errors.Add(L"Precompile: \"" + controlTemplateNameExpr->value.value + L"\", which is assigned to contructor parameter \"" + GlobalStringKey::_ControlTemplate.ToString() + L" of type \"" + controlTypeInfo.typeName.ToString() + L"\", is illegal because control template should not have multiple choices.");
|
||||
return nullptr;
|
||||
|
||||
@@ -12499,10 +12499,10 @@ Print (Declaration)
|
||||
switch (node->kind)
|
||||
{
|
||||
case WfClassKind::Class:
|
||||
writer.WriteString(L"class ");
|
||||
writer.WriteString(indent + L"class ");
|
||||
break;
|
||||
case WfClassKind::Interface:
|
||||
writer.WriteString(L"interface ");
|
||||
writer.WriteString(indent + L"interface ");
|
||||
break;
|
||||
}
|
||||
writer.WriteString(node->name.value);
|
||||
@@ -12521,7 +12521,7 @@ Print (Declaration)
|
||||
}
|
||||
|
||||
writer.WriteLine(L"");
|
||||
writer.WriteLine(L"{");
|
||||
writer.WriteLine(indent + L"{");
|
||||
|
||||
FOREACH_INDEXER(Ptr<WfClassMember>, member, index, node->members)
|
||||
{
|
||||
@@ -12543,7 +12543,7 @@ Print (Declaration)
|
||||
writer.WriteLine(L"");
|
||||
}
|
||||
|
||||
writer.WriteString(L"}");
|
||||
writer.WriteLine(indent + L"}");
|
||||
writer.AfterPrint(node);
|
||||
}
|
||||
};
|
||||
|
||||
BIN
Tools/GacGen.exe
BIN
Tools/GacGen.exe
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Reference in New Issue
Block a user