import org.eclipse.swt.widgets.Label;
import org.eclipse.ui.forms.widgets.TableWrapData;
-import eu.etaxonomy.cdm.model.term.TermVocabulary;
import eu.etaxonomy.cdm.model.description.PresenceAbsenceTerm;
+import eu.etaxonomy.cdm.model.term.TermVocabulary;
import eu.etaxonomy.taxeditor.l10n.Messages;
import eu.etaxonomy.taxeditor.model.AbstractUtility;
import eu.etaxonomy.taxeditor.model.ImageResources;
private Button btnColorChooser;
+ private Label isAbsentLabel;
+
+ private Button btnIsAbsent;
+
public PresenceAbsenceTermDetailElement(CdmFormFactory formFactory,
ICdmFormElement formElement) {
super(formFactory, formElement);
btnColorChooser.setImage(ImageResources.getImage(ImageResources.BROWSE_ICON));
btnColorChooser.setToolTipText(Messages.PresenceAbsenceTermDetailElement_CHOOSE_COLOR);
btnColorChooser.addSelectionListener(this);
+
+ Label isAbsentTextLabel = new Label(getLayoutComposite(), style);
+ isAbsentTextLabel.setText(Messages.PresenceAbsenceTermDetailElement_LABEL_IS_ABSENT);
+ left = LayoutConstants.LEFT();
+ left.valign = TableWrapData.MIDDLE;
+ isAbsentTextLabel.setLayoutData(left);
+ addControl(isAbsentTextLabel);
+
+ btnIsAbsent = formFactory.createButton(getLayoutComposite(), "", SWT.CHECK); //$NON-NLS-1$
+ btnIsAbsent.addSelectionListener(this);
+ btnIsAbsent.setSelection(getEntity().isAbsenceTerm());
}
@Override
*/
@Override
public void widgetSelected(SelectionEvent e) {
- ColorDialog dialog = new ColorDialog(AbstractUtility.getShell());
- if(color!=null){
- dialog.setRGB(color.getRGB());
- }
- RGB rgb = dialog.open();
- if(rgb!=null){
+ if (e.getSource().equals(btnColorChooser)){
+ ColorDialog dialog = new ColorDialog(AbstractUtility.getShell());
if(color!=null){
- color.dispose();
+ dialog.setRGB(color.getRGB());
}
- color = new Color(AbstractUtility.getShell().getDisplay(), rgb);
- colorLabel.setBackground(color);
- try {
- String hexCode = String.format("%02x%02x%02x", rgb.red,rgb.green,rgb.blue); //$NON-NLS-1$
- getEntity().setDefaultColor(hexCode);
- } catch (ParseException pe) {
- MessagingUtils.error(PresenceAbsenceTermDetailElement.class, Messages.PresenceAbsenceTermDetailElement_COLOR_NOT_SET, pe);
+ RGB rgb = dialog.open();
+ if(rgb!=null){
+ if(color!=null){
+ color.dispose();
+ }
+ color = new Color(AbstractUtility.getShell().getDisplay(), rgb);
+ colorLabel.setBackground(color);
+ try {
+ String hexCode = String.format("%02x%02x%02x", rgb.red,rgb.green,rgb.blue); //$NON-NLS-1$
+ getEntity().setDefaultColor(hexCode);
+ } catch (ParseException pe) {
+ MessagingUtils.error(PresenceAbsenceTermDetailElement.class, Messages.PresenceAbsenceTermDetailElement_COLOR_NOT_SET, pe);
+ }
}
+ }else if (e.getSource().equals(btnIsAbsent)){
+ getEntity().setAbsenceTerm(btnIsAbsent.getSelection());
}
firePropertyChangeEvent(new CdmPropertyChangeEvent(this, e));
}