From 1495a5794d9b67e4e8414bed35692c453b28357d Mon Sep 17 00:00:00 2001 From: Gregory Diaz Date: Sat, 11 Apr 2015 15:20:18 -0700 Subject: [PATCH] Good progress on color gradient layout. --- MatterControl.csproj | 1 + PartPreviewWindow/ColorGradientWidget.cs | 76 +++++++++++++++++++ PartPreviewWindow/ViewGcodeBasic.cs | 5 ++ StaticData/Icons/ColorGradient/blue.png | Bin 0 -> 146 bytes StaticData/Icons/ColorGradient/green.png | Bin 0 -> 146 bytes StaticData/Icons/ColorGradient/lightblue.png | Bin 0 -> 146 bytes StaticData/Icons/ColorGradient/orange.png | Bin 0 -> 146 bytes StaticData/Icons/ColorGradient/red.png | Bin 0 -> 146 bytes StaticData/Icons/ColorGradient/teal.png | Bin 0 -> 146 bytes StaticData/Icons/ColorGradient/yellow.png | Bin 0 -> 146 bytes 10 files changed, 82 insertions(+) create mode 100644 PartPreviewWindow/ColorGradientWidget.cs create mode 100644 StaticData/Icons/ColorGradient/blue.png create mode 100644 StaticData/Icons/ColorGradient/green.png create mode 100644 StaticData/Icons/ColorGradient/lightblue.png create mode 100644 StaticData/Icons/ColorGradient/orange.png create mode 100644 StaticData/Icons/ColorGradient/red.png create mode 100644 StaticData/Icons/ColorGradient/teal.png create mode 100644 StaticData/Icons/ColorGradient/yellow.png diff --git a/MatterControl.csproj b/MatterControl.csproj index 736f9ff03..c9203d4be 100644 --- a/MatterControl.csproj +++ b/MatterControl.csproj @@ -163,6 +163,7 @@ + diff --git a/PartPreviewWindow/ColorGradientWidget.cs b/PartPreviewWindow/ColorGradientWidget.cs new file mode 100644 index 000000000..f72330f82 --- /dev/null +++ b/PartPreviewWindow/ColorGradientWidget.cs @@ -0,0 +1,76 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using MatterHackers.Agg; +using MatterHackers.Agg.UI; +using MatterHackers.MeshVisualizer; +using MatterHackers.VectorMath; +using System.IO; +using MatterHackers.Agg.PlatformAbstract; + +namespace MatterHackers.MatterControl.PartPreviewWindow +{ + + public class ColorGradientWidget : FlowLayoutWidget + { + + List allColorToSpeedWidgets; + + public ColorGradientWidget() + : base(FlowDirection.TopToBottom) + { + + this.VAnchor = VAnchor.FitToChildren; + + BackgroundColor = new RGBA_Bytes(0, 0, 0, 120); + + ColorToSpeedWidget blue = new ColorToSpeedWidget("blue.png", "BLUE"); + ColorToSpeedWidget red = new ColorToSpeedWidget("red.png", "RED"); + ColorToSpeedWidget teal = new ColorToSpeedWidget("teal.png", "TEAL"); + ColorToSpeedWidget yellow = new ColorToSpeedWidget("yellow.png", "YELLOW"); + ColorToSpeedWidget green = new ColorToSpeedWidget("green.png", "GREEN"); + ColorToSpeedWidget orange = new ColorToSpeedWidget("orange.png", "ORANGE"); + ColorToSpeedWidget lightBlue = new ColorToSpeedWidget("lightblue.png", "LIGHT-BLUE"); + + this.AddChild(blue); + this.AddChild(red); + this.AddChild(teal); + this.AddChild(yellow); + this.AddChild(green); + this.AddChild(orange); + this.AddChild(lightBlue); + + Margin = new BorderDouble(75); + + } + + } + + public class ColorToSpeedWidget : FlowLayoutWidget + { + + public ColorToSpeedWidget(String imageFileName, String layerSpeed) + : base(FlowDirection.LeftToRight) + { + Margin = new BorderDouble(2); + + Agg.Image.ImageBuffer color = StaticData.Instance.LoadIcon(Path.Combine("ColorGradient", imageFileName)); + + ImageWidget colorWidget = new ImageWidget(color); + colorWidget.Margin = new BorderDouble(left:2); + + TextWidget speedTextBox = new TextWidget(layerSpeed, pointSize: 12); + speedTextBox.TextColor = RGBA_Bytes.White; + speedTextBox.VAnchor = VAnchor.ParentCenter; + speedTextBox.Margin = new BorderDouble(left: 2); + + this.AddChild(colorWidget); + this.AddChild(speedTextBox); + + } + + } + +} \ No newline at end of file diff --git a/PartPreviewWindow/ViewGcodeBasic.cs b/PartPreviewWindow/ViewGcodeBasic.cs index d54cf3034..2c1e0ed4b 100644 --- a/PartPreviewWindow/ViewGcodeBasic.cs +++ b/PartPreviewWindow/ViewGcodeBasic.cs @@ -256,6 +256,11 @@ namespace MatterHackers.MatterControl.PartPreviewWindow viewControls2D = new ViewControls2D(); AddChild(viewControls2D); + + ColorGradientWidget gradient = new ColorGradientWidget(); + gradient.VAnchor = Agg.UI.VAnchor.ParentTop; + AddChild(gradient); + viewControls3D = new ViewControls3D(meshViewerWidget); viewControls3D.PartSelectVisible = false; AddChild(viewControls3D); diff --git a/StaticData/Icons/ColorGradient/blue.png b/StaticData/Icons/ColorGradient/blue.png new file mode 100644 index 0000000000000000000000000000000000000000..dd29c4a9115228670c9e53b20ab5824eaebac91e GIT binary patch literal 146 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4mJh`2Kmqb6B!s7BuiW)N`mv#O3D+9QW+dm z@{>{(JaZG%Q-e|yQz{EjrrIztFqn9{IEGZ*O4@Sj{{(JaZG%Q-e|yQz{EjrrIztFqn9{IEGZ*N?LQ{>BIvE4lFp}AZKxaN##-FjYc14 xi5U_aEQ{HCqztkcSQ?5RvvPg0XW%ek*l~qb_o3^70}Kod44$rjF6*2UngF%}Eye%< literal 0 HcmV?d00001 diff --git a/StaticData/Icons/ColorGradient/lightblue.png b/StaticData/Icons/ColorGradient/lightblue.png new file mode 100644 index 0000000000000000000000000000000000000000..897b0d239c316e96de6a248a7d5149efe748d47e GIT binary patch literal 146 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4mJh`2Kmqb6B!s7BuiW)N`mv#O3D+9QW+dm z@{>{(JaZG%Q-e|yQz{EjrrIztFqn9{IEGZ*N?K$6*`l$r(Xp}7rl5h<;|TLc=9z2; w28IC~ZoCqv30D|67@i*E7I{(6AdtY&XU6&{(JaZG%Q-e|yQz{EjrrIztFqn9{IEGZ*O8R3IYuVV?=-Ak3Q_#TbafEpz^Gr4a w1H%9gH(m+Tgewdj3{Q`7i@d035J+I?iD6CT`rqr%z`(%Z>FVdQ&MBb@0P;L3#{d8T literal 0 HcmV?d00001 diff --git a/StaticData/Icons/ColorGradient/red.png b/StaticData/Icons/ColorGradient/red.png new file mode 100644 index 0000000000000000000000000000000000000000..37d2594368e2065275899d5f30c672d8a374075a GIT binary patch literal 146 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4mJh`2Kmqb6B!s7BuiW)N`mv#O3D+9QW+dm z@{>{(JaZG%Q-e|yQz{EjrrIztFqn9{IEGZ*N~+0QH1)uN0}Bo~$XOg{(JaZG%Q-e|yQz{EjrrIztFqn9{IEGZ*N;-4j-n6l?(Xp}7rl5h<;|TLc=9z2; w28IC~ZoCqv30D|67@i*E7I{(6AdtZDpqsVqW!J-v3=9kmp00i_>zopr03{kL+5i9m literal 0 HcmV?d00001 diff --git a/StaticData/Icons/ColorGradient/yellow.png b/StaticData/Icons/ColorGradient/yellow.png new file mode 100644 index 0000000000000000000000000000000000000000..f9a96034b583fdc3f271694e2c5a90ed538e6a35 GIT binary patch literal 146 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4mJh`2Kmqb6B!s7BuiW)N`mv#O3D+9QW+dm z@{>{(JaZG%Q-e|yQz{EjrrIztFqn9{IEGZ*N~-x5px)Tn=-Ak3Q_#TbafEpz^Gr4a w1H%9gH(m+Tgewdj3{Q`7i@d035J+HHBE`CFHQN?d1_lNOPgg&ebxsLQ0Qfa2tN;K2 literal 0 HcmV?d00001