// controller
//
-@interface wxNonOwnedWindowController : NSObject
+@interface wxNonOwnedWindowController : NSObject wxOSX_10_6_AND_LATER(<NSWindowDelegate>)
{
}
[m_macWindow release];
}
-void wxNonOwnedWindowCocoaImpl::Destroy()
+void wxNonOwnedWindowCocoaImpl::WillBeDestroyed()
{
- wxPendingDelete.Append( new wxDeferredObjectDeleter( this ) );
+ [m_macWindow setDelegate:nil];
}
void wxNonOwnedWindowCocoaImpl::Create( wxWindow* WXUNUSED(parent), const wxPoint& pos, const wxSize& size,
return true;
}
-void wxNonOwnedWindowCocoaImpl::RequestUserAttention(int WXUNUSED(flags))
+void wxNonOwnedWindowCocoaImpl::RequestUserAttention(int flagsWX)
{
+ int flagsOSX;
+ switch ( flagsWX )
+ {
+ case wxUSER_ATTENTION_INFO:
+ flagsOSX = NSInformationalRequest;
+ break;
+
+ case wxUSER_ATTENTION_ERROR:
+ flagsOSX = NSCriticalRequest;
+ break;
+
+ default:
+ wxFAIL_MSG( "invalid RequestUserAttention() flags" );
+ return;
+ }
+
+ [NSApp requestUserAttention:flagsOSX];
}
void wxNonOwnedWindowCocoaImpl::ScreenToWindow( int *x, int *y )
return [m_macWindow isKeyWindow];
}
+void wxNonOwnedWindowCocoaImpl::SetModified(bool modified)
+{
+ [m_macWindow setDocumentEdited:modified];
+}
+
+bool wxNonOwnedWindowCocoaImpl::IsModified() const
+{
+ return [m_macWindow isDocumentEdited];
+}
+
wxNonOwnedWindowImpl* wxNonOwnedWindowImpl::CreateNonOwnedWindow( wxNonOwnedWindow* wxpeer, wxWindow* parent, const wxPoint& pos, const wxSize& size,
long style, long extraStyle, const wxString& name )
{