On Mon, 9 Feb 2009 09:56:42 -0200 Gustavo Sverzut Barbieri
<barbi...@profusion.mobi> said:

> make[2]: *** No rule to make target `slv_bg.png', needed by
> `default.edj'.  Stop.
> 
> missing file?

fixed! sorry - needed food! back from food. now images in. :)

> On Mon, Feb 9, 2009 at 9:23 AM, Enlightenment SVN
> <no-re...@enlightenment.org> wrote:
> > Log:
> >  more work on slider - i think its complete now vertical mode works. might
> > be some buglts to clear up though.
> >  fix scroller to scroll only at animator framerate.. using an animator
> > making scrolling much better.
> >  begin genlist (geeric but complicated) list.
> >
> >
> > Author:       raster
> > Date:         2009-02-09 03:23:59 -0800 (Mon, 09 Feb 2009)
> > New Revision: 38979
> >
> > Added:
> >  trunk/TMP/st/elementary/src/lib/elm_genlist.c
> > Modified:
> >  trunk/TMP/st/elementary/data/themes/Makefile.am
> > trunk/TMP/st/elementary/data/themes/default.edc
> > trunk/TMP/st/elementary/src/bin/test.c
> > trunk/TMP/st/elementary/src/lib/Elementary.h.in
> > trunk/TMP/st/elementary/src/lib/Makefile.am
> > trunk/TMP/st/elementary/src/lib/els_scroller.c
> >
> > Modified: trunk/TMP/st/elementary/data/themes/Makefile.am
> > ===================================================================
> > --- trunk/TMP/st/elementary/data/themes/Makefile.am     2009-02-09 11:16:56
> > UTC (rev 38978) +++ trunk/TMP/st/elementary/data/themes/Makefile.am
> > 2009-02-09 11:23:59 UTC (rev 38979) @@ -108,7 +108,10 @@
> >  sl_bt2_0_2.png \
> >  sl_bt2_1.png \
> >  sl_bt2_2.png \
> > -sl_units.png
> > +sl_units.png \
> > +slv_bg.png \
> > +slv_bg_over.png \
> > +slv_units.png
> >
> >  default.edj: Makefile $(EXTRA_DIST)
> >        $(EDJE_CC) $(EDJE_FLAGS) \
> >
> > Modified: trunk/TMP/st/elementary/data/themes/default.edc
> > ===================================================================
> > --- trunk/TMP/st/elementary/data/themes/default.edc     2009-02-09 11:16:56
> > UTC (rev 38978) +++ trunk/TMP/st/elementary/data/themes/default.edc
> > 2009-02-09 11:23:59 UTC (rev 38979) @@ -6080,7 +6080,7 @@
> >               visible: 1;
> >               aspect: 1.0 1.0;
> >               aspect_preference: VERTICAL;
> > -              rel2.offset: 4 -5;
> > +              rel2.offset: 4 -1;
> >            }
> >         }
> >          part { name: "elm.text";
> > @@ -6461,8 +6461,9 @@
> >
> >    group { name: "elm/slider/vertical/default";
> >       images {
> > -        image: "sl_bg.png" COMP;
> > -        image: "sl_bg_over.png" COMP;
> > +        image: "slv_bg.png" COMP;
> > +        image: "slv_bg_over.png" COMP;
> > +
> >         image: "sl_bt_0.png" COMP;
> >         image: "sl_bt_1.png" COMP;
> >         image: "sl_bt_2.png" COMP;
> > @@ -6471,21 +6472,22 @@
> >         image: "sl_bt2_0_2.png" COMP;
> >         image: "sl_bt2_1.png" COMP;
> >         image: "sl_bt2_2.png" COMP;
> > -         image: "sl_units.png" COMP;
> > +
> > +         image: "slv_units.png" COMP;
> >       }
> >       parts {
> >          part { name: "base";
> >             mouse_events: 0;
> >             description { state: "default" 0.0;
> > -               max: 99999 6;
> > -               min: 0 6;
> > +               max: 6 99999;
> > +               min: 6 0;
> >                rel1 { to: "bg";
> >                   offset: 1 0;
> >                }
> >                rel2 { to: "bg";
> >                   offset: -2 -1;
> >                }
> > -               image.normal: "sl_bg.png";
> > +               image.normal: "slv_bg.png";
> >                fill.smooth: 0;
> >             }
> >          }
> > @@ -6495,9 +6497,9 @@
> >             description { state: "default" 0.0;
> >                rel1.to: "base";
> >                rel2 {
> > -                  to_y: "base";
> > -                  to_x: "elm.dragable.slider";
> > -                  relative: 0.5 1.0;
> > +                  to_x: "base";
> > +                  to_y: "elm.dragable.slider";
> > +                  relative: 1.0 0.5;
> >                }
> >                color: 255 0 0 200;
> >             }
> > @@ -6512,9 +6514,9 @@
> >             description { state: "default" 0.0;
> >                visible: 0;
> >                rel1 {
> > -                  to_y: "base";
> > -                  to_x: "elm.dragable.slider";
> > -                  relative: 0.5 0.0;
> > +                  to_x: "base";
> > +                  to_y: "elm.dragable.slider";
> > +                  relative: 0.0 0.5;
> >                }
> >                rel2.to: "base";
> >                color: 255 0 0 200;
> > @@ -6533,7 +6535,7 @@
> >                rel2.to: "base";
> >                rel2.offset: 0 0;
> >                image {
> > -                  normal: "sl_bg_over.png";
> > +                  normal: "slv_bg_over.png";
> >                   border: 3 3 3 3;
> >                }
> >                fill.smooth: 0;
> > @@ -6554,18 +6556,18 @@
> >            type: SWALLOW;
> >             scale: 1;
> >            description { state: "default" 0.0;
> > -              min: 48 24;
> > -              max: 99999 24;
> > +              min: 24 48;
> > +              max: 24 9999;
> >               align: 1.0 0.5;
> >               rel1 {
> > -                  to_x: "elm.text";
> > -                  relative: 1.0 0.0;
> > -                  offset: 2 0;
> > +                  to_y: "elm.text";
> > +                  relative: 0.0 1.0;
> > +                  offset: 0 2;
> >                }
> >               rel2 {
> > -                  to_x: "elm.units";
> > -                  relative: 0.0 1.0;
> > -                  offset: -3 -1;
> > +                  to_y: "elm.units";
> > +                  relative: 1.0 0.0;
> > +                  offset: -1 -3;
> >                }
> >            }
> >         }
> > @@ -6573,23 +6575,23 @@
> >            type: SWALLOW;
> >            description { state: "default" 0.0;
> >               visible: 0;
> > -              align: 0.0 0.5;
> > +              align: 0.5 0.0;
> >               rel1 {
> > -                  offset: 4 0;
> > -                  to_y: "elm.swallow.bar";
> > +                  offset: 0 4;
> > +                  to_x: "elm.swallow.bar";
> >                }
> >               rel2 {
> > -                  offset: 3 -1;
> > -                  relative: 0.0 1.0;
> > -                  to_y: "elm.swallow.bar";
> > +                  offset: -1 3;
> > +                  relative: 1.0 0.0;
> > +                  to_x: "elm.swallow.bar";
> >                }
> >            }
> >            description { state: "visible" 0.0;
> >               inherit: "default" 0.0;
> >               visible: 1;
> >               aspect: 1.0 1.0;
> > -              aspect_preference: VERTICAL;
> > -              rel2.offset: 4 -5;
> > +              aspect_preference: HORIZONTAL;
> > +              rel2.offset: -1 4;
> >            }
> >         }
> >          part { name: "elm.text";
> > @@ -6599,27 +6601,27 @@
> >            description { state: "default" 0.0;
> >               visible: 0;
> >                fixed: 1 1;
> > -               align: 0.0 0.5;
> > -              rel1.to_x: "elm.swallow.content";
> > -              rel1.relative: 1.0 0.0;
> > -               rel1.offset: -1 4;
> > -              rel2.to_x: "elm.swallow.content";
> > -              rel2.relative: 1.0 1.0;
> > -              rel2.offset: -1 -5;
> > +               align: 0.5 0.0;
> > +              rel1.to_y: "elm.swallow.content";
> > +              rel1.relative: 0.5 1.0;
> > +               rel1.offset: 0 -1;
> > +              rel2.to_y: "elm.swallow.content";
> > +              rel2.relative: 0.5 1.0;
> > +              rel2.offset: -1 -1;
> >               color: 0 0 0 255;
> >               text {
> >                  font: "Sans,Edje-Vera";
> >                  size: 10;
> >                  min: 0 0;
> > -                 align: 0.0 0.5;
> > +                 align: 0.5 0.0;
> >               }
> >            }
> >            description { state: "visible" 0.0;
> >               inherit: "default" 0.0;
> >               visible: 1;
> >               text.min: 1 1;
> > -               rel1.offset: 0 4;
> > -               rel2.offset: 0 -5;
> > +               rel1.offset: 4 0;
> > +               rel2.offset: -5 0;
> >            }
> >         }
> >          part { name: "units";
> > @@ -6627,12 +6629,16 @@
> >             description { state: "default" 0.0;
> >               visible: 0;
> >                rel1 {
> > -                  to_x: "elm.units";
> > -                  offset: 0 5;
> > +                  to: "elm.units";
> > +                  offset: -8 0;
> >                }
> > +               rel2 {
> > +                  to: "elm.units";
> > +                  offset: 7 8;
> > +               }
> >                image {
> > -                  normal: "sl_units.png";
> > -                  border: 0 5 3 8;
> > +                  normal: "slv_units.png";
> > +                  border: 8 8 0 9;
> >                }
> >                fill.smooth: 0;
> >             }
> > @@ -6648,17 +6654,17 @@
> >            description { state: "default" 0.0;
> >               visible: 0;
> >                fixed: 1 1;
> > -              align: 1.0 0.5;
> > -              rel1.relative: 1.0 0.0;
> > -              rel1.offset: 0 8;
> > +              align: 0.5 1.0;
> > +              rel1.relative: 0.0 1.0;
> > +              rel1.offset: 8 0;
> >               rel2.relative: 1.0 1.0;
> > -              rel2.offset: 0 -9;
> > +              rel2.offset: -9 0;
> >               color: 0 0 0 255;
> >               text {
> >                  font: "Sans,Edje-Vera";
> >                  size: 10;
> >                  min: 0 0;
> > -                 align: 0.0 0.5;
> > +                 align: 0.5 0.0;
> >               }
> >            }
> >            description { state: "visible" 0.0;
> > @@ -6666,8 +6672,8 @@
> >                fixed: 1 1;
> >               visible: 1;
> >               text.min: 1 1;
> > -              rel1.offset: -5 0;
> > -              rel2.offset: -5 -1;
> > +              rel1.offset: 8 -9;
> > +              rel2.offset: -9 -9;
> >            }
> >         }
> >          part { name: "elm.dragable.slider";
> > @@ -6769,6 +6775,7 @@
> >               visible: 0;
> >                max: 15 999;
> >                min: 15 32;
> > +               fixed: 1 1;
> >                rel1 {
> >                   to_x: "elm.dragable.slider";
> >                   to_y: "elm.indicator";
> > @@ -6829,7 +6836,7 @@
> >                   offset: 0 0;
> >                }
> >               rel2 {
> > -                  to_x: "elm.dragable.slider";
> > +                  to: "elm.dragable.slider";
> >                   relative: 1.0 0.0;
> >                   offset: -1 0;
> >                }
> >
> > Modified: trunk/TMP/st/elementary/src/bin/test.c
> > ===================================================================
> > --- trunk/TMP/st/elementary/src/bin/test.c      2009-02-09 11:16:56 UTC
> > (rev 38978) +++ trunk/TMP/st/elementary/src/bin/test.c      2009-02-09
> > 11:23:59 UTC (rev 38979) @@ -2020,12 +2020,17 @@
> >    evas_object_show(ic);
> >    evas_object_show(sl);
> >
> > +   ic = elm_icon_add(win);
> > +   snprintf(buf, sizeof(buf), "%s/images/logo_small.png",
> > PACKAGE_DATA_DIR);
> > +   elm_icon_file_set(ic, buf, NULL);
> > +   evas_object_size_hint_aspect_set(ic, EVAS_ASPECT_CONTROL_HORIZONTAL, 1,
> > 1); sl = elm_slider_add(win);
> > +   elm_slider_icon_set(sl, ic);
> >    elm_slider_label_set(sl, "Label 4");
> >    elm_slider_unit_format_set(sl, "units");
> >    elm_slider_span_size_set(sl, 200);
> > -   evas_object_size_hint_align_set(sl, -1.0, -1.0);
> > -   evas_object_size_hint_weight_set(sl, 1.0, 1.0);
> > +   evas_object_size_hint_align_set(sl, 0.5, -1.0);
> > +   evas_object_size_hint_weight_set(sl, 0.0, 1.0);
> >    elm_slider_indicator_format_set(sl, "%1.1f");
> >    elm_slider_value_set(sl, 0.2);
> >    elm_object_scale_set(sl, 1.0);
> >
> > Modified: trunk/TMP/st/elementary/src/lib/Elementary.h.in
> > ===================================================================
> > --- trunk/TMP/st/elementary/src/lib/Elementary.h.in     2009-02-09 11:16:56
> > UTC (rev 38978) +++ trunk/TMP/st/elementary/src/lib/Elementary.h.in
> > 2009-02-09 11:23:59 UTC (rev 38979) @@ -466,6 +466,7 @@
> >     * "unselected" - when the user selected an item
> >     */
> >
> > +   // FIXME: incomplete - carousel
> >    typedef struct _Elm_Carousel_Item Elm_Carousel_Item;
> >    EAPI Evas_Object *elm_carousel_add(Evas_Object *parent);
> >    EAPI Elm_Carousel_Item *elm_carousel_item_add(Evas_Object *obj,
> > Evas_Object *icon, const char *label, void (*func) (void *data, Evas_Object
> > *obj, void *event_info), const void *data); @@ -476,24 +477,43 @@ */
> >
> >    EAPI Evas_Object *elm_slider_add(Evas_Object *parent);
> > -   EAPI void elm_slider_label_set(Evas_Object *obj, const char *label);
> > -   EAPI void elm_slider_icon_set(Evas_Object *obj, Evas_Object *icon);
> > -   EAPI void elm_slider_span_size_set(Evas_Object *obj, Evas_Coord size);
> > -   EAPI void elm_slider_unit_format_set(Evas_Object *obj, const char
> > *format);
> > -   EAPI void elm_slider_indicator_format_set(Evas_Object *obj, const char
> > *indicator);
> > -   EAPI void elm_slider_horizontal_set(Evas_Object *obj, Evas_Bool
> > horizontal);
> > -   EAPI void elm_slider_min_max_set(Evas_Object *obj, double min, double
> > max);
> > -   EAPI void elm_slider_value_set(Evas_Object *obj, double val);
> > -   EAPI double elm_slider_value_get(Evas_Object *obj);
> > -   EAPI void elm_slider_inverted_set(Evas_Object *obj, Evas_Bool inverted);
> > -
> > -
> > +   EAPI void         elm_slider_label_set(Evas_Object *obj, const char
> > *label);
> > +   EAPI void         elm_slider_icon_set(Evas_Object *obj, Evas_Object
> > *icon);
> > +   EAPI void         elm_slider_span_size_set(Evas_Object *obj, Evas_Coord
> > size);
> > +   EAPI void         elm_slider_unit_format_set(Evas_Object *obj, const
> > char *format);
> > +   EAPI void         elm_slider_indicator_format_set(Evas_Object *obj,
> > const char *indicator);
> > +   EAPI void         elm_slider_horizontal_set(Evas_Object *obj, Evas_Bool
> > horizontal);
> > +   EAPI void         elm_slider_min_max_set(Evas_Object *obj, double min,
> > double max);
> > +   EAPI void         elm_slider_value_set(Evas_Object *obj, double val);
> > +   EAPI double       elm_slider_value_get(Evas_Object *obj);
> > +   EAPI void         elm_slider_inverted_set(Evas_Object *obj, Evas_Bool
> > inverted); /* smart callbacks called:
> >     * "changed" - when the slider value changes
> >     * "delay,changed" - when the slider value changed, but a small time
> > after a change (use this if you only want to respond to a change once the
> > slider is held still for a short while). */
> >
> > +   typedef enum _Elm_Genlist_Item_Flags
> > +     {
> > +        ELM_GENLIST_ITEM_DISABLED,
> > +        ELM_GENLIST_ITEM_EXPANDED
> > +     } Elm_Genlist_Item_Flags;
> > +   typedef struct _Elm_Genlist_Item_Class Elm_Genlist_Item_Class;
> > +   typedef struct _Elm_Genlist_Item       Elm_Genlist_Item;
> > +   struct _Elm_Genlist_Item_Class
> > +     {
> > +        const char *style;
> > +        struct {
> > +           char        *(*label_get) (const void *data, const char *part);
> > +           Evas_Object *(*icon_get)  (const void *data, const char *part);
> > +           Evas_Bool    (*state_get) (const void *data, const char *part);
> > +        } func;
> > +     };
> >
> > +   EAPI Evas_Object *elm_genlist_add(Evas_Object *parent);
> > +   EAPI Elm_Genlist_Item *elm_genlist_item_add(Evas_Object *obj, const
> > Elm_Genlist_Item_Class *itc, const void *data, Elm_Genlist_Item *parent,
> > Elm_Genlist_Item_Flags flags);
> > +   /* smart callbacks called:
> > +    */
> > +
> >  #ifdef __cplusplus
> >  }
> >  #endif
> > @@ -520,18 +540,22 @@
> >  // * when entries are in a scroller and change size, the scroller shows
> > scrollbars. fix. same for selecting. for 1 line entries in a scroller
> > should only have scroll arrow indicators. // //// (more widgets/features -
> > medium priority) -// * slider widget
> > -// * <evas scale cache>
> > +// * biglist widget (restricted format label + icon intended for massive
> > lists) +// * treeview widget (like biglist - but items can expand to
> > sub-items) // * radio + group handling
> >  // * checkbox (like toggle)
> >  // * pager (for pushing/popping pages and going back and forward and
> > flipping) // * <edje copy & paste fixed>
> > -// * biglist widget (restricted format label + icon intended for massive
> > lists) -// * treeview widget (like biglist - but items can expand to
> > sub-items) +// * <evas scale cache>
> >  // * <evas shared cache>
> >  //
> >  // * carousel selector widget
> >  // * auto-size label/text that adapts text size to its allocated region
> > +// * [ scrollable dropdown combo box ]
> > +// * [ notepad widget ]
> > +// * [ toggle with 2x labelled button for 2 states ]
> > +// * [ poker spinner with numbers + labels ]
> > +// * [ wrapping text button bar ]
> >  // * separator widget (h/v)
> >  // * slide-open "panel" that can hold stuff and optionally scroll
> >  // * calendar widget (select date)
> >
> > Modified: trunk/TMP/st/elementary/src/lib/Makefile.am
> > ===================================================================
> > --- trunk/TMP/st/elementary/src/lib/Makefile.am 2009-02-09 11:16:56 UTC
> > (rev 38978) +++ trunk/TMP/st/elementary/src/lib/Makefile.am 2009-02-09
> > 11:23:59 UTC (rev 38979) @@ -48,6 +48,7 @@
> >  elm_list.c \
> >  elm_carousel.c \
> >  elm_slider.c \
> > +elm_genlist.c \
> >  \
> >  elc_notepad.c \
> >  elc_anchorview.c \
> >
> > Added: trunk/TMP/st/elementary/src/lib/elm_genlist.c
> >
> > Modified: trunk/TMP/st/elementary/src/lib/els_scroller.c
> > ===================================================================
> > --- trunk/TMP/st/elementary/src/lib/els_scroller.c      2009-02-09 11:16:56
> > UTC (rev 38978) +++ trunk/TMP/st/elementary/src/lib/els_scroller.c
> > 2009-02-09 11:23:59 UTC (rev 38979) @@ -27,6 +27,8 @@
> >         double        timestamp;
> >       } history[20];
> >       double anim_start;
> > +      Evas_Coord hold_x, hold_y;
> > +      Ecore_Animator *hold_animator;
> >       Ecore_Animator *momentum_animator;
> >       Evas_Coord locked_x, locked_y;
> >       unsigned char now : 1;
> > @@ -63,6 +65,7 @@
> >  static void _smart_pan_pan_changed_hook(void *data, Evas_Object *obj, void
> > *event_info); static void _smart_event_wheel(void *data, Evas *e,
> > Evas_Object *obj, void *event_info); static void _smart_event_mouse_down
> > (void *data, Evas *e, Evas_Object *obj, void *event_info); +static int
> > _smart_hold_animator(void *data); static int  _smart_momentum_animator(void
> > *data); static void _smart_event_mouse_up(void *data, Evas *e, Evas_Object
> > *obj, void *event_info); static void _smart_event_mouse_move(void *data,
> > Evas *e, Evas_Object *obj, void *event_info); @@ -431,6 +434,11 @@
> >    ev = event_info;
> >    if (_elm_config->thumbscroll_enable)
> >      {
> > +       if (sd->down.hold_animator)
> > +         {
> > +            ecore_animator_del(sd->down.hold_animator);
> > +            sd->down.hold_animator = NULL;
> > +         }
> >        if (sd->down.momentum_animator)
> >          {
> >             ecore_animator_del(sd->down.momentum_animator);
> > @@ -457,6 +465,17 @@
> >  }
> >
> >  static int
> > +_smart_hold_animator(void *data)
> > +{
> > +   Smart_Data *sd;
> > +
> > +   sd = data;
> > +   sd->down.hold_animator = NULL;
> > +   elm_smart_scroller_child_pos_set(sd->smart_obj, sd->down.hold_x,
> > sd->down.hold_y);
> > +   return 0;
> > +}
> > +
> > +static int
> >  _smart_momentum_animator(void *data)
> >  {
> >    Smart_Data *sd;
> > @@ -533,6 +552,11 @@
> >                         {
> >                            if (!sd->down.momentum_animator)
> >                              sd->down.momentum_animator = ecore_animator_add
> > (_smart_momentum_animator, sd);
> > +                            if (sd->down.hold_animator)
> > +                              {
> > +                                 ecore_animator_del
> > (sd->down.hold_animator);
> > +                                 sd->down.hold_animator = NULL;
> > +                              }
> >                            sd->down.dx = ((double)dx / at);
> >                            sd->down.dy = ((double)dy / at);
> >                            sd->down.anim_start = t;
> > @@ -614,7 +638,11 @@
> >                       if (sd->down.dir_x) y = sd->down.locked_y;
> >                       else x = sd->down.locked_x;
> >                    }
> > -                 elm_smart_scroller_child_pos_set(sd->smart_obj, x, y);
> > +                  sd->down.hold_x = x;
> > +                  sd->down.hold_y = y;
> > +                  if (!sd->down.hold_animator)
> > +                    sd->down.hold_animator = ecore_animator_add
> > (_smart_hold_animator, sd); +//
> > elm_smart_scroller_child_pos_set(sd->smart_obj, x, y); }
> >          }
> >      }
> > @@ -975,6 +1003,7 @@
> >    if (!sd->extern_pan) evas_object_del(sd->pan_obj);
> >    evas_object_del(sd->edje_obj);
> >    evas_object_del(sd->event_obj);
> > +   if (sd->down.hold_animator) ecore_animator_del(sd->down.hold_animator);
> >    if (sd->down.momentum_animator) ecore_animator_del
> > (sd->down.momentum_animator); free(sd);
> >    evas_object_smart_data_set(obj, NULL);
> >
> >
> > ------------------------------------------------------------------------------
> > Create and Deploy Rich Internet Apps outside the browser with Adobe(R)AIR
> > (TM) software. With Adobe AIR, Ajax developers can use existing skills and
> > code to build responsive, highly engaging applications that combine the
> > power of local resources and data with the reach of the web. Download the
> > Adobe AIR SDK and Ajax docs to start building applications
> > today-http://p.sf.net/sfu/adobe-com
> > _______________________________________________ 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
> 
> ------------------------------------------------------------------------------
> Create and Deploy Rich Internet Apps outside the browser with Adobe(R)AIR(TM)
> software. With Adobe AIR, Ajax developers can use existing skills and code to
> build responsive, highly engaging applications that combine the power of local
> resources and data with the reach of the web. Download the Adobe AIR SDK and
> Ajax docs to start building applications today-http://p.sf.net/sfu/adobe-com
> _______________________________________________
> 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


------------------------------------------------------------------------------
Create and Deploy Rich Internet Apps outside the browser with Adobe(R)AIR(TM)
software. With Adobe AIR, Ajax developers can use existing skills and code to
build responsive, highly engaging applications that combine the power of local
resources and data with the reach of the web. Download the Adobe AIR SDK and
Ajax docs to start building applications today-http://p.sf.net/sfu/adobe-com
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to