Déplacer la génération en barre dédiée en haut à droite de la carte

Les boutons dans la barre d'icônes du coin bas droit restaient
introuvables : ils forment maintenant une barre horizontale accentuée
en haut à droite (+ Zone, ⤒ Compléter), la carte Génération s'ouvrant
juste en dessous.
This commit is contained in:
Antoine Jacquin
2026-09-23 23:32:12 +02:00
parent cfc3e806ba
commit a2bf478379

View File

@ -142,9 +142,11 @@ _MAP_HTML = """<!DOCTYPE html>
</div> </div>
</div> </div>
<nav id="gentools">
<button id="btnZone" title="Générer une nouvelle zone : dessiner un rectangle, téléchargement IGN + traitement" hidden>+ Zone</button>
<button id="btnComplete" title="Compléter : traiter toutes les dalles déjà téléchargées qui manquent des couches choisies" hidden>⤒ Compléter</button>
</nav>
<nav id="tools"> <nav id="tools">
<button id="btnZone" class="wide" title="Générer une nouvelle zone : dessiner un rectangle, téléchargement IGN + traitement" hidden>+ Zone</button>
<button id="btnComplete" class="wide" title="Compléter : traiter toutes les dalles déjà téléchargées qui manquent des couches choisies" hidden>⤒ Compléter</button>
<button id="zoomIn" title="Zoomer">+</button> <button id="zoomIn" title="Zoomer">+</button>
<button id="zoomOut" title="Dézoomer">−</button> <button id="zoomOut" title="Dézoomer">−</button>
<button id="zoomFit" title="Recadrer sur les données">⤢</button> <button id="zoomFit" title="Recadrer sur les données">⤢</button>
@ -185,7 +187,7 @@ html, body { height: 100%; overflow: hidden; background: var(--bg); color: var(-
backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); } backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); }
#layercard { left: 12px; bottom: 12px; width: 320px; max-width: calc(100vw - 24px); } #layercard { left: 12px; bottom: 12px; width: 320px; max-width: calc(100vw - 24px); }
#tilecard { left: 12px; top: 12px; width: 320px; max-width: calc(100vw - 24px); } #tilecard { left: 12px; top: 12px; width: 320px; max-width: calc(100vw - 24px); }
#usecard { left: 50%; top: 12px; transform: translateX(-50%); width: min(560px, calc(100vw - 24px)); } #usecard { left: 50%; top: 12px; transform: translateX(-50%); width: min(560px, calc(100vw - 24px)); z-index: 910; }
.card-head { display: flex; align-items: center; gap: 8px; padding: 8px 10px; border-bottom: 1px solid var(--border); } .card-head { display: flex; align-items: center; gap: 8px; padding: 8px 10px; border-bottom: 1px solid var(--border); }
.card-title { font-size: 12px; font-weight: 700; letter-spacing: 0.04em; text-transform: uppercase; color: var(--muted); } .card-title { font-size: 12px; font-weight: 700; letter-spacing: 0.04em; text-transform: uppercase; color: var(--muted); }
.card-stat { margin-left: auto; font-size: 11px; color: var(--muted); } .card-stat { margin-left: auto; font-size: 11px; color: var(--muted); }
@ -262,12 +264,9 @@ input[type="range"]::-webkit-slider-thumb { -webkit-appearance: none; width: 13p
input[type="range"]::-moz-range-track { height: 4px; border-radius: 2px; background: rgba(255,255,255,0.18); } input[type="range"]::-moz-range-track { height: 4px; border-radius: 2px; background: rgba(255,255,255,0.18); }
input[type="range"]::-moz-range-thumb { width: 10px; height: 10px; border-radius: 50%; background: var(--accent); border: 2px solid #0b0e13; } input[type="range"]::-moz-range-thumb { width: 10px; height: 10px; border-radius: 50%; background: var(--accent); border: 2px solid #0b0e13; }
#tools { position: fixed; right: 12px; bottom: 12px; z-index: 900; display: flex; flex-direction: column; gap: 6px; align-items: stretch; } #tools { position: fixed; right: 12px; bottom: 12px; z-index: 900; display: flex; flex-direction: column; gap: 6px; }
#tools button { width: 38px; height: 38px; padding: 0; font-size: 17px; background: var(--card); #tools button { width: 38px; height: 38px; padding: 0; font-size: 17px; background: var(--card);
border: 1px solid var(--border); box-shadow: 0 4px 16px rgba(0,0,0,0.4); } border: 1px solid var(--border); box-shadow: 0 4px 16px rgba(0,0,0,0.4); }
/* Boutons de génération : texte explicite, pleine largeur de la barre */
#tools button.wide { width: auto; min-width: 38px; height: 34px; padding: 0 10px;
font-size: 12px; font-weight: 600; color: var(--accent); white-space: nowrap; }
#gps.busy { color: var(--accent); border-color: var(--accent); } #gps.busy { color: var(--accent); border-color: var(--accent); }
.toast { position: fixed; left: 50%; bottom: 76px; transform: translateX(-50%); z-index: 1000; .toast { position: fixed; left: 50%; bottom: 76px; transform: translateX(-50%); z-index: 1000;
background: var(--card); border: 1px solid var(--border); border-radius: 8px; background: var(--card); border: 1px solid var(--border); border-radius: 8px;
@ -286,9 +285,18 @@ input[type="range"]::-moz-range-thumb { width: 10px; height: 10px; border-radius
.leaflet-control-attribution a { color: var(--accent) !important; } .leaflet-control-attribution a { color: var(--accent) !important; }
/* --- génération de tuiles ------------------------------------------------ */ /* --- génération de tuiles ------------------------------------------------ */
#gencard { right: 12px; top: 12px; width: 340px; max-width: calc(100vw - 24px); } #gencard { right: 12px; top: 56px; width: 340px; max-width: calc(100vw - 24px); }
body.drawing { cursor: crosshair !important; } body.drawing { cursor: crosshair !important; }
body.drawing .leaflet-container { cursor: crosshair !important; } body.drawing .leaflet-container { cursor: crosshair !important; }
/* Barre de génération : en HAUT à droite de l'écran, boutons accentués —
c'est l'entrée principale du traitement, elle ne se confond pas avec les
icônes de navigation (zoom/GPS) du coin bas droit. */
#gentools { position: fixed; top: 12px; right: 12px; z-index: 900; display: flex; gap: 8px; }
#gentools button { background: var(--card); color: var(--accent); border: 1px solid var(--accent);
border-radius: 10px; padding: 8px 14px; font: inherit; font-size: 13px; font-weight: 600;
box-shadow: 0 4px 16px rgba(0,0,0,0.4); }
#gentools button:hover { background: var(--accent); color: #0b0e13; }
#gentools button.accent { background: var(--accent); color: #0b0e13; }
.gen-row { display: grid; grid-template-columns: 92px minmax(0, 1fr); gap: 6px; .gen-row { display: grid; grid-template-columns: 92px minmax(0, 1fr); gap: 6px;
align-items: center; margin: 4px 0; font-size: 11.5px; color: var(--muted); } align-items: center; margin: 4px 0; font-size: 11.5px; color: var(--muted); }
#genViz { background: rgba(255,255,255,0.06); color: var(--text); border: 1px solid var(--border); #genViz { background: rgba(255,255,255,0.06); color: var(--text); border: 1px solid var(--border);