Например, чтобы минимизировать саму MAYA, можно выполнить:
window -е -iconify 1 MayaWindow; Как вы уже догадались, MayaWindow - это имя главного окна MAYA.
Итак, читаем список открытых окон, перебираем его в цикле и минимизируем все, кроме главного:
string $it;
string $windows[] = 'IsUI -windows'; for ($it in $windows)
£
if ($it != “MayaWindow")
{
window -e -iconify 1 $it;
}
)
Откройте побольше окон и выполните эти содержательные строки - все окна слетятся в нижнюю часть экрана.
Примечание. Любители компактных записей, знающие, что фигурные скобки можно не писать, если блок состоит из одной команды, могут усушить код доследующих строк:
string Sit;
for (Sit in 'IsUI -wnd') if (Sit != “MayaWindow”) window -e -i 1 $it; Для того, чтобы ловко вызывать написанные строки, оформим их в виде процедуры minAll-Win и сохраним в файле minAUWin.mel на диске в пользовательской папке scripts, где этот файл будет виден для MAYA как скрипт.
global proc minAUWin()
[
string $it;
string $windows[] = 'IsUI -windows'; for (Sit in Swindows)
{
if (Sit != "MayaWindow”)
{
window -e -iconify 1 Sit;
}
}
}
Теперь можно минимизировать все окна простой командой minAUWin. На мои предложения повесить эту команду на горячую клавишу или на кнопку на полке, настоящие MEL-маньяки с негодованием возопят: «Хотим добавить команду в основное майское меню Window!». Что ж, желание маньяка - закон…
Сначала читаем список всех существующих меню в MAYA:
IsUI -menus;
// Result: AEdeformersSubMenu AEdynamicsSubMenu AEhelpMenu AEkinematicsSubMenu AElightSub-Menu AEshadingSubMenu
timeSliderTangentsltem unassignASItem unassignHDItem //
Удобнее, кстати, сделать это «в столбик», с помощью команды print, печатающей массив строк, возвращаемый командой IsUI
print ('IsUI -menus'); Почитав полученный список, можно найти в нем строки начинающиеся на слово main. Это и есть названия всех меню из главного окна MAYA. Нас интересует меню с названием mainWindow-Menu.
Если мы знаем название меню, то добавить к нему дополнительный пункт можно командой menultem, в которой надо указать, к какому меню мы собираемся добавить новый пункт.
Выполните в Script Editor команду
menultem -I “Minimize AU Windows" -c “minAUWin” -p mainWindowMenu MIN ALLWIN; Для меню, точно так же, как и для кнопки, с помощью флагов -I и -с указываются текстовое название и вызываемая команда.
А вот флаг -р (-parent) используется, чтобы определить, к какому существующему меню надо добавить новый пункт. В конце команды имеет смысл дать название новому пункту, на тот случай, если вы захотите его позже удалить или отредактировать. Например, команда
deleteUI MINALLWIN; начисто удалит авторский пункт меню и вернет меню Window прежний вид.
Даже если вы еще не объявили процедуру minAUWin, новый пункт меню все равно добавится, только будет выдавать сообщение об ошибке при попытке его выполнить.
![](/images/openglorg10/openglorg10-216.png)
Если вы хотите добавить совершенно новое меню в окно MAYA, следует использовать команду menu, а в качестве родителя (флаг -parent) указать главное окно MAYA. Например:
menu -I “Maya ver. 20.5 Menu” -p MayaWindow M20;