// incall.edc // this is a theme for epydial, a pyneo dialer // // TODO: make the font colors shinier :) // // Signal1: data { item: "author" "thomasg [thomas (a) gstaedtner (.) net]"; item: "version" "prototype"; item: "name" "epydial_blackwhite"; } fonts { font: "Vera.ttf" "Vera"; font: "VeraBd.ttf" "VeraBd"; } images { image: "bg.png" COMP; } color_classes { color_class { name: "black"; color: 0 0 0 255; color2: 0 0 0 255; color3: 0 0 0 255; } color_class { name: "unvisible"; color: 0 0 0 0; color2: 128 128 128 255; color3: 128 128 128 255; } color_class { name: "button_inactive"; color: 255 255 255 128; color2: 128 128 128 255; color3: 128 128 128 255;; } color_class { name: "scale"; color: 255 255 255 64; color2: 0 0 0 255; color3: 0 0 0 255; } } styles { style { name: "textblock_style"; base: "font=sans.bold font_size=20 align=left valign=top color=#fff wrap=word"; tag: "h1" "+ font_size=28"; tag: "/h1" "- \n"; tag: "p" "+"; tag: "/p" "- \n"; tag: "em" "+ style=underline underline_color=#000A underline2_color=#0005"; tag: "/em" "-"; tag: "br" "\n"; } } #define BUTTON(button_number, rel1x, rel1y, rel2x, rel2y, button_caption, color_class_caption, alignx, aligny) \ part { \ name: "button_"button_number; \ type: RECT; \ description { \ state: "default" 0; \ color_class: "unvisible"; \ rel1 { relative: rel1x rel1y; offset: 0 0; }; \ rel2 { relative: rel2x rel2y; offset: 0 0; }; \ } \ description { \ state: "default" 0.5; \ inherit: "default" 0; \ color_class: "unvisible"; \ rel1.offset: 0 -5; \ rel2.offset: 0 5; \ } \ description { \ state: "default" 1; \ inherit: "default" 0; \ } \ } \ part { \ name: "button_"button_number"_caption"; \ type: TEXT; \ mouse_events: 0; \ description { \ state: "default" 0; \ color_class: color_class_caption; \ rel1 { \ to: "button_"button_number; \ relative: 0 0; \ } \ rel2 { \ to: "button_"button_number; \ relative: 1 1; \ } \ text { \ text: button_caption; \ size: 18; \ font: "VeraBd"; \ fit: 1 1; \ align: alignx aligny; \ } \ } \ } \ program { \ name: "button_"button_number"_signal_emit"; \ signal: "mouse,down,*"; \ source: "button_"button_number; \ action: SIGNAL_EMIT "gsm_send" button_caption; \ } \ program { \ name: "button_"button_number"_animation"; \ signal: "mouse,down,*"; \ source: "button_"button_number; \ action: STATE_SET "default" 0.5; \ target: "button_"button_number; \ } \ program { \ name: "button_"button_number"_animation_end"; \ signal: "mouse,up,*"; \ source: "button_"button_number; \ action: STATE_SET "default" 1; \ target: "button_"button_number; \ transition: DECELERATE 0.1; \ } \ #define HBAR(barname, bordercolor, borderwidth, rel1x, rel1y, rel2x, rel2y, left_right_offset) \ part { \ name: "border_left_"barname; \ type: RECT; \ description { \ color_class: bordercolor; \ rel1 { relative: rel1x rel1y; offset: left_right_offset 0; }; \ rel2 { relative: rel1x rel2y; offset: (borderwidth+left_right_offset) 0; }; \ } \ } \ part { \ name: "border_right_"barname; \ type: RECT; \ description { \ color_class: bordercolor; \ rel1 { relative: rel2x rel1y; offset: (0-left_right_offset-borderwidth) 0; }; \ rel2 { relative: rel2x rel2y; offset: 0-left_right_offset 0; }; \ } \ } \ part { \ name: "border_bottom_"barname; \ type: RECT; \ description { \ color_class: bordercolor; \ rel1 { relative: rel1x rel2y; offset: (borderwidth+left_right_offset) -borderwidth; }; \ rel2 { relative: rel2x rel2y; offset: 0-left_right_offset 0; }; \ } \ } \ part { \ name: "border_top_left"barname; \ type: RECT; \ description { \ color_class: bordercolor; \ rel1 { relative: rel1x rel1y; offset: left_right_offset 0; }; \ rel2 { relative: rel2x/4 rel1y; offset: 0-left_right_offset borderwidth; }; \ } \ } \ part { \ name: "border_top_right"barname; \ type: RECT; \ description { \ color_class: bordercolor; \ rel1 { relative: 1-rel2x/4 rel1y; offset: left_right_offset 0; }; \ rel2 { relative: rel2x rel1y; offset: 0-left_right_offset borderwidth; }; \ } \ } \ part { \ name: "top_description_"barname; \ type: TEXT; \ description { \ color_class: bordercolor; \ rel1 { relative: 1-rel2x/2 rel1y; offset: -80 -10; }; \ rel2 { relative: 1-rel2x/2 rel1y; offset: +80 10; }; \ text { \ text: barname; \ font: "VeraBd"; \ size: 16; \ } \ } \ } \ collections { group { name: "pyneo/gsm/status"; min: 100 100; max: 800 800; parts { part { name: "background"; type: IMAGE; description { state: "default" 0; rel1 { relative: 0 0; offset: 0 0; }; rel2 { relative: 1 1; offset: 0 0; }; image { normal: "bg.png"; }; } } part { name: "headline"; type: TEXT; mouse_events: 0; description { state: "default" 0; color_class: "button_inactive"; rel1 { relative: 0 0; } rel2 { relative: 1 1/7; } text { text: "gsm status"; size: 18; font: "VeraBd"; fit: 1 1; } } } part { name: "pwr_caption"; type: TEXTBLOCK; mouse_events: 0; description { color_class: "button_inactive"; align: 0.5 0.5; fixed: 1 1; rel1 { relative: 0 3/20; } rel2 { relative: 1 10/20; } text { text: "gsm"; style: "textblock_style"; } } } /* end gsm_caption */ BUTTON(4, 0, 36/70, 1/4, 46/70, "-", button_inactive, 0.5, 0.5); BUTTON(7, 1/4, 36/70, 3/4, 46/70, "||||||||||", scale, 0, 0); BUTTON(5, 1/4, 36/70, 3/4, 46/70, "|", button_inactive, 0, 0); BUTTON(6, 3/4, 36/70, 4/4, 46/70, "+", button_inactive, 0.5, 0.5); BUTTON(11, 1/3, 58/70, 2/3, 68/70, "on", button_inactive, 0.5, 0.5); BUTTON(12, 0, 58/70 , 1/3, 68/70, "<", button_inactive, 0.5, 0.5); HBAR("Brightness", button_inactive, 1, 0, 36/70, 1, 46/70, 10); HBAR("Volume", button_inactive, 1, 0, 47/70, 3/3, 57/70, 10); } } }