2010-07-10 3 views

Répondre

0

Malheureusement, GTK + ne contient aucun widget qui affiche une pile de cartes, vous devez donc en écrire un vous-même. Vous devriez utiliser GtkDrawingArea (de préférence en le sous-classant), et dans le gestionnaire pour le signal expose_event faites vos trucs de dessin. Pour dessiner vous pouvez utiliser soit GDK simple qui est plus basique, soit utiliser Cairo, qui est une bibliothèque de dessin plus flexible (nb.Le Caire est utilisé par GTK + de toute façon, donc ce n'est pas une dépendance additionnelle.Si vous en voulez plus, vous pouvez même utiliser OpenGL alors vous devez utiliser gtkGlExt)

GTK Tutorial a un chapitre consacré à la création propres widgets

1

vous devriez vérifier qu'as être déjà fait dans GnomeGames:..

Get the code et de voir comment ils l'ont fait. Il semble qu'ils rendent chaque carte: Par exemple, dans le code source Aisleriot, dans game.h, vous avez la définition d'une structure ArSlot qui stocke toutes les cartes d'un slot. Là, vous pouvez voir qu'ils définissent l'union d'expansion qui définit simplement le décalage entre les cartes. Donc, si vous souhaitez créer un tas de cartes, vous pouvez en dessiner chacune, ou si vous considérez que c'est trop lent, il suffit de tirer quelques cartes avec un décalage aléatoire d'un ou deux pixels, puis de dessiner le dernière carte en haut: avec cet algorithme, votre tas de cartes ressemble à un tas, et il est rapide à afficher à l'écran.