Bouton.cpp 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. #include "Bouton.h"
  2. Bouton::Bouton(SDL_Surface *objetImg, SDL_Surface *screen, int const x, int const y)
  3. :m_x(x),m_y(y),m_selectImg(0)
  4. {
  5. m_objetImg = objetImg;
  6. m_screen = screen;
  7. m_blitImg = m_objetImg;
  8. }///Constructeur
  9. Bouton::~Bouton()
  10. {
  11. SDL_FreeSurface(m_objetImg);
  12. if (m_selectImg != 0)
  13. SDL_FreeSurface(m_selectImg);
  14. }
  15. void Bouton::attribuerImg(SDL_Surface *selectImg)
  16. {
  17. m_selectImg = selectImg;
  18. }///attribuerImg
  19. bool Bouton::calculer(int const xSouris, int const ySouris)
  20. {
  21. if (m_selectImg != 0)
  22. {/**if**/
  23. if (m_x < xSouris && xSouris < m_x+m_objetImg->w)
  24. {///if
  25. if (m_y < ySouris && ySouris < m_y+m_objetImg->h)
  26. {//if
  27. m_blitImg = m_selectImg;
  28. return true;//Souris dessus !
  29. }//if
  30. else
  31. {//else
  32. m_blitImg = m_objetImg;
  33. return false;//Rien
  34. }//else
  35. }///if
  36. else
  37. {//else
  38. m_blitImg = m_objetImg;
  39. return false;//Rien
  40. }//else
  41. }/**if**/
  42. return false;//Il y a pas de seconde image patate !
  43. }///calculer
  44. void Bouton::afficher()
  45. {
  46. // [1] Attribution des positions
  47. SDL_Rect position;
  48. position.x=m_x;
  49. position.y=m_y;
  50. // [2] Collage
  51. SDL_BlitSurface(m_blitImg, 0, m_screen, &position);
  52. }///afficher
  53. bool Bouton::estClique(int const xSouris, int const ySouris)
  54. {
  55. if (m_x < xSouris && xSouris < m_x+m_objetImg->w)
  56. if (m_y < ySouris && ySouris < m_y+m_objetImg->h)
  57. return true;
  58. return false;
  59. }///estClique