Browse Source

GCodeViewer -> New icons for thumbs of horizontal DoubleSlider::Control

enricoturri1966 4 years ago
parent
commit
98c2e3c7b1

+ 54 - 0
resources/icons/thumb_left.svg

@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   inkscape:version="1.0 (4035a4fb49, 2020-05-01)"
+   sodipodi:docname="thumb_left.svg"
+   xml:space="preserve"
+   enable-background="new 0 0 16 16"
+   viewBox="0 0 16 16"
+   y="0px"
+   x="0px"
+   id="Layer_1"
+   version="1.0"><metadata
+   id="metadata32"><rdf:RDF><cc:Work
+       rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+         rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
+   id="defs30" /><sodipodi:namedview
+   inkscape:current-layer="Layer_1"
+   inkscape:window-maximized="0"
+   inkscape:window-y="0"
+   inkscape:window-x="1268"
+   inkscape:cy="8"
+   inkscape:cx="8"
+   inkscape:zoom="63"
+   showgrid="false"
+   id="namedview28"
+   inkscape:window-height="1368"
+   inkscape:window-width="1283"
+   inkscape:pageshadow="2"
+   inkscape:pageopacity="0"
+   guidetolerance="10"
+   gridtolerance="10"
+   objecttolerance="10"
+   borderopacity="1"
+   bordercolor="#666666"
+   pagecolor="#ffffff" />
+<g
+   transform="rotate(-90,8.0158731,7.984127)"
+   id="hex_x5F_plus">
+	<g
+   id="g24">
+		<polygon
+   id="polygon22"
+   style="stroke:#ffffff;stroke-width:1"
+   points="15,7 15,5 8,0 1,5 1,7 1,8 15,8 "
+   fill="#ed6b21" />
+	</g>
+</g>
+</svg>

+ 54 - 0
resources/icons/thumb_right.svg

@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   inkscape:version="1.0 (4035a4fb49, 2020-05-01)"
+   sodipodi:docname="thumb_right.svg"
+   xml:space="preserve"
+   enable-background="new 0 0 16 16"
+   viewBox="0 0 16 16"
+   y="0px"
+   x="0px"
+   id="Layer_1"
+   version="1.0"><metadata
+   id="metadata32"><rdf:RDF><cc:Work
+       rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
+         rdf:resource="http://purl.org/dc/dcmitype/StillImage" /><dc:title></dc:title></cc:Work></rdf:RDF></metadata><defs
+   id="defs30" /><sodipodi:namedview
+   inkscape:current-layer="Layer_1"
+   inkscape:window-maximized="0"
+   inkscape:window-y="0"
+   inkscape:window-x="1268"
+   inkscape:cy="8"
+   inkscape:cx="8"
+   inkscape:zoom="63"
+   showgrid="false"
+   id="namedview28"
+   inkscape:window-height="1368"
+   inkscape:window-width="1283"
+   inkscape:pageshadow="2"
+   inkscape:pageopacity="0"
+   guidetolerance="10"
+   gridtolerance="10"
+   objecttolerance="10"
+   borderopacity="1"
+   bordercolor="#666666"
+   pagecolor="#ffffff" />
+<g
+   transform="matrix(0,-1,-1,0,16.012532,16)"
+   id="hex_x5F_plus">
+	<g
+   id="g24">
+		<polygon
+   id="polygon22"
+   style="stroke:#ffffff;stroke-width:1"
+   points="15,8 15,7 15,5 8,0 1,5 1,7 1,8 "
+   fill="#ed6b21" />
+	</g>
+</g>
+</svg>

+ 11 - 1
src/slic3r/GUI/DoubleSlider.cpp

@@ -64,8 +64,13 @@ Control::Control( wxWindow *parent,
     if (!is_osx)
         SetDoubleBuffered(true);// SetDoubleBuffered exists on Win and Linux/GTK, but is missing on OSX
 
+#if ENABLE_GCODE_VIEWER
+    m_bmp_thumb_higher = (style == wxSL_HORIZONTAL ? ScalableBitmap(this, "thumb_right") : ScalableBitmap(this, "thumb_up"));
+    m_bmp_thumb_lower  = (style == wxSL_HORIZONTAL ? ScalableBitmap(this, "thumb_left")  : ScalableBitmap(this, "thumb_down"));
+#else
     m_bmp_thumb_higher = (style == wxSL_HORIZONTAL ? ScalableBitmap(this, "right_half_circle.png") : ScalableBitmap(this, "thumb_up"));
     m_bmp_thumb_lower  = (style == wxSL_HORIZONTAL ? ScalableBitmap(this, "left_half_circle.png" ) : ScalableBitmap(this, "thumb_down"));
+#endif // ENABLE_GCODE_VIEWER
     m_thumb_size = m_bmp_thumb_lower.GetBmpSize();
 
     m_bmp_add_tick_on  = ScalableBitmap(this, "colorchange_add");
@@ -576,6 +581,10 @@ void Control::draw_thumb_text(wxDC& dc, const wxPoint& pos, const SelectedSlider
 
 void Control::draw_thumb_item(wxDC& dc, const wxPoint& pos, const SelectedSlider& selection)
 {
+#if ENABLE_GCODE_VIEWER
+    wxCoord x_draw = pos.x - int(0.5 * m_thumb_size.x);
+    wxCoord y_draw = pos.y - int(0.5 * m_thumb_size.y);
+#else
     wxCoord x_draw, y_draw;
     if (selection == ssLower) {
         if (is_horizontal()) {
@@ -587,7 +596,7 @@ void Control::draw_thumb_item(wxDC& dc, const wxPoint& pos, const SelectedSlider
             y_draw = pos.y - int(0.5*m_thumb_size.y);
         }
     }
-    else{
+    else {
         if (is_horizontal()) {
             x_draw = pos.x;
             y_draw = pos.y - int(0.5*m_thumb_size.y);
@@ -597,6 +606,7 @@ void Control::draw_thumb_item(wxDC& dc, const wxPoint& pos, const SelectedSlider
             y_draw = pos.y - int(0.5*m_thumb_size.y);
         }
     }
+#endif // ENABLE_GCODE_VIEWER
     dc.DrawBitmap(selection == ssLower ? m_bmp_thumb_lower.bmp() : m_bmp_thumb_higher.bmp(), x_draw, y_draw);
 
     // Update thumb rect

+ 1 - 1
src/slic3r/GUI/GUI_Preview.cpp

@@ -343,7 +343,7 @@ bool Preview::init(wxWindow* parent, Model* model)
 #endif // ENABLE_GCODE_VIEWER
 
 #if ENABLE_GCODE_VIEWER
-    m_moves_slider = new DoubleSlider::Control(m_bottom_toolbar_panel, wxID_ANY, 0, 0, 0, 100, wxDefaultPosition, wxSize(-1, 3 * GetTextExtent("m").y), wxSL_HORIZONTAL);
+    m_moves_slider = new DoubleSlider::Control(m_bottom_toolbar_panel, wxID_ANY, 0, 0, 0, 100, wxDefaultPosition, wxSize(-1, 4 * GetTextExtent("m").y), wxSL_HORIZONTAL);
     m_moves_slider->SetDrawMode(DoubleSlider::dmSequentialGCodeView);
 
     wxBoxSizer* bottom_toolbar_sizer = new wxBoxSizer(wxHORIZONTAL);