diff options
author | YuSanka <yusanka@gmail.com> | 2019-02-11 16:14:35 +0300 |
---|---|---|
committer | YuSanka <yusanka@gmail.com> | 2019-02-11 16:14:35 +0300 |
commit | f899cf1c91031cb80884274c9ef1394576bc658f (patch) | |
tree | 30f8239c7b31a0822b6fe5dce0ac8f38213f5cd3 /src | |
parent | 2e14f3456e36db3c36ee52dcf00bd22b88ea310b (diff) |
Added scaling for more some dialogs
+ Set size for mode buttons
Diffstat (limited to 'src')
-rw-r--r-- | src/slic3r/GUI/AboutDialog.cpp | 15 | ||||
-rw-r--r-- | src/slic3r/GUI/GUI_ObjectManipulation.cpp | 5 | ||||
-rw-r--r-- | src/slic3r/GUI/KBShortcutsDialog.cpp | 4 | ||||
-rw-r--r-- | src/slic3r/GUI/MsgDialog.cpp | 16 | ||||
-rw-r--r-- | src/slic3r/GUI/MsgDialog.hpp | 4 | ||||
-rw-r--r-- | src/slic3r/GUI/Preferences.cpp | 2 | ||||
-rw-r--r-- | src/slic3r/GUI/SysInfoDialog.cpp | 6 | ||||
-rw-r--r-- | src/slic3r/GUI/wxExtensions.cpp | 30 | ||||
-rw-r--r-- | src/slic3r/GUI/wxExtensions.hpp | 4 |
9 files changed, 46 insertions, 40 deletions
diff --git a/src/slic3r/GUI/AboutDialog.cpp b/src/slic3r/GUI/AboutDialog.cpp index a800ea832..fb57cfeb9 100644 --- a/src/slic3r/GUI/AboutDialog.cpp +++ b/src/slic3r/GUI/AboutDialog.cpp @@ -3,6 +3,7 @@ #include "libslic3r/Utils.hpp" #include "GUI_App.hpp" +#include "wxExtensions.hpp" namespace Slic3r { namespace GUI { @@ -41,17 +42,13 @@ AboutDialog::AboutDialog() main_sizer->Add(hsizer, 0, wxEXPAND | wxALL, 20); // logo - wxBitmap logo_bmp = wxBitmap(from_u8(Slic3r::var("Slic3r_192px.png")), wxBITMAP_TYPE_PNG); - auto *logo = new wxStaticBitmap(this, wxID_ANY, std::move(logo_bmp)); +// wxBitmap logo_bmp = wxBitmap(from_u8(Slic3r::var("Slic3r_192px.png")), wxBITMAP_TYPE_PNG); +// auto *logo = new wxStaticBitmap(this, wxID_ANY, std::move(logo_bmp)); + auto *logo = new wxStaticBitmap(this, wxID_ANY, create_scaled_bitmap("Slic3r_192px.png")); hsizer->Add(logo, 1, wxALIGN_CENTER_VERTICAL); - wxBoxSizer* vsizer = new wxBoxSizer(wxVERTICAL); -// #ifdef __WXMSW__ -// int proportion = 2; -// #else - int proportion = 3; -// #endif - hsizer->Add(vsizer, proportion, wxEXPAND|wxLEFT, 20); + wxBoxSizer* vsizer = new wxBoxSizer(wxVERTICAL); + hsizer->Add(vsizer, 2, wxEXPAND|wxLEFT, 20); // title { diff --git a/src/slic3r/GUI/GUI_ObjectManipulation.cpp b/src/slic3r/GUI/GUI_ObjectManipulation.cpp index 1ec961b3e..0b173ab78 100644 --- a/src/slic3r/GUI/GUI_ObjectManipulation.cpp +++ b/src/slic3r/GUI/GUI_ObjectManipulation.cpp @@ -97,8 +97,9 @@ ObjectManipulation::ObjectManipulation(wxWindow* parent) : // Add empty bmp (Its size have to be equal to PrusaLockButton) in front of "Size" option to label alignment else if (option_name == "Size") { line.near_label_widget = [this](wxWindow* parent) { - return new wxStaticBitmap(parent, wxID_ANY, wxNullBitmap, wxDefaultPosition, - wxBitmap(from_u8(var("one_layer_lock_on.png")), wxBITMAP_TYPE_PNG).GetSize()); + return new wxStaticBitmap(parent, wxID_ANY, wxNullBitmap, wxDefaultPosition, +// wxBitmap(from_u8(var("one_layer_lock_on.png")), wxBITMAP_TYPE_PNG).GetSize()); + create_scaled_bitmap("one_layer_lock_on.png").GetSize()); }; } diff --git a/src/slic3r/GUI/KBShortcutsDialog.cpp b/src/slic3r/GUI/KBShortcutsDialog.cpp index 60a32fbc5..66e9deec8 100644 --- a/src/slic3r/GUI/KBShortcutsDialog.cpp +++ b/src/slic3r/GUI/KBShortcutsDialog.cpp @@ -4,6 +4,7 @@ #include "GUI.hpp" #include <wx/scrolwin.h> #include "GUI_App.hpp" +#include "wxExtensions.hpp" namespace Slic3r { namespace GUI { @@ -16,7 +17,8 @@ KBShortcutsDialog::KBShortcutsDialog() auto main_sizer = new wxBoxSizer(wxVERTICAL); // logo - wxBitmap logo_bmp = wxBitmap(from_u8(Slic3r::var("Slic3r_32px.png")), wxBITMAP_TYPE_PNG); +// wxBitmap logo_bmp = wxBitmap(from_u8(Slic3r::var("Slic3r_32px.png")), wxBITMAP_TYPE_PNG); + const wxBitmap logo_bmp = create_scaled_bitmap("Slic3r_32px.png"); // fonts wxFont head_font = wxSystemSettings::GetFont(wxSYS_DEFAULT_GUI_FONT).Bold(); diff --git a/src/slic3r/GUI/MsgDialog.cpp b/src/slic3r/GUI/MsgDialog.cpp index d6b8b438e..950dd642f 100644 --- a/src/slic3r/GUI/MsgDialog.cpp +++ b/src/slic3r/GUI/MsgDialog.cpp @@ -13,13 +13,16 @@ #include "GUI.hpp" #include "I18N.hpp" #include "ConfigWizard.hpp" +#include "wxExtensions.hpp" +#include "GUI_App.hpp" namespace Slic3r { namespace GUI { MsgDialog::MsgDialog(wxWindow *parent, const wxString &title, const wxString &headline, wxWindowID button_id) : - MsgDialog(parent, title, headline, wxBitmap(from_u8(Slic3r::var("Slic3r_192px.png")), wxBITMAP_TYPE_PNG), button_id) +// MsgDialog(parent, title, headline, wxBitmap(from_u8(Slic3r::var("Slic3r_192px.png")), wxBITMAP_TYPE_PNG), button_id) + MsgDialog(parent, title, headline, create_scaled_bitmap("Slic3r_192px.png"), button_id) {} MsgDialog::MsgDialog(wxWindow *parent, const wxString &title, const wxString &headline, wxBitmap bitmap, wxWindowID button_id) : @@ -35,7 +38,7 @@ MsgDialog::MsgDialog(wxWindow *parent, const wxString &title, const wxString &he auto *headtext = new wxStaticText(this, wxID_ANY, headline); headtext->SetFont(boldfont); - headtext->Wrap(CONTENT_WIDTH); + headtext->Wrap(CONTENT_WIDTH*wxGetApp().em_unit()); rightsizer->Add(headtext); rightsizer->AddSpacer(VERT_SPACING); @@ -64,7 +67,8 @@ MsgDialog::~MsgDialog() {} ErrorDialog::ErrorDialog(wxWindow *parent, const wxString &msg) : MsgDialog(parent, _(L("Slic3r error")), _(L("Slic3r has encountered an error")), - wxBitmap(from_u8(Slic3r::var("Slic3r_192px_grayscale.png")), wxBITMAP_TYPE_PNG), +// wxBitmap(from_u8(Slic3r::var("Slic3r_192px_grayscale.png")), wxBITMAP_TYPE_PNG), + create_scaled_bitmap("Slic3r_192px_grayscale.png"), wxID_NONE) , msg(msg) { @@ -73,10 +77,10 @@ ErrorDialog::ErrorDialog(wxWindow *parent, const wxString &msg) panel->SetSizer(p_sizer); auto *text = new wxStaticText(panel, wxID_ANY, msg); - text->Wrap(CONTENT_WIDTH); + text->Wrap(CONTENT_WIDTH*wxGetApp().em_unit()); p_sizer->Add(text, 1, wxEXPAND); - panel->SetMinSize(wxSize(CONTENT_WIDTH, 0)); + panel->SetMinSize(wxSize(CONTENT_WIDTH*wxGetApp().em_unit(), 0)); panel->SetScrollRate(0, 5); content_sizer->Add(panel, 1, wxEXPAND); @@ -95,7 +99,7 @@ ErrorDialog::ErrorDialog(wxWindow *parent, const wxString &msg) btn_sizer->Add(btn_copy, 0, wxRIGHT, HORIZ_SPACING); btn_sizer->Add(btn_ok); - SetMaxSize(wxSize(-1, CONTENT_MAX_HEIGHT)); + SetMaxSize(wxSize(-1, CONTENT_MAX_HEIGHT*wxGetApp().em_unit())); Fit(); } diff --git a/src/slic3r/GUI/MsgDialog.hpp b/src/slic3r/GUI/MsgDialog.hpp index 6064d2a9f..a5af6afe2 100644 --- a/src/slic3r/GUI/MsgDialog.hpp +++ b/src/slic3r/GUI/MsgDialog.hpp @@ -32,8 +32,8 @@ struct MsgDialog : wxDialog protected: enum { - CONTENT_WIDTH = 500, - CONTENT_MAX_HEIGHT = 600, + CONTENT_WIDTH = 50,//500, + CONTENT_MAX_HEIGHT = 60,//600, BORDER = 30, VERT_SPACING = 15, HORIZ_SPACING = 5, diff --git a/src/slic3r/GUI/Preferences.cpp b/src/slic3r/GUI/Preferences.cpp index b58ce5900..5ce65b669 100644 --- a/src/slic3r/GUI/Preferences.cpp +++ b/src/slic3r/GUI/Preferences.cpp @@ -15,7 +15,7 @@ void PreferencesDialog::build() { auto app_config = get_app_config(); m_optgroup = std::make_shared<ConfigOptionsGroup>(this, _(L("General"))); - m_optgroup->label_width = 400; + m_optgroup->label_width = 40 * wxGetApp().em_unit(); //400; m_optgroup->m_on_change = [this](t_config_option_key opt_key, boost::any value){ m_values[opt_key] = boost::any_cast<bool>(value) ? "1" : "0"; }; diff --git a/src/slic3r/GUI/SysInfoDialog.cpp b/src/slic3r/GUI/SysInfoDialog.cpp index 1c449c4cd..9c692a989 100644 --- a/src/slic3r/GUI/SysInfoDialog.cpp +++ b/src/slic3r/GUI/SysInfoDialog.cpp @@ -6,6 +6,7 @@ #include <wx/clipbrd.h> #include <wx/platinfo.h> #include "GUI_App.hpp" +#include "wxExtensions.hpp" namespace Slic3r { namespace GUI { @@ -49,8 +50,9 @@ SysInfoDialog::SysInfoDialog() main_sizer->Add(hsizer, 1, wxEXPAND | wxALL, 10); // logo - wxBitmap logo_bmp = wxBitmap(from_u8(Slic3r::var("Slic3r_192px.png")), wxBITMAP_TYPE_PNG); - auto *logo = new wxStaticBitmap(this, wxID_ANY, std::move(logo_bmp)); +// wxBitmap logo_bmp = wxBitmap(from_u8(Slic3r::var("Slic3r_192px.png")), wxBITMAP_TYPE_PNG); +// auto *logo = new wxStaticBitmap(this, wxID_ANY, std::move(logo_bmp)); + auto *logo = new wxStaticBitmap(this, wxID_ANY, create_scaled_bitmap("Slic3r_192px.png")); hsizer->Add(logo, 0, wxALIGN_CENTER_VERTICAL); wxBoxSizer* vsizer = new wxBoxSizer(wxVERTICAL); diff --git a/src/slic3r/GUI/wxExtensions.cpp b/src/slic3r/GUI/wxExtensions.cpp index 06c283b6a..89f7945b6 100644 --- a/src/slic3r/GUI/wxExtensions.cpp +++ b/src/slic3r/GUI/wxExtensions.cpp @@ -13,6 +13,7 @@ #include "GUI_App.hpp" #include "GUI_ObjectList.hpp" #include "libslic3r/GCode/PreviewData.hpp" +#include "I18N.hpp" using Slic3r::GUI::from_u8; @@ -2340,9 +2341,9 @@ PrusaModeButton::PrusaModeButton( wxWindow *parent, wxWindowID id, const wxString& mode/* = wxEmptyString*/, const wxBitmap& bmp_on/* = wxNullBitmap*/, - const wxPoint& pos/* = wxDefaultPosition*/, - const wxSize& size/* = wxDefaultSize*/) : - wxButton(parent, id, mode, pos, size, wxBU_EXACTFIT | wxNO_BORDER), + const wxSize& size/* = wxDefaultSize*/, + const wxPoint& pos/* = wxDefaultPosition*/) : + wxButton(parent, id, mode, pos, size, /*wxBU_EXACTFIT | */wxNO_BORDER), m_bmp_on(bmp_on) { #ifdef __WXMSW__ @@ -2394,20 +2395,19 @@ PrusaModeSizer::PrusaModeSizer(wxWindow *parent) : { SetFlexibleDirection(wxHORIZONTAL); -// const wxBitmap bmp_simple_on = wxBitmap(Slic3r::GUI::from_u8(Slic3r::var("mode_simple_sq.png")), wxBITMAP_TYPE_PNG); -// const wxBitmap bmp_advanced_on = wxBitmap(Slic3r::GUI::from_u8(Slic3r::var("mode_middle_sq.png")), wxBITMAP_TYPE_PNG); -// const wxBitmap bmp_expert_on = wxBitmap(Slic3r::GUI::from_u8(Slic3r::var("mode_expert_sq.png")), wxBITMAP_TYPE_PNG); + std::vector<std::pair<wxString, wxBitmap>> buttons = { + {_(L("Simple")), create_scaled_bitmap("mode_simple_sq.png")}, + {_(L("Advanced")), create_scaled_bitmap("mode_middle_sq.png")}, + {_(L("Expert")), create_scaled_bitmap("mode_expert_sq.png")} + }; - const wxBitmap bmp_simple_on = create_scaled_bitmap("mode_simple_sq.png"); - const wxBitmap bmp_advanced_on = create_scaled_bitmap("mode_middle_sq.png"); - const wxBitmap bmp_expert_on = create_scaled_bitmap("mode_expert_sq.png"); - - mode_btns.reserve(3); - - mode_btns.push_back(new PrusaModeButton(parent, wxID_ANY, "Simple", bmp_simple_on)); - mode_btns.push_back(new PrusaModeButton(parent, wxID_ANY, "Advanced", bmp_advanced_on)); - mode_btns.push_back(new PrusaModeButton(parent, wxID_ANY, "Expert", bmp_expert_on)); + for (const auto& button : buttons) { + int x, y; + parent->GetTextExtent(button.first, &x, &y, nullptr, nullptr, &Slic3r::GUI::wxGetApp().bold_font()); + const wxSize size = wxSize(x + button.second.GetWidth() + Slic3r::GUI::wxGetApp().em_unit(), y); + mode_btns.push_back(new PrusaModeButton(parent, wxID_ANY, button.first, button.second, size)); + } for (auto btn : mode_btns) { diff --git a/src/slic3r/GUI/wxExtensions.hpp b/src/slic3r/GUI/wxExtensions.hpp index 486f13515..1fb314026 100644 --- a/src/slic3r/GUI/wxExtensions.hpp +++ b/src/slic3r/GUI/wxExtensions.hpp @@ -884,8 +884,8 @@ public: wxWindowID id, const wxString& mode = wxEmptyString, const wxBitmap& bmp_on = wxNullBitmap, - const wxPoint& pos = wxDefaultPosition, - const wxSize& size = wxDefaultSize); + const wxSize& size = wxDefaultSize, + const wxPoint& pos = wxDefaultPosition); ~PrusaModeButton() {} void OnButton(wxCommandEvent& event); |