Class: GrilleJouableUI

Inherits:
GrilleUI
  • Object
show all
Defined in:
lib/Hashiparmentier/UI/GrilleJouableUI.rb

Overview

Auteur

Brabant Mano

Version

0.1

Date

09/04/2020

Cette classe représente une GrilleUI dans laquelle on peut jouer

Pour l’utiliser créez en une et ajoutez la avec “add” ou “pack_start” etc, à votre container

Voir GrilleUI

Instance Attribute Summary

Attributes inherited from GrilleUI

#grille

Instance Method Summary collapse

Methods inherited from GrilleUI

#getCase, #on_draw, #recommencer, #sauvegarder, #sortLimite?

Constructor Details

#initialize(grille, taille = 40) ⇒ GrilleJouableUI

Returns a new instance of GrilleJouableUI.



17
18
19
20
21
22
23
24
25
26
27
# File 'lib/Hashiparmentier/UI/GrilleJouableUI.rb', line 17

def initialize(grille, taille = 40)

  super(grille, taille)

  self.signal_connect "button-press-event" do |widget, event| #Connexion à l'event "clic"
    self.clickOn(widget, event)
  end

  self.add_events([:button_press_mask])

end

Instance Method Details

#clickOn(widget, event) ⇒ Object

Cette méthode permet de gérer les clics sur la grille Elle appelle la fonction clickOn de la case sur laquelle on a cliqué



33
34
35
36
37
38
39
40
41
42
43
44
# File 'lib/Hashiparmentier/UI/GrilleJouableUI.rb', line 33

def clickOn(widget, event)

y = (event.x/@taille).to_i
x = (event.y/@taille).to_i

if(!sortLimite?(x, y))
  getCase(x, y).clickOn()
end

self.queue_draw()

end