Page MenuHomePhabricator

Data Storage Editor Input can not hold a single Data Storage
Closed, ResolvedPublic

Description

There are some recent Core changes in the mitkDataStorageService, mitkIDataStorageService, mitkDataStorageEditorInput, QmitkRenderWindowMenu and the QmitkStdMultiWidget Class. These Changes are necessary to use the new Bundle for Registration of Baseline and Follow up Images

Event Timeline

Patch to describe the changes for the Bundle for Registration of Baseline and Follow up Images

Timo, wir können Montag mal über die Änderungen reden. Ein paar Sachen sind mit dem Change Request leider nicht ok:

  • du mischt zwei Änderungen, die man gut trennen könnte: Änderungen am MultiWidget und Änderungen in am BlueBerry-MITK-DataStorage-Handling. Sowas versuchen wir in MITK zu vermeiden.
  • actual/expected behavior sollten konkret sagen, was nicht geht und wie es sich eigentlich verhalten sollte (deine Beschreibung würde für alle Änderungen während deiner Diplomarbeit passen)
  • die Layout-Änderungen an Multiwidget würde ich wie gesagt sein lassen. Der Layout-Code dort ist lange chaotisch gewachsen und wird bald general- überholt. Deshalb lieber jetzt keine Arbeit/Änderungen mehr reinstecken (und da es keine Tests gibt, bedeuten auch schon gemachte Änderungen potentielle neue Probleme) Falls es wegen zwei parallel dargestellten 3D-Fenstern Probleme gibt, schalten wir lieber auf Transversal-Ansichten, das genügt absolut.

Sascha, könntest du was zu den Änderungen am DataStorage-Service sagen?

  • sind die in deinem Sinne?
  • CreateDataStorage(... StandaloneDataStorage ...) sollte bestimmt eher DataStorage benutzen (Interface)?

The changes for the other classes are canceled. The only class which still has a change in progress is the mitkDataStorageEditorInput.

Die Methode "SetDataStorageReference()" der Klasse DataStorageEditorInput hinzuzufügen finde ich nicht so gut. Die Möglichkeit, den input später auf eine andere DataStorage zu setzen, könnte sehr eigenartige Effekte geben.

So ein editor input sollte sich nach seiner Instanziierung nicht mehr "ändern", also wäre mein Vorschlag einfach einen Konstruktor hinzuzufügen, der einen IDataStorageReference Zeiger bekommt (und per default einen null-Zeiger). Das wäre eine minimale und kompatible Lösung.

I did remove the set- function. I added a data storage reference to the constructor.

[SVN revision 22313]
FIX (#3686): Modification to set an individual Data storage for the DataStorageEditorInput on instantiation.