зеркало из https://github.com/github/ruby.git
console.c: undefined vk
* ext/io/console/console.c (console_key_pressed_p): raise undefined virtual key code. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51316 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
Родитель
2deaf03401
Коммит
09389b47d2
|
@ -698,6 +698,7 @@ console_cursor_set(VALUE io, VALUE cpos)
|
|||
return console_goto(io, RARRAY_AREF(cpos, 0), RARRAY_AREF(cpos, 1));
|
||||
}
|
||||
|
||||
#include "win32_vk.h"
|
||||
#include "win32_vk.inc"
|
||||
|
||||
static VALUE
|
||||
|
@ -717,8 +718,9 @@ console_key_pressed_p(VALUE io, VALUE k)
|
|||
StringValueCStr(k);
|
||||
}
|
||||
t = console_win32_vk(RSTRING_PTR(k), RSTRING_LEN(k));
|
||||
if (!t) rb_raise(rb_eArgError, "unknown virtual key code: %"PRIsVALUE, k);
|
||||
vk = t->vk;
|
||||
if (!t || (vk = (short)t->vk) == -1) {
|
||||
rb_raise(rb_eArgError, "unknown virtual key code: %"PRIsVALUE, k);
|
||||
}
|
||||
}
|
||||
return GetKeyState(vk) & 0x80 ? Qtrue : Qfalse;
|
||||
}
|
||||
|
|
|
@ -1,16 +1,24 @@
|
|||
$(OBJS): $(HDRS) $(ruby_headers) \
|
||||
$(VK_HEADER) \
|
||||
$(VK_HEADER) $(VK_HEADER:.chksum=.h) \
|
||||
$(hdrdir)/ruby/io.h \
|
||||
$(hdrdir)/ruby/encoding.h \
|
||||
$(hdrdir)/ruby/oniguruma.h
|
||||
|
||||
win32_vk.inc: win32_vk.list
|
||||
|
||||
win32_vk.h: win32_vk.list
|
||||
|
||||
.list.inc:
|
||||
gperf --ignore-case -E -C -P -p -j1 -i 1 -g -o -t -K ofs -N console_win32_vk -k* $< \
|
||||
| sed 's/(int)(long)&((\(struct stringpool_t\) *\*)0)->\(stringpool_[a-z0-9]*\)/offsetof(\1, \2)/g' \
|
||||
> $(@F)
|
||||
|
||||
.list.h:
|
||||
$(RUBY) -anF, \
|
||||
-e '(n=$$F[1]) and (n.strip!; /\AVK_/=~n) and' \
|
||||
-e 'puts %[#ifndef #{n}\n# define #{n} (unsigned short)-1\n#endif]' \
|
||||
$< > $@
|
||||
|
||||
.SUFFIXES: .chksum .list .inc
|
||||
|
||||
.list.chksum:
|
||||
|
|
|
@ -0,0 +1,480 @@
|
|||
#ifndef VK_LBUTTON
|
||||
# define VK_LBUTTON (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_RBUTTON
|
||||
# define VK_RBUTTON (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_CANCEL
|
||||
# define VK_CANCEL (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_MBUTTON
|
||||
# define VK_MBUTTON (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_XBUTTON1
|
||||
# define VK_XBUTTON1 (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_XBUTTON2
|
||||
# define VK_XBUTTON2 (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_BACK
|
||||
# define VK_BACK (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_TAB
|
||||
# define VK_TAB (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_CLEAR
|
||||
# define VK_CLEAR (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_RETURN
|
||||
# define VK_RETURN (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_SHIFT
|
||||
# define VK_SHIFT (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_CONTROL
|
||||
# define VK_CONTROL (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_MENU
|
||||
# define VK_MENU (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_PAUSE
|
||||
# define VK_PAUSE (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_CAPITAL
|
||||
# define VK_CAPITAL (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_KANA
|
||||
# define VK_KANA (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_HANGEUL
|
||||
# define VK_HANGEUL (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_HANGUL
|
||||
# define VK_HANGUL (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_JUNJA
|
||||
# define VK_JUNJA (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_FINAL
|
||||
# define VK_FINAL (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_HANJA
|
||||
# define VK_HANJA (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_KANJI
|
||||
# define VK_KANJI (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_ESCAPE
|
||||
# define VK_ESCAPE (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_CONVERT
|
||||
# define VK_CONVERT (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_NONCONVERT
|
||||
# define VK_NONCONVERT (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_ACCEPT
|
||||
# define VK_ACCEPT (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_MODECHANGE
|
||||
# define VK_MODECHANGE (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_SPACE
|
||||
# define VK_SPACE (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_PRIOR
|
||||
# define VK_PRIOR (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_NEXT
|
||||
# define VK_NEXT (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_END
|
||||
# define VK_END (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_HOME
|
||||
# define VK_HOME (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_LEFT
|
||||
# define VK_LEFT (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_UP
|
||||
# define VK_UP (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_RIGHT
|
||||
# define VK_RIGHT (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_DOWN
|
||||
# define VK_DOWN (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_SELECT
|
||||
# define VK_SELECT (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_PRINT
|
||||
# define VK_PRINT (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_EXECUTE
|
||||
# define VK_EXECUTE (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_SNAPSHOT
|
||||
# define VK_SNAPSHOT (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_INSERT
|
||||
# define VK_INSERT (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_DELETE
|
||||
# define VK_DELETE (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_HELP
|
||||
# define VK_HELP (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_LWIN
|
||||
# define VK_LWIN (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_RWIN
|
||||
# define VK_RWIN (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_APPS
|
||||
# define VK_APPS (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_SLEEP
|
||||
# define VK_SLEEP (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_NUMPAD0
|
||||
# define VK_NUMPAD0 (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_NUMPAD1
|
||||
# define VK_NUMPAD1 (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_NUMPAD2
|
||||
# define VK_NUMPAD2 (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_NUMPAD3
|
||||
# define VK_NUMPAD3 (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_NUMPAD4
|
||||
# define VK_NUMPAD4 (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_NUMPAD5
|
||||
# define VK_NUMPAD5 (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_NUMPAD6
|
||||
# define VK_NUMPAD6 (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_NUMPAD7
|
||||
# define VK_NUMPAD7 (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_NUMPAD8
|
||||
# define VK_NUMPAD8 (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_NUMPAD9
|
||||
# define VK_NUMPAD9 (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_MULTIPLY
|
||||
# define VK_MULTIPLY (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_ADD
|
||||
# define VK_ADD (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_SEPARATOR
|
||||
# define VK_SEPARATOR (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_SUBTRACT
|
||||
# define VK_SUBTRACT (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_DECIMAL
|
||||
# define VK_DECIMAL (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_DIVIDE
|
||||
# define VK_DIVIDE (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_F1
|
||||
# define VK_F1 (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_F2
|
||||
# define VK_F2 (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_F3
|
||||
# define VK_F3 (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_F4
|
||||
# define VK_F4 (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_F5
|
||||
# define VK_F5 (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_F6
|
||||
# define VK_F6 (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_F7
|
||||
# define VK_F7 (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_F8
|
||||
# define VK_F8 (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_F9
|
||||
# define VK_F9 (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_F10
|
||||
# define VK_F10 (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_F11
|
||||
# define VK_F11 (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_F12
|
||||
# define VK_F12 (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_F13
|
||||
# define VK_F13 (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_F14
|
||||
# define VK_F14 (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_F15
|
||||
# define VK_F15 (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_F16
|
||||
# define VK_F16 (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_F17
|
||||
# define VK_F17 (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_F18
|
||||
# define VK_F18 (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_F19
|
||||
# define VK_F19 (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_F20
|
||||
# define VK_F20 (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_F21
|
||||
# define VK_F21 (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_F22
|
||||
# define VK_F22 (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_F23
|
||||
# define VK_F23 (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_F24
|
||||
# define VK_F24 (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_NUMLOCK
|
||||
# define VK_NUMLOCK (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_SCROLL
|
||||
# define VK_SCROLL (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_OEM_NEC_EQUAL
|
||||
# define VK_OEM_NEC_EQUAL (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_OEM_FJ_JISHO
|
||||
# define VK_OEM_FJ_JISHO (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_OEM_FJ_MASSHOU
|
||||
# define VK_OEM_FJ_MASSHOU (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_OEM_FJ_TOUROKU
|
||||
# define VK_OEM_FJ_TOUROKU (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_OEM_FJ_LOYA
|
||||
# define VK_OEM_FJ_LOYA (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_OEM_FJ_ROYA
|
||||
# define VK_OEM_FJ_ROYA (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_LSHIFT
|
||||
# define VK_LSHIFT (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_RSHIFT
|
||||
# define VK_RSHIFT (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_LCONTROL
|
||||
# define VK_LCONTROL (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_RCONTROL
|
||||
# define VK_RCONTROL (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_LMENU
|
||||
# define VK_LMENU (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_RMENU
|
||||
# define VK_RMENU (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_BROWSER_BACK
|
||||
# define VK_BROWSER_BACK (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_BROWSER_FORWARD
|
||||
# define VK_BROWSER_FORWARD (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_BROWSER_REFRESH
|
||||
# define VK_BROWSER_REFRESH (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_BROWSER_STOP
|
||||
# define VK_BROWSER_STOP (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_BROWSER_SEARCH
|
||||
# define VK_BROWSER_SEARCH (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_BROWSER_FAVORITES
|
||||
# define VK_BROWSER_FAVORITES (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_BROWSER_HOME
|
||||
# define VK_BROWSER_HOME (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_VOLUME_MUTE
|
||||
# define VK_VOLUME_MUTE (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_VOLUME_DOWN
|
||||
# define VK_VOLUME_DOWN (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_VOLUME_UP
|
||||
# define VK_VOLUME_UP (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_MEDIA_NEXT_TRACK
|
||||
# define VK_MEDIA_NEXT_TRACK (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_MEDIA_PREV_TRACK
|
||||
# define VK_MEDIA_PREV_TRACK (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_MEDIA_STOP
|
||||
# define VK_MEDIA_STOP (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_MEDIA_PLAY_PAUSE
|
||||
# define VK_MEDIA_PLAY_PAUSE (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_LAUNCH_MAIL
|
||||
# define VK_LAUNCH_MAIL (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_LAUNCH_MEDIA_SELECT
|
||||
# define VK_LAUNCH_MEDIA_SELECT (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_LAUNCH_APP1
|
||||
# define VK_LAUNCH_APP1 (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_LAUNCH_APP2
|
||||
# define VK_LAUNCH_APP2 (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_OEM_1
|
||||
# define VK_OEM_1 (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_OEM_PLUS
|
||||
# define VK_OEM_PLUS (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_OEM_COMMA
|
||||
# define VK_OEM_COMMA (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_OEM_MINUS
|
||||
# define VK_OEM_MINUS (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_OEM_PERIOD
|
||||
# define VK_OEM_PERIOD (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_OEM_2
|
||||
# define VK_OEM_2 (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_OEM_3
|
||||
# define VK_OEM_3 (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_OEM_4
|
||||
# define VK_OEM_4 (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_OEM_5
|
||||
# define VK_OEM_5 (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_OEM_6
|
||||
# define VK_OEM_6 (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_OEM_7
|
||||
# define VK_OEM_7 (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_OEM_8
|
||||
# define VK_OEM_8 (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_OEM_AX
|
||||
# define VK_OEM_AX (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_OEM_102
|
||||
# define VK_OEM_102 (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_ICO_HELP
|
||||
# define VK_ICO_HELP (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_ICO_00
|
||||
# define VK_ICO_00 (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_PROCESSKEY
|
||||
# define VK_PROCESSKEY (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_ICO_CLEAR
|
||||
# define VK_ICO_CLEAR (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_PACKET
|
||||
# define VK_PACKET (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_OEM_RESET
|
||||
# define VK_OEM_RESET (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_OEM_JUMP
|
||||
# define VK_OEM_JUMP (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_OEM_PA1
|
||||
# define VK_OEM_PA1 (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_OEM_PA2
|
||||
# define VK_OEM_PA2 (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_OEM_PA3
|
||||
# define VK_OEM_PA3 (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_OEM_WSCTRL
|
||||
# define VK_OEM_WSCTRL (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_OEM_CUSEL
|
||||
# define VK_OEM_CUSEL (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_OEM_ATTN
|
||||
# define VK_OEM_ATTN (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_OEM_FINISH
|
||||
# define VK_OEM_FINISH (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_OEM_COPY
|
||||
# define VK_OEM_COPY (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_OEM_AUTO
|
||||
# define VK_OEM_AUTO (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_OEM_ENLW
|
||||
# define VK_OEM_ENLW (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_OEM_BACKTAB
|
||||
# define VK_OEM_BACKTAB (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_ATTN
|
||||
# define VK_ATTN (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_CRSEL
|
||||
# define VK_CRSEL (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_EXSEL
|
||||
# define VK_EXSEL (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_EREOF
|
||||
# define VK_EREOF (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_PLAY
|
||||
# define VK_PLAY (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_ZOOM
|
||||
# define VK_ZOOM (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_NONAME
|
||||
# define VK_NONAME (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_PA1
|
||||
# define VK_PA1 (unsigned short)-1
|
||||
#endif
|
||||
#ifndef VK_OEM_CLEAR
|
||||
# define VK_OEM_CLEAR (unsigned short)-1
|
||||
#endif
|
Загрузка…
Ссылка в новой задаче