FarNameToInputRecord
Функция
FSF.FarNameToInputRecord
конвертирует строку из кода клавиш с внутренним форматом клавиш Far Manager'а в INPUT_RECORD.
BOOL WINAPI FarNameToInputRecord( const wchar_t *Name, INPUT_RECORD *Key );
Параметры
Name
Символьное представление клавиши. Функция ожидает строку по спецификации:
- Предопределённые сочетания (см. keyboard.cpp::FKeys1[])
- Опциональные модификаторы ("Alt", "RAlt", "Ctrl", "RCtrl", "Shift") и 1 символ, например, "AltD" или "CtrlC"
- "Alt" (или "RAlt") и 5 десятичных цифр (с ведущими нулями)
- "Spec" и 5 десятичных цифр (с ведущими нулями)
- "Oem" и 5 десятичных цифр (с ведущими нулями)
- только модификаторы ("Alt", "RAlt", "Ctrl", "RCtrl", "Shift")
Key
Указатель на структуру INPUT_RECORD куда будет помещен результат преобразования.
Возвращаемое значение
В случае успеха функция возвращает
TRUE
.
Примечание
- Если в комбинации клавиш присутствует Ctrl или Alt и клавиша - "буква", то "буква"
принудительно приводится к верхнему регистру. Например,
FarNameToInputRecord("CtrlAltz")
вернётKEY_CTRLALTZ
. - Если в комбинации клавиш присутствует Ctrl или Alt и клавиша - "буква национального алфавита", то "буква"
принудительно заменяется на клавиатурный эквивалент и приводится к верхнему регистру. Например,
FarNameToInputRecord("CtrlУ")
вернётKEY_CTRLE
. - Комбинации клавиш Shift-"буква" преобразуется к "БУКВА" (т.е. удаляется компонента Shift и "буква" переводится в верхний регистр).