Все действия в FVWM, будь то разворот окна на весь экран, сворачивание окна, или запуск какой-либо программы (а то и все это одновременно) суть функции.
И их также нужно объявлять (если, конечно, функция состоит более, чем из одного действия):
DestroyFunc deiconify-and-focus
AddToFunc deiconify-and-focus
+ "I" Iconify -1 # Разворачиваем окно из иконки
+ "I" Focus # Переносим на него фокус
Вызываются функции следующим образом:
DestroyMenu Window-Ops
AddToMenu Window-Ops
+ "&Переместить" Move
+ "&Изменить размер" Resize
+ "Свернуть/развернуть" Maximize 100 100
+ "" Nop
+ "Переместить на..." Popup Move-Window
+ "" Nop
+ "Сделать нечто" My-func-name
+ "" Nop
+ "Destroy" Destroy
+ "&Close" Close
Если это меню связано с каким-либо окном (см. следующий подраздел), то функции вызываются применительно к нему, иначе FVWM попросит вас уточнить какое из окон вы имеете в виду.
Полный список поддерживаемых функций, конечно же содержится в man-странице FVWM, но все же перечислю наиболее (на мой взгляд) интересные:
# Интерактивное перемещение
Move
# Переместить вверх-лево на 10% и 10%
Move 10 10
# Аналогично, но пикселей.
Move 10p 10p
# Переместить окно в правый-нижний угол экрана
Move -0 -0
# Перемещаем на 5% в право и на середину по вертикали
Move w+5 50
# Перемещаем окно к точке положения курсора
Move m+0 m+0
# 80 на 24 символа
Resize 80c 24c
# Максимизирует
Resize 100 100
Также можете воспользоваться командой AnimatedMove для анимированного перемещения.
# Максимизация по вертикали
Maximize 0 100
# Максимизация до размера половины экрана
Maximize 50 50
# Разворачивает окно, оставляя на экране еще 60 пикселей
Maximize 100 -60p
# Размер дека 2x2
# Вообще же число страниц может быть до 4 миллиардов :o)
DeskTopSize 2x2
# Переходим на страницу
GotoPage 1 1
# Или дек
GotoDesk 0 0
# Перемещаем текущее окно (сами не переходим)
MoveToPage 1 1
# Или на дек (и текущую по номеру страницу)
MoveToDesk 0 0
# Повышаем уровень текущего окна.
Layer 1 0
# Устанавливаем его уровень в 1
Layer 0 1
# Редактируем настроечный файл
Exec exec gvim /home/nik/.fvwm/.fvwm2rc
# Выводим главное меню
Popup /Debian
# Выводим меню Window-Ops, в верхнем-левом
# углу заголовка
Popup Window-Ops Title o0 o0
Copyleft © 2002-2003 г. Nikolay A. Panov, "Intro To Linux" (orig), niksite@mail.ru, ICQ: 122-40-8888 |