5.12. Горячие клавиши#
Note
Статья находится в стадии написания.
5.12.1. Назначение#
Термин Горячие клавиши является собирательным названием сочетаний клавиш на клавиатуре, нажимаемым пользователем одновременно. Является способом быстро, без использования мыши, вызвать на выполнение некоторый предопределенный функционал. Такой как наиболее часто используемые операции или действия.
Если сочетание клавиш состоит только из одной клавиши, то оно записывается просто как название этой клавиши. Например: Esc - клавиша “escape”.
Если сочетание клавиш состоит из более чем одной клавиши, то оно записывается как названия всех клавиш, составляющих сочетание, разделенных знаком плюс. Например: Ctrl+B - одновременное нажатие клавиш Control и латинской B.
Если в сочетании используется клавиша, расположенная на дополнительной клавиатуре, то в ее названии указывается модификатор Num. Например: Num + - клавиша “плюс” на дополнительной клавиатуре.
Note
Если конкретное сочетание Горячих клавиш не назначено в GlobalServer, или не назначено прикладным разработчиком для активной выборки, или назначено в GlobalServer, но переназначено на пустое значение прикладным программистом для активной выборки и, одновременно, не назначено в меню и тулбаре приложения, то нажатие пользователем такого сочетания будет обработано браузером, согласно его предпочтениям.
5.12.2. Список горячих клавиш#
Фреймворк предоставляет следующие виды горячих клавиш:
Типовые горячие клавиши (горячие клавиши для некоторых стандартных операций)
Глобальные горячие клавиши (горячие клавиши, реализованные на низких уровнях сервера приложений и фреймворка)
Горячие клавиши приложения (горячие клавиши, назначенные операциям в прикладных модулях)
5.12.2.1. Типовые горячие клавиши#
Горячая клавиша |
Описание |
Мнемоника |
---|---|---|
Esc |
Закрыть форму. |
CLOSEFORMCANCEL |
F1 |
Подсказка. |
HELP |
F2 |
Закрыть форму с сохранением. |
CLOSEFORMOK |
F4 |
Открыть карточку редактирования. |
CARDEDIT |
F11 |
Детализация. |
SHOWTAB |
F12 |
Обновить. |
REFRESH |
Ctrl+B |
Отменить все изменения на форме. |
CANCELFORM |
Ctrl+S |
Сохранить изменения. |
SAVEFORM |
Ctrl+Alt+I |
Показать информацию об объекте. |
SHOWABOUTOBJECT |
Shift+Ctrl+Alt+A |
Открыть диалог аудита объекта. |
SHOWAUDITOBJECT |
Shift+Ctrl+Alt+F |
Открыть диалог аудита открытия форм. |
SHOWAUDITSEL |
5.12.2.2. Глобальные горячие клавиши#
Горячая клавиша |
Описание |
Мнемоника |
---|---|---|
Esc |
Отмена редактирования (в состоянии редактирования). Закрытие формы/диалога. |
HK_CANCELEDIT |
Ins |
Выбрать в мультиселекте. |
HK_MULTI_SELECT |
Enter |
Начать редактирование. |
HK_STARTEDIT |
Enter |
Закончить редактирование. |
HK_ENDEDIT |
F7 |
Применить универсальный фильтр. |
HK_UNI_FLT_OK |
Num - |
Свернуть дерево. |
HK_COLLAPSE_TREE |
Ctrl+Enter |
Открыть в редакторе. |
HK_SHOWEDITOR |
Ctrl+- |
Закрыть текущую ветку дерева. |
HK_TREE_CLOSE_CURRENT_NODE |
Ctrl+= |
Открыть текущий узел дерева. |
HK_TREE_OPEN_CURRENT_NODE |
Ctrl+Del |
Скрыть колонку. |
HK_HIDE_COLUMN |
Ctrl+F7 |
Отфильтровать по выбранной ячейке. |
HK_FILTER_BY_FOCUSED_CELL |
Ctrl+F9 |
Выполнение отладочного макроса. |
HK_EXECUTE_DEBUG_MACRO |
Ctrl+L |
Отобразить все колонки. |
HK_ALL_COLUMNS_ON_SCREEN |
Ctrl+O |
Открыть универсальный фильтр. |
HK_UNI_FLT_OPEN |
Ctrl+R |
Сервис замены значений. |
HK_REPLACE_VALUE_SERVICE |
Ctrl+P |
Вывести на печать. |
HK_PRINT_GRID |
Ctrl+W |
Пересчитать ширину колонок. |
HK_CALC_COLUMNS_WIDTH |
Ctrl+Alt+= |
Открыть текущую ветку дерева. |
HK_TREE_OPEN_CURRENT_SUBNODE |
Ctrl+Alt+Left |
Зафиксировать по левому краю. |
HK_FIX_AT_LEFT_SIDE |
Ctrl+Alt+Right |
Зафиксировать по правому краю. |
HK_FIX_AT_RIGHT_SIDE |
Ctrl+Alt+F7 |
Отчистить универсальный фильтр. |
HK_UNI_FLT_CLEAR |
Ctrl+Alt+A |
Применить автофильтр. |
HK_AUTO_FILTER_GRID |
Ctrl+Alt+D |
Сбросить пользовательские настройки. |
HK_RESET_USER_SETTINGS |
Ctrl+Alt+F |
Отфильтровать выбранные записи. |
HK_FILTER_SELECTED_RECORDS |
Ctrl+Alt+G |
Область группировки. |
HK_GROUPING_ZONE_GRID |
Ctrl+Alt+H |
Настройка видимости колонок. |
HK_COLUMNS_VISIBILITY_TUNING |
Ctrl+Alt+T |
Полностью раскрыть дерево. |
HK_FULLEXPAND_TREE |
Ctrl+Alt+U |
Загрузить пользовательские настройки. |
HK_USER_SETTING_LOAD |
Shift+Ctrl+F7 |
Отменить универсальный фильтр. |
HK_UNI_FLT_CANCEL |
Shift+Ctrl+= |
Сумма значений по выделенным записям |
HK_CALC_SUMM_OF_SEL_REC |
Shift+Ctrl+F |
Открыть редактор фильтра. |
HK_FILTER_BULDER_GRID |
Shift+Ctrl+O |
Открыть общие настройки универсального фильтра. |
HK_UNI_FLT_OPENPUBLIC |
Shift+Ctrl+S |
Сохранить как… |
HK_SAVE_AS |
Shift+Ctrl+T |
Показать промежуточные итоги. |
HK_INTERMEDIATE_RESULTS_GRID |
Shift+Ctrl+Alt+D |
Открытие диалога отладчика. |
HK_DEBUG_WINDOW |
Shift+Ctrl+Alt+W |
Открытие диалога отладчика. |
HK_DEBUG_WINDOW_2 |
Shift+Ctrl+Alt+V |
Открытие текущего Avi-файла в среде разработки. |
HK_SELECTION_CARD |
Описание |
Мнемоника |
---|---|
Перейти в подвал. |
HK_FOOTER_ZONE |
Сохранить универсальный фильтр как. |
HK_UNI_FLT_SAVEAS |
Свернуть дерево. |
HK_COLLAPSE_TREE |
Получить все записи. |
PMI_FETCH_ALL_RECORDS_GRID |
Сохранить пользовательские настройки. |
HK_USER_SETTING_SAVE |
Выбрать помеченные записи. |
HK_SELECT_MARK_RECORDS_GRID |
Сохранить универсальный фильтр. |
HK_UNI_FLT_SAVE |
Сохранить пользовательские настройки как. |
HK_USER_SETTING_SAVEAS |
5.12.3. Порядок обработки нажатия горячих клавиш#
Основная стратегия обработки нажатия пользователем горячей клавиши:
Глобальные горячие клавиши
Горячие клавиши операций активного фрейма (типовые и назначенные в приложении)
Горячие клавиши операций фрейма мастер-выборки, если таковые фреймы есть (типовые и назначенные в приложении)
Если сочетание найдено, то выполняется соответствующая операция и поиск прекращается.
Если сочетание клавиш повторяются, то выполнится операция, которая определена в стратегии раньше (имеет больший приоритет).
Note
Внутренняя архитектура веб-приложения диктует то, что каждый фрейм имеет свой собственный обработчик нажатия горячих клавиш. Таким образом, при нажатии горячей клавиши, программное событие будет отправлено по очереди всем фреймам, начиная с созданного самым последним и по-очереди до созданного самым первым. Каждый обработчик события самостоятельно принимает решение: относится ли событие к данному конкретному фрейму и, если не относится, обработчик самостоятельно игнорирует это событие. Если же относится: обработчик выполняет соответствующую операцию и “останавливает” событие.