2012/9/11 Cedric BAIL <cedric.b...@free.fr>

> I think you deserve the title of hero for this new set of test ! AWESOME !
>

\o/


>
> On Tue, Sep 11, 2012 at 6:48 AM, Enlightenment SVN
> <no-re...@enlightenment.org> wrote:
> > Log:
> > Another external test: progress bar.
> >   This test also show how to access the external widgets from C code and
> also directly from embryo :)
> >
> > Author:       davemds
> > Date:         2012-09-10 14:48:56 -0700 (Mon, 10 Sep 2012)
> > New Revision: 76422
> > Trac:         http://trac.enlightenment.org/e/changeset/76422
> >
> > Modified:
> >   trunk/elementary/data/objects/test_external.edc
> trunk/elementary/src/bin/test.c trunk/elementary/src/bin/test_external.c
> >
> > Modified: trunk/elementary/data/objects/test_external.edc
> > ===================================================================
> > --- trunk/elementary/data/objects/test_external.edc     2012-09-10
> 19:21:56 UTC (rev 76421)
> > +++ trunk/elementary/data/objects/test_external.edc     2012-09-10
> 21:48:56 UTC (rev 76422)
> > @@ -545,4 +545,291 @@
> >           }
> >        }
> >     }
> > +   group { name: "external/pbar";
> > +      parts {
> > +         COMMON_EXTERNAL_UNDER
> > +         part { name: "ext_label1";
> > +            type: EXTERNAL;
> > +            source: "elm/label";
> > +            clip_to: "clip";
> > +            description { state: "default" 0.0;
> > +               max: 200 50;
> > +               align: 0.5 0.0;
> > +               params {
> > +                  string: "label" "<b>All the Widgets are edje
> external</>\
> > +<br>This test show how you can access external widgets from <br>\
> > +embryo script and from C code.";
> > +               }
> > +            }
> > +         }
> > +
> > +         part { name: "ext_pbar1";
> > +            type: EXTERNAL;
> > +            source: "elm/progressbar";
> > +            clip_to: "clip";
> > +            description { state: "default" 0.0;
> > +               max: 999 40;
> > +               align: 0.0 0.0;
> > +               rel1.offset: 0 60;
> > +               params {
> > +                  string: "unit format" "%.0f %%";
> > +                  double: "value" 0.5;
> > +               }
> > +            }
> > +         }
> > +         part { name: "ext_pbar2";
> > +            type: EXTERNAL;
> > +            source: "elm/progressbar";
> > +            clip_to: "clip";
> > +            description { state: "default" 0.0;
> > +               max: 999 40;
> > +               align: 0.0 0.0;
> > +               rel1.offset: 0 100;
> > +               params {
> > +                  string: "label" "infinite bouce";
> > +                  string: "unit format" "";
> > +               }
> > +            }
> > +         }
> > +         part { name: "ext_pbar3";
> > +            type: EXTERNAL;
> > +            source: "elm/progressbar";
> > +            clip_to: "clip";
> > +            description { state: "default" 0.0;
> > +               max: 999 40;
> > +               align: 0.0 0.0;
> > +               rel1.offset: 0 140;
> > +               params {
> > +                  string: "label" "inverted";
> > +                  string: "icon" "home";
> > +                  bool: "inverted" 1;
> > +                  string: "unit format" "%.3f units";
> > +               }
> > +            }
> > +         }
> > +         part { name: "ext_pbar4";
> > +            type: EXTERNAL;
> > +            source: "elm/progressbar";
> > +            clip_to: "clip";
> > +            description { state: "default" 0.0;
> > +               max: 50 999;
> > +               align: 0.1 0.0;
> > +               rel1.offset: 0 180;
> > +               rel2.offset: 0 -50;
> > +               params {
> > +                  string: "label" "percent";
> > +                  bool: "horizontal" 0;
> > +               }
> > +            }
> > +         }
> > +         part { name: "ext_pbar5";
> > +            type: EXTERNAL;
> > +            source: "elm/progressbar";
> > +            clip_to: "clip";
> > +            description { state: "default" 0.0;
> > +               max: 50 999;
> > +               align: 0.5 0.0;
> > +               rel1.offset: 0 180;
> > +               rel2.offset: 0 -100;
> > +               params {
> > +                  string: "label" "infinite bouce";
> > +                  bool: "horizontal" 0;
> > +                  string: "unit format" "";
> > +               }
> > +            }
> > +         }
> > +         part { name: "ext_pbar6";
> > +            type: EXTERNAL;
> > +            source: "elm/progressbar";
> > +            clip_to: "clip";
> > +            description { state: "default" 0.0;
> > +               max: 50 999;
> > +               align: 0.9 0.0;
> > +               rel1.offset: 0 180;
> > +               rel2.offset: 0 -50;
> > +               params {
> > +                  string: "label" "inverted";
> > +                  string: "icon" "home";
> > +                  bool: "horizontal" 0;
> > +                  bool: "inverted" 1;
> > +                  bool: "disabled" 1;
> > +               }
> > +            }
> > +         }
> > +         part { name: "ext_pbar7";
> > +            type: EXTERNAL;
> > +            source: "elm/progressbar";
> > +            clip_to: "clip";
> > +            description { state: "default" 0.0;
> > +               max: 50 999;
> > +               align: 0.5 0.0;
> > +               rel1.offset: 0 300;
> > +               rel2.offset: 0 -50;
> > +               params {
> > +                  string: "style" "wheel";
> > +               }
> > +            }
> > +         }
> > +         part { name: "ext_button1";
> > +            type: EXTERNAL;
> > +            source: "elm/button";
> > +            clip_to: "clip";
> > +            description { state: "default" 0.0;
> > +               max: 100 40;
> > +               align: 0.0 1.0;
> > +               rel1.offset: 0 0;
> > +               rel2.offset: 0 -15;
> > +               params {
> > +                  string: "label" "anim with edje";
> > +               }
> > +            }
> > +         }
> > +         part { name: "ext_button2";
> > +            type: EXTERNAL;
> > +            source: "elm/button";
> > +            clip_to: "clip";
> > +            description { state: "default" 0.0;
> > +               max: 100 40;
> > +               align: 0.5 1.0;
> > +               rel1.offset: 0 0;
> > +               rel2.offset: 0 -15;
> > +               params {
> > +                  string: "label" "...with embryo ?";
> > +               }
> > +            }
> > +         }
> > +         part { name: "ext_button3";
> > +            type: EXTERNAL;
> > +            source: "elm/button";
> > +            clip_to: "clip";
> > +            description { state: "default" 0.0;
> > +               max: 100 40;
> > +               align: 1.0 1.0;
> > +               rel1.offset: 0 0;
> > +               rel2.offset: 0 -15;
> > +               params {
> > +                  string: "label" "...or from C";
> > +               }
> > +            }
> > +         }
> > +         COMMON_EXTERNAL_OVER
> > +      }
> > +      programs {
> > +         COMMON_EXTERNAL_PROGRAM
> > +         program { name: "anim_with_edje";
> > +            signal: "clicked";
> > +            source: "ext_button1";
> > +            action: PARAM_SET "ext_pbar1" "value" 0.0;
> > +            after: "disable_button1";
> > +         }
> > +         program { name: "disable_button1";
> > +            action: PARAM_SET "ext_button1" "disabled" 1;
> > +            after: "disable_button2";
> > +         }
> > +         program { name: "disable_button2";
> > +            action: PARAM_SET "ext_button2" "disabled" 1;
> > +            after: "disable_button3";
> > +         }
> > +         program { name: "disable_button3";
> > +            action: PARAM_SET "ext_button3" "disabled" 1;
> > +            after: "anim_0";
> > +         }
> > +         program { name: "anim_0";
> > +            action: PARAM_SET "ext_pbar1" "value" 0.0;
> > +            after: "anim_1";
> > +         }
> > +         program { name: "anim_1";
> > +            in: 0.3 0.0;
> > +            action: PARAM_SET "ext_pbar1" "value" 0.1;
> > +            after: "anim_2";
> > +         }
> > +         program { name: "anim_2";
> > +            in: 0.3 0.0;
> > +            action: PARAM_SET "ext_pbar1" "value" 0.2;
> > +            after: "anim_3";
> > +         }
> > +         program { name: "anim_3";
> > +            in: 0.3 0.0;
> > +            action: PARAM_SET "ext_pbar1" "value" 0.3;
> > +            after: "anim_4";
> > +         }
> > +         program { name: "anim_4";
> > +            in: 0.3 0.0;
> > +            action: PARAM_SET "ext_pbar1" "value" 0.4;
> > +            after: "anim_5";
> > +         }
> > +         program { name: "anim_5";
> > +            in: 0.3 0.0;
> > +            action: PARAM_SET "ext_pbar1" "value" 0.5;
> > +            after: "anim_6";
> > +         }
> > +         program { name: "anim_6";
> > +            in: 0.3 0.0;
> > +            action: PARAM_SET "ext_pbar1" "value" 0.6;
> > +            after: "anim_7";
> > +         }
> > +         program { name: "anim_7";
> > +            in: 0.3 0.0;
> > +            action: PARAM_SET "ext_pbar1" "value" 0.7;
> > +            after: "anim_8";
> > +         }
> > +         program { name: "anim_8";
> > +            in: 0.3 0.0;
> > +            action: PARAM_SET "ext_pbar1" "value" 0.8;
> > +            after: "anim_9";
> > +         }
> > +         program { name: "anim_9";
> > +            in: 0.3 0.0;
> > +            action: PARAM_SET "ext_pbar1" "value" 0.9;
> > +            after: "anim_10";
> > +         }
> > +         program { name: "anim_10";
> > +            in: 0.3 0.0;
> > +            action: PARAM_SET "ext_pbar1" "value" 1.0;
> > +            after: "reenable_button1";
> > +         }
> > +         program { name: "reenable_button1";
> > +            action: PARAM_SET "ext_button1" "disabled" 0;
> > +            after: "reenable_button2";
> > +         }
> > +         program { name: "reenable_button2";
> > +            action: PARAM_SET "ext_button2" "disabled" 0;
> > +            after: "reenable_button3";
> > +         }
> > +         program { name: "reenable_button3";
> > +            action: PARAM_SET "ext_button3" "disabled" 0;
> > +         }
> > +         script {
> > +            public my_value;
> > +            public timer_cb(unused) {
> > +               external_param_set_float(PART:"ext_pbar1", "value",
> get_float(my_value));
> > +               external_param_set_float(PART:"ext_pbar3", "value",
> get_float(my_value));
> > +               external_param_set_float(PART:"ext_pbar4", "value",
> get_float(my_value));
> > +               external_param_set_float(PART:"ext_pbar6", "value",
> get_float(my_value));
> > +               if (get_float(my_value) < 1.0)
> > +               {
> > +                  set_float(my_value, get_float(my_value) + 0.0123);
> > +                  timer(0.1, "timer_cb", unused);
> > +               }
> > +               else
> > +               {
> > +                  external_param_set_bool(PART:"ext_button1",
> "disabled", 0);
> > +                  external_param_set_bool(PART:"ext_button2",
> "disabled", 0);
> > +                  external_param_set_bool(PART:"ext_button3",
> "disabled", 0);
> > +               }
> > +            }
> > +         }
> > +         program { name: "bt2_click";
> > +            signal: "clicked";
> > +            source: "ext_button2";
> > +            script {
> > +               set_float(my_value, 0.0);
> > +               external_param_set_bool(PART:"ext_button1", "disabled",
> 1);
> > +               external_param_set_bool(PART:"ext_button2", "disabled",
> 1);
> > +               external_param_set_bool(PART:"ext_button3", "disabled",
> 1);
> > +               timer_cb(0);
> > +            }
> > +         }
> > +      }
> > +   }
> >  }
> >
> > Modified: trunk/elementary/src/bin/test.c
> > ===================================================================
> > --- trunk/elementary/src/bin/test.c     2012-09-10 19:21:56 UTC (rev
> 76421)
> > +++ trunk/elementary/src/bin/test.c     2012-09-10 21:48:56 UTC (rev
> 76422)
> > @@ -187,6 +187,7 @@
> >  void test_external_button(void *data, Evas_Object *obj, void
> *event_info);
> >  void test_external_slider(void *data, Evas_Object *obj, void
> *event_info);
> >  void test_external_scroller(void *data, Evas_Object *obj, void
> *event_info);
> > +void test_external_pbar(void *data, Evas_Object *obj, void *event_info);
> >  #ifdef HAVE_EMOTION
> >  void test_video(void *data, Evas_Object *obj, void *event_info);
> >  #endif
> > @@ -532,6 +533,7 @@
> >
> >     //------------------------------//
> >     ADD_TEST(NULL, "Edje External", "ExtButton", test_external_button);
> > +   ADD_TEST(NULL, "Edje External", "ExtProgressBar",
> test_external_pbar);
> >     ADD_TEST(NULL, "Edje External", "ExtScroller",
> test_external_scroller);
> >     ADD_TEST(NULL, "Edje External", "ExtSlider", test_external_slider);
> >
> >
> > Modified: trunk/elementary/src/bin/test_external.c
> > ===================================================================
> > --- trunk/elementary/src/bin/test_external.c    2012-09-10 19:21:56 UTC
> (rev 76421)
> > +++ trunk/elementary/src/bin/test_external.c    2012-09-10 21:48:56 UTC
> (rev 76422)
> > @@ -70,4 +70,103 @@
> >  }
> >
> >
> > +static Eina_Bool
> > +_timer_cb(void *data)
> > +{
> > +   Evas_Object *edje = data;
> > +   Evas_Object *bt1, *bt2, *bt3, *pb1, *pb2, *pb3, *pb4, *pb5, *pb6,
> *pb7;
> > +   double progress;
> > +
> > +   pb1 = edje_object_part_external_object_get(edje, "ext_pbar1");
> > +   pb2 = edje_object_part_external_object_get(edje, "ext_pbar2");
> > +   pb3 = edje_object_part_external_object_get(edje, "ext_pbar3");
> > +   pb4 = edje_object_part_external_object_get(edje, "ext_pbar4");
> > +   pb6 = edje_object_part_external_object_get(edje, "ext_pbar6");
> > +   progress = elm_progressbar_value_get(pb1) + 0.0123;
> > +
> > +   elm_progressbar_value_set(pb1, progress);
> > +   elm_progressbar_value_set(pb2, progress);
> > +   elm_progressbar_value_set(pb3, progress);
> > +   elm_progressbar_value_set(pb4, progress);
> > +   elm_progressbar_value_set(pb6, progress);
> > +
> > +   if (progress < 1.0)
> > +     return ECORE_CALLBACK_RENEW;
> > +
> > +   pb5 = edje_object_part_external_object_get(edje, "ext_pbar5");
> > +   pb7 = edje_object_part_external_object_get(edje, "ext_pbar7");
> > +   elm_progressbar_pulse(pb2, EINA_FALSE);
> > +   elm_progressbar_pulse(pb5, EINA_FALSE);
> > +   elm_progressbar_pulse(pb7, EINA_FALSE);
> > +
> > +   bt1 = edje_object_part_external_object_get(edje, "ext_button1");
> > +   bt2 = edje_object_part_external_object_get(edje, "ext_button2");
> > +   bt3 = edje_object_part_external_object_get(edje, "ext_button3");
> > +   elm_object_disabled_set(bt1, EINA_FALSE);
> > +   elm_object_disabled_set(bt2, EINA_FALSE);
> > +   elm_object_disabled_set(bt3, EINA_FALSE);
> > +
> > +   return ECORE_CALLBACK_CANCEL;
> > +}
> > +
> > +static void
> > +_bt_clicked(void *data, Evas_Object *obj __UNUSED__, void *event_info
> __UNUSED__)
> > +{
> > +   Evas_Object *edje = data;
> > +   Evas_Object *bt1, *bt2, *bt3, *pb1, *pb2, *pb3, *pb4, *pb5, *pb6,
> *pb7;
> > +
> > +   bt1 = edje_object_part_external_object_get(edje, "ext_button1");
> > +   bt2 = edje_object_part_external_object_get(edje, "ext_button2");
> > +   bt3 = edje_object_part_external_object_get(edje, "ext_button3");
> > +   elm_object_disabled_set(bt1, EINA_TRUE);
> > +   elm_object_disabled_set(bt2, EINA_TRUE);
> > +   elm_object_disabled_set(bt3, EINA_TRUE);
> > +
> > +   pb1 = edje_object_part_external_object_get(edje, "ext_pbar1");
> > +   pb1 = edje_object_part_external_object_get(edje, "ext_pbar1");
> > +   pb2 = edje_object_part_external_object_get(edje, "ext_pbar2");
> > +   pb3 = edje_object_part_external_object_get(edje, "ext_pbar3");
> > +   pb4 = edje_object_part_external_object_get(edje, "ext_pbar4");
> > +   pb5 = edje_object_part_external_object_get(edje, "ext_pbar5");
> > +   pb6 = edje_object_part_external_object_get(edje, "ext_pbar6");
> > +   pb7 = edje_object_part_external_object_get(edje, "ext_pbar7");
> > +
> > +   elm_progressbar_value_set(pb1, 0.0);
> > +   elm_progressbar_value_set(pb3, 0.0);
> > +   elm_progressbar_value_set(pb4, 0.0);
> > +   elm_progressbar_value_set(pb6, 0.0);
> > +
> > +   elm_progressbar_pulse(pb2, EINA_TRUE);
> > +   elm_progressbar_pulse(pb5, EINA_TRUE);
> > +   elm_progressbar_pulse(pb7, EINA_TRUE);
> > +
> > +   ecore_timer_add(0.1, _timer_cb, edje);
> > +}
> > +
> > +void
> > +test_external_pbar(void *data __UNUSED__, Evas_Object *obj __UNUSED__,
> void *event_info __UNUSED__)
> > +{
> > +   Evas_Object *win, *ly, *edje, *bt;
> > +   char buf[PATH_MAX];
> > +
> > +   win = elm_win_util_standard_add("ext_pbar", "Edje External
> ProgressBar");
> > +   elm_win_autodel_set(win, EINA_TRUE);
> > +
> > +   ly = elm_layout_add(win);
> > +   snprintf(buf, sizeof(buf), "%s/objects/test_external.edj",
> elm_app_data_dir_get());
> > +   elm_layout_file_set(ly, buf, "external/pbar");
> > +   evas_object_size_hint_weight_set(ly, EVAS_HINT_EXPAND,
> EVAS_HINT_EXPAND);
> > +   evas_object_size_hint_align_set(ly, EVAS_HINT_FILL, EVAS_HINT_FILL);
> > +   elm_win_resize_object_add(win, ly);
> > +   evas_object_show(ly);
> > +
> > +   edje = elm_layout_edje_get(ly);
> > +   bt = edje_object_part_external_object_get(edje, "ext_button3");
> > +   evas_object_smart_callback_add(bt, "clicked", _bt_clicked, edje);
> > +
> > +   evas_object_resize(win, 320, 400);
> > +   evas_object_show(win);
> > +}
> > +
> > +
> >  #endif
> >
> >
> >
> ------------------------------------------------------------------------------
> > Live Security Virtual Conference
> > Exclusive live event will cover all the ways today's security and
> > threat landscape has changed and how IT managers can respond. Discussions
> > will include endpoint security, mobile security and the latest in malware
> > threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
> > _______________________________________________
> > enlightenment-svn mailing list
> > enlightenment-...@lists.sourceforge.net
> > https://lists.sourceforge.net/lists/listinfo/enlightenment-svn
> >
>
>
>
> --
> Cedric BAIL
>
>
> ------------------------------------------------------------------------------
> Live Security Virtual Conference
> Exclusive live event will cover all the ways today's security and
> threat landscape has changed and how IT managers can respond. Discussions
> will include endpoint security, mobile security and the latest in malware
> threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
> _______________________________________________
> enlightenment-devel mailing list
> enlightenment-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
>
------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to