diff --git a/src/osx/cocoa/datetimectrl.mm b/src/osx/cocoa/datetimectrl.mm index 4fc0d3eb47..da9a3834ce 100644 --- a/src/osx/cocoa/datetimectrl.mm +++ b/src/osx/cocoa/datetimectrl.mm @@ -128,6 +128,26 @@ public: } } + virtual void Enable(bool enable = true) + { + wxNSDatePicker* const nsdatePicker = View(); + + [nsdatePicker setEnabled: enable]; + + if ( enable ) + { + wxWindow* const wxpeer = GetWXPeer(); + if ( wxpeer ) + [nsdatePicker setTextColor: wxpeer->GetForegroundColour().OSXGetNSColor()]; + else + [nsdatePicker setTextColor: [NSColor controlTextColor]]; + } + else + { + [nsdatePicker setTextColor: [NSColor disabledControlTextColor]]; + } + } + private: wxNSDatePicker* View() const { @@ -170,6 +190,9 @@ wxDateTimeWidgetImpl::CreateDateTimePicker(wxDateTimePickerCtrl* wxpeer, [v setDatePickerStyle: NSTextFieldAndStepperDatePickerStyle]; + // Avoid a disabled looking transparent background for the text cells. + [v setDrawsBackground: YES]; + if ( dt.IsValid() ) { [v setDateValue: NSDateFromWX(dt)];