gcompris r3266 - branches/gcomprixogoo/src/gcompris
- From: bcoudoin svn gnome org
- To: svn-commits-list gnome org
- Subject: gcompris r3266 - branches/gcomprixogoo/src/gcompris
- Date: Fri, 22 Feb 2008 23:46:12 +0000 (GMT)
Author: bcoudoin
Date: Fri Feb 22 23:46:12 2008
New Revision: 3266
URL: http://svn.gnome.org/viewvc/gcompris?rev=3266&view=rev
Log:
added a timeout on the bar is up before it goes down automatically
Modified:
branches/gcomprixogoo/src/gcompris/bar.c
Modified: branches/gcomprixogoo/src/gcompris/bar.c
==============================================================================
--- branches/gcomprixogoo/src/gcompris/bar.c (original)
+++ branches/gcomprixogoo/src/gcompris/bar.c Fri Feb 22 23:46:12 2008
@@ -48,7 +48,7 @@
gchar *data);
static void bar_reset_sound_id (void);
static void setup_item_signals (GooCanvasItem *item, gchar* name);
-static void _bar_down();
+static gboolean _bar_down(void *ignore);
static void _bar_up();
static gint current_level = -1;
@@ -65,6 +65,7 @@
static GooCanvasItem *rootitem = NULL;
static gint sound_play_id = 0;
+static gint bar_down_id = 0;
static void confirm_quit(gboolean answer);
@@ -237,7 +238,7 @@
"visibility", GOO_CANVAS_ITEM_INVISIBLE,
NULL);
- _bar_down();
+ _bar_down(NULL);
}
@@ -385,18 +386,21 @@
}
-static void
-_bar_down()
+static gboolean
+_bar_down(void *ignore)
{
- goo_canvas_item_animate(rootitem,
- 0,
- BOARDHEIGHT - 20,
- 1,
- 0,
- TRUE,
- 1000,
- 80,
- GOO_CANVAS_ANIMATE_FREEZE);
+ bar_down_id = 0;
+ goo_canvas_item_animate(rootitem,
+ 0,
+ BOARDHEIGHT - 20,
+ 1,
+ 0,
+ TRUE,
+ 1000,
+ 80,
+ GOO_CANVAS_ANIMATE_FREEZE);
+
+ return(FALSE);
}
static void
@@ -522,6 +526,12 @@
bar_reset_sound_id();
sound_play_id = g_timeout_add (1000, (GtkFunction) bar_play_sound, data);
_bar_up();
+
+ if(bar_down_id)
+ g_source_remove (bar_down_id);
+
+ bar_down_id=0;
+
return FALSE;
}
@@ -532,7 +542,10 @@
char *data)
{
bar_reset_sound_id();
- _bar_down();
+
+ if(!bar_down_id)
+ bar_down_id = g_timeout_add (5000, (GtkFunction) _bar_down, NULL);
+
return FALSE;
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]