ui: simplify workspaces menu
This commit is contained in:
72
ModpackUpdater.Apps.Manager/Ui/MainForm.Designer.cs
generated
72
ModpackUpdater.Apps.Manager/Ui/MainForm.Designer.cs
generated
@@ -42,10 +42,7 @@ partial class MainForm
|
||||
radMenuItem_WorkspacePreferences = new Telerik.WinControls.UI.RadMenuItem();
|
||||
radMenuItem_SaveWorkspace = new Telerik.WinControls.UI.RadMenuItem();
|
||||
radMenuSeparatorItem1 = new Telerik.WinControls.UI.RadMenuSeparatorItem();
|
||||
radMenuItem_OpenNewWorkspace = new Telerik.WinControls.UI.RadMenuItem();
|
||||
radMenuItem_RecentWorkspaces = new Telerik.WinControls.UI.RadMenuItem();
|
||||
radMenuItem_Tools = new Telerik.WinControls.UI.RadMenuItem();
|
||||
radMenu1 = new Telerik.WinControls.UI.RadMenu();
|
||||
radMenuItem_Updates = new Telerik.WinControls.UI.RadMenuItem();
|
||||
radMenuItem_EditUpdate = new Telerik.WinControls.UI.RadMenuItem();
|
||||
radMenuSeparatorItem2 = new Telerik.WinControls.UI.RadMenuSeparatorItem();
|
||||
@@ -55,6 +52,10 @@ partial class MainForm
|
||||
dotsRingWaitingBarIndicatorElement1 = new Telerik.WinControls.UI.DotsRingWaitingBarIndicatorElement();
|
||||
radWaitingBar_Actions = new Telerik.WinControls.UI.RadWaitingBar();
|
||||
dotsRingWaitingBarIndicatorElement2 = new Telerik.WinControls.UI.DotsRingWaitingBarIndicatorElement();
|
||||
radMenuHeaderItem_NewWorkspace = new Telerik.WinControls.UI.RadMenuHeaderItem();
|
||||
radMenuHeaderItem_RecentWorkspaces = new Telerik.WinControls.UI.RadMenuHeaderItem();
|
||||
radMenuSeparatorItem3 = new Telerik.WinControls.UI.RadMenuSeparatorItem();
|
||||
radMenu1 = new Telerik.WinControls.UI.RadMenu();
|
||||
((System.ComponentModel.ISupportInitialize)radSplitContainer1).BeginInit();
|
||||
radSplitContainer1.SuspendLayout();
|
||||
((System.ComponentModel.ISupportInitialize)splitPanel1).BeginInit();
|
||||
@@ -66,10 +67,10 @@ partial class MainForm
|
||||
tableLayoutPanel1.SuspendLayout();
|
||||
((System.ComponentModel.ISupportInitialize)radGridView_Actions).BeginInit();
|
||||
((System.ComponentModel.ISupportInitialize)radGridView_Actions.MasterTemplate).BeginInit();
|
||||
((System.ComponentModel.ISupportInitialize)radMenu1).BeginInit();
|
||||
((System.ComponentModel.ISupportInitialize)radWaitingBar_Updates).BeginInit();
|
||||
((System.ComponentModel.ISupportInitialize)radWaitingBar_Actions).BeginInit();
|
||||
((System.ComponentModel.ISupportInitialize)this).BeginInit();
|
||||
((System.ComponentModel.ISupportInitialize)radMenu1).BeginInit();
|
||||
SuspendLayout();
|
||||
//
|
||||
// radSplitContainer1
|
||||
@@ -79,10 +80,6 @@ partial class MainForm
|
||||
radSplitContainer1.Dock = DockStyle.Fill;
|
||||
radSplitContainer1.Location = new Point(0, 28);
|
||||
radSplitContainer1.Name = "radSplitContainer1";
|
||||
//
|
||||
//
|
||||
//
|
||||
radSplitContainer1.RootElement.MinSize = new Size(25, 25);
|
||||
radSplitContainer1.Size = new Size(800, 422);
|
||||
radSplitContainer1.TabIndex = 0;
|
||||
radSplitContainer1.TabStop = false;
|
||||
@@ -92,10 +89,6 @@ partial class MainForm
|
||||
splitPanel1.Controls.Add(tableLayoutPanel2);
|
||||
splitPanel1.Location = new Point(0, 0);
|
||||
splitPanel1.Name = "splitPanel1";
|
||||
//
|
||||
//
|
||||
//
|
||||
splitPanel1.RootElement.MinSize = new Size(25, 25);
|
||||
splitPanel1.Size = new Size(200, 422);
|
||||
splitPanel1.SizeInfo.AutoSizeScale = new SizeF(-0.190954775F, 0F);
|
||||
splitPanel1.SizeInfo.SizeMode = Telerik.WinControls.UI.Docking.SplitPanelSizeMode.Absolute;
|
||||
@@ -131,10 +124,6 @@ partial class MainForm
|
||||
splitPanel2.Controls.Add(tableLayoutPanel1);
|
||||
splitPanel2.Location = new Point(204, 0);
|
||||
splitPanel2.Name = "splitPanel2";
|
||||
//
|
||||
//
|
||||
//
|
||||
splitPanel2.RootElement.MinSize = new Size(25, 25);
|
||||
splitPanel2.Size = new Size(596, 422);
|
||||
splitPanel2.SizeInfo.AutoSizeScale = new SizeF(0.190954745F, 0F);
|
||||
splitPanel2.SizeInfo.SplitterCorrection = new Size(152, 0);
|
||||
@@ -179,7 +168,7 @@ partial class MainForm
|
||||
//
|
||||
// radMenuItem_Workspace
|
||||
//
|
||||
radMenuItem_Workspace.Items.AddRange(new Telerik.WinControls.RadItem[] { radMenuItem_WorkspacePreferences, radMenuItem_SaveWorkspace, radMenuSeparatorItem1, radMenuItem_OpenNewWorkspace, radMenuItem_RecentWorkspaces });
|
||||
radMenuItem_Workspace.Items.AddRange(new Telerik.WinControls.RadItem[] { radMenuItem_WorkspacePreferences, radMenuItem_SaveWorkspace, radMenuSeparatorItem1, radMenuHeaderItem_NewWorkspace, radMenuSeparatorItem3, radMenuHeaderItem_RecentWorkspaces });
|
||||
radMenuItem_Workspace.Name = "radMenuItem_Workspace";
|
||||
radMenuItem_Workspace.Text = "Workspace";
|
||||
//
|
||||
@@ -201,29 +190,11 @@ partial class MainForm
|
||||
radMenuSeparatorItem1.Text = "radMenuSeparatorItem1";
|
||||
radMenuSeparatorItem1.TextAlignment = ContentAlignment.MiddleLeft;
|
||||
//
|
||||
// radMenuItem_OpenNewWorkspace
|
||||
//
|
||||
radMenuItem_OpenNewWorkspace.Name = "radMenuItem_OpenNewWorkspace";
|
||||
radMenuItem_OpenNewWorkspace.Text = "Open new workspace";
|
||||
//
|
||||
// radMenuItem_RecentWorkspaces
|
||||
//
|
||||
radMenuItem_RecentWorkspaces.Name = "radMenuItem_RecentWorkspaces";
|
||||
radMenuItem_RecentWorkspaces.Text = "Recent workspaces";
|
||||
//
|
||||
// radMenuItem_Tools
|
||||
//
|
||||
radMenuItem_Tools.Name = "radMenuItem_Tools";
|
||||
radMenuItem_Tools.Text = "Tools";
|
||||
//
|
||||
// radMenu1
|
||||
//
|
||||
radMenu1.Items.AddRange(new Telerik.WinControls.RadItem[] { radMenuItem_Workspace, radMenuItem_Updates, radMenuItem_Tools });
|
||||
radMenu1.Location = new Point(0, 0);
|
||||
radMenu1.Name = "radMenu1";
|
||||
radMenu1.Size = new Size(800, 28);
|
||||
radMenu1.TabIndex = 1;
|
||||
//
|
||||
// radMenuItem_Updates
|
||||
//
|
||||
radMenuItem_Updates.Items.AddRange(new Telerik.WinControls.RadItem[] { radMenuItem_EditUpdate, radMenuSeparatorItem2, radMenuItem_CreateUpdate, radMenuItem_RemoveUpdate });
|
||||
@@ -289,12 +260,36 @@ partial class MainForm
|
||||
//
|
||||
dotsRingWaitingBarIndicatorElement2.Name = "dotsRingWaitingBarIndicatorElement2";
|
||||
//
|
||||
// radMenuHeaderItem_NewWorkspace
|
||||
//
|
||||
radMenuHeaderItem_NewWorkspace.Name = "radMenuHeaderItem_NewWorkspace";
|
||||
radMenuHeaderItem_NewWorkspace.Text = "New workspace";
|
||||
//
|
||||
// radMenuHeaderItem_RecentWorkspaces
|
||||
//
|
||||
radMenuHeaderItem_RecentWorkspaces.Name = "radMenuHeaderItem_RecentWorkspaces";
|
||||
radMenuHeaderItem_RecentWorkspaces.Text = "Recent workspaces";
|
||||
//
|
||||
// radMenuSeparatorItem3
|
||||
//
|
||||
radMenuSeparatorItem3.Name = "radMenuSeparatorItem3";
|
||||
radMenuSeparatorItem3.Text = "radMenuSeparatorItem3";
|
||||
radMenuSeparatorItem3.TextAlignment = ContentAlignment.MiddleLeft;
|
||||
//
|
||||
// MainForm
|
||||
//
|
||||
AutoScaleBaseSize = new Size(7, 15);
|
||||
AutoScaleDimensions = new SizeF(7F, 15F);
|
||||
AutoScaleMode = AutoScaleMode.Font;
|
||||
ClientSize = new Size(800, 450);
|
||||
//
|
||||
// radMenu1
|
||||
//
|
||||
radMenu1.Items.AddRange(new Telerik.WinControls.RadItem[] { radMenuItem_Workspace, radMenuItem_Updates, radMenuItem_Tools });
|
||||
radMenu1.Location = new Point(0, 0);
|
||||
radMenu1.Name = "radMenu1";
|
||||
radMenu1.Size = new Size(800, 28);
|
||||
radMenu1.TabIndex = 1;
|
||||
Controls.Add(radWaitingBar_Actions);
|
||||
Controls.Add(radWaitingBar_Updates);
|
||||
Controls.Add(radSplitContainer1);
|
||||
@@ -316,9 +311,9 @@ partial class MainForm
|
||||
tableLayoutPanel1.ResumeLayout(false);
|
||||
((System.ComponentModel.ISupportInitialize)radGridView_Actions.MasterTemplate).EndInit();
|
||||
((System.ComponentModel.ISupportInitialize)radGridView_Actions).EndInit();
|
||||
((System.ComponentModel.ISupportInitialize)radMenu1).EndInit();
|
||||
((System.ComponentModel.ISupportInitialize)radWaitingBar_Updates).EndInit();
|
||||
((System.ComponentModel.ISupportInitialize)radWaitingBar_Actions).EndInit();
|
||||
((System.ComponentModel.ISupportInitialize)radMenu1).EndInit();
|
||||
((System.ComponentModel.ISupportInitialize)this).EndInit();
|
||||
ResumeLayout(false);
|
||||
PerformLayout();
|
||||
@@ -337,8 +332,6 @@ partial class MainForm
|
||||
private TableLayoutPanel tableLayoutPanel1;
|
||||
private Telerik.WinControls.UI.RadGridView radGridView_Actions;
|
||||
private Telerik.WinControls.UI.RadMenuSeparatorItem radMenuSeparatorItem1;
|
||||
private Telerik.WinControls.UI.RadMenuItem radMenuItem_OpenNewWorkspace;
|
||||
private Telerik.WinControls.UI.RadMenuItem radMenuItem_RecentWorkspaces;
|
||||
private Telerik.WinControls.UI.RadMenuItem radMenuItem_SaveWorkspace;
|
||||
private Telerik.WinControls.UI.RadWaitingBar radWaitingBar_Updates;
|
||||
private Telerik.WinControls.UI.DotsRingWaitingBarIndicatorElement dotsRingWaitingBarIndicatorElement1;
|
||||
@@ -350,4 +343,7 @@ partial class MainForm
|
||||
private Telerik.WinControls.UI.RadMenuSeparatorItem radMenuSeparatorItem2;
|
||||
private Telerik.WinControls.UI.RadMenuItem radMenuItem_CreateUpdate;
|
||||
private Telerik.WinControls.UI.RadMenuItem radMenuItem_RemoveUpdate;
|
||||
private Telerik.WinControls.UI.RadMenuHeaderItem radMenuHeaderItem_NewWorkspace;
|
||||
private Telerik.WinControls.UI.RadMenuSeparatorItem radMenuSeparatorItem3;
|
||||
private Telerik.WinControls.UI.RadMenuHeaderItem radMenuHeaderItem_RecentWorkspaces;
|
||||
}
|
||||
|
||||
@@ -34,8 +34,8 @@ public partial class MainForm : RadForm, IMainApi
|
||||
radMenuItem_Workspace.SvgImage = Program.Symbols.GetSvgImage(AppSymbols.workspace, SymbolSize.Small);
|
||||
radMenuItem_WorkspacePreferences.SvgImage = Program.Symbols.GetSvgImage(AppSymbols.settings, SymbolSize.Small);
|
||||
radMenuItem_SaveWorkspace.SvgImage = Program.Symbols.GetSvgImage(AppSymbols.save, SymbolSize.Small);
|
||||
radMenuItem_OpenNewWorkspace.SvgImage = Program.Symbols.GetSvgImage(AppSymbols.new_window, SymbolSize.Small);
|
||||
radMenuItem_RecentWorkspaces.SvgImage = Program.Symbols.GetSvgImage(AppSymbols.time_machine, SymbolSize.Small);
|
||||
//radMenuItem_OpenNewWorkspace.SvgImage = Program.Symbols.GetSvgImage(AppSymbols.new_window, SymbolSize.Small);
|
||||
//radMenuItem_RecentWorkspaces.SvgImage = Program.Symbols.GetSvgImage(AppSymbols.time_machine, SymbolSize.Small);
|
||||
radMenuItem_Updates.SvgImage = Program.Symbols.GetSvgImage(AppSymbols.update_done, SymbolSize.Small);
|
||||
radMenuItem_EditUpdate.SvgImage = Program.Symbols.GetSvgImage(AppSymbols.edit, SymbolSize.Small);
|
||||
radMenuItem_CreateUpdate.SvgImage = Program.Symbols.GetSvgImage(AppSymbols.add, SymbolSize.Small);
|
||||
@@ -44,23 +44,27 @@ public partial class MainForm : RadForm, IMainApi
|
||||
|
||||
radMenuItem_SaveWorkspace.Shortcuts.Add(new(Keys.Control, Keys.S));
|
||||
|
||||
PluginFeatureController.Instance.Features.Get(FeatureTypes.Workspace).InsertItemsTo(radMenuItem_OpenNewWorkspace.Items, customClickHandler: RadMenuItem_OpenNewWorkspace_Click, insertPrioSplitters: true);
|
||||
PluginFeatureController.Instance.Functions.Get(FeatureTypes.Tools).InsertItemsTo(radMenuItem_Tools.Items, customClickHandler: RadMenuItem_ToolsItem_Click, insertPrioSplitters: true);
|
||||
PluginFeatureController.Instance.Features.Get(FeatureTypes.Workspace).InsertItemsTo(radMenuItem_Workspace.Items,
|
||||
customClickHandler: RadMenuItem_OpenNewWorkspace_Click,
|
||||
insertPrioSplitters: true,
|
||||
customDefault: radMenuItem_Workspace.Items.IndexOf(radMenuHeaderItem_NewWorkspace) + 1);
|
||||
PluginFeatureController.Instance.Functions.Get(FeatureTypes.Tools).InsertItemsTo(radMenuItem_Tools.Items,
|
||||
customClickHandler: RadMenuItem_ToolsItem_Click,
|
||||
insertPrioSplitters: true);
|
||||
}
|
||||
|
||||
private void LoadRecentWorkspaces()
|
||||
{
|
||||
var settings = Program.Settings.Get<WorkspaceSettings>();
|
||||
var startIndex = radMenuItem_Workspace.Items.IndexOf(radMenuHeaderItem_RecentWorkspaces) + 1;
|
||||
|
||||
radMenuItem_RecentWorkspaces.Items.Clear();
|
||||
foreach (var item in radMenuItem_Workspace.Items.Where(n => n.Tag is RecentFilesItemTag).ToArray())
|
||||
radMenuItem_Workspace.Items.Remove(item);
|
||||
|
||||
foreach (var config in settings.Workspaces.ToArray())
|
||||
foreach (var config in settings.Workspaces)
|
||||
{
|
||||
if (PluginFeatureController.Instance.Features.Get(FeatureTypes.Workspace).OfType<WorkspaceFeature>().FirstOrDefault(n => n.Identifier == config.ProviderId) is not WorkspaceFeature feature)
|
||||
{
|
||||
settings.Workspaces.Remove(config);
|
||||
continue;
|
||||
}
|
||||
|
||||
var item = new RadMenuItem
|
||||
{
|
||||
@@ -71,13 +75,8 @@ public partial class MainForm : RadForm, IMainApi
|
||||
|
||||
item.Click += RadMenuItem_OpenRecentWorkspace_Click;
|
||||
|
||||
radMenuItem_RecentWorkspaces.Items.Add(item);
|
||||
radMenuItem_Workspace.Items.Insert(startIndex++, item);
|
||||
}
|
||||
|
||||
if (radMenuItem_RecentWorkspaces.Items.Any())
|
||||
radMenuItem_RecentWorkspaces.Visibility = ElementVisibility.Visible;
|
||||
else
|
||||
radMenuItem_RecentWorkspaces.Visibility = ElementVisibility.Collapsed;
|
||||
}
|
||||
|
||||
private void AddToRecentFiles(IWorkspace workspace)
|
||||
|
||||
Reference in New Issue
Block a user