This is an automated email from the git hooks/post-receive script.

git pushed a commit to branch master
in repository echart.

View the commit online.

commit b4c79610de4c24dfffafc111e6ba501bcedd7577
Author: Vincent Torri <[email protected]>
AuthorDate: Tue Jun 2 08:16:13 2026 +0200

    formatting, change API
---
 src/bin/echart_main.c | 285 +++++++++++++++++++++++++++++---------------------
 src/lib/echart_line.c |  37 ++++---
 src/lib/echart_line.h |   4 +-
 3 files changed, 189 insertions(+), 137 deletions(-)

diff --git a/src/bin/echart_main.c b/src/bin/echart_main.c
index 40f5bb7..b1eaf95 100644
--- a/src/bin/echart_main.c
+++ b/src/bin/echart_main.c
@@ -13,9 +13,7 @@ EAPI_MAIN int
 elm_main(int argc, char **argv)
 {
    Evas_Object *win;
-   Evas_Object *o, *line;
-   double *absciss;
-   unsigned int num;
+   Evas_Object *o;
    int w;
    int h;
    int wo;
@@ -50,7 +48,8 @@ elm_main(int argc, char **argv)
    /* background */
    o = elm_bg_add(win);
    evas_object_size_hint_weight_set(o, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-   elm_object_style_set(o, "grad_vert_focus_title_match");
+   /* elm_object_style_set(o, "grad_vert_focus_title_match"); */
+   elm_bg_color_set(o, 255, 255, 255);
    elm_win_resize_object_add(win, o);
    evas_object_show(o);
 
@@ -65,139 +64,183 @@ elm_main(int argc, char **argv)
 
    /* line */
 
-   num = 6;
-   absciss = (double *)calloc(num, sizeof(double));
-   absciss[0] = 1;
-   absciss[1] = 2;
-   absciss[2] = 4;
-   absciss[3] = 5;
-   absciss[4] = 7;
-   absciss[5] = 8;
+   {
+      int num = 6;
+      /* double absciss[num]; */
+      double d[num];
 
-   double d[6];
-   d[0] = 1.5;
-   d[1] = -1.5;
-   d[2] = 2.3;
-   d[3] = 7.9;
-   d[4] = -4.2;
-   d[5] = 8.4;
-   xo = 0;
-   yo = 0;
+      xo = 0;
+      yo = 0;
 
-   o = line = echart_line_add(evas_object_evas_get(win));
-   evas_object_move(o, xo, yo);
-   evas_object_resize(o, wo, ho);
-   echart_line_data_append(o, d, num);
-   d[0] = 5.5;
-   d[1] = 2.7;
-   d[2] = -2.3;
-   d[3] = 3.9;
-   d[4] = 6.2;
-   d[5] = -3.4;
-   echart_line_data_append(o, d, num);
-   echart_line_width_set(o, 3);
-   evas_object_show(o);
+      /* absciss[0] = 1; */
+      /* absciss[1] = 2; */
+      /* absciss[2] = 4; */
+      /* absciss[3] = 5; */
+      /* absciss[4] = 7; */
+      /* absciss[5] = 8; */
 
-   /* smooth line */
-   d[0] = 1.5;
-   d[1] = -1.5;
-   d[2] = 2.3;
-   d[3] = 7.9;
-   d[4] = -4.2;
-   d[5] = 8.4;
-   xo = wo;
-   yo = 0;
+      o = echart_line_add(evas_object_evas_get(win));
+      evas_object_move(o, xo, yo);
+      evas_object_resize(o, wo, ho);
 
-   o = line = echart_line_add(evas_object_evas_get(win));
-   echart_line_cubic_set(o, EINA_TRUE);
-   evas_object_move(o, xo, yo);
-   evas_object_resize(o, wo, ho);
-   echart_line_data_append(o, d, num);
-   d[0] = 5.5;
-   d[1] = 2.7;
-   d[2] = -2.3;
-   d[3] = 3.9;
-   d[4] = 6.2;
-   d[5] = -3.4;
-   echart_line_data_append(o, d, num);
-   echart_line_width_set(o, 3);
-   evas_object_show(o);
+      d[0] = 3.5;
+      d[1] = 2.5;
+      d[2] = 4.3;
+      d[3] = 7.9;
+      d[4] = 1.2;
+      d[5] = 8.4;
+      echart_line_data_append(o, d, num);
 
-   /* grid abscissa */
-   o = echart_grid_add(evas_object_evas_get(win));
-   evas_object_move(o, xo, yo);
-   evas_object_resize(o, wo, ho);
-   echart_grid_set(o, 0, 1, 0.2);
-   echart_grid_color_set(o, 0, 0, 0, 255);
-   echart_grid_width_set(o, 1);
-   evas_object_show(o);
+      d[0] = 9.5;
+      d[1] = 6.7;
+      d[2] = 2.3;
+      d[3] = 7.9;
+      d[4] = 10.2;
+      d[5] = 1.4;
+      echart_line_data_append(o, d, num);
 
-   /* grid ordinate */
-   o = echart_grid_ord_add(evas_object_evas_get(win));
-   evas_object_move(o, xo, yo);
-   evas_object_resize(o, wo, ho);
-   echart_grid_set(o, -4.1, 8.4, (8.4 + 4.1) / 5);
-   echart_grid_color_set(o, 0, 0, 0, 255);
-   echart_grid_width_set(o, 1);
-   evas_object_show(o);
+      echart_line_width_set(o, 3);
+      evas_object_show(o);
+   }
+
+   /* curved line */
+   {
+      int num = 6;
+      double d[num];
+
+      xo = wo;
+      yo = 0;
+
+      /* grid abscissa */
+      o = echart_grid_add(evas_object_evas_get(win));
+      evas_object_move(o, xo, yo);
+      evas_object_resize(o, wo, ho);
+      echart_grid_set(o, 0, 1, 0.2);
+      echart_grid_color_set(o, 0, 0, 0, 255);
+      echart_grid_width_set(o, 1);
+      evas_object_show(o);
+
+      /* grid ordinate */
+      o = echart_grid_ord_add(evas_object_evas_get(win));
+      evas_object_move(o, xo, yo);
+      evas_object_resize(o, wo, ho);
+      echart_grid_set(o, -4.1, 8.4, (8.4 + 4.1) / 5);
+      echart_grid_color_set(o, 0, 0, 0, 255);
+      echart_grid_width_set(o, 1);
+      evas_object_show(o);
+
+      o = echart_line_add(evas_object_evas_get(win));
+      echart_line_curved_set(o, EINA_TRUE);
+      evas_object_move(o, xo, yo);
+      evas_object_resize(o, wo, ho);
+
+      d[0] = 3.5;
+      d[1] = 2.5;
+      d[2] = 4.3;
+      d[3] = 7.9;
+      d[4] = 1.2;
+      d[5] = 8.4;
+      echart_line_data_append(o, d, num);
+
+      d[0] = 9.5;
+      d[1] = 6.7;
+      d[2] = 2.3;
+      d[3] = 7.9;
+      d[4] = 10.2;
+      d[5] = 1.4;
+      echart_line_data_append(o, d, num);
+
+      echart_line_width_set(o, 3);
+      evas_object_show(o);
+   }
 
    /* vbar */
-   int nd = 3;
+   {
+      int num = 3;
+      double d[num];
 
-   xo = 2 * wo;
-   yo = 0;
-   o = echart_bar_add(evas_object_evas_get(win));
-   evas_object_move(o, xo, yo);
-   evas_object_resize(o, wo, ho);
-   double v1[3] = { 3, 6, 4 };
-   echart_bar_data_append(o, v1, nd);
-   v1[0] = 6;
-   v1[1] = 4;
-   v1[2] = 3;
-   echart_bar_data_append(o, v1, nd);
-   evas_object_show(o);
+      xo = 2 * wo;
+      yo = 0;
 
-   /* hbar */
-   nd = 3;
+      o = echart_bar_add(evas_object_evas_get(win));
+      evas_object_move(o, xo, yo);
+      evas_object_resize(o, wo, ho);
 
-   xo = 3 * wo;
-   yo = 0;
-   o = echart_bar_add(evas_object_evas_get(win));
-   echart_bar_horizontal_set(o, 1);
-   evas_object_move(o, xo, yo);
-   evas_object_resize(o, wo, ho);
-   v1[0] = 3;
-   v1[1] = 6;
-   v1[2] = 4;
-   echart_bar_data_append(o, v1, nd);
-   v1[0] = 6;
-   v1[1] = 4;
-   v1[2] = 3;
-   echart_bar_data_append(o, v1, nd);
-   evas_object_show(o);
+      d[0] = 3;
+      d[1] = 6;
+      d[2] = 4;
+      echart_bar_data_append(o, d, num);
+
+      d[0] = 6;
+      d[1] = 4;
+      d[2] = 3;
+      echart_bar_data_append(o, d, num);
+
+      evas_object_show(o);
+   }
+
+   /* hbar */{
+      int num = 3;
+      double d[num];
+
+      xo = 3 * wo;
+      yo = 0;
+
+      o = echart_bar_add(evas_object_evas_get(win));
+      echart_bar_horizontal_set(o, 1);
+      evas_object_move(o, xo, yo);
+      evas_object_resize(o, wo, ho);
+
+      d[0] = 3;
+      d[1] = 6;
+      d[2] = 4;
+      echart_bar_data_append(o, d, num);
+
+      d[0] = 6;
+      d[1] = 4;
+      d[2] = 3;
+      echart_bar_data_append(o, d, num);
+
+      evas_object_show(o);
+   }
 
    /* pie */
-   xo = 0;
-   yo = ho;
+   {
+      int num = 5;
+      double d[num];
 
-   o = echart_pie_add(evas_object_evas_get(win));
-   evas_object_move(o, xo, yo);
-   evas_object_resize(o, wo, yo);
-   nd = 5;
-   double v2[5] = { 11, 4, 2, 9, 7 };
-   echart_pie_data_set(o, v2, nd);
-   evas_object_show(o);
+      xo = 0;
+      yo = ho;
 
-   xo = wo;
-   yo = ho;
+      o = echart_pie_add(evas_object_evas_get(win));
+      evas_object_move(o, xo, yo);
+      evas_object_resize(o, wo, ho);
 
-   o = echart_pie_add(evas_object_evas_get(win));
-   evas_object_move(o, xo, yo);
-   evas_object_resize(o, wo, yo);
-   nd = 5;
-   double v3[5] = { 45, 4, 2, 5, 10 };
-   echart_pie_data_set(o, v3, nd);
-   evas_object_show(o);
+      d[0] = 11;
+      d[1] = 4;
+      d[2] = 2;
+      d[3] = 9;
+      d[4] = 7;
+      echart_pie_data_set(o, d, num);
+
+      evas_object_show(o);
+
+      xo = wo;
+      yo = ho;
+
+      o = echart_pie_add(evas_object_evas_get(win));
+      evas_object_move(o, xo, yo);
+      evas_object_resize(o, wo, ho);
+
+      d[0] = 45;
+      d[1] = 4;
+      d[2] = 2;
+      d[3] = 5;
+      d[4] = 10;
+      echart_pie_data_set(o, d, num);
+
+      evas_object_show(o);
+   }
 
    evas_object_resize(win, w, h);
    evas_object_show(win);
diff --git a/src/lib/echart_line.c b/src/lib/echart_line.c
index 6db7fa4..0363a2f 100644
--- a/src/lib/echart_line.c
+++ b/src/lib/echart_line.c
@@ -13,8 +13,8 @@
  *                                  Local                                     *
  *============================================================================*/
 
-#define X_VG(x) (w) * ((x) - xmin) / (xmax - xmin)
-#define Y_VG(y) (h) * (sd->ymax - (y)) / (sd->ymax - sd->ymin)
+#define X_VG(x) (w - 1) * ((x) - xmin) / (xmax - xmin)
+#define Y_VG(y) (h - 1) * (sd->ymax - (y)) / (sd->ymax - sd->ymin)
 
 typedef struct Data Data;
 typedef struct Chart_Line Chart_Line;
@@ -43,7 +43,7 @@ struct Chart_Line
    double width;
    double ymin;
    double ymax;
-   unsigned int is_cubic : 1;
+   Eina_Bool is_curved : 1;
 };
 
 static Evas_Smart *_line_smart = NULL;
@@ -199,13 +199,13 @@ _line_smart_calculate(Evas_Object *obj)
 
       d = sd->data[j].values;
       line = sd->data[j].line;
-      if (sd->is_cubic)
+      if (sd->is_curved)
          dx = w / (sd->nbr_values - 1);
 
-      evas_vg_shape_append_move_to(line, X_VG(a[0]), Y_VG(d[0]));
-      for (int i = 1; i < sd->nbr_values; i++)
+      if (sd->is_curved)
       {
-         if (sd->is_cubic)
+         evas_vg_shape_append_move_to(line, X_VG(a[0]), Y_VG(d[0]));
+         for (int i = 1; i < sd->nbr_values; i++)
          {
             double x = X_VG(a[i]);
             double y = Y_VG(d[i]);
@@ -215,8 +215,14 @@ _line_smart_calculate(Evas_Object *obj)
             double cx2 = x - dx * 0.4;
             evas_vg_shape_append_cubic_to(line, x, y, cx1, py, cx2, y);
          }
-         else
+      }
+      else
+      {
+         evas_vg_shape_append_move_to(line, X_VG(a[0]), Y_VG(d[0]));
+         for (int i = 1; i < sd->nbr_values; i++)
+         {
             evas_vg_shape_append_line_to(line, X_VG(a[i]), Y_VG(d[i]));
+         }
       }
 
       evas_vg_shape_stroke_width_set(line, sd->width);
@@ -341,29 +347,31 @@ echart_line_data_append(Evas_Object *obj, double *values, int nbr_values)
    evas_object_smart_changed(obj);
 }
 
-ECH_API void echart_line_cubic_set(Evas_Object *obj, int on)
+ECH_API void
+echart_line_curved_set(Evas_Object *obj, Eina_Bool on)
 {
    Chart_Line *sd;
 
    sd = evas_object_smart_data_get(obj);
    EINA_SAFETY_ON_NULL_RETURN(sd);
 
-   if (sd->is_cubic == !!on)
+   if (sd->is_curved == !!on)
       return;
 
-   sd->is_cubic = !!on;
+   sd->is_curved = !!on;
 
    evas_object_smart_changed(obj);
 }
 
-ECH_API int echart_line_cubic_get(Evas_Object *obj)
+ECH_API Eina_Bool
+echart_line_curved_get(Evas_Object *obj)
 {
    Chart_Line *sd;
 
    sd = evas_object_smart_data_get(obj);
    EINA_SAFETY_ON_NULL_RETURN_VAL(sd, 0);
 
-   return sd->is_cubic;
+   return sd->is_curved;
 }
 
 ECH_API int
@@ -424,7 +432,8 @@ echart_line_width_set(Evas_Object *obj, double width)
    evas_object_smart_changed(obj);
 }
 
-ECH_API double echart_line_width_get(Evas_Object *obj)
+ECH_API double
+echart_line_width_get(Evas_Object *obj)
 {
    Chart_Line *sd;
 
diff --git a/src/lib/echart_line.h b/src/lib/echart_line.h
index df3e078..24a82b0 100644
--- a/src/lib/echart_line.h
+++ b/src/lib/echart_line.h
@@ -12,9 +12,9 @@ ECH_API Evas_Object *echart_line_add(Evas *evas);
 
 ECH_API void echart_line_data_append(Evas_Object *obj, double *values, int nbr_values);
 
-ECH_API void echart_line_cubic_set(Evas_Object *obj, int on);
+ECH_API void echart_line_curved_set(Evas_Object *obj, Eina_Bool on);
 
-ECH_API int echart_line_cubic_get(Evas_Object *obj);
+ECH_API Eina_Bool echart_line_curved_get(Evas_Object *obj);
 
 ECH_API int echart_line_nbr_series_get(Evas_Object *obj);
 

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.

Reply via email to