Éditeur de scène : Logique/Timeline en onglets plein écran, réglages d'écran déplacés dans le panneau Éléments
Remplace l'ancien panneau du bas rétractable/redimensionnable à la souris (Logique de la scène, Timeline d'animation) par un système d'onglets au centre de l'éditeur - Écran / Logique de la scène / Timeline d'animation - un seul visible à la fois, occupant systématiquement tout l'espace disponible (switchBuilderTab() dans screen_edit.html). Changer d'onglet équivaut à "fermer" celui qu'on quitte ; plus besoin d'une poignée de redimensionnement séparée puisque l'onglet actif prend déjà toute la place. Supprime au passage tout l'ancien mécanisme (toggleFlowPanel/ toggleAnimPanel, poignées flowResizeHandle/animResizeHandle, classe CSS .flowPanel) devenu inutile. Déplace aussi le renommage de l'écran, le bouton "Jouer depuis le début" et le choix du format d'aperçu (Portrait/Paysage/Carré) - jusqu'ici au-dessus du canevas - dans le panneau flottant "Éléments" (celui qui porte déjà ce nom, à gauche) : des réglages qu'on touche rarement une fois l'écran en construction, qui n'ont plus besoin de rester en permanence visibles au-dessus de la zone de travail. Corrige au passage un bug découvert pendant ce tour : sur la page "Nouvel objet" (2 colonnes), le bouton "+ Ajouter un champ" avait disparu - placé APRÈS la zone de liste à défilement (flex-grow:1) dans la colonne de droite, un flex-grow imprévisible dans ce contexte le poussait hors de vue. Déplacé avant la liste (statique, toujours visible), pattern déjà éprouvé ailleurs sur cette même page. Deux tests mis à jour pour refléter intentionnellement la nouvelle structure : la présence de "animTabPanel" (au lieu de l'ancien "animPanel"), et un marqueur plus précis pour distinguer le bloc de propriétés "Onglets" d'une simple occurrence du même texte dans une liste déroulante de la Logique de la scène (qui apparaît désormais plus tôt dans le document, cet éditeur de flow étant maintenant un onglet du centre plutôt qu'un panneau tout en bas de page). Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Sonnet 5
parent
2051b375ac
commit
ea9f91fc19
+19
-31
@@ -114,7 +114,7 @@ body.objectEditBody > main.content{ flex:1 1 auto; min-height:0; overflow:hidden
|
||||
.content-objectEdit .colLeft{ overflow-y:auto; height:100%; }
|
||||
.content-objectEdit .colRight{ display:flex; flex-direction:column; min-height:0; height:100%; }
|
||||
.content-objectEdit .colRight h2{ flex:0 0 auto; }
|
||||
.content-objectEdit .colRight > .hint{ flex:0 0 auto; }
|
||||
.content-objectEdit .colRight > .hint, .content-objectEdit .colRight > button{ flex:0 0 auto; }
|
||||
|
||||
.fieldsTableWrap{ flex:1 1 auto; min-height:0; overflow:auto; border:1px solid var(--border); border-radius:8px; }
|
||||
.fieldsTable{ width:100%; border-collapse:collapse; font-size:12.5px; }
|
||||
@@ -149,7 +149,6 @@ body.builderBody > main.content{ flex:1 1 auto; min-height:0; overflow:hidden; d
|
||||
width:100%;
|
||||
max-width:1600px;
|
||||
}
|
||||
.content-builder > .fieldRow:first-child{ flex:0 0 auto; }
|
||||
|
||||
/* 3 colonnes : ajout d'éléments (gauche) / écran en grand (centre) / propriétés (droite) —
|
||||
toutes les trois occupent exactement la même hauteur (celle qui reste
|
||||
@@ -375,37 +374,26 @@ code{ background:var(--panel2); border:1px solid var(--border); border-radius:4p
|
||||
.floatPanelReopenBtn{ display:none !important; }
|
||||
}
|
||||
|
||||
/* ---------- Logique de la scène : éditeur de flow à nœuds ---------- */
|
||||
/* Panneau du bas, dans le même flux flexbox que .builder3 (pas une
|
||||
surcouche/overlay) : replié, il ne prend que la hauteur de son en-tête et
|
||||
.builder3 récupère tout le reste de l'espace ; ouvert, sa hauteur est
|
||||
fixée en pixels (réglable à la souris via la poignée juste au-dessus) et
|
||||
.builder3 rétrécit d'autant automatiquement — jamais l'un par-dessus
|
||||
l'autre. */
|
||||
.flowPanel{
|
||||
flex:0 0 auto; border:1px solid var(--border); border-radius:10px; background:var(--panel);
|
||||
margin-top:8px; display:flex; flex-direction:column; overflow:hidden;
|
||||
/* ---------- Onglets du centre : Écran / Logique de la scène / Timeline
|
||||
d'animation ---------- */
|
||||
/* Un seul onglet visible à la fois (voir switchBuilderTab() dans
|
||||
screen_edit.html), chacun occupant tout l'espace disponible dans
|
||||
.builderCanvasArea — remplace l'ancien panneau du bas rétractable/
|
||||
redimensionnable à la souris : un onglet "prend toute la place" par
|
||||
nature, pas besoin d'une poignée de redimensionnement séparée, et en
|
||||
changer d'onglet équivaut à "fermer" celui qu'on quitte. */
|
||||
.builderTabs{ display:flex; gap:2px; flex:0 0 auto; border-bottom:1px solid var(--border); margin-bottom:10px; }
|
||||
.builderTabBtn{
|
||||
background:transparent; border:none; border-bottom:2px solid transparent; border-radius:0;
|
||||
padding:8px 12px; color:var(--text-dim); font-size:12.5px; cursor:pointer;
|
||||
}
|
||||
.flowPanelHeader{
|
||||
flex:0 0 auto; padding:10px 16px; font-weight:700; cursor:pointer; user-select:none;
|
||||
display:flex; align-items:center; gap:6px;
|
||||
}
|
||||
.flowPanelHeader:hover{ background:var(--panel2); }
|
||||
.flowToggleIcon{ color:var(--text-dim); font-size:11px; transition:transform .15s; display:inline-block; }
|
||||
.flowPanel.open .flowToggleIcon{ transform:rotate(90deg); }
|
||||
.flowPanelBody{ flex:1 1 auto; min-height:0; padding:0 16px 16px; display:none; flex-direction:column; }
|
||||
.flowPanel.open .flowPanelBody{ display:flex; }
|
||||
.flowToolbar{ display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin-bottom:10px; flex:0 0 auto; }
|
||||
.builderTabBtn:hover{ color:var(--text); }
|
||||
.builderTabBtn.active{ color:var(--accent); border-bottom-color:var(--accent); font-weight:600; }
|
||||
|
||||
.flowResizeHandle{
|
||||
flex:0 0 auto; height:10px; margin-top:6px; cursor:row-resize; position:relative; display:none;
|
||||
}
|
||||
.flowResizeHandle.visible{ display:block; }
|
||||
.flowResizeHandle::before{
|
||||
content:""; position:absolute; left:50%; top:3px; width:60px; height:4px;
|
||||
background:var(--border); border-radius:2px; transform:translateX(-50%);
|
||||
}
|
||||
.flowResizeHandle:hover::before{ background:var(--accent); }
|
||||
.builderTabPanel{ flex:1 1 auto; min-height:0; display:none; flex-direction:column; }
|
||||
.builderTabPanel.active{ display:flex; }
|
||||
|
||||
.flowToolbar{ display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin-bottom:10px; flex:0 0 auto; }
|
||||
|
||||
.nodeForm{ border:1px solid var(--border); border-radius:8px; padding:12px; margin-bottom:12px; background:var(--panel2); max-width:420px; flex:0 0 auto; }
|
||||
.nodeForm label{ margin-top:8px; }
|
||||
|
||||
Reference in New Issue
Block a user