Moved export and import options to main printer menu
refactoring
This commit is contained in:
parent
565ef95c16
commit
51e8b2eb0e
4 changed files with 77 additions and 82 deletions
|
|
@ -716,9 +716,7 @@ namespace MatterHackers.MatterControl
|
|||
{
|
||||
public event EventHandler<ViewModeChangedEventArgs> ViewModeChanged;
|
||||
|
||||
public event EventHandler ConfigurePrinterVisibleChanged;
|
||||
public event EventHandler ControlsVisibleChanged;
|
||||
public event EventHandler TerminalVisibleChanged;
|
||||
public event EventHandler VisibilityChanged;
|
||||
|
||||
public bool SliceSettingsTabPinned
|
||||
{
|
||||
|
|
@ -799,7 +797,7 @@ namespace MatterHackers.MatterControl
|
|||
|
||||
UserSettings.Instance.set(UserSettingsKey.ConfigurePrinterTabVisible, _configurePrinterVisible ? "true" : "false");
|
||||
|
||||
ConfigurePrinterVisibleChanged?.Invoke(this, null);
|
||||
VisibilityChanged?.Invoke(this, null);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -820,7 +818,7 @@ namespace MatterHackers.MatterControl
|
|||
|
||||
UserSettings.Instance.set(UserSettingsKey.ControlsTabVisible, _controlsVisible ? "true" : "false");
|
||||
|
||||
ControlsVisibleChanged?.Invoke(this, null);
|
||||
VisibilityChanged?.Invoke(this, null);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -841,7 +839,7 @@ namespace MatterHackers.MatterControl
|
|||
|
||||
UserSettings.Instance.set(UserSettingsKey.TerminalTabVisible, _terminalVisible ? "true" : "false");
|
||||
|
||||
TerminalVisibleChanged?.Invoke(this, null);
|
||||
VisibilityChanged?.Invoke(this, null);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -207,9 +207,7 @@ namespace MatterHackers.MatterControl.PartPreviewWindow
|
|||
|
||||
this.SetViewMode(printer.ViewState.ViewMode);
|
||||
|
||||
printer.ViewState.ConfigurePrinterVisibleChanged += ProcessOptionalTabs;
|
||||
printer.ViewState.ControlsVisibleChanged += ProcessOptionalTabs;
|
||||
printer.ViewState.TerminalVisibleChanged += ProcessOptionalTabs;
|
||||
printer.ViewState.VisibilityChanged += ProcessOptionalTabs;
|
||||
|
||||
printer.Bed.RendererOptions.PropertyChanged += RendererOptions_PropertyChanged;
|
||||
|
||||
|
|
@ -386,9 +384,7 @@ namespace MatterHackers.MatterControl.PartPreviewWindow
|
|||
unregisterEvents?.Invoke(null, null);
|
||||
|
||||
sceneContext.LoadedGCodeChanged -= BedPlate_LoadedGCodeChanged;
|
||||
printer.ViewState.ConfigurePrinterVisibleChanged -= ProcessOptionalTabs;
|
||||
printer.ViewState.ControlsVisibleChanged -= ProcessOptionalTabs;
|
||||
printer.ViewState.TerminalVisibleChanged -= ProcessOptionalTabs;
|
||||
printer.ViewState.VisibilityChanged -= ProcessOptionalTabs;
|
||||
printer.ViewState.ViewModeChanged -= ViewState_ViewModeChanged;
|
||||
printer.Bed.RendererOptions.PropertyChanged -= RendererOptions_PropertyChanged;
|
||||
|
||||
|
|
|
|||
|
|
@ -40,6 +40,7 @@ using MatterHackers.MatterControl.CustomWidgets;
|
|||
using MatterHackers.MatterControl.EeProm;
|
||||
using MatterHackers.MatterControl.PrinterCommunication;
|
||||
using MatterHackers.MatterControl.PrintHistory;
|
||||
using MatterHackers.MatterControl.SetupWizard;
|
||||
using MatterHackers.MatterControl.SlicerConfiguration;
|
||||
|
||||
namespace MatterHackers.MatterControl.PartPreviewWindow
|
||||
|
|
@ -308,6 +309,75 @@ namespace MatterHackers.MatterControl.PartPreviewWindow
|
|||
},
|
||||
new ActionSeparator(),
|
||||
new NamedAction()
|
||||
{
|
||||
Title = "Import Presets".Localize(),
|
||||
Action = () =>
|
||||
{
|
||||
AggContext.FileDialogs.OpenFileDialog(
|
||||
new OpenFileDialogParams("settings files|*.printer"),
|
||||
(dialogParams) =>
|
||||
{
|
||||
if (!string.IsNullOrEmpty(dialogParams.FileName))
|
||||
{
|
||||
DialogWindow.Show(new ImportSettingsPage(dialogParams.FileName, printer));
|
||||
}
|
||||
});
|
||||
}
|
||||
},
|
||||
new NamedAction()
|
||||
{
|
||||
Title = "Export All Settings".Localize(),
|
||||
Action = () =>
|
||||
{
|
||||
ActiveSliceSettings.Instance.Helpers.ExportAsMatterControlConfig();
|
||||
}
|
||||
},
|
||||
new ActionSeparator(),
|
||||
new NamedAction()
|
||||
{
|
||||
Title = "Restore Settings".Localize(),
|
||||
Action = () =>
|
||||
{
|
||||
DialogWindow.Show<PrinterProfileHistoryPage>();
|
||||
}
|
||||
},
|
||||
new NamedAction()
|
||||
{
|
||||
Title = "Reset to Defaults".Localize(),
|
||||
Action = () =>
|
||||
{
|
||||
StyledMessageBox.ShowMessageBox(
|
||||
(revertSettings) =>
|
||||
{
|
||||
if (revertSettings)
|
||||
{
|
||||
bool onlyReloadSliceSettings = true;
|
||||
if (printer.Settings.GetValue<bool>(SettingsKey.print_leveling_required_to_print)
|
||||
&& printer.Settings.GetValue<bool>(SettingsKey.print_leveling_enabled))
|
||||
{
|
||||
onlyReloadSliceSettings = false;
|
||||
}
|
||||
|
||||
printer.Settings.ClearUserOverrides();
|
||||
printer.Settings.Save();
|
||||
|
||||
if (onlyReloadSliceSettings)
|
||||
{
|
||||
printer?.Bed.GCodeRenderer?.Clear3DGCode();
|
||||
}
|
||||
else
|
||||
{
|
||||
ApplicationController.Instance.ReloadAll();
|
||||
}
|
||||
}
|
||||
},
|
||||
"Resetting to default values will remove your current overrides and restore your original printer settings.\nAre you sure you want to continue?".Localize(),
|
||||
"Revert Settings".Localize(),
|
||||
StyledMessageBox.MessageType.YES_NO);
|
||||
}
|
||||
},
|
||||
new ActionSeparator(),
|
||||
new NamedAction()
|
||||
{
|
||||
Title = "Delete Printer".Localize(),
|
||||
Action = () =>
|
||||
|
|
|
|||
|
|
@ -76,81 +76,12 @@ namespace MatterHackers.MatterControl.SlicerConfiguration
|
|||
"Advanced",
|
||||
theme,
|
||||
isPrimarySettingsView: true,
|
||||
databaseMRUKey: UserSettingsKey.SliceSettingsWidget_CurrentTab,
|
||||
extendPopupMenu: this.ExtendOverflowMenu));
|
||||
databaseMRUKey: UserSettingsKey.SliceSettingsWidget_CurrentTab));
|
||||
}
|
||||
|
||||
this.AnchorAll();
|
||||
}
|
||||
|
||||
private void ExtendOverflowMenu(PopupMenu popupMenu)
|
||||
{
|
||||
popupMenu.CreateHorizontalLine();
|
||||
PopupMenu.MenuItem menuItem;
|
||||
|
||||
menuItem = popupMenu.CreateMenuItem("Import Presets".Localize());
|
||||
menuItem.Click += (s, e) => UiThread.RunOnIdle(() =>
|
||||
{
|
||||
AggContext.FileDialogs.OpenFileDialog(
|
||||
new OpenFileDialogParams("settings files|*.printer"),
|
||||
(dialogParams) =>
|
||||
{
|
||||
if (!string.IsNullOrEmpty(dialogParams.FileName))
|
||||
{
|
||||
DialogWindow.Show(new ImportSettingsPage(dialogParams.FileName, printer));
|
||||
}
|
||||
});
|
||||
}, .2);
|
||||
|
||||
popupMenu.CreateHorizontalLine();
|
||||
|
||||
menuItem = popupMenu.CreateMenuItem("Restore Settings".Localize());
|
||||
menuItem.Click += (s, e) => UiThread.RunOnIdle(() =>
|
||||
{
|
||||
DialogWindow.Show<PrinterProfileHistoryPage>();
|
||||
}, .2);
|
||||
menuItem.Enabled = !string.IsNullOrEmpty(AuthenticationData.Instance.ActiveSessionUsername);
|
||||
|
||||
menuItem = popupMenu.CreateMenuItem("Reset to Defaults".Localize());
|
||||
menuItem.Click += (s, e) => UiThread.RunOnIdle(() =>
|
||||
{
|
||||
StyledMessageBox.ShowMessageBox(
|
||||
(revertSettings) =>
|
||||
{
|
||||
if (revertSettings)
|
||||
{
|
||||
bool onlyReloadSliceSettings = true;
|
||||
if (printer.Settings.GetValue<bool>(SettingsKey.print_leveling_required_to_print)
|
||||
&& printer.Settings.GetValue<bool>(SettingsKey.print_leveling_enabled))
|
||||
{
|
||||
onlyReloadSliceSettings = false;
|
||||
}
|
||||
|
||||
printer.Settings.ClearUserOverrides();
|
||||
printer.Settings.Save();
|
||||
|
||||
if (onlyReloadSliceSettings)
|
||||
{
|
||||
printer?.Bed.GCodeRenderer?.Clear3DGCode();
|
||||
}
|
||||
else
|
||||
{
|
||||
ApplicationController.Instance.ReloadAll();
|
||||
}
|
||||
}
|
||||
},
|
||||
"Resetting to default values will remove your current overrides and restore your original printer settings.\nAre you sure you want to continue?".Localize(),
|
||||
"Revert Settings".Localize(),
|
||||
StyledMessageBox.MessageType.YES_NO);
|
||||
}, .2);
|
||||
|
||||
menuItem = popupMenu.CreateMenuItem("Export".Localize());
|
||||
menuItem.Click += (s, e) => UiThread.RunOnIdle(() =>
|
||||
{
|
||||
ActiveSliceSettings.Instance.Helpers.ExportAsMatterControlConfig();
|
||||
}, .2);
|
||||
}
|
||||
|
||||
// TODO: This should just proxy to settingsControlBar.Visible. Having local state and pushing values on event listeners seems off
|
||||
private bool showControlBar = true;
|
||||
public bool ShowControlBar
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue