×òî íîâîãî?

spl

SmallPlugin это подключаемый модуль для Mediachance Multimedia Builder. Подключаемые модули расширяют возможности MMB, с их помощью ваш проект становится более гибким и функциональным. К сожалению, многие модули имеют слишком большой размер файла, но SmallPlugin действительно очень мал - его размер всего 10,5 Kb. Вы можете вложить его в ваш проект даже если совсем не собираетесь его использовать! ;)

21.03.2008 Какие новости?

ДОПОЛНЕНИЯ:

· Добавлена поддержка глобальных горячих клавиш! Теперь вы можете вызывать ваше приложение, даже если вы работаете в совершенно другом окне. Загляните в обновленный пример tray_icon.mbd.
· Список клавиш, доступных для использования в сочетаниях горячих клавиш расширен - добавлена поддержка мультимедиа клавиш (Play, Stop и т.д.). Полный список клавиш вы найдете в справочном файле.
· Теперь плагин автоматически восстанавливает иконку в трее после сбоя в explorer.exe.
· Улучшена совместимость команды ShowTaskbar и Vista. Теперь команда скрывает как панель задач, так и кнопку Пуск под Vista.

ИСПРАВЛЕНИЯ:

· Исправлена небольшая ошибка в команде SetRegistryPath, не позволявшая записать/прочитать значение по умолчанию, если предыдущий вызов SetRegistryPath использовал тот же ключ и параметр, отличный от параметра по умолчанию.
· Улучшена команда ShowMouse. Теперь она скрывает/отображает курсор только один раз (до следующего вызова с противоположным параметром), даже если была вызвана несколько раз с одним и тем же значением. Раньше, если команда была вызвана n раз с параметром "0" (скрытие курсора), то для отображения курсора необходимо было n раз вызвать команду с параметром "1".

ИЗМЕНЕНИЯ:

· Команда DestroyPopupMenu удалена. Если вам необходимо удалить контекстное меню, просто удалите все его элементы с помощью команды DeleteMenuItem.

Основные особенности:

· Работа с реестром
· Возможность создания главного и контекстного меню для ваших приложений
· Дополнительные функции управления мышью
· Отслеживание событий, связанных с колесом прокрутки
· Полная поддержка минимизации приложения в системный трей
· Функции управления Панелью задач
· Полная совместимость с Windows Vista
· Малый размер файла dll

Документация и примеры проектов:

Пакет модуля содержит несколько полезных и интересных примеров, которые помогут вам освоиться с командами модуля. И конечно же, не забудьте заглянуть в справочный файл модуля - там вы найдете детальное описание каждой команды. :)

Поддержка пользователей:

Если вам требуется помощь, то вы всегда можете получить ее на форуме MMBScript.ru - это место, где вы всегда можете найти людей, которые готовы вам помочь.

Ссылка для скачивания: SmallPlugin 1.5.4

© Автор плагина и справки Сергей Кучеров, перевод на русский язык Омар Гуртуев, 2006-2008


Êîìàíäû

Панель задач и окно приложения

ShowTaskbar

FlashTaskbarButton

TrayIconParam

EnableMinToTray

ShowTrayIcon

DisplayBalloonTip

SystemColor

Мышь

ShowMouse

SetMousePos

ClickMouseLeft

ClickMouseRight

TrackMouseWheel

Реестр

SetRegistryPath

RegistryRead

RegistryWrite

RegistryDeleteValue

RegistryDeleteKey

RegistryValueExist

Меню

SetMenuName

CreateMenuItem

SetSubmenuName

DeleteMenuItem

HideMenuItem

ShowMenuItem

SetMenuItemEnabled

SetMenuItemChecked

SetMenuShortcutAsGlobal

LoadMenuItemIcon

IsEnabled

IsChecked

DisplayPopupMenu

SetMenuBarRightorder


Ïàíåëü çàäà÷ è äð.

ShowTaskbar

Описание:

Показать либо скрыть панель задач в зависимости от величины.

Параметры:

0 = Скрыть панель задач, 1 = Показать панель задач.

Пример:

PluginSet("PlugIn","1")

PluginRun("PlugIn","ShowTaskbar")

FlashTaskbarButton

Описание:

Мигание заголовка окна, кнопки панели задач либо всего окна.

Параметры:

CAPTION - Мигание заголовка приложения.

BUTTON - Мигание кнопки панели задач.

ALL - Совместное мигание заголовка и панели задач.

Пример:

Flag$='BUTTON'

PluginSet("PlugIn","Flag$")

PluginRun("PlugIn","FlashTaskbarButton")

TrayIconParam

Описание:

Настройка пути для значка системного лотка; текст всплывающей подсказки.

Параметры:

Переменная содержит два параметра разделенных запятой:

Первый параметр указывает путь к иконке (.ico).

Второй параметр служит для отображения текста всплывающей подсказки.

Пример:

Param$='<Embedded>\icon.ico,SmallPlugin'

PluginSet("PlugIn","Param$")

PluginRun("PlugIn","TrayIconParam")

EnableMinToTray

Описание:

Разрешение либо запрещение минимизации приложения в системный лоток.

Параметры:

0 = Запретить, 1 = Разрешить

Пример:

PluginSet("PlugIn","1")

PluginRun("PlugIn","EnableMinToTray")

ShowTrayIcon

Описание:

Показать либо скрыть иконку в системном лотке.

Параметры:

0 = Скрыть, 1 = Показать

Пример:

PluginSet("PlugIn","0")

PluginRun("PlugIn","ShowTrayIcon")

DisplayBalloonTip

Описание:

Настройка отображения всплывающего сообщения

Параметры:

Переменная содержит три параметра разделенных запятой:

· Первый параметр отвечает за заголовок всплывающего сообщения.
· Второй параметр отвечает за текст всплывающего сообщения.
· Третий параметр дополнительный. Если выбрана опция NOSOUND, то сообщение сработает без звука.

Так же можно выбрать иконку всплывающего сообщения

0 = Иконка отсутствует.

1 = Иконка информации.

2 = Иконка предупреждения.

3 = Иконка ошибки.

Пример:

Param$='Balloon tooltip,Tooltip text,NOSOUND'

PluginSet("PlugIn","Param$")

PluginSet("PlugIn","1")

PluginRun("PlugIn","DisplayBalloonTip")

SystemColor

Описание:

Получение величин цвета тем Windows®.

Параметры:

15 = Цвет фона элементов и диалоговых окон.

5 = Цвет фона окна.

4 = Цвет фона меню.

2 = Цвет заголовка активного окна (лево).

27 = Цвет заголовка активного окна (право).

3 = Цвет заголовка не активного окна (лево).

28 = Цвет заголовка не активного окна (право).

8 = Цвет стандартного текста в окнах.

17 = Цвет заблокированного текста.

Дополнительные величины:

http://msdn2.microsoft.com/en-us/library/ms724371.aspx

Получение величины:

Возврат величины происходит по системе RGB через запятую (Red,Green,Blue).

Пример:

PluginSet("PlugIn","15")

PluginRun("PlugIn","SystemColor")

PluginGet("PlugIn","Color$")


Ìûøü

ShowMouse

Описание:

Показать либо скрыть курсор мыши.

Параметры:

0 = Скрыть курсор мыши, 1 = Показать курсор мыши.

Пример:

PluginSet("PlugIn","1")

PluginRun("PlugIn","ShowMouse")

SetMousePos

Описание:

Установить позицию курсора. Отсчет производится с верхнего левого угла приложения.

Параметры:

Переменная содержит два параметра разделенных запятой.

Пример:

cursorpos$='100,-200'

PluginSet("PlugIn","cursorpos$")

PluginRun("PlugIn","SetMousePos")

ClickMouseLeft/ClickMouseRight

Описание:

Имитация нажатия левой или правой кнопки мыши. Отсчет производится с верхнего левого угла приложения.

Параметры:

Переменная содержит два параметра разделенных запятой.

Пример:

** Имитация нажатия левой кнопки мыши на объекте "Rectangle"

X=ObjectX(Rectangle)+INT(ObjectWidth(Rectangle)/2)

Y=ObjectY(Rectangle)+INT(ObjectHeight(Rectangle)/2)

click$=CHAR(X)+','+CHAR(Y)

PluginSet("PlugIn","click$")

PluginRun("PlugIn","ClickMouseLeft")

TraceMouseWheel

Описание:

Прокрутка колёсика мыши вверх или вниз. Для подробного изучения откройте пример Mouse_Wheel.mbd

Параметры:

Меньше нуля = Прокрутка колёсика вниз, ноль или больше нуля = прокрутка колёсика вверх.

Пример:

PluginSet("PlugIn","1")

PluginRun("PlugIn","TrackMouseWheel")

PluginGet("PlugIn","WheelScroll")

If (WheelScroll<>0) Then

If (WheelScroll>0) Then

** Прокрутка вверх

Else

** Прокрутка вниз

End

End


Ðååñòð

SetRegistryPath

Описание:

Установка пути.

Пример:

Path$='HKEY_CURRENT_USER\MyRegistryKey,NewValue'

PluginSet("PlugIn","Path$")

PluginRun("PlugIn","SetRegistryPath")

Path$='HKEY_CURRENT_USER\MyRegistryKey'

PluginSet("PlugIn","Path$")

PluginRun("PlugIn","SetRegistryPath")

RegistryRead

Описание:

Чтение данных из реестра.

Пример:

Path$='HKEY_CURRENT_USER\Software\Mediachance\Multimedia Builder\Recent File List,File1'

PluginSet("PlugIn","Path$")

PluginRun("PlugIn","SetRegistryPath")

PluginRun("PlugIn","RegistryRead")

PluginGet("PlugIn","RetVal$")

Message("Last opened file is:","RetVal$")

RegistryWrite

Описание:

Запись данных в реестр.

Пример:

Path$='HKEY_CURRENT_USER\MyRegistryKey,Year'

PluginSet("PlugIn","Path$")

PluginRun("PlugIn","SetRegistryPath")

CurrentYear=2007

PluginSet("PlugIn","CurrentYear")

PluginRun("PlugIn","RegistryWrite")

RegistryDeleteValue

Описание:

Удаление данных из реестра.

Пример:

Path$='HKEY_CURRENT_USER\MyRegistryKey,Year'

PluginSet("PlugIn","Path$")

PluginRun("PlugIn","SetRegistryPath")

PluginRun("PlugIn","RegistryDeleteValue")

PluginGet("PlugIn","Result")

RegistryDeleteKey

Описание:

Удаление ключа из реестра.

Пример:

Path$='HKEY_CURRENT_USER\MyRegistryKey'

PluginSet("PlugIn","Path$")

PluginRun("PlugIn","SetRegistryPath")

PluginRun("PlugIn","RegistryDeleteKey")

PluginGet("PlugIn","Result")

RegistryValueExist

Описание:

Проверка значения в реестре.

Пример:

Path$='HKEY_CURRENT_USER\MyRegistryKey,Year'

PluginSet("PlugIn","Path$")

PluginRun("PlugIn","SetRegistryPath")

PluginRun("PlugIn","RegistryValueExist")

PluginGet("PlugIn","Result")


Ìåíþ

Для создания меню необходимо создать объект скрипт с меткой "menu_event_handler" на верхнем мастер-слое.

SetMenuName

Описание:

Создание основного меню приложения.

Параметры:

Переменная содержит имя меню. Так же меню вызывается клавишами ("&File" - Сработает по нажатию клавиши F).

Пример:

** Создание меню "File".

Name$='&File'

PluginSet("PlugIn","Name$")

PluginRun("PlugIn","SetMenuName")

PluginGet("PlugIn","MenuID")

CreateMenuItem

Описание:

Добавление пункта меню.

Параметры:

Переменная содержит нижеприведенные параметры разделенные запятой:

Имя пункта меню

Горячие клавиши доступа: ('&Close'+CHR(9)+'Alt+F4) Ïðîãðàììà çàêðîåòñÿ ïî íàæàòèþ Alt+F4.

Список горячих клавиш:

F1

F2

F3

F4

F5

F6

F7

F8

F9

F10

F11

F12

Backspace

Tab

Enter

Pause

Caps Lock

Esc

Space

PgUp

PgDn

End

Home

Left

Up

Right

Down

Ins

Del

Num *

Num +

Num -

Num /

Vol Up

Vol Down

Mute

Next

Prev

Play

Stop

F1 key

F2 key

F3 key

F4 key

F5 key

F6 key

F7 key

F8 key

F9 key

F10 key

F11 key

F12 key

Backspace

Tab

Enter

Pause/Break

Caps lock

Escape key

Space bar

Page Up

Page Down

End

Home

Left key

Up key

Right key

Down key

Insert

Delete

Num pad multiply sign

Num pad add sign

Num pad subtract sign

Num pad divide sign

Media volume up key

Media volume down key

Media mute key

Media next track key

Media previous track key

Media play/pause key

Media stop key

Если в Вашем приложении используется ввод данных - не используйте по одной горячей клавиши.

Если Вы хотите использовать горизонтальную линию (Separator) - Вместо имени пункта введите знак "-".

Script examples:

PluginSet("PlugIn","MenuID")

ItemName$='My New &Command'

PluginSet("PlugIn","ItemName$")

PluginRun("PlugIn","CreateMenuItem")

PluginGet("PlugIn","ItemID")

** Добавление горизонтальной линии

PluginSet("PlugIn","MenuID")

ItemName$='-,3'

PluginSet("PlugIn","ItemName$")

PluginRun("PlugIn","CreateMenuItem")

** Всплывающее меню по нажатию правой кнопки мыши

ItemName$='POPUP::&Menu Item'

PluginSet("PlugIn","ItemName$")

PluginRun("PlugIn","CreateMenuItem")

PluginGet("PlugIn","ItemID")

SetSubmenuName

Описание:

Добавление подменю.

Пример:

PluginSet("PlugIn","MenuID")

Submenu$='New Submenu'

PluginSet("PlugIn","Submenu$")

PluginRun("PlugIn","SetSubmenuName")

PluginGet("PlugIn","NewSubmenuID")

Submenu$='POPUP::New Submenu'

PluginSet("PlugIn","Submenu$")

PluginRun("PlugIn","SetSubmenuName")

PluginGet("PlugIn","NewSubmenuID")

DeleteMenuItem

Описание:

Удаление пункта меню по ID.

Пример:

PluginSet("PlugIn","ItemID")

PluginRun("PlugIn","DeleteMenuItem")

HideMenuItem

Описание:

Скрыть пункт меню.

Пример:

PluginSet("PlugIn","ItemID")

PluginRun("PlugIn","HideMenuItem")

ShowMenuItem

Описание:

Показать пункт меню.

Пример:

PluginSet("PlugIn","ItemID")

PluginRun("PlugIn","ShowMenuItem")

SetMenuItemEnabled

Описание:

Разрешить либо запретить пункт меню.

Пример:

** Разрешить

PluginSet("PlugIn","ItemID")

PluginRun("PlugIn","SetMenuItemEnabled")

** Запретить

PluginSet("PlugIn","-ItemID")

PluginRun("PlugIn","SetMenuItemEnabled")

SetMenuItemChecked

Описание:

Проверка пункта меню.

Пример:

PluginSet("PlugIn","ItemID")

PluginRun("PlugIn","SetMenuItemChecked")

PluginSet("PlugIn","-ItemID")

PluginRun("PlugIn","SetMenuItemChecked")

SetMenuShortcutAsGlobal

Описание:

Добавление пункта в всплывающее меню.

Пример:

ItemName$='POPUP::&Menu Item'+CHR(9)+'Ctrl+Alt+Ins'

PluginSet("PlugIn","ItemName$")

PluginRun("PlugIn","CreateMenuItem")

PluginGet("PlugIn","ItemID")

PluginSet("PlugIn","ItemID")

PluginRun("PlugIn","SetMenuShortcutAsGlobal")

LoadMenuItemIcon

Описание:

Загрузка иконки для пункта меню (32-битные).

Пример:

Icon$=CHAR(ItemID)+',<Embedded>\icon.ico'

PluginSet("PlugIn","Icon$")

PluginRun("PlugIn","LoadMenuItemIcon")

Icon$=CHAR(ItemID)+',<Windows>\notepad.exe,0'

PluginSet("PlugIn","Icon$")

PluginRun("PlugIn","LoadMenuItemIcon")

IsEnabled

Описание:

Проверка если пункт меню разрешён.

Пример:

PluginSet("PlugIn","ItemID")

PluginRun("PlugIn","IsEnabled")

PluginGet("PlugIn","State")

If (State) Then

Message("This item enabled:","ItemID")

Else

Message("This item disabled:","ItemID")

End

IsChecked

Описание:

Проверка на присутствие пункта меню.

Пример:

PluginSet("PlugIn","ItemID")

PluginRun("PlugIn","IsChecked")

PluginGet("PlugIn","State")

If (State) Then

Message("This item checked:","ItemID")

Else

Message("This item unchecked:","ItemID")

End

DisplayPopupMenu

Описание:

Имитация нажатия правой кнопки мыши для показа всплывающего меню.

Пример:

param$='100,200'

PluginSet("PlugIn","param$")

PluginRun("PlugIn","DisplayPopupMenu")

SetMenuBarRightorder

Описание:

Меню слево направо (для арабского и еврейского языков).

Пример:

PluginRun("PlugIn","SetMenuBarRightorder")