aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drv_generic_text.c17
-rw-r--r--widget_icon.c13
2 files changed, 16 insertions, 14 deletions
diff --git a/drv_generic_text.c b/drv_generic_text.c
index 8c9fe05..d05f370 100644
--- a/drv_generic_text.c
+++ b/drv_generic_text.c
@@ -1,4 +1,4 @@
-/* $Id: drv_generic_text.c,v 1.8 2004/01/30 20:57:56 reinelt Exp $
+/* $Id: drv_generic_text.c,v 1.9 2004/02/07 13:45:23 reinelt Exp $
*
* generic driver helper for text-based displays
*
@@ -23,6 +23,9 @@
*
*
* $Log: drv_generic_text.c,v $
+ * Revision 1.9 2004/02/07 13:45:23 reinelt
+ * icon visibility patch #2 from Xavier
+ *
* Revision 1.8 2004/01/30 20:57:56 reinelt
* HD44780 patch from Martin Hejl
* dmalloc integrated
@@ -241,6 +244,7 @@ int drv_generic_text_icon_draw (WIDGET *W)
static int icon_counter=0;
WIDGET_ICON *Icon = W->data;
int row, col;
+ char ascii;
row = W->row;
col = W->col;
@@ -267,12 +271,15 @@ int drv_generic_text_icon_draw (WIDGET *W)
drv_generic_text_real_defchar(Icon->ascii, Icon->bitmap+YRES*Icon->curmap);
}
+ // use blank if invisible
+ ascii=Icon->visible?Icon->ascii:' ';
+
// transfer icon into layout buffer
- LayoutFB[row*LCOLS+col]=Icon->ascii;
-
+ LayoutFB[row*LCOLS+col]=ascii;
+
// maybe send icon to the display
- if (DisplayFB[row*DCOLS+col]!=Icon->ascii) {
- DisplayFB[row*DCOLS+col]=Icon->ascii;
+ if (DisplayFB[row*DCOLS+col]!=ascii) {
+ DisplayFB[row*DCOLS+col]=ascii;
drv_generic_text_real_goto (row, col);
drv_generic_text_real_write (DisplayFB+row*DCOLS+col, 1);
}
diff --git a/widget_icon.c b/widget_icon.c
index 5420f14..3c631d9 100644
--- a/widget_icon.c
+++ b/widget_icon.c
@@ -1,4 +1,4 @@
-/* $Id: widget_icon.c,v 1.5 2004/02/04 19:11:44 reinelt Exp $
+/* $Id: widget_icon.c,v 1.6 2004/02/07 13:45:23 reinelt Exp $
*
* icon widget handling
*
@@ -21,6 +21,9 @@
*
*
* $Log: widget_icon.c,v $
+ * Revision 1.6 2004/02/07 13:45:23 reinelt
+ * icon visibility patch #2 from Xavier
+ *
* Revision 1.5 2004/02/04 19:11:44 reinelt
* icon visibility patch from Xavier
*
@@ -128,14 +131,10 @@ void widget_icon_update (void *Self)
DelResult(&result);
}
- if (Icon->visible) {
// rotate icon bitmap
Icon->curmap++;
if (Icon->curmap >= Icon->maxmap)
Icon->curmap=0;
- } else {
- Icon->curmap=0; // FIXME : put an emply map here !
- }
// finally, draw it!
if (W->class->draw)
@@ -174,10 +173,6 @@ int widget_icon_init (WIDGET *Self)
error ("Icon %s has no speed, using '100'", Self->name);
Icon->speed_expr="100";
}
- if (Icon->visible_expr==NULL || *Icon->visible_expr=='\0') {
- error ("Icon %s has no visible atribute, using '1'", Self->name);
- Icon->visible_expr="1";
- }
// read bitmap
widget_icon_read_bitmap (section, Icon);