| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130 | 
							- ///////////////////////////////////////////////////////////////////////////////
 
- // Name:        wx/cocoa/toplevel.h
 
- // Purpose:     wxTopLevelWindowCocoa is the Cocoa implementation of wxTLW
 
- // Author:      David Elliott
 
- // Modified by:
 
- // Created:     2002/12/08
 
- // Copyright:   (c) 2002 David Elliott
 
- // Licence:     wxWindows licence
 
- ///////////////////////////////////////////////////////////////////////////////
 
- #ifndef __WX_COCOA_TOPLEVEL_H__
 
- #define __WX_COCOA_TOPLEVEL_H__
 
- #include "wx/hashmap.h"
 
- #include "wx/cocoa/NSWindow.h"
 
- class WXDLLIMPEXP_FWD_CORE wxMenuBar;
 
- // ========================================================================
 
- // wxTopLevelWindowCocoa
 
- // ========================================================================
 
- class WXDLLIMPEXP_CORE wxTopLevelWindowCocoa : public wxTopLevelWindowBase, protected wxCocoaNSWindow
 
- {
 
-     DECLARE_EVENT_TABLE();
 
-     DECLARE_NO_COPY_CLASS(wxTopLevelWindowCocoa);
 
- // ------------------------------------------------------------------------
 
- // initialization
 
- // ------------------------------------------------------------------------
 
- public:
 
-     inline wxTopLevelWindowCocoa()
 
-     :   wxCocoaNSWindow(this)
 
-     {   Init(); }
 
-     inline wxTopLevelWindowCocoa(wxWindow *parent,
 
-                         wxWindowID winid,
 
-                         const wxString& title,
 
-                         const wxPoint& pos = wxDefaultPosition,
 
-                         const wxSize& size = wxDefaultSize,
 
-                         long style = wxDEFAULT_FRAME_STYLE,
 
-                         const wxString& name = wxFrameNameStr)
 
-     :   wxCocoaNSWindow(this)
 
-     {
 
-         Init();
 
-         Create(parent, winid, title, pos, size, style, name);
 
-     }
 
-     bool Create(wxWindow *parent,
 
-                 wxWindowID winid,
 
-                 const wxString& title,
 
-                 const wxPoint& pos = wxDefaultPosition,
 
-                 const wxSize& size = wxDefaultSize,
 
-                 long style = wxDEFAULT_FRAME_STYLE,
 
-                 const wxString& name = wxFrameNameStr);
 
-     virtual ~wxTopLevelWindowCocoa();
 
- protected:
 
-     // common part of all ctors
 
-     void Init();
 
- // ------------------------------------------------------------------------
 
- // Cocoa specifics
 
- // ------------------------------------------------------------------------
 
- public:
 
-     inline WX_NSWindow GetNSWindow() { return m_cocoaNSWindow; }
 
-     virtual void CocoaDelegate_windowWillClose(void);
 
-     virtual bool CocoaDelegate_windowShouldClose(void);
 
-     virtual void CocoaDelegate_windowDidBecomeKey(void);
 
-     virtual void CocoaDelegate_windowDidResignKey(void);
 
-     virtual void CocoaDelegate_windowDidBecomeMain(void);
 
-     virtual void CocoaDelegate_windowDidResignMain(void);
 
-     virtual void CocoaDelegate_wxMenuItemAction(WX_NSMenuItem sender);
 
-     virtual bool CocoaDelegate_validateMenuItem(WX_NSMenuItem sender);
 
-     virtual wxMenuBar* GetAppMenuBar(wxCocoaNSWindow *win);
 
-     static void DeactivatePendingWindow();
 
- protected:
 
-     void SetNSWindow(WX_NSWindow cocoaNSWindow);
 
-     WX_NSWindow m_cocoaNSWindow;
 
-     static wxCocoaNSWindowHash sm_cocoaHash;
 
-     virtual void CocoaReplaceView(WX_NSView oldView, WX_NSView newView);
 
-     static unsigned int NSWindowStyleForWxStyle(long style);
 
-     static NSRect MakeInitialNSWindowContentRect(const wxPoint& pos, const wxSize& size, unsigned int cocoaStyleMask);
 
-     static wxTopLevelWindowCocoa *sm_cocoaDeactivateWindow;
 
- // ------------------------------------------------------------------------
 
- // Implementation
 
- // ------------------------------------------------------------------------
 
- public:
 
-     virtual bool Destroy();
 
-     // Pure virtuals
 
-     virtual void Maximize(bool maximize = true);
 
-     virtual bool IsMaximized() const;
 
-     virtual void Iconize(bool iconize = true);
 
-     virtual bool IsIconized() const;
 
-     virtual void Restore();
 
-     virtual bool ShowFullScreen(bool show, long style = wxFULLSCREEN_ALL);
 
-     virtual bool IsFullScreen() const;
 
-     // other
 
-     virtual bool Show( bool show = true );
 
-     virtual bool Close( bool force = false );
 
-     virtual void OnCloseWindow(wxCloseEvent& event);
 
-     virtual void CocoaSetWxWindowSize(int width, int height);
 
-     virtual void DoMoveWindow(int x, int y, int width, int height);
 
-     virtual void DoGetSize(int *width, int *height) const;
 
-     virtual void DoGetPosition(int *x, int *y) const;
 
-     virtual void SetTitle( const wxString& title);
 
-     virtual wxString GetTitle() const;
 
-     // Default button (item)
 
-     wxWindow *SetDefaultItem(wxWindow *win);
 
- // Things I may/may not do
 
- //    virtual void SetIcons(const wxIconBundle& icons);
 
- //    virtual void Clear() ;
 
- //    virtual void Raise();
 
- //    virtual void Lower();
 
- protected:
 
-     // is the frame currently iconized?
 
-     bool m_iconized;
 
-     // has the frame been closed
 
-     bool m_closed;
 
-     // should the frame be maximized when it will be shown? set by Maximize()
 
-     // when it is called while the frame is hidden
 
-     bool m_maximizeOnShow;
 
- };
 
- // list of all frames and modeless dialogs
 
- extern WXDLLIMPEXP_DATA_CORE(wxWindowList) wxModelessWindows;
 
- #endif // __WX_COCOA_TOPLEVEL_H__
 
 
  |