Mercurial > emacs
view src/=mach2.h @ 23681:af0276da2059
(Vw32_pass_optional_keys_to_system): Variable removed.
(Vw32_pass_lwindow_to_system):
(Vw32_pass_rwindow_to_system):
(Vw32_lwindow_modifier):
(Vw32_rwindow_modifier):
(Vw32_apps_modifier):
(Vw32_enable_num_lock):
(Vw32_enable_caps_lock):
(Vw32_scroll_lock_modifier): New variables.
(modifier_set): Return toggle state for Scroll Lock.
(w32_key_to_modifier): New function. Returns chosen modifier bit
for given key.
(w32_get_modifiers): Returns modifier flags for
non-keyboard input events.
(construct_console_modifiers): Renamed from construct_modifiers;
recognize Windows and Apps keys as modifiers.
(w32_get_key_modifiers): New function. Returns modifier flags for
keyboard input events.
(map_keypad_keys): Make non-static. Use second arg as extended
flag.
(w32_grabbed_keys): New variable.
(HOTKEY, HOTKEY_ID, HOTKEY_VK_CODE, HOTKEY_MODIFIERS): New macros.
(register_hot_keys):
(unregister_hot_keys):
(lookup_vk_code):
(w32_parse_hot_key):
(Fw32_register_hot_key):
(Fw32_unregister_hot_key):
(Fw32_registered_hot_keys):
(Fw32_reconstruct_hot_key): New functions to support hotkeys.
(post_character_message): New function.
(w32_msg_pump): Handle new messages for using hotkeys and changing
keyboard layout/language.
(w32_wnd_proc): Major rework of keyboard input handling:
optionally recognize Windows keys and Apps key as modifiers;
optionally treat NumLock, CapsLock and ScrollLock as function
keys; let system translate keystrokes to characters to avoid
system bugs relating to dead-key handling; preserve shift
distinction for control characters; forward keyboard
layout/language changes to lisp; detect and convert hot-key events
to normal keystrokes.
(syms_of_w32fns): Register new functions and variables.
(w32_last_error): New function for use in debugging.
author | Geoff Voelker <voelker@cs.washington.edu> |
---|---|
date | Tue, 10 Nov 1998 20:54:46 +0000 |
parents | 7be0f0a02725 |
children |
line wrap: on
line source
/* Definitions for Emacs running on Mach version 2 (non-kernelized system). Copyright (C) 1990 Free Software Foundation, Inc. This file is part of GNU Emacs. GNU Emacs is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Emacs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 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, 675 Mass Ave, Cambridge, MA 02139, USA. */ #include "bsd4-3.h" /* SYSTEM_TYPE should indicate the kind of system you are using. It sets the Lisp variable system-type. We'll need to undo the bsd one. */ #undef SYSTEM_TYPE #define SYSTEM_TYPE "next-mach" #define LD_SWITCH_SYSTEM -X -noseglinkedit /* Don't use -lc on the NeXT. */ #define LIB_STANDARD -lsys_s #define LIB_MATH -lm #define environ _environ #define START_FILES pre-crt0.o #define UNEXEC unexnext.o /* start_of_text isn't actually used, so make it compile without error. */ #define TEXT_START 0 /* This seems to be right for end_of_text, but it may not be used anyway. */ #define TEXT_END get_etext () /* This seems to be right for end_of_data, but it may not be used anyway. */ #define DATA_END get_edata () /* Defining KERNEL_FILE causes lossage because sys/file.h stupidly gets confused by it. */ #undef KERNEL_FILE