philharmoniedeparis / metascore-library

The front-end library that powers the metaScore authoring tool.
https://metascore.philharmoniedeparis.fr
CeCILL Free Software License Agreement v2.1
0 stars 0 forks source link

Permettre d’organiser les blocs de comportements dans des groupes/dossiers #560

Open semiaddict opened 1 year ago

semiaddict commented 1 year ago

La nécessité de pouvoir regrouper des blocs de comportements a été mentionnée pour simplifier le travail dans les applications comportant de nombreux comportements.

Il n'existe aucun plugin Blockly permettant de mettre en place cette fonctionnalité. Cependant, un travail similaire avait été entrepris en 2015 par un étudiant sur le logiciel "App Inventor" qui utilise Blockly. Il faudrait donc voir si ce travail pourrait être mis à jour et utilisé pour metaScore.

rbailly commented 1 year ago

Son travail est interessant, il reprend le système des dossiers. Il précise que, s'il résout des problèmes, il en engendre d'autres (blocs plus difficiles à trouver).

Aussi, il a recensé comment fonctionnaient tous les logiciels de ce type, et il me semble que la plupart n'ont pas ce problème car les blocs sont "attachés" à des "objets" de la scène, ce qui fait qu'ils sont rarement tous affichés.

Pourrait-on imaginer dans notre cas un système qui permettrait de filtrer: Par exemple "je veux tous les blocs pour lesquels sont mentionnés des éléments "appartenant" au Bloc X / Page Y "?

je suis conscient que ça ne résoudra pas tous les problèmes, c'est juste une suggestion pour alimenter la discussion.

semiaddict commented 1 year ago

Il me semble qu'il est aussi possible de mettre en place un système de dossiers plus simple que celui mis en place dans le document. Le système décrit dans le document utilise des sous-espaces de travail pour les dossiers, ce qui engendre effectivement pas mal de soucis. Je pense qu'il serait possible d'éviter l'usage de sous-espaces en fessant en sorte que l'ouverture/fermeture d'un dossier ne fasse qu'afficher/masquer les blocs associés. Cela devrait pouvoir se faire sans avoir à modifier radicalement le fonctionnement interne de blockly.

rbailly commented 1 year ago

Oui d'accord, j'imagine que pour faire cela il faudrait "réorganiser" l'espace de travail à chaque fois que l'on ouvre un dossier ?

semiaddict commented 1 year ago

Oui d'accord, j'imagine que pour faire cela il faudrait "réorganiser" l'espace de travail à chaque fois que l'on ouvre un dossier ?

Non, pas vraiment.

C'est plutôt comme si plusieurs espaces de travail coexistaient, mais qu'un seul était visible à la fois; celui correspondant au dossier ouvert, ou le dossier racine si aucun n'est ouvert. Le fait d'afficher uniquement les blocs associés au dossier ouvert donnerait l'impression d'avoir plusieurs espaces de travail, mais ce ne serait pas vraiment le cas. Cette solution à l'avantage d'être plus simple à mettre en place, mais ne permet pas de déplacer des blocs d'un dossier à un autre par du glisser-déposer. En fait, c'est un peu comme le concept de l'indice de lecture de la version 1 de metaScore !