aboutsummaryrefslogtreecommitdiffstats
path: root/src/w32term.h
diff options
context:
space:
mode:
authorDaniel Colascione2013-03-10 14:55:25 -0800
committerDaniel Colascione2013-03-10 14:55:25 -0800
commit819e2da92a18d7af03ccd9cf0a2e5b940eb7b54f (patch)
tree99d41020f39fd757e30622c6437e99902785a371 /src/w32term.h
parentd2e24f924a37982172ec0708369570a0af315c7e (diff)
downloademacs-819e2da92a18d7af03ccd9cf0a2e5b940eb7b54f.tar.gz
emacs-819e2da92a18d7af03ccd9cf0a2e5b940eb7b54f.zip
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.h17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/w32term.h b/src/w32term.h
index 7154d549f21..a31c5de193d 100644
--- a/src/w32term.h
+++ b/src/w32term.h
@@ -761,6 +761,23 @@ extern const char*
761w32_name_of_message (UINT msg); 761w32_name_of_message (UINT msg);
762#endif /* EMACSDEBUG */ 762#endif /* EMACSDEBUG */
763 763
764#ifdef NTGUI_UNICODE
765extern Lisp_Object ntgui_encode_system (Lisp_Object str);
766#define GUISTR(x) (L ## x)
767#define GUI_ENCODE_FILE GUI_ENCODE_SYSTEM
768#define GUI_ENCODE_SYSTEM(x) ntgui_encode_system (x)
769#define GUI_FN(fn) fn ## W
770typedef wchar_t guichar_t;
771#else /* !NTGUI_UNICODE */
772#define GUISTR(x) x
773#define GUI_ENCODE_FILE ENCODE_FILE
774#define GUI_ENCODE_SYSTEM ENCODE_SYSTEM
775#define GUI_FN(fn) fn
776typedef char guichar_t;
777#endif /* NTGUI_UNICODE */
778
779#define GUI_SDATA(x) ((guichar_t*) SDATA (x))
780
764extern void syms_of_w32term (void); 781extern void syms_of_w32term (void);
765extern void syms_of_w32menu (void); 782extern void syms_of_w32menu (void);
766extern void syms_of_w32fns (void); 783extern void syms_of_w32fns (void);