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.
- checksums.yaml +7 -0
- data/bin/assets/FlatColor/gtk-3.20/assets/blank.png +0 -0
- data/bin/assets/FlatColor/gtk-3.20/assets/check-insensitive.png +0 -0
- data/bin/assets/FlatColor/gtk-3.20/assets/check-mixed-insensitive.png +0 -0
- data/bin/assets/FlatColor/gtk-3.20/assets/check-mixed.png +0 -0
- data/bin/assets/FlatColor/gtk-3.20/assets/check.png +0 -0
- data/bin/assets/FlatColor/gtk-3.20/assets/grid-selection-blank.png +0 -0
- data/bin/assets/FlatColor/gtk-3.20/assets/grid-selection.png +0 -0
- data/bin/assets/FlatColor/gtk-3.20/assets/menuitem-checkbox-checked-hover.png +0 -0
- data/bin/assets/FlatColor/gtk-3.20/assets/menuitem-checkbox-checked-insensitive.png +0 -0
- data/bin/assets/FlatColor/gtk-3.20/assets/menuitem-checkbox-checked.png +0 -0
- data/bin/assets/FlatColor/gtk-3.20/assets/menuitem-checkbox-mixed-hover.png +0 -0
- data/bin/assets/FlatColor/gtk-3.20/assets/menuitem-checkbox-mixed-insensitive.png +0 -0
- data/bin/assets/FlatColor/gtk-3.20/assets/menuitem-checkbox-mixed.png +0 -0
- data/bin/assets/FlatColor/gtk-3.20/assets/menuitem-radio-checked-hover.png +0 -0
- data/bin/assets/FlatColor/gtk-3.20/assets/menuitem-radio-checked-insensitive.png +0 -0
- data/bin/assets/FlatColor/gtk-3.20/assets/menuitem-radio-checked.png +0 -0
- data/bin/assets/FlatColor/gtk-3.20/assets/pane-separator-grip-vertical.png +0 -0
- data/bin/assets/FlatColor/gtk-3.20/assets/pane-separator-grip.png +0 -0
- data/bin/assets/FlatColor/gtk-3.20/assets/radio-checked.png +0 -0
- data/bin/assets/FlatColor/gtk-3.20/assets/radio-insensitive.png +0 -0
- data/bin/assets/FlatColor/gtk-3.20/assets/radio-unchecked.png +0 -0
- data/bin/assets/FlatColor/gtk-3.20/assets/radio.png +0 -0
- data/bin/assets/FlatColor/gtk-3.20/assets/slider-dark.png +0 -0
- data/bin/assets/FlatColor/gtk-3.20/assets/slider-dark@2.png +0 -0
- data/bin/assets/FlatColor/gtk-3.20/assets/slider-horz-scale-has-marks-above-dark.png +0 -0
- data/bin/assets/FlatColor/gtk-3.20/assets/slider-horz-scale-has-marks-above-dark@2.png +0 -0
- data/bin/assets/FlatColor/gtk-3.20/assets/slider-horz-scale-has-marks-above-insensitive-dark.png +0 -0
- data/bin/assets/FlatColor/gtk-3.20/assets/slider-horz-scale-has-marks-above-insensitive-dark@2.png +0 -0
- data/bin/assets/FlatColor/gtk-3.20/assets/slider-horz-scale-has-marks-above-insensitive.png +0 -0
- data/bin/assets/FlatColor/gtk-3.20/assets/slider-horz-scale-has-marks-above-insensitive@2.png +0 -0
- data/bin/assets/FlatColor/gtk-3.20/assets/slider-horz-scale-has-marks-above.png +0 -0
- data/bin/assets/FlatColor/gtk-3.20/assets/slider-horz-scale-has-marks-above@2.png +0 -0
- data/bin/assets/FlatColor/gtk-3.20/assets/slider-horz-scale-has-marks-below-dark.png +0 -0
- data/bin/assets/FlatColor/gtk-3.20/assets/slider-horz-scale-has-marks-below-dark@2.png +0 -0
- data/bin/assets/FlatColor/gtk-3.20/assets/slider-horz-scale-has-marks-below-insensitive-dark.png +0 -0
- data/bin/assets/FlatColor/gtk-3.20/assets/slider-horz-scale-has-marks-below-insensitive-dark@2.png +0 -0
- data/bin/assets/FlatColor/gtk-3.20/assets/slider-horz-scale-has-marks-below-insensitive.png +0 -0
- data/bin/assets/FlatColor/gtk-3.20/assets/slider-horz-scale-has-marks-below-insensitive@2.png +0 -0
- data/bin/assets/FlatColor/gtk-3.20/assets/slider-horz-scale-has-marks-below.png +0 -0
- data/bin/assets/FlatColor/gtk-3.20/assets/slider-horz-scale-has-marks-below@2.png +0 -0
- data/bin/assets/FlatColor/gtk-3.20/assets/slider-insensitive-dark.png +0 -0
- data/bin/assets/FlatColor/gtk-3.20/assets/slider-insensitive-dark@2.png +0 -0
- data/bin/assets/FlatColor/gtk-3.20/assets/slider-insensitive.png +0 -0
- data/bin/assets/FlatColor/gtk-3.20/assets/slider-insensitive@2.png +0 -0
- data/bin/assets/FlatColor/gtk-3.20/assets/slider-vert-scale-has-marks-above-dark.png +0 -0
- data/bin/assets/FlatColor/gtk-3.20/assets/slider-vert-scale-has-marks-above-dark@2.png +0 -0
- data/bin/assets/FlatColor/gtk-3.20/assets/slider-vert-scale-has-marks-above-insensitive-dark.png +0 -0
- data/bin/assets/FlatColor/gtk-3.20/assets/slider-vert-scale-has-marks-above-insensitive-dark@2.png +0 -0
- data/bin/assets/FlatColor/gtk-3.20/assets/slider-vert-scale-has-marks-above-insensitive.png +0 -0
- data/bin/assets/FlatColor/gtk-3.20/assets/slider-vert-scale-has-marks-above-insensitive@2.png +0 -0
- data/bin/assets/FlatColor/gtk-3.20/assets/slider-vert-scale-has-marks-above.png +0 -0
- data/bin/assets/FlatColor/gtk-3.20/assets/slider-vert-scale-has-marks-above@2.png +0 -0
- data/bin/assets/FlatColor/gtk-3.20/assets/slider-vert-scale-has-marks-below-dark.png +0 -0
- data/bin/assets/FlatColor/gtk-3.20/assets/slider-vert-scale-has-marks-below-dark@2.png +0 -0
- data/bin/assets/FlatColor/gtk-3.20/assets/slider-vert-scale-has-marks-below-insensitive-dark.png +0 -0
- data/bin/assets/FlatColor/gtk-3.20/assets/slider-vert-scale-has-marks-below-insensitive-dark@2.png +0 -0
- data/bin/assets/FlatColor/gtk-3.20/assets/slider-vert-scale-has-marks-below-insensitive.png +0 -0
- data/bin/assets/FlatColor/gtk-3.20/assets/slider-vert-scale-has-marks-below-insensitive@2.png +0 -0
- data/bin/assets/FlatColor/gtk-3.20/assets/slider-vert-scale-has-marks-below.png +0 -0
- data/bin/assets/FlatColor/gtk-3.20/assets/slider-vert-scale-has-marks-below@2.png +0 -0
- data/bin/assets/FlatColor/gtk-3.20/assets/slider.png +0 -0
- data/bin/assets/FlatColor/gtk-3.20/assets/slider@2.png +0 -0
- data/bin/assets/FlatColor/gtk-3.20/gnome-applications.css +429 -0
- data/bin/assets/FlatColor/gtk-3.20/gtk-widgets.css +786 -0
- data/bin/assets/FlatColor/gtk-3.20/gtk.css +113 -0
- data/bin/assets/FlatColor/gtk-3.20/gtk.css.base +108 -0
- data/bin/assets/FlatColor/gtk-3.20/settings.ini +7 -0
- data/bin/assets/FlatColor/gtk-3.20/unity.css +68 -0
- data/bin/assets/FlatColor/gtk-3.20/widgets/button.css +58 -0
- data/bin/assets/FlatColor/gtk-3.20/widgets/calendar.css +32 -0
- data/bin/assets/FlatColor/gtk-3.20/widgets/cell-row.css +25 -0
- data/bin/assets/FlatColor/gtk-3.20/widgets/check-radio.css +164 -0
- data/bin/assets/FlatColor/gtk-3.20/widgets/chrome.css +16 -0
- data/bin/assets/FlatColor/gtk-3.20/widgets/color-chooser.css +114 -0
- data/bin/assets/FlatColor/gtk-3.20/widgets/column-header.css +52 -0
- data/bin/assets/FlatColor/gtk-3.20/widgets/combobox.css +26 -0
- data/bin/assets/FlatColor/gtk-3.20/widgets/csd.css +125 -0
- data/bin/assets/FlatColor/gtk-3.20/widgets/entry.css +40 -0
- data/bin/assets/FlatColor/gtk-3.20/widgets/header-bar.css +27 -0
- data/bin/assets/FlatColor/gtk-3.20/widgets/infobar.css +90 -0
- data/bin/assets/FlatColor/gtk-3.20/widgets/linked-buttons.css +524 -0
- data/bin/assets/FlatColor/gtk-3.20/widgets/menu.css +127 -0
- data/bin/assets/FlatColor/gtk-3.20/widgets/notebook.css +200 -0
- data/bin/assets/FlatColor/gtk-3.20/widgets/osd.css +203 -0
- data/bin/assets/FlatColor/gtk-3.20/widgets/progress-scale.css +365 -0
- data/bin/assets/FlatColor/gtk-3.20/widgets/scrollbar.css +116 -0
- data/bin/assets/FlatColor/gtk-3.20/widgets/selection-mode.css +109 -0
- data/bin/assets/FlatColor/gtk-3.20/widgets/separator.css +24 -0
- data/bin/assets/FlatColor/gtk-3.20/widgets/sidebar.css +43 -0
- data/bin/assets/FlatColor/gtk-3.20/widgets/spinbutton.css +102 -0
- data/bin/assets/FlatColor/gtk-3.20/widgets/spinner.css +120 -0
- data/bin/assets/FlatColor/gtk-3.20/widgets/switch.css +63 -0
- data/bin/assets/FlatColor/gtk-3.20/widgets/toolbar.css +39 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-checked-dark.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-checked-dark@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-checked-insensitive-dark.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-checked-insensitive-dark@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-checked-insensitive-selected.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-checked-insensitive-selected@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-checked-insensitive.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-checked-insensitive@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-checked-selected.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-checked-selected@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-checked-selectionmode-dark.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-checked-selectionmode-dark@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-checked-selectionmode.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-checked-selectionmode@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-checked.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-checked@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-mixed-dark.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-mixed-dark@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-mixed-insensitive-dark.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-mixed-insensitive-dark@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-mixed-insensitive-selected.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-mixed-insensitive-selected@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-mixed-insensitive.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-mixed-insensitive@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-mixed-selected.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-mixed-selected@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-mixed.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-mixed@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-selectionmode-dark.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-selectionmode-dark@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-selectionmode.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-selectionmode@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-unchecked-dark.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-unchecked-dark@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-unchecked-insensitive-dark.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-unchecked-insensitive-dark@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-unchecked-insensitive-selected.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-unchecked-insensitive-selected@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-unchecked-insensitive.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-unchecked-insensitive@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-unchecked-selected.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-unchecked-selected@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-unchecked.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/checkbox-unchecked@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-checked-dark.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-checked-dark@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-checked-insensitive-dark.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-checked-insensitive-dark@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-checked-insensitive-selected.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-checked-insensitive-selected@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-checked-insensitive.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-checked-insensitive@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-checked-selected.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-checked-selected@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-checked.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-checked@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-mixed-dark.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-mixed-dark@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-mixed-insensitive-dark.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-mixed-insensitive-dark@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-mixed-insensitive-selected.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-mixed-insensitive-selected@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-mixed-insensitive.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-mixed-insensitive@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-mixed-selected.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-mixed-selected@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-mixed.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-mixed@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-unchecked-dark.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-unchecked-dark@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-unchecked-insensitive-dark.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-unchecked-insensitive-dark@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-unchecked-insensitive-selected.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-unchecked-insensitive-selected@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-unchecked-insensitive.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-unchecked-insensitive@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-unchecked-selected.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-unchecked-selected@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-unchecked.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/radio-unchecked@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-active-dark.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-active-dark@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-active-header-dark.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-active-header-dark@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-active-header.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-active-header@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-active-hover-dark.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-active-hover-dark@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-active-hover-header-dark.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-active-hover-header-dark@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-active-hover-header.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-active-hover-header@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-active-hover-selected.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-active-hover-selected@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-active-hover.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-active-hover@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-active-insensitive-dark.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-active-insensitive-dark@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-active-insensitive-header-dark.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-active-insensitive-header-dark@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-active-insensitive-header.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-active-insensitive-header@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-active-insensitive-selected.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-active-insensitive-selected@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-active-insensitive.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-active-insensitive@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-active-selected.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-active-selected@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-active.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-active@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-dark.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-dark@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-header-dark.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-header-dark@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-header.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-header@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-hover-dark.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-hover-dark@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-hover-header-dark.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-hover-header-dark@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-hover-header.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-hover-header@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-hover-selected.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-hover-selected@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-hover.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-hover@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-insensitive-dark.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-insensitive-dark@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-insensitive-header-dark.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-insensitive-header-dark@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-insensitive-header.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-insensitive-header@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-insensitive-selected.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-insensitive-selected@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-insensitive.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-insensitive@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-selected.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch-selected@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/switch@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-close-active-dark.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-close-active-dark@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-close-active.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-close-active@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-close-backdrop-dark.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-close-backdrop-dark@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-close-backdrop.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-close-backdrop@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-close-dark.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-close-dark@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-close-hover-dark.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-close-hover-dark@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-close-hover.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-close-hover@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-close.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-close@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-maximize-active-dark.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-maximize-active-dark@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-maximize-active.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-maximize-active@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-maximize-backdrop-dark.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-maximize-backdrop-dark@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-maximize-backdrop.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-maximize-backdrop@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-maximize-dark.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-maximize-dark@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-maximize-hover-dark.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-maximize-hover-dark@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-maximize-hover.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-maximize-hover@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-maximize.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-maximize@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-minimize-active-dark.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-minimize-active-dark@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-minimize-active.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-minimize-active@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-minimize-backdrop-dark.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-minimize-backdrop-dark@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-minimize-backdrop.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-minimize-backdrop@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-minimize-dark.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-minimize-dark@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-minimize-hover-dark.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-minimize-hover-dark@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-minimize-hover.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-minimize-hover@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-minimize.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-minimize@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-restore-active-dark.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-restore-active-dark@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-restore-active.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-restore-active@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-restore-backdrop-dark.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-restore-backdrop-dark@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-restore-backdrop.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-restore-backdrop@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-restore-dark.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-restore-dark@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-restore-hover-dark.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-restore-hover-dark@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-restore-hover.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-restore-hover@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-restore.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/assets/titlebutton-restore@2.png +0 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/gtk-dark.css +10090 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/gtk.css +10100 -0
- data/bin/assets/Matcha-dark-aliz/gtk-3.0/thumbnail.png +0 -0
- data/bin/assets/Matcha-dark-aliz/index.theme +12 -0
- data/bin/assets/didacticiel/1.jpg +0 -0
- data/bin/assets/didacticiel/2.jpg +0 -0
- data/bin/assets/didacticiel/3.jpg +0 -0
- data/bin/assets/didacticiel/4.jpg +0 -0
- data/bin/assets/didacticiel/5.jpg +0 -0
- data/bin/assets/didacticiel/6.jpg +0 -0
- data/bin/assets/didacticiel/7.jpg +0 -0
- data/bin/assets/didacticiel/8.jpg +0 -0
- data/bin/assets/map.png +0 -0
- data/bin/db/Difficulte.rb +9 -0
- data/bin/db/GestionBase.rb +334 -0
- data/bin/db/GrilleDb.rb +15 -0
- data/bin/db/Joue.rb +10 -0
- data/bin/db/Joueur.rb +9 -0
- data/bin/db/Migration.rb +70 -0
- data/bin/db/Mode.rb +9 -0
- data/bin/db/PhrasesAventure.rb +4 -0
- data/bin/db/TestBase.rb +144 -0
- data/bin/db/base.sqlite +0 -0
- data/bin/hashi +5 -0
- data/bin/src/Action.rb +46 -0
- data/bin/src/Aides.rb +41 -0
- data/bin/src/Case.rb +410 -0
- data/bin/src/Grille.rb +914 -0
- data/bin/src/Grilles/grilles_site.txt +30 -0
- data/bin/src/Grilles/grilles_site_difficile.txt +90 -0
- data/bin/src/Grilles/grilles_site_facile.txt +90 -0
- data/bin/src/Grilles/grilles_site_moyen.txt +90 -0
- data/bin/src/Grilles/grilles_site_ser.txt +0 -0
- data/bin/src/Grilles/grilles_site_ser_difficile.txt +90 -0
- data/bin/src/Grilles/grilles_site_ser_facile.txt +90 -0
- data/bin/src/Grilles/grilles_site_ser_moyen.txt +90 -0
- data/bin/src/Hashi.rb +214 -0
- data/bin/src/Lien.rb +57 -0
- data/bin/src/Pile.rb +41 -0
- data/bin/src/Rakefile.rb +6 -0
- data/bin/src/SerGrille.rb +430 -0
- data/bin/src/Test.rb +24 -0
- data/bin/src/Test2.rb +135 -0
- data/bin/src/Utilitaire.rb +12 -0
- data/bin/src/testSerGrille.rb +21 -0
- data/bin/src/ui/AfficheurGrille.rb +385 -0
- data/bin/src/ui/AfficheurJeu.rb +209 -0
- data/bin/src/ui/AfficheurSelection.rb +38 -0
- data/bin/src/ui/Afrique.rb +38 -0
- data/bin/src/ui/AmeriqueNord.rb +38 -0
- data/bin/src/ui/AmeriqueSud.rb +38 -0
- data/bin/src/ui/Antarctique.rb +32 -0
- data/bin/src/ui/Asie.rb +38 -0
- data/bin/src/ui/Aventure.rb +132 -0
- data/bin/src/ui/Carte.rb +282 -0
- data/bin/src/ui/ChargementAventure.rb +61 -0
- data/bin/src/ui/Classement.rb +42 -0
- data/bin/src/ui/Connexion.rb +60 -0
- data/bin/src/ui/Didacticiel.rb +169 -0
- data/bin/src/ui/Etiquette.rb +24 -0
- data/bin/src/ui/Europe.rb +38 -0
- data/bin/src/ui/ListeClassement.rb +44 -0
- data/bin/src/ui/Menu.rb +74 -0
- data/bin/src/ui/Monde.rb +167 -0
- data/bin/src/ui/Oceanie.rb +38 -0
- data/bin/src/ui/SelecteurGrille.rb +58 -0
- data/bin/src/ui/SelectionDifficulte.rb +38 -0
- data/bin/src/ui/SelectionUtilisateur.rb +46 -0
- data/bin/src/ui/Timer.rb +29 -0
- metadata +479 -0
data/bin/src/Action.rb
ADDED
@@ -0,0 +1,46 @@
|
|
1
|
+
#Classe représentant une Action
|
2
|
+
# Une action :
|
3
|
+
#le nom de l'action (ajout,suppression,début ou fin d'hypothèse)
|
4
|
+
# le lien en question sur lequel l'action est appliquée
|
5
|
+
|
6
|
+
class Action
|
7
|
+
|
8
|
+
# @action => String, représente le type d'action
|
9
|
+
# @lien => Lien, le lien sur lequel a été appliqué l'action
|
10
|
+
|
11
|
+
|
12
|
+
# Méthode d'acces en lecture / ecriture de @action
|
13
|
+
attr_accessor :action
|
14
|
+
# Méthode d'acces en lecture / ecriture de @lien
|
15
|
+
attr_accessor :lien
|
16
|
+
|
17
|
+
# On rend privé la méthode de classe new pour forcer l'utilisation de Action.creer
|
18
|
+
private_class_method :new
|
19
|
+
|
20
|
+
# Constructeur
|
21
|
+
#
|
22
|
+
# === Parametres
|
23
|
+
#
|
24
|
+
# * +action+ => Action à faire
|
25
|
+
# * +lien+ => Lien sur lequel faire l'action
|
26
|
+
def initialize(action,lien)
|
27
|
+
@action = action
|
28
|
+
@lien = lien
|
29
|
+
end
|
30
|
+
|
31
|
+
# Redéfinition du constructeur
|
32
|
+
#
|
33
|
+
# === Parametres
|
34
|
+
#
|
35
|
+
# * +action+ => Action à faire
|
36
|
+
# * +lien+ => Lien sur lequel faire l'action
|
37
|
+
def Action.creer(action,lien)
|
38
|
+
new(action,lien)
|
39
|
+
end
|
40
|
+
|
41
|
+
# Redéfinition de l'affichage d'une Action
|
42
|
+
def to_s()
|
43
|
+
return "#{@action}"
|
44
|
+
end
|
45
|
+
|
46
|
+
end
|
data/bin/src/Aides.rb
ADDED
@@ -0,0 +1,41 @@
|
|
1
|
+
#Classe représentant les aides
|
2
|
+
# Une aide :
|
3
|
+
|
4
|
+
|
5
|
+
class Aides
|
6
|
+
|
7
|
+
# @casejeu => Case, représente la case sur laquelle s'applique l'aide
|
8
|
+
# @description => String, représente une courte phrase proposant une technique à appliquer
|
9
|
+
# @niveau => entier(1 à 3), représente le niveau de l'aide, 3 étant le niveau d'aide le plus complexe.
|
10
|
+
|
11
|
+
# Méthodes d'acces en lecture / ecriture de @caseJeu
|
12
|
+
attr_accessor :caseJeu
|
13
|
+
# Méthodes d'acces en lecture / ecriture de @description
|
14
|
+
attr_accessor :description
|
15
|
+
# Méthodes d'acces en lecture / ecriture de @niveau
|
16
|
+
attr_accessor :niveau #1,2 ou 3 de facile a difficile
|
17
|
+
# On rend privé la méthode de classe new pour forcer l'utilisation de Aides.creer
|
18
|
+
private_class_method :new
|
19
|
+
|
20
|
+
# Constructeur
|
21
|
+
#
|
22
|
+
def initialize(niveau,caseJeu,description)
|
23
|
+
@niveau=niveau
|
24
|
+
@caseJeu = caseJeu
|
25
|
+
@description = description
|
26
|
+
|
27
|
+
end
|
28
|
+
|
29
|
+
# Redéfinition du constructeur
|
30
|
+
#
|
31
|
+
def Aides.creer(niveau,caseJeu,description)
|
32
|
+
new(niveau,caseJeu,description)
|
33
|
+
end
|
34
|
+
|
35
|
+
# Redéfinition de l'affichage d'une Aides
|
36
|
+
def to_s()
|
37
|
+
return "#{@niveau} : #{@caseJeu}, #{@description}"
|
38
|
+
end
|
39
|
+
|
40
|
+
|
41
|
+
end
|
data/bin/src/Case.rb
ADDED
@@ -0,0 +1,410 @@
|
|
1
|
+
require_relative "Lien"
|
2
|
+
|
3
|
+
|
4
|
+
# Une case du jeu avec des position ligne et colonne contenant une etiquette
|
5
|
+
# correspondant au nombre de lien possible sur cette case
|
6
|
+
class Case
|
7
|
+
|
8
|
+
# @ligne => entier correspondnant à la ligne de la case dans la grille
|
9
|
+
# @colonne => entier correspondnant à la colonne de la case dans la grille
|
10
|
+
# @etiquetteCase => entier correspondnant au nombre de lien total possible sur cette case
|
11
|
+
# @tabVoisins => tableau(0 a 3) des cases voisines
|
12
|
+
# @tabTriangle => tableau(0 a 3) contenant des booleans correspondant a la possibilitée ou non de créer un lien dans une direction
|
13
|
+
|
14
|
+
# Méthode d'acces en lecture de @ligne
|
15
|
+
attr_reader :ligne
|
16
|
+
# Méthode d'acces en lecture de @colonne
|
17
|
+
attr_reader :colonne
|
18
|
+
# Méthode d'acces en lecture de @etiquetteCase
|
19
|
+
attr_reader :etiquetteCase
|
20
|
+
# Méthodes d'acces en lecture / ecriture de @tabVoisins
|
21
|
+
attr_accessor :tabVoisins
|
22
|
+
# Méthodes d'acces en lecture / ecriture de @tabTriangle
|
23
|
+
attr_accessor :tabTriangle
|
24
|
+
|
25
|
+
# On rend privé la méthode de classe new pour forcer l'utilisation de Case.creer
|
26
|
+
private_class_method :new
|
27
|
+
|
28
|
+
# Initialisation d'une case
|
29
|
+
#
|
30
|
+
# === Parametres
|
31
|
+
#
|
32
|
+
# * + ligne + = > la ligne de la case dans la grille
|
33
|
+
# * + colonne + = > la colonne de la case dans la grille
|
34
|
+
# * + etiquetteCase + = > le nombre de liens total pouvant être relié à cette case
|
35
|
+
#
|
36
|
+
def initialize(ligne,colonne,etiquetteCase)
|
37
|
+
@ligne=ligne
|
38
|
+
@colonne=colonne
|
39
|
+
@etiquetteCase=etiquetteCase
|
40
|
+
@tabTriangle=Array.new(4,false)
|
41
|
+
@tabVoisins=Array.new(4,false)
|
42
|
+
|
43
|
+
end
|
44
|
+
|
45
|
+
|
46
|
+
# Création d'une case
|
47
|
+
#
|
48
|
+
# === Parametres
|
49
|
+
#
|
50
|
+
# * + ligne + = > la ligne de la case dans la grille
|
51
|
+
# * + colonne + = > la colonne de la case dans la grille
|
52
|
+
# * + etiquetteCase + = > le nombre de liens total pouvant être reliés à cette case
|
53
|
+
#
|
54
|
+
# === Retour
|
55
|
+
#
|
56
|
+
# La case créée
|
57
|
+
#
|
58
|
+
def Case.creer(ligne,colonne,etiquetteCase)
|
59
|
+
new(ligne,colonne,etiquetteCase)
|
60
|
+
end
|
61
|
+
|
62
|
+
|
63
|
+
# compte le nombre de voisins disponible
|
64
|
+
#
|
65
|
+
# === Retour
|
66
|
+
#
|
67
|
+
# entier correspondant au nombre de voisins dispo(donc la ou il y a un triangle)
|
68
|
+
#
|
69
|
+
def nbVoisinsDispo()
|
70
|
+
compteur=0
|
71
|
+
@tabTriangle.each do |t|
|
72
|
+
if(t!=false)
|
73
|
+
compteur+=1
|
74
|
+
end
|
75
|
+
end
|
76
|
+
return compteur
|
77
|
+
end
|
78
|
+
|
79
|
+
|
80
|
+
|
81
|
+
|
82
|
+
|
83
|
+
# compte le nombre de voisins
|
84
|
+
#
|
85
|
+
# === Retour
|
86
|
+
#
|
87
|
+
# entier correspondant au nombre de voisins(triangle ou pas)
|
88
|
+
#
|
89
|
+
def nbVoisins()
|
90
|
+
compteur=0
|
91
|
+
@tabVoisins.each do |v|
|
92
|
+
if(v!=false)
|
93
|
+
compteur+=1
|
94
|
+
end
|
95
|
+
end
|
96
|
+
return compteur
|
97
|
+
end
|
98
|
+
|
99
|
+
|
100
|
+
# compte le nombre de voisins dispo ayant comme etiquette la valeur passé en paramètre
|
101
|
+
#
|
102
|
+
# === Parametres
|
103
|
+
#
|
104
|
+
# * + etiquette + = > l'etiquette à test
|
105
|
+
#
|
106
|
+
# === Retour
|
107
|
+
#
|
108
|
+
# entier sur le nombre de voisins possédant cette etiquette
|
109
|
+
#
|
110
|
+
def nbVoisinsDispoEtiDe(etiquette)
|
111
|
+
compteur=0
|
112
|
+
for i in 0..3 do
|
113
|
+
if(@tabTriangle[i]==true && @tabVoisins[i].etiquetteCase.to_i==etiquette)
|
114
|
+
compteur+=1
|
115
|
+
end
|
116
|
+
end
|
117
|
+
return compteur
|
118
|
+
end
|
119
|
+
|
120
|
+
# compte le nombre de voisins dispo ayant comme valeur leur etiquette- le nombre de liens déja fait équivalent à la valeur passé en paramètre
|
121
|
+
#
|
122
|
+
# === Parametres
|
123
|
+
#
|
124
|
+
# * + etiquette + = > l'etiquette à test
|
125
|
+
# * + tabLien + = > le tableau des liens
|
126
|
+
#
|
127
|
+
# === Retour
|
128
|
+
#
|
129
|
+
# entier sur le nombre de voisins possédant cette etiquette
|
130
|
+
#
|
131
|
+
def nbVoisinsDispoEtiRestanteDe(etiquette,tabLien)
|
132
|
+
compteur=0
|
133
|
+
for i in 0..3 do
|
134
|
+
if(@tabTriangle[i]==true && ( @tabVoisins[i].etiquetteCase.to_i - @tabVoisins[i].nbLienCase(tabLien) )==etiquette)
|
135
|
+
compteur+=1
|
136
|
+
end
|
137
|
+
end
|
138
|
+
return compteur
|
139
|
+
end
|
140
|
+
|
141
|
+
|
142
|
+
# compte le nombre de voisins dispo non relié vers cette case ayant comme valeur leur etiquette- le nombre de liens déja fait équivalent à la valeur passé en paramètre
|
143
|
+
#
|
144
|
+
# === Parametres
|
145
|
+
#
|
146
|
+
# * + etiquette + = > l'etiquette à test
|
147
|
+
# * + tabLien + = > le tableau des liens
|
148
|
+
#
|
149
|
+
# === Retour
|
150
|
+
#
|
151
|
+
# entier sur le nombre de voisins possédant cette etiquette
|
152
|
+
#
|
153
|
+
def nbVoisinsDispoPasRelieEtiRestanteDe(etiquette,tabLien)
|
154
|
+
compteur=0
|
155
|
+
for i in 0..3 do
|
156
|
+
if(@tabTriangle[i]==true && ( @tabVoisins[i].etiquetteCase.to_i - @tabVoisins[i].nbLienCase(tabLien) )==etiquette && nbLienEntreDeuxCases(tabLien,i)==0 )
|
157
|
+
compteur+=1
|
158
|
+
end
|
159
|
+
end
|
160
|
+
return compteur
|
161
|
+
end
|
162
|
+
|
163
|
+
|
164
|
+
# test si un lien est présent vers une case voisine dont l'etiquette est différente du parametre OU si le nombre max de voisins avec
|
165
|
+
# l'etiquette est dépassé et qu'il y en a un autre avec cette meme etiquette et qu'il y a un lien
|
166
|
+
#
|
167
|
+
# === Parametres
|
168
|
+
#
|
169
|
+
# * + etiquette + = > l'etiquette du test
|
170
|
+
# * + nombre + = > le nombre du test
|
171
|
+
# * + tabLien + = > le tableau des liens
|
172
|
+
#
|
173
|
+
# === Retour
|
174
|
+
#
|
175
|
+
# boolean, vrai si il a un lien qui correspond au test
|
176
|
+
#
|
177
|
+
def lienDifDeFois(etiquette,nombre,tabLien)
|
178
|
+
compteurDeEtiqu=0
|
179
|
+
compteurDeAutre=0
|
180
|
+
|
181
|
+
for i in 0..3 do
|
182
|
+
if(@tabTriangle[i]==true && @tabVoisins[i].etiquetteCase.to_i==etiquette)
|
183
|
+
if(compteurDeEtiqu<nombre)
|
184
|
+
compteurDeEtiqu+=1
|
185
|
+
elsif( self.nbLienEntreDeuxCases(tabLien,i)!=0 )
|
186
|
+
compteurDeAutre+=1
|
187
|
+
end
|
188
|
+
elsif(@tabTriangle[i]==true && self.nbLienEntreDeuxCases(tabLien,i)!=0 )
|
189
|
+
compteurDeAutre+=1
|
190
|
+
end
|
191
|
+
end
|
192
|
+
|
193
|
+
if(compteurDeAutre!=0)
|
194
|
+
return true
|
195
|
+
end
|
196
|
+
return false
|
197
|
+
end
|
198
|
+
|
199
|
+
|
200
|
+
|
201
|
+
# compte le nb de voisins déja relié par un moins un lien
|
202
|
+
#
|
203
|
+
# === Parametres
|
204
|
+
#
|
205
|
+
# * + tabLien + = > le tableau des liens
|
206
|
+
#
|
207
|
+
# === Retour
|
208
|
+
#
|
209
|
+
# entier sur le nombre de voisins déja relié
|
210
|
+
#
|
211
|
+
def nbCaseDejaRelie(tabLien)
|
212
|
+
compteur=0
|
213
|
+
for i in 0..3 do
|
214
|
+
if(@tabVoinsins[i]!=false && self.nbLienEntreDeuxCases(tabLien,i)!=0 )
|
215
|
+
compteur+=1
|
216
|
+
end
|
217
|
+
end
|
218
|
+
return compteur
|
219
|
+
end
|
220
|
+
|
221
|
+
|
222
|
+
# compte le nb de cases voisines pas encore reliées par au moins un lien sur cette case
|
223
|
+
#
|
224
|
+
# === Parametres
|
225
|
+
#
|
226
|
+
# * + tabLien + = > le tableau des liens
|
227
|
+
#
|
228
|
+
# === Retour
|
229
|
+
#
|
230
|
+
# entier sur le nombre de voisins non relié
|
231
|
+
#
|
232
|
+
def nbCasePasDejaRelie(tabLien)
|
233
|
+
compteur=0
|
234
|
+
for i in 0..3 do
|
235
|
+
if(@tabTriangle[i]==true && self.nbLienEntreDeuxCases(tabLien,i)==0 )
|
236
|
+
compteur+=1
|
237
|
+
end
|
238
|
+
end
|
239
|
+
return compteur
|
240
|
+
end
|
241
|
+
|
242
|
+
|
243
|
+
|
244
|
+
|
245
|
+
|
246
|
+
# test si au moins un de ses voisins dispo ne peux creer plus qu'un lien
|
247
|
+
#
|
248
|
+
# === Parametres
|
249
|
+
#
|
250
|
+
# * + tabLien + = > le tableau des liens
|
251
|
+
#
|
252
|
+
# === Retour
|
253
|
+
#
|
254
|
+
# boolean sur ce test
|
255
|
+
#
|
256
|
+
def auMoinsUnVoisinDispoUnLienRestant(tabLien)
|
257
|
+
for i in 0..3 do
|
258
|
+
if(@tabTriangle[i]==true && @tabVoisins[i].etiquetteCase.to_i - 1 ==@tabVoisins[i].nbLienCase(tabLien) && @tabVoisins[i].nbVoisinsDispo()==1 )
|
259
|
+
return true
|
260
|
+
end
|
261
|
+
end
|
262
|
+
return false
|
263
|
+
end
|
264
|
+
|
265
|
+
|
266
|
+
|
267
|
+
# Compte le nombre de lien encore possible vers cette case
|
268
|
+
#
|
269
|
+
# === Parametres
|
270
|
+
#
|
271
|
+
# * + tabLien + = > le tableau des liens
|
272
|
+
#
|
273
|
+
# === Retour
|
274
|
+
#
|
275
|
+
# Le nombre de liens possible
|
276
|
+
#
|
277
|
+
def nbLienCasePossible(tabLien)
|
278
|
+
compteur=0
|
279
|
+
for i in 0..3 do
|
280
|
+
if(@tabTriangle[i]==true )
|
281
|
+
val=( 2 - self.nbLienEntreDeuxCases(tabLien,i) )
|
282
|
+
if(val > (@tabVoisins[i].etiquetteCase.to_i-@tabVoisins[i].nbLienCase(tabLien)) )
|
283
|
+
val=(@tabVoisins[i].etiquetteCase.to_i-@tabVoisins[i].nbLienCase(tabLien))
|
284
|
+
end
|
285
|
+
compteur+= val
|
286
|
+
end
|
287
|
+
end
|
288
|
+
return compteur
|
289
|
+
end
|
290
|
+
|
291
|
+
|
292
|
+
# Compte le nombre de liens attachés à une case
|
293
|
+
#
|
294
|
+
# === Parametres
|
295
|
+
#
|
296
|
+
# * + tabLien + = > le tableau des liens
|
297
|
+
#
|
298
|
+
# === Retour
|
299
|
+
#
|
300
|
+
# Le nombre de liens
|
301
|
+
#
|
302
|
+
def nbLienCase(tabLien)
|
303
|
+
compteur=0
|
304
|
+
tabLien.each do |lien|
|
305
|
+
if( self==lien.case1 || self==lien.case2 )
|
306
|
+
compteur+=1
|
307
|
+
end
|
308
|
+
end
|
309
|
+
return compteur
|
310
|
+
end
|
311
|
+
|
312
|
+
# Calcule le nombre de liens entre une case et une direction, les tests sont à faire avant l'appel de la méthode
|
313
|
+
#
|
314
|
+
# === Parametres
|
315
|
+
#
|
316
|
+
# * + posTabTriangle + = > entier correspondant à la direction de création du lien (0==nord,1==est,2==sud,3==ouest)
|
317
|
+
# * + tabLien + = > le tableau de liens de la grille
|
318
|
+
#
|
319
|
+
# === Retour
|
320
|
+
#
|
321
|
+
# Nombre entre 0 et 2 compris
|
322
|
+
#
|
323
|
+
def nbLienEntreDeuxCases(tabLien,posTabTriangle)
|
324
|
+
c=0
|
325
|
+
tabLien.each do |lien|
|
326
|
+
# puts('recherche si le lien existe')
|
327
|
+
if((lien.case1.ligne == self.ligne && lien.case1.colonne == self.colonne) && (lien.case2.ligne == self.tabVoisins[posTabTriangle].ligne && lien.case2.colonne == self.tabVoisins[posTabTriangle].colonne ) )
|
328
|
+
c +=1
|
329
|
+
#puts('il existe un lien de self vers la direction')
|
330
|
+
elsif ((lien.case2.ligne == self.ligne && lien.case2.colonne == self.colonne) && (lien.case1.ligne == self.tabVoisins[posTabTriangle].ligne && lien.case1.colonne == self.tabVoisins[posTabTriangle].colonne ))
|
331
|
+
c +=1
|
332
|
+
#puts('il existe un lien de ladirection vers self')
|
333
|
+
end
|
334
|
+
end
|
335
|
+
return c
|
336
|
+
end
|
337
|
+
|
338
|
+
|
339
|
+
# test si il y a au moins un lien passant entre cette case et un voisin dans une certaine direction
|
340
|
+
#
|
341
|
+
# === Parametres
|
342
|
+
#
|
343
|
+
# * + tabLien + = > le tableau des liens
|
344
|
+
# * + posTabTriangle + = > entier correspondant à la direction de création du lien (0==nord,1==est,2==sud,3==ouest)
|
345
|
+
#
|
346
|
+
# === Retour
|
347
|
+
#
|
348
|
+
# boolean, retourne vrai si un lien passe, faux sinon
|
349
|
+
#
|
350
|
+
def lienPasseEntreDeuxCases(tabLien,posTabTriangle)
|
351
|
+
if(@tabTriangle[posTabTriangle]!=false)
|
352
|
+
tabLien.each do |lien|
|
353
|
+
if( (@ligne>lien.case1.ligne && @ligne<lien.case2.ligne) || (@ligne<lien.case1.ligne && @ligne>lien.case2.ligne) )
|
354
|
+
if(posTabTriangle==1 && lien.case1.colonne-lien.case2.colonne==0 && lien.case1.colonne>@colonne && lien.case1.colonne< @tabVoisins[posTabTriangle].colonne)
|
355
|
+
return true
|
356
|
+
end
|
357
|
+
if(posTabTriangle==3 && lien.case1.colonne-lien.case2.colonne==0 && lien.case1.colonne<@colonne && lien.case1.colonne> @tabVoisins[posTabTriangle].colonne)
|
358
|
+
return true
|
359
|
+
end
|
360
|
+
end
|
361
|
+
if( (@colonne>lien.case1.colonne && @colonne<lien.case2.colonne) || (@colonne<lien.case1.colonne && @colonne>lien.case2.colonne) )
|
362
|
+
if(posTabTriangle==0 && lien.case1.ligne-lien.case2.ligne==0 && lien.case1.ligne<@ligne && lien.case1.ligne> @tabVoisins[posTabTriangle].ligne)
|
363
|
+
return true
|
364
|
+
end
|
365
|
+
if(posTabTriangle==2 && lien.case1.ligne-lien.case2.ligne==0 && lien.case1.ligne>@ligne && lien.case1.ligne< @tabVoisins[posTabTriangle].ligne)
|
366
|
+
return true
|
367
|
+
end
|
368
|
+
end
|
369
|
+
end
|
370
|
+
end
|
371
|
+
return false
|
372
|
+
end
|
373
|
+
|
374
|
+
|
375
|
+
# Création d'un lien à partir de cette case dans une certaine direction
|
376
|
+
#
|
377
|
+
# === Paramètres
|
378
|
+
#
|
379
|
+
# * + posTabTriangle + = > entier qui correspond à la direction de création du lien (0==nord,1==est,2==sud,3==ouest)
|
380
|
+
# * + hypothese + = > boolean qui correspond à l'état du lien, si il est créé ou non lors d'une hypothèse
|
381
|
+
# * + tabLien + = > le tableau de liens de la grille
|
382
|
+
#
|
383
|
+
def creerLien(posTabTriangle,hypothese,tabLien)
|
384
|
+
if(@tabTriangle[posTabTriangle]!=false)
|
385
|
+
l=Lien.creer(self,@tabVoisins[posTabTriangle],hypothese)
|
386
|
+
|
387
|
+
c=self.nbLienEntreDeuxCases(tabLien,posTabTriangle)
|
388
|
+
|
389
|
+
if(c==1)
|
390
|
+
@tabTriangle[posTabTriangle] = false
|
391
|
+
@tabVoisins[posTabTriangle].tabTriangle[(posTabTriangle + 2)%4] = false
|
392
|
+
end
|
393
|
+
tabLien.push(l)
|
394
|
+
|
395
|
+
return l
|
396
|
+
else
|
397
|
+
puts("impossible de creer un lien entre #{@etiquetteCase} et son voisin #{posTabTriangle}")
|
398
|
+
end
|
399
|
+
|
400
|
+
end
|
401
|
+
|
402
|
+
|
403
|
+
# Redéfinition de l'affichage d'une Case
|
404
|
+
def to_s()
|
405
|
+
return "Case en [#{@ligne},#{@colonne}] : etiq[#{@etiquetteCase}]"
|
406
|
+
end
|
407
|
+
|
408
|
+
|
409
|
+
|
410
|
+
end
|