X-Git-Url: https://git.auder.net/?a=blobdiff_plain;ds=sidebyside;f=client%2Fsrc%2Fcomponents%2FBaseGame.vue;h=5ab02fad5b1ef5389eaa48a82d457b70b9f49c95;hb=e90bafa8fb5fb7641728231bf2398590d96c672a;hp=d36c6326a31bd9eb7f32a11962d7fb38fadb5b39;hpb=f44fd3bf754c113aa6b9ab241cbf24933877ae31;p=vchess.git
diff --git a/client/src/components/BaseGame.vue b/client/src/components/BaseGame.vue
index d36c6326..5ab02fad 100644
--- a/client/src/components/BaseGame.vue
+++ b/client/src/components/BaseGame.vue
@@ -1,70 +1,87 @@
-div#baseGame(tabindex=-1 @click="() => focusBg()"
- @keydown="handleKeys" @wheel="handleScroll")
+div#baseGame
input#modalEog.modal(type="checkbox")
- div#eogDiv(role="dialog" data-checkbox="modalEog" aria-labelledby="eogMessage")
- .card.smallpad.small-modal.text-center
+ div#eogDiv(
+ role="dialog"
+ data-checkbox="modalEog"
+ )
+ .card.text-center
label.modal-close(for="modalEog")
- h3#eogMessage.section {{ endgameMessage }}
- input#modalAdjust.modal(type="checkbox")
- div#adjuster(role="dialog" data-checkbox="modalAdjust" aria-labelledby="labelAdjust")
- .card.smallpad.small-modal.text-center
- label.modal-close(for="modalAdjust")
- label#labelAdjust(for="boardSize") {{ st.tr["Board size"] }}
- input#boardSize.slider(type="range" min="0" max="100" value="50"
- @input="adjustBoard")
+ h3.section {{ endgameMessage }}
#gameContainer
#boardContainer
- Board(:vr="vr" :last-move="lastMove" :analyze="analyze"
- :user-color="game.mycolor" :orientation="orientation"
- :vname="game.vname" :incheck="incheck" @play-move="play")
- #turnIndicator(v-if="game.vname=='Dark' && game.score=='*'")
- | {{ turn }}
- #controls
- button(@click="gotoBegin") <<
- button(@click="() => undo()") <
- button(@click="flip") ⇅
- button(@click="() => play()") >
- button(@click="gotoEnd") >>
- #pgnDiv
- #downloadDiv(v-if="game.vname!='Dark' || game.score!='*'")
- a#download(href="#")
- button(@click="download") {{ st.tr["Download"] }} PGN
- button(onClick="doClick('modalAdjust')") ⤢
- button(v-if="game.vname!='Dark' && game.mode!='analyze'"
- @click="analyzePosition")
- | {{ st.tr["Analyze"] }}
- // NOTE: rather ugly hack to avoid showing twice "rules" link...
- button(v-if="!$route.path.match('/variants/')" @click="showRules")
- | {{ st.tr["Rules"] }}
+ Board(
+ ref="board"
+ :vr="vr"
+ :last-move="lastMove"
+ :analyze="game.mode=='analyze'"
+ :score="game.score"
+ :user-color="game.mycolor"
+ :orientation="orientation"
+ :vname="game.vname"
+ :incheck="incheck"
+ @play-move="play"
+ @click-square="clickSquare"
+ )
+ #turnIndicator(v-if="showTurn") {{ turn }}
+ #controls.button-group
+ button(@click="gotoBegin()")
+ img.inline(src="/images/icons/fast-forward_rev.svg")
+ button(@click="undo()")
+ img.inline(src="/images/icons/play_rev.svg")
+ button(v-if="canFlip" @click="flip()")
+ img.inline(src="/images/icons/flip.svg")
+ button(
+ @click="runAutoplay()"
+ :class="{'in-autoplay': autoplay}"
+ )
+ img.inline(src="/images/icons/autoplay.svg")
+ button(@click="play()")
+ img.inline(src="/images/icons/play.svg")
+ button(@click="gotoEnd()")
+ img.inline(src="/images/icons/fast-forward.svg")
#movesList
- MoveList(v-if="showMoves" :score="game.score" :message="game.scoreMsg"
- :firstNum="firstMoveNumber" :moves="moves" :cursor="cursor"
- @goto-move="gotoMove")
+ MoveList(
+ :show="showMoves"
+ :canAnalyze="canAnalyze"
+ :canDownload="allowDownloadPGN"
+ :score="game.score"
+ :message="game.scoreMsg"
+ :firstNum="firstMoveNumber"
+ :moves="moves"
+ :cursor="cursor"
+ @download="download"
+ @showrules="showRules"
+ @analyze="analyzePosition"
+ @goto-move="gotoMove"
+ @reset-arrows="resetArrows"
+ )
.clearer