are you serious? Isn't this what all users were complaining at ML and
#edevelop?

It doesn't fit efenniht look and feel, it should be clean as it used to be,
I'd say revert


On Sun, Nov 18, 2012 at 12:41 PM, Enlightenment SVN <
no-re...@enlightenment.org> wrote:

> Log:
> efenniht: adapt clock from dark
>
> Author:       billiob
> Date:         2012-11-18 06:41:17 -0800 (Sun, 18 Nov 2012)
> New Revision: 79429
> Trac:         http://trac.enlightenment.org/e/changeset/79429
>
> Added:
>   trunk/THEMES/efenniht/images/digit_0.png
> trunk/THEMES/efenniht/images/digit_1.png
> trunk/THEMES/efenniht/images/digit_2.png
> trunk/THEMES/efenniht/images/digit_3.png
> trunk/THEMES/efenniht/images/digit_4.png
> trunk/THEMES/efenniht/images/digit_5.png
> trunk/THEMES/efenniht/images/digit_6.png
> trunk/THEMES/efenniht/images/digit_7.png
> trunk/THEMES/efenniht/images/digit_8.png
> trunk/THEMES/efenniht/images/digit_9.png
> trunk/THEMES/efenniht/images/digit_am.png
> trunk/THEMES/efenniht/images/digit_na.png
> trunk/THEMES/efenniht/images/digit_pm.png
> trunk/THEMES/efenniht/images/dot_pattern.png
> trunk/THEMES/efenniht/images/hole_tiny.png
> trunk/THEMES/efenniht/images/separator_horiz.png
> Modified:
>   trunk/THEMES/efenniht/e/clock.edc
>
> Modified: trunk/THEMES/efenniht/e/clock.edc
> ===================================================================
> --- trunk/THEMES/efenniht/e/clock.edc   2012-11-18 14:38:02 UTC (rev 79428)
> +++ trunk/THEMES/efenniht/e/clock.edc   2012-11-18 14:41:17 UTC (rev 79429)
> @@ -1,85 +1,814 @@
>  collections {
> -   group { name: "e/modules/clock/main";
> -      script {
> -         public clock_cb(val) {
> -            new buffer[6];
> -            new year, month, day, yearday, weekday, hour, minute;
> -            new Float:second;
> +#define FIXED_SIZE(_WIDTH, _HEIGHT) \
> +   min: _WIDTH _HEIGHT; max: _WIDTH _HEIGHT; fixed: 1 1;
> +group { name: "e/modules/clock/digital";
> +   min: 64 16;
> +   max: 512 128;
> +   images.image: "digit_na.png" COMP;
> +   images.image: "digit_0.png" COMP;
> +   images.image: "digit_1.png" COMP;
> +   images.image: "digit_2.png" COMP;
> +   images.image: "digit_3.png" COMP;
> +   images.image: "digit_4.png" COMP;
> +   images.image: "digit_5.png" COMP;
> +   images.image: "digit_6.png" COMP;
> +   images.image: "digit_7.png" COMP;
> +   images.image: "digit_8.png" COMP;
> +   images.image: "digit_9.png" COMP;
> +   images.image: "digit_am.png" COMP;
> +   images.image: "digit_pm.png" COMP;
> +   images.image: "hole_tiny.png" COMP;
> +   script {
> +      public do_seconds, do_24h, do_date;
> +      new tick_timer;
>
> -            date(year, month, day, yearday, weekday, hour, minute,
> second);
> -            timer(60.0 - (second), "clock_cb", 1);
> +      valset(id, v) {
> +         if ((v >= 0) && (v <= 9)) {
> +            new buf[20];
> +            snprintf(buf, 20, "%i", v);
> +            set_state(id, buf, 0.0);
> +         } else {
> +            set_state(id, "default", 0.0);
> +         }
> +      }
> +      apvalset(id, pm) {
> +         if (pm) set_state(id, "active", 0.0);
> +         else set_state(id, "default", 0.0);
> +      }
> +      evalsize() {
> +         new do24h, dosec, v[14], i, tot, mul;
> +         new parts[] = {
> +            PART:"hours1", PART:"hours1",
> +            PART:"hours2", PART:"hours2",
> +            PART:"mins1", PART:"mins1",
> +            PART:"mins2", PART:"mins2",
> +            PART:"secs1", PART:"secs1",
> +            PART:"secs2", PART:"secs2",
> +            PART:"ampm", PART:"ampm"
> +         };
>
> -            buffer[0] = 0;
> +         mul = 4;
> +         if (get_int(do_date)) {
> +            mul = 3;
> +         }
>
> -            if (minute < 10 && hour < 10) { snprintf(buffer, 10,
> "0%i:0%i", hour, minute); }
> -            else if (minute < 10)         { snprintf(buffer, 10,
> "%i:0%i", hour, minute); }
> -            else if (hour < 10)           { snprintf(buffer, 10,
> "0%i:%i", hour, minute); }
> -            else                          { snprintf(buffer, 10, "%i:%i",
> hour, minute); }
> -            set_text(PART:"time", buffer);
> +         for (i = 0; i < 14; i += 2) {
> +            custom_state(parts[i], "default", 0.0);
> +         }
> +         v[0] = 0; v[1] = 2; v[2] = 2; v[3] = 4; // hrs
> +         v[4] = 5; v[5] = 7; v[6] = 7; v[7] = 9; // mins
> +         tot = 9;
>
> -            buffer[0] = 0;
> +         dosec = get_int(do_seconds);
> +         do24h = get_int(do_24h);
> +         if ((dosec) && (!do24h)) { // sec + ampm
> +            tot += 7;
> +            v[8] = 10; v[9] = 12; v[10] = 12; v[11] = 14;
> +            v[12] = 14; v[13] = 16;
> +         }
> +         else if ((dosec) && (do24h)) { // sec + -
> +            tot += 5;
> +            v[8] = 10; v[9] = 12; v[10] = 12; v[11] = 14;
> +            v[12] = 0; v[13] = 0;
> +         }
> +         else if ((!dosec) && (!do24h)) { // - + ampm
> +            tot += 2;
> +            v[8] = 0; v[9] = 0; v[10] = 0; v[11] = 0;
> +            v[12] = 9; v[13] = 11;
> +         }
> +         else if ((!dosec) && (do24h)) { // - + -
> +            tot += 0;
> +            v[8] = 0; v[9] = 0; v[10] = 0; v[11] = 0;
> +            v[12] = 0; v[13] = 0;
> +         }
> +         for (i = 0; i < 14; i += 2) {
> +            set_state_val(parts[i], STATE_REL1,
> +                          float(v[i]) / float(tot), 0.0);
> +            set_state_val(parts[i + 1], STATE_REL2,
> +                          float(v[i + 1]) / float(tot), 1.0);
> +         }
> +         for (i = 0; i < 14; i += 2) {
> +            set_state(parts[i], "custom", 0.0);
> +         }
> +         set_min_size(tot * mul, 16);
> +         set_max_size(tot * 8 * mul, 128);
> +         emit("e,state,sizing,changed", "");
> +      }
> +      reset() {
> +         new tim;
>
> -            if (day < 10 && month < 10) { snprintf(buffer, 10, "0%i/0%i",
> day, month); }
> -            else if (day < 10)         { snprintf(buffer, 10, "0%i/%i",
> day, month); }
> -            else if (month < 10)           { snprintf(buffer, 10,
> "%i/0%i", day, month); }
> -            else                          { snprintf(buffer, 10, "%i/%i",
> day, month); }
> -            set_text(PART:"date", buffer);
> +         evalsize();
> +         tim = get_int(tick_timer);
> +         if (tim) {
> +            cancel_timer(tim);
> +            set_int(tick_timer, 0);
> +         }
> +         clock_cb(0);
> +      }
>
> +      public clock_cb(val) {
> +         new year, month, day, yearday, weekday, hour, minute;
> +         new Float:second;
> +         new v, dosec, do24h, tim;
> +
> +         date(year, month, day, yearday, weekday, hour, minute, second);
> +         dosec = get_int(do_seconds);
> +         dosec = 1;
> +         if (dosec) {
> +            v = round(second);
> +            tim = timer(1.0 - (second - v), "clock_cb", 1);
> +            // set seconds to v
> +            valset(PART:"s0", v / 10);
> +            valset(PART:"s1", v % 10);
>           }
> +         else {
> +            tim = timer(60.0 - (second), "clock_cb", 1);
> +         }
> +         set_int(tick_timer, tim);
> +
> +         // set minutes to minute
> +         valset(PART:"m0", minute / 10);
> +         valset(PART:"m1", minute % 10);
> +
> +         // set hours to hour
> +         do24h = get_int(do_24h);
> +         if (do24h) {
> +            valset(PART:"h0", hour / 10);
> +            valset(PART:"h1", hour % 10);
> +         }
> +         else {
> +            new pm;
> +
> +            // if 12 or later, its pm
> +            if (hour >= 12) {
> +               pm = 1;
> +               // if we are after 12 (1, 2, 3 etc.) then mod by 12
> +               if (hour > 12) hour = hour % 12;
> +            }
> +            else {
> +               pm = 0;
> +               // make after midnight be 12:XX AM :)
> +               if (hour == 0) hour = 12;
> +            }
> +            valset(PART:"h0", hour / 10);
> +            valset(PART:"h1", hour % 10);
> +            apvalset(PART:"ap", pm);
> +         }
>        }
> -      parts {
> -         part { name: "eventarea";
> -            type: RECT;
> -            mouse_events: 1;
> -            description { state: "default" 0.0;
> -               min: 45 1;
> -               color: 0 0 0 0;
> -               visible: 1;
> +   }
> +   parts {
> +      part { name: "secclip"; type: RECT;
> +         description { state: "default" 0.0;
> +         }
> +         description { state: "hidden" 0.0;
> +            visible: 0;
> +         }
> +      }
> +      part { name: "ampmclip"; type: RECT;
> +         description { state: "default" 0.0;
> +         }
> +         description { state: "hidden" 0.0;
> +            visible: 0;
> +         }
> +      }
> +      // XXX: hours1/2, mins1/2, secs1/2 and ampm SHOULD be spacers... but
> +      // if they are calculations go weird. this shouldnt happen, but
> does.
> +      part { name: "timearea"; type: RECT;
> +         description { state: "default" 0.0;
> +            visible: 0;
> +         }
> +         description { state: "date" 0.0;
> +            inherit: "default" 0.0;
> +            rel2.relative: 1.0 0.0;
> +            rel2.offset: -1 4;
> +            rel2.to_y: "e.text.today";
> +         }
> +      }
> +      part { name: "hours1"; type: RECT;
> +         description { state: "default" 0.0;
> +            rel1.relative: (0/16) 0.0;
> +            rel2.relative: (2/16) 1.0;
> +            rel1.to: "timearea";
> +            rel2.to: "timearea";
> +            visible: 0;
> +         }
> +      }
> +      part { name: "hours2"; type: RECT;
> +         description { state: "default" 0.0;
> +            rel1.relative: (2/16) 0.0;
> +            rel2.relative: (4/16) 1.0;
> +            rel1.to: "timearea";
> +            rel2.to: "timearea";
> +            visible: 0;
> +         }
> +      }
> +      part { name: "mins1"; type: RECT;
> +         description { state: "default" 0.0;
> +            rel1.relative: (5/16) 0.0;
> +            rel2.relative: (7/16) 1.0;
> +            rel1.to: "timearea";
> +            rel2.to: "timearea";
> +            visible: 0;
> +         }
> +      }
> +      part { name: "mins2"; type: RECT;
> +         description { state: "default" 0.0;
> +            rel1.relative: (7/16) 0.0;
> +            rel2.relative: (9/16) 1.0;
> +            rel1.to: "timearea";
> +            rel2.to: "timearea";
> +            visible: 0;
> +         }
> +      }
> +      part { name: "secs1"; type: RECT;
> +         description { state: "default" 0.0;
> +            rel1.relative: (10/16) 0.0;
> +            rel2.relative: (12/16) 1.0;
> +            rel1.to: "timearea";
> +            rel2.to: "timearea";
> +            visible: 0;
> +         }
> +      }
> +      part { name: "secs2"; type: RECT;
> +         description { state: "default" 0.0;
> +            rel1.relative: (12/16) 0.0;
> +            rel2.relative: (14/16) 1.0;
> +            rel1.to: "timearea";
> +            rel2.to: "timearea";
> +            visible: 0;
> +         }
> +      }
> +      part { name: "ampm"; type: RECT;
> +         description { state: "default" 0.0;
> +            rel1.relative: (14/16) 0.0;
> +            rel2.relative: (16/16) 1.0;
> +            rel1.to: "timearea";
> +            rel2.to: "timearea";
> +            visible: 0;
> +         }
> +      }
> +      part { name: "c00";
> +         description { state: "default" 0.0;
> +            rel1.to: "hours2";
> +            rel1.relative: 1.0 0.5;
> +            rel1.offset: 0 -2;
> +            rel2.to: "mins1";
> +            rel2.relative: 0.0 0.5;
> +            rel2.offset: 0 -2;
> +            align: 0.5 1.0;
> +            FIXED_SIZE(4, 4)
> +            image.normal: "hole_tiny.png";
> +         }
> +      }
> +      part { name: "c01";
> +         description { state: "default" 0.0;
> +            rel1.to: "hours2";
> +            rel1.relative: 1.0 0.5;
> +            rel1.offset: 0 1;
> +            rel2.to: "mins1";
> +            rel2.relative: 0.0 0.5;
> +            rel2.offset: 0 1;
> +            align: 0.5 0.0;
> +            FIXED_SIZE(4, 4)
> +            image.normal: "hole_tiny.png";
> +         }
> +      }
> +      part { name: "c10";
> +         clip_to: "secclip";
> +         description { state: "default" 0.0;
> +            rel1.to: "mins2";
> +            rel1.relative: 1.0 0.5;
> +            rel1.offset: 0 -2;
> +            rel2.to: "secs1";
> +            rel2.relative: 0.0 0.5;
> +            rel2.offset: 0 -2;
> +            align: 0.5 1.0;
> +            FIXED_SIZE(4, 4)
> +            image.normal: "hole_tiny.png";
> +         }
> +      }
> +      part { name: "c11";
> +         clip_to: "secclip";
> +         description { state: "default" 0.0;
> +            rel1.to: "mins2";
> +            rel1.relative: 1.0 0.5;
> +            rel1.offset: 0 1;
> +            rel2.to: "secs1";
> +            rel2.relative: 0.0 0.5;
> +            rel2.offset: 0 1;
> +            align: 0.5 0.0;
> +            FIXED_SIZE(4, 4)
> +            image.normal: "hole_tiny.png";
> +         }
> +      }
> +#define DIGIT(_NAME, _TO) \
> +   part { name: _NAME; \
> +      description { state: "default" 0.0; \
> +         rel1.to: _TO; rel2.to: _TO; \
> +         aspect: (52/72) (52/72); aspect_preference: BOTH; \
> +         image.normal: "digit_na.png"; \
> +      } \
> +      description { state: "0" 0.0; inherit: "default" 0.0; image.normal:
> "digit_0.png"; } \
> +      description { state: "1" 0.0; inherit: "default" 0.0; image.normal:
> "digit_1.png"; } \
> +      description { state: "2" 0.0; inherit: "default" 0.0; image.normal:
> "digit_2.png"; } \
> +      description { state: "3" 0.0; inherit: "default" 0.0; image.normal:
> "digit_3.png"; } \
> +      description { state: "4" 0.0; inherit: "default" 0.0; image.normal:
> "digit_4.png"; } \
> +      description { state: "5" 0.0; inherit: "default" 0.0; image.normal:
> "digit_5.png"; } \
> +      description { state: "6" 0.0; inherit: "default" 0.0; image.normal:
> "digit_6.png"; } \
> +      description { state: "7" 0.0; inherit: "default" 0.0; image.normal:
> "digit_7.png"; } \
> +      description { state: "8" 0.0; inherit: "default" 0.0; image.normal:
> "digit_8.png"; } \
> +      description { state: "9" 0.0; inherit: "default" 0.0; image.normal:
> "digit_9.png"; } \
> +   }
> +#define DIGITC(_NAME, _TO, _CLIP) \
> +   part { name: _NAME; \
> +      clip_to: _CLIP; \
> +      description { state: "default" 0.0; \
> +         rel1.to: _TO; rel2.to: _TO; \
> +         aspect: (52/72) (52/72); aspect_preference: BOTH; \
> +         image.normal: "digit_na.png"; \
> +      } \
> +      description { state: "0" 0.0; inherit: "default" 0.0; image.normal:
> "digit_0.png"; } \
> +      description { state: "1" 0.0; inherit: "default" 0.0; image.normal:
> "digit_1.png"; } \
> +      description { state: "2" 0.0; inherit: "default" 0.0; image.normal:
> "digit_2.png"; } \
> +      description { state: "3" 0.0; inherit: "default" 0.0; image.normal:
> "digit_3.png"; } \
> +      description { state: "4" 0.0; inherit: "default" 0.0; image.normal:
> "digit_4.png"; } \
> +      description { state: "5" 0.0; inherit: "default" 0.0; image.normal:
> "digit_5.png"; } \
> +      description { state: "6" 0.0; inherit: "default" 0.0; image.normal:
> "digit_6.png"; } \
> +      description { state: "7" 0.0; inherit: "default" 0.0; image.normal:
> "digit_7.png"; } \
> +      description { state: "8" 0.0; inherit: "default" 0.0; image.normal:
> "digit_8.png"; } \
> +      description { state: "9" 0.0; inherit: "default" 0.0; image.normal:
> "digit_9.png"; } \
> +   }
> +#define TAG(_NAME, _TO, _CLIP) \
> +   part { name: _NAME; \
> +      clip_to: _CLIP; \
> +      description { state: "default" 0.0; \
> +         rel1.to: _TO; rel2.to: _TO; \
> +         aspect: (48/31) (48/31); aspect_preference: BOTH; \
> +         image.normal: "digit_am.png"; \
> +      } \
> +      description { state: "active" 0.0; \
> +         inherit: "default" 0.0; \
> +         image.normal: "digit_pm.png"; \
> +      } \
> +   }
> +
> +      DIGIT ("h0", "hours1")
> +      DIGIT ("h1", "hours2")
> +      DIGIT ("m0", "mins1")
> +      DIGIT ("m1", "mins2")
> +      DIGITC("s0", "secs1", "secclip")
> +      DIGITC("s1", "secs2", "secclip")
> +      TAG("ap", "ampm", "ampmclip")
> +#undef TAG
> +#undef DIGIT
> +
> +       part { name: "e.text.today"; type: TEXT;
> +          effect: GLOW;
> +          description { state: "default" 0.0;
> +             rel1.relative: 0.0 1.0;
> +             rel1.offset: 0 1;
> +             rel2.offset: -1 1;
> +             align: 0.5 1.0;
> +             color: 51 153 255 255;
> +             color2: 51 153 255 24;
> +             color3: 51 153 255 18;
> +             text { font: "Sans"; size: 8;
> +                text_class: "module_small";
> +                align: 0.5 0.5;
> +                min: 0 1;
> +             }
> +             fixed: 0 1;
> +          }
> +       }
> +
> +       part { name: "event"; type: RECT;
> +          description { state: "default" 0.0;
> +             color: 0 0 0 0;
> +          }
> +       }
> +   }
> +   programs {
> +      program {
> +         signal: "load"; source: "";
> +         script {
> +            clock_cb(0);
> +         }
> +      }
> +      program {
> +         signal: "e,state,date,on"; source: "e";
> +         script {
> +            set_int(do_date, 1);
> +            set_state(PART:"timearea", "date", 0.0);
> +            reset();
> +         }
> +      }
> +      program {
> +         signal: "e,state,date,off"; source: "e";
> +         script {
> +            set_int(do_date, 0);
> +            set_state(PART:"timearea", "default", 0.0);
> +            reset();
> +         }
> +      }
> +      program {
> +         signal: "e,state,seconds,on"; source: "e";
> +         script {
> +            set_int(do_seconds, 1);
> +            set_state(PART:"secclip", "default", 0.0);
> +            reset();
> +         }
> +      }
> +      program {
> +         signal: "e,state,seconds,off"; source: "e";
> +         script {
> +            set_int(do_seconds, 0);
> +            set_state(PART:"secclip", "hidden", 0.0);
> +            reset();
> +         }
> +      }
> +      program {
> +         signal: "e,state,24h,on"; source: "e";
> +         script {
> +            set_int(do_24h, 1);
> +            set_state(PART:"ampmclip", "hidden", 0.0);
> +            reset();
> +         }
> +      }
> +      program {
> +         signal: "e,state,24h,off"; source: "e";
> +         script {
> +            set_int(do_24h, 0);
> +            set_state(PART:"ampmclip", "default", 0.0);
> +            reset();
> +         }
> +      }
> +   }
> +}
> +
> +group { name: "e/modules/clock/calendar/dayname";
> +   parts {
> +      part { name: "e.text.label"; type: TEXT; mouse_events: 0;
> +         effect: SHADOW BOTTOM;
> +         scale: 1;
> +         description { state: "default" 0.0;
> +            color: 255 255 255 255;
> +            color3: 255 255 255 25;
> +            text { font: "Sans"; size: 8;
> +               min: 1 1;
> +               align: 0.5 0.5;
> +               text_class: "module_small";
>              }
>           }
> -         part { name: "date";
> -            type: TEXT;
> -            mouse_events: 0;
> -            description { state: "default" 0.0;
> -               align: 0.5 1.0;
> -               rel1.to_y: "eventarea";
> -               rel2.to_y: "eventarea";
> -               color_class: "clock_date";
> -               text {
> -                  font: "DejaVu Sans,Sans";
> -                  size: 10;
> -                  min: 1 1;
> -                  align: 0.5 1.0;
> -                  text_class: "clock_date";
> -               }
> +         description { state: "weekend" 0.0;
> +            inherit: "default" 0.0;
> +            color: 128 128 128 255;
> +         }
> +      }
> +   }
> +   programs {
> +      program {
> +         signal: "e,state,weekend"; source: "e";
> +         action: STATE_SET "weekend" 0.0;
> +         target: "e.text.label";
> +      }
> +      program {
> +         signal: "e,state,weekday"; source: "e";
> +         action: STATE_SET "default" 0.0;
> +         target: "e.text.label";
> +      }
> +   }
> +}
> +
> +group { name: "e/modules/clock/calendar/day";
> +   script {
> +      public day_state = 0;
> +      evalstate() {
> +         new vv = get_int(day_state);
> +
> +         if (vv & 2)
> +           {
> +              set_state(PART:"e.text.label", "today", 0.0);
> +              set_state(PART:"label2", "today", 0.0);
> +           }
> +         else if (vv & 4)
> +           {
> +              set_state(PART:"e.text.label", "hidden", 0.0);
> +              set_state(PART:"label2", "default", 0.0);
> +           }
> +         else if (vv & 1)
> +           {
> +              set_state(PART:"e.text.label", "weekend", 0.0);
> +              set_state(PART:"label2", "default", 0.0);
> +           }
> +         else
> +           {
> +              set_state(PART:"e.text.label", "default", 0.0);
> +              set_state(PART:"label2", "default", 0.0);
> +           }
> +      }
> +   }
> +   parts {
> +      part { name: "e.text.label"; type: TEXT; mouse_events: 0;
> +         effect: SHADOW BOTTOM;
> +         scale: 1;
> +         description { state: "default" 0.0;
> +            color: 255 255 255 255;
> +            color3: 0 0 0 128;
> +            text { font: "Sans"; size: 10;
> +               min: 1 1;
> +               align: 0.5 0.5;
>              }
>           }
> -         part { name: "time";
> -            type: TEXT;
> -            mouse_events: 0;
> -            description { state: "default" 0.0;
> -               align: 0.5 0.0;
> -               rel1.to_y: "eventarea";
> -               rel2.to_y: "eventarea";
> -               color_class: "clock_time";
> -               text {
> -                  font: "DejaVu Sans,Sans";
> -                  size: 14;
> -                  min: 1 1;
> -                  align: 0.5 0.0;
> -                  text_class: "clock_time";
> -               }
> +         description { state: "today" 0.0;
> +            inherit: "default" 0.0;
> +            visible: 0;
> +         }
> +         description { state: "weekend" 0.0;
> +            inherit: "default" 0.0;
> +            color: 128 128 128 255;
> +         }
> +         description { state: "hidden" 0.0;
> +            inherit: "default" 0.0;
> +            color: 55 55 55 255;
> +            color3: 255 255 255 25;
> +         }
> +      }
> +      part { name: "label2"; type: TEXT; mouse_events: 0;
> +         effect: GLOW;
> +         scale: 1;
> +         description { state: "default" 0.0;
> +            rel1.offset: -3 -3;
> +            rel1.to: "e.text.label";
> +            rel2.offset: 2 1;
> +            rel2.to: "e.text.label";
> +            color: 255 121 0 255;
> +            color2: 255 121 0 24;
> +            color3: 255 121 0 18;
> +            text { font: "Sans"; size: 10;
> +               text_source: "e.text.label";
> +               min: 1 1;
> +               align: 0.5 0.5;
>              }
> +            visible: 0;
>           }
> +         description { state: "today" 0.0;
> +            inherit: "default" 0.0;
> +            visible: 1;
> +         }
>        }
> -      programs {
> -         program { name: "init";
> -            signal: "load";
> -            source: "";
> -            script {
> -               clock_cb(0);
> +   }
> +   programs {
> +      program {
> +         signal: "e,state,weekend"; source: "e";
> +         script {
> +            new vv = get_int(day_state);
> +            set_int(day_state, vv | 1);
> +            evalstate();
> +         }
> +      }
> +      program {
> +         signal: "e,state,weekday"; source: "e";
> +         script {
> +            new vv = get_int(day_state);
> +            set_int(day_state, vv & (~1));
> +            evalstate();
> +         }
> +      }
> +
> +      program {
> +         signal: "e,state,today"; source: "e";
> +         script {
> +            new vv = get_int(day_state);
> +            set_int(day_state, vv | 2);
> +            evalstate();
> +         }
> +      }
> +      program {
> +         signal: "e,state,someday"; source: "e";
> +         script {
> +            new vv = get_int(day_state);
> +            set_int(day_state, vv & (~2));
> +            evalstate();
> +         }
> +      }
> +
> +      program {
> +         signal: "e,state,hidden"; source: "e";
> +         script {
> +            new vv = get_int(day_state);
> +            set_int(day_state, vv | 4);
> +            evalstate();
> +         }
> +      }
> +      program {
> +         signal: "e,state,visible"; source: "e";
> +         script {
> +            new vv = get_int(day_state);
> +            set_int(day_state, vv & (~4));
> +            evalstate();
> +         }
> +      }
> +   }
> +}
> +
> +group { name: "e/modules/clock/calendar";
> +   images.image: "separator_horiz.png" COMP;
> +   images.image: "icon_arrow_left.png" COMP;
> +   images.image: "icon_arrow_right.png" COMP;
> +   images.image: "icon_arrow_left_selected.png" COMP;
> +   images.image: "icon_arrow_right_selected.png" COMP;
> +   parts {
> +      part { name: "e.text.month"; type: TEXT;
> +         effect: SHADOW BOTTOM;
> +         mouse_events: 1;
> +         scale: 1;
> +         description { state: "default" 0.0;
> +            fixed: 0 1;
> +            align: 0.0 0.0;
> +            rel1.to_x: "prev";
> +            rel1.relative: 1.0 0.0;
> +            rel2.relative: 1.0 0.0;
> +            color: 255 255 255 255;
> +            color3: 0 0 0 128;
> +            text { font: "Sans:style=Bold"; size: 10;
> +               align: 0.0 0.5;
> +               min: 0 1;
> +               text_class: "module_normal";
>              }
>           }
>        }
> +      part { name: "e.text.year"; type: TEXT; mouse_events: 0;
> +         effect: SHADOW BOTTOM;
> +         scale: 1;
> +         description { state: "default" 0.0;
> +            fixed: 0 1;
> +            align: 1.0 0.0;
> +            rel1.relative: 0.0 0.0;
> +            rel2.to_x: "next";
> +            rel2.relative: 0.0 0.0;
> +            color: 255 255 255 255;
> +            color3: 0 0 0 128;
> +            text { font: "Sans:style=Bold"; size: 10;
> +               align: 1.0 0.5;
> +               min: 0 1;
> +               text_class: "module_normal";
> +            }
> +         }
> +      }
> +      part { name: "previm"; mouse_events: 0;
> +         description { state: "default" 0.0;
> +            min: 15 15;
> +            max: 15 15;
> +            rel1.to: "prev";
> +            rel2.to: "prev";
> +            image.normal: "icon_arrow_left.png";
> +         }
> +         description { state: "pressed" 0.0;
> +            inherit: "default" 0.0;
> +            image.normal: "icon_arrow_left_selected.png";
> +         }
> +      }
> +      part { name: "prev"; type: RECT;
> +         description { state: "default" 0.0;
> +            align: 0.0 0.5;
> +            color: 0 0 0 0;
> +            aspect: 1.0 1.0; aspect_preference: VERTICAL;
> +            rel1.to_y: "e.text.month";
> +            rel1.relative: 0.0 0.0;
> +            rel2.to_y: "e.text.month";
> +            rel2.relative: 0.0 1.0;
> +         }
> +         program { name: "prev_down";
> +            signal: "mouse,down,1*"; source: "prev";
> +            action: STATE_SET "pressed" 0.0;
> +            target: "previm";
> +         }
> +         program { name: "prev_up";
> +            signal: "mouse,up,1"; source: "prev";
> +            action: STATE_SET "default" 0.0;
> +            target: "previm";
> +         }
> +         program { name: "prev_clicked";
> +            signal: "mouse,clicked,1*"; source: "prev";
> +            action: SIGNAL_EMIT "e,action,prev" "";
> +         }
> +      }
> +      part { name: "nextim"; mouse_events: 0;
> +         description { state: "default" 0.0;
> +            min: 15 15;
> +            max: 15 15;
> +            rel1.to: "next";
> +            rel2.to: "next";
> +            image.normal: "icon_arrow_right.png";
> +         }
> +         description { state: "pressed" 0.0;
> +            inherit: "default" 0.0;
> +            image.normal: "icon_arrow_right_selected.png";
> +         }
> +      }
> +      part { name: "next"; type: RECT;
> +         description { state: "default" 0.0;
> +            align: 1.0 0.5;
> +            color: 0 0 0 0;
> +            aspect: 1.0 1.0; aspect_preference: VERTICAL;
> +            rel1.to_y: "e.text.month";
> +            rel1.relative: 1.0 0.0;
> +            rel2.to_y: "e.text.month";
> +            rel2.relative: 1.0 1.0;
> +         }
> +         program { name: "next_down";
> +            signal: "mouse,down,1"; source: "next";
> +            action: STATE_SET "pressed" 0.0;
> +            target: "nextim";
> +         }
> +         program { name: "next_up";
> +            signal: "mouse,up,1"; source: "next";
> +            action: STATE_SET "default" 0.0;
> +            target: "nextim";
> +         }
> +         program { name: "next_clicked";
> +            signal: "mouse,clicked,1"; source: "next";
> +            action: SIGNAL_EMIT "e,action,next" "";
> +         }
> +      }
> +      part { name: "sel";
> +         description { state: "default" 0.0;
> +            image.normal: "separator_horiz.png";
> +            rel1.relative: 0.0 1.0;
> +            rel1.offset: 0 0;
> +            rel1.to: "e.table.daynames";
> +            rel2.offset: -1 1;
> +            rel2.to: "e.table.daynames";
> +            min: 0 2;
> +            fill.smooth: 0;
> +         }
> +      }
> +
> +      part { name: "e.table.daynames"; type: TABLE;
> +         description { state: "default" 0.0;
> +            fixed: 0 1;
> +            align: 0.5 0.0;
> +            rel1.to_y: "e.text.month";
> +            rel1.relative: 0.0 1.0;
> +            rel1.offset: 2 2;
> +            rel2.to_y: "e.text.month";
> +            rel2.relative: 1.0 1.0;
> +            rel2.offset: -3 2;
> +            step: 7 1;
> +            table { homogeneous: TABLE;
> +               padding: 1 1;
> +               align: 0.5 0.5;
> +               min: 1 1;
> +            }
> +         }
> +         table {
> +            items {
> +#define D(x) \
> +item { \
> +   position: x 0; \
> +   span: 1 1; \
> +   source: "e/modules/clock/calendar/dayname"; \
> +   weight: 1.0 1.0; \
> +   align: -1.0 -1.0; \
> +}
> +               D(0) D(1) D(2) D(3) D(4) D(5) D(6)
> +#undef D
> +            }
> +         }
> +      }
> +      part { name: "e.table.days"; type: TABLE;
> +         description { state: "default" 0.0;
> +            rel1.to_y: "e.table.daynames";
> +            rel1.relative: 0.0 1.0;
> +            rel1.offset: 2 2;
> +            rel2.offset: -3 -3;
> +            step: 7 5;
> +            table { homogeneous: TABLE;
> +               padding: 1 1;
> +               align: 0.5 0.5;
> +               min: 1 1;
> +            }
> +         }
> +         table {
> +            items {
> +#define D(x, y) \
> +item { \
> +   position: x y; \
> +   span: 1 1; \
> +   source: "e/modules/clock/calendar/day"; \
> +   weight: 1.0 1.0; \
> +   align: -1.0 -1.0; \
> +}
> +               D(0, 0) D(1, 0) D(2, 0) D(3, 0) D(4, 0) D(5, 0) D(6, 0)
> +               D(0, 1) D(1, 1) D(2, 1) D(3, 1) D(4, 1) D(5, 1) D(6, 1)
> +               D(0, 2) D(1, 2) D(2, 2) D(3, 2) D(4, 2) D(5, 2) D(6, 2)
> +               D(0, 3) D(1, 3) D(2, 3) D(3, 3) D(4, 3) D(5, 3) D(6, 3)
> +               D(0, 4) D(1, 4) D(2, 4) D(3, 4) D(4, 4) D(5, 4) D(6, 4)
> +               D(0, 5) D(1, 5) D(2, 5) D(3, 5) D(4, 5) D(5, 5) D(6, 5)
> +#undef D
> +            }
> +         }
> +      }
>     }
>  }
> +}
>
>
>
> ------------------------------------------------------------------------------
> Monitor your physical, virtual and cloud infrastructure from a single
> web console. Get in-depth insight into apps, servers, databases, vmware,
> SAP, cloud infrastructure, etc. Download 30-day Free Trial.
> Pricing starts from $795 for 25 servers or applications!
> http://p.sf.net/sfu/zoho_dev2dev_nov
> _______________________________________________
> enlightenment-svn mailing list
> enlightenment-...@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/enlightenment-svn
>



-- 
Gustavo Sverzut Barbieri
http://profusion.mobi embedded systems
--------------------------------------
MSN: barbi...@gmail.com
Skype: gsbarbieri
Mobile: +55 (19) 9225-2202
------------------------------------------------------------------------------
Monitor your physical, virtual and cloud infrastructure from a single
web console. Get in-depth insight into apps, servers, databases, vmware,
SAP, cloud infrastructure, etc. Download 30-day Free Trial.
Pricing starts from $795 for 25 servers or applications!
http://p.sf.net/sfu/zoho_dev2dev_nov
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to