Move PartPreviewWidget factories into ThemeConfig
- Extract ThemeConfig to file - Pass ThemeConfig to IObject3D creators
This commit is contained in:
parent
5bf9fe27a3
commit
0e646a0c94
11 changed files with 382 additions and 219 deletions
|
|
@ -150,6 +150,7 @@ namespace MatterHackers.MatterControl.PartPreviewWindow
|
|||
View3DWidget.WindowMode.Embeded,
|
||||
View3DWidget.AutoRotate.Disabled,
|
||||
viewControls3D,
|
||||
ApplicationController.Instance.Theme,
|
||||
View3DWidget.OpenMode.Editing);
|
||||
|
||||
var topToBottom = new FlowLayoutWidget(FlowDirection.TopToBottom);
|
||||
|
|
@ -174,7 +175,8 @@ namespace MatterHackers.MatterControl.PartPreviewWindow
|
|||
activeSettings.GetValue<Vector2>(SettingsKey.print_center),
|
||||
activeSettings.GetValue<BedShape>(SettingsKey.bed_shape),
|
||||
ViewGcodeBasic.WindowMode.Embeded,
|
||||
viewControls3D);
|
||||
viewControls3D,
|
||||
ApplicationController.Instance.Theme);
|
||||
gcodeViewer.AnchorAll();
|
||||
this.gcodeViewer.Visible = false;
|
||||
leftToRight.AddChild(gcodeViewer);
|
||||
|
|
|
|||
|
|
@ -40,6 +40,6 @@ namespace MatterHackers.MatterControl.PartPreviewWindow
|
|||
bool Unlocked { get; }
|
||||
string Name { get; }
|
||||
IEnumerable<Type> SupportedTypes();
|
||||
GuiWidget Create(IObject3D item, View3DWidget parentView3D);
|
||||
GuiWidget Create(IObject3D item, View3DWidget parentView3D, ThemeConfig theme);
|
||||
}
|
||||
}
|
||||
|
|
@ -75,7 +75,7 @@ namespace MatterHackers.MatterControl.PartPreviewWindow
|
|||
return new Type[] { typeof(Object3D) };
|
||||
}
|
||||
|
||||
public GuiWidget Create(IObject3D item, View3DWidget view3DWidget)
|
||||
public GuiWidget Create(IObject3D item, View3DWidget view3DWidget, ThemeConfig theme)
|
||||
{
|
||||
this.view3DWidget = view3DWidget;
|
||||
this.item = item;
|
||||
|
|
@ -85,11 +85,11 @@ namespace MatterHackers.MatterControl.PartPreviewWindow
|
|||
{
|
||||
HAnchor = HAnchor.AbsolutePosition,
|
||||
Visible = true,
|
||||
Width = view3DWidget.WhiteButtonFactory.FixedWidth
|
||||
Width = theme.WhiteButtonFactory.FixedWidth
|
||||
};
|
||||
mainContainer.AddChild(tabContainer);
|
||||
|
||||
Button updateButton = view3DWidget.textImageButtonFactory.Generate("Color".Localize());
|
||||
Button updateButton = theme.textImageButtonFactory.Generate("Color".Localize());
|
||||
updateButton.Margin = new BorderDouble(5);
|
||||
updateButton.HAnchor = HAnchor.ParentRight;
|
||||
updateButton.Click += ChangeColor;
|
||||
|
|
@ -234,10 +234,12 @@ namespace MatterHackers.MatterControl.PartPreviewWindow
|
|||
}
|
||||
|
||||
protected FlowLayoutWidget editPlateButtonsContainer;
|
||||
private ThemeConfig theme;
|
||||
|
||||
public View3DWidget(PrintItemWrapper printItemWrapper, Vector3 viewerVolume, Vector2 bedCenter, BedShape bedShape, WindowMode windowType, AutoRotate autoRotate, ViewControls3D viewControls3D, OpenMode openMode = OpenMode.Viewing)
|
||||
public View3DWidget(PrintItemWrapper printItemWrapper, Vector3 viewerVolume, Vector2 bedCenter, BedShape bedShape, WindowMode windowType, AutoRotate autoRotate, ViewControls3D viewControls3D, ThemeConfig theme, OpenMode openMode = OpenMode.Viewing)
|
||||
: base(viewControls3D)
|
||||
{
|
||||
this.theme = theme;
|
||||
this.openMode = openMode;
|
||||
allowAutoRotate = (autoRotate == AutoRotate.Enabled);
|
||||
meshViewerWidget = new MeshViewerWidget(viewerVolume, bedCenter, bedShape);
|
||||
|
|
@ -1834,7 +1836,7 @@ namespace MatterHackers.MatterControl.PartPreviewWindow
|
|||
{
|
||||
editorPanel.CloseAllChildren();
|
||||
|
||||
var newEditor = editor.Create(Scene.SelectedItem, this);
|
||||
var newEditor = editor.Create(Scene.SelectedItem, this, this.theme);
|
||||
editorPanel.AddChild(newEditor);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -90,9 +90,15 @@ namespace MatterHackers.MatterControl.PartPreviewWindow
|
|||
|
||||
private PartViewMode activeViewMode = PartViewMode.Layers3D;
|
||||
|
||||
public ViewGcodeBasic(Vector3 viewerVolume, Vector2 bedCenter, BedShape bedShape, WindowMode windowMode, ViewControls3D viewControls3D)
|
||||
private TextImageButtonFactory textImageButtonFactory;
|
||||
private TextImageButtonFactory ExpandMenuOptionFactory;
|
||||
|
||||
public ViewGcodeBasic(Vector3 viewerVolume, Vector2 bedCenter, BedShape bedShape, WindowMode windowMode, ViewControls3D viewControls3D, ThemeConfig theme)
|
||||
: base(viewControls3D)
|
||||
{
|
||||
this.textImageButtonFactory = theme.textImageButtonFactory;
|
||||
this.ExpandMenuOptionFactory = theme.ExpandMenuOptionFactory;
|
||||
|
||||
this.viewerVolume = viewerVolume;
|
||||
this.bedShape = bedShape;
|
||||
this.bedCenter = bedCenter;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue