ISISComputingGroup / ISISComputingGroup/IBEX

GUI: Refactor EditableConfiguration

Aperta
#2,120 1 commento 0 reazioni 0 assegnatari Vedi su GitHub
Lingua principale
Nessun dato sulla lingua
Stelle
6
Fork
2
Merge medio
16h 40m
PR unite (30g)
2

Descrizione

_Part of a greater redesign of Components. See [Configuration and Component Architecture](https://github.com/ISISComputingGroup/ibex_developers_manual/wiki/Configuration-and-Component-Architecture)_

Umbrella-ticket: #2122

Currently, the `EditableConfiguration` class is rather bloated and unlike the name suggests, not part of a class hierarchy with `Configuration`. Requires https://github.com/ISISComputingGroup/IBEX/issues/2119

Proposed Changes:
- Create an Interface containing setters for elements contained in a Configuration or Component (such as IOCs, Blocks, ...)
- Refactor `EditableConfiguration` to extend `Configuration` and implement the above Interface.
- Add an `EditableComponent` class that extends `Component` analogous to Configurations
- Rename currently existing `EditableComponents` to the more accurate `AvailableComponents`
- Move all editing logic from `EditableConfiguration` into a new EditingModel class.

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Direzione di ricerca

Inizia dal documento collegato Configuration and Component Architecture, quindi esamina EditableConfiguration, Configuration, Component ed EditableComponents. Esamina dependency issue #2119 e umbrella issue #2122 prima di valutare la riprogettazione. Il lavoro è completato quando l’interfaccia proposta, la gerarchia delle classi, la ridenominazione di AvailableComponents e la separazione di EditingModel sono implementate in modo coerente.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Ambito
desktop
Tipo di issue
Refactoring
Difficoltà
5/5
Tempo stimato
Più di una settimana
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
25/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.