internal void ExecuteAll(LGuiCommandExecutor Executor) { if (Executor == null) { return; } foreach (var Cmd in Commands_) { switch (Cmd) { case BeginCommand Entity: Executor.Begin(); break; case EndCommand Entity: Executor.End(); break; case SetClipRectCommand Entity: Executor.SetClipRect(Entity.Rect); break; case DrawLineCommand Entity: Executor.DrawLine(Entity.BeginPos, Entity.EndPos, Entity.Color); break; case DrawTriangleCommand Entity: Executor.DrawTriangle(Entity.Vert1, Entity.Vert2, Entity.Vert3, Entity.Color, Entity.IsFill); break; case DrawRectCommand Entity: Executor.DrawRect(Entity.Rect, Entity.Color, Entity.IsFill, Entity.IsRound); break; case DrawCircleCommand Entity: Executor.DrawCircle(Entity.Center, Entity.Radius, Entity.Color, Entity.IsFill); break; case DrawTextCommand Entity: Executor.DrawText(Entity.Text, Entity.Pos, Entity.Color, Entity.Font); break; case DrawTextureIDCommand Entity: Executor.DrawTexture(Entity.TextureID, Entity.SrcRect, Entity.DstRect); break; case DrawTexturePathCommand Entity: Executor.DrawTexture(Entity.FilePath, Entity.SrcRect, Entity.DstRect); break; case DrawPrimitiveCommand Entity: Executor.DrawPrimitive(Entity.Rect, Entity.Vertices, Entity.Colors, Entity.Indices); break; default: break; } } }
internal static void SetExecutor(LGuiCommandExecutor Executor) { CommandExecutor_ = Executor; }