import eu.etaxonomy.cdm.api.facade.DerivedUnitFacade;
import eu.etaxonomy.cdm.api.facade.DerivedUnitFacadeNotSupportedException;
import eu.etaxonomy.cdm.api.service.IOccurrenceService;
+import eu.etaxonomy.cdm.model.media.Media;
import eu.etaxonomy.cdm.model.occurrence.DerivedUnit;
import eu.etaxonomy.cdm.model.occurrence.FieldUnit;
import eu.etaxonomy.cdm.model.occurrence.MediaSpecimen;
} else {
if (SpecimenOrObservationType.Media.equals(specOrObsType)
|| ((specOrObsType.getKindOf() != null) && specOrObsType.getKindOf().equals(SpecimenOrObservationType.Media))) {
- return MediaSpecimen.NewInstance(specOrObsType);
+ MediaSpecimen mediaSpecimen = MediaSpecimen.NewInstance(specOrObsType);
+ //a MediaSpecimen with no media attached does not make sense. Hence, we add one
+ mediaSpecimen.setMediaSpecimen(Media.NewInstance());
+ return mediaSpecimen;
} else if (specOrObsType.equals(SpecimenOrObservationType.FieldUnit)) {
return FieldUnit.NewInstance();
} else {
}
public void toogleAdvancedMediaView() {
- mediaDetailElement.toggleAdvancedMediaView();
+ if(mediaDetailElement!=null){
+ mediaDetailElement.toggleAdvancedMediaView();
+ }
}
public boolean isAdvancedMediaView() {
+ if(mediaDetailElement==null){
+ return false;
+ }
return mediaDetailElement.isAdvancedMediaView();
}
protected Control createToolbar() {
ToolBarManager toolBarManager = new ToolBarManager(SWT.FLAT);
- final String label;
-
- if(mediaSpecimenGeneralDetailElement.isAdvancedMediaView()){
- label = "Use simple media view";
- }
- else{
- label = "Use advanced media view";
- }
- Action addAction = new Action("Use advanced media view", IAction.AS_PUSH_BUTTON) {
+ String actionLabel = "Use advanced media view";
+ Action addAction = new Action(actionLabel, IAction.AS_PUSH_BUTTON) {
/* (non-Javadoc)
* @see org.eclipse.jface.action.Action#run()
*/
mediaSpecimenGeneralDetailElement.toogleAdvancedMediaView();
}
};
- addAction.setToolTipText(label);
+ addAction.setToolTipText(actionLabel);
toolBarManager.add(addAction);