[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