sda00
2008-01-10
Лучше будет сказать 17 человек, бо "о бедном гусаре замолвите слово", не во грех сие, но во благо...
Недалече как сегодня поставил многоточие после трудов своих над темой E17-го. Это стало восхитительным упражнением! Оказалось, что по большому счёту создание любого гуи в 17-ом очень похоже на написание программы (синтаксис практически сишный, есть объекты, их описание, источники событий/сигналов, генерация событий/сигналов и их обработка, плюс многое другое из арсенала высокоуровнего языка программирования). EFL программа в идеале не должна содержать элементов визуального интерфейса - это отдано на откуп "темерам"/дизайнерам. Всё как у взрослых, причём после такого творчества находиться в прочих WM-ах как-то стало непросто. Не могу назвать результат шедевром, хотя на http://www0.get-e.org/ не попал сугубо по соображениям лицензионной чистоты - авторы скачанных мной из интернета изображений не потрудились ответить на запросы о получении разрешения на подобную некоммерческую инициативу. Другими словами - слегонца подташнивает (кроме как от E16-го, поскольку первая любовь коррозии не поддаётся, да и темы у 16-го шикарнейшие). Пользовался gimp-ом и elicit, чей 20-ти кратный зум любого пикселя экрана с последующим определением палитры оказался незаменимым для подобного рода упражнений. В общеобразовательных целях ознакомился с inkscape - для работы с цветом шрифтов в 17-ом сей тул может пригодиться. Откуда столько сложностей? Дык... судьба, барин! Супротив не попрёшь!
Первым делом - пока все остальные ВМ-ы/(гхм... разработчики оных) занимаются неизвестно чем - в 17-ом всё тотально завязано на модель RGBA (и не путайте здесь композит/bling/xcompmgr - оне тут совершенно ни при чём). Это значит, что альфа канал является цветообразующим для любого элемента, от шрифтов и до... последнего пикселя. Вот, кстати, про одну из самых любимых тем "крутых перцев" - да-да-да! Про шрифты! - и поговорим. Очень хотелось в качестве названия этой заметки воспользоваться словом "сасать" и восклицательным знаком - постеснялся. Судите сами: для отображения шрифта в любом месте интерфейса может использоваться три значения цвета (естественно каждый из трёх - в RGBA) - это цвет собственно шрифта, цвет его "тени"/shadow и цвет его "окантовки"/outline. Плюс к этому - вагон и маленькая тележка эффектов отрисовки начертания. Оные эффекты применимы к любому элементу интерфейса (шрифт - не более чем один из них). У меня от открывшихся возможностей чуть "крыша" на поехала - ограничился правда минимальным использованием в своей теме, "вешками чуток тропку разметил" так сказать...
Во вторых - обилие "управляющих элементов" (сиречь конструкций для манипулирования свойствами объектов интерфейса), и список сей ещё далёк от завершения. Как следствие можно привести появление анимации для любых объектов, что, безусловно, добавляет "перчику" в котелок, где уже варятся остальные WM-ы (хе-хе).
И "на закуску", несмотря на то, что продолжать можно вечно (пока не кончатся батарейки) - тотальная модульность. Есть canvas - сиречь evas, всё прочее можно смело рассматривать как "включения", что может дать вот такой интересный эффект:

Заметили шарик в левом верхнем углу изображений? Это - управление альфа каналом, поскольку Evas принял видеофильмы как очередные элементы/объекты управления. Для иллюстрации этого подхода к изображениям можно посмотреть на Entice - очень неординарную программу-гляделку:

В создании темы мне очень здорово помогли советами следующие товарищи в алфавитном порядке (разработчики этого WM-а отмечены в начале большой буквой "E"):
Нижайший им поклон, хотя... в общем в отместку придётся написать труд "Create E17 Theme From Scratch", после ревизии коего можно будет перевести на русский (вот думаю, стоит ли?) и выложить на том же get-e. комплексного материала в этой области пока нет. Всё довольно разрозненно и успело значительно устареть.
P.S. В качестве музыкального сопровождения при создании темы использовался плеер Emphasis, загруженный альбомами SRV и славной группы "Чёрный Обелиск" (земля пухом Стиви и Толику).
P.P.S. насчёт жалоб об отсутствии систрея - читаем здесь: http://www.freedesktop.org/wiki/Standards_2fsystemtray_2dspec и здесь (ищем по слову "systray" заметку от Thursday, 2 February 2006): http://www.rasterman.com/index.php?page=News в двух словах: нет стандарта - нет и систрея! так-то! пройдите товарищи!
********************************************************************
(всё ещё нужен систрей? ок. поищите trayer или stalonetray)
********************************************************************