Hashiparmentier 0.4.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/Hashiparmentier +3 -0
- data/launcher.command +3 -0
- data/lib/Hashiparmentier.rb +8 -0
- data/lib/Hashiparmentier/BDD/BDDDPQADSAHASHIPARMENTIER.db +0 -0
- data/lib/Hashiparmentier/BDD/Base.sqlite +0 -0
- data/lib/Hashiparmentier/Base.sqlite +0 -0
- data/lib/Hashiparmentier/CSS/Style.rb +184 -0
- data/lib/Hashiparmentier/Core/Action.rb +48 -0
- data/lib/Hashiparmentier/Core/Aide.rb +28 -0
- data/lib/Hashiparmentier/Core/Case.rb +92 -0
- data/lib/Hashiparmentier/Core/Chrono.rb +96 -0
- data/lib/Hashiparmentier/Core/Compte.rb +137 -0
- data/lib/Hashiparmentier/Core/ConnectSqlite3.rb +19 -0
- data/lib/Hashiparmentier/Core/Couleur.rb +94 -0
- data/lib/Hashiparmentier/Core/DonnerTechnique.rb +70 -0
- data/lib/Hashiparmentier/Core/Grille.rb +804 -0
- data/lib/Hashiparmentier/Core/Hypothese.rb +43 -0
- data/lib/Hashiparmentier/Core/Ile.rb +330 -0
- data/lib/Hashiparmentier/Core/Jeu.rb +177 -0
- data/lib/Hashiparmentier/Core/Pile.rb +85 -0
- data/lib/Hashiparmentier/Core/Pont.rb +300 -0
- data/lib/Hashiparmentier/Core/Sauvegarde.rb +176 -0
- data/lib/Hashiparmentier/Core/UndoRedo.rb +93 -0
- data/lib/Hashiparmentier/Core/VerifierGrille.rb +51 -0
- data/lib/Hashiparmentier/Data/Golden Bridge.jpg +0 -0
- data/lib/Hashiparmentier/Data/Pont Gaulois.jpg +0 -0
- data/lib/Hashiparmentier/Data/Zubi Zuri.jpg +0 -0
- data/lib/Hashiparmentier/NouvellesGrilles/map-1010-0-001.txt +12 -0
- data/lib/Hashiparmentier/NouvellesGrilles/map-1010-0-002.txt +12 -0
- data/lib/Hashiparmentier/NouvellesGrilles/map-1010-0-003.txt +12 -0
- data/lib/Hashiparmentier/NouvellesGrilles/map-1010-1-001.txt +12 -0
- data/lib/Hashiparmentier/NouvellesGrilles/map-1010-1-002.txt +12 -0
- data/lib/Hashiparmentier/NouvellesGrilles/map-1010-1-003.txt +12 -0
- data/lib/Hashiparmentier/NouvellesGrilles/map-1010-2-001.txt +12 -0
- data/lib/Hashiparmentier/NouvellesGrilles/map-1010-2-002.txt +12 -0
- data/lib/Hashiparmentier/NouvellesGrilles/map-1010-2-003.txt +12 -0
- data/lib/Hashiparmentier/NouvellesGrilles/map-1515-0-001.txt +17 -0
- data/lib/Hashiparmentier/NouvellesGrilles/map-1515-0-002.txt +17 -0
- data/lib/Hashiparmentier/NouvellesGrilles/map-1515-0-003.txt +17 -0
- data/lib/Hashiparmentier/NouvellesGrilles/map-1515-1-001.txt +17 -0
- data/lib/Hashiparmentier/NouvellesGrilles/map-1515-1-002.txt +17 -0
- data/lib/Hashiparmentier/NouvellesGrilles/map-1515-1-003.txt +17 -0
- data/lib/Hashiparmentier/NouvellesGrilles/map-1515-2-001.txt +17 -0
- data/lib/Hashiparmentier/NouvellesGrilles/map-1515-2-002.txt +17 -0
- data/lib/Hashiparmentier/NouvellesGrilles/map-1515-2-003.txt +17 -0
- data/lib/Hashiparmentier/NouvellesGrilles/map-77-0-001.txt +9 -0
- data/lib/Hashiparmentier/NouvellesGrilles/map-77-0-002.txt +9 -0
- data/lib/Hashiparmentier/NouvellesGrilles/map-77-0-003.txt +9 -0
- data/lib/Hashiparmentier/NouvellesGrilles/map-77-1-001.txt +9 -0
- data/lib/Hashiparmentier/NouvellesGrilles/map-77-1-002.txt +9 -0
- data/lib/Hashiparmentier/NouvellesGrilles/map-77-1-003.txt +9 -0
- data/lib/Hashiparmentier/NouvellesGrilles/map-77-2-001.txt +9 -0
- data/lib/Hashiparmentier/NouvellesGrilles/map-77-2-002.txt +9 -0
- data/lib/Hashiparmentier/NouvellesGrilles/map-77-2-003.txt +9 -0
- data/lib/Hashiparmentier/Test/Gemfile +3 -0
- data/lib/Hashiparmentier/Test/MajBDDGrille.rb +10 -0
- data/lib/Hashiparmentier/Test/NotAMalwareDefinitiveEdition +3 -0
- data/lib/Hashiparmentier/Test/NotAMalwareDefinitiveEdition~ +2 -0
- data/lib/Hashiparmentier/Test/NotAMalware~ +2 -0
- data/lib/Hashiparmentier/Test/TestChargerGrille.rb +7 -0
- data/lib/Hashiparmentier/Test/TestCompte.rb +51 -0
- data/lib/Hashiparmentier/Test/TestFenetre.rb +10 -0
- data/lib/Hashiparmentier/Test/TestGrille.rb +27 -0
- data/lib/Hashiparmentier/Test/TestJeu.rb +47 -0
- data/lib/Hashiparmentier/Test/TestPont.rb +73 -0
- data/lib/Hashiparmentier/Test/TestSauvegarde.rb +53 -0
- data/lib/Hashiparmentier/Test/execLinux.sh +8 -0
- data/lib/Hashiparmentier/Test/icone/Custom-Icon-Design-2014-World-Cup-Flags-Japan.ico +0 -0
- data/lib/Hashiparmentier/Test/test.bat +1 -0
- data/lib/Hashiparmentier/Test/testExec +2 -0
- data/lib/Hashiparmentier/Test/testTestExec.rb +3 -0
- data/lib/Hashiparmentier/UI/AideJeuUI.rb +22 -0
- data/lib/Hashiparmentier/UI/AideUI.rb +22 -0
- data/lib/Hashiparmentier/UI/AstucesUI.rb +23 -0
- data/lib/Hashiparmentier/UI/CaseUI.rb +70 -0
- data/lib/Hashiparmentier/UI/ChoixDifficulteUI.rb +45 -0
- data/lib/Hashiparmentier/UI/ChoixGrilleScrollUI.rb +37 -0
- data/lib/Hashiparmentier/UI/ChoixGrilleUI.rb +80 -0
- data/lib/Hashiparmentier/UI/ChoixNomUI.rb +39 -0
- data/lib/Hashiparmentier/UI/ChoixTailleUI.rb +44 -0
- data/lib/Hashiparmentier/UI/Fenetre.rb +32 -0
- data/lib/Hashiparmentier/UI/FenetreFinUI.rb +71 -0
- data/lib/Hashiparmentier/UI/FenetreJeuUI.rb +193 -0
- data/lib/Hashiparmentier/UI/FenetreReglesUI.rb +28 -0
- data/lib/Hashiparmentier/UI/FinUI.rb +91 -0
- data/lib/Hashiparmentier/UI/GrilleJouableUI.rb +47 -0
- data/lib/Hashiparmentier/UI/GrilleUI.rb +140 -0
- data/lib/Hashiparmentier/UI/IleUI.rb +87 -0
- data/lib/Hashiparmentier/UI/JeuUI.rb +161 -0
- data/lib/Hashiparmentier/UI/Menu.rb +322 -0
- data/lib/Hashiparmentier/UI/MenuUI.rb +107 -0
- data/lib/Hashiparmentier/UI/PontUI.rb +135 -0
- data/lib/Hashiparmentier/UI/RacineUI.rb +142 -0
- data/lib/Hashiparmentier/UI/ReglesUI.rb +22 -0
- data/lib/Hashiparmentier/doc/Action.html +259 -0
- data/lib/Hashiparmentier/doc/Aide.html +229 -0
- data/lib/Hashiparmentier/doc/AideUI.html +168 -0
- data/lib/Hashiparmentier/doc/Case.html +473 -0
- data/lib/Hashiparmentier/doc/CaseUI.html +343 -0
- data/lib/Hashiparmentier/doc/ChoixDifficulteUI.html +209 -0
- data/lib/Hashiparmentier/doc/ChoixGrilleScrollUI.html +239 -0
- data/lib/Hashiparmentier/doc/ChoixGrilleUI.html +276 -0
- data/lib/Hashiparmentier/doc/ChoixNomUI.html +215 -0
- data/lib/Hashiparmentier/doc/ChoixTailleUI.html +210 -0
- data/lib/Hashiparmentier/doc/Chrono.html +420 -0
- data/lib/Hashiparmentier/doc/Compte.html +514 -0
- data/lib/Hashiparmentier/doc/Couleur.html +422 -0
- data/lib/Hashiparmentier/doc/DonnerTechnique.html +245 -0
- data/lib/Hashiparmentier/doc/Fenetre.html +179 -0
- data/lib/Hashiparmentier/doc/FenetreJeuUI.html +274 -0
- data/lib/Hashiparmentier/doc/FenetreReglesUI.html +167 -0
- data/lib/Hashiparmentier/doc/FinUI.html +274 -0
- data/lib/Hashiparmentier/doc/Grille.html +2153 -0
- data/lib/Hashiparmentier/doc/GrilleJouableUI.html +229 -0
- data/lib/Hashiparmentier/doc/GrilleUI.html +477 -0
- data/lib/Hashiparmentier/doc/Hypothese.html +248 -0
- data/lib/Hashiparmentier/doc/Ile.html +1103 -0
- data/lib/Hashiparmentier/doc/IleUI.html +244 -0
- data/lib/Hashiparmentier/doc/Jeu.html +179 -0
- data/lib/Hashiparmentier/doc/JeuUI.html +471 -0
- data/lib/Hashiparmentier/doc/Menu.html +667 -0
- data/lib/Hashiparmentier/doc/MenuUI.html +416 -0
- data/lib/Hashiparmentier/doc/Pile.html +383 -0
- data/lib/Hashiparmentier/doc/Pont.html +943 -0
- data/lib/Hashiparmentier/doc/PontUI.html +307 -0
- data/lib/Hashiparmentier/doc/RacineUI.html +387 -0
- data/lib/Hashiparmentier/doc/ReglesUI.html +203 -0
- data/lib/Hashiparmentier/doc/Sauvegarde.html +672 -0
- data/lib/Hashiparmentier/doc/UndoRedo.html +389 -0
- data/lib/Hashiparmentier/doc/VerifierGrille.html +225 -0
- data/lib/Hashiparmentier/doc/created.rid +46 -0
- data/lib/Hashiparmentier/doc/css/fonts.css +167 -0
- data/lib/Hashiparmentier/doc/css/rdoc.css +590 -0
- data/lib/Hashiparmentier/doc/fonts/Lato-Light.ttf +0 -0
- data/lib/Hashiparmentier/doc/fonts/Lato-LightItalic.ttf +0 -0
- data/lib/Hashiparmentier/doc/fonts/Lato-Regular.ttf +0 -0
- data/lib/Hashiparmentier/doc/fonts/Lato-RegularItalic.ttf +0 -0
- data/lib/Hashiparmentier/doc/fonts/SourceCodePro-Bold.ttf +0 -0
- data/lib/Hashiparmentier/doc/fonts/SourceCodePro-Regular.ttf +0 -0
- data/lib/Hashiparmentier/doc/images/add.png +0 -0
- data/lib/Hashiparmentier/doc/images/arrow_up.png +0 -0
- data/lib/Hashiparmentier/doc/images/brick.png +0 -0
- data/lib/Hashiparmentier/doc/images/brick_link.png +0 -0
- data/lib/Hashiparmentier/doc/images/bug.png +0 -0
- data/lib/Hashiparmentier/doc/images/bullet_black.png +0 -0
- data/lib/Hashiparmentier/doc/images/bullet_toggle_minus.png +0 -0
- data/lib/Hashiparmentier/doc/images/bullet_toggle_plus.png +0 -0
- data/lib/Hashiparmentier/doc/images/date.png +0 -0
- data/lib/Hashiparmentier/doc/images/delete.png +0 -0
- data/lib/Hashiparmentier/doc/images/find.png +0 -0
- data/lib/Hashiparmentier/doc/images/loadingAnimation.gif +0 -0
- data/lib/Hashiparmentier/doc/images/macFFBgHack.png +0 -0
- data/lib/Hashiparmentier/doc/images/package.png +0 -0
- data/lib/Hashiparmentier/doc/images/page_green.png +0 -0
- data/lib/Hashiparmentier/doc/images/page_white_text.png +0 -0
- data/lib/Hashiparmentier/doc/images/page_white_width.png +0 -0
- data/lib/Hashiparmentier/doc/images/plugin.png +0 -0
- data/lib/Hashiparmentier/doc/images/ruby.png +0 -0
- data/lib/Hashiparmentier/doc/images/tag_blue.png +0 -0
- data/lib/Hashiparmentier/doc/images/tag_green.png +0 -0
- data/lib/Hashiparmentier/doc/images/transparent.png +0 -0
- data/lib/Hashiparmentier/doc/images/wrench.png +0 -0
- data/lib/Hashiparmentier/doc/images/wrench_orange.png +0 -0
- data/lib/Hashiparmentier/doc/images/zoom.png +0 -0
- data/lib/Hashiparmentier/doc/index.html +154 -0
- data/lib/Hashiparmentier/doc/js/darkfish.js +161 -0
- data/lib/Hashiparmentier/doc/js/jquery.js +4 -0
- data/lib/Hashiparmentier/doc/js/navigation.js +141 -0
- data/lib/Hashiparmentier/doc/js/navigation.js.gz +0 -0
- data/lib/Hashiparmentier/doc/js/search.js +109 -0
- data/lib/Hashiparmentier/doc/js/search_index.js +1 -0
- data/lib/Hashiparmentier/doc/js/search_index.js.gz +0 -0
- data/lib/Hashiparmentier/doc/js/searcher.js +229 -0
- data/lib/Hashiparmentier/doc/js/searcher.js.gz +0 -0
- data/lib/Hashiparmentier/doc/table_of_contents.html +1197 -0
- data/lib/Hashiparmentier/glade/Fin.glade +222 -0
- data/lib/Hashiparmentier/glade/aide.glade +127 -0
- data/lib/Hashiparmentier/glade/aideJeu.glade +143 -0
- data/lib/Hashiparmentier/glade/astuces.glade +1558 -0
- data/lib/Hashiparmentier/glade/fonts/VINERITC.TTF +0 -0
- data/lib/Hashiparmentier/glade/images/18790.ico +0 -0
- data/lib/Hashiparmentier/glade/images/1stars.png +0 -0
- data/lib/Hashiparmentier/glade/images/2stars.png +0 -0
- data/lib/Hashiparmentier/glade/images/3stars.png +0 -0
- data/lib/Hashiparmentier/glade/images/Capture du 2020-02-07 11-48-54.png +0 -0
- data/lib/Hashiparmentier/glade/images/Capture du 2020-02-13 17-54-16.png +0 -0
- data/lib/Hashiparmentier/glade/images/Capture du 2020-02-13 18-00-00.png +0 -0
- data/lib/Hashiparmentier/glade/images/Capture du 2020-02-13 18-01-25.png +0 -0
- data/lib/Hashiparmentier/glade/images/Capture du 2020-02-13 18-17-16.png +0 -0
- data/lib/Hashiparmentier/glade/images/Capture du 2020-02-13 18-17-40.png +0 -0
- data/lib/Hashiparmentier/glade/images/Capture du 2020-02-13 18-18-01.png +0 -0
- data/lib/Hashiparmentier/glade/images/Capture du 2020-02-13 18-18-23.png +0 -0
- data/lib/Hashiparmentier/glade/images/Capture du 2020-02-13 18-19-00.png +0 -0
- data/lib/Hashiparmentier/glade/images/Capture du 2020-02-13 18-19-17.png +0 -0
- data/lib/Hashiparmentier/glade/images/Capture du 2020-02-13 18-19-54.png +0 -0
- data/lib/Hashiparmentier/glade/images/Capture du 2020-02-18 14-24-24.png +0 -0
- data/lib/Hashiparmentier/glade/images/Capture du 2020-02-18 14-24-44.png +0 -0
- data/lib/Hashiparmentier/glade/images/Capture du 2020-02-18 14-24-58.png +0 -0
- data/lib/Hashiparmentier/glade/images/Capture du 2020-02-18 14-25-16.png +0 -0
- data/lib/Hashiparmentier/glade/images/Capture du 2020-02-18 14-25-36.png +0 -0
- data/lib/Hashiparmentier/glade/images/Capture du 2020-02-18 14-25-51.png +0 -0
- data/lib/Hashiparmentier/glade/images/Capture du 2020-02-18 14-26-04.png +0 -0
- data/lib/Hashiparmentier/glade/images/Capture du 2020-02-18 14-26-15.png +0 -0
- data/lib/Hashiparmentier/glade/images/Capture du 2020-02-18 15-01-40.png +0 -0
- data/lib/Hashiparmentier/glade/images/Capture du 2020-02-18 15-02-08.png +0 -0
- data/lib/Hashiparmentier/glade/images/Capture du 2020-02-18 15-02-33.png +0 -0
- data/lib/Hashiparmentier/glade/images/Capture du 2020-02-18 15-02-54.png +0 -0
- data/lib/Hashiparmentier/glade/images/Capture du 2020-02-18 15-03-13.png +0 -0
- data/lib/Hashiparmentier/glade/images/Capture du 2020-02-18 15-03-39.png +0 -0
- data/lib/Hashiparmentier/glade/images/Capture du 2020-02-18 15-03-55.png +0 -0
- data/lib/Hashiparmentier/glade/images/Capture du 2020-02-18 15-04-10.png +0 -0
- data/lib/Hashiparmentier/glade/images/Capture du 2020-02-18 15-33-07.png +0 -0
- data/lib/Hashiparmentier/glade/images/Capture du 2020-02-18 15-36-05.png +0 -0
- data/lib/Hashiparmentier/glade/images/LOGO.png +0 -0
- data/lib/Hashiparmentier/glade/images/LOGpR.png +0 -0
- data/lib/Hashiparmentier/glade/images/LOGpR2.png +0 -0
- data/lib/Hashiparmentier/glade/images/bg.jpg +0 -0
- data/lib/Hashiparmentier/glade/images/ex111.png +0 -0
- data/lib/Hashiparmentier/glade/images/ex112.png +0 -0
- data/lib/Hashiparmentier/glade/images/ex211.png +0 -0
- data/lib/Hashiparmentier/glade/images/ex212.png +0 -0
- data/lib/Hashiparmentier/glade/images/ex221.png +0 -0
- data/lib/Hashiparmentier/glade/images/ex222.png +0 -0
- data/lib/Hashiparmentier/glade/images/ex231.png +0 -0
- data/lib/Hashiparmentier/glade/images/ex232.png +0 -0
- data/lib/Hashiparmentier/glade/images/ex241.png +0 -0
- data/lib/Hashiparmentier/glade/images/ex242.png +0 -0
- data/lib/Hashiparmentier/glade/images/ex251.png +0 -0
- data/lib/Hashiparmentier/glade/images/ex252.png +0 -0
- data/lib/Hashiparmentier/glade/images/ex311.png +0 -0
- data/lib/Hashiparmentier/glade/images/ex312.png +0 -0
- data/lib/Hashiparmentier/glade/images/ex321.png +0 -0
- data/lib/Hashiparmentier/glade/images/ex322.png +0 -0
- data/lib/Hashiparmentier/glade/images/ex331.png +0 -0
- data/lib/Hashiparmentier/glade/images/ex332.png +0 -0
- data/lib/Hashiparmentier/glade/images/ex341.png +0 -0
- data/lib/Hashiparmentier/glade/images/ex342.png +0 -0
- data/lib/Hashiparmentier/glade/images/ex411.png +0 -0
- data/lib/Hashiparmentier/glade/images/ex412.png +0 -0
- data/lib/Hashiparmentier/glade/images/ex413.png +0 -0
- data/lib/Hashiparmentier/glade/images/ex421.png +0 -0
- data/lib/Hashiparmentier/glade/images/ex422.png +0 -0
- data/lib/Hashiparmentier/glade/images/ex423.png +0 -0
- data/lib/Hashiparmentier/glade/images/ex431.png +0 -0
- data/lib/Hashiparmentier/glade/images/ex432.png +0 -0
- data/lib/Hashiparmentier/glade/images/ex433.png +0 -0
- data/lib/Hashiparmentier/glade/images/ex441.png +0 -0
- data/lib/Hashiparmentier/glade/images/ex442.png +0 -0
- data/lib/Hashiparmentier/glade/images/ex443.png +0 -0
- data/lib/Hashiparmentier/glade/images/icone.png +0 -0
- data/lib/Hashiparmentier/glade/images/puzzle-solvation.gif +0 -0
- data/lib/Hashiparmentier/glade/images/wJapStylePlusNet.jpg +0 -0
- data/lib/Hashiparmentier/glade/images/wJapStylePlusNet15.jpg +0 -0
- data/lib/Hashiparmentier/glade/jeu.glade +539 -0
- data/lib/Hashiparmentier/glade/menu.glade +511 -0
- data/lib/Hashiparmentier/glade/regles.glade +856 -0
- data/lib/Hashiparmentier/map.txt +316 -0
- metadata +347 -0
@@ -0,0 +1,22 @@
|
|
1
|
+
require_relative '../CSS/Style.rb'
|
2
|
+
|
3
|
+
class AideUI
|
4
|
+
|
5
|
+
def initialize()
|
6
|
+
@builderAide = Gtk::Builder.new
|
7
|
+
@builderAide.add_from_file("lib/Hashiparmentier/glade/aide.glade")
|
8
|
+
|
9
|
+
@window = @builderAide.get_object("windowAide")
|
10
|
+
|
11
|
+
@window.signal_connect('destroy') { |_widget| Gtk.main_quit }
|
12
|
+
@window.style_context.add_provider(@@CSS_AIDE, Gtk::StyleProvider::PRIORITY_USER)
|
13
|
+
|
14
|
+
@btnQuitter = @builderAide.get_object("btnQuitter")
|
15
|
+
@btnQuitter.signal_connect('clicked') { |_widget| @window.destroy() }
|
16
|
+
@btnQuitter.style_context.add_provider(@@CSS_BUTTON_ROSE, Gtk::StyleProvider::PRIORITY_USER)
|
17
|
+
|
18
|
+
|
19
|
+
@window.show_all()
|
20
|
+
Gtk.main()
|
21
|
+
end
|
22
|
+
end
|
@@ -0,0 +1,23 @@
|
|
1
|
+
require_relative '../CSS/Style.rb'
|
2
|
+
|
3
|
+
class AstucesUI
|
4
|
+
|
5
|
+
def initialize()
|
6
|
+
@builderAide = Gtk::Builder.new
|
7
|
+
@builderAide.add_from_file("lib/Hashiparmentier/glade/astuces.glade")
|
8
|
+
|
9
|
+
@window = @builderAide.get_object("windowAstuces")
|
10
|
+
@window.maximize
|
11
|
+
|
12
|
+
@window.signal_connect('destroy') { |_widget| Gtk.main_quit }
|
13
|
+
@window.style_context.add_provider(@@CSS_ASTUCES, Gtk::StyleProvider::PRIORITY_USER)
|
14
|
+
|
15
|
+
@btnQuitter = @builderAide.get_object("btnQuitter")
|
16
|
+
@btnQuitter.signal_connect('clicked') { |_widget| @window.destroy() }
|
17
|
+
@btnQuitter.style_context.add_provider(@@CSS_BUTTON_ROSE, Gtk::StyleProvider::PRIORITY_USER)
|
18
|
+
|
19
|
+
|
20
|
+
@window.show_all()
|
21
|
+
Gtk.main()
|
22
|
+
end
|
23
|
+
end
|
@@ -0,0 +1,70 @@
|
|
1
|
+
|
2
|
+
require_relative "../Core/Case.rb"
|
3
|
+
|
4
|
+
require "gtk3"
|
5
|
+
|
6
|
+
##
|
7
|
+
# Auteur:: Brabant Mano
|
8
|
+
# Version:: 0.1
|
9
|
+
# Date:: 09/04/2020
|
10
|
+
#
|
11
|
+
#Cette classe permet d'afficher une case de la grille
|
12
|
+
class CaseUI < Gtk::DrawingArea
|
13
|
+
|
14
|
+
#@casee => La case que l'on va afficher
|
15
|
+
attr_reader :casee
|
16
|
+
|
17
|
+
private_class_method :new
|
18
|
+
|
19
|
+
##
|
20
|
+
#Ce constructeur permet de créer un nouveau afficheur de case
|
21
|
+
#param::
|
22
|
+
# * casee La case à afficher
|
23
|
+
# * taille La taille d'une case (en pixels)
|
24
|
+
def CaseUI.creer(casee, taille = 40)
|
25
|
+
new(casee, taille)
|
26
|
+
end
|
27
|
+
|
28
|
+
#:nodoc:
|
29
|
+
def initialize(casee, taille = 40)
|
30
|
+
|
31
|
+
super()
|
32
|
+
@casee = casee
|
33
|
+
@taille = taille
|
34
|
+
|
35
|
+
end
|
36
|
+
#:doc:
|
37
|
+
|
38
|
+
##
|
39
|
+
#Cette méthode permet de simuler le clic sur la case
|
40
|
+
def clickOn()
|
41
|
+
@casee.clickOn()
|
42
|
+
end
|
43
|
+
|
44
|
+
##
|
45
|
+
#Cette méthode permet d'afficher la case
|
46
|
+
def draw(window)
|
47
|
+
|
48
|
+
cr = window.create_cairo_context
|
49
|
+
|
50
|
+
taille = @taille/20
|
51
|
+
|
52
|
+
cr.set_source_rgb(248/255.0, 236/255.0, 194/255.0)
|
53
|
+
cr.rectangle(@taille * @casee.posY() + taille, @taille * @casee.posX() + taille, @taille - taille * 2, @taille - taille * 2)
|
54
|
+
cr.fill()
|
55
|
+
|
56
|
+
end
|
57
|
+
|
58
|
+
##
|
59
|
+
#Cette méthode permet de savoir si la case que l'on affiche est une ile
|
60
|
+
def estIle?()
|
61
|
+
return @casee.estIle?()
|
62
|
+
end
|
63
|
+
|
64
|
+
##
|
65
|
+
#Cette méthode permet de savoir si la case que l'on affiche est un pont
|
66
|
+
def estPont?()
|
67
|
+
return @casee.estPont?()
|
68
|
+
end
|
69
|
+
|
70
|
+
end
|
@@ -0,0 +1,45 @@
|
|
1
|
+
|
2
|
+
|
3
|
+
|
4
|
+
require 'gtk3'
|
5
|
+
|
6
|
+
##
|
7
|
+
# PAS UTILISE DANS LE VERSION FINALE
|
8
|
+
# Auteur:: Brabant Mano
|
9
|
+
# Version:: 0.1
|
10
|
+
# Date:: 09/04/2020
|
11
|
+
#
|
12
|
+
#Cette classe permet à l'utilisateur de choisir entre plusieurs difficulté
|
13
|
+
class ChoixDifficulteUI < Gtk::Box
|
14
|
+
|
15
|
+
attr_reader :menu
|
16
|
+
|
17
|
+
|
18
|
+
def initialize(menu)
|
19
|
+
|
20
|
+
super(:vertical, 0)
|
21
|
+
|
22
|
+
@menu = menu
|
23
|
+
@boutons = Gtk::Box.new(:horizontal, 0)
|
24
|
+
|
25
|
+
for i in [[0, 'Facile'], [1, 'Normal'], [2, 'Difficile']]
|
26
|
+
|
27
|
+
temp = Gtk::Button.new(:label => "#{i[1]}")
|
28
|
+
temp.name=i[0].to_s()
|
29
|
+
temp.signal_connect "clicked" do |widget, event|
|
30
|
+
@menu.difficulte=widget.name.to_i()
|
31
|
+
end
|
32
|
+
@boutons.pack_start(temp, :expand => true, :fill => true)
|
33
|
+
|
34
|
+
end
|
35
|
+
|
36
|
+
temp = Gtk::Box.new(:vertical, 0)
|
37
|
+
|
38
|
+
temp.pack_start(Gtk::Label.new("Difficulté de la grille"), :expand => true, :fill => true)
|
39
|
+
temp.pack_start(@boutons, :expand => true, :fill => true)
|
40
|
+
|
41
|
+
pack_start(temp, :expand => true, :fill => true)
|
42
|
+
|
43
|
+
end
|
44
|
+
|
45
|
+
end
|
@@ -0,0 +1,37 @@
|
|
1
|
+
|
2
|
+
|
3
|
+
|
4
|
+
require_relative "../UI/ChoixGrilleUI.rb"
|
5
|
+
require 'gtk3'
|
6
|
+
|
7
|
+
##
|
8
|
+
# Auteur:: Brabant Mano
|
9
|
+
# Version:: 0.1
|
10
|
+
# Date:: 09/04/2020
|
11
|
+
#
|
12
|
+
#Cette classe permet de créer une barre de défilement pour un ChoixGrilleUI
|
13
|
+
class ChoixGrilleScrollUI < Gtk::ScrolledWindow
|
14
|
+
|
15
|
+
#@choixGrille => Le ChoixGrilleUI à faire défiler
|
16
|
+
attr_reader :choixGrille
|
17
|
+
|
18
|
+
##
|
19
|
+
#Ce constructeur permet de créer une nouvelle barre de défilement
|
20
|
+
#param::
|
21
|
+
# * grille Le ChoixGrilleUI à défiler
|
22
|
+
def initialize(grille)
|
23
|
+
|
24
|
+
super()
|
25
|
+
@choixGrille = grille
|
26
|
+
self.set_policy(Gtk::PolicyType::AUTOMATIC, Gtk::PolicyType::AUTOMATIC)
|
27
|
+
self.add_with_viewport(@choixGrille)
|
28
|
+
|
29
|
+
end
|
30
|
+
|
31
|
+
##
|
32
|
+
#Cette méthode permet d'appeler chargerGrille du ChoixGrilleUI
|
33
|
+
def chargerGrille(nomCompte, taille, difficulte)
|
34
|
+
@choixGrille.chargerGrille(nomCompte, taille, difficulte)
|
35
|
+
end
|
36
|
+
|
37
|
+
end
|
@@ -0,0 +1,80 @@
|
|
1
|
+
|
2
|
+
require_relative '../Core/Sauvegarde.rb'
|
3
|
+
require_relative '../Core/Compte.rb'
|
4
|
+
require_relative '../Core/ConnectSqlite3.rb'
|
5
|
+
|
6
|
+
require_relative '../UI/GrilleUI.rb'
|
7
|
+
require 'gtk3'
|
8
|
+
|
9
|
+
|
10
|
+
##
|
11
|
+
# Auteur:: Brabant Mano
|
12
|
+
# Version:: 0.1
|
13
|
+
# Date:: 09/04/2020
|
14
|
+
#
|
15
|
+
#Cette classe permet à l'utilisateur de choisir entre plusieurs grilles proposées
|
16
|
+
class ChoixGrilleUI < Gtk::Box
|
17
|
+
|
18
|
+
#@racine => L'objet auquel on va envoyer la grille que l'on a choisi (il doit definir commencerPartie(grille, nomCompte))
|
19
|
+
attr_reader :racine
|
20
|
+
|
21
|
+
##
|
22
|
+
#Ce constructeur permet de créer un nouveau ChoixGrilleUI
|
23
|
+
#param::
|
24
|
+
# * racine Un objet qui doit définir une méthode commencerPartie(grille, nomCompte) qui sera appelée quand l'utilisateur aura choisi une grille
|
25
|
+
def initialize(racine)
|
26
|
+
|
27
|
+
super(:vertical , 20)
|
28
|
+
@racine = racine
|
29
|
+
|
30
|
+
end
|
31
|
+
|
32
|
+
##
|
33
|
+
#Cette méthode permet de charger un ensemble de grille pour les montrer à l'utilisateur
|
34
|
+
#param::
|
35
|
+
# * nomcompte Le nom du compte dont-on va récuperer les grilles
|
36
|
+
# * taille La taille des grilles à récuperer
|
37
|
+
# * difficulte La difficulte des grilles à récuperer
|
38
|
+
def chargerGrille(nomCompte, taille, difficulte)
|
39
|
+
#puts "dans charger grille choixGRilleUI"
|
40
|
+
#puts "nomCompte", nomCompte,"taille", taille,"difficulte", difficulte
|
41
|
+
|
42
|
+
tailleCase = 40
|
43
|
+
|
44
|
+
liste = Sauvegarde.liste(Compte.recuperer_ou_creer(nomCompte), taille, difficulte)
|
45
|
+
|
46
|
+
box = Gtk::Box.new(:horizontal, 30)
|
47
|
+
liste.each_with_index do |s, i|
|
48
|
+
#puts "liste.each"
|
49
|
+
bouton = Gtk::Button.new(:label => "Réinitialiser")
|
50
|
+
temp = GrilleUI.new(s.getGrille(), tailleCase)
|
51
|
+
|
52
|
+
bouton.signal_connect "clicked" do |widget, event|
|
53
|
+
temp.grille().recommencer()
|
54
|
+
temp.grille().sauvegarder(Compte.recuperer(nomCompte))
|
55
|
+
end
|
56
|
+
|
57
|
+
temp.signal_connect "button-press-event" do
|
58
|
+
grilleChoisie(temp.grille(), nomCompte)
|
59
|
+
end
|
60
|
+
temp.add_events([:button_press_mask])
|
61
|
+
|
62
|
+
box.add(temp)
|
63
|
+
# box.add(bouton)
|
64
|
+
|
65
|
+
end
|
66
|
+
|
67
|
+
add(Gtk::Label.new("Veuillez choisir une grille"))
|
68
|
+
add(box)
|
69
|
+
|
70
|
+
show_all
|
71
|
+
|
72
|
+
end
|
73
|
+
|
74
|
+
|
75
|
+
private def grilleChoisie(grille, nomCompte)
|
76
|
+
@racine.commencerPartie(grille, nomCompte)
|
77
|
+
end
|
78
|
+
|
79
|
+
|
80
|
+
end
|
@@ -0,0 +1,39 @@
|
|
1
|
+
|
2
|
+
|
3
|
+
|
4
|
+
require 'gtk3'
|
5
|
+
|
6
|
+
|
7
|
+
##
|
8
|
+
# PAS UTILISE DANS LE VERSION FINALE
|
9
|
+
# Auteur:: Brabant Mano
|
10
|
+
# Version:: 0.1
|
11
|
+
# Date:: 09/04/2020
|
12
|
+
#
|
13
|
+
#Permet de choisir une nom
|
14
|
+
class ChoixNomUI < Gtk::Box
|
15
|
+
|
16
|
+
attr_reader :menu
|
17
|
+
attr_reader :entry
|
18
|
+
|
19
|
+
def initialize(menu)
|
20
|
+
|
21
|
+
super(:vertical, 0)
|
22
|
+
|
23
|
+
@menu = menu
|
24
|
+
|
25
|
+
@entry = Gtk::Entry.new()
|
26
|
+
@label = Gtk::Label.new("Prénom")
|
27
|
+
|
28
|
+
temp = Gtk::Box.new(:horizontal, 0)
|
29
|
+
|
30
|
+
temp.pack_start(Gtk::Alignment.new(0,0,0,0), :expand => true, :fill => true)
|
31
|
+
temp.pack_start(@label)
|
32
|
+
temp.pack_start(@entry, :fill => true)
|
33
|
+
temp.pack_start(Gtk::Alignment.new(0,0,0,0), :expand => true, :fill => true)
|
34
|
+
|
35
|
+
pack_start(temp, :expand => true, :fill => true)
|
36
|
+
|
37
|
+
end
|
38
|
+
|
39
|
+
end
|
@@ -0,0 +1,44 @@
|
|
1
|
+
|
2
|
+
|
3
|
+
require 'gtk3'
|
4
|
+
|
5
|
+
##
|
6
|
+
# PAS UTILISE DANS LE VERSION FINALE
|
7
|
+
# Auteur:: Brabant Mano
|
8
|
+
# Version:: 0.1
|
9
|
+
# Date:: 09/04/2020
|
10
|
+
#
|
11
|
+
#Permet de choisir une taille
|
12
|
+
class ChoixTailleUI < Gtk::Box
|
13
|
+
|
14
|
+
attr_reader :menu
|
15
|
+
|
16
|
+
def initialize(menu)
|
17
|
+
|
18
|
+
super(:vertical, 0)
|
19
|
+
|
20
|
+
@menu = menu
|
21
|
+
@boutons = Gtk::Box.new(:horizontal, 0)
|
22
|
+
|
23
|
+
for i in [7, 10, 15]
|
24
|
+
|
25
|
+
temp = Gtk::Button.new(:label => "#{i}*#{i}")
|
26
|
+
temp.name=i.to_s()
|
27
|
+
temp.signal_connect "clicked" do |widget, event|
|
28
|
+
@menu.taille=widget.name.to_i()
|
29
|
+
end
|
30
|
+
@boutons.pack_start(temp, :expand => true, :fill => true)
|
31
|
+
|
32
|
+
end
|
33
|
+
|
34
|
+
temp = Gtk::Box.new(:vertical, 0)
|
35
|
+
|
36
|
+
temp.pack_start(Gtk::Label.new("Taille de la grille"), :expand => true, :fill => true)
|
37
|
+
temp.pack_start(@boutons, :expand => true, :fill => true)
|
38
|
+
|
39
|
+
pack_start(temp, :expand => true, :fill => true)
|
40
|
+
|
41
|
+
|
42
|
+
end
|
43
|
+
|
44
|
+
end
|
@@ -0,0 +1,32 @@
|
|
1
|
+
|
2
|
+
require_relative '../UI/RacineUI.rb'
|
3
|
+
require 'gtk3'
|
4
|
+
|
5
|
+
##
|
6
|
+
# PAS UTILISE DANS LE VERSION FINALE
|
7
|
+
# Auteur:: Brabant Mano
|
8
|
+
# Version:: 0.1
|
9
|
+
# Date:: 09/04/2020
|
10
|
+
#
|
11
|
+
#Une fenetre ou va apparaitre le jeu
|
12
|
+
class Fenetre < Gtk::Window
|
13
|
+
|
14
|
+
def initialize()
|
15
|
+
|
16
|
+
super()
|
17
|
+
set_title('Hashiparmentier')
|
18
|
+
|
19
|
+
signal_connect "destroy" do
|
20
|
+
Gtk.main_quit
|
21
|
+
end
|
22
|
+
|
23
|
+
set_window_position Gtk::WindowPosition::CENTER
|
24
|
+
|
25
|
+
add(RacineUI.new())
|
26
|
+
|
27
|
+
maximize
|
28
|
+
show_all
|
29
|
+
|
30
|
+
end
|
31
|
+
|
32
|
+
end
|
@@ -0,0 +1,71 @@
|
|
1
|
+
require 'gtk3'
|
2
|
+
|
3
|
+
require_relative "../UI/Menu.rb"
|
4
|
+
|
5
|
+
require_relative "../CSS/Style.rb"
|
6
|
+
|
7
|
+
class FenetreFinUI
|
8
|
+
|
9
|
+
def initialize(grille,compte,window)
|
10
|
+
|
11
|
+
@grille = grille
|
12
|
+
window.destroy()
|
13
|
+
@builderFin = Gtk::Builder.new
|
14
|
+
@builderFin.add_from_file("lib/Hashiparmentier/glade/Fin.glade")
|
15
|
+
|
16
|
+
@windowFin = @builderFin.get_object("FenetreFin")
|
17
|
+
@windowFin.style_context.add_provider(@@CSS_FIN, Gtk::StyleProvider::PRIORITY_USER)
|
18
|
+
@windowFin.signal_connect('destroy') { |_widget|
|
19
|
+
@grille.recommencer()
|
20
|
+
@grille.sauvegarder(compte)
|
21
|
+
@windowFin.destroy()
|
22
|
+
Gtk.main_quit }
|
23
|
+
|
24
|
+
@imgEtoile = @builderFin.get_object("imgScore")
|
25
|
+
if(@grille.score>(500*@grille.tailleX * 0.7))
|
26
|
+
@imgEtoile.style_context.add_provider(@@CSS_BG_SCORE3, Gtk::StyleProvider::PRIORITY_USER)
|
27
|
+
elsif(@grille.score>(500*@grille.tailleX / 0.4))
|
28
|
+
@imgEtoile.style_context.add_provider(@@CSS_BG_SCORE2, Gtk::StyleProvider::PRIORITY_USER)
|
29
|
+
else
|
30
|
+
@imgEtoile.style_context.add_provider(@@CSS_BG_SCORE1, Gtk::StyleProvider::PRIORITY_USER)
|
31
|
+
end
|
32
|
+
#fonctions
|
33
|
+
@clickRetour = @builderFin.get_object("button1")
|
34
|
+
@clickRetour.style_context.add_provider(@@CSS_BTN_JEU, Gtk::StyleProvider::PRIORITY_USER)
|
35
|
+
@clickRetour.signal_connect('clicked'){
|
36
|
+
@grille.recommencer()
|
37
|
+
@grille.sauvegarder(compte)
|
38
|
+
@windowFin.destroy()
|
39
|
+
Menu.new()
|
40
|
+
Gtk.main_quit
|
41
|
+
}
|
42
|
+
|
43
|
+
@clickQuitter = @builderFin.get_object("button3")
|
44
|
+
@clickQuitter.style_context.add_provider(@@CSS_BTN_JEU, Gtk::StyleProvider::PRIORITY_USER)
|
45
|
+
@clickQuitter.signal_connect('clicked'){
|
46
|
+
@grille.recommencer()
|
47
|
+
@grille.sauvegarder(compte)
|
48
|
+
@windowFin.destroy()
|
49
|
+
Gtk.main_quit
|
50
|
+
}
|
51
|
+
|
52
|
+
|
53
|
+
@clickMapSuivante = @builderFin.get_object("button2")
|
54
|
+
@clickMapSuivante.style_context.add_provider(@@CSS_BTN_JEU, Gtk::StyleProvider::PRIORITY_USER)
|
55
|
+
@clickMapSuivante.signal_connect('clicked'){
|
56
|
+
@grille.recommencer()
|
57
|
+
@grille.sauvegarder(compte)
|
58
|
+
puts "mode aventure MAJ"
|
59
|
+
}
|
60
|
+
|
61
|
+
@labelHsJoueur = @builderFin.get_object("valeurHS")
|
62
|
+
@labelHsJoueur.set_label(@grille.getMeilleurScore(compte).to_s)
|
63
|
+
|
64
|
+
@labelScoreJoueur = @builderFin.get_object("scoreJoueur")
|
65
|
+
@labelScoreJoueur.set_label(@grille.score.to_s)
|
66
|
+
|
67
|
+
@windowFin.show_all()
|
68
|
+
# Appel de la gestion des signaux
|
69
|
+
Gtk.main()
|
70
|
+
end
|
71
|
+
end
|