Use DPI Aware wxGetSystemMetrics

If no wxWindow is known, use wxTheApp->GetTopWindow().
Also use a wxWindow for all wxSystemSettings::GetMetric calls.
This commit is contained in:
Maarten Bent
2018-07-22 14:16:51 +02:00
parent 04b99d54bd
commit f74d756ca5
37 changed files with 106 additions and 87 deletions

View File

@@ -647,7 +647,7 @@ void wxPropertyGridManager::SetId( wxWindowID winid )
wxSize wxPropertyGridManager::DoGetBestSize() const
{
// Width: margin=15 + columns=2*40 + scroll bar
return wxSize(15+2*40+wxSystemSettings::GetMetric(wxSYS_VSCROLL_X), 150);
return wxSize(15+2*40+wxSystemSettings::GetMetric(wxSYS_VSCROLL_X, m_pPropGrid), 150);
}
// -----------------------------------------------------------------------

View File

@@ -1711,8 +1711,8 @@ wxPoint wxPropertyGrid::GetGoodEditorDialogPosition( wxPGProperty* p,
ImprovedClientToScreen( &x, &y );
int sw = wxSystemSettings::GetMetric( ::wxSYS_SCREEN_X );
int sh = wxSystemSettings::GetMetric( ::wxSYS_SCREEN_Y );
int sw = wxSystemSettings::GetMetric( ::wxSYS_SCREEN_X, this );
int sh = wxSystemSettings::GetMetric( ::wxSYS_SCREEN_Y, this );
int new_x;
int new_y;