improving api

This commit is contained in:
Lars Brubaker 2021-09-14 17:18:48 -07:00
parent 36854a955c
commit 5a99cc04a0
6 changed files with 32 additions and 55 deletions

View file

@ -738,26 +738,6 @@ namespace MatterHackers.MatterControl
return false;
}
public static string GetKey(string opperationGroupName)
{
return $"scene_operation_key_{opperationGroupName}";
}
public static bool GetCollapseValue(SceneOperation sceneOperation)
{
return GetCollapseValue(sceneOperation.Id);
}
public static void SetCollapseValue(SceneOperation sceneOperation, bool value)
{
UserSettings.Instance.Fields.SetBool(GetKey(sceneOperation.Id), value);
}
public static bool GetCollapseValue(string sceneOperationId)
{
return UserSettings.Instance.Fields.GetBool(GetKey(sceneOperationId), true);
}
private static void Build()
{
if (built)
@ -782,7 +762,6 @@ namespace MatterHackers.MatterControl
new SceneSelectionSeparator(),
new OperationGroup("Transform")
{
Collapse = GetCollapseValue("Transform"),
TitleResolver = () => "Transform".Localize(),
InitialSelectionIndex = 2,
Operations = new List<SceneOperation>()
@ -795,7 +774,6 @@ namespace MatterHackers.MatterControl
},
new OperationGroup("Placement")
{
Collapse = GetCollapseValue("Placement"),
TitleResolver = () => "Placement".Localize(),
Operations = new List<SceneOperation>()
{
@ -805,7 +783,6 @@ namespace MatterHackers.MatterControl
},
new OperationGroup("Reshape")
{
Collapse = GetCollapseValue("Reshape"),
TitleResolver = () => "Reshape".Localize(),
Operations = new List<SceneOperation>()
{
@ -821,7 +798,6 @@ namespace MatterHackers.MatterControl
},
new OperationGroup("Image")
{
Collapse = GetCollapseValue("Image"),
TitleResolver = () => "Image".Localize(),
Operations = new List<SceneOperation>()
{
@ -831,7 +807,6 @@ namespace MatterHackers.MatterControl
},
new OperationGroup("Path")
{
Collapse = GetCollapseValue("Path"),
TitleResolver = () => "Path".Localize(),
Operations = new List<SceneOperation>()
{
@ -844,7 +819,6 @@ namespace MatterHackers.MatterControl
},
new OperationGroup("Merge")
{
Collapse = GetCollapseValue("Merge"),
TitleResolver = () => "Merge".Localize(),
InitialSelectionIndex = 1,
Operations = new List<SceneOperation>()
@ -857,7 +831,6 @@ namespace MatterHackers.MatterControl
},
new OperationGroup("Duplication")
{
Collapse = GetCollapseValue("Duplication"),
TitleResolver = () => "Duplication".Localize(),
Operations = new List<SceneOperation>()
{
@ -868,7 +841,6 @@ namespace MatterHackers.MatterControl
},
new OperationGroup("Mesh")
{
Collapse = GetCollapseValue("Mesh"),
TitleResolver = () => "Mesh".Localize(),
InitialSelectionIndex = 1,
Operations = new List<SceneOperation>()
@ -880,7 +852,6 @@ namespace MatterHackers.MatterControl
},
new OperationGroup("Printing")
{
Collapse = GetCollapseValue("Printing"),
TitleResolver = () => "Printing".Localize(),
Operations = new List<SceneOperation>()
{
@ -890,7 +861,6 @@ namespace MatterHackers.MatterControl
},
new OperationGroup("Design Apps")
{
Collapse = GetCollapseValue("Design Apps"),
TitleResolver = () => "Design Apps".Localize(),
Operations = new List<SceneOperation>()
{

View file

@ -30,9 +30,7 @@ either expressed or implied, of the FreeBSD Project.
using System;
using System.Collections.Generic;
using System.Linq;
using MatterHackers.Agg.Image;
using MatterHackers.DataConverters3D;
using MatterHackers.MatterControl;
namespace MatterHackers.Agg.UI
@ -99,21 +97,45 @@ namespace MatterHackers.Agg.UI
public EventHandler CollapseChanged;
private bool _collapse;
private static string CollapseKey(string opperationGroupName)
{
return $"scene_operation_collapse_{opperationGroupName}";
}
public bool Collapse
{
get => _collapse;
get
{
return UserSettings.Instance.Fields.GetBool(CollapseKey(this.Id), true);
}
set
{
if (_collapse != value)
if (Collapse != value)
{
_collapse = value;
UserSettings.Instance.Fields.SetBool(CollapseKey(Id), value);
CollapseChanged?.Invoke(this, null);
}
}
}
public EventHandler VisibleChanged;
private bool _visible;
public bool Visible
{
get => _visible;
set
{
if (_visible != value)
{
_visible = value;
VisibleChanged?.Invoke(this, null);
}
}
}
public SceneOperation GetDefaultOperation()
{
if (!int.TryParse(UserSettings.Instance.get(GroupRecordId), out int activeButtonID))

View file

@ -99,6 +99,8 @@ namespace MatterHackers.MatterControl.PartPreviewWindow
this.workspace = workspace;
this.RowPadding = 0;
this.RowBoarder = new BorderDouble(0, 0, 0, 1);
this.RowBoarderColor = theme.GetBorderColor(50);
this.AddChild(CreateOpenButton(sceneContext, theme));
@ -295,7 +297,6 @@ namespace MatterHackers.MatterControl.PartPreviewWindow
collapseButton.Click += (s, e) => UiThread.RunOnIdle(() =>
{
operationGroup.Collapse = true;
SceneOperations.SetCollapseValue(operationGroup, true);
DoWrappingLayout();
});
@ -361,7 +362,6 @@ namespace MatterHackers.MatterControl.PartPreviewWindow
expandMenuItem.Click += (s, e) => UiThread.RunOnIdle(() =>
{
operationGroup.Collapse = false;
SceneOperations.SetCollapseValue(operationGroup, false);
DoWrappingLayout();
});
}

@ -1 +1 @@
Subproject commit e032b49f2579ce5cc26b6dcf109eea4d7c98c567
Subproject commit 7e55f2c529b1504924b65ec3a296d1e82876d20d

View file

@ -193,7 +193,7 @@ namespace MatterHackers.MatterControl.Tests.Automation
systemWindow.RunTest(testRunner =>
{
testRunner.Delay(60);
//testRunner.Delay(60);
return Task.CompletedTask;
},
2000);

View file

@ -59,21 +59,6 @@ namespace MatterHackers.MatterControl.Tests.Automation
});
}
[Test]
public async Task View3DOverflowMenus()
{
await MatterControlUtilities.RunTest(testRunner =>
{
testRunner.WaitForFirstDraw();
testRunner.AddAndSelectPrinter("Airwolf 3D", "HD");
testRunner.ClickByName("Model View Button");
testRunner.ClickByName("View3D Overflow Menu");
return Task.CompletedTask;
});
}
[Test]
public async Task ViewGenerateSupportMenu()
{