Commit 42c6741e authored by YAMAMOTO Mitsuharu's avatar YAMAMOTO Mitsuharu
Browse files

[!TARGET_API_MAC_CARBON]: Include MacLocales.h. Don't include

TextEncodingConverter.h.
(mac_system_script_code, Vmac_system_locale): New variables.
(syms_of_mac): Defvar them.
(mac_get_system_locale): New function.
parent f0b40a1d
2005-04-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
* mac.c [!TARGET_API_MAC_CARBON]: Include MacLocales.h. Don't
include TextEncodingConverter.h.
(mac_system_script_code, Vmac_system_locale): New variables.
(syms_of_mac): Defvar them.
(mac_get_system_locale): New function.
* macfns.c (x_set_name, x_set_title) [!TARGET_API_MAC_CARBON]: Use
ENCODE_SYSTEM to encode title bar string.
(x_create_tip_frame): Apply 2005-03-18 change for xfns.c.
(Fx_file_dialog) [TARGET_API_MAC_CARBON && !MAC_OSX]: Use
CFStringGetSystemEncoding to get system default string encoding.
* macterm.c [!TARGET_API_MAC_CARBON]: Don't include
TextEncodingConverter.h.
2005-04-13 Steven Tamm <steventamm@mac.com>
 
* macterm.c (syms_of_macterm): Remove redundant definition of
......
......@@ -49,6 +49,7 @@ Boston, MA 02111-1307, USA. */
#include <Events.h>
#include <Processes.h>
#include <EPPC.h>
#include <MacLocales.h>
#endif /* not HAVE_CARBON */
#include <utime.h>
......@@ -67,6 +68,12 @@ Boston, MA 02111-1307, USA. */
Lisp_Object QCLIPBOARD;
/* The system script code. */
static int mac_system_script_code;
/* The system locale identifier string. */
static Lisp_Object Vmac_system_locale;
/* An instance of the AppleScript component. */
static ComponentInstance as_scripting_component;
/* The single script context used for all script executions. */
......@@ -4167,6 +4174,29 @@ init_mac_osx_environment ()
}
#endif /* MAC_OSX */
static Lisp_Object
mac_get_system_locale ()
{
OSErr err;
LangCode lang;
RegionCode region;
LocaleRef locale;
Str255 str;
lang = GetScriptVariable (smSystemScript, smScriptLang);
region = GetScriptManagerVariable (smRegionCode);
err = LocaleRefFromLangOrRegionCode (lang, region, &locale);
if (err == noErr)
err = LocaleRefGetPartString (locale, kLocaleAllPartsMask,
sizeof (str), str);
if (err == noErr)
return build_string (str);
else
return Qnil;
}
void
syms_of_mac ()
{
......@@ -4197,6 +4227,16 @@ syms_of_mac ()
defsubr (&Sdo_applescript);
defsubr (&Smac_file_name_to_posix);
defsubr (&Sposix_file_name_to_mac);
DEFVAR_INT ("mac-system-script-code", &mac_system_script_code,
doc: /* The system script code. */);
mac_system_script_code = (ScriptCode) GetScriptManagerVariable (smSysScript);
DEFVAR_LISP ("mac-system-locale", &Vmac_system_locale,
doc: /* The system locale identifier string.
This is not a POSIX locale ID, but an ICU locale ID. So encoding
information is not included. */);
Vmac_system_locale = mac_get_system_locale ();
}
/* arch-tag: 29d30c1f-0c6b-4f88-8a6d-0558d7f9dbff
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment