Skip to content

Commit

Permalink
Update release
Browse files Browse the repository at this point in the history
  • Loading branch information
vczh committed Apr 11, 2016
1 parent 032a0a0 commit d6fb4ee
Show file tree
Hide file tree
Showing 12 changed files with 23 additions and 0 deletions.
21 changes: 21 additions & 0 deletions Import/GacUICompiler.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -184,6 +184,10 @@ GuiInstancePropertyInfo
IGuiInstanceLoader
***********************************************************************/

void IGuiInstanceLoader::ClearReflectionCache()
{
}

void IGuiInstanceLoader::GetPropertyNames(const TypeInfo& typeInfo, collections::List<GlobalStringKey>& propertyNames)
{
}
Expand Down Expand Up @@ -367,6 +371,13 @@ GuiDefaultInstanceLoader
return GlobalStringKey::Empty;
}

void ClearReflectionCache()
{
propertyTypes.Clear();
defaultConstructors.Clear();
instanceConstructors.Clear();
}

//***********************************************************************************

void ProcessGenericType(ITypeInfo* propType, ITypeInfo*& genericType, ITypeInfo*& elementType, bool& readableList, bool& writableList, bool& collectionType)
Expand Down Expand Up @@ -1033,6 +1044,15 @@ GuiInstanceLoaderManager
}
return GlobalStringKey::Empty;
}

void ClearReflectionCache()
{
rootLoader->ClearReflectionCache();
FOREACH(Ptr<VirtualTypeInfo>, info, typeInfos.Values())
{
info->loader->ClearReflectionCache();
}
}
};
GUI_REGISTER_PLUGIN(GuiInstanceLoaderManager)
}
Expand Down Expand Up @@ -1643,6 +1663,7 @@ Instance Type Resolver (Instance)
{
Workflow_GenerateAssembly(compiled, path, errors);
}
GetInstanceLoaderManager()->ClearReflectionCache();
}

#undef DELETE_ASSEMBLY
Expand Down
2 changes: 2 additions & 0 deletions Import/GacUICompiler.h
Original file line number Diff line number Diff line change
Expand Up @@ -521,6 +521,7 @@ Instance Loader
typedef collections::Group<GlobalStringKey, ArgumentInfo> ArgumentMap;

virtual GlobalStringKey GetTypeName() = 0;
virtual void ClearReflectionCache();

virtual void GetPropertyNames(const TypeInfo& typeInfo, collections::List<GlobalStringKey>& propertyNames);
virtual void GetConstructorParameters(const TypeInfo& typeInfo, collections::List<GlobalStringKey>& propertyNames);
Expand Down Expand Up @@ -573,6 +574,7 @@ Instance Loader Manager
virtual description::ITypeDescriptor* GetTypeDescriptorForType(GlobalStringKey typeName) = 0;
virtual void GetVirtualTypes(collections::List<GlobalStringKey>& typeNames) = 0;
virtual GlobalStringKey GetParentTypeForVirtualType(GlobalStringKey virtualType) = 0;
virtual void ClearReflectionCache() = 0;
};

extern IGuiInstanceLoaderManager* GetInstanceLoaderManager();
Expand Down
Binary file modified Tutorial/GacUI_ControlTemplate/UIRes/BlackSkin.bin
Binary file not shown.
Binary file modified Tutorial/GacUI_Controls/UIRes/ContainersAndButtons.bin
Binary file not shown.
Binary file modified Tutorial/GacUI_Controls/UIRes/TextEditor.bin
Binary file not shown.
Binary file modified Tutorial/GacUI_HelloWorlds/UIRes/CppXml.bin
Binary file not shown.
Binary file modified Tutorial/GacUI_HelloWorlds/UIRes/MVVM.bin
Binary file not shown.
Binary file modified Tutorial/GacUI_Layout/UIRes/Alignment.bin
Binary file not shown.
Binary file modified Tutorial/GacUI_Layout/UIRes/Flow.bin
Binary file not shown.
Binary file modified Tutorial/GacUI_Layout/UIRes/RichTextEmbedding.bin
Binary file not shown.
Binary file modified Tutorial/GacUI_Layout/UIRes/Stack.bin
Binary file not shown.
Binary file modified Tutorial/GacUI_Layout/UIRes/Table.bin
Binary file not shown.

0 comments on commit d6fb4ee

Please sign in to comment.