[Bf-committers] Re: Bf-committers Digest, Vol 1, Issue 903

Luke llenhart at digipen.edu
Wed Sep 1 05:16:43 CEST 2004


It's trivial to check what key was pressed on win32 without reguard to
"system functions" (such as copy/paste).  Use DirectInput.  This works on
win98 fine, and probably 95 as well.  However I don't know really anything
about how the cross-platform stuff in blender is done, so no idea how
difficult that would be.

---- in reply to: ----

Jean-Luc Peurière wrote:
>
> Le 30 août 04, à 19:32, Florian Eggenberger a écrit :
>
>> Kent Mein wrote:
>>
>>> In reply to Florian Eggenberger (florian.eggenberger at gmx.net):
>>>
>>>> The bug is caused by a cool windows feature! Shift+Numpad0 is the
>>>> same as shift+insert. This combo is a system combo for inserting
>>>> clipboard content. Instead of VK_NUMPAD0 the virtual key VK_INSERT
>>>> is fired when shift is pressed.
>>>>
>>>> I couldn't find any solution how to change that or get more states
>>>> to distinguish the keys. Maybe I'm wrong. Has anyone an idea how to
>>>> change virtual keys without writing a device driver?
>>>>
>>>> I guess this will be a "known limitation on windows"
>>>>
>>> This isn't a fix but I added this to the Ghost refactoring wiki page..
>>> http://wiki.blender.org/bin/view.pl/Blenderdev/GhostRefactoring
>>> Hopefully it will be taken care of with that eventually.
>>> Kent
>>
>>
>> This is not a GHOST or Blender problem. It is a Windows problem. I
>> tested that behaviour with a very simple "hello world" app. Same
>> results.
>
>
> can't we check the raw scancode ?
>
> I don't know *at all* the window code part
>


sirdude kicked me in the right direction. Thanks! There is a way how to
intecept raw codes. But unfortunately only NT4 and above.... I guess
there are still too much win9x users. (no idea how a current blender
performs on a win9x oven).. And hooking raw codes is somewhat an
overkill for just one hotkey. So far this is one exception to the usual
event handling on windows.

Changing the hotkey is not my problem. Guess I could solve the problem
with a lowlevel hook... This would not affect Blender code, just Win32
GHOST. But this is a bigger change in GHOST and so I prefer to
investigate further and then report again. stay tuned.

Will ask some Win32 guru as soon as possible.

Florian



More information about the Bf-committers mailing list