diff --git a/data/themes/Makefile.am b/data/themes/Makefile.am index a1cd008af..d757a19fd 100644 --- a/data/themes/Makefile.am +++ b/data/themes/Makefile.am @@ -102,6 +102,48 @@ img/cell_sig_1.png \ img/cell_sig_2.png \ img/cell_sig_3.png \ img/cell_sig_4.png \ +img/clock_h2.png \ +img/clock_h3.png \ +img/clock_h4.png \ +img/clock_h5.png \ +img/clock_h6.png \ +img/clock_h7.png \ +img/clock_h.png \ +img/clock_hs2.png \ +img/clock_hs3.png \ +img/clock_hs4.png \ +img/clock_hs5.png \ +img/clock_hs6.png \ +img/clock_hs7.png \ +img/clock_hs.png \ +img/clock_m2.png \ +img/clock_m3.png \ +img/clock_m4.png \ +img/clock_m5.png \ +img/clock_m6.png \ +img/clock_m7.png \ +img/clock_m.png \ +img/clock_ms2.png \ +img/clock_ms3.png \ +img/clock_ms4.png \ +img/clock_ms5.png \ +img/clock_ms6.png \ +img/clock_ms7.png \ +img/clock_ms.png \ +img/clock_s2.png \ +img/clock_s3.png \ +img/clock_s4.png \ +img/clock_s5.png \ +img/clock_s6.png \ +img/clock_s7.png \ +img/clock_s.png \ +img/clock_ss2.png \ +img/clock_ss3.png \ +img/clock_ss4.png \ +img/clock_ss5.png \ +img/clock_ss6.png \ +img/clock_ss7.png \ +img/clock_ss.png \ img/darken_rounded_square.png \ img/diagonal_stripes.png \ img/dot_pattern.png \ @@ -120,6 +162,7 @@ img/holes_tiny_glow_vert.png \ img/holes_tiny_horiz.png \ img/holes_tiny_vert.png \ img/holes_vert.png \ +img/hole_pixel.png \ img/hole_tiny.png \ img/horiz_bar_inset.png \ img/horiz_glow_run.png \ @@ -133,6 +176,17 @@ img/knob_round_busy.png \ img/knob_round_small_busy.png \ img/knob_round_small_normal.png \ img/knob_round_small_selected.png \ +img/knob_sz_04.png \ +img/knob_sz_06.png \ +img/knob_sz_08.png \ +img/knob_sz_10.png \ +img/knob_sz_12.png \ +img/knob_sz_14.png \ +img/knob_sz_16.png \ +img/knob_sz_18.png \ +img/knob_sz_20.png \ +img/knob_sz_22.png \ +img/knob_sz_24.png \ img/led_dark.png \ img/led_light.png \ img/led_tiny_green.png \ diff --git a/data/themes/edc/O/clock.edc b/data/themes/edc/O/clock.edc index e8da5a8a6..8ac34391a 100644 --- a/data/themes/edc/O/clock.edc +++ b/data/themes/edc/O/clock.edc @@ -1029,337 +1029,3 @@ } } } - group { name: "e/modules/clock/main"; - images { - image: "O/clock_base.png" COMP; - image: "O/tacho_fg.png" COMP; - image: "O/ch-h1.png" COMP; - image: "O/ch-h2.png" COMP; - image: "O/ch-m1.png" COMP; - image: "O/ch-m2.png" COMP; - image: "O/ch-s1.png" COMP; - image: "O/ch-s2.png" COMP; - image: "O/ch-h1-2.png" COMP; - image: "O/ch-h2-2.png" COMP; - image: "O/ch-m1-2.png" COMP; - image: "O/ch-m2-2.png" COMP; - image: "O/ch-s1-2.png" COMP; - image: "O/ch-s2-2.png" COMP; - image: "O/ch-h1-3.png" COMP; - image: "O/ch-h2-3.png" COMP; - image: "O/ch-m1-3.png" COMP; - image: "O/ch-m2-3.png" COMP; - image: "O/ch-s1-3.png" COMP; - image: "O/ch-s2-3.png" COMP; - } - min: 16 16; - max: 128 128; - script { - public do_seconds, tick_timer; - - public clock_cb(val) { - new year, month, day, yearday, weekday, hour, minute; - new Float:second; - new v, dosec, tim; - new x, y, w, h; - - date(year, month, day, yearday, weekday, hour, minute, second); - get_geometry(PART:"hour", x, y, w, h); - dosec = get_int(do_seconds); - if (dosec) { - v = round(second); - tim = timer(1.0 - (second - v), "clock_cb", 1); - - custom_state(PART:"seconds", "default", 0.0); - set_state_val(PART:"seconds", STATE_MAP_ROT_Z, (v * 360.0) / 60.0); - if (h < 22) - set_state_val(PART:"seconds", STATE_IMAGE, IMAGE:"O/ch-s1-3.png"); - else if (h < 44) - set_state_val(PART:"seconds", STATE_IMAGE, IMAGE:"O/ch-s1-2.png"); - else - set_state_val(PART:"seconds", STATE_IMAGE, IMAGE:"O/ch-s1.png"); - set_state(PART:"seconds", "custom", 0.0); - - custom_state(PART:"seconds-sh", "default", 0.0); - set_state_val(PART:"seconds-sh", STATE_MAP_ROT_Z, (v * 360.0) / 60.0); - if (h < 22) - set_state_val(PART:"seconds-sh", STATE_IMAGE, IMAGE:"O/ch-s2-3.png"); - else if (h < 44) - set_state_val(PART:"seconds-sh", STATE_IMAGE, IMAGE:"O/ch-s2-2.png"); - else - set_state_val(PART:"seconds-sh", STATE_IMAGE, IMAGE:"O/ch-s2.png"); - set_state(PART:"seconds-sh", "custom", 0.0); - } - else { - tim = timer(60.0 - (second), "clock_cb", 1); - } - set_int(tick_timer, tim); - - custom_state(PART:"minutes", "default", 0.0); - set_state_val(PART:"minutes", STATE_MAP_ROT_Z, (float(minute) * 360.0) / 60.0); - if (h < 22) - set_state_val(PART:"minutes", STATE_IMAGE, IMAGE:"O/ch-m1-3.png"); - else if (h < 44) - set_state_val(PART:"minutes", STATE_IMAGE, IMAGE:"O/ch-m1-2.png"); - else - set_state_val(PART:"minutes", STATE_IMAGE, IMAGE:"O/ch-m1.png"); - set_state(PART:"minutes", "custom", 0.0); - - custom_state(PART:"minutes-sh", "default", 0.0); - set_state_val(PART:"minutes-sh", STATE_MAP_ROT_Z, (float(minute) * 360.0) / 60.0); - if (h < 22) - set_state_val(PART:"minutes-sh", STATE_IMAGE, IMAGE:"O/ch-m2-3.png"); - else if (h < 44) - set_state_val(PART:"minutes-sh", STATE_IMAGE, IMAGE:"O/ch-m2-2.png"); - else - set_state_val(PART:"minutes-sh", STATE_IMAGE, IMAGE:"O/ch-m2.png"); - set_state(PART:"minutes-sh", "custom", 0.0); - - custom_state(PART:"hour", "default", 0.0); - set_state_val(PART:"hour", STATE_MAP_ROT_Z, ((float(hour) + (float(minute) / 60.0)) * 360.0) / 12.0); - if (h < 22) - set_state_val(PART:"hour", STATE_IMAGE, IMAGE:"O/ch-h1-3.png"); - else if (h < 44) - set_state_val(PART:"hour", STATE_IMAGE, IMAGE:"O/ch-h1-2.png"); - else - set_state_val(PART:"hour", STATE_IMAGE, IMAGE:"O/ch-h1.png"); - set_state(PART:"hour", "custom", 0.0); - - custom_state(PART:"hour-sh", "default", 0.0); - set_state_val(PART:"hour-sh", STATE_MAP_ROT_Z, ((float(hour) + (float(minute) / 60.0)) * 360.0) / 12.0); - if (h < 22) - set_state_val(PART:"hour-sh", STATE_IMAGE, IMAGE:"O/ch-h2-3.png"); - else if (h < 44) - set_state_val(PART:"hour-sh", STATE_IMAGE, IMAGE:"O/ch-h2-2.png"); - else - set_state_val(PART:"hour-sh", STATE_IMAGE, IMAGE:"O/ch-h2.png"); - set_state(PART:"hour-sh", "custom", 0.0); - } - } - parts { - part { - name: "base"; - description { - state: "default" 0.0; - aspect: 1.0 1.0; - image.normal: "O/clock_base.png"; - } - } - part { - name: "base2"; - type: RECT; - mouse_events: 0; - description { - state: "default" 0.0; - visible: 0; - rel1 { - to: "base"; - relative: (2.0/128.0) (2.0/128.0); - } - rel2 { - to: "base"; - relative: (1.0+(2.0/128.0)) (1.0+(2.0/128.0)); - } - } - } - part { - name: "seconds-sh"; - mouse_events: 0; - description { state: "default" 0.0; - rel1 { - to: "base2"; - relative: 0.3125 0.0; - } - rel2 { - to: "base2"; - relative: 0.6875 0.6875; - } - image.normal: "O/ch-s2.png"; - map { - on: 1; - rotation { - center: "base2"; - } - } - } - description { state: "hidden" 0.0; - inherit: "default" 0.0; - visible: 0; - } - } - part { - name: "seconds"; - mouse_events: 0; - description { state: "default" 0.0; - rel1 { - to: "base"; - relative: 0.3125 0.0; - } - rel2 { - to: "base"; - relative: 0.6875 0.6875; - } - image.normal: "O/ch-s1.png"; - map { - on: 1; - rotation { - center: "base"; - } - } - } - description { state: "hidden" 0.0; - inherit: "default" 0.0; - visible: 0; - } - } - part { - name: "minutes-sh"; - mouse_events: 0; - description { - state: "default" 0.0; - rel1 { - to: "base2"; - relative: 0.3125 0.0; - } - rel2 { - to: "base2"; - relative: 0.6875 0.6875; - } - image.normal: "O/ch-m2.png"; - map { - on: 1; - rotation { - center: "base2"; - } - } - } - } - part { - name: "minutes"; - mouse_events: 0; - description { - state: "default" 0.0; - rel1 { - to: "base"; - relative: 0.3125 0.0; - } - rel2 { - to: "base"; - relative: 0.6875 0.6875; - } - image.normal: "O/ch-m1.png"; - map { - on: 1; - rotation { - center: "base"; - } - } - } - } - part { - name: "hour-sh"; - mouse_events: 0; - description { - state: "default" 0.0; - rel1 { - to: "base2"; - relative: 0.3125 0.0; - } - rel2 { - to: "base2"; - relative: 0.6875 0.6875; - } - image.normal: "O/ch-h2.png"; - map { - on: 1; - rotation { - center: "base2"; - } - } - } - } - part { - name: "hour"; - mouse_events: 0; - description { - state: "default" 0.0; - rel1 { - to: "base"; - relative: 0.3125 0.0; - } - rel2 { - to: "base"; - relative: 0.6875 0.6875; - } - image.normal: "O/ch-h1.png"; - map { - on: 1; - rotation { - center: "base"; - } - } - } - } - part { - name: "over"; - mouse_events: 0; - description { - state: "default" 0.0; - rel1.to: "base"; - rel2.to: "base"; - image.normal: "O/tacho_fg.png"; - } - } - } - programs { - program { name: "init"; - signal: "load"; - source: ""; - script { - clock_cb(0); - } - } - program { name: "secon"; - signal: "e,state,seconds,on"; - source: "e"; - action: STATE_SET "default" 0.0; - target: "seconds"; - target: "seconds-sh"; - after: "sec2"; - } - program { name: "sec2"; - script { - new tim; - - set_int(do_seconds, 1); - tim = get_int(tick_timer); - if (tim) { - cancel_timer(tim); - set_int(tick_timer, 0); - } - clock_cb(0); - } - } - program { name: "secoff"; - signal: "e,state,seconds,off"; - source: "e"; - action: STATE_SET "hidden" 0.0; - target: "seconds"; - target: "seconds-sh"; - after: "sec3"; - } - program { name: "sec3"; - script { - new tim; - - set_int(do_seconds, 0); - tim = get_int(tick_timer); - if (tim) { - cancel_timer(tim); - set_int(tick_timer, 0); - } - clock_cb(0); - } - } - } - } diff --git a/data/themes/edc/clock.edc b/data/themes/edc/clock.edc index 573e40d6f..31c86f6ea 100644 --- a/data/themes/edc/clock.edc +++ b/data/themes/edc/clock.edc @@ -3,20 +3,44 @@ group { name: "e/modules/clock/digital"; } #endif -#if 0 +#if 1 group { name: "e/modules/clock/main"; images { - image: "clock_base.png" COMP; - image: "tacho_fg.png" COMP; - image: "ch-h1.png" COMP; - image: "ch-h2.png" COMP; - image: "ch-m1.png" COMP; - image: "ch-m2.png" COMP; - image: "ch-s1.png" COMP; - image: "ch-s2.png" COMP; + image: "hole_tiny.png" COMP; + image: "hole_pixel.png" COMP; +#define SET(_NAME) \ + set { name: _NAME; \ + image { image: _NAME".png" COMP; size: 26 83 99999 99999; } \ + image { image: _NAME"2.png" COMP; size: 23 71 26 82; } \ + image { image: _NAME"3.png" COMP; size: 19 58 22 70; } \ + image { image: _NAME"4.png" COMP; size: 15 45 18 57; } \ + image { image: _NAME"5.png" COMP; size: 11 33 14 44; } \ + image { image: _NAME"6.png" COMP; size: 7 20 10 32; } \ + image { image: _NAME"7.png" COMP; size: 0 0 6 19; } \ + } + SET("clock_h") + SET("clock_hs") + SET("clock_m") + SET("clock_ms") + SET("clock_s") + SET("clock_ss") +#undef SET + set { name: "knob"; + image { image: "knob_sz_24.png" COMP; size: 31 31 32 32; } + image { image: "knob_sz_22.png" COMP; size: 29 29 30 30; } + image { image: "knob_sz_20.png" COMP; size: 27 27 28 28; } + image { image: "knob_sz_18.png" COMP; size: 25 25 26 26; } + image { image: "knob_sz_16.png" COMP; size: 23 23 24 24; } + image { image: "knob_sz_14.png" COMP; size: 21 21 22 22; } + image { image: "knob_sz_12.png" COMP; size: 19 19 20 20; } + image { image: "knob_sz_10.png" COMP; size: 17 17 18 18; } + image { image: "knob_sz_08.png" COMP; size: 15 15 16 16; } + image { image: "knob_sz_06.png" COMP; size: 13 13 14 14; } + image { image: "knob_sz_04.png" COMP; size: 0 0 12 12; } + } } min: 16 16; - max: 128 128; + max: 160 160; script { public do_seconds, tick_timer; @@ -24,10 +48,8 @@ group { name: "e/modules/clock/main"; new year, month, day, yearday, weekday, hour, minute; new Float:second; new v, dosec, tim; - new x, y, w, h; date(year, month, day, yearday, weekday, hour, minute, second); - get_geometry(PART:"hour", x, y, w, h); dosec = get_int(do_seconds); if (dosec) { v = round(second); @@ -35,12 +57,10 @@ group { name: "e/modules/clock/main"; custom_state(PART:"seconds", "default", 0.0); set_state_val(PART:"seconds", STATE_MAP_ROT_Z, (v * 360.0) / 60.0); - set_state_val(PART:"seconds", STATE_IMAGE, IMAGE:"ch-s1.png"); set_state(PART:"seconds", "custom", 0.0); custom_state(PART:"seconds-sh", "default", 0.0); set_state_val(PART:"seconds-sh", STATE_MAP_ROT_Z, (v * 360.0) / 60.0); - set_state_val(PART:"seconds-sh", STATE_IMAGE, IMAGE:"ch-s2.png"); set_state(PART:"seconds-sh", "custom", 0.0); } else { @@ -50,120 +70,124 @@ group { name: "e/modules/clock/main"; custom_state(PART:"minutes", "default", 0.0); set_state_val(PART:"minutes", STATE_MAP_ROT_Z, (float(minute) * 360.0) / 60.0); - set_state_val(PART:"minutes", STATE_IMAGE, IMAGE:"ch-m1.png"); set_state(PART:"minutes", "custom", 0.0); custom_state(PART:"minutes-sh", "default", 0.0); set_state_val(PART:"minutes-sh", STATE_MAP_ROT_Z, (float(minute) * 360.0) / 60.0); - set_state_val(PART:"minutes-sh", STATE_IMAGE, IMAGE:"ch-m2.png"); set_state(PART:"minutes-sh", "custom", 0.0); - custom_state(PART:"hour", "default", 0.0); - set_state_val(PART:"hour", STATE_MAP_ROT_Z, ((float(hour) + (float(minute) / 60.0)) * 360.0) / 12.0); - set_state_val(PART:"hour", STATE_IMAGE, IMAGE:"ch-h1.png"); - set_state(PART:"hour", "custom", 0.0); + custom_state(PART:"hours", "default", 0.0); + set_state_val(PART:"hours", STATE_MAP_ROT_Z, ((float(hour) + (float(minute) / 60.0)) * 360.0) / 12.0); + set_state(PART:"hours", "custom", 0.0); - custom_state(PART:"hour-sh", "default", 0.0); - set_state_val(PART:"hour-sh", STATE_MAP_ROT_Z, ((float(hour) + (float(minute) / 60.0)) * 360.0) / 12.0); - set_state_val(PART:"hour-sh", STATE_IMAGE, IMAGE:"ch-h2.png"); - set_state(PART:"hour-sh", "custom", 0.0); + custom_state(PART:"hours-sh", "default", 0.0); + set_state_val(PART:"hours-sh", STATE_MAP_ROT_Z, ((float(hour) + (float(minute) / 60.0)) * 360.0) / 12.0); + set_state(PART:"hours-sh", "custom", 0.0); } } parts { - part { name: "base"; + part { name: "event"; type: RECT; description { state: "default" 0.0; + color: 0 0 0 0; + } + } + part { name: "base"; type: SPACER; + description { state: "default" 0.0; + rel1.offset: -1 -1; + rel2.offset: 0 0; aspect: 1.0 1.0; - image.normal: "clock_base.png"; } } - part { name: "base2"; type: RECT; mouse_events: 0; + part { name: "base-sh"; type: SPACER; description { state: "default" 0.0; - visible: 0; + rel1.offset: 0 1; rel1.to: "base"; - rel1.relative: (2.0/128.0) (2.0/128.0); + rel2.offset: -1 0; rel2.to: "base"; - rel2.relative: (1.0+(2.0/128.0)) (1.0+(2.0/128.0)); } } - part { name: "seconds-sh"; mouse_events: 0; - description { state: "default" 0.0; - rel1.to: "base2"; - rel1.relative: 0.3125 0.0; - rel2.to: "base2"; - rel2.relative: 0.6875 0.6875; - image.normal: "ch-s2.png"; - map. on: 1; - map.rotation.center: "base2"; - } - description { state: "hidden" 0.0; - inherit: "default" 0.0; - visible: 0; - } +#define POINT(_NAME, _SZ, _IMG, _X, _Y) \ + part { name: _NAME; \ + description { state: "default" 0.0; \ + rel1.relative: _X _Y; \ + rel1.to: "base"; \ + rel2.relative: _X _Y; \ + rel2.to: "base"; \ + min: _SZ _SZ; \ + max: _SZ _SZ; \ + fixed: 1 1; \ + image.normal: "hole_"_IMG".png"; \ + } \ } - part { name: "seconds"; mouse_events: 0; + POINT("h-12", 4, "tiny", 0.500, 0.100) + POINT("h-01", 3, "pixel", 0.700, 0.154) + POINT("h-02", 3, "pixel", 0.846, 0.300) + POINT("h-03", 4, "tiny", 0.900, 0.500) + POINT("h-04", 3, "pixel", 0.846, 0.700) + POINT("h-05", 3, "pixel", 0.700, 0.846) + POINT("h-06", 4, "tiny", 0.500, 0.900) + POINT("h-07", 3, "pixel", 0.300, 0.846) + POINT("h-08", 3, "pixel", 0.154, 0.700) + POINT("h-09", 4, "tiny", 0.100, 0.500) + POINT("h-10", 3, "pixel", 0.154, 0.300) + POINT("h-11", 3, "pixel", 0.300, 0.154) +#undef POINT +#define HAND(_NAME, _IMG) \ + part { name: _NAME"-sh"; mouse_events: 0; \ + description { state: "default" 0.0; \ + rel1.to: "base-sh"; \ + rel1.relative: (65/160) 0; \ + rel2.to: "base-sh"; \ + rel2.relative: (95/160) (95/160); \ + image.normal: _IMG"s"; \ + map.on: 1; \ + map.rotation.center: "base-sh"; \ + color: 255 255 255 128; \ + } \ + description { state: "hidden" 0.0; \ + inherit: "default" 0.0; \ + visible: 0; \ + } \ + } \ + part { name: _NAME; mouse_events: 0; \ + description { state: "default" 0.0; \ + rel1.to: "base"; \ + rel1.relative: (65/160) 0; \ + rel2.to: "base"; \ + rel2.relative: (95/160) (95/160); \ + image.normal: _IMG; \ + map.on: 1; \ + map.rotation.center: "base"; \ + } \ + description { state: "hidden" 0.0; \ + inherit: "default" 0.0; \ + visible: 0; \ + } \ + } + HAND("seconds", "clock_s") + HAND("minutes", "clock_m") + HAND("hours", "clock_h") +#undef HAND + part { name: "knob"; type: SPACER; description { state: "default" 0.0; + rel1.relative: (18/40) (18/40); rel1.to: "base"; - rel1.relative: 0.3125 0.0; + rel2.relative: (22/40) (22/40); rel2.to: "base"; - rel2.relative: 0.6875 0.6875; - image.normal: "ch-s1.png"; - map.on: 1; - map.rotation.center: "base"; - } - description { state: "hidden" 0.0; - inherit: "default" 0.0; - visible: 0; + min: 4 4; + step: 2 2; + max: 24 24; } } - part { name: "minutes-sh"; mouse_events: 0; + part { name: "knob2"; description { state: "default" 0.0; - rel1.to: "base2"; - rel1.relative: 0.3125 0.0; - rel2.to: "base2"; - rel2.relative: 0.6875 0.6875; - image.normal: "ch-m2.png"; - map.on: 1; - map.rotation.center: "base2"; - } - } - part { name: "minutes"; mouse_events: 0; - description { state: "default" 0.0; - rel1.to: "base"; - rel1.relative: 0.3125 0.0; - rel2.to: "base"; - rel2.relative: 0.6875 0.6875; - image.normal: "ch-m1.png"; - map.on: 1; - map.rotation.center: "base"; - } - } - part { name: "hour-sh"; mouse_events: 0; - description { state: "default" 0.0; - rel1.to: "base2"; - rel1.relative: 0.3125 0.0; - rel2.to: "base2"; - rel2.relative: 0.6875 0.6875; - image.normal: "ch-h2.png"; - map.on: 1; - map.rotation.center: "base2"; - } - } - part { name: "hour"; mouse_events: 0; - description { state: "default" 0.0; - rel1.to: "base"; - rel1.relative: 0.3125 0.0; - rel2.to: "base"; - rel2.relative: 0.6875 0.6875; - image.normal: "ch-h1.png"; - map.on: 1; - map.rotation.center: "base"; - } - } - part { name: "over"; mouse_events: 0; - description { state: "default" 0.0; - rel1.to: "base"; - rel2.to: "base"; - image.normal: "tacho_fg.png"; + rel1.offset: -4 -4; + rel1.to: "knob"; + rel2.offset: 3 3; + rel2.to: "knob"; + min: 12 12; + max: 32 32; + image.normal: "knob"; } } } diff --git a/data/themes/img/clock_h.png b/data/themes/img/clock_h.png new file mode 100644 index 000000000..5a5a6d4e5 Binary files /dev/null and b/data/themes/img/clock_h.png differ diff --git a/data/themes/img/clock_h2.png b/data/themes/img/clock_h2.png new file mode 100644 index 000000000..faa899088 Binary files /dev/null and b/data/themes/img/clock_h2.png differ diff --git a/data/themes/img/clock_h3.png b/data/themes/img/clock_h3.png new file mode 100644 index 000000000..46f770d0d Binary files /dev/null and b/data/themes/img/clock_h3.png differ diff --git a/data/themes/img/clock_h4.png b/data/themes/img/clock_h4.png new file mode 100644 index 000000000..2bd969a37 Binary files /dev/null and b/data/themes/img/clock_h4.png differ diff --git a/data/themes/img/clock_h5.png b/data/themes/img/clock_h5.png new file mode 100644 index 000000000..bbd419197 Binary files /dev/null and b/data/themes/img/clock_h5.png differ diff --git a/data/themes/img/clock_h6.png b/data/themes/img/clock_h6.png new file mode 100644 index 000000000..c4ed40194 Binary files /dev/null and b/data/themes/img/clock_h6.png differ diff --git a/data/themes/img/clock_h7.png b/data/themes/img/clock_h7.png new file mode 100644 index 000000000..2b047892e Binary files /dev/null and b/data/themes/img/clock_h7.png differ diff --git a/data/themes/img/clock_hs.png b/data/themes/img/clock_hs.png new file mode 100644 index 000000000..e8bd2a481 Binary files /dev/null and b/data/themes/img/clock_hs.png differ diff --git a/data/themes/img/clock_hs2.png b/data/themes/img/clock_hs2.png new file mode 100644 index 000000000..5db1292a0 Binary files /dev/null and b/data/themes/img/clock_hs2.png differ diff --git a/data/themes/img/clock_hs3.png b/data/themes/img/clock_hs3.png new file mode 100644 index 000000000..d293df90b Binary files /dev/null and b/data/themes/img/clock_hs3.png differ diff --git a/data/themes/img/clock_hs4.png b/data/themes/img/clock_hs4.png new file mode 100644 index 000000000..7410837a1 Binary files /dev/null and b/data/themes/img/clock_hs4.png differ diff --git a/data/themes/img/clock_hs5.png b/data/themes/img/clock_hs5.png new file mode 100644 index 000000000..52405be49 Binary files /dev/null and b/data/themes/img/clock_hs5.png differ diff --git a/data/themes/img/clock_hs6.png b/data/themes/img/clock_hs6.png new file mode 100644 index 000000000..4dd7938d1 Binary files /dev/null and b/data/themes/img/clock_hs6.png differ diff --git a/data/themes/img/clock_hs7.png b/data/themes/img/clock_hs7.png new file mode 100644 index 000000000..19550cd40 Binary files /dev/null and b/data/themes/img/clock_hs7.png differ diff --git a/data/themes/img/clock_m.png b/data/themes/img/clock_m.png new file mode 100644 index 000000000..ab0856037 Binary files /dev/null and b/data/themes/img/clock_m.png differ diff --git a/data/themes/img/clock_m2.png b/data/themes/img/clock_m2.png new file mode 100644 index 000000000..7051c9c60 Binary files /dev/null and b/data/themes/img/clock_m2.png differ diff --git a/data/themes/img/clock_m3.png b/data/themes/img/clock_m3.png new file mode 100644 index 000000000..207ab3a26 Binary files /dev/null and b/data/themes/img/clock_m3.png differ diff --git a/data/themes/img/clock_m4.png b/data/themes/img/clock_m4.png new file mode 100644 index 000000000..67dac93b8 Binary files /dev/null and b/data/themes/img/clock_m4.png differ diff --git a/data/themes/img/clock_m5.png b/data/themes/img/clock_m5.png new file mode 100644 index 000000000..68a4e7f72 Binary files /dev/null and b/data/themes/img/clock_m5.png differ diff --git a/data/themes/img/clock_m6.png b/data/themes/img/clock_m6.png new file mode 100644 index 000000000..440650f92 Binary files /dev/null and b/data/themes/img/clock_m6.png differ diff --git a/data/themes/img/clock_m7.png b/data/themes/img/clock_m7.png new file mode 100644 index 000000000..e748bbe6f Binary files /dev/null and b/data/themes/img/clock_m7.png differ diff --git a/data/themes/img/clock_ms.png b/data/themes/img/clock_ms.png new file mode 100644 index 000000000..e2e4dac6a Binary files /dev/null and b/data/themes/img/clock_ms.png differ diff --git a/data/themes/img/clock_ms2.png b/data/themes/img/clock_ms2.png new file mode 100644 index 000000000..9873b8871 Binary files /dev/null and b/data/themes/img/clock_ms2.png differ diff --git a/data/themes/img/clock_ms3.png b/data/themes/img/clock_ms3.png new file mode 100644 index 000000000..14d0333ee Binary files /dev/null and b/data/themes/img/clock_ms3.png differ diff --git a/data/themes/img/clock_ms4.png b/data/themes/img/clock_ms4.png new file mode 100644 index 000000000..44ada1640 Binary files /dev/null and b/data/themes/img/clock_ms4.png differ diff --git a/data/themes/img/clock_ms5.png b/data/themes/img/clock_ms5.png new file mode 100644 index 000000000..c2658343f Binary files /dev/null and b/data/themes/img/clock_ms5.png differ diff --git a/data/themes/img/clock_ms6.png b/data/themes/img/clock_ms6.png new file mode 100644 index 000000000..45153b77a Binary files /dev/null and b/data/themes/img/clock_ms6.png differ diff --git a/data/themes/img/clock_ms7.png b/data/themes/img/clock_ms7.png new file mode 100644 index 000000000..a4777d7ff Binary files /dev/null and b/data/themes/img/clock_ms7.png differ diff --git a/data/themes/img/clock_s.png b/data/themes/img/clock_s.png new file mode 100644 index 000000000..177c3f998 Binary files /dev/null and b/data/themes/img/clock_s.png differ diff --git a/data/themes/img/clock_s2.png b/data/themes/img/clock_s2.png new file mode 100644 index 000000000..b85e40797 Binary files /dev/null and b/data/themes/img/clock_s2.png differ diff --git a/data/themes/img/clock_s3.png b/data/themes/img/clock_s3.png new file mode 100644 index 000000000..9c9ea4133 Binary files /dev/null and b/data/themes/img/clock_s3.png differ diff --git a/data/themes/img/clock_s4.png b/data/themes/img/clock_s4.png new file mode 100644 index 000000000..c3d510bba Binary files /dev/null and b/data/themes/img/clock_s4.png differ diff --git a/data/themes/img/clock_s5.png b/data/themes/img/clock_s5.png new file mode 100644 index 000000000..fbc4e3102 Binary files /dev/null and b/data/themes/img/clock_s5.png differ diff --git a/data/themes/img/clock_s6.png b/data/themes/img/clock_s6.png new file mode 100644 index 000000000..e7f1ba84b Binary files /dev/null and b/data/themes/img/clock_s6.png differ diff --git a/data/themes/img/clock_s7.png b/data/themes/img/clock_s7.png new file mode 100644 index 000000000..a051453d6 Binary files /dev/null and b/data/themes/img/clock_s7.png differ diff --git a/data/themes/img/clock_ss.png b/data/themes/img/clock_ss.png new file mode 100644 index 000000000..aa9cbceae Binary files /dev/null and b/data/themes/img/clock_ss.png differ diff --git a/data/themes/img/clock_ss2.png b/data/themes/img/clock_ss2.png new file mode 100644 index 000000000..58cf1078b Binary files /dev/null and b/data/themes/img/clock_ss2.png differ diff --git a/data/themes/img/clock_ss3.png b/data/themes/img/clock_ss3.png new file mode 100644 index 000000000..1d87f9efa Binary files /dev/null and b/data/themes/img/clock_ss3.png differ diff --git a/data/themes/img/clock_ss4.png b/data/themes/img/clock_ss4.png new file mode 100644 index 000000000..e30a86fe7 Binary files /dev/null and b/data/themes/img/clock_ss4.png differ diff --git a/data/themes/img/clock_ss5.png b/data/themes/img/clock_ss5.png new file mode 100644 index 000000000..66b435ba9 Binary files /dev/null and b/data/themes/img/clock_ss5.png differ diff --git a/data/themes/img/clock_ss6.png b/data/themes/img/clock_ss6.png new file mode 100644 index 000000000..95b12a182 Binary files /dev/null and b/data/themes/img/clock_ss6.png differ diff --git a/data/themes/img/clock_ss7.png b/data/themes/img/clock_ss7.png new file mode 100644 index 000000000..423eef3bf Binary files /dev/null and b/data/themes/img/clock_ss7.png differ diff --git a/data/themes/img/hole_pixel.png b/data/themes/img/hole_pixel.png new file mode 100644 index 000000000..feb0c9973 Binary files /dev/null and b/data/themes/img/hole_pixel.png differ diff --git a/data/themes/img/knob_sz_04.png b/data/themes/img/knob_sz_04.png new file mode 100644 index 000000000..14a9d00b2 Binary files /dev/null and b/data/themes/img/knob_sz_04.png differ diff --git a/data/themes/img/knob_sz_06.png b/data/themes/img/knob_sz_06.png new file mode 100644 index 000000000..2642088e2 Binary files /dev/null and b/data/themes/img/knob_sz_06.png differ diff --git a/data/themes/img/knob_sz_08.png b/data/themes/img/knob_sz_08.png new file mode 100644 index 000000000..cb2df5951 Binary files /dev/null and b/data/themes/img/knob_sz_08.png differ diff --git a/data/themes/img/knob_sz_10.png b/data/themes/img/knob_sz_10.png new file mode 100644 index 000000000..5d526d68c Binary files /dev/null and b/data/themes/img/knob_sz_10.png differ diff --git a/data/themes/img/knob_sz_12.png b/data/themes/img/knob_sz_12.png new file mode 100644 index 000000000..ff19cb190 Binary files /dev/null and b/data/themes/img/knob_sz_12.png differ diff --git a/data/themes/img/knob_sz_14.png b/data/themes/img/knob_sz_14.png new file mode 100644 index 000000000..2dc522ce8 Binary files /dev/null and b/data/themes/img/knob_sz_14.png differ diff --git a/data/themes/img/knob_sz_16.png b/data/themes/img/knob_sz_16.png new file mode 100644 index 000000000..6cc0d7b46 Binary files /dev/null and b/data/themes/img/knob_sz_16.png differ diff --git a/data/themes/img/knob_sz_18.png b/data/themes/img/knob_sz_18.png new file mode 100644 index 000000000..7ab9d6692 Binary files /dev/null and b/data/themes/img/knob_sz_18.png differ diff --git a/data/themes/img/knob_sz_20.png b/data/themes/img/knob_sz_20.png new file mode 100644 index 000000000..43d0a06f3 Binary files /dev/null and b/data/themes/img/knob_sz_20.png differ diff --git a/data/themes/img/knob_sz_22.png b/data/themes/img/knob_sz_22.png new file mode 100644 index 000000000..d183f604f Binary files /dev/null and b/data/themes/img/knob_sz_22.png differ diff --git a/data/themes/img/knob_sz_24.png b/data/themes/img/knob_sz_24.png new file mode 100644 index 000000000..86a8ea317 Binary files /dev/null and b/data/themes/img/knob_sz_24.png differ