Added initial ability to minimise to notification area

Used some awesome help from Hans Passant to build
logic to allow minimise to notification area as well as
be able to change profiles etc from the notification area.

https://stackoverflow.com/questions/1730731/how-to-start-winform-app-minimized-to-tray
This commit is contained in:
Terry MacDonald 2020-10-26 14:30:00 +13:00
parent ed0ccede4c
commit 23930a2a15
8 changed files with 319 additions and 125 deletions

View File

@ -20,7 +20,7 @@ using NvAPIWrapper.Display;
namespace HeliosPlus.Shared namespace HeliosPlus.Shared
{ {
public class ProfileItem public class ProfileItem : IComparable
{ {
private static List<ProfileItem> _allSavedProfiles = new List<ProfileItem>(); private static List<ProfileItem> _allSavedProfiles = new List<ProfileItem>();
private ProfileIcon _profileIcon; private ProfileIcon _profileIcon;
@ -389,9 +389,20 @@ namespace HeliosPlus.Shared
return uncheckedFilename; return uncheckedFilename;
} }
public int CompareTo(object obj)
{
if (obj == null) return 1;
ProfileItem otherProfile = obj as ProfileItem;
if (otherProfile != null)
return this.Name.CompareTo(otherProfile.Name);
else
throw new ArgumentException("Object to CompareTo is not a Shortcut");
} }
// Custom comparer for the Profile class }
// Custom Equality comparer for the Profile class
// Allows us to use 'Contains' // Allows us to use 'Contains'
class ProfileComparer : IEqualityComparer<ProfileItem> class ProfileComparer : IEqualityComparer<ProfileItem>
{ {

View File

@ -468,6 +468,10 @@ namespace HeliosPlus.Shared
_currentProfile = loadedProfile; _currentProfile = loadedProfile;
} }
// Sort the profiles alphabetically
_allProfiles.Sort();
} }
} else } else
{ {

View File

@ -60,6 +60,9 @@
</PropertyGroup> </PropertyGroup>
<PropertyGroup /> <PropertyGroup />
<PropertyGroup /> <PropertyGroup />
<PropertyGroup>
<SignManifests>false</SignManifests>
</PropertyGroup>
<ItemGroup> <ItemGroup>
<Reference Include="Microsoft.CSharp" /> <Reference Include="Microsoft.CSharp" />
<Reference Include="PresentationCore" /> <Reference Include="PresentationCore" />

View File

@ -72,7 +72,7 @@ namespace HeliosPlus
} }
public class ShortcutItem public class ShortcutItem : IComparable
{ {
//private static List<ShortcutItem> _allSavedShortcuts = new List<ShortcutItem>(); //private static List<ShortcutItem> _allSavedShortcuts = new List<ShortcutItem>();
@ -1495,6 +1495,17 @@ namespace HeliosPlus
} }
} }
public int CompareTo(object obj)
{
if (obj == null) return 1;
ShortcutItem otherShortcut = obj as ShortcutItem;
if (otherShortcut != null)
return this.Name.CompareTo(otherShortcut.Name);
else
throw new ArgumentException("Object to CompareTo is not a Shortcut");
}
} }
/*internal class IconActions /*internal class IconActions

View File

@ -399,6 +399,9 @@ namespace HeliosPlus
} }
} }
} }
// Sort the shortcuts alphabetically
_allShortcuts.Sort();
} }
} }
_shortcutsLoaded = true; _shortcutsLoaded = true;

View File

@ -37,16 +37,19 @@
this.btn_setup_game_shortcuts = new System.Windows.Forms.Button(); this.btn_setup_game_shortcuts = new System.Windows.Forms.Button();
this.btn_exit = new System.Windows.Forms.Button(); this.btn_exit = new System.Windows.Forms.Button();
this.pb_game_shortcut = new System.Windows.Forms.PictureBox(); this.pb_game_shortcut = new System.Windows.Forms.PictureBox();
this.mainNotifyIcon = new System.Windows.Forms.NotifyIcon(this.components); this.notifyIcon = new System.Windows.Forms.NotifyIcon(this.components);
this.mainContextMenuStrip = new System.Windows.Forms.ContextMenuStrip(this.components); this.mainContextMenuStrip = new System.Windows.Forms.ContextMenuStrip(this.components);
this.toolStripMenuItem1 = new System.Windows.Forms.ToolStripMenuItem(); this.toolStripMenuItemHeading = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripSeparator1 = new System.Windows.Forms.ToolStripSeparator(); this.toolStripSeparator = new System.Windows.Forms.ToolStripSeparator();
this.changeDisplayProfileToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.profilesToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.runShortcutToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.openApplicationWindowToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); this.openApplicationWindowToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripSeparator2 = new System.Windows.Forms.ToolStripSeparator(); this.profileToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.toolStripMenuItem2 = new System.Windows.Forms.ToolStripMenuItem(); this.profilesToolStripMenuItemHeading = new System.Windows.Forms.ToolStripMenuItem();
this.profileToolStripSeparator = new System.Windows.Forms.ToolStripSeparator();
this.shortcutToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.shortcutsToolStripMenuItemHeading = new System.Windows.Forms.ToolStripMenuItem();
this.shortcutToolStripSeparator = new System.Windows.Forms.ToolStripSeparator();
this.toolStripSeparator1 = new System.Windows.Forms.ToolStripSeparator();
this.exitToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).BeginInit();
this.splitContainer1.Panel1.SuspendLayout(); this.splitContainer1.Panel1.SuspendLayout();
this.splitContainer1.Panel2.SuspendLayout(); this.splitContainer1.Panel2.SuspendLayout();
@ -127,65 +130,86 @@
this.pb_game_shortcut.TabStop = false; this.pb_game_shortcut.TabStop = false;
this.pb_game_shortcut.Click += new System.EventHandler(this.pb_game_shortcut_Click); this.pb_game_shortcut.Click += new System.EventHandler(this.pb_game_shortcut_Click);
// //
// mainNotifyIcon // notifyIcon
// //
resources.ApplyResources(this.mainNotifyIcon, "mainNotifyIcon"); resources.ApplyResources(this.notifyIcon, "notifyIcon");
this.mainNotifyIcon.ContextMenuStrip = this.mainContextMenuStrip; this.notifyIcon.ContextMenuStrip = this.mainContextMenuStrip;
// //
// mainContextMenuStrip // mainContextMenuStrip
// //
this.mainContextMenuStrip.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { this.mainContextMenuStrip.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.toolStripMenuItem1, this.toolStripMenuItemHeading,
this.toolStripSeparator1, this.toolStripSeparator,
this.openApplicationWindowToolStripMenuItem, this.openApplicationWindowToolStripMenuItem,
this.changeDisplayProfileToolStripMenuItem, this.profileToolStripMenuItem,
this.runShortcutToolStripMenuItem}); this.shortcutToolStripMenuItem,
this.toolStripSeparator1,
this.exitToolStripMenuItem});
this.mainContextMenuStrip.Name = "mainContextMenuStrip"; this.mainContextMenuStrip.Name = "mainContextMenuStrip";
resources.ApplyResources(this.mainContextMenuStrip, "mainContextMenuStrip"); resources.ApplyResources(this.mainContextMenuStrip, "mainContextMenuStrip");
// //
// toolStripMenuItem1 // toolStripMenuItemHeading
// //
resources.ApplyResources(this.toolStripMenuItem1, "toolStripMenuItem1"); resources.ApplyResources(this.toolStripMenuItemHeading, "toolStripMenuItemHeading");
this.toolStripMenuItem1.Name = "toolStripMenuItem1"; this.toolStripMenuItemHeading.Name = "toolStripMenuItemHeading";
//
// toolStripSeparator
//
this.toolStripSeparator.Name = "toolStripSeparator";
resources.ApplyResources(this.toolStripSeparator, "toolStripSeparator");
//
// openApplicationWindowToolStripMenuItem
//
resources.ApplyResources(this.openApplicationWindowToolStripMenuItem, "openApplicationWindowToolStripMenuItem");
this.openApplicationWindowToolStripMenuItem.Name = "openApplicationWindowToolStripMenuItem";
this.openApplicationWindowToolStripMenuItem.Click += new System.EventHandler(this.openApplicationWindowToolStripMenuItem_Click);
//
// profileToolStripMenuItem
//
this.profileToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.profilesToolStripMenuItemHeading,
this.profileToolStripSeparator});
this.profileToolStripMenuItem.Name = "profileToolStripMenuItem";
resources.ApplyResources(this.profileToolStripMenuItem, "profileToolStripMenuItem");
//
// profilesToolStripMenuItemHeading
//
resources.ApplyResources(this.profilesToolStripMenuItemHeading, "profilesToolStripMenuItemHeading");
this.profilesToolStripMenuItemHeading.Name = "profilesToolStripMenuItemHeading";
//
// profileToolStripSeparator
//
this.profileToolStripSeparator.Name = "profileToolStripSeparator";
resources.ApplyResources(this.profileToolStripSeparator, "profileToolStripSeparator");
//
// shortcutToolStripMenuItem
//
this.shortcutToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.shortcutsToolStripMenuItemHeading,
this.shortcutToolStripSeparator});
this.shortcutToolStripMenuItem.Name = "shortcutToolStripMenuItem";
resources.ApplyResources(this.shortcutToolStripMenuItem, "shortcutToolStripMenuItem");
//
// shortcutsToolStripMenuItemHeading
//
resources.ApplyResources(this.shortcutsToolStripMenuItemHeading, "shortcutsToolStripMenuItemHeading");
this.shortcutsToolStripMenuItemHeading.Name = "shortcutsToolStripMenuItemHeading";
//
// shortcutToolStripSeparator
//
this.shortcutToolStripSeparator.Name = "shortcutToolStripSeparator";
resources.ApplyResources(this.shortcutToolStripSeparator, "shortcutToolStripSeparator");
// //
// toolStripSeparator1 // toolStripSeparator1
// //
this.toolStripSeparator1.Name = "toolStripSeparator1"; this.toolStripSeparator1.Name = "toolStripSeparator1";
resources.ApplyResources(this.toolStripSeparator1, "toolStripSeparator1"); resources.ApplyResources(this.toolStripSeparator1, "toolStripSeparator1");
// //
// changeDisplayProfileToolStripMenuItem // exitToolStripMenuItem
// //
this.changeDisplayProfileToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { this.exitToolStripMenuItem.Name = "exitToolStripMenuItem";
this.profilesToolStripMenuItem, resources.ApplyResources(this.exitToolStripMenuItem, "exitToolStripMenuItem");
this.toolStripSeparator2, this.exitToolStripMenuItem.Click += new System.EventHandler(this.exitToolStripMenuItem_Click);
this.toolStripMenuItem2});
this.changeDisplayProfileToolStripMenuItem.Name = "changeDisplayProfileToolStripMenuItem";
resources.ApplyResources(this.changeDisplayProfileToolStripMenuItem, "changeDisplayProfileToolStripMenuItem");
//
// profilesToolStripMenuItem
//
this.profilesToolStripMenuItem.Name = "profilesToolStripMenuItem";
resources.ApplyResources(this.profilesToolStripMenuItem, "profilesToolStripMenuItem");
//
// runShortcutToolStripMenuItem
//
this.runShortcutToolStripMenuItem.Name = "runShortcutToolStripMenuItem";
resources.ApplyResources(this.runShortcutToolStripMenuItem, "runShortcutToolStripMenuItem");
//
// openApplicationWindowToolStripMenuItem
//
resources.ApplyResources(this.openApplicationWindowToolStripMenuItem, "openApplicationWindowToolStripMenuItem");
this.openApplicationWindowToolStripMenuItem.Name = "openApplicationWindowToolStripMenuItem";
//
// toolStripSeparator2
//
this.toolStripSeparator2.Name = "toolStripSeparator2";
resources.ApplyResources(this.toolStripSeparator2, "toolStripSeparator2");
//
// toolStripMenuItem2
//
this.toolStripMenuItem2.Name = "toolStripMenuItem2";
resources.ApplyResources(this.toolStripMenuItem2, "toolStripMenuItem2");
// //
// MainForm // MainForm
// //
@ -218,15 +242,18 @@
private System.Windows.Forms.Button btn_setup_display_profiles; private System.Windows.Forms.Button btn_setup_display_profiles;
private System.Windows.Forms.Button btn_setup_game_shortcuts; private System.Windows.Forms.Button btn_setup_game_shortcuts;
private System.Windows.Forms.Label lbl_version; private System.Windows.Forms.Label lbl_version;
private System.Windows.Forms.NotifyIcon mainNotifyIcon; private System.Windows.Forms.NotifyIcon notifyIcon;
private System.Windows.Forms.ContextMenuStrip mainContextMenuStrip; private System.Windows.Forms.ContextMenuStrip mainContextMenuStrip;
private System.Windows.Forms.ToolStripMenuItem toolStripMenuItem1; private System.Windows.Forms.ToolStripMenuItem toolStripMenuItemHeading;
private System.Windows.Forms.ToolStripSeparator toolStripSeparator1; private System.Windows.Forms.ToolStripSeparator toolStripSeparator;
private System.Windows.Forms.ToolStripMenuItem changeDisplayProfileToolStripMenuItem; private System.Windows.Forms.ToolStripMenuItem profileToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem profilesToolStripMenuItem; private System.Windows.Forms.ToolStripMenuItem profilesToolStripMenuItemHeading;
private System.Windows.Forms.ToolStripMenuItem runShortcutToolStripMenuItem; private System.Windows.Forms.ToolStripMenuItem shortcutToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem openApplicationWindowToolStripMenuItem; private System.Windows.Forms.ToolStripMenuItem openApplicationWindowToolStripMenuItem;
private System.Windows.Forms.ToolStripSeparator toolStripSeparator2; private System.Windows.Forms.ToolStripSeparator profileToolStripSeparator;
private System.Windows.Forms.ToolStripMenuItem toolStripMenuItem2; private System.Windows.Forms.ToolStripMenuItem shortcutsToolStripMenuItemHeading;
private System.Windows.Forms.ToolStripSeparator shortcutToolStripSeparator;
private System.Windows.Forms.ToolStripSeparator toolStripSeparator1;
private System.Windows.Forms.ToolStripMenuItem exitToolStripMenuItem;
} }
} }

View File

@ -10,18 +10,48 @@ using System.Windows.Forms;
using HeliosPlus.GameLibraries; using HeliosPlus.GameLibraries;
using System.Threading; using System.Threading;
using System.Reflection; using System.Reflection;
using HeliosPlus.Shared;
namespace HeliosPlus.UIForms namespace HeliosPlus.UIForms
{ {
public partial class MainForm : Form public partial class MainForm : Form
{ {
private bool allowVisible; // ContextMenu's Show command used
private bool allowClose; // ContextMenu's Exit command used
public MainForm() public MainForm()
{ {
InitializeComponent(); InitializeComponent();
btn_setup_display_profiles.Parent = splitContainer1.Panel1; btn_setup_display_profiles.Parent = splitContainer1.Panel1;
btn_setup_game_shortcuts.Parent = splitContainer1.Panel2; btn_setup_game_shortcuts.Parent = splitContainer1.Panel2;
lbl_version.Text = string.Format(lbl_version.Text, Assembly.GetExecutingAssembly().GetName().Version); lbl_version.Text = string.Format(lbl_version.Text, Assembly.GetExecutingAssembly().GetName().Version);
notifyIcon.Visible = true;
// Make the form show
allowVisible = true;
// Close the application when the form is closed
allowClose = true;
RefreshNotifyIconMenus();
}
protected override void SetVisibleCore(bool value)
{
if (!allowVisible)
{
value = false;
if (!this.IsHandleCreated) CreateHandle();
}
base.SetVisibleCore(value);
}
protected override void OnFormClosing(FormClosingEventArgs e)
{
if (!allowClose)
{
this.Hide();
e.Cancel = true;
}
base.OnFormClosing(e);
} }
private void btn_exit_Click(object sender, EventArgs e) private void btn_exit_Click(object sender, EventArgs e)
@ -59,5 +89,65 @@ namespace HeliosPlus.UIForms
//SteamGame.GetAllInstalledGames(); //SteamGame.GetAllInstalledGames();
} }
private void RefreshNotifyIconMenus()
{
// Clear all the profiles
profileToolStripMenuItem.DropDownItems.Clear();
// Prepare the heading shortcuts
ToolStripMenuItem heading = new ToolStripMenuItem();
heading.Text = "Display Profiles";
Font headingFont = new Font(heading.Font, FontStyle.Italic);
heading.Font = headingFont;
heading.Enabled = false;
profileToolStripMenuItem.DropDownItems.Add(heading);
ToolStripSeparator separator = new ToolStripSeparator();
profileToolStripMenuItem.DropDownItems.Add(separator);
// Add the current slist of profiles into the NotifyIcon context menu
foreach (ProfileItem profile in ProfileRepository.AllProfiles)
{
profileToolStripMenuItem.DropDownItems.Add(profile.Name,profile.ProfileBitmap, runProfileToolStripMenuItem_Click);
}
// Clear all the shortcuts
shortcutToolStripMenuItem.DropDownItems.Clear();
// Prepare the heading shortcuts
heading = new ToolStripMenuItem();
heading.Text = "Game Shortcuts";
heading.Font = headingFont;
heading.Enabled = false;
shortcutToolStripMenuItem.DropDownItems.Add(heading);
separator = new ToolStripSeparator();
shortcutToolStripMenuItem.DropDownItems.Add(separator);
// Add the current list of profiles into the NotifyIcon context menu
foreach (ShortcutItem shortcut in ShortcutRepository.AllShortcuts)
{
shortcutToolStripMenuItem.DropDownItems.Add(shortcut.Name,shortcut.ShortcutBitmap, runShortcutToolStripMenuItem_Click);
}
}
private void runProfileToolStripMenuItem_Click(object sender, EventArgs e)
{
this.Show();
}
private void runShortcutToolStripMenuItem_Click(object sender, EventArgs e)
{
this.Show();
}
private void openApplicationWindowToolStripMenuItem_Click(object sender, EventArgs e)
{
allowVisible = true;
Show();
BringToFront();
}
private void exitToolStripMenuItem_Click(object sender, EventArgs e)
{
allowClose = true;
Application.Exit();
}
} }
} }

View File

@ -10768,7 +10768,7 @@
<value>Microsoft Sans Serif, 21.75pt</value> <value>Microsoft Sans Serif, 21.75pt</value>
</data> </data>
<data name="btn_setup_game_shortcuts.Location" type="System.Drawing.Point, System.Drawing"> <data name="btn_setup_game_shortcuts.Location" type="System.Drawing.Point, System.Drawing">
<value>212, 194</value> <value>212, 180</value>
</data> </data>
<data name="btn_setup_game_shortcuts.Size" type="System.Drawing.Size, System.Drawing"> <data name="btn_setup_game_shortcuts.Size" type="System.Drawing.Size, System.Drawing">
<value>360, 50</value> <value>360, 50</value>
@ -10798,7 +10798,7 @@
<value>Flat</value> <value>Flat</value>
</data> </data>
<data name="btn_exit.Location" type="System.Drawing.Point, System.Drawing"> <data name="btn_exit.Location" type="System.Drawing.Point, System.Drawing">
<value>698, 354</value> <value>698, 347</value>
</data> </data>
<data name="btn_exit.Size" type="System.Drawing.Size, System.Drawing"> <data name="btn_exit.Size" type="System.Drawing.Size, System.Drawing">
<value>75, 23</value> <value>75, 23</value>
@ -63142,28 +63142,31 @@
<data name="&gt;&gt;splitContainer1.ZOrder" xml:space="preserve"> <data name="&gt;&gt;splitContainer1.ZOrder" xml:space="preserve">
<value>1</value> <value>1</value>
</data> </data>
<metadata name="mainNotifyIcon.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> <metadata name="notifyIcon.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value> <value>17, 17</value>
</metadata> </metadata>
<data name="mainNotifyIcon.BalloonTipText" xml:space="preserve"> <data name="notifyIcon.BalloonTipText" xml:space="preserve">
<value>Use this application to automatically change your display settings when you run a game.</value> <value>Use this application to automatically change your display settings when you run a game.</value>
</data> </data>
<data name="mainNotifyIcon.BalloonTipTitle" xml:space="preserve"> <data name="notifyIcon.BalloonTipTitle" xml:space="preserve">
<value>HeliosPlus</value> <value>HeliosPlus</value>
</data> </data>
<metadata name="mainContextMenuStrip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> <metadata name="mainContextMenuStrip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>152, 17</value> <value>152, 17</value>
</metadata> </metadata>
<data name="toolStripMenuItem1.Enabled" type="System.Boolean, mscorlib"> <data name="toolStripMenuItemHeading.Enabled" type="System.Boolean, mscorlib">
<value>False</value> <value>False</value>
</data> </data>
<data name="toolStripMenuItem1.Size" type="System.Drawing.Size, System.Drawing"> <data name="toolStripMenuItemHeading.Font" type="System.Drawing.Font, System.Drawing">
<value>Segoe UI, 9pt, style=Italic</value>
</data>
<data name="toolStripMenuItemHeading.Size" type="System.Drawing.Size, System.Drawing">
<value>218, 22</value> <value>218, 22</value>
</data> </data>
<data name="toolStripMenuItem1.Text" xml:space="preserve"> <data name="toolStripMenuItemHeading.Text" xml:space="preserve">
<value>HeliosPlus</value> <value>HeliosPlus</value>
</data> </data>
<data name="toolStripSeparator1.Size" type="System.Drawing.Size, System.Drawing"> <data name="toolStripSeparator.Size" type="System.Drawing.Size, System.Drawing">
<value>215, 6</value> <value>215, 6</value>
</data> </data>
<data name="openApplicationWindowToolStripMenuItem.Font" type="System.Drawing.Font, System.Drawing"> <data name="openApplicationWindowToolStripMenuItem.Font" type="System.Drawing.Font, System.Drawing">
@ -63175,35 +63178,59 @@
<data name="openApplicationWindowToolStripMenuItem.Text" xml:space="preserve"> <data name="openApplicationWindowToolStripMenuItem.Text" xml:space="preserve">
<value>Open Application Window</value> <value>Open Application Window</value>
</data> </data>
<data name="profilesToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> <data name="profilesToolStripMenuItemHeading.Enabled" type="System.Boolean, mscorlib">
<value>180, 22</value> <value>False</value>
</data> </data>
<data name="profilesToolStripMenuItem.Text" xml:space="preserve"> <data name="profilesToolStripMenuItemHeading.Font" type="System.Drawing.Font, System.Drawing">
<value>Segoe UI, 9pt, style=Italic</value>
</data>
<data name="profilesToolStripMenuItemHeading.Size" type="System.Drawing.Size, System.Drawing">
<value>155, 22</value>
</data>
<data name="profilesToolStripMenuItemHeading.Text" xml:space="preserve">
<value>Display Profiles</value> <value>Display Profiles</value>
</data> </data>
<data name="toolStripSeparator2.Size" type="System.Drawing.Size, System.Drawing"> <data name="profileToolStripSeparator.Size" type="System.Drawing.Size, System.Drawing">
<value>177, 6</value> <value>152, 6</value>
</data> </data>
<data name="toolStripMenuItem2.Size" type="System.Drawing.Size, System.Drawing"> <data name="profileToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
<value>180, 22</value>
</data>
<data name="toolStripMenuItem2.Text" xml:space="preserve">
<value>DIsplay Profile 1</value>
</data>
<data name="changeDisplayProfileToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
<value>218, 22</value> <value>218, 22</value>
</data> </data>
<data name="changeDisplayProfileToolStripMenuItem.Text" xml:space="preserve"> <data name="profileToolStripMenuItem.Text" xml:space="preserve">
<value>Change Display Profile To</value> <value>Change Display Profile</value>
</data> </data>
<data name="runShortcutToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing"> <data name="shortcutsToolStripMenuItemHeading.Enabled" type="System.Boolean, mscorlib">
<value>False</value>
</data>
<data name="shortcutsToolStripMenuItemHeading.Font" type="System.Drawing.Font, System.Drawing">
<value>Segoe UI, 9pt, style=Italic</value>
</data>
<data name="shortcutsToolStripMenuItemHeading.Size" type="System.Drawing.Size, System.Drawing">
<value>156, 22</value>
</data>
<data name="shortcutsToolStripMenuItemHeading.Text" xml:space="preserve">
<value>Game Shortcuts</value>
</data>
<data name="shortcutToolStripSeparator.Size" type="System.Drawing.Size, System.Drawing">
<value>153, 6</value>
</data>
<data name="shortcutToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
<value>218, 22</value> <value>218, 22</value>
</data> </data>
<data name="runShortcutToolStripMenuItem.Text" xml:space="preserve"> <data name="shortcutToolStripMenuItem.Text" xml:space="preserve">
<value>Run Shortcut</value> <value>Run Game Shortcut</value>
</data>
<data name="toolStripSeparator1.Size" type="System.Drawing.Size, System.Drawing">
<value>215, 6</value>
</data>
<data name="exitToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
<value>218, 22</value>
</data>
<data name="exitToolStripMenuItem.Text" xml:space="preserve">
<value>Close HeliosPlus</value>
</data> </data>
<data name="mainContextMenuStrip.Size" type="System.Drawing.Size, System.Drawing"> <data name="mainContextMenuStrip.Size" type="System.Drawing.Size, System.Drawing">
<value>219, 120</value> <value>219, 126</value>
</data> </data>
<data name="mainContextMenuStrip.Text" xml:space="preserve"> <data name="mainContextMenuStrip.Text" xml:space="preserve">
<value>Text</value> <value>Text</value>
@ -63214,7 +63241,7 @@
<data name="&gt;&gt;mainContextMenuStrip.Type" xml:space="preserve"> <data name="&gt;&gt;mainContextMenuStrip.Type" xml:space="preserve">
<value>System.Windows.Forms.ContextMenuStrip, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.ContextMenuStrip, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="mainNotifyIcon.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> <data name="notifyIcon.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value> <value>
AAABAAkAEBAAAAEAIABoBAAAlgAAABgYAAABACAAiAkAAP4EAAAgIAAAAQAgAKgQAACGDgAAMDAAAAEA AAABAAkAEBAAAAEAIABoBAAAlgAAABgYAAABACAAiAkAAP4EAAAgIAAAAQAgAKgQAACGDgAAMDAAAAEA
IACoJQAALh8AAEBAAAABACAAKEIAANZEAABgYAAAAQAgAKiUAAD+hgAAgIAAAAEAIAAoCAEAphsBAMDA IACoJQAALh8AAEBAAAABACAAKEIAANZEAABgYAAAAQAgAKiUAAD+hgAAgIAAAAEAIAAoCAEAphsBAMDA
@ -71025,10 +71052,10 @@
rjGJe6619efaHz2S/5D4v/OFla+gZqVXAAAAAElFTkSuQmCC rjGJe6619efaHz2S/5D4v/OFla+gZqVXAAAAAElFTkSuQmCC
</value> </value>
</data> </data>
<data name="mainNotifyIcon.Text" xml:space="preserve"> <data name="notifyIcon.Text" xml:space="preserve">
<value>HeliosPlus</value> <value>HeliosPlus</value>
</data> </data>
<data name="mainNotifyIcon.Visible" type="System.Boolean, mscorlib"> <data name="notifyIcon.Visible" type="System.Boolean, mscorlib">
<value>True</value> <value>True</value>
</data> </data>
<metadata name="$this.Localizable" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> <metadata name="$this.Localizable" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
@ -78866,58 +78893,76 @@
<data name="$this.Text" xml:space="preserve"> <data name="$this.Text" xml:space="preserve">
<value>HeliosPlus</value> <value>HeliosPlus</value>
</data> </data>
<data name="&gt;&gt;mainNotifyIcon.Name" xml:space="preserve"> <data name="&gt;&gt;notifyIcon.Name" xml:space="preserve">
<value>mainNotifyIcon</value> <value>notifyIcon</value>
</data> </data>
<data name="&gt;&gt;mainNotifyIcon.Type" xml:space="preserve"> <data name="&gt;&gt;notifyIcon.Type" xml:space="preserve">
<value>System.Windows.Forms.NotifyIcon, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.NotifyIcon, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;toolStripMenuItem1.Name" xml:space="preserve"> <data name="&gt;&gt;toolStripMenuItemHeading.Name" xml:space="preserve">
<value>toolStripMenuItem1</value> <value>toolStripMenuItemHeading</value>
</data> </data>
<data name="&gt;&gt;toolStripMenuItem1.Type" xml:space="preserve"> <data name="&gt;&gt;toolStripMenuItemHeading.Type" xml:space="preserve">
<value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;toolStripSeparator1.Name" xml:space="preserve"> <data name="&gt;&gt;toolStripSeparator.Name" xml:space="preserve">
<value>toolStripSeparator1</value> <value>toolStripSeparator</value>
</data> </data>
<data name="&gt;&gt;toolStripSeparator1.Type" xml:space="preserve"> <data name="&gt;&gt;toolStripSeparator.Type" xml:space="preserve">
<value>System.Windows.Forms.ToolStripSeparator, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.ToolStripSeparator, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;changeDisplayProfileToolStripMenuItem.Name" xml:space="preserve">
<value>changeDisplayProfileToolStripMenuItem</value>
</data>
<data name="&gt;&gt;changeDisplayProfileToolStripMenuItem.Type" xml:space="preserve">
<value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;profilesToolStripMenuItem.Name" xml:space="preserve">
<value>profilesToolStripMenuItem</value>
</data>
<data name="&gt;&gt;profilesToolStripMenuItem.Type" xml:space="preserve">
<value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;runShortcutToolStripMenuItem.Name" xml:space="preserve">
<value>runShortcutToolStripMenuItem</value>
</data>
<data name="&gt;&gt;runShortcutToolStripMenuItem.Type" xml:space="preserve">
<value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;openApplicationWindowToolStripMenuItem.Name" xml:space="preserve"> <data name="&gt;&gt;openApplicationWindowToolStripMenuItem.Name" xml:space="preserve">
<value>openApplicationWindowToolStripMenuItem</value> <value>openApplicationWindowToolStripMenuItem</value>
</data> </data>
<data name="&gt;&gt;openApplicationWindowToolStripMenuItem.Type" xml:space="preserve"> <data name="&gt;&gt;openApplicationWindowToolStripMenuItem.Type" xml:space="preserve">
<value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;toolStripSeparator2.Name" xml:space="preserve"> <data name="&gt;&gt;profileToolStripMenuItem.Name" xml:space="preserve">
<value>toolStripSeparator2</value> <value>profileToolStripMenuItem</value>
</data> </data>
<data name="&gt;&gt;toolStripSeparator2.Type" xml:space="preserve"> <data name="&gt;&gt;profileToolStripMenuItem.Type" xml:space="preserve">
<value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;profilesToolStripMenuItemHeading.Name" xml:space="preserve">
<value>profilesToolStripMenuItemHeading</value>
</data>
<data name="&gt;&gt;profilesToolStripMenuItemHeading.Type" xml:space="preserve">
<value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;profileToolStripSeparator.Name" xml:space="preserve">
<value>profileToolStripSeparator</value>
</data>
<data name="&gt;&gt;profileToolStripSeparator.Type" xml:space="preserve">
<value>System.Windows.Forms.ToolStripSeparator, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.ToolStripSeparator, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;toolStripMenuItem2.Name" xml:space="preserve"> <data name="&gt;&gt;shortcutToolStripMenuItem.Name" xml:space="preserve">
<value>toolStripMenuItem2</value> <value>shortcutToolStripMenuItem</value>
</data> </data>
<data name="&gt;&gt;toolStripMenuItem2.Type" xml:space="preserve"> <data name="&gt;&gt;shortcutToolStripMenuItem.Type" xml:space="preserve">
<value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;shortcutsToolStripMenuItemHeading.Name" xml:space="preserve">
<value>shortcutsToolStripMenuItemHeading</value>
</data>
<data name="&gt;&gt;shortcutsToolStripMenuItemHeading.Type" xml:space="preserve">
<value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;shortcutToolStripSeparator.Name" xml:space="preserve">
<value>shortcutToolStripSeparator</value>
</data>
<data name="&gt;&gt;shortcutToolStripSeparator.Type" xml:space="preserve">
<value>System.Windows.Forms.ToolStripSeparator, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;toolStripSeparator1.Name" xml:space="preserve">
<value>toolStripSeparator1</value>
</data>
<data name="&gt;&gt;toolStripSeparator1.Type" xml:space="preserve">
<value>System.Windows.Forms.ToolStripSeparator, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;exitToolStripMenuItem.Name" xml:space="preserve">
<value>exitToolStripMenuItem</value>
</data>
<data name="&gt;&gt;exitToolStripMenuItem.Type" xml:space="preserve">
<value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data> </data>
<data name="&gt;&gt;$this.Name" xml:space="preserve"> <data name="&gt;&gt;$this.Name" xml:space="preserve">