X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/8e88e9846a39813e6a36a66e0a9cf09148d85a16..aa3fcb2f830f50218a6003710b959eb33d3b7088:/include/wx/osx/nonownedwnd.h diff --git a/include/wx/osx/nonownedwnd.h b/include/wx/osx/nonownedwnd.h index 61caeb7d00..200a354682 100644 --- a/include/wx/osx/nonownedwnd.h +++ b/include/wx/osx/nonownedwnd.h @@ -1,8 +1,8 @@ /////////////////////////////////////////////////////////////////////////////// -// Name: wx/mac/nonownedwnd.h +// Name: wx/osx/nonownedwnd.h // Purpose: declares wxNonOwnedWindow class // Author: Stefan Csomor -// Modified by: +// Modified by: // Created: 2008-03-24 // RCS-ID: $Id: nonownedwnd.h 46993 2007-06-28 08:46:04Z VS $ // Copyright: (c) 2008 Stefan Csomor @@ -15,7 +15,7 @@ #include "wx/window.h" #if wxUSE_SYSTEM_OPTIONS - #define wxMAC_WINDOW_PLAIN_TRANSITION _T("mac.window-plain-transition") + #define wxMAC_WINDOW_PLAIN_TRANSITION wxT("mac.window-plain-transition") #endif //----------------------------------------------------------------------------- @@ -55,8 +55,13 @@ public: long style = 0, const wxString& name = wxPanelNameStr); + bool Create(wxWindow *parent, WXWindow nativeWindow); + virtual ~wxNonOwnedWindow(); + virtual void SubclassWin(WXWindow nativeWindow); + virtual void UnsubclassWin(); + virtual wxPoint GetClientAreaOrigin() const; // implement base class pure virtuals @@ -65,7 +70,7 @@ public: virtual bool CanSetTransparent(); virtual bool SetBackgroundStyle(wxBackgroundStyle style); - + virtual void Update(); WXWindow GetWXWindow() const ; @@ -75,35 +80,38 @@ public: // -------------------------- virtual bool DoSetShape(const wxRegion& region); + const wxRegion& GetShape() const { return m_shape; } // activation hooks only necessary for MDI Implementation static void MacDelayedDeactivation(long timestamp); virtual void MacActivate( long timestamp , bool inIsActivating ) ; + virtual void SetWindowStyleFlag(long flags); virtual void Raise(); virtual void Lower(); virtual bool Show( bool show = true ); - virtual bool ShowWithEffect(wxShowEffect effect, - unsigned timeout = 0) ; - - virtual bool HideWithEffect(wxShowEffect effect, - unsigned timeout = 0) ; - virtual void SetExtraStyle(long exStyle) ; virtual bool SetBackgroundColour( const wxColour &colour ); - + wxNonOwnedWindowImpl* GetNonOwnedPeer() const { return m_nowpeer; } - + +#if wxOSX_USE_COCOA_OR_IPHONE + // override the base class method to return an NSWindow instead of NSView + virtual void *OSXGetViewOrWindow() const { return GetWXWindow(); } +#endif // Cocoa + // osx specific event handling common for all osx-ports - + virtual void HandleActivated( double timestampsec, bool didActivate ); virtual void HandleResized( double timestampsec ); virtual void HandleMoved( double timestampsec ); virtual void HandleResizing( double timestampsec, wxRect* rect ); - + + virtual bool Destroy(); + protected: // common part of all ctors void Init(); @@ -113,12 +121,20 @@ protected: virtual void DoMoveWindow(int x, int y, int width, int height); virtual void DoGetClientSize(int *width, int *height) const; + virtual bool OSXShowWithEffect(bool show, + wxShowEffect effect, + unsigned timeout); + + virtual void WillBeDestroyed(); + wxNonOwnedWindowImpl* m_nowpeer ; // wxWindowMac* m_macFocus ; static wxNonOwnedWindow *s_macDeactivateWindow; + private : + wxRegion m_shape; }; // list of all frames and modeless dialogs