Всплывающие меню
 

Всплывающие меню (Первая Часть)


Всплывающие меню

mIRC позволяет создавать отдельные всплывающие меню для всех видов окон (статуса, привата, канала, списка ников канала, главного меню). Для создания всплывающих меню вы должны знать Команды IRC, , уметь создавать Алиасы, и понимать, что такое Идентификаторы и Переменные. Если вы нажимаете правую кнопку мыши в окне, появляется соответствующее этому окну всплывающее меню, из которого вы можете выбрать необходимую команду, например, дать пользователю Опа или войти в канал.

Синтакс: <menuitem>:<commands>
Get Help:/join #irchelp

Текст перед ":" - это имя элемента меню. Текст после ":" - команда, которая будет выполнена в результате этого элемента меню. В нашем примере элемент меню - "Get Help", команда, которая выполнится, если вы выберете этот элемент меню - "/join #irchelp". Формат команд тот же самый, что и у нормальных алиасов. Смотрите секцию Aliases для того, чтобы понять, как создаются алиасы.

- Для создания подменю используется символ "." (точка)
Join a Channel
.Get IRC help!:/join #irchelp
.Visit the folks at #friendly:/join #friendly
.Who shall we join?:/join $?

В данном примере имя подменю - "Join a Channel". Все остальные команды, начинающиеся с "." - элементы подменю.

- Для создания меню с подменю, которые, в свою очередь, тоже содержат подменю, просто добавьте еще точек:
Channels
.Help
..irchelp:/join #irchelp
..mIRC:/join #mirc
..newbies:/join #newbies
.Other Channels
..Visit #friendly:/join #friendly
..Wibble Wobble:/join #wibble
.Join?:/join #$$?="Enter a channel name:"

- Для разделения секций меню используется символ "-".

whois ?:/whois $?
-
Misc
.Edit Temp:/run notepad.exe temp.txt
.say?: /say $?
.action?:/me $?
Names
.#irchelp: /names #irchelp
.#friendly: /names #friendly
.names ?:/names $?
-
channel list:/list -
Join a Channel
.Get IRC help!:/join #irchelp
.Visit the folks at #friendly:/join #friendly
.Who shall we join?:/join $?

- Если вы создаете всплывающее меню для окна ников канала, не забывайте, что для вызова меню сначала необходимо выбрать ник. Пример небольшого меню для списка ников канала:

Who Is?:/whois $1
-
Modes
.Op:/mode # +o $1
.Deop:/mode # -o $1
.Kick, Ban:/kick # $1 | /ban $1
-
DCC Send:/dcc send $1
DCC Chat:/dcc chat $1
-
Slap!:/me slaps $1 around a bit with a large trout
Query:/query $1 Hey you! hello? are you there...?

- Если вы хотите создать всплывающее меню, элемент которого должен выполнять большую последовательность команд, используйте скобки { }. Подробнее об использовании скобок вы можете прочитать в секции Aliases.

Cookie {
if ($1 == $me)
echo I give myself a cookie!
else
echo I give $1 a cookie!
}

Этот элемент меню может быть использован в меню списка ников канала. $1 - выбранный ник пользователя. Если пользователь выбрал свой собственный ник, то печатается первое сообщение, если нет - второе сообщение. Всплывающие меню для приватных и DCC chat окон и MenuBar создаются и работают так же, как и меню для списка ников канала.

Продолжения ждите в ближайшие дни...