[amirus-dev] Хоткеи

  • From: AmiS <amis@xxxxxxxxxxxx>
  • To: <amirus-dev@xxxxxxxxxxxxx>
  • Date: Fri, 21 Feb 2003 23:17:57 +0300

Hello, 

У меня такое предложение поповоду клавиш которые мы будем перехватывать. 
проанализировав
ситуацию я сделал вывод что как правило переключают либо комбинацией нескольких 
служебных клавиш
либо комбинацией служебных и одной обычной (пробел не служебная).
Так что предлагаю всё это делать по такому принципу.
у меня в стуктуре будет передаваться байт код для поля Qualifier (младшая 
часть).
Это покроет следующие комбинации клафиш:
#define IEQUALIFIER_LSHIFT        0x0001
#define IEQUALIFIER_RSHIFT        0x0002
#define IEQUALIFIER_CAPSLOCK        0x0004
#define IEQUALIFIER_CONTROL        0x0008
#define IEQUALIFIER_LALT        0x0010
#define IEQUALIFIER_RALT        0x0020
#define IEQUALIFIER_LCOMMAND        0x0040
#define IEQUALIFIER_RCOMMAND        0x0080

остальное нам и не нужно.
а что касается клавиши обычноя для неё всё просто указываем код клавиши в 
структуре.
Если юзвер переключает без обычной клавиши туда пишем 0xff - такого кода нету.
Это всё. если всё понятно и возвражений нет я делаю.

Нужно вот ещё что сделать... читалку из конфига чтобы она из надписи типа 
LSHIFT  - делала
в цифре 0x01
из LSHIFT+RSHIFT 0x03
и так далее
из простыхз клавиш понятно делаем её код. кстати можно просто код писать и не 
парится.
а вообще можно совсем просто. Один фиг будем делать прогу для конфига.
предлагаю вот что:
В конфиге (текстовом)
делаем 2 записи:
QUALIFIER=0x03
KEY=

Этот пример делает 2 пробела.
или

QUALIFIER=0x01
KEY=0x00

это получается LSHIFT + кнопка с тильдой.

помоему нормально.
Kind regards


Other related posts: