diff options
author | Daniel Colascione <dancol@dancol.org> | 2013-03-10 14:55:25 -0800 |
---|---|---|
committer | Daniel Colascione <dancol@dancol.org> | 2013-03-10 14:55:25 -0800 |
commit | 819e2da92a18d7af03ccd9cf0a2e5b940eb7b54f (patch) | |
tree | 99d41020f39fd757e30622c6437e99902785a371 /src/w32term.h | |
parent | d2e24f924a37982172ec0708369570a0af315c7e (diff) |
2013-03-10 Daniel Colascione <dancol@dancol.org>
* w32term.h (GUISTR, GUI_ENCODE_FILE, GUI_ENCODE_SYSTEM, GUI_FN)
(GUI_SDATA, guichar_t): Macros to abstract out differences between
NTGUI_UNICODE and !NTGUI_UNICODE builds, some moved out of
w32fns.c.
* w32term.c (construct_drag_n_drop): Use the above macros to make
drag-and-drop work for non-ASCII filenames in cygw32 builds.
* w32fns.c (x_set_name, x_set_title): Use the above macros to
properly display non-ASCII frame titles in cygw32 builds.
* w32fns.c (Fw32_shell_execute): Use the above macros to properly
call ShellExecute in cygw32 builds.
* w32fn.c (Fx_file_dialog): Use the above macros to simplify the
common file dialog code.
* w32fns.c (Ffile_system_info): Remove from cygw32 builds, which
can just use du like other systems.
* coding.c (from_unicode_buffer): Declare.
* coding.c (from_unicode_buffer): Implement.
Diffstat (limited to 'src/w32term.h')
-rw-r--r-- | src/w32term.h | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/w32term.h b/src/w32term.h index 7154d549f2..a31c5de193 100644 --- a/src/w32term.h +++ b/src/w32term.h @@ -761,6 +761,23 @@ extern const char* w32_name_of_message (UINT msg); #endif /* EMACSDEBUG */ +#ifdef NTGUI_UNICODE +extern Lisp_Object ntgui_encode_system (Lisp_Object str); +#define GUISTR(x) (L ## x) +#define GUI_ENCODE_FILE GUI_ENCODE_SYSTEM +#define GUI_ENCODE_SYSTEM(x) ntgui_encode_system (x) +#define GUI_FN(fn) fn ## W +typedef wchar_t guichar_t; +#else /* !NTGUI_UNICODE */ +#define GUISTR(x) x +#define GUI_ENCODE_FILE ENCODE_FILE +#define GUI_ENCODE_SYSTEM ENCODE_SYSTEM +#define GUI_FN(fn) fn +typedef char guichar_t; +#endif /* NTGUI_UNICODE */ + +#define GUI_SDATA(x) ((guichar_t*) SDATA (x)) + extern void syms_of_w32term (void); extern void syms_of_w32menu (void); extern void syms_of_w32fns (void); |