Added Open to the 3D view tool bar
This commit is contained in:
parent
dadf384ecb
commit
1c7366ef1c
2 changed files with 43 additions and 47 deletions
|
|
@ -172,42 +172,6 @@ namespace MatterHackers.MatterControl.PrintLibrary
|
|||
};
|
||||
toolbar.AddChild(showFolders);
|
||||
|
||||
var openButton = new TextIconButton("Open".Localize(), AggContext.StaticData.LoadIcon("fa-folder-open_16.png", 16, 16, theme.InvertIcons), theme)
|
||||
{
|
||||
Margin = theme.ButtonSpacing,
|
||||
ToolTipText = "Open File".Localize()
|
||||
};
|
||||
openButton.Click += (s, e) =>
|
||||
{
|
||||
popupMenuButton.CloseMenu();
|
||||
|
||||
var extensionsWithoutPeriod = new HashSet<string>(ApplicationSettings.OpenDesignFileParams.Split('|').First().Split(',').Select(t => t.Trim().Trim('.')));
|
||||
|
||||
foreach (var extension in ApplicationController.Instance.Library.ContentProviders.Keys)
|
||||
{
|
||||
extensionsWithoutPeriod.Add(extension.ToUpper());
|
||||
}
|
||||
|
||||
var extensionsArray = extensionsWithoutPeriod.OrderBy(t => t).ToArray();
|
||||
|
||||
string filter = string.Format(
|
||||
"{0}|{1}",
|
||||
string.Join(",", extensionsArray),
|
||||
string.Join("", extensionsArray.Select(t => $"*.{t.ToLower()};").ToArray()));
|
||||
|
||||
UiThread.RunOnIdle(() =>
|
||||
{
|
||||
AggContext.FileDialogs.OpenFileDialog(
|
||||
new OpenFileDialogParams(filter, multiSelect: true),
|
||||
(openParams) =>
|
||||
{
|
||||
ViewControls3D.LoadAndAddPartsToPlate(this, openParams.FileNames, ApplicationController.Instance.DragDropData.SceneContext);
|
||||
});
|
||||
}, .1);
|
||||
};
|
||||
|
||||
toolbar.AddChild(openButton);
|
||||
|
||||
PopupMenuButton viewMenuButton;
|
||||
|
||||
toolbar.AddChild(
|
||||
|
|
|
|||
|
|
@ -319,6 +319,12 @@ namespace MatterHackers.MatterControl.PartPreviewWindow
|
|||
|
||||
this.AddChild(new ToolbarSeparator(theme));
|
||||
|
||||
this.AddChild(CreateOpenButton(theme));
|
||||
|
||||
this.AddChild(CreateSaveButton(theme));
|
||||
|
||||
this.AddChild(new ToolbarSeparator(theme));
|
||||
|
||||
var undoButton = new IconButton(AggContext.StaticData.LoadIcon("Undo_grey_16x.png", 16, 16, theme.InvertIcons), theme)
|
||||
{
|
||||
Name = "3D View Undo",
|
||||
|
|
@ -334,7 +340,7 @@ namespace MatterHackers.MatterControl.PartPreviewWindow
|
|||
undoBuffer.Undo();
|
||||
view3DWidget.InteractionLayer.Focus();
|
||||
// if the item we had selected is still in the scene, re-select it
|
||||
if(sceneContext.Scene.Children.Contains(selectedItem))
|
||||
if (sceneContext.Scene.Children.Contains(selectedItem))
|
||||
{
|
||||
sceneContext.Scene.SelectedItem = selectedItem;
|
||||
}
|
||||
|
|
@ -363,8 +369,6 @@ namespace MatterHackers.MatterControl.PartPreviewWindow
|
|||
};
|
||||
this.AddChild(redoButton);
|
||||
|
||||
this.AddChild(CreateSaveButton(theme));
|
||||
|
||||
if (showPrintButton)
|
||||
{
|
||||
var printButton = new TextButton("Print", theme)
|
||||
|
|
@ -502,6 +506,42 @@ namespace MatterHackers.MatterControl.PartPreviewWindow
|
|||
Scene_SelectionChanged(null, null);
|
||||
}
|
||||
|
||||
private IconButton CreateOpenButton(ThemeConfig theme)
|
||||
{
|
||||
var openButton = new IconButton(AggContext.StaticData.LoadIcon("fa-folder-open_16.png", 16, 16, theme.InvertIcons), theme)
|
||||
{
|
||||
Margin = theme.ButtonSpacing,
|
||||
ToolTipText = "Open File".Localize()
|
||||
};
|
||||
openButton.Click += (s, e) =>
|
||||
{
|
||||
var extensionsWithoutPeriod = new HashSet<string>(ApplicationSettings.OpenDesignFileParams.Split('|').First().Split(',').Select(t => t.Trim().Trim('.')));
|
||||
|
||||
foreach (var extension in ApplicationController.Instance.Library.ContentProviders.Keys)
|
||||
{
|
||||
extensionsWithoutPeriod.Add(extension.ToUpper());
|
||||
}
|
||||
|
||||
var extensionsArray = extensionsWithoutPeriod.OrderBy(t => t).ToArray();
|
||||
|
||||
string filter = string.Format(
|
||||
"{0}|{1}",
|
||||
string.Join(",", extensionsArray),
|
||||
string.Join("", extensionsArray.Select(t => $"*.{t.ToLower()};").ToArray()));
|
||||
|
||||
UiThread.RunOnIdle(() =>
|
||||
{
|
||||
AggContext.FileDialogs.OpenFileDialog(
|
||||
new OpenFileDialogParams(filter, multiSelect: true),
|
||||
(openParams) =>
|
||||
{
|
||||
ViewControls3D.LoadAndAddPartsToPlate(this, openParams.FileNames, ApplicationController.Instance.DragDropData.SceneContext);
|
||||
});
|
||||
}, .1);
|
||||
};
|
||||
return openButton;
|
||||
}
|
||||
|
||||
private void Scene_SelectionChanged(object sender, EventArgs e)
|
||||
{
|
||||
// Set enabled level based on operation rules
|
||||
|
|
@ -674,14 +714,6 @@ namespace MatterHackers.MatterControl.PartPreviewWindow
|
|||
});
|
||||
});
|
||||
|
||||
var exportAction = view3DWidget.WorkspaceActions["Export"];
|
||||
|
||||
var exportItem = popupMenu.CreateMenuItem("Export".Localize(), exportAction.Icon);
|
||||
exportItem.Click += (s, e) =>
|
||||
{
|
||||
exportAction.Action.Invoke();
|
||||
};
|
||||
|
||||
return popupMenu;
|
||||
},
|
||||
BackgroundColor = theme.ToolbarButtonBackground,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue