****** Summary ****** deKorator is a kwin engine that takes several user-defined images and presents them as a window decoration. deKorator expects to find those in a theme. Here is a guide for building such a theme. ****** In the package ****** deKorator comes with: * default-theme - Used by default, illustrates some of deKorator's features. * ugly-theme - Its purpose is to understand the way deKorator paints the decorations. * template-theme - this theme is meant to be a template theme for other themes, this theme features all possible buttons. * Bushido-Yellow-theme - shows how masking can be done. ****** Names ****** deKorator expects the same directory structure and file names as the ones in default-theme. Every theme file should end with "-theme" (as in "default- theme"), and should contain all the folders that are in default-theme (deco, buttons, masks). ****** Sizes ****** deKorator determines the 4 borders' sizes from: _BAR_Property \t\t\t_BAR_Source\t\t\t\t_BAR_ ------------------------------------------------------------------------------------------------ _BAR_the left border width \t\t_BAR_midLeftFrameBg's width\t\t_BAR_ _BAR_the right border width \t\t_BAR_midRightFrameBg's width\t_BAR_ _BAR_the top bar height \t\t_BAR_midTitleBg's height \t\t_BAR_ _BAR_the bottom border height\t_BAR_midBottomFrameBg's height\t_BAR_ All parts that build up a specific border should have the same width or height, as appropriate. An example follows for a window decoration with a 10px high top bar, a 20px wide left border, a 30px wide right border and a 40px high bottom border. All tiles in the top bar should be 10 pixels high: * topLeftCornerBg * leftButtonsBg * leftTitleBg * midTitleBg * rightTitleBg * rightButtonsBg * topRightCornerBg All tiles in the left border should be 20 pixels wide: * topLeftFrameBg * midLeftFrameBg * bottomLeftFrameBg All tiles in the right border should be 30 pixels wide: * topRightFrameBg * midRightFrameBg * bottomRightFrameBg All tiles in the bottom border should be 40 pixels high: * leftBottomFrameBg * midBottomFrameBg * rightBottomFrameBg The corner tiles should fit into the tile grid: Tile Height Width topLeftCornerBg 10 20 topRightCornerBg 10 30 leftBottomFrameBg 40 20 rightBottomFrameBg 40 30 ****** Buttons ****** The button images are separated into background and foreground ones. ***** Background ***** The button background uses the leftButtonsBg and the rightButtonsBg tiles. Their height should be the same as the top bar's. The background is repeated horizontally to fit the buttons in. ***** Foreground ***** The width is determined by the button width. This way theme makers can put the buttons as close as they wish. To make space between buttons you can add transparent pixels to the right and left. A button with a smaller height than the top bar's gets centered vertically. To place the button in a custom height use transparent pixels, too. ****** Masks ****** Masks contain only black and white. Black pixels are subtracted from the decoration. ****** Image format ****** All images should be in PNG format. ****** Tips and Tricks ****** Always start up building your theme from the template-theme.
****** Резюме ****** deKorator — це рушій kwin, який за допомогою декількох визначених користувачем зображень створює декорації вікон. deKorator бере ці зображення з теми. Ось довідка зі створення такої теми. ****** У пакунку ****** До складу deKorator включено: * default- theme — використовується типово, демонструє деякі з можливостей deKorator. * ugly- theme — призначено для того, щоб ви зрозуміли спосіб, у який deKorator малює декорації. * template- theme — тема, яку призначено слугувати шаблоном для інших тем, у цій темі є всі можливі кнопки. * Bushido- Yellow- theme — демонструє можливості маскування. ****** Назви ****** Для роботи deKorator потрібна та сама структура каталогів, що і у темі default- theme. Назва кожної теми має завершуватися на « - theme » (як у « default - theme »), тема має містити всі теки, які є у default- theme (deco, buttons, masks). ****** Розміри ****** deKorator визначає 4 розміри рамок так: _BAR_Властивість\ t\ t\ t_BAR_Джерело\ t\ t\ t\ t_BAR_ ------------------------------------------------------------------------------------------------ _BAR_ширина лівого краю\ t\ t_BAR_ширина midLeftFrameBg\ t\ t_BAR_ _BAR_ширина правого краю\ t\ t_BAR_ширина midRightFrameBg\ t_BAR_ _BAR_висота верхньої панелі\ t\ t_BAR_висота midTitleBg\ t\ t_BAR_ _BAR_висота нижнього краю\ t_BAR_висота midBottomFrameBg\ t_BAR_ Всі частини, потрібні для створення якогось з країв рамки мають бути однакової ширини або висоти відповідно. Нижче наведено приклад декорації вікна з висотою верхньої панелі 10 пк, шириною лівого краю 20 пк, шириною правого краю 30 пк і висотою нижнього краю 40 пк. Всі плитки верхньої панелі мають бути висотою у 10 пікселів: * topLeftCornerBg * leftButtonsBg * leftTitleBg * midTitleBg * rightTitleBg * rightButtonsBg * topRightCornerBg Всі плитки лівого краю мають бути шириною у 20 пікселів: * topLeftFrameBg * midLeftFrameBg * bottomLeftFrameBg Всі плитки правого краю мають бути шириною у 30 пікселів: * topRightFrameBg * midRightFrameBg * bottomRightFrameBg Всі плитки нижнього краю мають бути висотою у 40 пікселів: * leftBottomFrameBg * midBottomFrameBg * rightBottomFrameBg Плитки кутів мають вкладатися до ґратки плиток: Плитка Висота Ширина topLeftCornerBg 10 20 topRightCornerBg 10 30 leftBottomFrameBg 40 20 rightBottomFrameBg 40 30 ****** Кнопки ****** Зображення кнопок поділяються на зображення тла і зображення переднього плану. ***** Тло ***** Для тла кнопок використовуються плитки leftButtonsBg і rightButtonsBg. Їх висота має збігатися з висотою верхньої панелі. Плитка тла повторюється по горизонталі, заповнюючи внутрішню частину кнопки. ***** Передній план ***** Ширина визначається шириною кнопки. У такий спосіб розробники тем можуть розташувати кнопки як завгодно близько. Щоб зробити проміжок між кнопками, ви можете додати прозорі пікселі праворуч і ліворуч. Кнопку з висотою, меншою за висоту верхньої панелі, буде відцентровано по вертикалі. Для зсуву кнопки відносно центру за висотою можна також скористатися прозорими пікселями. ****** Маски ****** Зображення масок мають бути лише чорно- білими. Чорні пікселі буде вилучено з елемента декорації. ****** Формат зображень ****** Всі зображення слід зберігати у форматі PNG. ****** Підказки і трюки ****** Завжди розпочинайте побудову власної теми з template- theme.