]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/cocoa/toplevel.h
Get rid of wxAuiToolBar::m_style and just use base class m_windowStyle.
[wxWidgets.git] / include / wx / cocoa / toplevel.h
index 8276028e6761e9a3827b77d2924649a81ee00e2a..0e850d63434f8f3c303d375129604a4a1d5a92de 100644 (file)
 #include "wx/hashmap.h"
 #include "wx/cocoa/NSWindow.h"
 
-class WXDLLEXPORT wxMenuBar;
+class WXDLLIMPEXP_FWD_CORE wxMenuBar;
 
 // ========================================================================
 // wxTopLevelWindowCocoa
 // ========================================================================
-class WXDLLEXPORT wxTopLevelWindowCocoa : public wxTopLevelWindowBase, protected wxCocoaNSWindow
+class WXDLLIMPEXP_CORE wxTopLevelWindowCocoa : public wxTopLevelWindowBase, protected wxCocoaNSWindow
 {
     DECLARE_EVENT_TABLE();
     DECLARE_NO_COPY_CLASS(wxTopLevelWindowCocoa);
@@ -28,7 +28,9 @@ class WXDLLEXPORT wxTopLevelWindowCocoa : public wxTopLevelWindowBase, protected
 // initialization
 // ------------------------------------------------------------------------
 public:
-    inline wxTopLevelWindowCocoa() { Init(); }
+    inline wxTopLevelWindowCocoa()
+    :   wxCocoaNSWindow(this)
+    {   Init(); }
 
     inline wxTopLevelWindowCocoa(wxWindow *parent,
                         wxWindowID winid,
@@ -37,6 +39,7 @@ public:
                         const wxSize& size = wxDefaultSize,
                         long style = wxDEFAULT_FRAME_STYLE,
                         const wxString& name = wxFrameNameStr)
+    :   wxCocoaNSWindow(this)
     {
         Init();
         Create(parent, winid, title, pos, size, style, name);
@@ -67,6 +70,8 @@ public:
     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:
@@ -75,6 +80,7 @@ protected:
     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;
 // ------------------------------------------------------------------------
@@ -98,15 +104,17 @@ public:
     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 SetIcon(const wxIcon& icon);
-//    virtual void SetIcons(const wxIconBundle& icons) { SetIcon( icons.GetIcon( -1 ) ); }
+//    virtual void SetIcons(const wxIconBundle& icons);
 //    virtual void Clear() ;
 //    virtual void Raise();
 //    virtual void Lower();
-//    virtual void SetTitle( const wxString& title);
 protected:
     // is the frame currently iconized?
     bool m_iconized;
@@ -118,6 +126,6 @@ protected:
 };
 
 // list of all frames and modeless dialogs
-extern WXDLLEXPORT_DATA(wxWindowList) wxModelessWindows;
+extern WXDLLIMPEXP_DATA_CORE(wxWindowList) wxModelessWindows;
 
 #endif // __WX_COCOA_TOPLEVEL_H__