Skip to content

Suppression de la logique de pointeurs dans l'application #32

@MrGecko

Description

@MrGecko

Cette issue vise à simplifier drastiquement le fonctionnement des éditeurs de texte au sein de l'application.
Aujourd'hui, la mécanique complexe de la gestion des différents contenus basés sur une transcription (transcription enrichie de notes, segments pour le facsimilé, alignement de la traduction et parties du discours) rend difficile l'identification des bugs car :

  1. Les pointeurs engendrent beaucoup d'effets de bord
  2. L'application maintient des "éditeurs fantômes" (shallow quill elements) mis à jours en paralllèle afin de répercuter le moindre changement de la transcription dans les autres éditeurs concernés.
  3. La mécanique de la conversion TEItoQuill du texte et des pointeurs puis de leur insertion dans chaque contenu, suivi de la manoeuvre inverse pour la sauvegarde est bien trop compliquée

Ce que nous souhaitons :

  1. Nous débarasser totalement de la logique des pointeurs de caractères (backend comme frontend)
  2. Stocker directement en base, dans le champ transcription, les enrichissements dont la logique était portée par les pointeurs :
  1. Maintenir autant que possible la logique du workflow actuel, à savoir :
  • Chaque élève peut transcrire
  • Chaque élève peut traduire, sur la base d'une transcription est validée par le propriétaire
  • Chaque élève peut identifier les parties du discours dans la transcription dite de référence (cf Faire en sorte que la transcription soit dupliquée au démarrage de l'étape partie du discours #42), càd validée par le propriétaire (maj éventuellement nécessaire du modèle pour stocker la transcription de référence contenant les parties du discours pour chaque élève)
  • Chaque élève peut commenter une transcription validée

Une ébauche de ce travail existe dans la branche adele-vue/quill-unity,
il faut néanmoins commencer depuis la branche adele-vue/unity #31 pour bénéficier de la simplification des éditeurs.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

Status

Done

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions