diff --git a/docs/changes.txt b/docs/changes.txt index cbe500083a..82c9a27314 100644 --- a/docs/changes.txt +++ b/docs/changes.txt @@ -192,3 +192,4 @@ wxOSX/Cocoa: events (Igor Korot). - Implement strike-through support in wxFont (Igor Korot). - Provide native implementation of wxStandardPaths (Tobias Taschner). +- Add wxTE_{RIGHT,CENTER} support for multiline wxTextCtrl (Andreas Falkenhahn). diff --git a/include/wx/osx/cocoa/private/textimpl.h b/include/wx/osx/cocoa/private/textimpl.h index 53e4b9bad4..e377c7027c 100644 --- a/include/wx/osx/cocoa/private/textimpl.h +++ b/include/wx/osx/cocoa/private/textimpl.h @@ -62,7 +62,7 @@ private: class wxNSTextViewControl : public wxWidgetCocoaImpl, public wxTextWidgetImpl { public: - wxNSTextViewControl( wxTextCtrl *wxPeer, WXWidget w ); + wxNSTextViewControl( wxTextCtrl *wxPeer, WXWidget w, long style ); virtual ~wxNSTextViewControl(); virtual void insertText(NSString* text, WXWidget slf, void *_cmd); diff --git a/src/osx/cocoa/textctrl.mm b/src/osx/cocoa/textctrl.mm index a9fed0b0a1..c3d72e96d1 100644 --- a/src/osx/cocoa/textctrl.mm +++ b/src/osx/cocoa/textctrl.mm @@ -561,7 +561,7 @@ NSView* wxMacEditHelper::ms_viewCurrentlyEdited = nil; // wxNSTextViewControl -wxNSTextViewControl::wxNSTextViewControl( wxTextCtrl *wxPeer, WXWidget w ) +wxNSTextViewControl::wxNSTextViewControl( wxTextCtrl *wxPeer, WXWidget w, long style ) : wxWidgetCocoaImpl(wxPeer, w), wxTextWidgetImpl(wxPeer) { @@ -581,6 +581,15 @@ wxNSTextViewControl::wxNSTextViewControl( wxTextCtrl *wxPeer, WXWidget w ) [tv setHorizontallyResizable:NO]; [tv setAutoresizingMask:NSViewWidthSizable]; + if ( style & wxTE_RIGHT) + { + [tv setAlignment:NSRightTextAlignment]; + } + else if ( style & wxTE_CENTRE) + { + [tv setAlignment:NSCenterTextAlignment]; + } + if ( !wxPeer->HasFlag(wxTE_RICH | wxTE_RICH2) ) { [tv setRichText:NO]; @@ -1064,7 +1073,7 @@ wxWidgetImplType* wxWidgetImpl::CreateTextControl( wxTextCtrl* wxpeer, { wxNSTextScrollView* v = nil; v = [[wxNSTextScrollView alloc] initWithFrame:r]; - c = new wxNSTextViewControl( wxpeer, v ); + c = new wxNSTextViewControl( wxpeer, v, style ); c->SetNeedsFocusRect( true ); } else