[Goodies-commits] r3251 - xfce4-cpugraph-plugin/trunk/panel-plugin

ludovic mercier lidiriel at xfce.org
Wed Sep 26 09:10:34 CEST 2007


Author: lidiriel
Date: 2007-09-26 07:10:34 +0000 (Wed, 26 Sep 2007)
New Revision: 3251

Added:
   xfce4-cpugraph-plugin/trunk/panel-plugin/mode.c
   xfce4-cpugraph-plugin/trunk/panel-plugin/mode.h
Modified:
   xfce4-cpugraph-plugin/trunk/panel-plugin/Makefile.am
   xfce4-cpugraph-plugin/trunk/panel-plugin/cpu.c
Log:
clean up code : split graphic mode.

Modified: xfce4-cpugraph-plugin/trunk/panel-plugin/Makefile.am
===================================================================
--- xfce4-cpugraph-plugin/trunk/panel-plugin/Makefile.am	2007-09-25 20:34:34 UTC (rev 3250)
+++ xfce4-cpugraph-plugin/trunk/panel-plugin/Makefile.am	2007-09-26 07:10:34 UTC (rev 3251)
@@ -9,6 +9,8 @@
 	@LIBXFCE4PANEL_LIBS@
 
 xfce4_cpugraph_plugin_SOURCES =					\
+	mode.c						\
+	mode.h						\
 	cpu.c							\
 	cpu.h							\
 	os.c							\
@@ -23,7 +25,7 @@
 # 
 desktop_in_in_files = cpugraph.desktop.in.in
 desktop_in_files = $(desktop_in_in_files:.desktop.in.in=.desktop.in)
-	
+
 desktopdir = $(datadir)/xfce4/panel-plugins
 desktop_DATA = $(desktop_in_files:.desktop.in=.desktop)
 @INTLTOOL_DESKTOP_RULE@
@@ -33,7 +35,7 @@
 
 DISTCLEANFILES =							\
 	$(desktop_DATA) $(desktop_in_files)
-	
+
 # get full path into .desktop file
 %.desktop.in: %.desktop.in.in
 	sed -e "s^@PLUGIN_PATH@^$(libexecdir)/xfce4/panel-plugins^" \

Modified: xfce4-cpugraph-plugin/trunk/panel-plugin/cpu.c
===================================================================
--- xfce4-cpugraph-plugin/trunk/panel-plugin/cpu.c	2007-09-25 20:34:34 UTC (rev 3250)
+++ xfce4-cpugraph-plugin/trunk/panel-plugin/cpu.c	2007-09-26 07:10:34 UTC (rev 3251)
@@ -1,4 +1,5 @@
 #include "cpu.h"
+#include "mode.h"
 
 guint16
 _lerp (double t, guint16 a, guint16 b)
@@ -735,156 +736,19 @@
 
     if (base->m_Mode == 0)
     {
-        int x, y;
-
-        for (x = w; x >= 0; x--)
-        {
-            long usage = h * base->m_History[w - x] / CPU_SCALE;
-
-            if(usage == 0) continue;
-
-            if (base->m_ColorMode == 0)
-            {
-                gdk_gc_set_rgb_fg_color (fg1, &base->m_ForeGround1);
-
-                if(base->m_Frame)
-                    gdk_draw_line (da->window, fg1, x+1, h+1-usage, x+1, h);
-                else
-                    gdk_draw_line (da->window, fg1, x, h-usage, x, h-1);
-            }
-            else if (base->m_ColorMode == 3) /* cpu freq. based */
-            {
-                GdkColor color;
-                double t = (double) (base->m_History[base->m_Values+ w - x] - scaling_min_freq)
-                            / (scaling_max_freq - scaling_min_freq);
-
-                color.red = _lerp (t, base->m_ForeGround1.red,
-                           base->m_ForeGround2.red);
-                color.green = _lerp (t, base->m_ForeGround1.green,
-                           base->m_ForeGround2.green);
-                color.blue = _lerp (t, base->m_ForeGround1.blue,
-                           base->m_ForeGround2.blue);
-                gdk_gc_set_rgb_fg_color (fg1, &color);
-
-                if(base->m_Frame)
-                    gdk_draw_line (da->window, fg1
-                        , x+1, h+1-usage, x+1, h);
-                 else
-                    gdk_draw_line (da->window, fg1
-                        , x, h-usage, x, h-1);
-            }
-            else /* 1 or 2 */
-            {
-                int tmp = 0;
-                int length = h - (h - usage);
-                for (y = h; y >= h - usage; y--, tmp++)
-                {
-                    if (base->m_ColorMode > 0)
-                    {
-                        GdkColor color;
-                        double t =
-                            (base->m_ColorMode == 1) ? (tmp / (double) (h)) :
-                                (tmp / (double) (length));
-                        color.red =
-                            _lerp (t, base->m_ForeGround1.red,
-                                   base->m_ForeGround2.red);
-                        color.green =
-                            _lerp (t, base->m_ForeGround1.green,
-                                   base->m_ForeGround2.green);
-                        color.blue =
-                            _lerp (t, base->m_ForeGround1.blue,
-                                   base->m_ForeGround2.blue);
-                            gdk_gc_set_rgb_fg_color (fg1, &color);
-                    }
-                    gdk_draw_point (da->window, fg1, x, y);
-                }
-            }
-        }
+      drawGraphMode0(base, fg1, da, w, h);
     }
     else if (base->m_Mode == 1)
     {
-        int nrx = (w + 1) / 3.0;
-        int nry = (h + 1) / 2.0;
-        float tstep = nry / CPU_SCALE;
-        int x, y;
-
-        for (x = nrx ; x >= 0; x--)
-        {
-            float usage = base->m_History[nrx - x] * tstep;
-            int tmp = 0;
-            int length = usage;
-
-            gdk_gc_set_rgb_fg_color (fg2, &base->m_ForeGround2);
-            for (y = nry; y >= 0; y--)
-            {
-                GdkGC *draw = fg2;
-
-                if (base->m_ColorMode > 0)
-                {
-                    GdkColor color;
-                    double t =
-                        (base->m_ColorMode == 1) ?
-                            (tmp / (double) (nry)) :
-                                (tmp / (double) (length));
-                    color.red =
-                        _lerp (t, base->m_ForeGround2.red,
-                               base->m_ForeGround3.red);
-                    color.green =
-                        _lerp (t, base->m_ForeGround2.green,
-                               base->m_ForeGround3.green);
-                    color.blue =
-                        _lerp (t, base->m_ForeGround2.blue,
-                               base->m_ForeGround3.blue);
-                    gdk_gc_set_rgb_fg_color (fg1, &color);
-                    tmp++;
-                    draw = fg1;
-                }
-
-                gdk_draw_rectangle (da->window,
-                                    draw,
-                                    TRUE, x * 3, y * 2, 2, 1);
-            }
-        }
+      drawGraphMode1(base, fg1, fg2, da, w, h);
     }
     else if (base->m_Mode == 2)
     {
-        int y;
-        long usage = h * base->m_History[0] / CPU_SCALE;
-        int tmp = 0;
-        int length = usage;
-
-        for (y = h; y >= h - usage; y--)
-        {
-            if (base->m_ColorMode > 0)
-            {
-                GdkColor color;
-                double t =
-                    (base->m_ColorMode == 1) ? (tmp / (double) (h)) :
-                        (tmp / (double) (length));
-                color.red =
-                    _lerp (t, base->m_ForeGround1.red,
-                           base->m_ForeGround2.red);
-                color.green =
-                    _lerp (t, base->m_ForeGround1.green,
-                           base->m_ForeGround2.green);
-                color.blue =
-                    _lerp (t, base->m_ForeGround1.blue,
-                           base->m_ForeGround2.blue);
-                gdk_gc_set_rgb_fg_color (fg2, &color);
-                tmp++;
-            }
-            gdk_draw_line (da->window,
-                           (base->m_ColorMode > 0) ? fg2 : fg1,
-                           0, y, w, y);
-        }
+      drawGraphMode2(base, fg1, fg2, da, w, h);
     }
     else if (base->m_Mode == 4)
     {
-        gdk_draw_rectangle (da->window,
-                            fg1,
-                            TRUE,
-                            0, (h - (base->m_History[0]*h/CPU_SCALE)),
-                            w, (base->m_History[0]*h/CPU_SCALE));
+      drawGraphMode4(base, fg1, da, w, h);
     }
 
     g_object_unref (fg2);

Added: xfce4-cpugraph-plugin/trunk/panel-plugin/mode.c
===================================================================
--- xfce4-cpugraph-plugin/trunk/panel-plugin/mode.c	                        (rev 0)
+++ xfce4-cpugraph-plugin/trunk/panel-plugin/mode.c	2007-09-26 07:10:34 UTC (rev 3251)
@@ -0,0 +1,158 @@
+#include "mode.h"
+
+/*** MODE 0 ***/
+void drawGraphMode0 (CPUGraph *base, GdkGC *fg1, GtkWidget *da, int w, int h){
+  int x, y;
+
+  for (x = w; x >= 0; x--)
+  {
+    long usage = h * base->m_History[w - x] / CPU_SCALE;
+
+    if(usage == 0) continue;
+
+    if (base->m_ColorMode == 0) {
+      gdk_gc_set_rgb_fg_color (fg1, &base->m_ForeGround1);
+
+      if(base->m_Frame)
+        gdk_draw_line (da->window, fg1, x+1, h+1-usage, x+1, h);
+      else
+        gdk_draw_line (da->window, fg1, x, h-usage, x, h-1);
+    }
+    else if (base->m_ColorMode == 3) /* cpu freq. based */
+    {
+      GdkColor color;
+      double t = (double) (base->m_History[base->m_Values+ w - x] - scaling_min_freq)
+        / (scaling_max_freq - scaling_min_freq);
+
+      color.red = _lerp (t, base->m_ForeGround1.red,
+                         base->m_ForeGround2.red);
+      color.green = _lerp (t, base->m_ForeGround1.green,
+                           base->m_ForeGround2.green);
+      color.blue = _lerp (t, base->m_ForeGround1.blue,
+                          base->m_ForeGround2.blue);
+      gdk_gc_set_rgb_fg_color (fg1, &color);
+
+      if(base->m_Frame)
+        gdk_draw_line (da->window, fg1
+                       , x+1, h+1-usage, x+1, h);
+      else
+        gdk_draw_line (da->window, fg1
+                       , x, h-usage, x, h-1);
+    }
+    else /* 1 or 2 */
+    {
+      int tmp = 0;
+      int length = h - (h - usage);
+      for (y = h; y >= h - usage; y--, tmp++)
+      {
+        if (base->m_ColorMode > 0)
+        {
+          GdkColor color;
+          double t =
+            (base->m_ColorMode == 1) ? (tmp / (double) (h)) :
+            (tmp / (double) (length));
+          color.red =
+            _lerp (t, base->m_ForeGround1.red,
+                   base->m_ForeGround2.red);
+          color.green =
+            _lerp (t, base->m_ForeGround1.green,
+                   base->m_ForeGround2.green);
+          color.blue =
+            _lerp (t, base->m_ForeGround1.blue,
+                   base->m_ForeGround2.blue);
+          gdk_gc_set_rgb_fg_color (fg1, &color);
+        }
+        gdk_draw_point (da->window, fg1, x, y);
+      }
+    }
+  }
+}
+
+
+/*** MODE 1 ***/
+void drawGraphMode1 (CPUGraph *base, GdkGC *fg1, GdkGC *fg2, GtkWidget *da, int w, int h){
+  int nrx = (w + 1) / 3.0;
+  int nry = (h + 1) / 2.0;
+  float tstep = nry / CPU_SCALE;
+  int x, y;
+
+  for (x = nrx ; x >= 0; x--)
+  {
+    float usage = base->m_History[nrx - x] * tstep;
+    int tmp = 0;
+    int length = usage;
+
+    gdk_gc_set_rgb_fg_color (fg2, &base->m_ForeGround2);
+    for (y = nry; y >= 0; y--)
+    {
+      GdkGC *draw = fg2;
+
+      if (base->m_ColorMode > 0)
+      {
+        GdkColor color;
+        double t =
+          (base->m_ColorMode == 1) ?
+          (tmp / (double) (nry)) :
+          (tmp / (double) (length));
+        color.red =
+          _lerp (t, base->m_ForeGround2.red,
+                 base->m_ForeGround3.red);
+        color.green =
+          _lerp (t, base->m_ForeGround2.green,
+                 base->m_ForeGround3.green);
+        color.blue =
+          _lerp (t, base->m_ForeGround2.blue,
+                 base->m_ForeGround3.blue);
+        gdk_gc_set_rgb_fg_color (fg1, &color);
+        tmp++;
+        draw = fg1;
+      }
+
+      gdk_draw_rectangle (da->window,
+                          draw,
+                          TRUE, x * 3, y * 2, 2, 1);
+    }
+  }
+}
+
+/*** MODE 2 ***/
+void drawGraphMode2(CPUGraph *base, GdkGC *fg1, GdkGC *fg2, GtkWidget *da, int w, int h){
+  int y;
+  long usage = h * base->m_History[0] / CPU_SCALE;
+  int tmp = 0;
+  int length = usage;
+
+  for (y = h; y >= h - usage; y--)
+  {
+    if (base->m_ColorMode > 0)
+    {
+      GdkColor color;
+      double t =
+        (base->m_ColorMode == 1) ? (tmp / (double) (h)) :
+        (tmp / (double) (length));
+      color.red =
+        _lerp (t, base->m_ForeGround1.red,
+               base->m_ForeGround2.red);
+      color.green =
+        _lerp (t, base->m_ForeGround1.green,
+               base->m_ForeGround2.green);
+      color.blue =
+        _lerp (t, base->m_ForeGround1.blue,
+               base->m_ForeGround2.blue);
+      gdk_gc_set_rgb_fg_color (fg2, &color);
+      tmp++;
+    }
+    gdk_draw_line (da->window,
+                   (base->m_ColorMode > 0) ? fg2 : fg1,
+                   0, y, w, y);
+  }
+}
+
+/*** MODE 4 ***/
+void drawGraphMode4(CPUGraph *base, GdkGC *fg1, GtkWidget *da, int w, int h){
+  gdk_draw_rectangle (da->window,
+                      fg1,
+                      TRUE,
+                      0, (h - (base->m_History[0]*h/CPU_SCALE)),
+                      w, (base->m_History[0]*h/CPU_SCALE));
+}


Property changes on: xfce4-cpugraph-plugin/trunk/panel-plugin/mode.c
___________________________________________________________________
Name: svn:eol-style
   + native

Added: xfce4-cpugraph-plugin/trunk/panel-plugin/mode.h
===================================================================
--- xfce4-cpugraph-plugin/trunk/panel-plugin/mode.h	                        (rev 0)
+++ xfce4-cpugraph-plugin/trunk/panel-plugin/mode.h	2007-09-26 07:10:34 UTC (rev 3251)
@@ -0,0 +1,11 @@
+#ifndef __XFCE_MODE_H__
+#define __XFCE_MODE_H__
+
+#include "cpu.h"
+
+void drawGraphMode0(CPUGraph *base, GdkGC *fg1, GtkWidget *da, int w, int h);
+void drawGraphMode1(CPUGraph *base, GdkGC *fg1, GdkGC *fg2, GtkWidget *da, int w, int h);
+void drawGraphMode2(CPUGraph *base, GdkGC *fg1, GdkGC *fg2, GtkWidget *da, int w, int h);
+void drawGraphMode4(CPUGraph *base, GdkGC *fg1, GtkWidget *da, int w, int h);
+
+#endif


Property changes on: xfce4-cpugraph-plugin/trunk/panel-plugin/mode.h
___________________________________________________________________
Name: svn:eol-style
   + native




More information about the Goodies-commits mailing list