X-Git-Url: https://git.auder.net/doc/current/git-logo.png?a=blobdiff_plain;f=client%2Fsrc%2Fcomponents%2FBaseGame.vue;h=3573643d22a694219dfb8d6f6b875017679419cd;hb=71ef1664983cd58db3c3bbfdf6cb7c362474e9a5;hp=254741d53964848b10bbf12e265a872984ee6d2a;hpb=967a2686ea801d4b33129d78087651451ef1904b;p=vchess.git
diff --git a/client/src/components/BaseGame.vue b/client/src/components/BaseGame.vue
index 254741d5..3573643d 100644
--- a/client/src/components/BaseGame.vue
+++ b/client/src/components/BaseGame.vue
@@ -1,48 +1,99 @@
-.row
- .col-sm-12.col-md-10.col-md-offset-1.col-lg-8.col-lg-offset-2
- input#modalEog.modal(type="checkbox")
- div(role="dialog" aria-labelledby="eogMessage")
- .card.smallpad.small-modal.text-center
- label.modal-close(for="modalEog")
- h3#eogMessage.section {{ endgameMessage }}
- // TODO: or "BoardHex" if this.game.vname in "Hexagonal..."
- Board(:vr="vr" :last-move="lastMove" :analyze="analyze"
- :user-color="game.mycolor" :orientation="orientation"
- :vname="game.vname" @play-move="play")
- .button-group
- button(@click="() => play()") Play
- button(@click="() => undo()") Undo
- button(@click="flip") Flip
- button(@click="gotoBegin") GotoBegin
- button(@click="gotoEnd") GotoEnd
- #fenDiv.section-content(v-if="showFen && !!vr")
- p#fenString.text-center {{ vr.getFen() }}
- #pgnDiv.section-content
- a#download(href="#")
- .button-group
- button#downloadBtn(@click="download") {{ st.tr["Download PGN"] }}
- // TODO: Import game button copy game locally in IndexedDB
- //button Import game
- //MoveList(v-if="showMoves"
- :moves="moves" :cursor="cursor" @goto-move="gotoMove")
+div#baseGame(
+ tabindex=-1
+ @click="focusBg()"
+ @keydown="handleKeys($event)"
+ @wheel="handleScroll($event)"
+)
+ input#modalEog.modal(type="checkbox")
+ div#eogDiv(
+ role="dialog"
+ data-checkbox="modalEog"
+ )
+ .card.text-center
+ label.modal-close(for="modalEog")
+ h3.section {{ endgameMessage }}
+ input#modalAdjust.modal(type="checkbox")
+ div#adjuster(
+ role="dialog"
+ data-checkbox="modalAdjust"
+ )
+ .card.text-center
+ label.modal-close(for="modalAdjust")
+ label(for="boardSize") {{ st.tr["Board size"] }}
+ input#boardSize.slider(
+ type="range"
+ min="0"
+ max="100"
+ value="50"
+ @input="adjustBoard()"
+ )
+ #gameContainer
+ #boardContainer
+ 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"
+ )
+ #turnIndicator(v-if="showTurn") {{ turn }}
+ #controls
+ button(@click="gotoBegin()") <<
+ button(@click="undo()") <
+ button(v-if="canFlip" @click="flip()") ⇅
+ button(@click="play()") >
+ button(@click="gotoEnd()") >>
+ #belowControls
+ #downloadDiv(v-if="allowDownloadPGN")
+ a#download(href="#")
+ button(@click="download()") {{ st.tr["Download"] }} PGN
+ button(onClick="window.doClick('modalAdjust')") ⤢
+ button(
+ v-if="canAnalyze"
+ @click="analyzePosition()"
+ )
+ | {{ st.tr["Analyse"] }}
+ // NOTE: variants pages already have a "Rules" link on top
+ button(
+ v-if="!$route.path.match('/variants/')"
+ @click="showRules()"
+ )
+ | {{ st.tr["Rules"] }}
+ #movesList
+ MoveList(
+ v-if="showMoves != 'none'"
+ :show="showMoves"
+ :score="game.score"
+ :message="game.scoreMsg"
+ :firstNum="firstMoveNumber"
+ :moves="moves"
+ :cursor="cursor"
+ @goto-move="gotoMove"
+ )
+ .clearer
+
+