]> git.mxchange.org Git - flightgear.git/blobdiff - src/Scripting/ClipboardCocoa.mm
Reduce amount of log output at level=debug.
[flightgear.git] / src / Scripting / ClipboardCocoa.mm
index 8e0b0abae2d15f18038c168d633fd4bac3f547a7..d6bb63897bdc85cf513c808d5801b7b5a337ba2e 100644 (file)
@@ -16,6 +16,8 @@
 // along with this program; if not, write to the Free Software
 // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
 
+
+
 #include "NasalClipboard.hxx"
 
 #include <simgear/debug/logstream.hxx>
@@ -66,9 +68,13 @@ class ClipboardCocoa: public NasalClipboard
       
       if( type == CLIPBOARD )
       {
-        NSPasteboard* pboard = [NSPasteboard generalPasteboard];
-        NSString* nstext = [pboard stringForType:NSPasteboardTypeString];
-        return stdStringFromCocoa(nstext);
+       NSPasteboard* pboard = [NSPasteboard generalPasteboard];
+       #if MAC_OS_X_VERSION_MIN_REQUIRED >= 1050
+         NSString* nstext = [pboard stringForType:NSStringPboardType];
+       #else // > 10.5
+         NSString* nstext = [pboard stringForType:NSPasteboardTypeString];
+       #endif // MAC_OS_X_VERSION_MIN_REQUIRED
+       return stdStringFromCocoa(nstext);
       }
       
       return "";
@@ -85,8 +91,16 @@ class ClipboardCocoa: public NasalClipboard
       {
         NSPasteboard* pboard = [NSPasteboard generalPasteboard];
         NSString* nstext = stdStringToCocoa(text);
-        [pboard clearContents];
-        [pboard setString:nstext forType:NSPasteboardTypeString];
+        #if MAC_OS_X_VERSION_MIN_REQUIRED >= 1050
+          NSString* type = NSStringPboardType;
+          NSArray* types = [NSArray arrayWithObjects: type, nil];
+          [pboard declareTypes:types owner:nil];
+          [pboard setString:nstext forType: NSStringPboardType];
+        #else // > 10.5
+          NSString* type = NSPasteboardTypeString;
+          [pboard clearContents];
+          [pboard setString:nstext forType:NSPasteboardTypeString];
+        #endif // MAC_OS_X_VERSION_MIN_REQUIRED
         return true;
       }