Содержание
Раздел событий позволяет изменить все функции, относящиеся к событиям.
- button
- init
- inputHelper_onSelectItem
- onBlurContentControl
- onChangeContentControl
- onClick
- onCommandCallback
- onDocumentContentReady
- onEnableMouseEvent
- onExternalMouseUp
- onExternalPluginMessage
- onFocusContentControl
- onInputHelperClear
- onInputHelperInput
- onMethodReturn
- onTargetPositionChanged
- onTranslate
События и их описание
button
Функция, вызываемая при нажатии любой из кнопок плагина. Он определяет кнопки, используемые с плагином, и поведение плагина при нажатии на них.
Параметры:
| Параметр | Описание | Тип |
| id | Определяет индекс кнопки в массиве кнопок ↗ файла config.json. Если id == -1, то плагин считает, что крестик Закрыть окно был нажат или его работа была каким-то образом прервана. | численный |
Пример:
window.Asc.plugin.button = function (id) {
this.executeCommand("close", '');
};
init
Функция, вызываемая при запуске плагина. Он определяет данные, отправляемые в плагин, описывающие, какие действия должны быть выполнены и как они должны быть выполнены.
Параметры:
| Параметр | Описание | Тип |
| data | Определяет параметр данных, зависящий от параметра initDataType ↗, указанного в файле config.json. | строковый |
Пример:
window.Asc.plugin.init = function () {
this.callCommand(function() {
var oDocument = Api.GetDocument();
var oParagraph = Api.CreateParagraph();
oParagraph.AddText("Hello world!");
oDocument.InsertContent([oParagraph]);
}, true);
};
inputHelper_onSelectItem
функция, вызываемая, когда пользователь пытается выбрать элемент из помощника ввода.
Параметры:
| Параметр | Описание | Тип |
| item | Определяет выбранный элемент:
|
объект |
Пример:
window.Asc.plugin.inputHelper_onSelectItem = function(item) {
if (!item)
return;
window.Asc.plugin.executeMethod("InputText", [item.text, window.Asc.plugin.currentText]);
window.Asc.plugin.getInputHelper().unShow();
};
onBlurContentControl
функция, вызываемая, чтобы показать, какой элемент управления содержимым был размыт.
Параметры:
| Параметр | Описание | Тип |
| control | Определяет элемент управления содержимым, который был размыт:
|
Объект |
Параметр Lock может принимать следующие значения:
| Численное значение | Редактировать | Удалить |
| 0 | нет | да |
| 1 | нет | нет |
| 2 | да | нет |
| 3 | да | да |
Пример:
connector.attachEvent("onBlurContentControl", function(oPr)
{
if (oPr && "BankBIC" === oPr["Tag"])
{
connector.executeMethod("GetFormValue", [oPr["InternalId"]], function(value)
{
if ("12345678" !== value)
return;
connector.executeMethod("GetFormsByTag", ["BankAccount"], function(forms)
{
for (let i = 0; i < forms.length; ++i)
{
connector.executeMethod("SetFormValue", [forms[i]["InternalId"], "10101110100000000123"], null);
}
});
connector.executeMethod("GetFormsByTag", ["BankName"], function(forms)
{
for (let i = 0; i < forms.length; ++i)
{
connector.executeMethod("SetFormValue", [forms[i]["InternalId"], "Р7 BANK"], null);
}
});
connector.executeMethod("GetFormsByTag", ["BankPlace"], function(forms)
{
for (let i = 0; i < forms.length; ++i)
{
connector.executeMethod("SetFormValue", [forms[i]["InternalId"], "Himalayas"], null);
}
});
});
}
console.log("event: onBlurContentControl");
});
onChangeContentControl
Функция, вызываемая, чтобы показать, какой элемент управления содержимым был изменен.
Параметры:
| Параметр | Описание | Тип |
| control | Определяет измененный элемент управления содержимым:
|
объект |
Параметр Lock может принимать следующие значения:
| Численные значения | Редактировать | Удалить |
| 0 | нет | да |
| 1 | нет | нет |
| 2 | да | нет |
| 3 | да | да |
Пример:
connector.attachEvent("onChangeContentControl", function()
{
console.log("event: onChangeContentControl");
});
onClick
Функция, вызываемая, когда пользователь нажимает на элемент.
Параметры:
| Параметр | Описание | Тип |
| isSelectionUse | Определяет, используется ли выделение или нет. | логический |
Пример:
window.Asc.plugin.event_onClick = function(isSelectionUse) {
window.Asc.plugin.executeMethod("GetCurrentContentControlPr", [], function(obj) {
window.Asc.plugin.currentContentControl = obj;
var controlTag = obj ? obj.Tag : "";
if (isSelectionUse)
controlTag = "";
...
});
};
onCommandCallback
Функция, вызываемая для возврата результата ранее выполненной команды. Его можно использовать для возврата данных после выполнения метода executeCommand ↗.
Пример:
window.Asc.plugin.onCommandCallback = function() {
var plugin = window.Asc.plugin;
plugin.executeCommand("close", "");
};
onDocumentContentReady
Функция вызывается, когда документ полностью загружен.
Пример:
window.Asc.plugin.event_onDocumentContentReady = function() {
var oProperties = {
"searchString" : "Р7",
"replaceString" : "Р7 is cool",
"matchCase" : false
};
window.Asc.plugin.executeMethod("SearchAndReplace", [oProperties], function() {
window.Asc.plugin.executeCommand("close", "");
});
};
onEnableMouseEvent
Функция, вызываемая для включения/выключения событий мыши или тачпада.
Параметры:
| Параметр | Описание | Тип |
| isEnabled | Определяет, включена ли мышь или тачпад. | логический |
Пример:
window.Asc.plugin.onEnableMouseEvent = function(isEnabled) {
var _frames = document.getElementsByTagName("iframe");
if (_frames && _frames[0]) {
_frames[0].style.pointerEvents = isEnabled ? "none" : "";
}
};
onExternalMouseUp
Функция, вызываемая при отпускании кнопки мыши за пределами iframe плагина.Пример
window.Asc.plugin.onExternalMouseUp = function () {
var evt = document.createEvent("MouseEvents");
evt.initMouseEvent("mouseup", true, true, window, 1, 0, 0, 0, 0, false, false, false, false, 0, null);
document.dispatchEvent(evt);
};
onExternalPluginMessage
Функция, вызываемая для отображения сообщения интегратора редактора.
Параметры:
| Параметр | Описание | Тип |
| data | Определяет сообщение интегратора редактора:
|
объект |
Пример:
window.Asc.plugin.onExternalPluginMessage = function(data) {
switch (data.type) {
case "close": {
this.executeCommand("close", "");
break;
}
case "insertText": {
Asc.scope.text = data.text;
this.callCommand(function() {
var oDocument = Api.GetDocument();
var oParagraph = Api.CreateParagraph();
oParagraph.AddText(Asc.scope.text);
oDocument.InsertContent([oParagraph]);
}, false);
break;
}
}
};
onFocusContentControl
Функция, вызываемая для отображения того, какой элемент управления содержимым был сфокусирован.
Параметры:
| Параметр | Описание | Тип |
| control | Определяет элемент управления содержимым, который был сфокусирован:
|
Объект |
Параметр Lock может иметь следующие значения:
| Численное значение | Редактировать | Удалить |
| 0 | нет | да |
| 1 | нет | нет |
| 2 | да | нет |
| 3 | да | да |
Пример:
connector.attachEvent("onFocusContentControl", function()
{
console.log("event: onFocusContentControl");
});
onInputHelperClear
Функция, вызываемая, когда пользователь пытается очистить текст, и помощник ввода исчезает.
Пример:
window.Asc.plugin.event_onInputHelperClear = function() {
window.Asc.plugin.currentText = "";
window.Asc.plugin.getInputHelper().unShow();
};
onInputHelperInput
Функция, вызываемая, когда пользователь пытается ввести текст и появляется помощник ввода.
Параметры:
| Название | Описание | Тип |
| data | Определяет текст, который вводит пользователь:
|
Объект |
Пример:
window.Asc.plugin.event_onInputHelperInput = function(data) {
if (data.add)
window.Asc.plugin.currentText += data.text;
else
window.Asc.plugin.currentText = data.text;
...
}
onMethodReturn
Функция, вызываемая для возврата результата ранее выполненного метода. Его можно использовать для возврата данных после выполнения метода executeMethod ↗.
Параметры:
| Параметр | Описание | Тип |
| returnValue | Определяет значение, которое будет возвращено. |
Пример:
window.Asc.plugin.executeMethod("InsertAndReplaceContentControls", [_obj]);
window.Asc.plugin.onMethodReturn = function(returnValue) {
if (window.Asc.plugin.info.methodName == "InsertAndReplaceContentControls") {
window.Asc.plugin.executeMethod("GetAllContentControls");
} else if ("GetAllContentControls") {
window.Asc.plugin.executeCommand("close", console.log(JSON.stringify(returnValue)));
}
};
onTargetPositionChanged
Функция, вызываемая при изменении целевой позиции в редакторе.
Пример:
window.Asc.plugin.event_onTargetPositionChanged = function() {
if (!fClickLabel) {
window.Asc.plugin.executeMethod("GetCurrentContentControl");
}
fClickLabel = false;
};
onTranslate
Функция, вызываемая сразу после запуска плагина или позже, в случае изменения языка плагина.
Пример
window.Asc.plugin.onTranslate = function() {
var label = document.getElementById("button_new");
if (label)
label.innerHTML = window.Asc.plugin.tr("New");
}








