Got copy user overrides in. Butter updating of settings
This commit is contained in:
parent
9c40370cc2
commit
d6996afb4b
5 changed files with 98 additions and 10 deletions
|
|
@ -387,6 +387,8 @@ namespace MatterHackers.MatterControl
|
|||
|
||||
public event EventHandler<WorkspacesChangedEventArgs> WorkspacesChanged;
|
||||
|
||||
public event EventHandler ReloadSettingsTriggered;
|
||||
|
||||
public void ReloadSettings(PrinterConfig printer)
|
||||
{
|
||||
var printerTabPage = this.MainView.Descendants<PrinterTabPage>().Where(page => page.Printer == printer).FirstOrDefault();
|
||||
|
|
@ -415,6 +417,8 @@ namespace MatterHackers.MatterControl
|
|||
sideBar.ReplacePage("Slice Settings", new SliceSettingsWidget(printer, settingsContext, Theme));
|
||||
ApplicationController.Instance.IsReloading = false;
|
||||
}
|
||||
|
||||
ReloadSettingsTriggered?.Invoke(null, null);
|
||||
}
|
||||
|
||||
public static Action WebRequestFailed;
|
||||
|
|
|
|||
|
|
@ -92,8 +92,79 @@ namespace MatterHackers.MatterControl.DesignTools.Operations
|
|||
|
||||
public string ThumbnailName => nameof(PartSettingsObject3D);
|
||||
|
||||
private void UpdateSettingsDisplay(PrinterConfig containingPrinter)
|
||||
{
|
||||
if (containingPrinter != null)
|
||||
{
|
||||
this.Invalidate(InvalidateType.DisplayValues);
|
||||
ApplicationController.Instance.ReloadSettings(containingPrinter);
|
||||
// refresh the properties pannel by unselecting and selecting
|
||||
containingPrinter.Bed.Scene.SelectedItem = null;
|
||||
containingPrinter.Bed.Scene.SelectedItem = this;
|
||||
}
|
||||
}
|
||||
|
||||
public static HashSet<string> settingsToIgnore = new HashSet<string>()
|
||||
{
|
||||
SettingsKey.spiral_vase,
|
||||
SettingsKey.layer_to_pause,
|
||||
SettingsKey.perimeter_acceleration,
|
||||
SettingsKey.default_acceleration,
|
||||
SettingsKey.t1_extrusion_move_speed_multiplier,
|
||||
SettingsKey.bed_surface,
|
||||
SettingsKey.brim_extruder,
|
||||
SettingsKey.support_material_extruder,
|
||||
SettingsKey.support_material_interface_extruder,
|
||||
SettingsKey.material_color,
|
||||
SettingsKey.material_color_1,
|
||||
SettingsKey.material_color_2,
|
||||
SettingsKey.material_color_3,
|
||||
SettingsKey.filament_diameter,
|
||||
SettingsKey.filament_density,
|
||||
SettingsKey.filament_cost,
|
||||
SettingsKey.temperature,
|
||||
SettingsKey.temperature1,
|
||||
SettingsKey.temperature2,
|
||||
SettingsKey.temperature3,
|
||||
SettingsKey.bed_temperature,
|
||||
SettingsKey.bed_temperature_blue_tape,
|
||||
SettingsKey.bed_temperature_buildtak,
|
||||
SettingsKey.bed_temperature_garolite,
|
||||
SettingsKey.bed_temperature_glass,
|
||||
SettingsKey.bed_temperature_kapton,
|
||||
SettingsKey.bed_temperature_pei,
|
||||
SettingsKey.bed_temperature_pp,
|
||||
SettingsKey.inactive_cool_down,
|
||||
SettingsKey.seconds_to_reheat,
|
||||
};
|
||||
|
||||
public IEnumerable<EditorButtonData> GetEditorButtonsData()
|
||||
{
|
||||
var containingPrinter = this.ContainingPrinter();
|
||||
if (containingPrinter != null)
|
||||
{
|
||||
yield return new EditorButtonData()
|
||||
{
|
||||
Action = () =>
|
||||
{
|
||||
var settingsContext = new SettingsContext(containingPrinter, null, NamedSettingsLayers.All);
|
||||
foreach (var setting in containingPrinter.Settings.UserLayer)
|
||||
{
|
||||
var data = SliceSettingsRow.GetStyleData(containingPrinter, ApplicationController.Instance.Theme, settingsContext, setting.Key, true);
|
||||
|
||||
if (!settingsToIgnore.Contains(setting.Key) && data.showRestoreButton)
|
||||
{
|
||||
Overrides[setting.Key] = setting.Value;
|
||||
}
|
||||
}
|
||||
UpdateSettingsDisplay(containingPrinter);
|
||||
},
|
||||
Name = "Add User Overrides".Localize(),
|
||||
HelpText = "Copy in all current user overides".Localize()
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
if (ApplicationController.Instance.UserHasPermission(this))
|
||||
{
|
||||
yield return new EditorButtonData()
|
||||
|
|
@ -101,6 +172,8 @@ namespace MatterHackers.MatterControl.DesignTools.Operations
|
|||
Action = () =>
|
||||
{
|
||||
var settings = new PrinterSettings();
|
||||
// set this after the PrinterConfig is constructed to change it to overrides
|
||||
settings.GetSceneLayer = () => Overrides;
|
||||
var printer = new PrinterConfig(settings);
|
||||
// set this after the PrinterConfig is constructed to change it to overrides
|
||||
settings.GetSceneLayer = () => Overrides;
|
||||
|
|
@ -114,15 +187,7 @@ namespace MatterHackers.MatterControl.DesignTools.Operations
|
|||
editMaterialPresetsPage.Closed += (s, e2) =>
|
||||
{
|
||||
ApplicationController.Instance.AcitveSlicePresetsPage = null;
|
||||
var containingPrinter = this.ContainingPrinter();
|
||||
if (containingPrinter != null)
|
||||
{
|
||||
this.Invalidate(InvalidateType.DisplayValues);
|
||||
ApplicationController.Instance.ReloadSettings(containingPrinter);
|
||||
// refresh the properties pannel by unselecting and selecting
|
||||
containingPrinter.Bed.Scene.SelectedItem = null;
|
||||
containingPrinter.Bed.Scene.SelectedItem = this;
|
||||
}
|
||||
UpdateSettingsDisplay(containingPrinter);
|
||||
};
|
||||
|
||||
ApplicationController.Instance.AcitveSlicePresetsPage = editMaterialPresetsPage;
|
||||
|
|
|
|||
|
|
@ -68,6 +68,19 @@ namespace MatterHackers.MatterControl.SlicerConfiguration
|
|||
var sliceSettingsWidget = CreateSliceSettingsWidget(printer, presetsContext.PersistenceLayer);
|
||||
contentRow.AddChild(sliceSettingsWidget);
|
||||
|
||||
void ReloadSettings(object s, EventArgs e)
|
||||
{
|
||||
var newSliceSettingsWidget = CreateSliceSettingsWidget(printer, presetsContext.PersistenceLayer);
|
||||
contentRow.ReplaceChild(sliceSettingsWidget, newSliceSettingsWidget);
|
||||
contentRow.Width += 1;
|
||||
contentRow.Width -= 1;
|
||||
sliceSettingsWidget = newSliceSettingsWidget;
|
||||
}
|
||||
|
||||
ApplicationController.Instance.ReloadSettingsTriggered += ReloadSettings;
|
||||
|
||||
this.Closed += (s, e) => ApplicationController.Instance.ReloadSettingsTriggered -= ReloadSettings;
|
||||
|
||||
GuiWidget duplicateButton = null;
|
||||
|
||||
if (presetsContext.SetAsActive != null)
|
||||
|
|
|
|||
|
|
@ -247,6 +247,9 @@ Translated:Add to Queue
|
|||
English:Add to Selection
|
||||
Translated:Add to Selection
|
||||
|
||||
English:Add User Overrides
|
||||
Translated:Add User Overrides
|
||||
|
||||
English:Additional Printing Errors
|
||||
Translated:Additional Printing Errors
|
||||
|
||||
|
|
@ -1042,6 +1045,9 @@ Translated:Copy everything but hardware specific calibration settings
|
|||
English:Copy extrusions data
|
||||
Translated:Copy extrusions data
|
||||
|
||||
English:Copy in all current user overides
|
||||
Translated:Copy in all current user overides
|
||||
|
||||
English:Copy Mesh
|
||||
Translated:Copy Mesh
|
||||
|
||||
|
|
|
|||
|
|
@ -1 +1 @@
|
|||
Subproject commit 7ea2bbbf3634ab37698640cc184ac2d2755cffbe
|
||||
Subproject commit 303fb1cf3baada642aaa46eb4d2e9fd546045bf7
|
||||
Loading…
Add table
Add a link
Reference in a new issue