Beispiel #1
0
        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;
                }
            }
        }
Beispiel #2
0
 internal static void SetExecutor(LGuiCommandExecutor Executor)
 {
     CommandExecutor_ = Executor;
 }