Example #1
0
        private IEntityComponentRenderer CreateRenderer(EntityComponentRendererType rendererType)
        {
            var renderer = CreateRendererCore(rendererType);
            var handler  = RendererCreated;

            if (handler != null)
            {
                handler(this, new EntityComponentRendererEventArgs(this, renderer));
            }
            return(renderer);
        }
Example #2
0
        private void EntitySystemOnComponentTypeAdded(object sender, Type type)
        {
            var rendererTypeAttribute = type.GetTypeInfo().GetCustomAttribute <DefaultEntityComponentRendererAttribute>();

            if (rendererTypeAttribute == null)
            {
                return;
            }
            var renderType = AssemblyRegistry.GetType(rendererTypeAttribute.TypeName);

            if (renderType != null && typeof(IEntityComponentRenderer).GetTypeInfo().IsAssignableFrom(renderType.GetTypeInfo()) && renderType.GetTypeInfo().DeclaredConstructors.Any(x => !x.IsStatic && x.GetParameters().Length == 0))
            {
                var entityComponentRendererType = new EntityComponentRendererType(type, renderType, rendererTypeAttribute.Order);
                RendererTypes.Add(entityComponentRendererType);
            }
        }
Example #3
0
 protected virtual IEntityComponentRenderer CreateRendererCore(EntityComponentRendererType rendererType)
 {
     return (IEntityComponentRenderer)Activator.CreateInstance(rendererType.RendererType);
 }
Example #4
0
 private IEntityComponentRenderer CreateRenderer(EntityComponentRendererType rendererType)
 {
     var renderer = CreateRendererCore(rendererType);
     var handler = RendererCreated;
     if (handler != null)
     {
         handler(this, new EntityComponentRendererEventArgs(this, renderer));
     }
     return renderer;
 }
Example #5
0
 protected virtual IEntityComponentRenderer CreateRendererCore(EntityComponentRendererType rendererType)
 {
     return((IEntityComponentRenderer)Activator.CreateInstance(rendererType.RendererType));
 }
Example #6
0
 private void EntitySystemOnComponentTypeAdded(object sender, Type type)
 {
     var rendererTypeAttribute = type.GetTypeInfo().GetCustomAttribute<DefaultEntityComponentRendererAttribute>();
     if (rendererTypeAttribute == null)
     {
         return;
     }
     var renderType = AssemblyRegistry.GetType(rendererTypeAttribute.TypeName);
     if (renderType != null && typeof(IEntityComponentRenderer).GetTypeInfo().IsAssignableFrom(renderType.GetTypeInfo()) && renderType.GetTypeInfo().DeclaredConstructors.Any(x => !x.IsStatic && x.GetParameters().Length == 0))
     {
         var entityComponentRendererType = new EntityComponentRendererType(type, renderType, rendererTypeAttribute.Order);
         RendererTypes.Add(entityComponentRendererType);
     }
 }