From 57c6c3d79753ac6aa189aedf1886bfaecd42c65c Mon Sep 17 00:00:00 2001 From: "liz.li" Date: Fri, 22 Jul 2022 12:35:33 +0800 Subject: [PATCH] ENH:add character checking when connect printer by LAN Change-Id: Iacaeb26736f00b7b00f42c16a7b0c28a2d8dfe02 --- src/slic3r/GUI/ConnectPrinter.cpp | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/slic3r/GUI/ConnectPrinter.cpp b/src/slic3r/GUI/ConnectPrinter.cpp index 0e06b6ed35..fcd8df8220 100644 --- a/src/slic3r/GUI/ConnectPrinter.cpp +++ b/src/slic3r/GUI/ConnectPrinter.cpp @@ -33,6 +33,7 @@ ConnectPrinterDialog::ConnectPrinterDialog(wxWindow *parent, wxWindowID id, cons sizer_connect = new wxBoxSizer(wxHORIZONTAL); m_textCtrl_code = new TextInput(this, wxEmptyString); + m_textCtrl_code->GetTextCtrl()->SetMaxLength(10); m_textCtrl_code->SetFont(Label::Body_14); m_textCtrl_code->SetCornerRadius(FromDIP(5)); m_textCtrl_code->SetSize(wxSize(FromDIP(330), FromDIP(40))); @@ -132,6 +133,12 @@ void ConnectPrinterDialog::on_input_enter(wxCommandEvent& evt) void ConnectPrinterDialog::on_button_confirm(wxCommandEvent &event) { wxString code = m_textCtrl_code->GetTextCtrl()->GetValue(); + for (char c : code) { + if (!('0' <= c && c <= '9' || 'a' <= c && c <= 'z' || 'A' <= c && c <= 'Z')) { + show_error(this, _L("Invalid input.")); + return; + } + } if (m_obj) { m_obj->set_access_code(code.ToStdString()); }