diff --git a/LunaWin/LunaWin/LunaForm.Designer.cs b/LunaWin/LunaWin/LunaForm.Designer.cs index 0dd524e..a41451e 100644 --- a/LunaWin/LunaWin/LunaForm.Designer.cs +++ b/LunaWin/LunaWin/LunaForm.Designer.cs @@ -33,6 +33,7 @@ namespace LunaWin this.lblHeader = new System.Windows.Forms.Label(); this.lblText = new System.Windows.Forms.Label(); this.cmdHide = new System.Windows.Forms.Button(); + this.lblVersion = new System.Windows.Forms.Label(); ((System.ComponentModel.ISupportInitialize)(this.imgLogo)).BeginInit(); this.SuspendLayout(); // @@ -50,11 +51,12 @@ namespace LunaWin // this.lblHeader.AutoSize = true; this.lblHeader.Font = new System.Drawing.Font("Segoe UI Semibold", 14F); - this.lblHeader.Location = new System.Drawing.Point(75, 190); + this.lblHeader.Location = new System.Drawing.Point(97, 192); this.lblHeader.Name = "lblHeader"; - this.lblHeader.Size = new System.Drawing.Size(188, 25); + this.lblHeader.Size = new System.Drawing.Size(145, 25); this.lblHeader.TabIndex = 1; - this.lblHeader.Text = "About LunaWin Beta"; + this.lblHeader.Text = "About LunaWin"; + this.lblHeader.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; // // lblText // @@ -78,12 +80,25 @@ namespace LunaWin this.cmdHide.UseVisualStyleBackColor = true; this.cmdHide.Click += new System.EventHandler(this.cmdHide_Click); // + // lblVersion + // + this.lblVersion.Dock = System.Windows.Forms.DockStyle.Bottom; + this.lblVersion.Font = new System.Drawing.Font("Courier New", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.lblVersion.ForeColor = System.Drawing.SystemColors.ControlDark; + this.lblVersion.Location = new System.Drawing.Point(0, 340); + this.lblVersion.Name = "lblVersion"; + this.lblVersion.Size = new System.Drawing.Size(339, 23); + this.lblVersion.TabIndex = 4; + this.lblVersion.Text = "Beta"; + this.lblVersion.TextAlign = System.Drawing.ContentAlignment.MiddleRight; + // // LunaForm // this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; this.ClientSize = new System.Drawing.Size(339, 363); this.ControlBox = false; + this.Controls.Add(this.lblVersion); this.Controls.Add(this.cmdHide); this.Controls.Add(this.lblText); this.Controls.Add(this.lblHeader); @@ -108,5 +123,6 @@ namespace LunaWin private System.Windows.Forms.Label lblHeader; private System.Windows.Forms.Label lblText; private System.Windows.Forms.Button cmdHide; + private System.Windows.Forms.Label lblVersion; } } \ No newline at end of file diff --git a/LunaWin/LunaWin/LunaForm.cs b/LunaWin/LunaWin/LunaForm.cs index e9b14e8..20d7724 100644 --- a/LunaWin/LunaWin/LunaForm.cs +++ b/LunaWin/LunaWin/LunaForm.cs @@ -8,6 +8,7 @@ using System.Runtime.InteropServices; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; +using System.Reflection; namespace LunaWin { @@ -21,6 +22,15 @@ namespace LunaWin public LunaForm() { InitializeComponent(); + + // get current version number + System.Version prodVersion = Assembly.GetExecutingAssembly().GetName().Version; + string strVersion = String.Join(".", prodVersion.Major,prodVersion.Minor,prodVersion.Build); + + // add version number to label text + + // truncate version number + lblVersion.Text = prodVersion.ToString(); } private void cmdHide_Click(object sender, EventArgs e) diff --git a/LunaWin/LunaWin/LunaIcon.cs b/LunaWin/LunaWin/LunaIcon.cs index a306b30..7b50c4f 100644 --- a/LunaWin/LunaWin/LunaIcon.cs +++ b/LunaWin/LunaWin/LunaIcon.cs @@ -32,7 +32,26 @@ namespace LunaWin // set icon resource name string IconName = txtInf.ToTitleCase(currentPhase.Id); - IconName += IsDarkMode() ? "Dark" : "Light" ; + + OperatingSystem TheSystem = Environment.OSVersion; + + switch (TheSystem.Version.Major) + { + // windows 10 and 11 support light/dark modes + case(10): case(11): + IconName += IsDarkMode() ? "Dark" : "Light"; + break; + // windows 8 is dark only + case(8): + IconName += "Dark"; + break; + // windows vista and 7 use color icons + default: + IconName += "Color"; + break; + } + + // set the icon resource Globals.lunaIcon.Icon = Resources.ResourceManager.GetObject(IconName) as Icon; diff --git a/LunaWin/LunaWin/LunaWin.csproj b/LunaWin/LunaWin/LunaWin.csproj index 3957975..9c526c4 100644 --- a/LunaWin/LunaWin/LunaWin.csproj +++ b/LunaWin/LunaWin/LunaWin.csproj @@ -12,6 +12,7 @@ 512 true true + false publish\ true Disk @@ -24,7 +25,6 @@ true 0 1.0.0.%2a - false false true @@ -52,6 +52,15 @@ Resources\LunaWin.ico + + false + + + app.manifest + + + + @@ -100,6 +109,7 @@ Resources.resx True + SettingsSingleFileGenerator Settings.Designer.cs @@ -188,5 +198,29 @@ false + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/LunaWin/LunaWin/Program.cs b/LunaWin/LunaWin/Program.cs index 546bed8..a049eda 100644 --- a/LunaWin/LunaWin/Program.cs +++ b/LunaWin/LunaWin/Program.cs @@ -1,6 +1,7 @@ using System; using System.Collections.Generic; using System.Linq; +using System.Threading; using System.Threading.Tasks; using System.Windows.Forms; @@ -8,34 +9,45 @@ namespace LunaWin { static class Program { + /// + /// application guid + /// + static Mutex mutex = new Mutex(true, "{4e497175-ad4e-4974-8201-4c876ae69985}"); + /// /// The main entry point for the application. /// [STAThread] static void Main() { - Application.EnableVisualStyles(); - Application.SetCompatibleTextRenderingDefault(false); + if(mutex.WaitOne(TimeSpan.Zero,true)) + { + Application.EnableVisualStyles(); + Application.SetCompatibleTextRenderingDefault(false); - // set up the hidden form for handling window messaging events - LunaHidden lunaHidden = new LunaHidden(); - lunaHidden.Show(); + // set up the hidden form for handling window messaging events + LunaHidden lunaHidden = new LunaHidden(); + lunaHidden.Show(); - // set up the about window - Globals.lunaForm = new LunaForm(); + // set up the about window + Globals.lunaForm = new LunaForm(); - // get current startup preference - LunaMenu lm = new LunaMenu(); - lm.GetStartup(); + // get current startup preference + LunaMenu lm = new LunaMenu(); + lm.GetStartup(); - // invoke the icon display method - using (LunaIcon lunaIcon = new LunaIcon()) - { - lunaIcon.Display(); + // invoke the icon display method + using (LunaIcon lunaIcon = new LunaIcon()) + { + lunaIcon.Display(); - Application.Run(); + Application.Run(); - //Application.Run(); + //Application.Run(); + } + } else + { + Application.Exit(); } } } diff --git a/LunaWin/LunaWin/Properties/AssemblyInfo.cs b/LunaWin/LunaWin/Properties/AssemblyInfo.cs index a7bedf8..f20a544 100644 --- a/LunaWin/LunaWin/Properties/AssemblyInfo.cs +++ b/LunaWin/LunaWin/Properties/AssemblyInfo.cs @@ -32,5 +32,5 @@ using System.Runtime.InteropServices; // You can specify all the values or you can default the Build and Revision Numbers // by using the '*' as shown below: // [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("1.0.0.0")] -[assembly: AssemblyFileVersion("1.0.0.0")] +[assembly: AssemblyVersion("1.0.2.0")] +[assembly: AssemblyFileVersion("1.0.2.0")] diff --git a/LunaWin/LunaWin/Properties/Resources.Designer.cs b/LunaWin/LunaWin/Properties/Resources.Designer.cs index d5f1e70..e49bd26 100644 --- a/LunaWin/LunaWin/Properties/Resources.Designer.cs +++ b/LunaWin/LunaWin/Properties/Resources.Designer.cs @@ -80,6 +80,16 @@ namespace LunaWin.Properties { } } + /// + /// Looks up a localized resource of type System.Drawing.Icon similar to (Icon). + /// + internal static System.Drawing.Icon FirstqColor { + get { + object obj = ResourceManager.GetObject("FirstqColor", resourceCulture); + return ((System.Drawing.Icon)(obj)); + } + } + /// /// Looks up a localized resource of type System.Drawing.Icon similar to (Icon). /// @@ -100,6 +110,16 @@ namespace LunaWin.Properties { } } + /// + /// Looks up a localized resource of type System.Drawing.Icon similar to (Icon). + /// + internal static System.Drawing.Icon FullColor { + get { + object obj = ResourceManager.GetObject("FullColor", resourceCulture); + return ((System.Drawing.Icon)(obj)); + } + } + /// /// Looks up a localized resource of type System.Drawing.Icon similar to (Icon). /// @@ -130,6 +150,16 @@ namespace LunaWin.Properties { } } + /// + /// Looks up a localized resource of type System.Drawing.Icon similar to (Icon). + /// + internal static System.Drawing.Icon LastqColor { + get { + object obj = ResourceManager.GetObject("LastqColor", resourceCulture); + return ((System.Drawing.Icon)(obj)); + } + } + /// /// Looks up a localized resource of type System.Drawing.Icon similar to (Icon). /// @@ -160,6 +190,16 @@ namespace LunaWin.Properties { } } + /// + /// Looks up a localized resource of type System.Drawing.Icon similar to (Icon). + /// + internal static System.Drawing.Icon NewColor { + get { + object obj = ResourceManager.GetObject("NewColor", resourceCulture); + return ((System.Drawing.Icon)(obj)); + } + } + /// /// Looks up a localized resource of type System.Drawing.Icon similar to (Icon). /// @@ -180,6 +220,16 @@ namespace LunaWin.Properties { } } + /// + /// Looks up a localized resource of type System.Drawing.Icon similar to (Icon). + /// + internal static System.Drawing.Icon WancColor { + get { + object obj = ResourceManager.GetObject("WancColor", resourceCulture); + return ((System.Drawing.Icon)(obj)); + } + } + /// /// Looks up a localized resource of type System.Drawing.Icon similar to (Icon). /// @@ -200,6 +250,16 @@ namespace LunaWin.Properties { } } + /// + /// Looks up a localized resource of type System.Drawing.Icon similar to (Icon). + /// + internal static System.Drawing.Icon WangColor { + get { + object obj = ResourceManager.GetObject("WangColor", resourceCulture); + return ((System.Drawing.Icon)(obj)); + } + } + /// /// Looks up a localized resource of type System.Drawing.Icon similar to (Icon). /// @@ -220,6 +280,16 @@ namespace LunaWin.Properties { } } + /// + /// Looks up a localized resource of type System.Drawing.Icon similar to (Icon). + /// + internal static System.Drawing.Icon WaxcColor { + get { + object obj = ResourceManager.GetObject("WaxcColor", resourceCulture); + return ((System.Drawing.Icon)(obj)); + } + } + /// /// Looks up a localized resource of type System.Drawing.Icon similar to (Icon). /// @@ -240,6 +310,16 @@ namespace LunaWin.Properties { } } + /// + /// Looks up a localized resource of type System.Drawing.Icon similar to (Icon). + /// + internal static System.Drawing.Icon WaxgColor { + get { + object obj = ResourceManager.GetObject("WaxgColor", resourceCulture); + return ((System.Drawing.Icon)(obj)); + } + } + /// /// Looks up a localized resource of type System.Drawing.Icon similar to (Icon). /// diff --git a/LunaWin/LunaWin/Properties/Resources.resx b/LunaWin/LunaWin/Properties/Resources.resx index 18553a3..604c4b8 100644 --- a/LunaWin/LunaWin/Properties/Resources.resx +++ b/LunaWin/LunaWin/Properties/Resources.resx @@ -124,12 +124,18 @@ ..\Resources\DefaultLight.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\FirstqColor.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + ..\Resources\FirstqDark.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a ..\Resources\FirstqLight.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\FullColor.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + ..\Resources\FullDark.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a @@ -139,6 +145,9 @@ ..\Resources\fullmoon200.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\LastqColor.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + ..\Resources\LastqDark.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a @@ -148,30 +157,45 @@ ..\Resources\LunaWin.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\NewColor.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + ..\Resources\NewDark.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a ..\Resources\NewLight.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\WancColor.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + ..\Resources\WancDark.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a ..\Resources\WancLight.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\WangColor.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + ..\Resources\WangDark.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a ..\Resources\WangLight.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\WaxcColor.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + ..\Resources\WaxcDark.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a ..\Resources\WaxcLight.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\WaxgColor.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + ..\Resources\WaxgDark.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a diff --git a/LunaWin/LunaWin/Resources/FirstqColor.ico b/LunaWin/LunaWin/Resources/FirstqColor.ico new file mode 100644 index 0000000..ec94fe0 Binary files /dev/null and b/LunaWin/LunaWin/Resources/FirstqColor.ico differ diff --git a/LunaWin/LunaWin/Resources/FullColor.ico b/LunaWin/LunaWin/Resources/FullColor.ico new file mode 100644 index 0000000..7b97186 Binary files /dev/null and b/LunaWin/LunaWin/Resources/FullColor.ico differ diff --git a/LunaWin/LunaWin/Resources/LastqColor.ico b/LunaWin/LunaWin/Resources/LastqColor.ico new file mode 100644 index 0000000..979cbbd Binary files /dev/null and b/LunaWin/LunaWin/Resources/LastqColor.ico differ diff --git a/LunaWin/LunaWin/Resources/NewColor.ico b/LunaWin/LunaWin/Resources/NewColor.ico new file mode 100644 index 0000000..f9307dc Binary files /dev/null and b/LunaWin/LunaWin/Resources/NewColor.ico differ diff --git a/LunaWin/LunaWin/Resources/WancColor.ico b/LunaWin/LunaWin/Resources/WancColor.ico new file mode 100644 index 0000000..95c8a60 Binary files /dev/null and b/LunaWin/LunaWin/Resources/WancColor.ico differ diff --git a/LunaWin/LunaWin/Resources/WangColor.ico b/LunaWin/LunaWin/Resources/WangColor.ico new file mode 100644 index 0000000..316098f Binary files /dev/null and b/LunaWin/LunaWin/Resources/WangColor.ico differ diff --git a/LunaWin/LunaWin/Resources/WaxcColor.ico b/LunaWin/LunaWin/Resources/WaxcColor.ico new file mode 100644 index 0000000..7a67719 Binary files /dev/null and b/LunaWin/LunaWin/Resources/WaxcColor.ico differ diff --git a/LunaWin/LunaWin/Resources/WaxgColor.ico b/LunaWin/LunaWin/Resources/WaxgColor.ico new file mode 100644 index 0000000..17af3b4 Binary files /dev/null and b/LunaWin/LunaWin/Resources/WaxgColor.ico differ diff --git a/LunaWin/LunaWin/app.manifest b/LunaWin/LunaWin/app.manifest new file mode 100644 index 0000000..d975bb4 --- /dev/null +++ b/LunaWin/LunaWin/app.manifest @@ -0,0 +1,79 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +