Hi Nil,

as far as I know, the context menu entries of the Data Manager were never fully 
implemented in BlueBerry. Well, to be honest, they might have been implemented 
since the last BlueBerry update a year ago but you probably know more than me 
when you are fiddling around with them at the moment. :-) However, I know that 
there are (were?) historic, ugly, hard-coded workarounds for certain data types 
in the Data Manager, sorry. In the BlueBerry/OSGI/Eclipse world, this is 
supposed to be loosely coupled and dynamic. If it isn’t in MITK (which I 
guess), that would be a nice mini project. You could help us by filing a 
feature request in our bug tracker for your needs/thoughts and setting its 
target milestone to AfterNextRelease, in order to have a realistic chance of 
having these features implemented in the release after next.

Best regards,
Stefan

From: Nil Goyette [mailto:[email protected]]
Sent: Freitag, 1. April 2016 17:38
To: [email protected]
Subject: [mitk-users] SetDataStorage in QmitkDataManagerView.cpp

Hi MITK,

I was creating a context menu action and I saw that SetDataStorage was never 
called. I found in QmitkDataManagerView.cpp this snippet:
if(className == "QmitkCreatePolygonModelAction")
{
  contextMenuAction->SetDataStorage(this->GetDataStorage());
  if(smoothed == "false")
  {
    contextMenuAction->SetSmoothed(false);
  }
  else
  {
    contextMenuAction->SetSmoothed(true);
  }
  contextMenuAction->SetDecimated(m_SurfaceDecimation);
}
else if(className == "QmitkStatisticsAction")
{
  contextMenuAction->SetFunctionality(this);
}
else if(className == "QmitkCreateSimulationAction")
{
  contextMenuAction->SetDataStorage(this->GetDataStorage());
}

I don't understand this decision. Why not simply always set it? I know that 
Smoothed, Decimated and Functionality are hacks useful only to a single class, 
but DataStorage is useful in many cases. Well, I don't know for the other 
programmers out there, but I often need the DataStorage in my context menu 
actions.

Right now, I'm forced to use my plugin's context, getServiceReference, 
IDataStorageService and include a lot of files to get it. This could easily be 
avoided if SetDataStorage was always called. I just tried it and it works 
perfectly. In fact, I don't see how it could break anything.

Nil
------------------------------------------------------------------------------
_______________________________________________
mitk-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mitk-users

Reply via email to