From e3ece1fb4a91d366b126ff389b75a96bc1f145b3 Mon Sep 17 00:00:00 2001 From: Stone_Red <56473591+Stone-Red-Code@users.noreply.github.com> Date: Tue, 16 Jun 2026 18:20:20 +0200 Subject: [PATCH] Add StackLayout and GridLayout classes for window UI element layouts --- Processes/DesktopProcess.cs | 48 +++++++++++++----- UI/GUI/Layout/GridLayout.cs | 70 ++++++++++++++++++++++++++ UI/GUI/Layout/LayoutExtensions.cs | 16 ++++++ UI/GUI/Layout/StackLayout.cs | 82 +++++++++++++++++++++++++++++++ 4 files changed, 205 insertions(+), 11 deletions(-) create mode 100644 UI/GUI/Layout/GridLayout.cs create mode 100644 UI/GUI/Layout/LayoutExtensions.cs create mode 100644 UI/GUI/Layout/StackLayout.cs diff --git a/Processes/DesktopProcess.cs b/Processes/DesktopProcess.cs index 1779e03..1b3d193 100644 --- a/Processes/DesktopProcess.cs +++ b/Processes/DesktopProcess.cs @@ -1,4 +1,5 @@ using RemSox.Processing; +using RemSox.UI.GUI.Layout; using RemSox.UI.GUI.Rendering; using RemSox.UI.GUI.UIEelements.Controls; using RemSox.UI.GUI.Windows; @@ -21,13 +22,15 @@ internal class DesktopProcess() : Process("Desktop Manager") WindowManager.InvalidateAll(); - // Test window 1: interactive controls + // Test window 1: interactive controls using stack layout Window testWindow = WindowManager.CreateWindow(this, "UI Controls", new Size(280, 260)); testWindow.AutoFlush = true; - Button button = testWindow.CreateUIElement