2 // This file (and only this one) is licenses under public-domain. The reason
3 // is that this is meant to serve as a template for making your own themes and
4 // Elementary's LGPL license is not intended to follow. The images used do come
5 // under LGPL, but this file specifically for the structure of your theme is
6 // public-domain. This means you can take, use, re-license and otherwise
7 // have zero restrictions on using this file as a base for your theme.
9 externals.external: "elm";
13 ///////////////////////////////////////////////////////////////////////////////
14 group { name: "elm/focus_highlight/top/default";
16 image: "emo-unhappy.png" COMP;
24 public s_x, s_y, s_w, s_h; /* source */
25 public difx, dify, difw, difh;
28 public animator1(val, Float:pos) {
29 new x, y, w, h, dx, dy, dw, dh, Float:rot;
31 dx = round(float_mul(float(get_int(difx)), pos));
32 x = get_int(s_x) + dx;
33 dy = round(float_mul(float(get_int(dify)), pos));
34 y = get_int(s_y) + dy;
35 dw = round(float_mul(float(get_int(difw)), pos));
36 w = get_int(s_w) + dw;
37 dy = round(float_mul(float(get_int(difh)), pos));
38 h = get_int(s_h) + dh;
40 update_offset(x, y, w, h);
42 rot = 360.0 * pos * float(get_int(rot_dir));
43 set_state_val(PART:"shine", STATE_MAP_ROT_Z, rot);
46 emit("elm,action,focus,anim,end", "");
47 set_state(PART:"shine", "default", 0.0);
51 public update_offset(x, y, w, h) {
57 set_state_val(PART:"shine", STATE_REL1_OFFSET, x1, y1);
58 set_state_val(PART:"shine", STATE_REL2_OFFSET, x2, y2);
61 public message(Msg_Type:type, id, ...) {
62 if ((type == MSG_INT_SET) && (id == 1)) {
65 new px1, px2, py1, py2;
81 set_int(difx, x2 - x1);
82 set_int(dify, y2 - y1);
83 set_int(difw, w2 - w1);
84 set_int(difh, h2 - h1);
92 } else if (px1 > px2) {
101 set_int(rot_dir, rd);
103 custom_state(PART:"shine", "default", 0.0);
104 set_state_val(PART:"shine", STATE_REL1, 0.0, 0.0);
105 set_state_val(PART:"shine", STATE_REL2, 0.0, 0.0);
106 set_state_val(PART:"shine", STATE_MAP_ON, 1);
107 set_state_val(PART:"shine", STATE_MAP_ROT_Z, 0.0);
108 update_offset(x1, y1, w1, h1);
109 set_state(PART:"shine", "custom", 0.0);
111 anim(0.2, "animator1", 1);
120 description { state: "default" 0.0;
121 rel1.relative: 0.0 0.0;
122 rel2.relative: 1.0 1.0;
126 part { name: "shine";
130 ignore_flags: ON_HOLD;
131 description { state: "default" 0.0;
133 normal: "emo-unhappy.png";
136 rel1.relative: 1.0 0.0;
137 rel1.offset: -15 -15;
139 rel2.relative: 1.0 0.0;
142 description { state: "disabled" 0.0;
143 inherit: "default" 0.0;
148 program { name: "show";
149 signal: "elm,action,focus,show";
153 target: "hide_start";
157 program { name: "show_start";
158 action: STATE_SET "default" 0.0;
159 transition: LINEAR 0.2;
163 program { name: "show_end";
164 action: SIGNAL_EMIT "elm,action,focus,show,end" "";
166 program { name: "hide";
167 signal: "elm,action,focus,hide";
171 target: "show_start";
175 program { name: "hide_start";
176 action: STATE_SET "disabled" 0.0;
177 transition: LINEAR 0.2;
181 program { name: "hide_end";
182 action: SIGNAL_EMIT "elm,action,focus,hide,end" "";
187 ///////////////////////////////////////////////////////////////////////////////
188 group { name: "elm/focus_highlight/bottom/default";
190 part { name: "shine";
194 ignore_flags: ON_HOLD;
195 description { state: "default" 0.0;
200 description { state: "disabled" 0.0;
201 inherit: "default" 0.0;
206 program { name: "show";
207 signal: "elm,action,focus,show";
211 target: "hide_start";
215 program { name: "show_start";
216 action: STATE_SET "default" 0.0;
217 transition: LINEAR 0.2;
221 program { name: "show_end";
222 action: SIGNAL_EMIT "elm,action,focus,show,end" "";
224 program { name: "hide";
225 signal: "elm,action,focus,hide";
229 target: "show_start";
233 program { name: "hide_start";
234 action: STATE_SET "disabled" 0.0;
235 transition: LINEAR 0.2;
239 program { name: "hide_end";
240 action: SIGNAL_EMIT "elm,action,focus,hide,end" "";
244 #include "widgets/bg.edc"
245 #include "widgets/scroller.edc"
246 #include "widgets/label.edc"
247 #include "widgets/button.edc"
248 #include "widgets/toggle.edc"
249 #include "widgets/clock.edc"
250 #include "widgets/menu.edc"
251 #include "widgets/frame.edc"
252 #include "widgets/tooltip.edc"
253 #include "widgets/hover.edc"
254 #include "widgets/ctxpopup.edc"
255 #include "widgets/entry.edc"
256 #include "widgets/bubble.edc"
257 #include "widgets/photo.edc"
258 #include "widgets/thumb.edc"
259 #include "widgets/icon.edc"
260 #include "widgets/toolbar.edc"
261 #include "widgets/notify.edc"
262 #include "widgets/slideshow.edc"
263 #include "widgets/win.edc"
264 #include "widgets/list.edc"
265 #include "widgets/slider.edc"
266 #include "widgets/actionslider.edc"
267 #include "widgets/genlist.edc"
268 #include "widgets/check.edc"
269 #include "widgets/radio.edc"
270 #include "widgets/pager.edc"
271 #include "widgets/progressbar.edc"
272 #include "widgets/separator.edc"
273 #include "widgets/spinner.edc"
274 #include "widgets/index.edc"
275 #include "widgets/gengrid.edc"
276 #include "widgets/photocam.edc"
277 #include "widgets/map.edc"
278 #include "widgets/panes.edc"
279 #include "widgets/panel.edc"
280 #include "widgets/conformant.edc"
281 #include "widgets/calendar.edc"
282 #include "widgets/colorselector.edc"
283 #include "widgets/flipselector.edc"
284 #include "widgets/diskselector.edc"
285 #include "widgets/fileselector.edc"
286 #include "widgets/layout.edc"
287 #include "widgets/segment_control.edc"
288 #include "widgets/player.edc"
289 #include "widgets/video.edc"
290 #include "widgets/naviframe.edc"