]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/mac/frame.h
Implemented wxDC stack with focus locking and unlocking
[wxWidgets.git] / include / wx / mac / frame.h
index 0f5acaa12bf74ab73ef0207a5ca97b463aa0f41d..aa21b150ee4d02033328d05ade38286b83653e60 100644 (file)
@@ -1,18 +1,18 @@
 /////////////////////////////////////////////////////////////////////////////
 // Name:        frame.h
 // Purpose:     wxFrame class
 /////////////////////////////////////////////////////////////////////////////
 // Name:        frame.h
 // Purpose:     wxFrame class
-// Author:      AUTHOR
+// Author:      Stefan Csomor
 // Modified by:
 // Modified by:
-// Created:     ??/??/98
+// Created:     1998-01-01
 // RCS-ID:      $Id$
 // RCS-ID:      $Id$
-// Copyright:   (c) AUTHOR
-// Licence:    wxWindows licence
+// Copyright:   (c) Stefan Csomor
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 #ifndef _WX_FRAME_H_
 #define _WX_FRAME_H_
 
 /////////////////////////////////////////////////////////////////////////////
 
 #ifndef _WX_FRAME_H_
 #define _WX_FRAME_H_
 
-#ifdef __GNUG__
+#if defined(__GNUG__) && !defined(__APPLE__)
 #pragma interface "frame.h"
 #endif
 
 #pragma interface "frame.h"
 #endif
 
 #include "wx/accel.h"
 #include "wx/icon.h"
 
 #include "wx/accel.h"
 #include "wx/icon.h"
 
-WXDLLEXPORT_DATA(extern const char*) wxFrameNameStr;
-WXDLLEXPORT_DATA(extern const char*) wxToolBarNameStr;
+WXDLLEXPORT_DATA(extern const wxChar*) wxFrameNameStr;
+WXDLLEXPORT_DATA(extern const wxChar*) wxToolBarNameStr;
 
 class WXDLLEXPORT wxMenuBar;
 class WXDLLEXPORT wxStatusBar;
 class WXDLLEXPORT wxMacToolTip ;
 
 
 class WXDLLEXPORT wxMenuBar;
 class WXDLLEXPORT wxStatusBar;
 class WXDLLEXPORT wxMacToolTip ;
 
-class WXDLLEXPORT wxFrame: public wxFrameBase {
-
-  DECLARE_DYNAMIC_CLASS(wxFrame)
-
+class WXDLLEXPORT wxFrame: public wxFrameBase 
+{
 public:
     // construction
     wxFrame() { Init(); }
 public:
     // construction
     wxFrame() { Init(); }
@@ -62,7 +60,7 @@ public:
     // -------------------------------
 
     // override some more virtuals
     // -------------------------------
 
     // override some more virtuals
-       virtual bool Enable(bool enable) ;
+    virtual bool Enable(bool enable = TRUE) ;
 
     // get the origin of the client area (which may be different from (0, 0)
     // if the frame has a toolbar) in client coordinates
 
     // get the origin of the client area (which may be different from (0, 0)
     // if the frame has a toolbar) in client coordinates
@@ -74,7 +72,7 @@ public:
 
     // Toolbar
 #if wxUSE_TOOLBAR
 
     // Toolbar
 #if wxUSE_TOOLBAR
-    virtual wxToolBar* CreateToolBar(long style = wxNO_BORDER | wxTB_HORIZONTAL | wxTB_FLAT,
+    virtual wxToolBar* CreateToolBar(long style = -1,
                                      wxWindowID id = -1,
                                      const wxString& name = wxToolBarNameStr);
 
                                      wxWindowID id = -1,
                                      const wxString& name = wxToolBarNameStr);
 
@@ -89,11 +87,6 @@ public:
                                            const wxString& name = wxStatusLineNameStr);
 
     virtual void PositionStatusBar();
                                            const wxString& name = wxStatusLineNameStr);
 
     virtual void PositionStatusBar();
-
-  // Hint to tell framework which status bar to use
-  // TODO: should this go into a wxFrameworkSettings class perhaps?
-  static void UseNativeStatusBar(bool useNative) { m_useNativeStatusBar = useNative; };
-  static bool UsesNativeStatusBar() { return m_useNativeStatusBar; };
 #endif // wxUSE_STATUSBAR
 
     // tooltip management
 #endif // wxUSE_STATUSBAR
 
     // tooltip management
@@ -103,6 +96,10 @@ public:
     wxMacToolTip* m_hwndToolTip ;
 #endif // tooltips
 
     wxMacToolTip* m_hwndToolTip ;
 #endif // tooltips
 
+    // called by wxWindow whenever it gets focus
+    void SetLastFocus(wxWindow *win) { m_winLastFocused = win; }
+    wxWindow *GetLastFocus() const { return m_winLastFocused; }
+
 protected:
     // common part of all ctors
     void Init();
 protected:
     // common part of all ctors
     void Init();
@@ -111,10 +108,10 @@ protected:
     virtual void DoGetClientSize(int *width, int *height) const;
     virtual void DoSetClientSize(int width, int height);
 
     virtual void DoGetClientSize(int *width, int *height) const;
     virtual void DoSetClientSize(int width, int height);
 
+    virtual void DetachMenuBar();
+    virtual void AttachMenuBar(wxMenuBar *menubar);
+
 protected:
 protected:
-#if wxUSE_STATUSBAR
-    static bool           m_useNativeStatusBar;
-#endif // wxUSE_STATUSBAR
     // the last focused child: we restore focus to it on activation
     wxWindow             *m_winLastFocused;
 
     // the last focused child: we restore focus to it on activation
     wxWindow             *m_winLastFocused;