diff --git a/include/wx/stattext.h b/include/wx/stattext.h index 810a26167d..237f93620e 100644 --- a/include/wx/stattext.h +++ b/include/wx/stattext.h @@ -26,6 +26,9 @@ #define wxST_ELLIPSIZE_MIDDLE 0x0008 #define wxST_ELLIPSIZE_END 0x0010 +#define wxST_ELLIPSIZE_MASK \ + (wxST_ELLIPSIZE_START | wxST_ELLIPSIZE_MIDDLE | wxST_ELLIPSIZE_END) + extern WXDLLIMPEXP_DATA_CORE(const char) wxStaticTextNameStr[]; class WXDLLIMPEXP_CORE wxStaticTextBase : public wxControl @@ -44,9 +47,7 @@ public: bool IsEllipsized() const { - return HasFlag(wxST_ELLIPSIZE_START) || - HasFlag(wxST_ELLIPSIZE_MIDDLE) || - HasFlag(wxST_ELLIPSIZE_END); + return (GetWindowStyle() & wxST_ELLIPSIZE_MASK) != 0; } protected: // functions required for wxST_ELLIPSIZE_* support diff --git a/src/osx/cocoa/stattext.mm b/src/osx/cocoa/stattext.mm index 6a58c9e27b..9e51efa8b7 100644 --- a/src/osx/cocoa/stattext.mm +++ b/src/osx/cocoa/stattext.mm @@ -156,7 +156,7 @@ wxWidgetImplType* wxWidgetImpl::CreateStaticText( wxWindowMac* wxpeer, [v setBordered:NO]; NSLineBreakMode linebreak = NSLineBreakByClipping; - if ( ((wxStaticText*)wxpeer)->IsEllipsized() ) + if ( style & wxST_ELLIPSIZE_MASK ) { if ( style & wxST_ELLIPSIZE_MIDDLE ) linebreak = NSLineBreakByTruncatingMiddle; diff --git a/src/osx/iphone/stattext.mm b/src/osx/iphone/stattext.mm index b0994d0733..556d3e85c8 100644 --- a/src/osx/iphone/stattext.mm +++ b/src/osx/iphone/stattext.mm @@ -81,7 +81,7 @@ wxWidgetImplType* wxWidgetImpl::CreateStaticText( wxWindowMac* wxpeer, v.backgroundColor = [UIColor clearColor]; UILineBreakMode linebreak = UILineBreakModeWordWrap; - if ( ((wxStaticText*)wxpeer)->IsEllipsized() ) + if ( style & wxST_ELLIPSIZE_MASK ) { if ( style & wxST_ELLIPSIZE_MIDDLE ) linebreak = UILineBreakModeMiddleTruncation;