]> git.saurik.com Git - wxWidgets.git/blobdiff - src/osx/carbon/utils.cpp
support underlined text in wxCairoContext (Marcin's patch) (closes #9846)
[wxWidgets.git] / src / osx / carbon / utils.cpp
index 1a5c28d144d973b23a32768519701fb6364521f7..a878933818a0cabee5f20bd423a7a39001dd2867 100644 (file)
@@ -144,8 +144,55 @@ wxString wxMacFindFolder( short        vol,
 
 #endif // wxUSE_BASE
 
+
+// ============================================================================
+// GUI-only functions from now on
+// ============================================================================
+
 #if wxUSE_GUI
 
+// ----------------------------------------------------------------------------
+// Launch document with default app
+// ----------------------------------------------------------------------------
+
+bool wxLaunchDefaultApplication(const wxString& document, int flags)
+{
+    wxUnusedVar(flags);
+
+    static const char * const OPEN_CMD = "/usr/bin/open";
+    if ( wxFileExists(OPEN_CMD) &&
+            wxExecute(wxString(OPEN_CMD) + " " + document) )
+        return true;
+
+    return false;
+}
+
+// ----------------------------------------------------------------------------
+// Launch default browser
+// ----------------------------------------------------------------------------
+
+bool wxDoLaunchDefaultBrowser(const wxString& url, int flags)
+{
+    wxUnusedVar(flags);
+    wxCFRef< CFURLRef > curl( CFURLCreateWithString( kCFAllocatorDefault,
+                              wxCFStringRef( url ), NULL ) );
+    OSStatus err = LSOpenCFURLRef( curl , NULL );
+
+    if (err == noErr)
+    {
+        return true;
+    }
+    else
+    {
+        wxLogDebug(wxT("Browser Launch error %d"), (int) err);
+        return false;
+    }
+}
+
+// ----------------------------------------------------------------------------
+// Miscellaneous functions
+// ----------------------------------------------------------------------------
+
 void wxGetMousePosition( int* x, int* y )
 {
     Point pt;