hashi-ruby 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (368) hide show
  1. checksums.yaml +7 -0
  2. data/bin/assets/FlatColor/gtk-3.20/assets/blank.png +0 -0
  3. data/bin/assets/FlatColor/gtk-3.20/assets/check-insensitive.png +0 -0
  4. data/bin/assets/FlatColor/gtk-3.20/assets/check-mixed-insensitive.png +0 -0
  5. data/bin/assets/FlatColor/gtk-3.20/assets/check-mixed.png +0 -0
  6. data/bin/assets/FlatColor/gtk-3.20/assets/check.png +0 -0
  7. data/bin/assets/FlatColor/gtk-3.20/assets/grid-selection-blank.png +0 -0
  8. data/bin/assets/FlatColor/gtk-3.20/assets/grid-selection.png +0 -0
  9. data/bin/assets/FlatColor/gtk-3.20/assets/menuitem-checkbox-checked-hover.png +0 -0
  10. data/bin/assets/FlatColor/gtk-3.20/assets/menuitem-checkbox-checked-insensitive.png +0 -0
  11. data/bin/assets/FlatColor/gtk-3.20/assets/menuitem-checkbox-checked.png +0 -0
  12. data/bin/assets/FlatColor/gtk-3.20/assets/menuitem-checkbox-mixed-hover.png +0 -0
  13. data/bin/assets/FlatColor/gtk-3.20/assets/menuitem-checkbox-mixed-insensitive.png +0 -0
  14. data/bin/assets/FlatColor/gtk-3.20/assets/menuitem-checkbox-mixed.png +0 -0
  15. data/bin/assets/FlatColor/gtk-3.20/assets/menuitem-radio-checked-hover.png +0 -0
  16. data/bin/assets/FlatColor/gtk-3.20/assets/menuitem-radio-checked-insensitive.png +0 -0
  17. data/bin/assets/FlatColor/gtk-3.20/assets/menuitem-radio-checked.png +0 -0
  18. data/bin/assets/FlatColor/gtk-3.20/assets/pane-separator-grip-vertical.png +0 -0
  19. data/bin/assets/FlatColor/gtk-3.20/assets/pane-separator-grip.png +0 -0
  20. data/bin/assets/FlatColor/gtk-3.20/assets/radio-checked.png +0 -0
  21. data/bin/assets/FlatColor/gtk-3.20/assets/radio-insensitive.png +0 -0
  22. data/bin/assets/FlatColor/gtk-3.20/assets/radio-unchecked.png +0 -0
  23. data/bin/assets/FlatColor/gtk-3.20/assets/radio.png +0 -0
  24. data/bin/assets/FlatColor/gtk-3.20/assets/slider-dark.png +0 -0
  25. data/bin/assets/FlatColor/gtk-3.20/assets/slider-dark@2.png +0 -0
  26. data/bin/assets/FlatColor/gtk-3.20/assets/slider-horz-scale-has-marks-above-dark.png +0 -0
  27. data/bin/assets/FlatColor/gtk-3.20/assets/slider-horz-scale-has-marks-above-dark@2.png +0 -0
  28. data/bin/assets/FlatColor/gtk-3.20/assets/slider-horz-scale-has-marks-above-insensitive-dark.png +0 -0
  29. data/bin/assets/FlatColor/gtk-3.20/assets/slider-horz-scale-has-marks-above-insensitive-dark@2.png +0 -0
  30. data/bin/assets/FlatColor/gtk-3.20/assets/slider-horz-scale-has-marks-above-insensitive.png +0 -0
  31. data/bin/assets/FlatColor/gtk-3.20/assets/slider-horz-scale-has-marks-above-insensitive@2.png +0 -0
  32. data/bin/assets/FlatColor/gtk-3.20/assets/slider-horz-scale-has-marks-above.png +0 -0
  33. data/bin/assets/FlatColor/gtk-3.20/assets/slider-horz-scale-has-marks-above@2.png +0 -0
  34. data/bin/assets/FlatColor/gtk-3.20/assets/slider-horz-scale-has-marks-below-dark.png +0 -0
  35. data/bin/assets/FlatColor/gtk-3.20/assets/slider-horz-scale-has-marks-below-dark@2.png +0 -0
  36. data/bin/assets/FlatColor/gtk-3.20/assets/slider-horz-scale-has-marks-below-insensitive-dark.png +0 -0
  37. data/bin/assets/FlatColor/gtk-3.20/assets/slider-horz-scale-has-marks-below-insensitive-dark@2.png +0 -0
  38. data/bin/assets/FlatColor/gtk-3.20/assets/slider-horz-scale-has-marks-below-insensitive.png +0 -0
  39. data/bin/assets/FlatColor/gtk-3.20/assets/slider-horz-scale-has-marks-below-insensitive@2.png +0 -0
  40. data/bin/assets/FlatColor/gtk-3.20/assets/slider-horz-scale-has-marks-below.png +0 -0
  41. data/bin/assets/FlatColor/gtk-3.20/assets/slider-horz-scale-has-marks-below@2.png +0 -0
  42. data/bin/assets/FlatColor/gtk-3.20/assets/slider-insensitive-dark.png +0 -0
  43. data/bin/assets/FlatColor/gtk-3.20/assets/slider-insensitive-dark@2.png +0 -0
  44. data/bin/assets/FlatColor/gtk-3.20/assets/slider-insensitive.png +0 -0
  45. data/bin/assets/FlatColor/gtk-3.20/assets/slider-insensitive@2.png +0 -0
  46. data/bin/assets/FlatColor/gtk-3.20/assets/slider-vert-scale-has-marks-above-dark.png +0 -0
  47. data/bin/assets/FlatColor/gtk-3.20/assets/slider-vert-scale-has-marks-above-dark@2.png +0 -0
  48. data/bin/assets/FlatColor/gtk-3.20/assets/slider-vert-scale-has-marks-above-insensitive-dark.png +0 -0
  49. data/bin/assets/FlatColor/gtk-3.20/assets/slider-vert-scale-has-marks-above-insensitive-dark@2.png +0 -0
  50. data/bin/assets/FlatColor/gtk-3.20/assets/slider-vert-scale-has-marks-above-insensitive.png +0 -0
  51. data/bin/assets/FlatColor/gtk-3.20/assets/slider-vert-scale-has-marks-above-insensitive@2.png +0 -0
  52. data/bin/assets/FlatColor/gtk-3.20/assets/slider-vert-scale-has-marks-above.png +0 -0
  53. data/bin/assets/FlatColor/gtk-3.20/assets/slider-vert-scale-has-marks-above@2.png +0 -0
  54. data/bin/assets/FlatColor/gtk-3.20/assets/slider-vert-scale-has-marks-below-dark.png +0 -0
  55. data/bin/assets/FlatColor/gtk-3.20/assets/slider-vert-scale-has-marks-below-dark@2.png +0 -0
  56. data/bin/assets/FlatColor/gtk-3.20/assets/slider-vert-scale-has-marks-below-insensitive-dark.png +0 -0
  57. data/bin/assets/FlatColor/gtk-3.20/assets/slider-vert-scale-has-marks-below-insensitive-dark@2.png +0 -0
  58. data/bin/assets/FlatColor/gtk-3.20/assets/slider-vert-scale-has-marks-below-insensitive.png +0 -0
  59. data/bin/assets/FlatColor/gtk-3.20/assets/slider-vert-scale-has-marks-below-insensitive@2.png +0 -0
  60. data/bin/assets/FlatColor/gtk-3.20/assets/slider-vert-scale-has-marks-below.png +0 -0
  61. data/bin/assets/FlatColor/gtk-3.20/assets/slider-vert-scale-has-marks-below@2.png +0 -0
  62. data/bin/assets/FlatColor/gtk-3.20/assets/slider.png +0 -0
  63. data/bin/assets/FlatColor/gtk-3.20/assets/slider@2.png +0 -0
  64. data/bin/assets/FlatColor/gtk-3.20/gnome-applications.css +429 -0
  65. data/bin/assets/FlatColor/gtk-3.20/gtk-widgets.css +786 -0
  66. data/bin/assets/FlatColor/gtk-3.20/gtk.css +113 -0
  67. data/bin/assets/FlatColor/gtk-3.20/gtk.css.base +108 -0
  68. data/bin/assets/FlatColor/gtk-3.20/settings.ini +7 -0
  69. data/bin/assets/FlatColor/gtk-3.20/unity.css +68 -0
  70. data/bin/assets/FlatColor/gtk-3.20/widgets/button.css +58 -0
  71. data/bin/assets/FlatColor/gtk-3.20/widgets/calendar.css +32 -0
  72. data/bin/assets/FlatColor/gtk-3.20/widgets/cell-row.css +25 -0
  73. data/bin/assets/FlatColor/gtk-3.20/widgets/check-radio.css +164 -0
  74. data/bin/assets/FlatColor/gtk-3.20/widgets/chrome.css +16 -0
  75. data/bin/assets/FlatColor/gtk-3.20/widgets/color-chooser.css +114 -0
  76. data/bin/assets/FlatColor/gtk-3.20/widgets/column-header.css +52 -0
  77. data/bin/assets/FlatColor/gtk-3.20/widgets/combobox.css +26 -0
  78. data/bin/assets/FlatColor/gtk-3.20/widgets/csd.css +125 -0
  79. data/bin/assets/FlatColor/gtk-3.20/widgets/entry.css +40 -0
  80. data/bin/assets/FlatColor/gtk-3.20/widgets/header-bar.css +27 -0
  81. data/bin/assets/FlatColor/gtk-3.20/widgets/infobar.css +90 -0
  82. data/bin/assets/FlatColor/gtk-3.20/widgets/linked-buttons.css +524 -0
  83. data/bin/assets/FlatColor/gtk-3.20/widgets/menu.css +127 -0
  84. data/bin/assets/FlatColor/gtk-3.20/widgets/notebook.css +200 -0
  85. data/bin/assets/FlatColor/gtk-3.20/widgets/osd.css +203 -0
  86. data/bin/assets/FlatColor/gtk-3.20/widgets/progress-scale.css +365 -0
  87. data/bin/assets/FlatColor/gtk-3.20/widgets/scrollbar.css +116 -0
  88. data/bin/assets/FlatColor/gtk-3.20/widgets/selection-mode.css +109 -0
  89. data/bin/assets/FlatColor/gtk-3.20/widgets/separator.css +24 -0
  90. data/bin/assets/FlatColor/gtk-3.20/widgets/sidebar.css +43 -0
  91. data/bin/assets/FlatColor/gtk-3.20/widgets/spinbutton.css +102 -0
  92. data/bin/assets/FlatColor/gtk-3.20/widgets/spinner.css +120 -0
  93. data/bin/assets/FlatColor/gtk-3.20/widgets/switch.css +63 -0
  94. data/bin/assets/FlatColor/gtk-3.20/widgets/toolbar.css +39 -0
  95. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-checked-dark.png +0 -0
  96. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-checked-dark@2.png +0 -0
  97. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-checked-insensitive-dark.png +0 -0
  98. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-checked-insensitive-dark@2.png +0 -0
  99. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-checked-insensitive-selected.png +0 -0
  100. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-checked-insensitive-selected@2.png +0 -0
  101. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-checked-insensitive.png +0 -0
  102. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-checked-insensitive@2.png +0 -0
  103. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-checked-selected.png +0 -0
  104. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-checked-selected@2.png +0 -0
  105. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-checked-selectionmode-dark.png +0 -0
  106. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-checked-selectionmode-dark@2.png +0 -0
  107. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-checked-selectionmode.png +0 -0
  108. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-checked-selectionmode@2.png +0 -0
  109. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-checked.png +0 -0
  110. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-checked@2.png +0 -0
  111. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-mixed-dark.png +0 -0
  112. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-mixed-dark@2.png +0 -0
  113. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-mixed-insensitive-dark.png +0 -0
  114. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-mixed-insensitive-dark@2.png +0 -0
  115. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-mixed-insensitive-selected.png +0 -0
  116. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-mixed-insensitive-selected@2.png +0 -0
  117. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-mixed-insensitive.png +0 -0
  118. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-mixed-insensitive@2.png +0 -0
  119. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-mixed-selected.png +0 -0
  120. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-mixed-selected@2.png +0 -0
  121. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-mixed.png +0 -0
  122. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-mixed@2.png +0 -0
  123. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-selectionmode-dark.png +0 -0
  124. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-selectionmode-dark@2.png +0 -0
  125. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-selectionmode.png +0 -0
  126. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-selectionmode@2.png +0 -0
  127. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-unchecked-dark.png +0 -0
  128. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-unchecked-dark@2.png +0 -0
  129. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-unchecked-insensitive-dark.png +0 -0
  130. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-unchecked-insensitive-dark@2.png +0 -0
  131. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-unchecked-insensitive-selected.png +0 -0
  132. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-unchecked-insensitive-selected@2.png +0 -0
  133. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-unchecked-insensitive.png +0 -0
  134. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-unchecked-insensitive@2.png +0 -0
  135. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-unchecked-selected.png +0 -0
  136. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-unchecked-selected@2.png +0 -0
  137. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-unchecked.png +0 -0
  138. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-unchecked@2.png +0 -0
  139. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-checked-dark.png +0 -0
  140. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-checked-dark@2.png +0 -0
  141. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-checked-insensitive-dark.png +0 -0
  142. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-checked-insensitive-dark@2.png +0 -0
  143. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-checked-insensitive-selected.png +0 -0
  144. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-checked-insensitive-selected@2.png +0 -0
  145. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-checked-insensitive.png +0 -0
  146. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-checked-insensitive@2.png +0 -0
  147. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-checked-selected.png +0 -0
  148. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-checked-selected@2.png +0 -0
  149. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-checked.png +0 -0
  150. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-checked@2.png +0 -0
  151. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-mixed-dark.png +0 -0
  152. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-mixed-dark@2.png +0 -0
  153. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-mixed-insensitive-dark.png +0 -0
  154. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-mixed-insensitive-dark@2.png +0 -0
  155. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-mixed-insensitive-selected.png +0 -0
  156. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-mixed-insensitive-selected@2.png +0 -0
  157. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-mixed-insensitive.png +0 -0
  158. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-mixed-insensitive@2.png +0 -0
  159. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-mixed-selected.png +0 -0
  160. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-mixed-selected@2.png +0 -0
  161. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-mixed.png +0 -0
  162. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-mixed@2.png +0 -0
  163. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-unchecked-dark.png +0 -0
  164. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-unchecked-dark@2.png +0 -0
  165. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-unchecked-insensitive-dark.png +0 -0
  166. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-unchecked-insensitive-dark@2.png +0 -0
  167. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-unchecked-insensitive-selected.png +0 -0
  168. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-unchecked-insensitive-selected@2.png +0 -0
  169. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-unchecked-insensitive.png +0 -0
  170. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-unchecked-insensitive@2.png +0 -0
  171. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-unchecked-selected.png +0 -0
  172. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-unchecked-selected@2.png +0 -0
  173. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-unchecked.png +0 -0
  174. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-unchecked@2.png +0 -0
  175. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-active-dark.png +0 -0
  176. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-active-dark@2.png +0 -0
  177. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-active-header-dark.png +0 -0
  178. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-active-header-dark@2.png +0 -0
  179. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-active-header.png +0 -0
  180. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-active-header@2.png +0 -0
  181. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-active-hover-dark.png +0 -0
  182. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-active-hover-dark@2.png +0 -0
  183. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-active-hover-header-dark.png +0 -0
  184. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-active-hover-header-dark@2.png +0 -0
  185. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-active-hover-header.png +0 -0
  186. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-active-hover-header@2.png +0 -0
  187. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-active-hover-selected.png +0 -0
  188. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-active-hover-selected@2.png +0 -0
  189. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-active-hover.png +0 -0
  190. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-active-hover@2.png +0 -0
  191. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-active-insensitive-dark.png +0 -0
  192. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-active-insensitive-dark@2.png +0 -0
  193. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-active-insensitive-header-dark.png +0 -0
  194. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-active-insensitive-header-dark@2.png +0 -0
  195. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-active-insensitive-header.png +0 -0
  196. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-active-insensitive-header@2.png +0 -0
  197. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-active-insensitive-selected.png +0 -0
  198. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-active-insensitive-selected@2.png +0 -0
  199. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-active-insensitive.png +0 -0
  200. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-active-insensitive@2.png +0 -0
  201. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-active-selected.png +0 -0
  202. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-active-selected@2.png +0 -0
  203. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-active.png +0 -0
  204. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-active@2.png +0 -0
  205. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-dark.png +0 -0
  206. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-dark@2.png +0 -0
  207. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-header-dark.png +0 -0
  208. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-header-dark@2.png +0 -0
  209. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-header.png +0 -0
  210. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-header@2.png +0 -0
  211. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-hover-dark.png +0 -0
  212. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-hover-dark@2.png +0 -0
  213. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-hover-header-dark.png +0 -0
  214. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-hover-header-dark@2.png +0 -0
  215. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-hover-header.png +0 -0
  216. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-hover-header@2.png +0 -0
  217. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-hover-selected.png +0 -0
  218. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-hover-selected@2.png +0 -0
  219. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-hover.png +0 -0
  220. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-hover@2.png +0 -0
  221. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-insensitive-dark.png +0 -0
  222. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-insensitive-dark@2.png +0 -0
  223. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-insensitive-header-dark.png +0 -0
  224. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-insensitive-header-dark@2.png +0 -0
  225. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-insensitive-header.png +0 -0
  226. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-insensitive-header@2.png +0 -0
  227. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-insensitive-selected.png +0 -0
  228. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-insensitive-selected@2.png +0 -0
  229. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-insensitive.png +0 -0
  230. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-insensitive@2.png +0 -0
  231. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-selected.png +0 -0
  232. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-selected@2.png +0 -0
  233. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch.png +0 -0
  234. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch@2.png +0 -0
  235. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-close-active-dark.png +0 -0
  236. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-close-active-dark@2.png +0 -0
  237. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-close-active.png +0 -0
  238. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-close-active@2.png +0 -0
  239. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-close-backdrop-dark.png +0 -0
  240. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-close-backdrop-dark@2.png +0 -0
  241. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-close-backdrop.png +0 -0
  242. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-close-backdrop@2.png +0 -0
  243. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-close-dark.png +0 -0
  244. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-close-dark@2.png +0 -0
  245. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-close-hover-dark.png +0 -0
  246. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-close-hover-dark@2.png +0 -0
  247. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-close-hover.png +0 -0
  248. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-close-hover@2.png +0 -0
  249. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-close.png +0 -0
  250. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-close@2.png +0 -0
  251. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-maximize-active-dark.png +0 -0
  252. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-maximize-active-dark@2.png +0 -0
  253. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-maximize-active.png +0 -0
  254. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-maximize-active@2.png +0 -0
  255. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-maximize-backdrop-dark.png +0 -0
  256. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-maximize-backdrop-dark@2.png +0 -0
  257. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-maximize-backdrop.png +0 -0
  258. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-maximize-backdrop@2.png +0 -0
  259. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-maximize-dark.png +0 -0
  260. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-maximize-dark@2.png +0 -0
  261. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-maximize-hover-dark.png +0 -0
  262. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-maximize-hover-dark@2.png +0 -0
  263. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-maximize-hover.png +0 -0
  264. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-maximize-hover@2.png +0 -0
  265. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-maximize.png +0 -0
  266. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-maximize@2.png +0 -0
  267. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-minimize-active-dark.png +0 -0
  268. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-minimize-active-dark@2.png +0 -0
  269. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-minimize-active.png +0 -0
  270. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-minimize-active@2.png +0 -0
  271. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-minimize-backdrop-dark.png +0 -0
  272. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-minimize-backdrop-dark@2.png +0 -0
  273. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-minimize-backdrop.png +0 -0
  274. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-minimize-backdrop@2.png +0 -0
  275. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-minimize-dark.png +0 -0
  276. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-minimize-dark@2.png +0 -0
  277. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-minimize-hover-dark.png +0 -0
  278. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-minimize-hover-dark@2.png +0 -0
  279. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-minimize-hover.png +0 -0
  280. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-minimize-hover@2.png +0 -0
  281. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-minimize.png +0 -0
  282. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-minimize@2.png +0 -0
  283. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-restore-active-dark.png +0 -0
  284. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-restore-active-dark@2.png +0 -0
  285. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-restore-active.png +0 -0
  286. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-restore-active@2.png +0 -0
  287. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-restore-backdrop-dark.png +0 -0
  288. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-restore-backdrop-dark@2.png +0 -0
  289. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-restore-backdrop.png +0 -0
  290. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-restore-backdrop@2.png +0 -0
  291. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-restore-dark.png +0 -0
  292. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-restore-dark@2.png +0 -0
  293. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-restore-hover-dark.png +0 -0
  294. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-restore-hover-dark@2.png +0 -0
  295. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-restore-hover.png +0 -0
  296. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-restore-hover@2.png +0 -0
  297. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-restore.png +0 -0
  298. data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-restore@2.png +0 -0
  299. data/bin/assets/Matcha-dark-aliz/gtk-3.0/gtk-dark.css +10090 -0
  300. data/bin/assets/Matcha-dark-aliz/gtk-3.0/gtk.css +10100 -0
  301. data/bin/assets/Matcha-dark-aliz/gtk-3.0/thumbnail.png +0 -0
  302. data/bin/assets/Matcha-dark-aliz/index.theme +12 -0
  303. data/bin/assets/didacticiel/1.jpg +0 -0
  304. data/bin/assets/didacticiel/2.jpg +0 -0
  305. data/bin/assets/didacticiel/3.jpg +0 -0
  306. data/bin/assets/didacticiel/4.jpg +0 -0
  307. data/bin/assets/didacticiel/5.jpg +0 -0
  308. data/bin/assets/didacticiel/6.jpg +0 -0
  309. data/bin/assets/didacticiel/7.jpg +0 -0
  310. data/bin/assets/didacticiel/8.jpg +0 -0
  311. data/bin/assets/map.png +0 -0
  312. data/bin/db/Difficulte.rb +9 -0
  313. data/bin/db/GestionBase.rb +334 -0
  314. data/bin/db/GrilleDb.rb +15 -0
  315. data/bin/db/Joue.rb +10 -0
  316. data/bin/db/Joueur.rb +9 -0
  317. data/bin/db/Migration.rb +70 -0
  318. data/bin/db/Mode.rb +9 -0
  319. data/bin/db/PhrasesAventure.rb +4 -0
  320. data/bin/db/TestBase.rb +144 -0
  321. data/bin/db/base.sqlite +0 -0
  322. data/bin/hashi +5 -0
  323. data/bin/src/Action.rb +46 -0
  324. data/bin/src/Aides.rb +41 -0
  325. data/bin/src/Case.rb +410 -0
  326. data/bin/src/Grille.rb +914 -0
  327. data/bin/src/Grilles/grilles_site.txt +30 -0
  328. data/bin/src/Grilles/grilles_site_difficile.txt +90 -0
  329. data/bin/src/Grilles/grilles_site_facile.txt +90 -0
  330. data/bin/src/Grilles/grilles_site_moyen.txt +90 -0
  331. data/bin/src/Grilles/grilles_site_ser.txt +0 -0
  332. data/bin/src/Grilles/grilles_site_ser_difficile.txt +90 -0
  333. data/bin/src/Grilles/grilles_site_ser_facile.txt +90 -0
  334. data/bin/src/Grilles/grilles_site_ser_moyen.txt +90 -0
  335. data/bin/src/Hashi.rb +214 -0
  336. data/bin/src/Lien.rb +57 -0
  337. data/bin/src/Pile.rb +41 -0
  338. data/bin/src/Rakefile.rb +6 -0
  339. data/bin/src/SerGrille.rb +430 -0
  340. data/bin/src/Test.rb +24 -0
  341. data/bin/src/Test2.rb +135 -0
  342. data/bin/src/Utilitaire.rb +12 -0
  343. data/bin/src/testSerGrille.rb +21 -0
  344. data/bin/src/ui/AfficheurGrille.rb +385 -0
  345. data/bin/src/ui/AfficheurJeu.rb +209 -0
  346. data/bin/src/ui/AfficheurSelection.rb +38 -0
  347. data/bin/src/ui/Afrique.rb +38 -0
  348. data/bin/src/ui/AmeriqueNord.rb +38 -0
  349. data/bin/src/ui/AmeriqueSud.rb +38 -0
  350. data/bin/src/ui/Antarctique.rb +32 -0
  351. data/bin/src/ui/Asie.rb +38 -0
  352. data/bin/src/ui/Aventure.rb +132 -0
  353. data/bin/src/ui/Carte.rb +282 -0
  354. data/bin/src/ui/ChargementAventure.rb +61 -0
  355. data/bin/src/ui/Classement.rb +42 -0
  356. data/bin/src/ui/Connexion.rb +60 -0
  357. data/bin/src/ui/Didacticiel.rb +169 -0
  358. data/bin/src/ui/Etiquette.rb +24 -0
  359. data/bin/src/ui/Europe.rb +38 -0
  360. data/bin/src/ui/ListeClassement.rb +44 -0
  361. data/bin/src/ui/Menu.rb +74 -0
  362. data/bin/src/ui/Monde.rb +167 -0
  363. data/bin/src/ui/Oceanie.rb +38 -0
  364. data/bin/src/ui/SelecteurGrille.rb +58 -0
  365. data/bin/src/ui/SelectionDifficulte.rb +38 -0
  366. data/bin/src/ui/SelectionUtilisateur.rb +46 -0
  367. data/bin/src/ui/Timer.rb +29 -0
  368. metadata +479 -0
@@ -0,0 +1,38 @@
1
+ require "gtk3"
2
+ require_relative "Carte"
3
+ require_relative "Etiquette"
4
+
5
+ # Widget Gtk affichant l'amerique du sud
6
+ class AmeriqueSud < Carte
7
+
8
+ # @factZoom => Facteur de zoom
9
+ # @dX => Décalage de l'affichage en x
10
+ # @dY => Décalage de l'affichage en y
11
+
12
+ # Constructeur
13
+ #
14
+ # === Paramètres
15
+ #
16
+ # * +carte+ - Carte principale
17
+ def initialize(carte)
18
+ super(carte)
19
+ @dX = -1570
20
+ @dY = -2270
21
+ @factZoom = 1.2
22
+
23
+ @g = carte.grillesF
24
+
25
+ self.dessinerEtiquettes()
26
+ end
27
+
28
+ def dessinerEtiquettes()
29
+ ajouterEtiquette(Etiquette.new(1450, 2000, 90, 30, @carte.etoiles[0][7], @g[7]))
30
+ ajouterEtiquette(Etiquette.new(1400, 2100, 90, 30, @carte.etoiles[0][8], @g[8]))
31
+ ajouterEtiquette(Etiquette.new(1650, 2230, 90, 30, @carte.etoiles[0][9], @g[9]))
32
+ ajouterEtiquette(Etiquette.new(1500, 2380, 90, 30, @carte.etoiles[0][10], @g[10]))
33
+ ajouterEtiquette(Etiquette.new(1400, 2580, 90, 30, @carte.etoiles[0][11], @g[11]))
34
+ ajouterEtiquette(Etiquette.new(1450, 2250, 90, 30, @carte.etoiles[0][12], @g[12]))
35
+ ajouterEtiquette(Etiquette.new(1700, 2100, 90, 30, @carte.etoiles[0][13], @g[13]))
36
+ super()
37
+ end
38
+ end
@@ -0,0 +1,32 @@
1
+ require "gtk3"
2
+ require_relative "Carte"
3
+ require_relative "Etiquette"
4
+
5
+ # Widget Gtk affichant l'afrique
6
+ class Antarctique < Carte
7
+
8
+ # @factZoom => Facteur de zoom
9
+ # @dX => Décalage de l'affichage en x
10
+ # @dY => Décalage de l'affichage en y
11
+
12
+ # Constructeur
13
+ #
14
+ # === Paramètres
15
+ #
16
+ # * +carte+ - Carte principale
17
+ def initialize(carte)
18
+ super(carte)
19
+ @dX = -2450
20
+ @dY = -3250
21
+ @factZoom = 1.6
22
+
23
+ @g = carte.grillesD
24
+
25
+ self.dessinerEtiquettes()
26
+ end
27
+
28
+ def dessinerEtiquettes()
29
+ ajouterEtiquette(Etiquette.new(2450, 3250, 90, 30, @carte.etoiles[2][8], @g[8]))
30
+ super()
31
+ end
32
+ end
@@ -0,0 +1,38 @@
1
+ require "gtk3"
2
+ require_relative "Carte"
3
+ require_relative "Etiquette"
4
+
5
+ # Widget Gtk affichant l'asie
6
+ class Asie < Carte
7
+
8
+ # @factZoom => Facteur de zoom
9
+ # @dX => Décalage de l'affichage en x
10
+ # @dY => Décalage de l'affichage en y
11
+
12
+ # Constructeur
13
+ #
14
+ # === Paramètres
15
+ #
16
+ # * +carte+ - Carte principale
17
+ def initialize(carte)
18
+ super(carte)
19
+ @dX = -3450
20
+ @dY = -1700
21
+ @factZoom = 1.3
22
+
23
+ @g = carte.grillesM
24
+
25
+ self.dessinerEtiquettes()
26
+ end
27
+
28
+ def dessinerEtiquettes()
29
+ ajouterEtiquette(Etiquette.new(3700, 1600, 90, 30, @carte.etoiles[1][7], @g[7]))
30
+ ajouterEtiquette(Etiquette.new(3200, 1570, 90, 30, @carte.etoiles[1][8], @g[8]))
31
+ ajouterEtiquette(Etiquette.new(3500, 1700, 90, 30, @carte.etoiles[1][9], @g[9]))
32
+ ajouterEtiquette(Etiquette.new(3100, 1800, 90, 30, @carte.etoiles[1][10], @g[10]))
33
+ ajouterEtiquette(Etiquette.new(3340, 1860, 90, 30, @carte.etoiles[1][11], @g[11]))
34
+ ajouterEtiquette(Etiquette.new(3500, 1500, 90, 30, @carte.etoiles[1][12], @g[12]))
35
+ ajouterEtiquette(Etiquette.new(3500, 2000, 90, 30, @carte.etoiles[1][13], @g[13]))
36
+ super()
37
+ end
38
+ end
@@ -0,0 +1,132 @@
1
+ require "gtk3"
2
+
3
+ require_relative "Monde"
4
+ require_relative "Europe"
5
+ require_relative "Afrique"
6
+ require_relative "Asie"
7
+ require_relative "Oceanie"
8
+ require_relative "AmeriqueNord"
9
+ require_relative "AmeriqueSud"
10
+ require_relative "Antarctique"
11
+
12
+ # Widget Gtk permettant d'afficher l'aventure
13
+ class Aventure < Gtk::Overlay
14
+
15
+ attr_reader :grillesF, :grillesM, :grillesD
16
+
17
+ attr_accessor :nbEtoiles
18
+
19
+ attr_accessor :etoiles
20
+
21
+ # Constructeur
22
+ #
23
+ # === Paramètres
24
+ #
25
+ # * +fenetre+ - Fenetre principale
26
+ def initialize(fenetre)
27
+ super()
28
+ @stack = Gtk::Stack.new()
29
+ @stack.set_transition_type(Gtk::Stack::TransitionType::CROSSFADE)
30
+ @stack.set_transition_duration(500)
31
+ @fenetre = fenetre
32
+
33
+ @grillesF = GestionBase.recupGrilles(fenetre.joueur.id, 1, 3, 0, 14)
34
+ #@grillesF = @grillesF.map() { |x| YAML.load(x.grilleSolution) }
35
+ @grillesM = GestionBase.recupGrilles(fenetre.joueur.id, 2, 3, 0, 14)
36
+ #@grillesM = @grillesM.map() { |x| YAML.load(x.grilleSolution) }
37
+ @grillesD = GestionBase.recupGrilles(fenetre.joueur.id, 3, 3, 0, 15)
38
+ #@grillesD = @grillesD.map() { |x| YAML.load(x.grilleSolution) }
39
+
40
+ self.calculNbEtoiles()
41
+
42
+ @monde = Monde.new(self)
43
+ @europe = Europe.new(self)
44
+ @afrique = Afrique.new(self)
45
+ @asie = Asie.new(self)
46
+ @oceanie = Oceanie.new(self)
47
+ @ameriqueNord = AmeriqueNord.new(self)
48
+ @ameriqueSud = AmeriqueSud.new(self)
49
+ @antarctique = Antarctique.new(self)
50
+ @stack.add_named(@monde, "monde")
51
+ @stack.add_named(@europe, "europe")
52
+ @stack.add_named(@afrique, "afrique")
53
+ @stack.add_named(@asie, "asie")
54
+ @stack.add_named(@oceanie, "oceanie")
55
+ @stack.add_named(@ameriqueNord, "ameriqueNord")
56
+ @stack.add_named(@ameriqueSud, "ameriqueSud")
57
+ @stack.add_named(@antarctique, "antarctique")
58
+ @dernier = @stack.visible_child_name()
59
+
60
+ @stack.halign = :start
61
+ @stack.valign = :start
62
+ @stack.expand = true
63
+ self.add_overlay(@stack)
64
+ @bouton = Gtk::Button.new(label: "Retour")
65
+ @bouton.halign = :start
66
+ @bouton.valign = :end
67
+ @bouton.signal_connect("clicked") do
68
+ if @stack.visible_child == @monde
69
+ self.quitter()
70
+ else
71
+ self.retour()
72
+ end
73
+ end
74
+
75
+ self.add_overlay(@bouton)
76
+ @stack.show_all()
77
+ self.show_all()
78
+ end
79
+
80
+ def calculNbEtoiles()
81
+ @nbEtoiles = 0
82
+ @etoiles = []
83
+ [@grillesF, @grillesM, @grillesD].each() do |d|
84
+ ed = []
85
+ d.each() do |g|
86
+ e = GestionBase.recupScore(@fenetre.joueur.id, g) / (g.scoreMax/4)
87
+ e = e > 3 ? 3 : (e < 0 ? 0 : e)
88
+ ed.push(e)
89
+ @nbEtoiles += e
90
+ end
91
+ @etoiles.push(ed)
92
+ end
93
+ end
94
+
95
+ # Fonction appellé par le monde après le choix du continent
96
+ def choix(continent)
97
+ @stack.set_visible_child_name(continent)
98
+ end
99
+
100
+ # Lancement d'une grille
101
+ def lancer(g)
102
+ @dernier = @stack.visible_child_name()
103
+
104
+ @stack.add_named(AfficheurJeu.new(g, self, "aventure"), "grille")
105
+ self.show_all()
106
+ @stack.set_visible_child_name("grille")
107
+ end
108
+
109
+ # Fin d'une grille
110
+ def finJeu()
111
+ g = @stack.visible_child()
112
+ self.calculNbEtoiles()
113
+ @stack.set_visible_child(@dernier)
114
+ @stack.visible_child.refresh()
115
+ @stack.remove_child(g)
116
+ end
117
+
118
+ # Fonction appellé les continents pour revenir au monde
119
+ def retour()
120
+ @stack.set_visible_child(@monde)
121
+ @stack.visible_child.refresh()
122
+ end
123
+
124
+ # Retour au menu principal
125
+ def quitter()
126
+ @fenetre.finAventure()
127
+ end
128
+
129
+ def joueur()
130
+ @fenetre.joueur
131
+ end
132
+ end
@@ -0,0 +1,282 @@
1
+ require "gtk3"
2
+ require_relative "Etiquette"
3
+
4
+ # Widget Gtk ABSTRAIT permettant d'afficher la carte
5
+ class Carte < Gtk::DrawingArea
6
+
7
+ # Deux systèmes de positions sont utilisés dans le code:
8
+ #
9
+ # => Les positions "virtuelles" (vX, vY) qui correspondent aux coordonnées
10
+ # sur l'image
11
+ #
12
+ # => Les positions "réelles" (x, y) qui correspondent aux positions sur
13
+ # la fenêtre (en pixels) et qui changent en fonction de la résolution de l'écran
14
+ #
15
+ # Les méthodes getX, getY, getVX, getVY sont là pour passer entre ces deux systèmes
16
+
17
+ # @image => Carte du monde
18
+ # @ic => Contexte de dessin de la carte du monde
19
+ # @zoom => Zoom une fois affichée
20
+ # @factZoom => Facteur de zoom
21
+ # @dX => Décalage de l'affichage en x
22
+ # @dY => Décalage de l'affichage en y
23
+
24
+ # Constructeur
25
+ #
26
+ # === Paramètres
27
+ #
28
+ # * +carte+ - carte principale
29
+ def initialize(carte)
30
+ super()
31
+ @etiquettes = []
32
+ @carte = carte
33
+ @id = @carte.joueur.id
34
+ self.signal_connect("draw") { |widget, cr| draw(cr) }
35
+ self.signal_connect("button-press-event") { |widget, event| mouseClick(event); self.queue_draw(); }
36
+ self.events = :all_events_mask
37
+ @image = Cairo::ImageSurface.from_png("../assets/map.png")
38
+ @ic = Cairo::Context.new(@image)
39
+ end
40
+
41
+ def refresh()
42
+ @image = Cairo::ImageSurface.from_png("../assets/map.png")
43
+ @ic = Cairo::Context.new(@image)
44
+ self.dessinerEtiquettes()
45
+ self.queue_draw()
46
+ end
47
+
48
+ # Largeur écran en pixels
49
+ #
50
+ # === Retour
51
+ #
52
+ # Retourne le nombre de pixels en largeur affichés à l'écran
53
+ def width()
54
+ return self.allocation.width()
55
+ end
56
+
57
+ # Hauteur écran en pixels
58
+ #
59
+ # === Retour
60
+ #
61
+ # Retourne le nombre de pixels en hauteur affichés à l'écran
62
+ def height()
63
+ return self.allocation.height()
64
+ end
65
+
66
+ # Conversion x en vX
67
+ #
68
+ # === Paramètres
69
+ #
70
+ # * +x+ => Position réelle en x à convertir
71
+ #
72
+ # === Retour
73
+ #
74
+ # Retourne la position virtuelle en x correspondante
75
+ def getVX(x)
76
+ return -@dX+(x-width/2)/@zoom
77
+ end
78
+
79
+ # Conversion y en vY
80
+ #
81
+ # === Paramètres
82
+ #
83
+ # * +y+ => Position réelle en y à convertir
84
+ #
85
+ # === Retour
86
+ #
87
+ # Retourne la position virtuelle en y correspondante
88
+ def getVY(y)
89
+ #return y-@dY-height/2
90
+ return -@dY+(y-height/2)/@zoom
91
+ end
92
+
93
+ # Dessin de la carte
94
+ #
95
+ # === Paramètres
96
+ #
97
+ # * +cr+ => Contexte sur lequel dessiner
98
+ def draw(cr)
99
+ #ic.rectangle(0, 0, 1000, 1000)
100
+ #ic.fill()
101
+ #@zoom = @factZoom * width / height / 2
102
+ self.set_size_request(@carte.allocation.width, @carte.allocation.height)
103
+ if height*1.3 > width
104
+ @zoom = @factZoom * (width / 5000.0) * 2.5
105
+ else
106
+ @zoom = @factZoom * (height / 2000.0) * 1.5
107
+ end
108
+ cr.scale(@zoom, @zoom)
109
+ cr.set_source(@image, (@dX + width/2/@zoom), (@dY + height/2/@zoom))
110
+ cr.paint()
111
+ end
112
+
113
+ # Dessin d'un rectangle
114
+ #
115
+ # === Paramètres
116
+ #
117
+ # * +x+ - Position en x du rectangle
118
+ # * +y+ - Position en y du rectangle
119
+ # * +w+ - Largeur du rectangle
120
+ # * +h+ - Hauteur du rectangle
121
+ def drawRectangle(x, y, w, h, c)
122
+ radius = h / 10.0
123
+ degrees = Math::PI / 180.0;
124
+
125
+ @ic.new_sub_path()
126
+ @ic.arc(x + w - radius, y + radius, radius, -90 * degrees, 0 * degrees)
127
+ @ic.arc(x + w - radius, y + h - radius, radius, 0 * degrees, 90 * degrees)
128
+ @ic.arc(x + radius, y + h - radius, radius, 90 * degrees, 180 * degrees)
129
+ @ic.arc(x + radius, y + radius, radius, 180 * degrees, 270 * degrees)
130
+ @ic.close_path()
131
+
132
+ if c == false
133
+ @ic.set_source_rgba(0.1328125, 0.1328125, 0.1328125, 0.5)
134
+ @ic.fill_preserve()
135
+ @ic.set_source_rgb(0.9375, 0.328125, 0.296875)
136
+ @ic.set_line_width(2.0)
137
+ @ic.stroke()
138
+ else
139
+ @ic.set_source_rgba(0.1328125, 0.1328125, 0.1328125, 0.5)
140
+ @ic.fill_preserve()
141
+ @ic.set_source_rgb(0, 0, 0)
142
+ @ic.set_line_width(2.0)
143
+ @ic.stroke()
144
+ end
145
+ end
146
+
147
+ # Dessin d'un rectangle vide
148
+ #
149
+ # === Paramètres
150
+ #
151
+ # * +x+ - Position en x du rectangle
152
+ # * +y+ - Position en y du rectangle
153
+ # * +w+ - Largeur du rectangle
154
+ # * +h+ - Hauteur du rectangle
155
+ # * +c+ - Couleurs inversées ou non
156
+ def drawRectangleVide(x, y, w, h, c)
157
+ radius = h / 10.0
158
+ degrees = Math::PI / 180.0;
159
+
160
+ @ic.new_sub_path()
161
+ @ic.arc(x + w - radius, y + radius, radius, -90 * degrees, 0 * degrees)
162
+ @ic.arc(x + w - radius, y + h - radius, radius, 0 * degrees, 90 * degrees)
163
+ @ic.arc(x + radius, y + h - radius, radius, 90 * degrees, 180 * degrees)
164
+ @ic.arc(x + radius, y + radius, radius, 180 * degrees, 270 * degrees)
165
+ @ic.close_path()
166
+
167
+ if c == false
168
+ @ic.set_source_rgba(0.1328125, 0.1328125, 0.1328125, 0.5)
169
+ @ic.fill_preserve()
170
+ @ic.set_source_rgb(0.9375, 0.328125, 0.296875)
171
+ @ic.set_line_width(10.0)
172
+ @ic.stroke()
173
+ else
174
+ @ic.set_source_rgba(0.1328125, 0.1328125, 0.1328125, 0.5)
175
+ @ic.fill_preserve()
176
+ @ic.set_source_rgb(0, 0, 0)
177
+ @ic.set_line_width(10.0)
178
+ @ic.stroke()
179
+ end
180
+ end
181
+
182
+ # Dessin d'une étoile
183
+ #
184
+ # === Paramètres
185
+ #
186
+ # * +x+ - Position en x de l'étoile
187
+ # * +y+ - Position en y de l'étoile
188
+ # * +s+ - Taille de l'étoile
189
+ # * +c+ - Couleur de l'étoile
190
+ def drawEtoile(x, y, s, c)
191
+ @ic.new_sub_path()
192
+ @ic.move_to(x + s/2, y-2)
193
+ @ic.line_to(x + s/5, y + s)
194
+ @ic.line_to(x + s, y + 2*s/5)
195
+ @ic.line_to(x, y + 2*s/5)
196
+ @ic.line_to(x + 4*s/5, y + s)
197
+ @ic.line_to(x + s/2, y)
198
+ @ic.set_source_rgb(0, 0, 0)
199
+ @ic.set_line_width(1.0)
200
+ @ic.stroke_preserve()
201
+ @ic.set_source_rgb(c)
202
+ @ic.fill()
203
+ end
204
+
205
+ # Dessin d'une etiquette
206
+ #
207
+ # === Paramètres
208
+ #
209
+ # * +e+ - Etiquette à dessiner
210
+ def drawEtiquette(e)
211
+ drawRectangle(e.x, e.y, e.w, e.h, e.s > 1)
212
+ 3.times() do |i|
213
+ i < e.s ? c = [0.9375, 0.328125, 0.296875] : c = [0.5,0.5,0.5]
214
+ drawEtoile(e.x + e.h*i + 4, e.y + 4, e.h - 8, c)
215
+ end
216
+ end
217
+
218
+ # Ajout d'une etiquette
219
+ #
220
+ # === Paramètres
221
+ #
222
+ # * +e+ - Etiquette à ajouter
223
+ def ajouterEtiquette(e)
224
+ @etiquettes.append(e)
225
+ end
226
+
227
+ # Dessin des étiquettes
228
+ def dessinerEtiquettes()
229
+ @etiquettes.each() { |x| drawEtiquette(x) }
230
+ end
231
+
232
+ # Affichage de texte
233
+ #
234
+ # === Paramètres
235
+ #
236
+ # * +x+ - Coordonnée en x
237
+ # * +y+ - Coordonnée en y
238
+ # * +t+ - Texte à afficher
239
+ def drawTexte(x, y, t)
240
+ @ic.set_font_size(70)
241
+ @ic.text_extents(t)
242
+
243
+ @ic.move_to(x - @ic.text_extents(t).width/2, y + @ic.text_extents(t).height/2)
244
+ @ic.show_text(t)
245
+ end
246
+
247
+ # Clic sur la souris
248
+ #
249
+ # === Paramètres
250
+ #
251
+ # * +event+ => Evenement Gtk contenant les informations sur le clic
252
+ def mouseClick(event)
253
+ #puts(event.x, event.y)
254
+ #puts(getVX(event.x), getVY(event.y))
255
+ x = getVX(event.x)
256
+ y = getVY(event.y)
257
+ @etiquettes.each() do |e|
258
+ if x > e.x && y > e.y && x < (e.x + e.w) && y < (e.y + e.h)
259
+ etoiles = GestionBase.recupScore(@id, e.g) / (e.g.scoreMax/4)
260
+ etoiles = etoiles > 3 ? 3 : (etoiles < 0 ? 0 : etoiles)
261
+ if etoiles < 2
262
+ if GestionBase.grilleTerminee?(@id, e.g)
263
+ d = Gtk::MessageDialog.new(:buttons => :ok_cancel)
264
+ d.text = "Votre progression sur cette grille sera effacée si vous la rejouez"
265
+ d.message_type = :question
266
+ r = d.run == :ok
267
+ d.destroy
268
+ if r == true
269
+ grille2 = YAML.load(e.g.grilleSolution)
270
+ grille = Grille.creer(grille2.tabCase, grille2.hauteur, grille2.largeur, grille2)
271
+ e.g.grilleSolution = YAML.dump(grille)
272
+ @carte.lancer(e.g)
273
+ end
274
+ else
275
+ @carte.lancer(e.g)
276
+ end
277
+ end
278
+ return nil
279
+ end
280
+ end
281
+ end
282
+ end
@@ -0,0 +1,61 @@
1
+ require "gtk3"
2
+
3
+ # Widget s'affichant pendant le chargement du mode aventure
4
+ class ChargementAventure < Gtk::Box
5
+
6
+ # Constructeur
7
+ #
8
+ # === Paramètres
9
+ #
10
+ # * +fenetre+ - Fenetre principale
11
+ def initialize(fenetre)
12
+ super(Gtk::Orientation.new(1), 0)
13
+
14
+ self.margin = 15
15
+
16
+ view = Gtk::TextView.new()
17
+ view.buffer.text =
18
+ "
19
+ Histoire :
20
+
21
+ Vous êtes dans la peau d’un grand architecte qui a pour projet de relier tous les
22
+ continents entre eux. Mais votre tâche ne sera pas si simple: les ponts seront de
23
+ plus en plus compliqués à construire. Prenez votre courage à deux mains et reliez
24
+ tous ces continents pour faciliter les déplacements à travers le monde.
25
+
26
+ En avant !
27
+
28
+
29
+ Objectifs :
30
+
31
+ - Débloquer tous les continents jusqu'à atteindre l'Antarctique
32
+ - Les continents se débloquent en fonction de votre nombre d'étoiles
33
+ - Gagner des étoiles en jouant les niveaux présents sur les continents
34
+ - Chaque niveau peut rapporter jusqu'à 3 étoiles
35
+
36
+ Déplacements :
37
+
38
+ - Cliquez sur un continent débloqué pour vous y déplacer
39
+ - Cliquez sur l'étiquette d'un niveau (rectangle avec le nombre d'étoiles) pour le jouer
40
+ - Cliquez sur le bouton retour pour revenir en arrière"
41
+ view.sensitive = false
42
+
43
+ scroll = Gtk::ScrolledWindow.new()
44
+ scroll.set_policy(:never, :automatic)
45
+ scroll.expand = true
46
+ scroll.add(view)
47
+
48
+ @bouton = Gtk::Button.new(label: "Chargement en cours ...")
49
+ @bouton.sensitive = false
50
+ @bouton.signal_connect("clicked") { fenetre.finChargement() }
51
+ @bouton.margin_top = 10
52
+
53
+ self.add(scroll)
54
+ self.add(@bouton)
55
+ end
56
+
57
+ def activer()
58
+ @bouton.label = "Ouvrir la carte du monde"
59
+ @bouton.sensitive = true
60
+ end
61
+ end
@@ -0,0 +1,42 @@
1
+ require "gtk3"
2
+ require_relative "ListeClassement"
3
+
4
+ # Widget affichant le classement
5
+ class Classement < Gtk::Box
6
+
7
+ # Constructeur
8
+ #
9
+ # === Paramètres
10
+ #
11
+ # * +fenetre+ - Fenetre principale
12
+ def initialize(fenetre)
13
+ super(Gtk::Orientation.new(1), 0)
14
+
15
+ self.margin = 15
16
+
17
+
18
+ stack = Gtk::Stack.new()
19
+ switcher = Gtk::StackSwitcher.new()
20
+ switcher.stack = stack
21
+ stack.add_titled(ListeClassement.new(1), "Facile", "Facile")
22
+ stack.add_titled(ListeClassement.new(2), "Moyen", "Moyen")
23
+ stack.add_titled(ListeClassement.new(3), "Difficile", "Difficile")
24
+ stack.margin_top = 15
25
+
26
+ bouton = Gtk::Button.new(label: "Retour")
27
+ bouton.signal_connect("clicked") { fenetre.finClassement() }
28
+
29
+ boxHorizontale = Gtk::Box.new(Gtk::Orientation.new(0), 0)
30
+ lab = Gtk::Label.new("")
31
+ boxHorizontale.add(lab)
32
+ lab.hexpand = true
33
+ boxHorizontale.add(switcher)
34
+ lab = Gtk::Label.new("")
35
+ boxHorizontale.add(lab)
36
+ lab.hexpand = true
37
+
38
+ self.add(boxHorizontale)
39
+ self.add(stack)
40
+ self.add(bouton)
41
+ end
42
+ end
@@ -0,0 +1,60 @@
1
+ require "gtk3"
2
+ require_relative "SelectionUtilisateur"
3
+
4
+ # Widget de connexion
5
+ class Connexion < Gtk::Box
6
+
7
+ # Constructeur
8
+ #
9
+ # === Paramètres
10
+ #
11
+ # * +fenetre+ - Fenetre principale
12
+ def initialize(fenetre)
13
+ super(Gtk::Orientation.new(1), 0)
14
+
15
+ self.margin = 15
16
+
17
+ boxHorizontale = Gtk::Box.new(Gtk::Orientation.new(0), 0)
18
+ stack = Gtk::Stack.new()
19
+ switcher = Gtk::StackSwitcher.new()
20
+ switcher.stack = stack
21
+ #.set_size_request(5000, 50)
22
+ lab = Gtk::Label.new("")
23
+ boxHorizontale.add(lab)
24
+ lab.hexpand = true
25
+ boxHorizontale.add(switcher)
26
+ lab = Gtk::Label.new("")
27
+ boxHorizontale.add(lab)
28
+ lab.hexpand = true
29
+ #boxHorizontale.set_homogeneous(true)
30
+ boxHorizontale.set_hexpand(true)
31
+
32
+ connexion = Gtk::Box.new(Gtk::Orientation.new(1), 0)
33
+ connexion.add(SelectionUtilisateur.new(fenetre))
34
+
35
+ inscription = Gtk::Box.new(Gtk::Orientation.new(1), 0)
36
+ c = Gtk::Label.new("Nom d'utilisateur :")
37
+ c.margin_top = 20
38
+ inscription.add(c)
39
+ e = Gtk::Entry.new()
40
+ e.margin_top = 20
41
+ inscription.add(e)
42
+ c = Gtk::Button.new(label: "Valider")
43
+ c.signal_connect("clicked") { |widget| fenetre.inscription(e.text) }
44
+ c.margin_top = 20
45
+ #stack.hexpand = false
46
+ inscription.add(c)
47
+
48
+ stack.add_titled(connexion, "Se connecter", "Se connecter")
49
+ stack.add_titled(inscription, "Creer un compte", "Créer un compte")
50
+ stack.margin_top = 15
51
+ stack.vexpand = true
52
+
53
+ bouton = Gtk::Button.new(label: "Quitter")
54
+ bouton.signal_connect("clicked") { |widget| Gtk.main_quit() }
55
+
56
+ self.add(boxHorizontale)
57
+ self.add(stack)
58
+ self.add(bouton)
59
+ end
60
+ end