Fix of Settings scaling when they are placed in non-modal Dialog
This commit is contained in:
parent
0f0c9a0726
commit
c49221c621
4 changed files with 19 additions and 4 deletions
|
@ -218,7 +218,7 @@ private:
|
|||
void rescale(const wxRect &suggested_rect)
|
||||
{
|
||||
this->Freeze();
|
||||
|
||||
/*
|
||||
#if wxVERSION_EQUAL_OR_GREATER_THAN(3,1,3)
|
||||
if (m_force_rescale) {
|
||||
#endif // wxVERSION_EQUAL_OR_GREATER_THAN
|
||||
|
@ -230,6 +230,13 @@ private:
|
|||
m_force_rescale = false;
|
||||
}
|
||||
#endif // wxVERSION_EQUAL_OR_GREATER_THAN
|
||||
*/
|
||||
#if !wxVERSION_EQUAL_OR_GREATER_THAN(3,1,3)
|
||||
// rescale fonts of all controls
|
||||
scale_controls_fonts(this, m_new_font_point_size);
|
||||
// rescale current window font
|
||||
scale_win_font(this, m_new_font_point_size);
|
||||
#endif // wxVERSION_EQUAL_OR_GREATER_THAN
|
||||
|
||||
// set normal application font as a current window font
|
||||
m_normal_font = this->GetFont();
|
||||
|
|
|
@ -787,9 +787,10 @@ void MainFrame::on_dpi_changed(const wxRect& suggested_rect)
|
|||
this->SetSize(sz);
|
||||
|
||||
this->Maximize(is_maximized);
|
||||
|
||||
/*
|
||||
if (m_layout == ESettingsLayout::Dlg)
|
||||
rescale_dialog_after_dpi_change(*this, m_settings_dialog, ERescaleTarget::SettingsDialog);
|
||||
*/
|
||||
}
|
||||
|
||||
void MainFrame::on_sys_color_changed()
|
||||
|
@ -1988,7 +1989,14 @@ SettingsDialog::SettingsDialog(MainFrame* mainframe)
|
|||
wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER | wxMINIMIZE_BOX | wxMAXIMIZE_BOX, "settings_dialog"),
|
||||
m_main_frame(mainframe)
|
||||
{
|
||||
#if ENABLE_WX_3_1_3_DPI_CHANGED_EVENT && defined(__WXMSW__)
|
||||
// ys_FIXME! temporary workaround for correct font scaling
|
||||
// Because of from wxWidgets 3.1.3 auto rescaling is implemented for the Fonts,
|
||||
// From the very beginning set dialog font to the wxSYS_DEFAULT_GUI_FONT
|
||||
this->SetFont(wxSystemSettings::GetFont(wxSYS_DEFAULT_GUI_FONT));
|
||||
#else
|
||||
this->SetFont(wxGetApp().normal_font());
|
||||
#endif // ENABLE_WX_3_1_3_DPI_CHANGED_EVENT
|
||||
this->SetBackgroundColour(wxSystemSettings::GetColour(wxSYS_COLOUR_WINDOW));
|
||||
|
||||
|
||||
|
|
|
@ -1194,7 +1194,7 @@ SavePresetDialog::~SavePresetDialog()
|
|||
void SavePresetDialog::build(std::vector<Preset::Type> types, std::string suffix)
|
||||
{
|
||||
SetBackgroundColour(wxSystemSettings::GetColour(wxSYS_COLOUR_WINDOW));
|
||||
#if ENABLE_WX_3_1_3_DPI_CHANGED_EVENT
|
||||
#if ENABLE_WX_3_1_3_DPI_CHANGED_EVENT && defined(__WXMSW__)
|
||||
// ys_FIXME! temporary workaround for correct font scaling
|
||||
// Because of from wxWidgets 3.1.3 auto rescaling is implemented for the Fonts,
|
||||
// From the very beginning set dialog font to the wxSYS_DEFAULT_GUI_FONT
|
||||
|
|
|
@ -102,7 +102,7 @@ Tab::Tab(wxNotebook* parent, const wxString& title, Preset::Type type) :
|
|||
|
||||
wxGetApp().tabs_list.push_back(this);
|
||||
|
||||
m_em_unit = wxGetApp().em_unit();
|
||||
m_em_unit = em_unit(m_parent); //wxGetApp().em_unit();
|
||||
|
||||
m_config_manipulation = get_config_manipulation();
|
||||
|
||||
|
|
Loading…
Reference in a new issue