1
0
mirror of https://github.com/salexdv/bsl_console.git synced 2024-11-28 08:48:48 +02:00
bsl_console/docs/get_definition_event.md

62 lines
2.5 KiB
Markdown

# Событие *EVENT_GET_DEFINITION*
## Назначение события
Событие генерируется при переходе к определению (F12)
## Управление событием
За генерацию события отвечает опция [`generateDefinitionEvent`](set_option.md)
## Пример вызова
```javascript
// Включение генерации события
setOption('generateDefinitionEvent', true);
// Отключение генерации события
setOption('generateDefinitionEvent', false);
```
## Параметры события
В параметрах события передается контекст, в котором возникло событие
Например:
* **word** - текущее слово, для которого требуется показать определение
* **expression** - полное выражение или имя функции
* **module** - название общего модуля или пустое значение
* **class** - название объекта, для метода или свойства которого вызывается определение
* **line** - номер строки редактора
* **column** - номер колонки
* **expression_array** - массив с выражениями, которые предшествуют определямому значению
## Пример параметров генерируемого события
```json
// Если ОбщегоНазначения.ЕстьСсылкиНаОбъект(Объект) Тогда
{
"word": "естьссылкинаобъект",
"expression": "общегоназначения.естьссылкинаобъект",
"module": "ОбщегоНазначения",
"class": "",
"expression_array": [
"если",
"общегоназначения",
".",
"естьссылкинаобъект"
],
"line": 10,
"column": 33,
}
// Выполнить(Алгоритмы.НайтиСотрудникаПоТабельномуНомеру)
{
"word": "найтисотрудникапотабельномуномеру",
"expression": "выполнить",
"module": "",
"class": "алгоритмы",
"expression_array": [
"выполнить",
"(",
"алгоритмы",
".",
"найтисотрудникапотабельномуномеру"
],
"line": 5,
"column": 45,
}
```