]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/mac/carbon/app.h
Cast for argument to delete[] - VC6 doesn't want to delete a const pointer
[wxWidgets.git] / include / wx / mac / carbon / app.h
index 492a71300478060951ca0c10ccd4df30caf7e619..66796866a4ba8428daf73e014095d394065cdcaa 100644 (file)
 #include "wx/gdicmn.h"
 #include "wx/event.h"
 
-#ifdef __WXMAC_OSX__
-typedef struct __CFRunLoopSource * CFRunLoopSourceRef;
-#endif
-
-class WXDLLEXPORT wxFrame;
-class WXDLLEXPORT wxWindowMac;
-class WXDLLEXPORT wxApp ;
-class WXDLLEXPORT wxKeyEvent;
-class WXDLLEXPORT wxLog;
+class WXDLLIMPEXP_FWD_CORE wxFrame;
+class WXDLLIMPEXP_FWD_CORE wxWindowMac;
+class WXDLLIMPEXP_FWD_CORE wxApp ;
+class WXDLLIMPEXP_FWD_CORE wxKeyEvent;
+class WXDLLIMPEXP_FWD_BASE wxLog;
 
 // Force an exit from main loop
-void WXDLLEXPORT wxExit();
+void WXDLLIMPEXP_CORE wxExit();
 
 // Yield to other apps/messages
-bool WXDLLEXPORT wxYield();
+bool WXDLLIMPEXP_CORE wxYield();
 
 // Represents the application. Derive OnInit and declare
 // a new App object to start application
-class WXDLLEXPORT wxApp: public wxAppBase
+class WXDLLIMPEXP_CORE wxApp: public wxAppBase
 {
     DECLARE_DYNAMIC_CLASS(wxApp)
 
@@ -78,6 +74,7 @@ public:
     // adding a CFType object to be released only at the end of the current event cycle (increases the
     // refcount of the object passed), needed in case we are in the middle of an event concering an object
     // we want to delete and cannot do it immediately
+    // TODO change semantics to be in line with cocoa (make autrelease NOT increase the count)
     void                  MacAddToAutorelease( void* cfrefobj );
 public:
     static wxWindow*      s_captureWindow ;
@@ -91,9 +88,7 @@ private:
     WXEVENTHANDLERREF     m_macEventHandler ;
     WXEVENTHANDLERCALLREF m_macCurrentEventHandlerCallRef ;
     WXEVENTREF            m_macCurrentEvent ;
-#ifdef __WXMAC_OSX__
     CFRunLoopSourceRef    m_macEventPosted ;
-#endif
 
 public:
     static long           s_macAboutMenuItemId ;
@@ -112,6 +107,7 @@ public:
     bool    MacSendCharEvent( wxWindow* focus , long keymessage , long modifiers , long when , short wherex , short wherey , wxChar uniChar ) ;
     void    MacCreateKeyEvent( wxKeyEvent& event, wxWindow* focus , long keymessage , long modifiers , long when , short wherex , short wherey , wxChar uniChar ) ;
     virtual short         MacHandleAEODoc(const WXAPPLEEVENTREF event , WXAPPLEEVENTREF reply) ;
+    virtual short         MacHandleAEGURL(const WXAPPLEEVENTREF event , WXAPPLEEVENTREF reply) ;
     virtual short         MacHandleAEPDoc(const WXAPPLEEVENTREF event , WXAPPLEEVENTREF reply) ;
     virtual short         MacHandleAEOApp(const WXAPPLEEVENTREF event , WXAPPLEEVENTREF reply) ;
     virtual short         MacHandleAEQuit(const WXAPPLEEVENTREF event , WXAPPLEEVENTREF reply) ;
@@ -119,6 +115,8 @@ public:
 
     // in response of an open-document apple event
     virtual void         MacOpenFile(const wxString &fileName) ;
+    // in response of a get-url apple event
+    virtual void         MacOpenURL(const wxString &url) ;
     // in response of a print-document apple event
     virtual void         MacPrintFile(const wxString &fileName) ;
     // in response of a open-application apple event
@@ -126,6 +124,9 @@ public:
     // in response of a reopen-application apple event
     virtual void         MacReopenApp() ;
 
+    // Hide the application windows the same as the system hide command would do it.
+    void MacHideApp();
+
     DECLARE_EVENT_TABLE()
 };