using System;
namespace ET.Client
{
public interface IYIUILoopRenderer
{
///
/// 渲染数据项
///
/// 渲染器实体
/// 显示对象
/// 数据项
/// 数据的索引
/// 是否被选中
void Renderer(Entity self, Entity item, object data, int index, bool select);
}
public interface IYIUILoopRenderer : ISystemType, IYIUILoopRenderer
{
}
[EntitySystem]
public abstract class YIUILoopRendererSystem : SystemObject, IYIUILoopRenderer
where T1 : Entity, IYIUIBind, IYIUIInitialize
where T2 : Entity, IYIUIBind, IYIUIInitialize
{
Type ISystemType.Type()
{
return typeof(T1);
}
Type ISystemType.SystemType()
{
return typeof(IYIUILoopRenderer);
}
void IYIUILoopRenderer.Renderer(Entity self, Entity item, object data, int index, bool select)
{
YIUILoopRenderer((T1)self, (T2)item, (T3)data, index, select);
}
protected abstract void YIUILoopRenderer(T1 self, T2 item, T3 data, int index, bool select);
}
}