On Sun, 18 Nov 2012 13:09:43 -0200 Gustavo Sverzut Barbieri
<barbi...@profusion.mobi> said:

> 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

agreed. a theme has a look and feel and ust copying imaghes from one theme to
another is most of the time going to look bad - and this would be a good
example.
 
> 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
> 


-- 
------------- Codito, ergo sum - "I code, therefore I am" --------------
The Rasterman (Carsten Haitzler)    ras...@rasterman.com


------------------------------------------------------------------------------
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