buttonSuperArea.setEnabled(areachecked);
comboSourceModeSubAreaSuperArea.setEnabled(areachecked);
comboSourceModeChildParent.setEnabled(toParentChecked);
+ AggregationSourceMode areaMode = (AggregationSourceMode)comboSourceModeSubAreaSuperArea.getData(comboSourceModeSubAreaSuperArea.getText());
+ AggregationSourceMode taxonMode = (AggregationSourceMode)comboSourceModeChildParent.getData(comboSourceModeChildParent.getText());
+ sourceTypeViewer.getTable().setEnabled(((areachecked && (areaMode.equals(AggregationSourceMode.ALL) || areaMode.equals(AggregationSourceMode.ALL_SAMEVALUE) ) )|| toParentChecked && (taxonMode.equals(AggregationSourceMode.ALL) || taxonMode.equals(AggregationSourceMode.ALL_SAMEVALUE) )) );
getWizard().getContainer().updateButtons();
}
});
sourceModeLabel.setToolTipText("Defines the source mode if aggregation from child to parent taxon is selected.");
comboSourceModeChildParent = new Combo(control, SWT.BORDER| SWT.READ_ONLY);
comboSourceModeChildParent.setText(Messages.DistributionAggregationConfiguration_AggregationMode);
- comboSourceModeChildParent.add("None");
- comboSourceModeChildParent.setData(null);
+
for (AggregationSourceMode mode :AggregationSourceMode.values()){
comboSourceModeChildParent.add(mode.toString());
comboSourceModeChildParent.setData(mode.toString(), mode);
sourceModeLabelSuperArea.setToolTipText("Defines the source mode if aggregation from sub area to super area is selected.");
comboSourceModeSubAreaSuperArea = new Combo(control, SWT.BORDER| SWT.READ_ONLY);
comboSourceModeSubAreaSuperArea.setText(Messages.DistributionAggregationConfiguration_AggregationMode);
- comboSourceModeSubAreaSuperArea.add("None");
- comboSourceModeSubAreaSuperArea.setData(null);
+
for (AggregationSourceMode mode :AggregationSourceMode.values()){
comboSourceModeSubAreaSuperArea.add(mode.toString());
comboSourceModeSubAreaSuperArea.setData(mode.toString(), mode);
comboSourceModeSubAreaSuperArea.addSelectionListener(this);
comboSourceModeSubAreaSuperArea.setEnabled(false);
comboSourceModeSubAreaSuperArea.select(0);
+
Label sourceTypeLabel = new Label(control, SWT.NULL);
sourceTypeLabel.setText("Source type");
sourceTypeLabel.setToolTipText("Type of sources that should added to the aggregated distribution");
if (e.getSource().equals(comboSourceModeChildParent) || e.getSource().equals(comboSourceModeSubAreaSuperArea)){
AggregationSourceMode modeChild = (AggregationSourceMode)comboSourceModeChildParent.getData(comboSourceModeChildParent.getText());
AggregationSourceMode modeArea = (AggregationSourceMode)comboSourceModeSubAreaSuperArea.getData(comboSourceModeSubAreaSuperArea.getText());
- if ((modeChild != null && modeChild.equals(AggregationSourceMode.ALL) || modeChild.equals(AggregationSourceMode.ALL_SAMEVALUE)) ||(modeArea != null && modeArea.equals(AggregationSourceMode.ALL) || modeArea.equals(AggregationSourceMode.ALL_SAMEVALUE))){
+ if ((comboSourceModeChildParent.isEnabled() && (modeChild != null && modeChild.equals(AggregationSourceMode.ALL) || modeChild.equals(AggregationSourceMode.ALL_SAMEVALUE))) ||(comboSourceModeSubAreaSuperArea.isEnabled() && (modeArea != null && modeArea.equals(AggregationSourceMode.ALL) || modeArea.equals(AggregationSourceMode.ALL_SAMEVALUE)))){
sourceTypeViewer.getTable().setEnabled(true);
}else{
sourceTypeViewer.getTable().setEnabled(false);