Skip to content
This repository was archived by the owner on Aug 23, 2025. It is now read-only.

Commit 7fedfc5

Browse files
committed
Persistent VM list column width, fixes
VM list column widths are now stored and loaded as well Fixed main window button tooltips Minor stuff
1 parent 8f94808 commit 7fedfc5

File tree

7 files changed

+110
-24
lines changed

7 files changed

+110
-24
lines changed

86BoxManager/Properties/Settings.Designer.cs

Lines changed: 48 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

86BoxManager/Properties/Settings.settings

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,5 +11,17 @@
1111
<Setting Name="WindowState" Type="System.Windows.Forms.FormWindowState" Scope="User">
1212
<Value Profile="(Default)">Normal</Value>
1313
</Setting>
14+
<Setting Name="NameColWidth" Type="System.Int32" Scope="User">
15+
<Value Profile="(Default)">184</Value>
16+
</Setting>
17+
<Setting Name="StatusColWidth" Type="System.Int32" Scope="User">
18+
<Value Profile="(Default)">107</Value>
19+
</Setting>
20+
<Setting Name="DescColWidth" Type="System.Int32" Scope="User">
21+
<Value Profile="(Default)">144</Value>
22+
</Setting>
23+
<Setting Name="PathColWidth" Type="System.Int32" Scope="User">
24+
<Value Profile="(Default)">217</Value>
25+
</Setting>
1426
</Settings>
1527
</SettingsFile>

86BoxManager/app.config

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,18 @@
1616
<setting name="WindowState" serializeAs="String">
1717
<value>Normal</value>
1818
</setting>
19+
<setting name="NameColWidth" serializeAs="String">
20+
<value>184</value>
21+
</setting>
22+
<setting name="StatusColWidth" serializeAs="String">
23+
<value>107</value>
24+
</setting>
25+
<setting name="DescColWidth" serializeAs="String">
26+
<value>144</value>
27+
</setting>
28+
<setting name="PathColWidth" serializeAs="String">
29+
<value>217</value>
30+
</setting>
1931
</_86boxManager.Properties.Settings>
2032
</userSettings>
2133
</configuration>

86BoxManager/dlgEditVM.cs

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -30,12 +30,6 @@ private void VMLoadData()
3030
lblPath1.Text = vm.Path;
3131
}
3232

33-
//Save the new data back to the VM
34-
private void VMSaveData()
35-
{
36-
main.VMEdit(txtName.Text, txtDesc.Text);
37-
}
38-
3933
private void btnCancel_Click(object sender, EventArgs e)
4034
{
4135
Close();
@@ -54,7 +48,7 @@ private void btnApply_Click(object sender, EventArgs e)
5448
}
5549
else
5650
{
57-
VMSaveData();
51+
main.VMEdit(txtName.Text, txtDesc.Text);
5852
Close();
5953
}
6054
}

86BoxManager/frmMain.Designer.cs

Lines changed: 11 additions & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

86BoxManager/frmMain.cs

Lines changed: 17 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,12 @@ private void frmMain_Load(object sender, EventArgs e)
6767
Size = Settings.Default.WindowSize;
6868
Location = Settings.Default.WindowPosition;
6969

70+
//Load listview column widths
71+
clmName.Width = Settings.Default.NameColWidth;
72+
clmStatus.Width = Settings.Default.StatusColWidth;
73+
clmDesc.Width = Settings.Default.DescColWidth;
74+
clmPath.Width = Settings.Default.PathColWidth;
75+
7076
//Convert the current window handle to a form that's expected by 86Box
7177
hWndHex = string.Format("{0:X}", Handle.ToInt64());
7278
hWndHex = hWndHex.PadLeft(16, '0');
@@ -208,9 +214,6 @@ private void btnEdit_Click(object sender, EventArgs e)
208214
{
209215
dlgEditVM dlg = new dlgEditVM();
210216
dlg.ShowDialog();
211-
212-
if (dlg.DialogResult == DialogResult.OK)
213-
LoadVMs();
214217
}
215218

216219
//Load the settings from the registry
@@ -317,7 +320,6 @@ private void LoadVMs()
317320
ListViewItem newLvi = new ListViewItem(vm.Name)
318321
{
319322
Tag = vm,
320-
//ToolTipText = vm.Desc,
321323
ImageIndex = 0
322324
};
323325
newLvi.SubItems.Add(new ListViewItem.ListViewSubItem(newLvi, vm.GetStatusString()));
@@ -531,6 +533,13 @@ private void frmMain_FormClosing(object sender, FormClosingEventArgs e)
531533
Settings.Default.WindowState = WindowState;
532534
Settings.Default.WindowSize = Size;
533535
Settings.Default.WindowPosition = Location;
536+
537+
//Save listview column widths
538+
Settings.Default.NameColWidth = clmName.Width;
539+
Settings.Default.StatusColWidth = clmStatus.Width;
540+
Settings.Default.DescColWidth = clmDesc.Width;
541+
Settings.Default.PathColWidth = clmPath.Width;
542+
534543
Settings.Default.Save();
535544
}
536545

@@ -619,7 +628,7 @@ private void VMStart()
619628

620629
//initSuccess is ignored for now because WaitForInputIdle() likes to return false more often now that
621630
//86Box is compiled with GCC 9.3.0...
622-
if (!p.MainWindowHandle.Equals(IntPtr.Zero) /*&& initSuccess*/)
631+
if (!p.MainWindowHandle.Equals(IntPtr.Zero) && initSuccess)
623632
{
624633
vm.hWnd = p.MainWindowHandle; //Get the window handle of the newly created process
625634
vm.Status = VM.STATUS_RUNNING;
@@ -889,6 +898,7 @@ public void VMAdd(string name, string desc, bool openCFG, bool startVM)
889898
ImageIndex = 0
890899
};
891900
newLvi.SubItems.Add(new ListViewItem.ListViewSubItem(newLvi, newVM.GetStatusString()));
901+
newLvi.SubItems.Add(new ListViewItem.ListViewSubItem(newLvi, newVM.Desc));
892902
newLvi.SubItems.Add(new ListViewItem.ListViewSubItem(newLvi, newVM.Path));
893903
lstVMs.Items.Add(newLvi);
894904
Directory.CreateDirectory(cfgpath + newVM.Name);
@@ -967,11 +977,8 @@ public void VMEdit(string name, string desc)
967977
}
968978
vm.Name = name;
969979
vm.Path = cfgpath + vm.Name;
970-
lstVMs.SelectedItems[0].Text = name;
971-
lstVMs.SelectedItems[0].SubItems[2].Text = vm.Path;
972980
}
973981
vm.Desc = desc;
974-
lstVMs.SelectedItems[0].ToolTipText = desc;
975982

976983
//Create a new registry value with new info, delete the old one
977984
regkey = Registry.CurrentUser.OpenSubKey(@"SOFTWARE\86Box\Virtual Machines", true);
@@ -988,6 +995,7 @@ public void VMEdit(string name, string desc)
988995

989996
MessageBox.Show("Virtual machine \"" + vm.Name + "\" was successfully modified. Please update its configuration so that any folder paths (e.g. for hard disk images) point to the new folder.", "Success", MessageBoxButtons.OK, MessageBoxIcon.Information);
990997
VMSort(sortColumn, sortOrder);
998+
LoadVMs();
991999
}
9921000

9931001
private void btnDelete_Click(object sender, EventArgs e)
@@ -1067,9 +1075,6 @@ private void editToolStripMenuItem_Click(object sender, EventArgs e)
10671075
{
10681076
dlgEditVM dlg = new dlgEditVM();
10691077
dlg.ShowDialog();
1070-
1071-
if (dlg.DialogResult == DialogResult.OK)
1072-
LoadVMs();
10731078
}
10741079

10751080
private void btnCtrlAltDel_Click(object sender, EventArgs e)
@@ -1617,7 +1622,6 @@ public void VMImport(string name, string desc, string importPath, bool openCFG,
16171622
ListViewItem newLvi = new ListViewItem(newVM.Name)
16181623
{
16191624
Tag = newVM,
1620-
ToolTipText = newVM.Desc,
16211625
ImageIndex = 0
16221626
};
16231627
newLvi.SubItems.Add(new ListViewItem.ListViewSubItem(newLvi, newVM.GetStatusString()));
@@ -1711,7 +1715,7 @@ private void VMCountRefresh()
17111715
}
17121716
}
17131717

1714-
lblVMCount.Text = "Total VMs: " + lstVMs.Items.Count + " | Running: " + runningVMs + " | Paused: " + pausedVMs + " | Waiting: " + waitingVMs + " | Stopped: " + stoppedVMs;
1718+
lblVMCount.Text = "All VMs: " + lstVMs.Items.Count + " | Running: " + runningVMs + " | Paused: " + pausedVMs + " | Waiting: " + waitingVMs + " | Stopped: " + stoppedVMs;
17151719
}
17161720

17171721
private void openConfigFileToolStripMenuItem_Click(object sender, EventArgs e)

86BoxManager/frmMain.resx

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -117,6 +117,9 @@
117117
<resheader name="writer">
118118
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
119119
</resheader>
120+
<metadata name="toolTip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
121+
<value>429, 17</value>
122+
</metadata>
120123
<metadata name="cmsVM.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
121124
<value>17, 17</value>
122125
</metadata>
@@ -194,9 +197,15 @@
194197
AQECAAGAAQEBgAEBAYABAQIAAcABAQHAAQEBwAEBAgABwAEDAcABAwHAAQMCAAs=
195198
</value>
196199
</data>
200+
<metadata name="toolTip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
201+
<value>429, 17</value>
202+
</metadata>
197203
<metadata name="imgStatus.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
198204
<value>109, 17</value>
199205
</metadata>
206+
<metadata name="toolTip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
207+
<value>429, 17</value>
208+
</metadata>
200209
<metadata name="trayIcon.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
201210
<value>215, 17</value>
202211
</metadata>
@@ -6781,9 +6790,6 @@
67816790
<metadata name="statusBar.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
67826791
<value>519, 17</value>
67836792
</metadata>
6784-
<metadata name="toolTip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
6785-
<value>429, 17</value>
6786-
</metadata>
67876793
<metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
67886794
<value>79</value>
67896795
</metadata>

0 commit comments

Comments
 (0)