Page MenuHomePhabricator

Migrate plugins from deprecated org.mitk.gui.qt.common.legacy dependency to org.mitk.gui.qt.common
Closed, ResolvedPublic

Description

PR follows.

Event Timeline

The code compiles, at least everything that I could switch on. :)

I did not launch the apps and did not do any manual testing. Also did not run ctest, although the changes are in the plugins and the tests are mostly for the modules, I guess.

Each commit is one plugin.

I migrated all the plugins so that the legacy module can be physically removed, but did not remove it.

We do not need all of these plugins, only a few:

  • moviemaker
  • basicimageprocessing
  • segmentation
  • multilabelsegmentation
  • imagecropper
  • measurementtoolbox
  • pointsetinteraction

and the registration looks interesting but have not tried it.

kislinsk triaged this task as Normal priority.

Hi, cool PR! 👍
Only had a very straight forward merge conflict and a forgotten migration from std::vector<mitk::DataNode*> to QList<mitk::DataNode::Pointer>. However, the interactions doesn't work anymore. For example, neither segmentation, clipping plane, nor point set work. I start to investigate what's going on, or what isn't.

Seems to be related to the migration towards ILifeCycleAwarePart views, as the old Activated/Deactivated stuff apparently doesn't match to the new mechanism. For example, the interactions don't work because the selection is explicitly cleared in the Deactivated() method when clicking into the editor. I fixed the QmitkPointSetInteractionView so far. Needs to be tested manually, though, as it's always a strange feeling when simply deleting code and it still seems to work (again).

@neher

T22572-no-common-legacy
  • IVIM
  • Preprocessing
  • QBallReconstruction
  • TbssSkeletonization
  • TensorReconstruction
  • TractbasedSpatialStatistics
  • DiffusionTensorEstimation

Quickfixed Segmentation plugin. Need to investigate further.

kislinsk added a subscriber: kalali.

I'm closing this one. The segmentation plugin was fixed by @kalali & friends. Other plugins that rely on IZombieViewPart should have the same error (QmitkFunctionality's activated/deactivated was mapped directly which does now different things), but we will open separate tasks for them.

Thank you, @espak and @kalali. 👍

I wanted to open new tasks for the individual plugins that need a similar fix as the segmentation plugin, so that we can track the progress.

I did a file search for "zombie", but only found it in three plugins:

  1. In QmitkViewCoordinator in org.mitk.gui.qt.common
  1. In QmitkPartialVolumeAnalysisView in org.mitk.gui.qt.diffusionimaging.
  1. In QmitkToFUtilView in org.mitk.gui.qt.tofutil.

The first class was *not* a QmitkFunctionality, so I assume it is not affected. The latter two plugins we do not use.

So, no problems have been discovered with the other plugins?

Shall we create individual tasks for each affected plugins so that this does not get forgotten?

Cheers