part.setLabel(SPECIMEN_EDITOR+Messages.DerivateView_NO_TAXON_SELECTED);
}
}
+
+ public DerivateSearchCompositeController getSearchController() {
+ return derivateSearchCompositeController;
+ }
public boolean isListenToSelectionChange(){
return listenToSelectionChange;
public void execute(@Named(IServiceConstants.ACTIVE_PART) MPart part, MHandledMenuItem item) {
DerivateView derivateView = (DerivateView) part.getObject();
if(item.getElementId().equals(AppModelId.HANDLEDMENUITEM_EU_ETAXONOMY_TAXEDITOR_EDITOR_HANDLEDMENUITEM_CREATE_FIELD_UNIT_FOR_TAXON)){
- Object selectionInput = derivateView.getSelectionInput();
+ Object selectionInput = derivateView.getSearchController().getSelectedTaxon();
if(selectionInput instanceof CdmBase && ((CdmBase) selectionInput).isInstanceOf(Taxon.class)){
final Taxon taxon = HibernateProxyHelper.deproxy(CdmStore.getService(ITaxonService.class).load(((CdmBase)selectionInput).getUuid()), Taxon.class);
if(derivateView.isDirty()){
@CanExecute
public boolean canExecute(@Named(IServiceConstants.ACTIVE_PART) MPart part, MHandledMenuItem item) {
DerivateView derivateView = (DerivateView) part.getObject();
- boolean listenToSelectionChange = derivateView.isListenToSelectionChange();
+ boolean listenToSelectionChange = derivateView.getSearchController().getSelectedTaxon()!= null;
+ //boolean listenToSelectionChange = true;
setItemVisibility(item, listenToSelectionChange);
if(listenToSelectionChange &&
item.getElementId().equals(AppModelId.HANDLEDMENUITEM_EU_ETAXONOMY_TAXEDITOR_EDITOR_HANDLEDMENUITEM_CREATE_FIELD_UNIT_FOR_TAXON)){
derivateSearchComposite.getComboTaxonAssignment().select(DerivateSearchComposite.ALL_SPECIMENS);
derivateSearchComposite.getComboTaxonAssignment().setEnabled(true);
derivateSearchComposite.getLbltaxonAssignment().setEnabled(true);
+
}
}
}
}
- public void setLayoutData(Object layoutData){
+ public Taxon getSelectedTaxon() {
+ return selectedTaxon;
+ }
+
+ public void setLayoutData(Object layoutData){
derivateSearchComposite.setLayoutData(layoutData);
}