From ad602274499ca454c3c4d27abfa8b14087e04c44 Mon Sep 17 00:00:00 2001
From: YuSanka <yusanka@gmail.com>
Date: Tue, 10 Aug 2021 15:08:04 +0200
Subject: [PATCH] MSW specific: Fixed a typo caused ignoring ENTER for
 TextControls in Settings Tabs + Added Info icon for MessageDialog

---
 resources/icons/info.svg     | 71 ++++++++++++++++++++++++++++++++++++
 src/slic3r/GUI/Field.cpp     |  2 +-
 src/slic3r/GUI/MsgDialog.cpp |  2 +-
 3 files changed, 73 insertions(+), 2 deletions(-)
 create mode 100644 resources/icons/info.svg

diff --git a/resources/icons/info.svg b/resources/icons/info.svg
new file mode 100644
index 000000000..276b26061
--- /dev/null
+++ b/resources/icons/info.svg
@@ -0,0 +1,71 @@
+<?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"
+   version="1.0"
+   id="error"
+   x="0px"
+   y="0px"
+   viewBox="0 0 200 200"
+   enable-background="new 0 0 100 100"
+   xml:space="preserve"
+   sodipodi:docname="notification_error.svg"
+   width="200"
+   height="200"
+   inkscape:version="1.0 (4035a4fb49, 2020-05-01)"><metadata
+   id="metadata19"><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="defs17" /><sodipodi:namedview
+   inkscape:document-rotation="0"
+   pagecolor="#ffffff"
+   bordercolor="#666666"
+   borderopacity="1"
+   objecttolerance="10"
+   gridtolerance="10"
+   guidetolerance="10"
+   inkscape:pageopacity="0"
+   inkscape:pageshadow="2"
+   inkscape:window-width="2560"
+   inkscape:window-height="1377"
+   id="namedview15"
+   showgrid="false"
+   inkscape:zoom="5.04"
+   inkscape:cx="117.17146"
+   inkscape:cy="98.609664"
+   inkscape:window-x="-8"
+   inkscape:window-y="-8"
+   inkscape:window-maximized="1"
+   inkscape:current-layer="error" />
+<g
+   id="g4"
+   transform="matrix(2.52,0,0,2.52,-26,-26)">
+	<path
+   fill="#808080"
+   d="m 50,54.25 c -2.35,0 -4.25,-1.9 -4.25,-4.25 V 35 c 0,-2.35 1.9,-4.25 4.25,-4.25 2.35,0 4.25,1.9 4.25,4.25 v 15 c 0,2.35 -1.9,4.25 -4.25,4.25 z"
+   id="path2" />
+</g>
+<g
+   id="g8"
+   transform="matrix(2.52,0,0,2.52,-26,-26)">
+	<circle
+   fill="#808080"
+   cx="50"
+   cy="65"
+   r="5"
+   id="circle6" />
+</g>
+<g
+   id="g12"
+   transform="matrix(2.52,0,0,2.52,-26,-26)">
+	<path
+   fill="#808080"
+   d="M 50,89.25 C 28.36,89.25 10.75,71.64 10.75,50 10.75,28.36 28.36,10.75 50,10.75 71.64,10.75 89.25,28.36 89.25,50 89.25,71.64 71.64,89.25 50,89.25 Z m 0,-70 C 33.05,19.25 19.25,33.04 19.25,50 19.25,66.95 33.04,80.75 50,80.75 66.95,80.75 80.75,66.96 80.75,50 80.75,33.05 66.95,19.25 50,19.25 Z"
+   id="path10" />
+</g>
+</svg>
diff --git a/src/slic3r/GUI/Field.cpp b/src/slic3r/GUI/Field.cpp
index 76fd857fb..d7d474531 100644
--- a/src/slic3r/GUI/Field.cpp
+++ b/src/slic3r/GUI/Field.cpp
@@ -500,7 +500,7 @@ void TextCtrl::BUILD() {
 
 	temp->SetToolTip(get_tooltip_text(text_value));
 
-    if (style == wxTE_PROCESS_ENTER) {
+    if (style & wxTE_PROCESS_ENTER) {
         temp->Bind(wxEVT_TEXT_ENTER, ([this, temp](wxEvent& e)
         {
 #if !defined(__WXGTK__)
diff --git a/src/slic3r/GUI/MsgDialog.cpp b/src/slic3r/GUI/MsgDialog.cpp
index 4e8005242..92b31cc52 100644
--- a/src/slic3r/GUI/MsgDialog.cpp
+++ b/src/slic3r/GUI/MsgDialog.cpp
@@ -127,7 +127,7 @@ static void add_msg_content(wxWindow* parent, wxBoxSizer* content_sizer, wxStrin
     else {
         wxClientDC dc(parent);
         wxSize msg_sz = dc.GetMultiLineTextExtent(msg);
-        page_size = wxSize(std::min(msg_sz.GetX() + em,     68 * em),
+        page_size = wxSize(std::min(msg_sz.GetX() + 2 * em, 68 * em),
                            std::min(msg_sz.GetY() + 2 * em, 68 * em));
     }
     html->SetMinSize(page_size);