]> git.mxchange.org Git - flightgear.git/commitdiff
One more Mac helper moved into CocoaHelpers.mm
authorJames Turner <zakalawe@mac.com>
Tue, 19 Nov 2013 22:01:11 +0000 (22:01 +0000)
committerJames Turner <zakalawe@mac.com>
Tue, 19 Nov 2013 22:01:11 +0000 (22:01 +0000)
src/GUI/CocoaHelpers.mm
src/Main/locale.cxx
src/Main/options.cxx

index 8df796615f01739af8477d6d3977b1cf6547ba03..cc564a2b0c3714d29e50fb2180ba80e93ee0211b 100644 (file)
@@ -33,6 +33,7 @@
 // flightgear
 #include <GUI/MessageBox.hxx>
 #include <Main/options.hxx>
+#include <Main/locale.hxx>
 
 NSString* stdStringToCocoa(const std::string& s)
 {
@@ -138,3 +139,15 @@ std::string Options::platformDefaultRoot() const
 }
     
 } // of namespace flightgear
+
+string_list FGLocale::getUserLanguage()
+{
+    CocoaAutoreleasePool ap;
+    string_list result;
+    
+    for (NSString* lang in [NSLocale preferredLanguages]) {
+        result.push_back(stdStringFromCocoa(lang));
+    }
+    
+    return result;
+}
index a2fa6e42d670a8d6d65cb4d2572b66b3f50f3e9e..783b3f24743c0d022fcdcf99205d93476a998e02 100644 (file)
@@ -90,27 +90,7 @@ FGLocale::getUserLanguage()
     return result;
 }
 #elif __APPLE__
-
-// determine locale / langauge on Mac
-#include <CoreFoundation/CoreFoundation.h>
-
-string_list
-FGLocale::getUserLanguage()
-{
-    string_list result;
-    CFArrayRef langs = CFLocaleCopyPreferredLanguages();
-    
-    char buffer[64];
-    for (int i=0; i<CFArrayGetCount(langs); ++i) {
-        CFStringRef s = (CFStringRef) CFArrayGetValueAtIndex(langs, i);
-        CFStringGetCString(s, buffer, 64, kCFStringEncodingASCII);
-        result.push_back(buffer);
-    }
-    
-    CFRelease(langs);
-    return result;
-}
-
+//  implemented in CocoaHelpers.mm
 #else
 /**
  * Determine locale/language settings on Linux/Unix.
index 691e7be2405623058820e71de5dd7e1209c3f3da..e3e66c0dd860aa7cb8588ff40d87d980b78cc8bf 100644 (file)
@@ -2346,12 +2346,12 @@ string Options::platformDefaultRoot() const
   return "../data";
 }
 
-#elif defined(_WIN32)
+#elif defined(SG_WINDOWS)
 string Options::platformDefaultRoot() const
 {
   return "..\\data";
 }
-#elif defined(__APPLE__)
+#elif defined(SG_MAC)
 // platformDefaultRoot defined in CocoaHelpers.mm
 #else
 string Options::platformDefaultRoot() const