Обучающие курсы:

Обучение профессии "Разработчик C#" + стажировка в Mail.ru
Обучение профессии "Разработчик Python" + трудоустройство
Обучение профессии "Веб-разработчик" + стажировка в Mail.ru


Главная страница
Библиотека (скачать книги)
Скачать софт
Введение в программирование
Стандарты для C++
Уроки по C#
Уроки по Python
HTML
Веб-дизайн
Ассемблер в среде Windows
ActiveX
Javascript
Общее о Линукс
Линукс - подробно
Линукс - новое
Delphi
Паскаль для начинающих
Турбопаскаль
Новости
Партнеры
Наши предложения
Архив новостей





Использование FvwmWinList с несколькими экземплярами одного окна
Основное ограничение модуля FvwmWinList заключается в том, что достаточно трудно определить, где какое окно в списке. Каждая запись FvwmWinList состоит из текста, который появляется в заголовке соответствующего окна (если заголовок подавляется, то используется текст, который был бы отображен в заголовке). Если запущено несколько копий одной программы одновременно, например, несколько копий xterm, в списке

FvwmWinList все они будут выглядеть одинаково. Отличаться будут только свернутые окна, текст для которых заключается в скобки.
Тем, кто будет много работать с FvwmWinList, вероятно, имеет смысл задавать разные заголовки для различных экземпляров одного приложения. Проделать это можно с помощью стандартных Х-параметров -title и -name. Следует при этом иметь в виду, что -title изменяет текст только в заголовке, a -name изменяет непосредственно имя приложения, таким образом влияя на ресурсы и присвоение значений в файле настройки.

Как сделать FvwmWinList частью стандартного окружения
Если вы намереваетесь сделать модуль FvwmWinList частью своего стандартного окружения, отредактируйте файл настройки, чтобы выполнять его при инициализации и перезапуске оконного менеджера. В следующем примере для этих целей мы добавили третью и шестую строки:

AddToFunc InitFunction ' "I" Module FvwmButtons
+ "I" exec xsetroot -mod 2 2 -fg \#554055 -bg W05070
+ "I" Module FvwmWinList
AddToFunc RestartFunction "I" Module FvwmButtons
+ "I" exec xsetroot -mod 2 2 -fg \#554055 -bg \#705070
+ "I" Module FvwmWinList

Они предписывают загружать модуль FvwmWinList при запуске и перезапуске оконного менеджера. Окно появляется в нижнем левом углу экрана.
В качестве альтернативы можно сделать FvwmWinList меню.
Следующее определение связывает модуль с третьей кнопкой мыши, нажатой в зоне главного окна (это может оказаться не так удобно, как наличие постоянно запущенного модуля).

Mouse 3 R A Module FvwmWinList Transient
Отдельным вопросом является определение поведения и внешнего вида модуля. Как и для ряда других модулей (FvwmButtonBox, FvwmPager и т. д.), различные характеристики FvwmWinList определяются в других местах файла настройки. Ниже приводятся типичные строки:

e»Hflflttfttttt####f(flflBttfl####ftHFvwmWinList##flJtflHSfl##Jt#Hl(HHtt##flBflB»H
.FvwmWinlistBack#908090 .FvwmWinListFore Black
•FvwmWinListFont -adobe-helvetica-bold-r-*-*-10-*-*-*-*-*-*-* .FvwmWinListAction Clickl Iconify -1, Focus .FvwmWinListAction Click2 Iconify
.FvwmWinListAction Click3 Module "Fvwmldent" Fvwmldent
•FvwmWinListUseSkipList
.FvwwWinListGeometry +0-1

Первые три строки определяют цвет фона, цвет текста и используемый в
приложении шрифт. Следующие три привязывают нажатия на различные кнопки мыши к определенным действиям внутри WinList. UseSkipList является предписанием для WinList не отображать строки для окон, которым присвоена стилевая классификация WindowListSkip. Как правило, таким образом скрываются все модули, в результате чего они не отображаются в списке FvwmWinList. Последняя строка определяет точку экрана, в которой должно появляться окно (левый нижний угол).

WinList является липким окном, т. е. оно доступно на каждом рабочем столе. Файл настройки может вводить в заблуждение. Данное свойство определяется в другом месте файла посредством переменной Style:
Style "Fvwm*" NoTitle, Sticky, WindowListSkip

Эта строка определяет свойства липкости, отсутствия заголовка и отсутствия всех модулей (включая WinList) в списке окон FvwmWinList. В случае же с модулем FvwmWinList, появись он в собственном списке, это было бы более чем странно.



   
 

Библиотека программиста. 2009.
Администратор: admin@programmer-lib.ru