From 84f689b91a73e512b035df40bbcf556b008a3b81 Mon Sep 17 00:00:00 2001 From: MichaelTheShifter Date: Sat, 25 Jun 2016 08:10:03 -0400 Subject: Sort source code into folders. It feels better to know what's responsible for what... Plus I removed some un-needed C# stuff. --- .../WindowsFormsApplication1/HostLayer/OSInfo.cs | 72 ++++++++++++++++++++++ 1 file changed, 72 insertions(+) create mode 100644 source/WindowsFormsApplication1/HostLayer/OSInfo.cs (limited to 'source/WindowsFormsApplication1/HostLayer/OSInfo.cs') diff --git a/source/WindowsFormsApplication1/HostLayer/OSInfo.cs b/source/WindowsFormsApplication1/HostLayer/OSInfo.cs new file mode 100644 index 0000000..53e51dc --- /dev/null +++ b/source/WindowsFormsApplication1/HostLayer/OSInfo.cs @@ -0,0 +1,72 @@ +using System; + +namespace ShiftOS +{ + public class OSInfo + { + + /// + /// System directory separator charactor. + /// + public static string DirectorySeparator + { + get + { + switch(GetPlatformID()) + { + case "microsoft": + return "\\"; + default: + return "/"; + } + } + } + + /// + /// Selects a default, monospace font name from the OS. This is typically used for creating ingame terminals. + /// + /// The monospace font. + public static string GetMonospaceFont() { + string fname = null; + switch (GetPlatformID ()) { + case "microsoft": + fname = "Lucida Console"; + break; + case "unix": + fname = "Monospace"; + break; + case "macosx": + fname = "Menlo"; + break; + } + return fname; + } + + /// + /// This refers to the Home directory of the current user. For example, if the user's name is 'Michael', and the user is on Windows Vista/7/8/10, this value would be 'C:\Users\Michael'. + /// + public static string homePath () + { + return (Environment.OSVersion.Platform == PlatformID.Unix || + Environment.OSVersion.Platform == PlatformID.MacOSX) + ? Environment.GetEnvironmentVariable ("HOME") + : Environment.ExpandEnvironmentVariables ("%HOMEDRIVE%%HOMEPATH%"); + } + + /// + /// Is it Linux? Is it Mac OS? Did Microsoft make it? + /// + /// The platform ID. + public static string GetPlatformID() { + switch (Environment.OSVersion.Platform) { + case PlatformID.Unix: + return "unix"; + case PlatformID.MacOSX: + return "macosx"; + default: + return "microsoft"; + } + } + } +} + -- cgit v1.2.3