diff --git a/include/wx/qt/window.h b/include/wx/qt/window.h index a44d3fe111..e51254574a 100644 --- a/include/wx/qt/window.h +++ b/include/wx/qt/window.h @@ -112,6 +112,8 @@ public: virtual int GetScrollThumb( int orient ) const override; virtual int GetScrollRange( int orient ) const override; + virtual wxSize GetWindowBorderSize() const override; + // scroll window to the specified position virtual void ScrollWindow( int dx, int dy, const wxRect* rect = nullptr ) override; diff --git a/src/qt/window.cpp b/src/qt/window.cpp index eed343f218..8765f3b92c 100644 --- a/src/qt/window.cpp +++ b/src/qt/window.cpp @@ -959,6 +959,30 @@ void wxWindowQt::SetWindowStyleFlag( long style ) GetHandle()->setWindowFlags( qtFlags ); } +wxSize wxWindowQt::GetWindowBorderSize() const +{ + wxCoord border; + switch ( GetBorder() ) + { + case wxBORDER_STATIC: + case wxBORDER_SIMPLE: + case wxBORDER_SUNKEN: + case wxBORDER_RAISED: + case wxBORDER_THEME: + border = 1; + break; + + default: + wxFAIL_MSG( wxT("unknown border style") ); + wxFALLTHROUGH; + + case wxBORDER_NONE: + border = 0; + } + + return 2 * wxSize(border, border); +} + void wxWindowQt::SetExtraStyle( long exStyle ) { long exStyleOld = GetExtraStyle();