недалече как сегодня поставил многоточие после трудов своих над темой 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"):
boneyfrog (создатель темы "blue_eyed")
E devilhorns (Christopher Michael)
E Rasterman (Carsten Haitzler)
E Ravenlock (Eric Schuele)
E mekius (к стыду своему запамятовал ФИО)
E morlenxus (Brian Miculcy)
E Viktor Kojouharov
нижайший им поклон, хотя... в общем в отместку придётся написать труд "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)
********************************************************************
********************************************************************
7 комментариев:
Приветствую!
Интересно, а удалось ли вам написать труд "Create E17 Theme From Scratch"? Я в таком труде очень заинтересован, если что, могу помочь. Давно уже хочу реализовать свои идеи в Теме для е17, просто много белых пятен, многого не понимаю в edje пока.
пока одни черновики... потихоньку модернизирую свою тему, открывается много нового. как это связно изложить - скорее всего более логичним будет в первой части досконально разобраться с .edc файлами, а во второй разобрать дефолтную темку. синтаксис сишный, вроде не Rocket Science, но... по прикидкам это страниц за 200 уже выходит...
А мне очень интересно узнать одну вещь, но не у кого было спросить.
А можно ли сделать тайтлбарыы для окон как в beOSe? Чтобы не на 100% от ширины а меньше.
Я пробовал, давноо-этим лето, но ничего не вышло. И на этом я прекратил изыскания не найдя ответа.
Сунутся к разработчикам я как-то стесняюсь своего инглища, а ваш блог единственный известный мне русскоязычный про е17 (сам еще с весны хочу написать пару строк, да как-то не до того)
не вижу тут никаких проблем. если не трудно - выложите пару скриншотов на
imageshack.us
или
http://www.uploadgeek.com/
а тут киньте линки. я уже подзабыл как оно там выглядит. самому вспомнить интересно.
посмотрел, ничего сложного. к тому же подобные "бары" были реализованы в E16 (если не раньше, вроде видел это и у E14-E15). для дефолтной темы это достигается модификацией 'default_border.edc' файла.
Да, я пробовал потрошить уже не одну тему, вот что мне удалось получить с темой japan2007: скриншот
Я вижу проблему в том, что любой визуальный объект в edje строится при помощи стыковки и наслоения простейших типов (для данной темы это RECT, TEXT и SWALLOW).
Я делаю узким тайтл, а в том месте, где он раньше был теперь, теперь пустота, вакуум :) Но e17 как и природа вакуума не терпит, и заполняет освободившееся место чем попало.
Вот мой вопрос как раз в том, как такой ситуации избежать.
во! "речь не мальчика, но мужа". моя аська 206013812. welcome. вы упустили пару существенных моментов: положение "кнопок", формирование самих "бордюров" и... скажем так... упомянутые вами "типы" есть не причина, но следствие. постараюсь для примера подшаманить дефолтную тему и выложу edc для сравнения.
Отправить комментарий