diff --git a/src/slic3r/GUI/ConnectPrinter.cpp b/src/slic3r/GUI/ConnectPrinter.cpp index 6b6497f65..5a57ef1e2 100644 --- a/src/slic3r/GUI/ConnectPrinter.cpp +++ b/src/slic3r/GUI/ConnectPrinter.cpp @@ -8,7 +8,6 @@ namespace Slic3r { namespace GUI { ConnectPrinterDialog::ConnectPrinterDialog(wxWindow *parent, wxWindowID id, const wxString &title, const wxPoint &pos, const wxSize &size, long style) : DPIDialog(parent, id, _L("ConnectPrinter(LAN)"), pos, size, style) { - init_bitmap(); SetBackgroundColour(*wxWHITE); this->SetSizeHints(wxDefaultSize, wxDefaultSize); @@ -86,7 +85,7 @@ ConnectPrinterDialog::ConnectPrinterDialog(wxWindow *parent, wxWindowID id, cons wxBoxSizer *sizer_diagram; sizer_diagram = new wxBoxSizer(wxHORIZONTAL); - m_bitmap_diagram = new wxStaticBitmap(this, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize(FromDIP(340), FromDIP(190)), 0); + m_bitmap_diagram = new wxStaticBitmap(this, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxSize(FromDIP(340), -1), 0); m_bitmap_diagram->SetBitmap(m_diagram_img); sizer_diagram->Add(m_bitmap_diagram); @@ -138,12 +137,17 @@ void ConnectPrinterDialog::init_bitmap() } } m_diagram_img = m_diagram_bmp.ConvertToImage(); - m_diagram_img.Rescale(FromDIP(340), FromDIP(190)); + auto bmp_size = m_diagram_bmp.GetSize(); + float scale = (float)FromDIP(340) / (float)bmp_size.x; + m_diagram_img.Rescale(FromDIP(340), bmp_size.y * scale); + m_bitmap_diagram->SetBitmap(m_diagram_img); + Fit(); } void ConnectPrinterDialog::set_machine_object(MachineObject* obj) { m_obj = obj; + init_bitmap(); } void ConnectPrinterDialog::on_input_enter(wxCommandEvent& evt)