diff --git a/Processes/CliProcess.cs b/Processes/CliProcess.cs index 82cffe6..b1dacbd 100644 --- a/Processes/CliProcess.cs +++ b/Processes/CliProcess.cs @@ -18,6 +18,7 @@ internal class CliProcess() : Process("Cli") Console.Clear(); Console.WriteLine("Welcome RemSox!"); Console.WriteLine("Type 'help' to see available commands."); + Console.WriteLine(Environment.ProcessorCount + " CPU cores detected"); Console.Write("> "); historyIndex = CommandManager.GetCommandHistory().Count; diff --git a/Processes/TerminalProcess.cs b/Processes/TerminalProcess.cs index b37074d..5bddea7 100644 --- a/Processes/TerminalProcess.cs +++ b/Processes/TerminalProcess.cs @@ -24,7 +24,7 @@ public class TerminalProcess() : Process("Terminal") internal override void Start(string[] args) { - window = WindowManager.CreateWindow(this, "Terminal", new Size(400, 300)); + window = CreateWindow("Terminal", new Size(400, 300), new Point(100, 100)); PrintLine("RemSox GUI Terminal v1.0"); PrintLine("Type 'help' for commands."); diff --git a/Processing/Process.cs b/Processing/Process.cs index 4b1f56b..f0e2ffa 100644 --- a/Processing/Process.cs +++ b/Processing/Process.cs @@ -1,5 +1,7 @@ +using System.Drawing; using RemSox.Logging; using RemSox.Processing.IPC; +using RemSox.UI.GUI.Windows; namespace RemSox.Processing; @@ -25,6 +27,16 @@ public abstract class Process(string name) { } + protected Window CreateWindow(string title, Size size) + { + return WindowManager.CreateWindow(this, title, size); + } + + protected Window CreateWindow(string title, Size size, Point position) + { + return WindowManager.CreateWindow(this, title, size, position); + } + protected void SendMessageToProcess(int targetProcessId, Message message) { InterProcessCommunicator.Send(targetProcessId, message, this); diff --git a/UI/GUI/Windows/WindowManager.cs b/UI/GUI/Windows/WindowManager.cs index f831208..e4533b4 100644 --- a/UI/GUI/Windows/WindowManager.cs +++ b/UI/GUI/Windows/WindowManager.cs @@ -84,7 +84,7 @@ public static class WindowManager /// /// Creates and registers a new window for the specified process. /// - public static Window CreateWindow(Process process, string title, Point position, Size size) + public static Window CreateWindow(Process process, string title, Size size, Point position) { Window window = new(title, process.Id, GetNextWindowId(), renderSource) { @@ -208,7 +208,7 @@ public static class WindowManager } } - return CreateWindow(process, title, new Point(bestX, bestY), size); + return CreateWindow(process, title, size, new Point(bestX, bestY)); } ///