From 82b529f30e7b18871e71b78e9db0b8ace4db3d4c Mon Sep 17 00:00:00 2001 From: larsbrubaker Date: Mon, 15 Dec 2014 15:44:26 -0800 Subject: [PATCH] Made a 2 panel mode. Took out the other 3 panel mode. --- ApplicationView/WidescreenPanel.cs | 97 +++++------------------------ CustomWidgets/PanelSeparator.cs | 99 ------------------------------ MatterControl.csproj | 1 - MatterControlApplication.cs | 2 +- 4 files changed, 16 insertions(+), 183 deletions(-) delete mode 100644 CustomWidgets/PanelSeparator.cs diff --git a/ApplicationView/WidescreenPanel.cs b/ApplicationView/WidescreenPanel.cs index d5b608a48..75d7b9860 100644 --- a/ApplicationView/WidescreenPanel.cs +++ b/ApplicationView/WidescreenPanel.cs @@ -54,8 +54,7 @@ namespace MatterHackers.MatterControl { public class WidescreenPanel : FlowLayoutWidget { - static readonly int ColumnOneFixedWidth = 500; - static readonly int ColumnTheeFixedWidth = 590; + static readonly int ColumnOneFixedWidth = 590; static int lastNumberOfVisiblePanels; public TabPage AboutTabPage; @@ -64,14 +63,9 @@ namespace MatterHackers.MatterControl FlowLayoutWidget ColumnOne; FlowLayoutWidget ColumnTwo; - FlowLayoutWidget ColumnThree; double Force1PanelWidth = 990 * TextWidget.GlobalPointSizeScaleRatio; double Force2PanelWidth = 1590 * TextWidget.GlobalPointSizeScaleRatio; - View3DWidget part3DView; - ViewGcodeBasic partGcodeView; - - PanelSeparator RightBorderLine; GuiWidget leftBorderLine; event EventHandler unregisterEvents; @@ -143,13 +137,6 @@ namespace MatterHackers.MatterControl base.OnClosed(e); } - void onRightBorderClick(object sender, EventArgs e) - { - RightBorderLine.PushedRight = !RightBorderLine.PushedRight; - UserSettings.Instance.Fields.ThirdPannelVisible = !RightBorderLine.PushedRight; - UiThread.RunOnIdle(SetColumnVisibility); - } - void onActivePrintItemChanged(object sender, EventArgs e) { if (NumberOfVisiblePanels() > 1) @@ -183,6 +170,12 @@ namespace MatterHackers.MatterControl { ColumnTwo.CloseAndRemoveAllChildren(); +#if true + PartPreviewContent partViewContent = new PartPreviewContent(PrinterConnectionAndCommunication.Instance.ActivePrintItem, true, View3DWidget.AutoRotate.Enabled, false); + partViewContent.AnchorAll(); + + ColumnTwo.AddChild(partViewContent); +#else double buildHeight = ActiveSliceSettings.Instance.BuildHeight; part3DView = new View3DWidget(PrinterConnectionAndCommunication.Instance.ActivePrintItem, @@ -203,34 +196,19 @@ namespace MatterHackers.MatterControl ColumnTwo.AddChild(part3DView); ColumnTwo.AddChild(partGcodeView); +#endif ColumnTwo.AnchorAll(); } - static int ColumnThreeCount = 0; - void LoadColumnThree(object state = null) - { - ColumnThree.CloseAndRemoveAllChildren(); - ThirdPanelTabView thirdPanelTabView = new ThirdPanelTabView(); - thirdPanelTabView.Name = "For - WideScreenPanel {0}".FormatWith(ColumnThreeCount++); - ColumnThree.AddChild(thirdPanelTabView); - ColumnThree.Width = ColumnTheeFixedWidth; //Ordering here matters - must go after children are added - } - int NumberOfVisiblePanels() { if (this.Width < Force1PanelWidth) { return 1; } - else if (this.Width < Force2PanelWidth) - { - return 2; - } - else - { - return 3; - } + + return 2; } public void RecreateAllPanels(object state = null) @@ -253,13 +231,9 @@ namespace MatterHackers.MatterControl break; case 2: - case 3: - ApplicationController.Instance.WidescreenMode = true; - - LoadColumnOne(); - // make sure we restore the state of column one because LoadColumnThree is going to save it. - LoadColumnTwo(); - LoadColumnThree(); + ApplicationController.Instance.WidescreenMode = false; + LoadCompactView(); + LoadColumnTwo(); break; } @@ -276,13 +250,11 @@ namespace MatterHackers.MatterControl { case 1: { - ColumnThree.Visible = false; ColumnTwo.Visible = false; ColumnOne.Visible = true; Padding = new BorderDouble(0); - RightBorderLine.Visible = false; leftBorderLine.Visible = false; } break; @@ -290,35 +262,9 @@ namespace MatterHackers.MatterControl case 2: Padding = new BorderDouble(4); ColumnOne.Visible = true; - RightBorderLine.Visible = true; - if (RightBorderLine.PushedRight) - { - leftBorderLine.Visible = true; - ColumnThree.Visible = false; - ColumnTwo.Visible = true; - ColumnOne.HAnchor = Agg.UI.HAnchor.None; - } - else - { - leftBorderLine.Visible = false; - ColumnThree.Visible = true; - ColumnTwo.Visible = false; - ColumnOne.HAnchor = Agg.UI.HAnchor.ParentLeftRight; - } - break; - - case 3: - //All three columns shown - Padding = new BorderDouble(4); - - //If the middle column is hidden, left/right anchor the left column + ColumnTwo.Visible = true; ColumnOne.HAnchor = Agg.UI.HAnchor.None; - ColumnOne.Width = ColumnOneFixedWidth; - - ColumnOne.Visible = true; - leftBorderLine.Visible = true; - RightBorderLine.Visible = true; - ColumnThree.Visible = !RightBorderLine.PushedRight; + ColumnOne.Width = ColumnOneFixedWidth; // it can hold the slice settings so it needs to be bigger. break; } } @@ -334,11 +280,6 @@ namespace MatterHackers.MatterControl ColumnOne = new FlowLayoutWidget(FlowDirection.TopToBottom); ColumnTwo = new FlowLayoutWidget(FlowDirection.TopToBottom); - ColumnThree = new FlowLayoutWidget(FlowDirection.TopToBottom); - ColumnThree.VAnchor = VAnchor.ParentBottomTop; - - RightBorderLine = new PanelSeparator(); - RightBorderLine.PushedRight = !UserSettings.Instance.Fields.ThirdPannelVisible; AddChild(ColumnOne); leftBorderLine = new GuiWidget(vAnchor: VAnchor.ParentBottomTop); @@ -352,19 +293,11 @@ namespace MatterHackers.MatterControl }; AddChild(leftBorderLine); AddChild(ColumnTwo); - AddChild(RightBorderLine); - AddChild(ColumnThree); - - RightBorderLine.Click += new EventHandler(onRightBorderClick); } public void ReloadAdvancedControlsPanel(object state) { PreChangePanels.CallEvents(this, null); - if (NumberOfVisiblePanels() > 1) - { - UiThread.RunOnIdle(LoadColumnThree); - } } public void LoadSettingsOnPrinterChanged(object sender, EventArgs e) diff --git a/CustomWidgets/PanelSeparator.cs b/CustomWidgets/PanelSeparator.cs deleted file mode 100644 index 52d05592c..000000000 --- a/CustomWidgets/PanelSeparator.cs +++ /dev/null @@ -1,99 +0,0 @@ -using System; -using System.IO; -using MatterHackers.Agg.Image; -using MatterHackers.Agg; -using MatterHackers.VectorMath; -using MatterHackers.Agg.Font; -using MatterHackers.Agg.Transform; -using MatterHackers.Agg.VertexSource; -using MatterHackers.Agg.PlatformAbstract; -using MatterHackers.Agg.UI; -using MatterHackers.MatterControl.DataStorage; - -namespace MatterHackers.MatterControl.CustomWidgets -{ - class PanelSeparator : ClickWidget - { - RGBA_Bytes defaultBackgroundColor; - RGBA_Bytes hoverBackgroundColor; - bool pushedRight; - ImageBuffer rightArrowIndicator; - ImageBuffer leftArrowIndicator; - - public bool PushedRight - { - get { return pushedRight; } - set - { - if (pushedRight != value) - { - pushedRight = value; - } - } - } - - public override void OnDraw(Graphics2D graphics2D) - { - BackBuffer.SetRecieveBlender(new BlenderBGRA()); - RectangleDouble bounds = LocalBounds; - TypeFacePrinter printer; - Vector2 center = new Vector2((bounds.Right - bounds.Left) / 2, (bounds.Top - bounds.Bottom) / 2); - int textMargin = 20; - if (pushedRight) - { - printer = new TypeFacePrinter("Advanced Controls", justification: Justification.Center, baseline: Baseline.BoundsCenter); - Vector2 textSize = printer.GetSize(); - graphics2D.Render(leftArrowIndicator, new Vector2(center.x - leftArrowIndicator.Width / 2, center.y - leftArrowIndicator.Height / 2 - (textSize.x / 2 + textMargin))); - graphics2D.Render(leftArrowIndicator, new Vector2(center.x - leftArrowIndicator.Width / 2, center.y - leftArrowIndicator.Height / 2 + (textSize.x / 2 + textMargin))); - } - else - { - printer = new TypeFacePrinter("Part View", justification: Justification.Center, baseline: Baseline.BoundsCenter); - Vector2 textSize = printer.GetSize(); - graphics2D.Render(rightArrowIndicator, new Vector2(center.x - rightArrowIndicator.Width / 2, center.y - rightArrowIndicator.Height / 2 - (textSize.x / 2 + textMargin))); - graphics2D.Render(rightArrowIndicator, new Vector2(center.x - rightArrowIndicator.Width / 2, center.y - rightArrowIndicator.Height / 2 + (textSize.x / 2 + textMargin))); - } - VertexSourceApplyTransform rotated = new VertexSourceApplyTransform(printer, Affine.NewRotation(MathHelper.Tau / 4)); - VertexSourceApplyTransform positioned = new VertexSourceApplyTransform(rotated, Affine.NewTranslation(center.x, center.y)); - graphics2D.Render(positioned, RGBA_Bytes.White); - - base.OnDraw(graphics2D); - } - - public PanelSeparator() - : base(24, 1) - { - AddHandlers(); - - hoverBackgroundColor = new RGBA_Bytes(100, 100, 100); - defaultBackgroundColor = new RGBA_Bytes(160, 160, 160); - - rightArrowIndicator = StaticData.Instance.LoadIcon("icon_arrow_right_16x16.png"); - leftArrowIndicator = StaticData.Instance.LoadIcon("icon_arrow_left_16x16.png"); - - this.PushedRight = false; - this.BackgroundColor = defaultBackgroundColor; - this.VAnchor = VAnchor.ParentBottomTop; - this.Margin = new BorderDouble(8, 0); - this.Cursor = Cursors.Hand; - - DoubleBuffer = true; - } - - void AddHandlers() - { - this.MouseEnterBounds += new EventHandler(PanelSeparator_MouseEnterBounds); - this.MouseLeaveBounds += new EventHandler(PanelSeparator_MouseLeaveBounds); - } - - void PanelSeparator_MouseLeaveBounds(object sender, EventArgs e) - { - this.BackgroundColor = defaultBackgroundColor; - } - - void PanelSeparator_MouseEnterBounds(object sender, EventArgs e) - { - this.BackgroundColor = hoverBackgroundColor; - } - } -} diff --git a/MatterControl.csproj b/MatterControl.csproj index 97b8f9fcc..81b5460a4 100644 --- a/MatterControl.csproj +++ b/MatterControl.csproj @@ -122,7 +122,6 @@ - diff --git a/MatterControlApplication.cs b/MatterControlApplication.cs index 266f1e25d..477185dd5 100644 --- a/MatterControlApplication.cs +++ b/MatterControlApplication.cs @@ -134,7 +134,7 @@ namespace MatterHackers.MatterControl } this.AddChild(ApplicationController.Instance.MainView); - this.MinimumSize = new Vector2(400, 400); + this.MinimumSize = new Vector2(570, 600); this.Padding = new BorderDouble(0); //To be re-enabled once native borders are turned off #if false // this is to test freeing gcodefile memory