Artifact [f63b76d053] Вы: nobody
Вход

Artifact f63b76d05345c3e7675e3cca53a60246b8112ab3:

Wiki page [События Снегопата] by artbear 2012-05-25 07:19:32.
D 2012-05-25T07:19:32.808
L События\sСнегопата
P 0c551f7990f90ee2fecbc63a72ae90e9914bdf0e
U artbear
W 1972
<i>Описание всех возможных событий Снегопата</i>

<b>События объекта Designer</b> - строка вызова events.connect(Designer, ИмяСобытия, SelfScript.self, {ИмяМетодаОбработчика = ""})
  *    onExitApp() - без параметров
  *    onLoadAddin(addin)
  *    onUnLoadAddin(addin)
  *    beforeExitApp() - без параметров
  *    onSelectFile(selectFileData) - ISelectFileData
  *    onIdle() - без параметров
  *    createTextWindow(textWnd)
  *    onMessage(MessageParam) - объект IMessageParams со свойствами text, marker, cancel

<b>События объекта snegopat</b> - строка вызова events.connect(snegopat, ИмяСобытия, SelfScript.self, {ИмяМетодаОбработчика = ""})
  *    onProcessTemplate(params)

<b>События объекта windows</b> - строка вызова events.connect(windows, ИмяСобытия, SelfScript.self, {ИмяМетодаОбработчика = ""})
  *    onDoModal(dlgInfo)
  *    onMessageBox(param)
    <verbatim>Message(param.caption + " | " + param.text + " | " + param.type + " | " + param.timeout)
При отработке события перехват с MessageBox'а снимается, и в обработчике можно смело его вызывать, не боясь зацикливания. 
Например мы сами хотим узнать ответ пользователя и в зависимости от него выполнить какие-то действия
param.result = MessageBox(param.text, param.type, param.caption, param.timeout)
param.cancel = true</verbatim>

  *    onChangeTitles(param)

<i>Пока можно найти описания всех событий путем поиска "events.connect" по папке скриптов (scripts и core)</i>
Z 50ebb2621af61d3ade576eae3a58f9c8