/

Barre d'outils de la grille & le menu Plus d'options

La barre d'outils de la grille et son menu « ⋯ Plus d'options », qui regroupe plusieurs contrôles d'affichage côté client derrière un seul bouton.

Vue d'ensemble

La majeure partie de la barre d'outils de la grille - Ajouter, regroupement, recherche, le panneau de filtre avancé - est pilotée directement par les méthodes que vous appelez en PHP. Quelques contrôles sont différents : ce sont de purs interrupteurs côté client qu'un visiteur modifie à volonté dans son propre navigateur, indépendamment de votre configuration PHP (bien que certains aient tout de même besoin d'un interrupteur de configuration pour être présents du tout). Ils se trouvent derrière le bouton « ⋯ Plus d'options » pour que la barre d'outils principale ne soit pas surchargée. Le menu n'affiche que les sections réellement pertinentes pour la page en cours - une page sans appel à group_by_columns(), par exemple, n'affiche jamais de section de regroupement.

Bascule de visibilité des colonnes

Permet à un visiteur de masquer/afficher des colonnes de grille individuelles à volonté, indépendamment de ce que columns() a configuré pour la page. C'est contrôlé par un unique interrupteur de configuration global au site, sans surcharge par page :

public static bool $columnVisibilityToggle = true;

Quand c'est activé (par défaut), chaque grille obtient une section « Colonnes » dans le menu Plus d'options avec une case à cocher par colonne ; en décocher une la retire immédiatement de l'en-tête/du corps/du pied de page des sommes, côté client. Le choix est mémorisé pour la session du navigateur en cours mais ne persiste pas d'un jour ou d'un appareil à l'autre. Il n'existe pas d'appel de type XcrudConfig par page pour activer/désactiver un seul tableau - c'est activé pour toutes les grilles, ou désactivé pour toutes.

Développer/réduire tous les groupes

N'apparaît qu'une fois qu'une page appelle group_by_columns() (voir https://xcrudnova.xcrud.net/docs/fr/grouped-rows-sums-and-reports). Le menu affiche un seul interrupteur qui développe tous les groupes à la fois, ou les réduit tous - un raccourci par rapport au clic sur chaque en-tête de groupe individuellement.

Sélecteur de disposition de formulaire / mode d'édition

Le même sélecteur de mode d'édition décrit dans Options de disposition du formulaire est également accessible depuis ce menu - c'est par là qu'un visiteur atteint les deux modes de vue scindée réservés au JS (split_left/split_right) que set_edit_mode() lui-même ne peut pas définir. Le menu liste les cinq : Vue latérale, Vue scindée - gauche, Vue scindée - droite, Modale, et Normale. Choisir l'une d'elles s'applique immédiatement, ré-ouvrant même un formulaire déjà ouvert dans le nouveau mode plutôt que d'attendre une actualisation.

Afficher les champs de recherche dans les en-têtes de grille

Active ou désactive les champs de recherche par colonne dans l'en-tête (la rangée de petites zones de texte sous les intitulés de colonne). Affichés par défaut ; le choix d'un visiteur ici est mémorisé par session de navigateur, de la même façon que les choix de la bascule de visibilité des colonnes.

À noter : l'édition en ligne au clic

Ne fait pas partie du menu Plus d'options lui-même, mais reste proche de la barre d'outils : cliquer directement sur une cellule de grille édite ce champ sur place, sans ouvrir le formulaire complet d'ajout/édition. Cela fonctionne aux côtés de n'importe quel mode d'édition actif et ne nécessite aucune configuration supplémentaire pour être activé - cela fait partie du comportement de base de la grille.

Ce qui est piloté par la configuration face à un simple interrupteur client

FonctionnalitéPiloté par la config ?Surcharge par page ?
Bascule de visibilité des colonnesOui - XcrudConfig::$columnVisibilityToggleNon - à l'échelle du site uniquement
Développer/réduire tous les groupesApparaît automatiquement quand group_by_columns() est définiN/A
Sélecteur de disposition de formulaire / mode d'éditionMode initial via set_edit_mode()Oui, par page ; le visiteur peut tout de même le changer en direct
Afficher les champs de recherche dans les en-têtes de grilleNon - pur interrupteur clientN/A (mémorisé par session)
Édition en ligne au clicNon - toujours disponibleN/A