]> code.delx.au - gnu-emacs/blobdiff - src/w32reg.c
(Text): Replace inforef to emacs-xtra by conditional xref's, depending on
[gnu-emacs] / src / w32reg.c
index 283cd219e955742a2bba3232c6f0650189d362bf..cd2a3bdf755555c888b041b00d0d2ffd73f566cf 100644 (file)
@@ -1,5 +1,6 @@
 /* Emulate the X Resource Manager through the registry.
-   Copyright (C) 1990, 1993, 1994 Free Software Foundation.
+   Copyright (C) 1990, 1993, 1994, 2002, 2003, 2004,
+                 2005, 2006 Free Software Foundation, Inc.
 
 This file is part of GNU Emacs.
 
@@ -15,8 +16,8 @@ GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License
 along with GNU Emacs; see the file COPYING.  If not, write to
-the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-Boston, MA 02111-1307, USA.  */
+the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+Boston, MA 02110-1301, USA.  */
 
 /* Written by Kevin Gallo */
 
@@ -30,6 +31,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 +137,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);
 }
@@ -134,3 +164,6 @@ x_get_string_resource (rdb, name, class)
 
   return (w32_get_string_resource (name, class, REG_SZ));
 }
+
+/* arch-tag: 755fce25-42d7-4acb-874f-2fb42336823d
+   (do not change this comment) */