From: Vadim Zeitlin Date: Wed, 7 Dec 2011 14:05:11 +0000 (+0000) Subject: Remove vertical wxTextCtrl adjustment hacks for wxMSW in wxComboCtrl code. X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/30e92ba333f0aa8b7d7f1c004ea20e4dab5c1f7a Remove vertical wxTextCtrl adjustment hacks for wxMSW in wxComboCtrl code. Because wxTextCtrl used to wrongly report its best size in wxNO_BORDER case under MSW, wxComboCtrl manually adjusted its position to work around this. However since r69066 wxTextCtrl::GetBestSize() was fixed and now these adjustments resulted in wrong vertical position for the control. Just remove all manual adjustments completely now to fix this. Closes #13722. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69942 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- diff --git a/include/wx/combo.h b/include/wx/combo.h index 4c7f0867b3..3806ca1a8a 100644 --- a/include/wx/combo.h +++ b/include/wx/combo.h @@ -560,7 +560,8 @@ protected: // Standard textctrl positioning routine. Just give it platform-dependant // textctrl coordinate adjustment. - virtual void PositionTextCtrl( int textCtrlXAdjust, int textCtrlYAdjust ); + virtual void PositionTextCtrl( int textCtrlXAdjust = 0, + int textCtrlYAdjust = 0); // event handlers void OnSizeEvent( wxSizeEvent& event ); diff --git a/src/generic/combog.cpp b/src/generic/combog.cpp index be0fa445ca..84eb95cd47 100644 --- a/src/generic/combog.cpp +++ b/src/generic/combog.cpp @@ -46,7 +46,6 @@ // meaningless if LEFT_MARGIN_CAN_BE_SET set to 1 in combocmn.cpp #define TEXTCTRLXADJUST 0 -#define TEXTCTRLYADJUST 0 #define TEXTXADJUST 0 // how much is read-only text's x adjusted #define DEFAULT_DROPBUTTON_WIDTH 19 @@ -56,7 +55,6 @@ // meaningless if LEFT_MARGIN_CAN_BE_SET set to 1 in combocmn.cpp #define TEXTCTRLXADJUST 2 -#define TEXTCTRLYADJUST 3 #define TEXTXADJUST 0 // how much is read-only text's x adjusted #define DEFAULT_DROPBUTTON_WIDTH 17 @@ -66,7 +64,6 @@ // meaningless if LEFT_MARGIN_CAN_BE_SET set to 1 in combocmn.cpp #define TEXTCTRLXADJUST -1 -#define TEXTCTRLYADJUST 0 #define TEXTXADJUST 1 // how much is read-only text's x adjusted #define DEFAULT_DROPBUTTON_WIDTH 23 @@ -76,7 +73,6 @@ // meaningless if LEFT_MARGIN_CAN_BE_SET set to 1 in combocmn.cpp #define TEXTCTRLXADJUST 0 -#define TEXTCTRLYADJUST 0 #define TEXTXADJUST 0 // how much is read-only text's x adjusted #define DEFAULT_DROPBUTTON_WIDTH 22 @@ -86,7 +82,6 @@ // meaningless if LEFT_MARGIN_CAN_BE_SET set to 1 in combocmn.cpp #define TEXTCTRLXADJUST 0 -#define TEXTCTRLYADJUST 0 #define TEXTXADJUST 0 // how much is read-only text's x adjusted #define DEFAULT_DROPBUTTON_WIDTH 19 @@ -235,7 +230,7 @@ void wxGenericComboCtrl::OnResize() #endif // Move textctrl, if any, accordingly - PositionTextCtrl( TEXTCTRLXADJUST, TEXTCTRLYADJUST ); + PositionTextCtrl( TEXTCTRLXADJUST ); } void wxGenericComboCtrl::OnPaintEvent( wxPaintEvent& WXUNUSED(event) ) diff --git a/src/msw/combo.cpp b/src/msw/combo.cpp index 1e59def4d8..12db6bf584 100644 --- a/src/msw/combo.cpp +++ b/src/msw/combo.cpp @@ -117,9 +117,6 @@ #define NATIVE_TEXT_INDENT_XP 4 #define NATIVE_TEXT_INDENT_CLASSIC 2 -#define TEXTCTRLYADJUST_XP 3 -#define TEXTCTRLYADJUST_CLASSIC 3 - #define COMBOBOX_ANIMATION_RESOLUTION 10 #define COMBOBOX_ANIMATION_DURATION 200 // In milliseconds @@ -229,26 +226,13 @@ void wxComboCtrl::OnResize() // // Recalculates button and textctrl areas - int textCtrlYAdjust; - -#if wxUSE_UXTHEME - if ( wxUxThemeEngine::GetIfActive() ) - { - textCtrlYAdjust = TEXTCTRLYADJUST_XP; - } - else -#endif - { - textCtrlYAdjust = TEXTCTRLYADJUST_CLASSIC; - } - // Technically Classic Windows style combo has more narrow button, // but the native renderer doesn't paint it well like that. int btnWidth = 17; CalculateAreas(btnWidth); // Position textctrl using standard routine - PositionTextCtrl(0, textCtrlYAdjust); + PositionTextCtrl(); } // Draws non-XP GUI dotted line around the focus area