changing text alignment dynamically doesn't always work under XP, recreate the control there too
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@44307 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -608,10 +608,12 @@ WXDWORD wxTextCtrl::MSWGetStyle(long style, WXDWORD *exstyle) const
|
|||||||
|
|
||||||
void wxTextCtrl::SetWindowStyleFlag(long style)
|
void wxTextCtrl::SetWindowStyleFlag(long style)
|
||||||
{
|
{
|
||||||
// changing the alignment of the control dynamically only works under XP
|
// changing the alignment of the control dynamically works under Win2003
|
||||||
// (but not older Windows version) and only for plain EDIT controls (not
|
// (but not older Windows version: it seems to work under some versions of
|
||||||
// RICH ones) and we have to recreate the control to make it always work
|
// XP but not other ones, and we have no way to determine it so be
|
||||||
if ( IsRich() || wxGetWinVersion() < wxWinVersion_XP )
|
// conservative here) and only for plain EDIT controls (not RICH ones) and
|
||||||
|
// we have to recreate the control to make it always work
|
||||||
|
if ( IsRich() || wxGetWinVersion() < wxWinVersion_2003 )
|
||||||
{
|
{
|
||||||
const long alignMask = wxTE_LEFT | wxTE_CENTRE | wxTE_RIGHT;
|
const long alignMask = wxTE_LEFT | wxTE_CENTRE | wxTE_RIGHT;
|
||||||
if ( (style & alignMask) != (GetWindowStyle() & alignMask) )
|
if ( (style & alignMask) != (GetWindowStyle() & alignMask) )
|
||||||
|
Reference in New Issue
Block a user