Back to index

gcompris  8.2.2
awele.h
Go to the documentation of this file.
00001 /*
00002  * gcompris - awele.h Copyright (C) 2005 Frederic Mazzarol This program is
00003  * free software; you can redistribute it and/or modify it under the terms 
00004  * of the GNU General Public License as published by the Free Software
00005  * Foundation; either version 2 of the License, or (at your option) any
00006  * later version.  This program is distributed in the hope that it will
00007  * be useful, but WITHOUT ANY WARRANTY; without even the implied warranty
00008  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00009  * General Public License for more details.  You should have received a
00010  * copy of the GNU General Public License along with this program; if not, 
00011  * write to the Free Software Foundation, Inc., 59 Temple Place, Suite
00012  * 330, Boston, MA 02111-1307 USA 
00013  */
00014 
00015 
00016 #define BOUTON "awele/bouton1.png" //Chemin relatif vers fichiers boutons
00017 #define BOUTON_NOTIFY "awele/bouton1_notify.png" //Chemin relatif vers fichiers boutons cliqués
00018 #define BOUTON_CLIC "awele/bouton1_clic.png"     //Chemin relatif vers fichiers boutons cliqués
00019 #define BEAN "awele/graine1.png"   //Chemin relatif vers fichiers graines
00020 
00021 #define Y_BOUTONS 412              //Abcisse des boutons
00022 
00023 #define WIDTH 800    // Largeur Fenetre
00024 #define HEIGHT 600   // Hauteur Fenetre
00025 
00028 typedef struct {
00029        GnomeCanvasItem *beanPixbuf;
00030        char hole;
00031 }BEANHOLE_LINK;
00032 
00033 
00034 typedef struct {
00035     GnomeCanvasItem *msg;   //Item message pour dialogue avec utilisateur   
00036     GnomeCanvasItem *nbBeansHole[12];     //Tableau d'item affichant le nbre de graine par trou.
00037     BEANHOLE_LINK *ptBeansHoleLink;       //pointeur sur structures stockant les item graines et la case dans laquelle elles se trouvent.
00038     GnomeCanvasItem *button[6];    //Item des boutons (affichés avec pixbufButton) 
00039     GdkPixbuf *pixbufButtonNotify[6];     //pixbux des boutons notifiés
00040     GdkPixbuf *pixbufButton[6];    //pixbuf des boutons(selection de la case a jouer)
00041     GdkPixbuf *pixbufButtonClicked[6];    //pixbuf des boutons cliqués
00042     GnomeCanvasItem *Captures[2];  //Tableau d'item affichage nbre graine capturées.
00043     GdkPixbuf *pixbufBeans[4];     //pixbufs des graines
00044 } GRAPHICS_ELT;
00045 
00046 typedef struct {
00047     short int numeroCase;
00048     GRAPHICS_ELT *graphsElt;
00049 } CALLBACK_ARGS;
00050 
00051 /* 
00052 *      Fonctions de traitement des events, signaux et rappels
00053 */
00054 static gint buttonClick (GtkWidget *item, GdkEvent *event, gpointer data);
00055 
00059 static BEANHOLE_LINK * updateNbBeans (int alpha);
00060 static void updateCapturedBeans (void);
00061 static void initBoardGraphics (GRAPHICS_ELT *graphsElt);