Update release

This commit is contained in:
vczh
2023-12-10 17:58:57 -08:00
parent f3a8dfccd6
commit cf40ef9fb8
22 changed files with 10614 additions and 3186 deletions
+2516 -1689
View File
File diff suppressed because it is too large Load Diff
+634 -301
View File
File diff suppressed because it is too large Load Diff
+47 -52
View File
@@ -8373,28 +8373,22 @@ GuiComboBoxInstanceLoader
GuiTreeViewInstanceLoader
***********************************************************************/
#define BASE_TYPE GuiTemplateControlInstanceLoader<TControl>
template<typename TControl>
class GuiTreeViewInstanceLoaderBase : public BASE_TYPE
#define BASE_TYPE GuiTemplateControlInstanceLoader<GuiTreeView>
class GuiTreeViewInstanceLoader : public BASE_TYPE
{
protected:
bool bindable;
GlobalStringKey _Nodes;
public:
GuiTreeViewInstanceLoaderBase(bool _bindable)
:BASE_TYPE(description::TypeInfo<TControl>::content.typeName, theme::ThemeName::TreeView)
, bindable(_bindable)
GuiTreeViewInstanceLoader()
:BASE_TYPE(description::TypeInfo<GuiTreeView>::content.typeName, theme::ThemeName::TreeView)
{
_Nodes = GlobalStringKey::Get(L"Nodes");
}
void GetPropertyNames(GuiResourcePrecompileContext& precompileContext, const typename BASE_TYPE::TypeInfo& typeInfo, collections::List<GlobalStringKey>& propertyNames)override
{
if (!bindable)
{
propertyNames.Add(_Nodes);
}
propertyNames.Add(_Nodes);
BASE_TYPE::GetPropertyNames(precompileContext, typeInfo, propertyNames);
}
@@ -8402,10 +8396,7 @@ GuiTreeViewInstanceLoader
{
if (propertyInfo.propertyName == _Nodes)
{
if (!bindable)
{
return GuiInstancePropertyInfo::Collection(TypeInfoRetriver<Ptr<tree::MemoryNodeProvider>>::CreateTypeInfo());
}
return GuiInstancePropertyInfo::Collection(TypeInfoRetriver<Ptr<tree::MemoryNodeProvider>>::CreateTypeInfo());
}
return BASE_TYPE::GetPropertyType(precompileContext, propertyInfo);
}
@@ -8453,23 +8444,49 @@ GuiTreeViewInstanceLoader
};
#undef BASE_TYPE
class GuiTreeViewInstanceLoader : public GuiTreeViewInstanceLoaderBase<GuiTreeView>
{
public:
GuiTreeViewInstanceLoader()
:GuiTreeViewInstanceLoaderBase<GuiTreeView>(false)
{
}
};
/***********************************************************************
GuiBindableTreeViewInstanceLoader
***********************************************************************/
class GuiBindableTreeViewInstanceLoader : public GuiTreeViewInstanceLoaderBase<GuiBindableTreeView>
#define BASE_TYPE GuiTemplateControlInstanceLoader<GuiBindableTreeView>
class GuiBindableTreeViewInstanceLoader : public BASE_TYPE
{
protected:
GlobalStringKey _ReverseMappingProperty;
void AddAdditionalArguments(types::ResolvingResult& resolvingResult, const TypeInfo& typeInfo, GlobalStringKey variableName, ArgumentMap& arguments, GuiResourceError::List& errors, Ptr<WfNewClassExpression> createControl)override
{
vint indexReverseMappingProperty = arguments.Keys().IndexOf(_ReverseMappingProperty);
if (indexReverseMappingProperty != -1)
{
createControl->arguments.Add(arguments.GetByIndex(indexReverseMappingProperty)[0].expression);
}
}
public:
GuiBindableTreeViewInstanceLoader()
:GuiTreeViewInstanceLoaderBase<GuiBindableTreeView>(true)
:BASE_TYPE(description::TypeInfo<GuiBindableTreeView>::content.typeName, theme::ThemeName::TreeView)
{
_ReverseMappingProperty = GlobalStringKey::Get(L"ReverseMappingProperty");
}
void GetPropertyNames(GuiResourcePrecompileContext& precompileContext, const typename BASE_TYPE::TypeInfo& typeInfo, collections::List<GlobalStringKey>& propertyNames)override
{
propertyNames.Add(_ReverseMappingProperty);
BASE_TYPE::GetPropertyNames(precompileContext, typeInfo, propertyNames);
}
Ptr<GuiInstancePropertyInfo> GetPropertyType(GuiResourcePrecompileContext& precompileContext, const typename BASE_TYPE::PropertyInfo& propertyInfo)override
{
if (propertyInfo.propertyName == _ReverseMappingProperty)
{
auto info = GuiInstancePropertyInfo::Assign(TypeInfoRetriver<WritableItemProperty<description::Value>>::CreateTypeInfo());
info->usage = GuiInstancePropertyInfo::ConstructorArgument;
return info;
}
return BASE_TYPE::GetPropertyType(precompileContext, propertyInfo);
}
};
#undef BASE_TYPE
/***********************************************************************
GuiTreeNodeInstanceLoader
@@ -8671,30 +8688,6 @@ GuiTreeNodeInstanceLoader
}
};
/***********************************************************************
GuiBindableDataGridInstanceLoader
***********************************************************************/
#define BASE_TYPE GuiTemplateControlInstanceLoader<GuiBindableDataGrid>
class GuiBindableDataGridInstanceLoader : public BASE_TYPE
{
protected:
GlobalStringKey typeName;
public:
GuiBindableDataGridInstanceLoader()
:BASE_TYPE(description::TypeInfo<GuiBindableDataGrid>::content.typeName, theme::ThemeName::ListView)
{
typeName = GlobalStringKey::Get(description::TypeInfo<GuiBindableDataGrid>::content.typeName);
}
GlobalStringKey GetTypeName()override
{
return typeName;
}
};
#undef BASE_TYPE
/***********************************************************************
Initialization
***********************************************************************/
@@ -8709,7 +8702,6 @@ Initialization
manager->SetLoader(Ptr(new GuiComboButtonInstanceLoader));
manager->SetLoader(Ptr(new GuiTreeViewInstanceLoader));
manager->SetLoader(Ptr(new GuiBindableTreeViewInstanceLoader));
manager->SetLoader(Ptr(new GuiBindableDataGridInstanceLoader));
manager->CreateVirtualType(
GlobalStringKey::Get(description::TypeInfo<tree::MemoryNodeProvider>::content.typeName),
@@ -8750,9 +8742,11 @@ GuiInstanceLoader_Document.cpp
default: Ptr<GuiDocumentItem>
GuiInstanceLoader_List.cpp
GuiComboBox
ctor: _ListControl(GuiListControl*)
GuiTreeView, GuiBindableTreeView
ctor: ListControl(GuiListControl*)
GuiTreeView
Nodes: array(Ptr<tree::MemoryNodeProvider>)
GuiBindableTreeView
ctor: ReverseMappingProperty(WritableItemProperty<Value>)
tree::TreeNode
ctor: Text, Image
Tag
@@ -9006,6 +9000,7 @@ GuiPredefinedInstanceLoadersPlugin
ADD_TEMPLATE_CONTROL ( GuiBindableTextList, TextList );
ADD_TEMPLATE_CONTROL ( GuiListView, ListView );
ADD_TEMPLATE_CONTROL ( GuiBindableListView, ListView );
ADD_TEMPLATE_CONTROL ( GuiBindableDataGrid, ListView );
ADD_TEMPLATE_CONTROL ( GuiMultilineTextBox, MultilineTextBox );
ADD_TEMPLATE_CONTROL ( GuiSinglelineTextBox, SinglelineTextBox );
ADD_TEMPLATE_CONTROL ( GuiDatePicker, DatePicker );
+7 -7
View File
@@ -709,11 +709,11 @@ Instance Loader
public:
enum Support
{
NotSupport,
SupportAssign,
SupportArray,
SupportCollection,
SupportSet,
NotSupport, // cannot assign
SupportAssign, // assign value directly
SupportArray, // assign a collection to that property directly
SupportCollection, // calling Add to add all items to that property
SupportSet, // allow <att.PROP-set/>
};
enum PropertyUsage
@@ -724,13 +724,13 @@ Instance Loader
enum PropertyBindability
{
Bindable,
Bindable, // a property is bindable
NotBindable,
};
enum PropertyMergability
{
MergeWithParent,
MergeWithParent, // when type check of the property failed, search in base types
NotMerge,
};
+70 -16
View File
@@ -1205,6 +1205,12 @@ Type Declaration (Extra)
ENUM_CLASS_ITEM(Both)
END_ENUM_ITEM(ResponsiveDirection)
BEGIN_ENUM_ITEM(VirtualRepeatEnsureItemVisibleResult)
ENUM_CLASS_ITEM(ItemNotExists)
ENUM_CLASS_ITEM(Moved)
ENUM_CLASS_ITEM(NotMoved)
END_ENUM_ITEM(VirtualRepeatEnsureItemVisibleResult)
BEGIN_INTERFACE_MEMBER_NOPROXY(IGuiShortcutKeyItem)
CLASS_MEMBER_PROPERTY_READONLY_FAST(Manager)
CLASS_MEMBER_PROPERTY_READONLY_FAST(Name)
@@ -1482,25 +1488,68 @@ Type Declaration (Class)
END_CLASS_MEMBER(GuiSharedSizeRootComposition)
BEGIN_CLASS_MEMBER(GuiRepeatCompositionBase)
CLASS_MEMBER_GUIEVENT(ItemInserted)
CLASS_MEMBER_GUIEVENT(ItemRemoved)
CLASS_MEMBER_PROPERTY_FAST(ItemTemplate)
CLASS_MEMBER_PROPERTY_FAST(ItemSource)
CLASS_MEMBER_PROPERTY_GUIEVENT_FAST(Context)
END_CLASS_MEMBER(GuiRepeatCompositionBase)
BEGIN_CLASS_MEMBER(GuiNonVirtialRepeatCompositionBase)
CLASS_MEMBER_BASE(GuiBoundsComposition)
CLASS_MEMBER_BASE(GuiRepeatCompositionBase)
CLASS_MEMBER_GUIEVENT(ItemInserted)
CLASS_MEMBER_GUIEVENT(ItemRemoved)
END_CLASS_MEMBER(GuiNonVirtialRepeatCompositionBase)
BEGIN_CLASS_MEMBER(GuiRepeatStackComposition)
CLASS_MEMBER_BASE(GuiStackComposition)
CLASS_MEMBER_BASE(GuiRepeatCompositionBase)
CLASS_MEMBER_BASE(GuiNonVirtialRepeatCompositionBase)
CLASS_MEMBER_CONSTRUCTOR(GuiRepeatStackComposition*(), NO_PARAMETER)
END_CLASS_MEMBER(GuiRepeatStackComposition)
BEGIN_CLASS_MEMBER(GuiRepeatFlowComposition)
CLASS_MEMBER_BASE(GuiFlowComposition)
CLASS_MEMBER_BASE(GuiRepeatCompositionBase)
CLASS_MEMBER_BASE(GuiNonVirtialRepeatCompositionBase)
CLASS_MEMBER_CONSTRUCTOR(GuiRepeatFlowComposition*(), NO_PARAMETER)
END_CLASS_MEMBER(GuiRepeatFlowComposition)
BEGIN_CLASS_MEMBER(GuiVirtualRepeatCompositionBase)
CLASS_MEMBER_BASE(GuiBoundsComposition)
CLASS_MEMBER_BASE(GuiRepeatCompositionBase)
CLASS_MEMBER_GUIEVENT(AdoptedSizeInvalidated)
CLASS_MEMBER_PROPERTY_GUIEVENT_FAST(Axis)
CLASS_MEMBER_PROPERTY_GUIEVENT_READONLY_FAST(TotalSize)
CLASS_MEMBER_PROPERTY_GUIEVENT_FAST(ViewLocation)
CLASS_MEMBER_PROPERTY_EVENT_READONLY_FAST(AdoptedSize, AdoptedSizeInvalidated)
CLASS_MEMBER_METHOD(GetVisibleStyle, { L"itemIndex" })
CLASS_MEMBER_METHOD(GetVisibleIndex, { L"style" })
CLASS_MEMBER_METHOD(ResetLayout, { L"recreateVisibleStyles" })
CLASS_MEMBER_METHOD(InvalidateLayout, NO_PARAMETER)
CLASS_MEMBER_METHOD(FindItemByRealKeyDirection, { L"itemIndex" _ L"key" })
CLASS_MEMBER_METHOD(FindItemByVirtualKeyDirection, { L"itemIndex" _ L"key" })
CLASS_MEMBER_METHOD(EnsureItemVisible, { L"itemIndex" })
CLASS_MEMBER_METHOD(GetAdoptedSize, { L"expectedSize" })
END_CLASS_MEMBER(GuiNonVirtialRepeatCompositionBase)
BEGIN_CLASS_MEMBER(GuiRepeatFreeHeightItemComposition)
CLASS_MEMBER_BASE(GuiVirtualRepeatCompositionBase)
CLASS_MEMBER_CONSTRUCTOR(GuiRepeatFreeHeightItemComposition*(), NO_PARAMETER)
END_CLASS_MEMBER(GuiRepeatFreeHeightItemComposition)
BEGIN_CLASS_MEMBER(GuiRepeatFixedHeightItemComposition)
CLASS_MEMBER_BASE(GuiVirtualRepeatCompositionBase)
CLASS_MEMBER_CONSTRUCTOR(GuiRepeatFixedHeightItemComposition*(), NO_PARAMETER)
END_CLASS_MEMBER(GuiRepeatFixedHeightItemComposition)
BEGIN_CLASS_MEMBER(GuiRepeatFixedSizeMultiColumnItemComposition)
CLASS_MEMBER_BASE(GuiVirtualRepeatCompositionBase)
CLASS_MEMBER_CONSTRUCTOR(GuiRepeatFixedSizeMultiColumnItemComposition*(), NO_PARAMETER)
END_CLASS_MEMBER(GuiRepeatFixedSizeMultiColumnItemComposition)
BEGIN_CLASS_MEMBER(GuiRepeatFixedHeightMultiColumnItemComposition)
CLASS_MEMBER_BASE(GuiVirtualRepeatCompositionBase)
CLASS_MEMBER_CONSTRUCTOR(GuiRepeatFixedHeightMultiColumnItemComposition*(), NO_PARAMETER)
END_CLASS_MEMBER(GuiRepeatFixedHeightMultiColumnItemComposition)
BEGIN_CLASS_MEMBER(GuiResponsiveCompositionBase)
CLASS_MEMBER_BASE(GuiBoundsComposition)
@@ -1780,20 +1829,19 @@ Type Declaration (Extra)
CLASS_MEMBER_BASE(IDescriptable)
CLASS_MEMBER_METHOD(OnAttached, {L"provider"})
CLASS_MEMBER_METHOD(OnItemModified, {L"start" _ L"count" _ L"newCount"})
CLASS_MEMBER_METHOD(OnItemModified, {L"start" _ L"count" _ L"newCount" _ L"itemReferenceUpdated"})
END_INTERFACE_MEMBER(GuiListControl::IItemProviderCallback)
BEGIN_INTERFACE_MEMBER_NOPROXY(GuiListControl::IItemArrangerCallback)
CLASS_MEMBER_BASE(IDescriptable)
CLASS_MEMBER_METHOD(RequestItem, {L"itemIndex" _ L"itemComposition"})
CLASS_MEMBER_METHOD(CreateItem, {L"itemIndex"})
CLASS_MEMBER_METHOD(GetItemBounds, { L"style" })
CLASS_MEMBER_METHOD(GetItem, { L"bounds" })
CLASS_MEMBER_METHOD(ReleaseItem, {L"style"})
CLASS_MEMBER_METHOD(SetViewLocation, {L"value"})
CLASS_MEMBER_METHOD(GetStylePreferredSize, {L"style"})
CLASS_MEMBER_METHOD(SetStyleAlignmentToParent, {L"style" _ L"margin"})
CLASS_MEMBER_METHOD(GetStyleBounds, {L"style"})
CLASS_MEMBER_METHOD(SetStyleBounds, {L"style" _ L"bounds"})
CLASS_MEMBER_METHOD(GetContainerComposition, NO_PARAMETER)
CLASS_MEMBER_METHOD(OnTotalSizeChanged, NO_PARAMETER)
CLASS_MEMBER_METHOD(OnAdoptedSizeChanged, NO_PARAMETER)
END_INTERFACE_MEMBER(GuiListControl::IItemArrangerCallback)
BEGIN_ENUM_ITEM(GuiListControl::EnsureItemVisibleResult)
@@ -1828,7 +1876,7 @@ Type Declaration (Extra)
CLASS_MEMBER_METHOD(GetVisibleIndex, {L"style"})
CLASS_MEMBER_METHOD(ReloadVisibleStyles, NO_PARAMETER)
CLASS_MEMBER_METHOD(OnViewChanged, {L"bounds"})
CLASS_MEMBER_METHOD(FindItem, {L"itemIndex" _ L"key"})
CLASS_MEMBER_METHOD(FindItemByVirtualKeyDirection, {L"itemIndex" _ L"key"})
CLASS_MEMBER_METHOD(EnsureItemVisible, {L"itemIndex"})
CLASS_MEMBER_METHOD(GetAdoptedSize, {L"expectedSize"})
END_INTERFACE_MEMBER(GuiListControl::IItemArranger)
@@ -1908,7 +1956,8 @@ Type Declaration (Extra)
END_CLASS_MEMBER(ListViewColumnItemArranger)
BEGIN_CLASS_MEMBER(ListViewColumnItemArranger::IColumnItemViewCallback)
CLASS_MEMBER_METHOD(OnColumnChanged, NO_PARAMETER)
CLASS_MEMBER_METHOD(OnColumnRebuilt, NO_PARAMETER)
CLASS_MEMBER_METHOD(OnColumnChanged, {L"needToRefreshItems"})
END_CLASS_MEMBER(ListViewColumnItemArranger::IColumnItemViewCallback)
BEGIN_INTERFACE_MEMBER(ListViewColumnItemArranger::IColumnItemView)
@@ -1991,8 +2040,8 @@ Type Declaration (Extra)
CLASS_MEMBER_BASE(IDescriptable)
CLASS_MEMBER_METHOD(OnAttached, {L"provider"})
CLASS_MEMBER_METHOD(OnBeforeItemModified, {L"parentNode" _ L"start" _ L"count" _ L"newCount"})
CLASS_MEMBER_METHOD(OnAfterItemModified, {L"parentNode" _ L"start" _ L"count" _ L"newCount"})
CLASS_MEMBER_METHOD(OnBeforeItemModified, {L"parentNode" _ L"start" _ L"count" _ L"newCount" _ L"itemReferenceUpdated"})
CLASS_MEMBER_METHOD(OnAfterItemModified, {L"parentNode" _ L"start" _ L"count" _ L"newCount" _ L"itemReferenceUpdated"})
CLASS_MEMBER_METHOD(OnItemExpanded, {L"node"})
CLASS_MEMBER_METHOD(OnItemCollapsed, {L"node"})
END_INTERFACE_MEMBER(INodeProviderCallback)
@@ -2005,6 +2054,7 @@ Type Declaration (Extra)
CLASS_MEMBER_PROPERTY_READONLY_FAST(Parent)
CLASS_MEMBER_METHOD(CalculateTotalVisibleNodes, NO_PARAMETER)
CLASS_MEMBER_METHOD(NotifyDataModified, NO_PARAMETER)
CLASS_MEMBER_METHOD(GetChild, {L"index"})
END_INTERFACE_MEMBER(INodeProvider)
@@ -2041,7 +2091,6 @@ Type Declaration (Extra)
CLASS_MEMBER_PROPERTY_FAST(Data)
CLASS_MEMBER_METHOD(NotifyDataModified, NO_PARAMETER)
CLASS_MEMBER_METHOD_RENAME(GetChildren, Children, NO_PARAMETER)
CLASS_MEMBER_PROPERTY_READONLY(Children, GetChildren)
END_CLASS_MEMBER(MemoryNodeProvider)
@@ -3010,6 +3059,7 @@ Type Declaration (Class)
CLASS_MEMBER_PROPERTY_GUIEVENT_FAST(TextProperty)
CLASS_MEMBER_PROPERTY_GUIEVENT_FAST(CheckedProperty)
CLASS_MEMBER_PROPERTY_EVENT_READONLY_FAST(SelectedItem, SelectionChanged)
CLASS_MEMBER_METHOD(NotifyItemDataModified, {L"start" _ L"count"})
END_CLASS_MEMBER(GuiBindableTextList)
BEGIN_CLASS_MEMBER(GuiBindableListView)
@@ -3022,17 +3072,21 @@ Type Declaration (Class)
CLASS_MEMBER_PROPERTY_GUIEVENT_FAST(LargeImageProperty)
CLASS_MEMBER_PROPERTY_GUIEVENT_FAST(SmallImageProperty)
CLASS_MEMBER_PROPERTY_EVENT_READONLY_FAST(SelectedItem, SelectionChanged)
CLASS_MEMBER_METHOD(NotifyItemDataModified, { L"start" _ L"count" })
END_CLASS_MEMBER(GuiBindableListView)
BEGIN_CLASS_MEMBER(GuiBindableTreeView)
CLASS_MEMBER_BASE(GuiVirtualTreeView)
CONTROL_CONSTRUCTOR_CONTROLT_TEMPLATE_INHERITANCE(GuiBindableTreeView)
CONTROL_CONSTRUCTOR_CONTROLT_TEMPLATE_INHERITANCE_2(GuiBindableTreeView, WritableItemProperty<description::Value>, reverseMappingProperty)
CLASS_MEMBER_PROPERTY_FAST(ItemSource)
CLASS_MEMBER_PROPERTY_READONLY_FAST(ReverseMappingProperty)
CLASS_MEMBER_PROPERTY_GUIEVENT_FAST(TextProperty)
CLASS_MEMBER_PROPERTY_GUIEVENT_FAST(ImageProperty)
CLASS_MEMBER_PROPERTY_GUIEVENT_FAST(ChildrenProperty)
CLASS_MEMBER_PROPERTY_EVENT_READONLY_FAST(SelectedItem, SelectionChanged)
CLASS_MEMBER_METHOD(NotifyNodeDataModified, {L"value"})
END_CLASS_MEMBER(GuiBindableTreeView)
BEGIN_CLASS_MEMBER(GuiBindableDataGrid)
@@ -3047,6 +3101,7 @@ Type Declaration (Class)
CLASS_MEMBER_PROPERTY_GUIEVENT_FAST(SmallImageProperty)
CLASS_MEMBER_PROPERTY_EVENT_READONLY_FAST(SelectedRowValue, SelectedCellChanged)
CLASS_MEMBER_PROPERTY_EVENT_READONLY_FAST(SelectedCellValue, SelectedCellChanged)
CLASS_MEMBER_METHOD(NotifyItemDataModified, { L"start" _ L"count" })
END_CLASS_MEMBER(GuiBindableDataGrid)
#undef INTERFACE_IDENTIFIER
@@ -3792,7 +3847,6 @@ Type Declaration (Class)
NAME ## _PROPERTIES(GUI_TEMPLATE_PROPERTY_REFLECTION)\
END_CLASS_MEMBER(NAME)\
GUI_CONTROL_TEMPLATE(GuiListItemTemplate, GuiTemplate)
GUI_CORE_CONTROL_TEMPLATE_DECL(GUI_CONTROL_TEMPLATE)
GUI_CONTROL_TEMPLATE_DECL(GUI_CONTROL_TEMPLATE)
GUI_ITEM_TEMPLATE_DECL(GUI_CONTROL_TEMPLATE)
+16 -5
View File
@@ -261,6 +261,7 @@ Type List (Compositions)
F(presentation::compositions::IGuiAltActionHost)\
F(presentation::compositions::IGuiTabAction)\
F(presentation::compositions::GuiRepeatCompositionBase)\
F(presentation::compositions::VirtualRepeatEnsureItemVisibleResult)\
#define GUIREFLECTIONCOMPOSITION_CLASS_TYPELIST(F)\
F(presentation::compositions::GuiGraphicsComposition)\
@@ -279,8 +280,14 @@ Type List (Compositions)
F(presentation::compositions::GuiPartialViewComposition)\
F(presentation::compositions::GuiSharedSizeItemComposition)\
F(presentation::compositions::GuiSharedSizeRootComposition)\
F(presentation::compositions::GuiNonVirtialRepeatCompositionBase)\
F(presentation::compositions::GuiRepeatStackComposition)\
F(presentation::compositions::GuiRepeatFlowComposition)\
F(presentation::compositions::GuiVirtualRepeatCompositionBase)\
F(presentation::compositions::GuiRepeatFreeHeightItemComposition)\
F(presentation::compositions::GuiRepeatFixedHeightItemComposition)\
F(presentation::compositions::GuiRepeatFixedSizeMultiColumnItemComposition)\
F(presentation::compositions::GuiRepeatFixedHeightMultiColumnItemComposition)\
F(presentation::compositions::GuiResponsiveCompositionBase)\
F(presentation::compositions::GuiResponsiveSharedComposition)\
F(presentation::compositions::GuiResponsiveViewComposition)\
@@ -333,7 +340,6 @@ Type List (Templates)
#define GUIREFLECTIONTEMPLATES_CLASS_TYPELIST(F)\
F(presentation::templates::GuiTemplate)\
F(presentation::templates::GuiListItemTemplate)\
F(presentation::templates::GuiCommonDatePickerLook)\
F(presentation::templates::GuiCommonScrollViewLook)\
GUI_CORE_CONTROL_TEMPLATE_DECL(GUIREFLECTIONTEMPLATES_##F)\
@@ -785,9 +791,9 @@ Interface Proxy (Controls)
INVOKE_INTERFACE_PROXY(OnAttached, provider);
}
void OnItemModified(vint start, vint count, vint newCount)override
void OnItemModified(vint start, vint count, vint newCount, bool itemReferenceUpdated)override
{
INVOKE_INTERFACE_PROXY(OnItemModified, start, count, newCount);
INVOKE_INTERFACE_PROXY(OnItemModified, start, count, newCount, itemReferenceUpdated);
}
END_INTERFACE_PROXY(presentation::controls::GuiListControl::IItemProviderCallback)
@@ -888,9 +894,9 @@ Interface Proxy (Controls)
INVOKE_INTERFACE_PROXY(OnViewChanged, bounds);
}
vint FindItem(vint itemIndex, presentation::compositions::KeyDirection key)override
vint FindItemByVirtualKeyDirection(vint itemIndex, presentation::compositions::KeyDirection key)override
{
INVOKEGET_INTERFACE_PROXY(FindItem, itemIndex, key);
INVOKEGET_INTERFACE_PROXY(FindItemByVirtualKeyDirection, itemIndex, key);
}
presentation::controls::GuiListControl::EnsureItemVisibleResult EnsureItemVisible(vint itemIndex)override
@@ -1010,6 +1016,11 @@ Interface Proxy (Controls)
INVOKEGET_INTERFACE_PROXY_NOPARAMS(CalculateTotalVisibleNodes);
}
void NotifyDataModified()override
{
INVOKE_INTERFACE_PROXY_NOPARAMS(NotifyDataModified);
}
vint GetChildCount()override
{
INVOKEGET_INTERFACE_PROXY_NOPARAMS(GetChildCount);
File diff suppressed because it is too large Load Diff
+1 -2
View File
@@ -104,7 +104,6 @@ ParserSymbolManager
/* SyntaxSymbolManager */\
ERROR_ITEM(DuplicatedRule, ruleName)\
ERROR_ITEM(RuleIsIndirectlyLeftRecursive, ruleName) /* Indirect left recursion must be resolved before */\
ERROR_ITEM(LeftRecursionPlaceholderMixedWithSwitches, ruleName, placeholder, targetRuleName)\
ERROR_ITEM(LeftRecursionInjectHasNoContinuation, ruleName, placeholder, targetRuleName)\
/* SyntaxAst(ResolveName) */\
ERROR_ITEM(RuleNameConflictedWithToken, ruleName)\
@@ -135,8 +134,8 @@ ParserSymbolManager
/* SyntaxAst(ValidateSwitchesAndConditions, condition) */\
ERROR_ITEM(PushedSwitchIsNotTested, ruleName, switchName)\
ERROR_ITEM(PrefixMergeAffectedBySwitches, ruleName, prefixMergeRule, switchName)\
ERROR_ITEM(SwitchUnaffectedRuleNotExist)\
/* SyntaxAst(RewriteSyntax_Switch, condition) */\
ERROR_ITEM(NoSwitchUnaffectedRule)\
ERROR_ITEM(SwitchUnaffectedRuleExpandedToNoClause, ruleName)\
ERROR_ITEM(SwitchAffectedRuleExpandedToNoClause, ruleName, expandedRuleName)\
/* SyntaxAst(ValidateTypes) */\
+1 -1
View File
@@ -107,7 +107,7 @@ FilePath
return fullPath == L"/";
}
WString FilePath::GetRelativePathFor(const FilePath& _filePath)
WString FilePath::GetRelativePathFor(const FilePath& _filePath) const
{
if (fullPath.Length() == 0 || _filePath.fullPath.Length() == 0 || fullPath[0] != _filePath.fullPath[0])
{
+1 -1
View File
@@ -105,7 +105,7 @@ FilePath
return fullPath == L"";
}
WString FilePath::GetRelativePathFor(const FilePath& _filePath)
WString FilePath::GetRelativePathFor(const FilePath& _filePath) const
{
if (fullPath.Length() == 0 || _filePath.fullPath.Length() == 0 || fullPath[0] != _filePath.fullPath[0])
{
+1 -1
View File
@@ -1950,7 +1950,7 @@ namespace vl
/// <summary>Calculate the relative path based on a specified referencing folder.</summary>
/// <returns>The relative path.</returns>
/// <param name="_filePath">The referencing folder.</param>
WString GetRelativePathFor(const FilePath& _filePath);
WString GetRelativePathFor(const FilePath& _filePath)const;
};