|
|
Line 1: |
Line 1: |
| {{PluginCard}}
| | <languages/>{{PluginCard}} |
| Управление «горячими» клавишами и действиями, такими как открытие окна контакта, вставка текста, запуск сторонних программ и вызов сервисов.
| | Plugin for managing different Miranda actions like contact window opening, text insertion, running programs and calling services. |
| | |
| | |
| __TOC__
| |
| | |
| == Установка ==
| |
| <tt>Actman 3.0</tt> '''несовместим''' с настройками предыдущей версии плагина, поэтому во время установки <tt>Actman 3.0</tt> настройки старой версии будут сконвертированы в новый формат.
| |
| | |
| == Основные возможности ==
| |
| *[[#Contact (Открытие окна беседы для контакта)|Открытие окна беседы для контакта]]
| |
| *[[#Program (Запуск программы)|Выполнение программы]]
| |
| *[[#Service (Выполнение сервиса)|Вызов сервисов]]
| |
| *[[#Jump (Переход)|Условные переходы]]
| |
| *[[#InOut (Ввод/вывод)|Вставка текста в текстовые поля (не только Миранды)]]
| |
| *Объединение отдельных действий в группы
| |
| *[[#Database (Чтение-запись данных профиля)|Осуществлять чтение-запись данных профиля]]
| |
| *[[#Вкладка диалога Хуки|Перехват событий миранды]]
| |
| *[[#Вкладка диалога Планировщик|Вызовы макросов по времени]]
| |
| *[[#Вкладка диалога Использование действий|Вызов макросов через кнопки тулбаров или горячие клавиши]]
| |
| | |
| == Вкладка диалога ''Действия'' ==
| |
| Основное окно настроек состоит из двух списков: списка групп действий (сверху) и списка отдельных действий.
| |
| Кнопки управления позволяют добавлять новые пункты в список, удалять их или перемещать.
| |
| Рядом со списком групп действий находятся также кнопки для проверки введенных действий и отмены изменений, импорта и экспорта (последние две временно отключены).
| |
| Переименование групп действий либо самих действий происходит по двойному клику на названии либо при нажатии кнопки {{Hotkey|F2}}.
| |
| Если установлен плагин {{Plugin|Variables}}, и содержимое текстового поля помечено как «S» (скрипт), то текст предварительно будет обработан этим плагином.
| |
| | |
| === Chain (Выполнение другой цепочки) ===
| |
| Необходимо просто выбрать имя группы действий из списка. После прекращения выполнения ее, управление передастся обратно вызывающей цепочке.
| |
| | |
| === Contact (Открытие окна беседы для контакта) ===
| |
| Необходимо выбрать нужный контакт из списка. Именно для него и будет высвечено окно сообщений либо сохранён хандл.
| |
| | |
| === Database (Чтение-запись данных профиля) ===
| |
| Действие предназначено для чтения или записи данных профиля пользователя.
| |
| Ниже выбора операции (чтение или запись) можно выбрать тип данных, которые мы хотим прочитать или записать.
| |
| ''Последний результат'' — это результат выполнения предыдущего действия.
| |
| Настройки в выпадающем списке задают тип контакта, для которого осуществляется операция чтения-записи:
| |
| {|
| |
| |-
| |
| | ''Свои настройки'' || — все операции осуществляются с настройками пользователя
| |
| |-
| |
| | ''Параметр'' || — используются настройки контакта с хандлом, переданным в параметре при вызове
| |
| |-
| |
| | ''Последний результат'' || — хандл контакта берется из результата выполнения предыдущего действия
| |
| |-
| |
| | ''Вручную'' || — контакт выбирается из списка
| |
| |}
| |
| Строка '<proto>' в имени модуля заменяется на название протокола для выбранного контакта.
| |
| | |
| === Function call (Вызов функции) ===
| |
| Вызов функции из различных DLL с различным числом и типом параметров. Поддерживаются типы вызовов <tt>cdecl</tt> и <tt>stdcall</tt>.
| |
| Поддерживается список шаблонов из <tt>services.ini</tt>
| |
| | |
| === INI ===
| |
| Работа с INI-файлами (чтение, запись, удаление настроек).
| |
| | |
| === InOut (Ввод/вывод) ===
| |
| Вывод последнего результата в окно сообщений активного контакта, запись (дописывание) текста в файл, чтение текста из файла, а также вставка в буфер обмена или чтение из него.
| |
| При выборе работы с буфером обмена становятся доступны опции, устанавливающие тип текста (ANSI/Unicode) и направление (в буфер/из буфера).
| |
| Работа с файлами заключается в чтении, дополнении либо записи '''юникодного''' текста из файла / в файл.
| |
| | |
| === Jump (Переход) ===
| |
| Проверка на заданное условие и переход на другое действие макроса либо прекращение его выполнения.
| |
| | |
| === MessageBox (Окно сообщений) ===
| |
| Реализация вывода стандартного MessageBox. Можно ввести заголовок и текст для окна сообщения, а также указать, какие кнопки и (если надо) значок будут показаны в сообщении. В следующем действии можно будет проверить результат (код нажатой кнопки).
| |
| Текст <last> в заголовке либо тексте будет заменен на значение последнего результата.
| |
| | |
| === Notes (Заметки) ===
| |
| Текстовые заметки, никак не влияющие на выполнение макроса. Могут быть использованы в качестве описания работы макроса или сохранения прочих заметок.
| |
| | |
| === Program (Запуск программы) ===
| |
| Настройки процесса: параллельное выполнение (программа запускается, а действия продолжают выполняться) и последовательное (следующее действие будет выполнено лишь после завершения работы программы).
| |
| Время ожидания завершения программы задается в текстовом поле.
| |
| В имени программы могут быть использованы макросы:
| |
| * <param> — параметр
| |
| * <last> — результат последнего действия
| |
| | |
| === Service (Выполнение сервиса) ===
| |
| Несколько сложные на вид, но универсальные настройки для вызова сервиса Миранды. Комбобоксы wParam и lParam в верхней части позволяют выбрать тип параметра:
| |
| {|
| |
| |-
| |
| | ''number value'' || — целое число
| |
| |-
| |
| | ''ANSI string'' || — строка ANSI
| |
| |-
| |
| | ''Unicode string'' || — строка Unicode
| |
| |-
| |
| | ''current contact'' || — параметр - хандл текущего контакта. Это контакт, которому принадлежит активное окно беседы.
| |
| |-
| |
| | ''last result'' || — результат предыдущего действия
| |
| |-
| |
| | ''parameter'' || — параметр, заданный при запуске группы действий на выполнение
| |
| |-
| |
| | ''structure'' || — параметр - структура, которая может быть отредактирована в окне настроек.
| |
| |}
| |
| | |
| Поля wParam и lParam в нижней части — для значений, передаваемых в сервис.
| |
| Если в папке плагинов присутствует файл <tt>services.ini</tt>, то, находясь в диалоге настроек, можно нажать {{Hotkey|F1}} для того, чтоб увидеть короткую справку для выбранного в комбобоксе имени сервиса.
| |
| Большая часть сверху занята тем, что нужно сделать с результатом выполнения сервиса: показать во всплывающем окне или окне сообщений или вставить в текст.
| |
| Результат может быть представлен как целое число, шестнадцатеричное число, строка (ANSI или Unicode) либо элемент структуры.
| |
| Строка '<proto>' в имени сервиса перед выполнением заменяется на название протокола для контакта, хандл которого хранится как параметр при вызове последовательности действий.
| |
| | |
| ==== Редактор структур ====
| |
| Окно (список) слева будет содержать элементы структуры. Первый столбец — тип, второй — размер элемента (фактически, только для массивов), третий — значение элемента. Чекбокс в первом столбце служит для пометки, какой элемент структуры будет использован для возврата значения после выполнения сервиса.
| |
| Кнопки справа от списка служат для добавления элемента, удаления его и перемещения к началу/концу структуры.
| |
| Выпадающий список справа вверху служит для выбора типа элемента структуры.
| |
| Поле размера данных (поле под выпадающим списком) предназначено для указания размера блока памяти в байтах в случае массивов и указателей на буфер.
| |
| Длинное поле ниже поля размера данных служит для ввода непосредственно самого значения. При этом часть текста типа $#### (для массивов или указателей на слова) или $##, где ## — шестнадцатеричные цифры, будут представлены как слова или байты соответственно.
| |
| Знак «|» используется как разделитель полей в итоговом описании структуры, поэтому нежелательно его использование в текстах, вместо этого можно написать $7C или $007C (в случае юникодного текста)
| |
| Это описание можно получить и нажав {{Hotkey|F1}} или кнопку «Помощь» в окне диалога.
| |
| | |
| === Settings (Настройки) ===
| |
| Специальные настройки внешнего вида списка контактов, списка сервисов, а также некоторые опции текущего в списке макроса. Эти настройки никак не влияют на текущее действие, добавлены в общий список для простоты обработки.
| |
| | |
| === Storage (Хранилище) ===
| |
| Место для сохранения-восстановления значения последнего результата.
| |
| | |
| === Text (Вставка текста) ===
| |
| Текст или скрипт, результат выполнение которого может быть использован в последюущих действиях.
| |
| В самом тексте можно указывать некоторые специальные ''макросы'', список которых можно посмотреть, нажав {{Hotkey|F1}}.
| |
| | |
| == Вкладка диалога ''Планировщик'' ==
| |
| Диалог содержит настройки для создания заданий для вызова макросов по времени. Время выполнения можно задать абсолютным либо относительным от запуска задачи, а также — моментальным. Группа настроек ниже поможет задать количество и интервал повторов. Самая нижняя группа предназначена для выбора, надо ли порождать событие Миранды при выполнении задачи.
| |
| | |
| == Вкладка диалога ''Хуки'' ==
| |
| Диалог содержит большую таблицу со списком пользовательских перехватов событий. Сами настройки, событие и вызываемый для него макрос можно выбрать в выпадающем списке внизу. Список событий Миранды может иметь несколько предустановленных значений при наличии в папке плагинов файла <tt>services.ini</tt>. Нажатие на кнопку над списком или клавиши {{Hotkey|F1}} выдаст в таком случае развернутую подсказку.
| |
| | |
| == Вкладка диалога ''Использование действий'' ==
| |
| В этом диалоге можно задать способ вызова макросов. Возможные варианты:
| |
| * Горячая клавиша
| |
| * Панель инструментов {{Plugin|TabSRMM}} при наличии соответствующего плагина
| |
| * Панель инструментов {{Plugin|TopToolBar}} при наличии соответствующего плагина
| |
| * Главное меню
| |
| * Меню контакта
| |
| * Меню протоколов
| |
| * Меню статусов
| |
| * Меню в трее (если доступно, пока для {{Plugin|Clist_modern}})
| |
| | |
| Также можно задать отображение пунктов меню при условии выполнения скрипта, если установлен плагин {{Plugin|Variables}}.
| |
|
| |
|
| {{PluginGroups}} | | {{PluginGroups}} |