r2897 - in trunk/src/target/OM-2007.2/panel-plugins/openmoko-panel-battery: . data src
mickey at sita.openmoko.org
mickey at sita.openmoko.org
Sun Sep 2 23:16:02 CEST 2007
Author: mickey
Date: 2007-09-02 23:15:59 +0200 (Sun, 02 Sep 2007)
New Revision: 2897
Added:
trunk/src/target/OM-2007.2/panel-plugins/openmoko-panel-battery/data/Battery_AC.png
Modified:
trunk/src/target/OM-2007.2/panel-plugins/openmoko-panel-battery/ChangeLog
trunk/src/target/OM-2007.2/panel-plugins/openmoko-panel-battery/data/Battery.png
trunk/src/target/OM-2007.2/panel-plugins/openmoko-panel-battery/data/Battery_00.png
trunk/src/target/OM-2007.2/panel-plugins/openmoko-panel-battery/data/Battery_01.png
trunk/src/target/OM-2007.2/panel-plugins/openmoko-panel-battery/data/Battery_02.png
trunk/src/target/OM-2007.2/panel-plugins/openmoko-panel-battery/data/Battery_03.png
trunk/src/target/OM-2007.2/panel-plugins/openmoko-panel-battery/data/Battery_04.png
trunk/src/target/OM-2007.2/panel-plugins/openmoko-panel-battery/data/Battery_05.png
trunk/src/target/OM-2007.2/panel-plugins/openmoko-panel-battery/data/Makefile.am
trunk/src/target/OM-2007.2/panel-plugins/openmoko-panel-battery/src/openmoko-panel-battery.c
Log:
openmoko-panel-battery: Precalculate images to make scaling easier. Catch up with libmokopanelui2
Modified: trunk/src/target/OM-2007.2/panel-plugins/openmoko-panel-battery/ChangeLog
===================================================================
--- trunk/src/target/OM-2007.2/panel-plugins/openmoko-panel-battery/ChangeLog 2007-09-02 20:09:45 UTC (rev 2896)
+++ trunk/src/target/OM-2007.2/panel-plugins/openmoko-panel-battery/ChangeLog 2007-09-02 21:15:59 UTC (rev 2897)
@@ -1,11 +1,18 @@
+2007-09-02 Michael Lauer <mickey at openmoko.org>
+
+ * src/openmoko-battery-plugin.c:
+ * data/Makefile.am:
+ * data/Battery*.png:
+ Precalculate images to make them scalable. Catch up with libmokopanelui2.
+
2007-07-30 Michael Lauer <mickey at openmoko.org>
- * configure.ac:
- Import panel-plugin into 2007.2 and refer to libmokopanelui2.
+ * configure.ac:
+ Import panel-plugin into 2007.2 and refer to libmokopanelui2.
2007-06-22 Stefan Schmidt <stefan at openmoko.org>
- * configure.ac:
- * data/Makefile.am:
+ * configure.ac:
+ * data/Makefile.am:
- Fix make distcheck. Patch from Rodolphe Ortalo. Closes #541
+ Fix make distcheck. Patch from Rodolphe Ortalo. Closes #541
Modified: trunk/src/target/OM-2007.2/panel-plugins/openmoko-panel-battery/data/Battery.png
===================================================================
(Binary files differ)
Modified: trunk/src/target/OM-2007.2/panel-plugins/openmoko-panel-battery/data/Battery_00.png
===================================================================
(Binary files differ)
Modified: trunk/src/target/OM-2007.2/panel-plugins/openmoko-panel-battery/data/Battery_01.png
===================================================================
(Binary files differ)
Modified: trunk/src/target/OM-2007.2/panel-plugins/openmoko-panel-battery/data/Battery_02.png
===================================================================
(Binary files differ)
Modified: trunk/src/target/OM-2007.2/panel-plugins/openmoko-panel-battery/data/Battery_03.png
===================================================================
(Binary files differ)
Modified: trunk/src/target/OM-2007.2/panel-plugins/openmoko-panel-battery/data/Battery_04.png
===================================================================
(Binary files differ)
Modified: trunk/src/target/OM-2007.2/panel-plugins/openmoko-panel-battery/data/Battery_05.png
===================================================================
(Binary files differ)
Added: trunk/src/target/OM-2007.2/panel-plugins/openmoko-panel-battery/data/Battery_AC.png
===================================================================
(Binary files differ)
Property changes on: trunk/src/target/OM-2007.2/panel-plugins/openmoko-panel-battery/data/Battery_AC.png
___________________________________________________________________
Name: svn:mime-type
+ image/png
Modified: trunk/src/target/OM-2007.2/panel-plugins/openmoko-panel-battery/data/Makefile.am
===================================================================
--- trunk/src/target/OM-2007.2/panel-plugins/openmoko-panel-battery/data/Makefile.am 2007-09-02 20:09:45 UTC (rev 2896)
+++ trunk/src/target/OM-2007.2/panel-plugins/openmoko-panel-battery/data/Makefile.am 2007-09-02 21:15:59 UTC (rev 2897)
@@ -1,5 +1,11 @@
#
# misc. data files
#
-dist_pkgdata_DATA = Battery_00.png Battery_01.png Battery_02.png Battery_03.png \
- Battery_04.png Battery_05.png Battery_Plug.png Battery.png
+dist_pkgdata_DATA = \
+ Battery_00.png \
+ Battery_01.png \
+ Battery_02.png \
+ Battery_03.png \
+ Battery_04.png \
+ Battery_05.png \
+ Battery_AC.png
Modified: trunk/src/target/OM-2007.2/panel-plugins/openmoko-panel-battery/src/openmoko-panel-battery.c
===================================================================
--- trunk/src/target/OM-2007.2/panel-plugins/openmoko-panel-battery/src/openmoko-panel-battery.c 2007-09-02 20:09:45 UTC (rev 2896)
+++ trunk/src/target/OM-2007.2/panel-plugins/openmoko-panel-battery/src/openmoko-panel-battery.c 2007-09-02 21:15:59 UTC (rev 2897)
@@ -32,11 +32,7 @@
#define DEBUG_THIS_FILE
typedef struct {
- GdkPixbuf* enclosing;
- GdkPixbuf* plug;
- GdkPixbuf* juice[JUICE_PIXMAPS];
- GdkPixbuf* indicator;
- GtkImage *image;
+ MokoPanelApplet* mokoapplet;
guint timeout_id;
} BatteryApplet;
@@ -58,15 +54,8 @@
memset (&info, 0, sizeof (apm_info));
apm_read (&info);
- /* compose new pixmap and set label */
+ char* icon;
- guint w = gdk_pixbuf_get_width( applet->indicator );
- guint h = gdk_pixbuf_get_height( applet->indicator );
-
- gdk_pixbuf_copy_area( applet->enclosing, 0, 0, w, h, applet->indicator, 0, 0 );
-
- GdkPixbuf* icon;
-
//FIXME Can we actually find out, when the battery is full?
// g_debug( "-- info.battery_status = %0xd", info.battery_status );
@@ -75,65 +64,37 @@
if ( info.battery_status == BATTERY_STATUS_ABSENT ||
info.battery_status == BATTERY_STATUS_CHARGING )
{
- icon = applet->plug;
+ icon = PKGDATADIR "/Battery_AC.png";
}
else
{
if (info.battery_percentage < 10)
- icon = applet->juice[0];
+ icon = PKGDATADIR "/Battery_00.png";
else if (info.battery_percentage < 30)
- icon = applet->juice[1];
+ icon = PKGDATADIR "/Battery_01.png";
else if (info.battery_percentage < 50)
- icon = applet->juice[2];
+ icon = PKGDATADIR "/Battery_02.png";
else if (info.battery_percentage < 70)
- icon = applet->juice[3];
+ icon = PKGDATADIR "/Battery_03.png";
else if (info.battery_percentage < 90)
- icon = applet->juice[4];
+ icon = PKGDATADIR "/Battery_04.png";
else
- icon = applet->juice[5];
+ icon = PKGDATADIR "/Battery_05.png";
}
//FIXME Check whether we actually need to update
- gdk_pixbuf_composite( icon, applet->indicator, 0, 0, w, h, 0, 0, 1, 1, GDK_INTERP_NEAREST, 255 );
- gtk_image_set_from_pixbuf( applet->image, applet->indicator );
-
+ moko_panel_applet_set_icon( applet->mokoapplet, icon );
return TRUE;
}
G_MODULE_EXPORT GtkWidget* mb_panel_applet_create(const char* id, GtkOrientation orientation)
{
- MokoPanelApplet* mokoapplet = MOKO_PANEL_APPLET(moko_panel_applet_new());
+ BatteryApplet *applet = g_slice_new (BatteryApplet);
+ MokoPanelApplet* mokoapplet = applet->mokoapplet = MOKO_PANEL_APPLET(moko_panel_applet_new());
- BatteryApplet *applet;
time_t t;
struct tm *local_time;
-
- applet = g_slice_new (BatteryApplet);
-
- applet->image = GTK_IMAGE(gtk_image_new());
- gtk_widget_set_name( GTK_WIDGET(applet->image), "MatchboxPanelBattery" );
- g_object_weak_ref( G_OBJECT(applet->image), (GWeakNotify) battery_applet_free, applet );
-
- /* preload pixbufs */
- guint i = 0;
- applet->juice[i++] = gdk_pixbuf_new_from_file( PKGDATADIR "/Battery_00.png", NULL );
- applet->juice[i++] = gdk_pixbuf_new_from_file( PKGDATADIR "/Battery_01.png", NULL );
- applet->juice[i++] = gdk_pixbuf_new_from_file( PKGDATADIR "/Battery_02.png", NULL );
- applet->juice[i++] = gdk_pixbuf_new_from_file( PKGDATADIR "/Battery_03.png", NULL );
- applet->juice[i++] = gdk_pixbuf_new_from_file( PKGDATADIR "/Battery_04.png", NULL );
- applet->juice[i++] = gdk_pixbuf_new_from_file( PKGDATADIR "/Battery_05.png", NULL );
- applet->enclosing = gdk_pixbuf_new_from_file( PKGDATADIR "/Battery.png", NULL );
- applet->plug = gdk_pixbuf_new_from_file( PKGDATADIR "/Battery_Plug.png", NULL );
-
- applet->indicator = gdk_pixbuf_new(GDK_COLORSPACE_RGB, TRUE, 8,
- gdk_pixbuf_get_width( applet->enclosing ),
- gdk_pixbuf_get_height( applet->enclosing ) );
-
- gtk_widget_set_size_request( GTK_WIDGET(applet->image),
- gdk_pixbuf_get_width( applet->indicator ),
- gdk_pixbuf_get_height( applet->indicator ) );
-
t = time( NULL );
local_time = localtime(&t);
#ifndef DEBUG_THIS_FILE
@@ -143,7 +104,7 @@
#else
applet->timeout_id = g_timeout_add( 10 * 1000, (GSourceFunc) timeout, applet);
#endif
- moko_panel_applet_set_widget( MOKO_PANEL_APPLET(mokoapplet), GTK_WIDGET(applet->image) );
+ moko_panel_applet_set_icon( mokoapplet, PKGDATADIR "/Battery_00.png" );
gtk_widget_show_all( GTK_WIDGET(mokoapplet) );
return GTK_WIDGET(mokoapplet);
-};
+}
More information about the commitlog
mailing list