emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] Changes to emacs/src/w32fns.c [lexbind]


From: Miles Bader
Subject: [Emacs-diffs] Changes to emacs/src/w32fns.c [lexbind]
Date: Tue, 06 Jul 2004 07:12:46 -0400

Index: emacs/src/w32fns.c
diff -c emacs/src/w32fns.c:1.173.2.9 emacs/src/w32fns.c:1.173.2.10
*** emacs/src/w32fns.c:1.173.2.9        Tue May 11 02:39:03 2004
--- emacs/src/w32fns.c  Tue Jul  6 09:14:38 2004
***************
*** 1,5 ****
  /* Graphical user interface functions for the Microsoft W32 API.
!    Copyright (C) 1989, 92, 93, 94, 95, 1996, 1997, 1998, 1999, 2000, 2001
       Free Software Foundation, Inc.
  
  This file is part of GNU Emacs.
--- 1,5 ----
  /* Graphical user interface functions for the Microsoft W32 API.
!    Copyright (C) 1989, 92, 93, 94, 95, 96, 97, 98, 1999, 2000, 01, 2004
       Free Software Foundation, Inc.
  
  This file is part of GNU Emacs.
***************
*** 88,94 ****
  Lisp_Object Vw32_alt_is_meta;
  
  /* If non-zero, the windows virtual key code for an alternative quit key. */
! Lisp_Object Vw32_quit_key;
  
  /* Non nil if left window key events are passed on to Windows (this only
     affects whether "tapping" the key opens the Start menu).  */
--- 88,94 ----
  Lisp_Object Vw32_alt_is_meta;
  
  /* If non-zero, the windows virtual key code for an alternative quit key. */
! int w32_quit_key;
  
  /* Non nil if left window key events are passed on to Windows (this only
     affects whether "tapping" the key opens the Start menu).  */
***************
*** 132,142 ****
  
  /* Control how close left/right button down events must be to
     be converted to a middle button down event. */
! Lisp_Object Vw32_mouse_button_tolerance;
  
  /* Minimum interval between mouse movement (and scroll bar drag)
     events that are passed on to the event loop. */
! Lisp_Object Vw32_mouse_move_interval;
  
  /* Flag to indicate if XBUTTON events should be passed on to Windows.  */
  int w32_pass_extra_mouse_buttons_to_system;
--- 132,142 ----
  
  /* Control how close left/right button down events must be to
     be converted to a middle button down event. */
! int w32_mouse_button_tolerance;
  
  /* Minimum interval between mouse movement (and scroll bar drag)
     events that are passed on to the event loop. */
! int w32_mouse_move_interval;
  
  /* Flag to indicate if XBUTTON events should be passed on to Windows.  */
  int w32_pass_extra_mouse_buttons_to_system;
***************
*** 235,241 ****
  #endif
  
  /* The ANSI codepage.  */
! Lisp_Object Vw32_ansi_code_page;
  
  /* Prefix for system colors.  */
  #define SYSTEM_COLOR_PREFIX "System"
--- 235,241 ----
  #endif
  
  /* The ANSI codepage.  */
! int w32_ansi_code_page;
  
  /* Prefix for system colors.  */
  #define SYSTEM_COLOR_PREFIX "System"
***************
*** 283,289 ****
  
  
  /* From w32term.c. */
! extern Lisp_Object Vw32_num_mouse_buttons;
  extern Lisp_Object Vw32_recognize_altgr;
  
  extern HWND w32_system_caret_hwnd;
--- 283,289 ----
  
  
  /* From w32term.c. */
! extern int w32_num_mouse_buttons;
  extern Lisp_Object Vw32_recognize_altgr;
  
  extern HWND w32_system_caret_hwnd;
***************
*** 465,471 ****
    CHECK_NUMBER (blue);
    CHECK_STRING (name);
  
!   XSET (rgb, Lisp_Int, RGB(XUINT (red), XUINT (green), XUINT (blue)));
  
    BLOCK_INPUT;
  
--- 465,471 ----
    CHECK_NUMBER (blue);
    CHECK_STRING (name);
  
!   XSETINT (rgb, RGB(XUINT (red), XUINT (green), XUINT (blue)));
  
    BLOCK_INPUT;
  
***************
*** 828,834 ****
      return Qnil;
  }
  
! COLORREF
  w32_color_map_lookup (colorname)
       char *colorname;
  {
--- 828,834 ----
      return Qnil;
  }
  
! static Lisp_Object
  w32_color_map_lookup (colorname)
       char *colorname;
  {
***************
*** 847,853 ****
  
        if (lstrcmpi (SDATA (tem), colorname) == 0)
        {
!         ret = XUINT (Fcdr (elt));
          break;
        }
  
--- 847,853 ----
  
        if (lstrcmpi (SDATA (tem), colorname) == 0)
        {
!         ret = Fcdr (elt);
          break;
        }
  
***************
*** 910,916 ****
  }
  
  
! COLORREF
  x_to_w32_color (colorname)
       char * colorname;
  {
--- 910,916 ----
  }
  
  
! static Lisp_Object
  x_to_w32_color (colorname)
       char * colorname;
  {
***************
*** 970,976 ****
              if (i == 2)
                {
                  UNBLOCK_INPUT;
!                 return (colorval);
                }
              color = end;
            }
--- 970,977 ----
              if (i == 2)
                {
                  UNBLOCK_INPUT;
!                 XSETINT (ret, colorval);
!                 return ret;
                }
              color = end;
            }
***************
*** 1023,1029 ****
              if (*end != '\0')
                break;
              UNBLOCK_INPUT;
!             return (colorval);
            }
          if (*end != '/')
            break;
--- 1024,1031 ----
              if (*end != '\0')
                break;
              UNBLOCK_INPUT;
!             XSETINT (ret, colorval);
!             return ret;
            }
          if (*end != '/')
            break;
***************
*** 1064,1070 ****
              if (*end != '\0')
                break;
              UNBLOCK_INPUT;
!             return (colorval);
            }
          if (*end != '/')
            break;
--- 1066,1073 ----
              if (*end != '\0')
                break;
              UNBLOCK_INPUT;
!             XSETINT (ret, colorval);
!             return ret;
            }
          if (*end != '/')
            break;
***************
*** 2418,2423 ****
--- 2421,2430 ----
  #define HOTKEY_VK_CODE(k)     (XFASTINT (k) & 255)
  #define HOTKEY_MODIFIERS(k)   (XFASTINT (k) >> 8)
  
+ #define RAW_HOTKEY_ID(k)        ((k) & 0xbfff)
+ #define RAW_HOTKEY_VK_CODE(k)   ((k) & 255)
+ #define RAW_HOTKEY_MODIFIERS(k) ((k) >> 8)
+ 
  /* Register hot-keys for reserved key combinations when Emacs has
     keyboard focus, since this is the only way Emacs can receive key
     combinations like Alt-Tab which are used by the system.  */
***************
*** 2499,2518 ****
              focus_window = GetFocus ();
              if (focus_window != NULL)
                RegisterHotKey (focus_window,
!                               HOTKEY_ID (msg.wParam),
!                               HOTKEY_MODIFIERS (msg.wParam),
!                               HOTKEY_VK_CODE (msg.wParam));
              /* Reply is not expected.  */
              break;
            case WM_EMACS_UNREGISTER_HOT_KEY:
              focus_window = GetFocus ();
              if (focus_window != NULL)
!               UnregisterHotKey (focus_window, HOTKEY_ID (msg.wParam));
              /* Mark item as erased.  NB: this code must be
                   thread-safe.  The next line is okay because the cons
                   cell is never made into garbage and is not relocated by
                   GC.  */
!             XSETCAR ((Lisp_Object) msg.lParam, Qnil);
              if (!PostThreadMessage (dwMainThreadId, WM_EMACS_DONE, 0, 0))
                abort ();
              break;
--- 2506,2525 ----
              focus_window = GetFocus ();
              if (focus_window != NULL)
                RegisterHotKey (focus_window,
!                               RAW_HOTKEY_ID (msg.wParam),
!                               RAW_HOTKEY_MODIFIERS (msg.wParam),
!                               RAW_HOTKEY_VK_CODE (msg.wParam));
              /* Reply is not expected.  */
              break;
            case WM_EMACS_UNREGISTER_HOT_KEY:
              focus_window = GetFocus ();
              if (focus_window != NULL)
!               UnregisterHotKey (focus_window, RAW_HOTKEY_ID (msg.wParam));
              /* Mark item as erased.  NB: this code must be
                   thread-safe.  The next line is okay because the cons
                   cell is never made into garbage and is not relocated by
                   GC.  */
!             XSETCAR ((Lisp_Object) ((EMACS_INT) msg.lParam), Qnil);
              if (!PostThreadMessage (dwMainThreadId, WM_EMACS_DONE, 0, 0))
                abort ();
              break;
***************
*** 2520,2526 ****
              {
                int vk_code = (int) msg.wParam;
                int cur_state = (GetKeyState (vk_code) & 1);
!               Lisp_Object new_state = (Lisp_Object) msg.lParam;
  
                /* NB: This code must be thread-safe.  It is safe to
                     call NILP because symbols are not relocated by GC,
--- 2527,2533 ----
              {
                int vk_code = (int) msg.wParam;
                int cur_state = (GetKeyState (vk_code) & 1);
!               Lisp_Object new_state = (Lisp_Object) ((EMACS_INT) msg.lParam);
  
                /* NB: This code must be thread-safe.  It is safe to
                     call NILP because symbols are not relocated by GC,
***************
*** 2710,2716 ****
        c = make_ctrl_char (c) & 0377;
      if (c == quit_char
        || (wmsg.dwModifiers == 0 &&
!           XFASTINT (Vw32_quit_key) && wParam == XFASTINT (Vw32_quit_key)))
        {
        Vquit_flag = Qt;
  
--- 2717,2723 ----
        c = make_ctrl_char (c) & 0377;
      if (c == quit_char
        || (wmsg.dwModifiers == 0 &&
!           w32_quit_key && wParam == w32_quit_key))
        {
        Vquit_flag = Qt;
  
***************
*** 3120,3126 ****
         are used together, but only if user has two button mouse. */
      case WM_LBUTTONDOWN:
      case WM_RBUTTONDOWN:
!       if (XINT (Vw32_num_mouse_buttons) > 2)
        goto handle_plain_button;
  
        {
--- 3127,3133 ----
         are used together, but only if user has two button mouse. */
      case WM_LBUTTONDOWN:
      case WM_RBUTTONDOWN:
!       if (w32_num_mouse_buttons > 2)
        goto handle_plain_button;
  
        {
***************
*** 3170,3176 ****
            /* Hold onto message for now. */
            mouse_button_timer =
              SetTimer (hwnd, MOUSE_BUTTON_ID,
!                       XINT (Vw32_mouse_button_tolerance), NULL);
            saved_mouse_button_msg.msg.hwnd = hwnd;
            saved_mouse_button_msg.msg.message = msg;
            saved_mouse_button_msg.msg.wParam = wParam;
--- 3177,3183 ----
            /* Hold onto message for now. */
            mouse_button_timer =
              SetTimer (hwnd, MOUSE_BUTTON_ID,
!                       w32_mouse_button_tolerance, NULL);
            saved_mouse_button_msg.msg.hwnd = hwnd;
            saved_mouse_button_msg.msg.message = msg;
            saved_mouse_button_msg.msg.wParam = wParam;
***************
*** 3183,3189 ****
  
      case WM_LBUTTONUP:
      case WM_RBUTTONUP:
!       if (XINT (Vw32_num_mouse_buttons) > 2)
        goto handle_plain_button;
  
        {
--- 3190,3196 ----
  
      case WM_LBUTTONUP:
      case WM_RBUTTONUP:
!       if (w32_num_mouse_buttons > 2)
        goto handle_plain_button;
  
        {
***************
*** 3279,3285 ****
          track_mouse_window = hwnd;
        }
      case WM_VSCROLL:
!       if (XINT (Vw32_mouse_move_interval) <= 0
          || (msg == WM_MOUSEMOVE && button_state == 0))
        {
          wmsg.dwModifiers = w32_get_modifiers ();
--- 3286,3292 ----
          track_mouse_window = hwnd;
        }
      case WM_VSCROLL:
!       if (w32_mouse_move_interval <= 0
          || (msg == WM_MOUSEMOVE && button_state == 0))
        {
          wmsg.dwModifiers = w32_get_modifiers ();
***************
*** 3295,3301 ****
        if (saved_mouse_move_msg.msg.hwnd == 0)
        mouse_move_timer =
          SetTimer (hwnd, MOUSE_MOVE_ID,
!                   XINT (Vw32_mouse_move_interval), NULL);
  
        /* Hold onto message for now. */
        saved_mouse_move_msg.msg.hwnd = hwnd;
--- 3302,3308 ----
        if (saved_mouse_move_msg.msg.hwnd == 0)
        mouse_move_timer =
          SetTimer (hwnd, MOUSE_MOVE_ID,
!                   w32_mouse_move_interval, NULL);
  
        /* Hold onto message for now. */
        saved_mouse_move_msg.msg.hwnd = hwnd;
***************
*** 4772,4817 ****
    w32_charset = Fcar (Fcdr (this_entry));
  
    /* Translate Lisp symbol to number.  */
!   if (w32_charset == Qw32_charset_ansi)
      return ANSI_CHARSET;
!   if (w32_charset == Qw32_charset_symbol)
      return SYMBOL_CHARSET;
!   if (w32_charset == Qw32_charset_shiftjis)
      return SHIFTJIS_CHARSET;
!   if (w32_charset == Qw32_charset_hangeul)
      return HANGEUL_CHARSET;
!   if (w32_charset == Qw32_charset_chinesebig5)
      return CHINESEBIG5_CHARSET;
!   if (w32_charset == Qw32_charset_gb2312)
      return GB2312_CHARSET;
!   if (w32_charset == Qw32_charset_oem)
      return OEM_CHARSET;
  #ifdef JOHAB_CHARSET
!   if (w32_charset == Qw32_charset_johab)
      return JOHAB_CHARSET;
!   if (w32_charset == Qw32_charset_easteurope)
      return EASTEUROPE_CHARSET;
!   if (w32_charset == Qw32_charset_turkish)
      return TURKISH_CHARSET;
!   if (w32_charset == Qw32_charset_baltic)
      return BALTIC_CHARSET;
!   if (w32_charset == Qw32_charset_russian)
      return RUSSIAN_CHARSET;
!   if (w32_charset == Qw32_charset_arabic)
      return ARABIC_CHARSET;
!   if (w32_charset == Qw32_charset_greek)
      return GREEK_CHARSET;
!   if (w32_charset == Qw32_charset_hebrew)
      return HEBREW_CHARSET;
!   if (w32_charset == Qw32_charset_vietnamese)
      return VIETNAMESE_CHARSET;
!   if (w32_charset == Qw32_charset_thai)
      return THAI_CHARSET;
!   if (w32_charset == Qw32_charset_mac)
      return MAC_CHARSET;
  #endif /* JOHAB_CHARSET */
  #ifdef UNICODE_CHARSET
!   if (w32_charset == Qw32_charset_unicode)
      return UNICODE_CHARSET;
  #endif
  
--- 4779,4824 ----
    w32_charset = Fcar (Fcdr (this_entry));
  
    /* Translate Lisp symbol to number.  */
!   if (EQ (w32_charset, Qw32_charset_ansi))
      return ANSI_CHARSET;
!   if (EQ (w32_charset, Qw32_charset_symbol))
      return SYMBOL_CHARSET;
!   if (EQ (w32_charset, Qw32_charset_shiftjis))
      return SHIFTJIS_CHARSET;
!   if (EQ (w32_charset, Qw32_charset_hangeul))
      return HANGEUL_CHARSET;
!   if (EQ (w32_charset, Qw32_charset_chinesebig5))
      return CHINESEBIG5_CHARSET;
!   if (EQ (w32_charset, Qw32_charset_gb2312))
      return GB2312_CHARSET;
!   if (EQ (w32_charset, Qw32_charset_oem))
      return OEM_CHARSET;
  #ifdef JOHAB_CHARSET
!   if (EQ (w32_charset, Qw32_charset_johab))
      return JOHAB_CHARSET;
!   if (EQ (w32_charset, Qw32_charset_easteurope))
      return EASTEUROPE_CHARSET;
!   if (EQ (w32_charset, Qw32_charset_turkish))
      return TURKISH_CHARSET;
!   if (EQ (w32_charset, Qw32_charset_baltic))
      return BALTIC_CHARSET;
!   if (EQ (w32_charset, Qw32_charset_russian))
      return RUSSIAN_CHARSET;
!   if (EQ (w32_charset, Qw32_charset_arabic))
      return ARABIC_CHARSET;
!   if (EQ (w32_charset, Qw32_charset_greek))
      return GREEK_CHARSET;
!   if (EQ (w32_charset, Qw32_charset_hebrew))
      return HEBREW_CHARSET;
!   if (EQ (w32_charset, Qw32_charset_vietnamese))
      return VIETNAMESE_CHARSET;
!   if (EQ (w32_charset, Qw32_charset_thai))
      return THAI_CHARSET;
!   if (EQ (w32_charset, Qw32_charset_mac))
      return MAC_CHARSET;
  #endif /* JOHAB_CHARSET */
  #ifdef UNICODE_CHARSET
!   if (EQ (w32_charset, Qw32_charset_unicode))
      return UNICODE_CHARSET;
  #endif
  
***************
*** 4937,4944 ****
  
          /* Look for Same charset and a valid codepage (or non-int
             which means ignore).  */
!         if (w32_charset == charset_type
!             && (!INTEGERP (codepage) || codepage == CP_DEFAULT
                  || IsValidCodePage (XINT (codepage))))
            {
              /* If we don't have a match already, then this is the
--- 4944,4951 ----
  
          /* Look for Same charset and a valid codepage (or non-int
             which means ignore).  */
!         if (EQ (w32_charset, charset_type)
!             && (!INTEGERP (codepage) || XINT (codepage) == CP_DEFAULT
                  || IsValidCodePage (XINT (codepage))))
            {
              /* If we don't have a match already, then this is the
***************
*** 5095,5102 ****
  
          /* Look for Same charset and a valid codepage (or non-int
             which means ignore).  */
!         if (w32_charset == charset_type
!             && (!INTEGERP (codepage) || codepage == CP_DEFAULT
                  || IsValidCodePage (XINT (codepage))))
            {
            retval = Fcons (x_charset, retval);
--- 5102,5109 ----
  
          /* Look for Same charset and a valid codepage (or non-int
             which means ignore).  */
!         if (EQ (w32_charset, charset_type)
!             && (!INTEGERP (codepage) || XINT (codepage) == CP_DEFAULT
                  || IsValidCodePage (XINT (codepage))))
            {
            retval = Fcons (x_charset, retval);
***************
*** 6145,6150 ****
--- 6152,6160 ----
      }
  }
  
+ /* directory-files from dired.c.  */
+ Lisp_Object Fdirectory_files P_((Lisp_Object, Lisp_Object, Lisp_Object, 
Lisp_Object));
+ 
  
  /* Find BDF files in a specified directory.  (use GCPRO when calling,
     as this calls lisp to get a directory listing).  */
***************
*** 6158,6164 ****
      return Qnil;
  
    filelist = Fdirectory_files (directory, Qt,
!                               build_string (".*\\.[bB][dD][fF]"), Qt);
  
    for ( ; CONSP(filelist); filelist = XCDR (filelist))
      {
--- 6168,6174 ----
      return Qnil;
  
    filelist = Fdirectory_files (directory, Qt,
!                              build_string (".*\\.[bB][dD][fF]"), Qt);
  
    for ( ; CONSP(filelist); filelist = XCDR (filelist))
      {
***************
*** 7945,7951 ****
  
  /* Convert a one-element vector style key sequence to a hot key
     definition.  */
! static int
  w32_parse_hot_key (key)
       Lisp_Object key;
  {
--- 7955,7961 ----
  
  /* Convert a one-element vector style key sequence to a hot key
     definition.  */
! static Lisp_Object
  w32_parse_hot_key (key)
       Lisp_Object key;
  {
***************
*** 7977,7983 ****
    if (SYMBOLP (c))
      {
        c = parse_modifiers (c);
!       lisp_modifiers = Fcar (Fcdr (c));
        c = Fcar (c);
        if (!SYMBOLP (c))
        abort ();
--- 7987,7993 ----
    if (SYMBOLP (c))
      {
        c = parse_modifiers (c);
!       lisp_modifiers = XINT (Fcar (Fcdr (c)));
        c = Fcar (c);
        if (!SYMBOLP (c))
        abort ();
***************
*** 8046,8053 ****
--- 8056,8068 ----
  
        /* Notify input thread about new hot-key definition, so that it
         takes effect without needing to switch focus.  */
+ #ifdef USE_LISP_UNION_TYPE
+       PostThreadMessage (dwWindowsThreadId, WM_EMACS_REGISTER_HOT_KEY,
+                        (WPARAM) key.i, 0);
+ #else
        PostThreadMessage (dwWindowsThreadId, WM_EMACS_REGISTER_HOT_KEY,
                         (WPARAM) key, 0);
+ #endif
      }
  
    return key;
***************
*** 8070,8077 ****
      {
        /* Notify input thread about hot-key definition being removed, so
         that it takes effect without needing focus switch.  */
        if (PostThreadMessage (dwWindowsThreadId, WM_EMACS_UNREGISTER_HOT_KEY,
!                            (WPARAM) XINT (XCAR (item)), (LPARAM) item))
        {
          MSG msg;
          GetMessage (&msg, NULL, WM_EMACS_DONE, WM_EMACS_DONE);
--- 8085,8098 ----
      {
        /* Notify input thread about hot-key definition being removed, so
         that it takes effect without needing focus switch.  */
+ #ifdef USE_LISP_UNION_TYPE
+       if (PostThreadMessage (dwWindowsThreadId, WM_EMACS_UNREGISTER_HOT_KEY,
+                            (WPARAM) XINT (XCAR (item)), (LPARAM) item.i))
+ #else
        if (PostThreadMessage (dwWindowsThreadId, WM_EMACS_UNREGISTER_HOT_KEY,
!                            (WPARAM) XINT (XCAR (item)), (LPARAM) item.i))
! 
! #endif
        {
          MSG msg;
          GetMessage (&msg, NULL, WM_EMACS_DONE, WM_EMACS_DONE);
***************
*** 8144,8151 ****
    if (!dwWindowsThreadId)
      return make_number (w32_console_toggle_lock_key (vk_code, new_state));
  
    if (PostThreadMessage (dwWindowsThreadId, WM_EMACS_TOGGLE_LOCK_KEY,
!                        (WPARAM) vk_code, (LPARAM) new_state))
      {
        MSG msg;
        GetMessage (&msg, NULL, WM_EMACS_DONE, WM_EMACS_DONE);
--- 8165,8177 ----
    if (!dwWindowsThreadId)
      return make_number (w32_console_toggle_lock_key (vk_code, new_state));
  
+ #ifdef USE_LISP_UNION_TYPE
+   if (PostThreadMessage (dwWindowsThreadId, WM_EMACS_TOGGLE_LOCK_KEY,
+                        (WPARAM) vk_code, (LPARAM) new_state.i))
+ #else
    if (PostThreadMessage (dwWindowsThreadId, WM_EMACS_TOGGLE_LOCK_KEY,
!                        (WPARAM) vk_code, (LPARAM) new_state.i))
! #endif
      {
        MSG msg;
        GetMessage (&msg, NULL, WM_EMACS_DONE, WM_EMACS_DONE);
***************
*** 8424,8432 ****
  When nil, Emacs will translate the alt key to the Alt modifier, and not Meta. 
 */);
    Vw32_alt_is_meta = Qt;
  
!   DEFVAR_INT ("w32-quit-key", &Vw32_quit_key,
!             doc: /* If non-zero, the virtual key code for an alternative quit 
key.  */);
!   XSETINT (Vw32_quit_key, 0);
  
    DEFVAR_LISP ("w32-pass-lwindow-to-system",
               &Vw32_pass_lwindow_to_system,
--- 8450,8458 ----
  When nil, Emacs will translate the alt key to the Alt modifier, and not Meta. 
 */);
    Vw32_alt_is_meta = Qt;
  
!   DEFVAR_INT ("w32-quit-key", &w32_quit_key,
!              doc: /* If non-zero, the virtual key code for an alternative 
quit key.  */);
!   w32_quit_key = 0;
  
    DEFVAR_LISP ("w32-pass-lwindow-to-system",
               &Vw32_pass_lwindow_to_system,
***************
*** 8440,8448 ****
  When non-nil, the Start menu is opened by tapping the key.  */);
    Vw32_pass_rwindow_to_system = Qt;
  
!   DEFVAR_INT ("w32-phantom-key-code",
               &Vw32_phantom_key_code,
!             doc: /* Virtual key code used to generate \"phantom\" key presses.
  Value is a number between 0 and 255.
  
  Phantom key presses are generated in order to stop the system from
--- 8466,8474 ----
  When non-nil, the Start menu is opened by tapping the key.  */);
    Vw32_pass_rwindow_to_system = Qt;
  
!   DEFVAR_LISP ("w32-phantom-key-code",
               &Vw32_phantom_key_code,
!              doc: /* Virtual key code used to generate \"phantom\" key 
presses.
  Value is a number between 0 and 255.
  
  Phantom key presses are generated in order to stop the system from
***************
*** 8450,8456 ****
  `w32-pass-rwindow-to-system' is nil.  */);
    /* Although 255 is technically not a valid key code, it works and
       means that this hack won't interfere with any real key code.  */
!   Vw32_phantom_key_code = 255;
  
    DEFVAR_LISP ("w32-enable-num-lock",
               &Vw32_enable_num_lock,
--- 8476,8482 ----
  `w32-pass-rwindow-to-system' is nil.  */);
    /* Although 255 is technically not a valid key code, it works and
       means that this hack won't interfere with any real key code.  */
!   XSETINT (Vw32_phantom_key_code, 255);
  
    DEFVAR_LISP ("w32-enable-num-lock",
               &Vw32_enable_num_lock,
***************
*** 8505,8525 ****
    Vw32_enable_palette = Qt;
  
    DEFVAR_INT ("w32-mouse-button-tolerance",
!             &Vw32_mouse_button_tolerance,
              doc: /* Analogue of double click interval for faking middle mouse 
events.
  The value is the minimum time in milliseconds that must elapse between
  left/right button down events before they are considered distinct events.
  If both mouse buttons are depressed within this interval, a middle mouse
  button down event is generated instead.  */);
!   XSETINT (Vw32_mouse_button_tolerance, GetDoubleClickTime () / 2);
  
    DEFVAR_INT ("w32-mouse-move-interval",
!             &Vw32_mouse_move_interval,
              doc: /* Minimum interval between mouse move events.
  The value is the minimum time in milliseconds that must elapse between
  successive mouse move (or scroll bar drag) events before they are
  reported as lisp events.  */);
!   XSETINT (Vw32_mouse_move_interval, 0);
  
    DEFVAR_BOOL ("w32-pass-extra-mouse-buttons-to-system",
               &w32_pass_extra_mouse_buttons_to_system,
--- 8531,8551 ----
    Vw32_enable_palette = Qt;
  
    DEFVAR_INT ("w32-mouse-button-tolerance",
!             &w32_mouse_button_tolerance,
              doc: /* Analogue of double click interval for faking middle mouse 
events.
  The value is the minimum time in milliseconds that must elapse between
  left/right button down events before they are considered distinct events.
  If both mouse buttons are depressed within this interval, a middle mouse
  button down event is generated instead.  */);
!   w32_mouse_button_tolerance = GetDoubleClickTime () / 2;
  
    DEFVAR_INT ("w32-mouse-move-interval",
!             &w32_mouse_move_interval,
              doc: /* Minimum interval between mouse move events.
  The value is the minimum time in milliseconds that must elapse between
  successive mouse move (or scroll bar drag) events before they are
  reported as lisp events.  */);
!   w32_mouse_move_interval = 0;
  
    DEFVAR_BOOL ("w32-pass-extra-mouse-buttons-to-system",
               &w32_pass_extra_mouse_buttons_to_system,
***************
*** 8800,8808 ****
      GetProcAddress (user32_lib, "GetClipboardSequenceNumber");
  
    DEFVAR_INT ("w32-ansi-code-page",
!             &Vw32_ansi_code_page,
              doc: /* The ANSI code page used by the system.  */);
!   XSETINT (Vw32_ansi_code_page, GetACP ());
  }
  
  #undef abort
--- 8826,8834 ----
      GetProcAddress (user32_lib, "GetClipboardSequenceNumber");
  
    DEFVAR_INT ("w32-ansi-code-page",
!             &w32_ansi_code_page,
              doc: /* The ANSI code page used by the system.  */);
!   w32_ansi_code_page = GetACP ();
  }
  
  #undef abort




reply via email to

[Prev in Thread] Current Thread [Next in Thread]