From 3d1436900e84279e8de2d22dfd481b0b5feecddc Mon Sep 17 00:00:00 2001 From: Jason Rumney Date: Thu, 5 Jun 2003 23:21:19 +0000 Subject: [PATCH] (SYSTEM_DEFAULT_RESOURCES): New constant. (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last. --- src/ChangeLog | 8 ++++++++ src/w32reg.c | 31 ++++++++++++++++++++++++++++++- 2 files changed, 38 insertions(+), 1 deletion(-) diff --git a/src/ChangeLog b/src/ChangeLog index 1713b57f14..ac1c5f10d8 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,11 @@ +2003-06-06 Jason Rumney + + * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant. + (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last. + + * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and + Mac too. + 2003-06-05 Dave Love * mktime.c (__mktime_internal): Merge changes from gnulib diff --git a/src/w32reg.c b/src/w32reg.c index 283cd219e9..6d3137f1d4 100644 --- a/src/w32reg.c +++ b/src/w32reg.c @@ -30,6 +30,33 @@ Boston, MA 02111-1307, USA. */ #define REG_ROOT "SOFTWARE\\GNU\\Emacs" +/* Default system colors from the Display Control Panel settings. */ +#define SYSTEM_DEFAULT_RESOURCES \ + "emacs.foreground:SystemWindowText\0" \ + "emacs.background:SystemWindow\0" \ + "emacs.tooltip.attributeForeground:SystemInfoText\0" \ + "emacs.tooltip.attributeBackground:SystemInfoWindow\0" \ + "emacs.tool-bar.attributeForeground:SystemButtonText\0" \ + "emacs.tool-bar.attributeBackground:SystemButtonFace\0" \ + "emacs.menu.attributeForeground:SystemMenuText\0" \ + "emacs.menu.attributeBackground:SystemMenu\0" \ + "emacs.scroll-bar.attributeForeground:SystemScrollbar" + +/* Other possibilities for default faces: + + region: Could use SystemHilight, but interferes with our ability to + see most syntax highlighting through the region face. + + modeline: Could use System(In)ActiveTitle, gradient versions (not + supported on 95 and NT), but modeline is more like a status bar + really (which don't appear to be configurable in Windows). + + highlight: Could use SystemHotTrackingColor, but it is not supported + on Windows 95 or NT, and other apps only seem to use it for menus + anyway. + +*/ + static char * w32_get_rdb_resource (rdb, resource) char *rdb; @@ -109,7 +136,9 @@ w32_get_string_resource (name, class, dwexptype) hive = HKEY_LOCAL_MACHINE; goto trykey; } - return (NULL); + + /* Check if there are Windows specific defaults defined. */ + return w32_get_rdb_resource (SYSTEM_DEFAULT_RESOURCES, name); } return (lpvalue); } -- 2.39.2