package eu.etaxonomy.taxeditor.ui.section.media;
import java.net.URISyntaxException;
-import java.util.Collections;
import java.util.List;
import java.util.Set;
-import org.eclipse.jface.util.IPropertyChangeListener;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.SelectionEvent;
+import org.eclipse.swt.events.SelectionListener;
+import org.eclipse.swt.widgets.Button;
import eu.etaxonomy.cdm.model.media.Media;
import eu.etaxonomy.cdm.model.media.MediaRepresentation;
import eu.etaxonomy.taxeditor.preference.PreferencesUtil;
import eu.etaxonomy.taxeditor.preference.Resources;
import eu.etaxonomy.taxeditor.ui.element.CdmFormFactory;
-import eu.etaxonomy.taxeditor.ui.element.CheckboxElement;
import eu.etaxonomy.taxeditor.ui.element.ICdmFormElement;
import eu.etaxonomy.taxeditor.ui.element.LayoutConstants;
import eu.etaxonomy.taxeditor.ui.element.UriWithLabelElement;
private UriWithLabelElement textUri;
private MediaRepresentationSection section_mediaRepresentation;
- private CheckboxElement checkBoxShowAdvancedView;
+ private Button checkBoxShowAdvancedView;
private MediaRepresentationPart singleMediaRepresentationPart;
private ICdmFormElement parentFormElement;
private int style;
protected void createControls(ICdmFormElement formElement, Media entity, int style) {
this.parentFormElement = formElement;
this.style = style;
- checkBoxShowAdvancedView = formFactory.createCheckbox(formElement, "Advanced Media View", false, style);
- List<IPropertyChangeListener> checkBoxPropertyChangeListeners = checkBoxShowAdvancedView.getPropertyChangeListeners();
- checkBoxPropertyChangeListeners.retainAll(Collections.singletonList(this));
- checkBoxShowAdvancedView.setPropertyChangeListeners(checkBoxPropertyChangeListeners);//no property change events for checkbox
+ checkBoxShowAdvancedView = formFactory.createButton(formElement.getLayoutComposite(), "Advanced Media View", SWT.CHECK | style);
+ checkBoxShowAdvancedView.setLayoutData(LayoutConstants.FILL_HORIZONTALLY(2, 1));
+ checkBoxShowAdvancedView.addSelectionListener(new SelectionListener() {
+
+ @Override
+ public void widgetSelected(SelectionEvent e) {
+ showAdvancedView(checkBoxShowAdvancedView.getSelection());
+ }
+
+ @Override
+ public void widgetDefaultSelected(SelectionEvent e) {
+
+ }
+ });
}
/* (non-Javadoc)
private boolean isAdvancedMediaView(){
if(PreferencesUtil.getPreferenceStore().getBoolean(IPreferenceKeys.SHOW_ADVANCED_MEDIA_SECTION)){
checkBoxShowAdvancedView.setSelection(true);
+ checkBoxShowAdvancedView.setEnabled(false);
return true;
}
Set<MediaRepresentation> representations = getEntity().getRepresentations();
if(representations.size()>1){
+ checkBoxShowAdvancedView.setSelection(true);
checkBoxShowAdvancedView.setEnabled(false);
return true;
}
if(representations.size()==1){
List<MediaRepresentationPart> parts = representations.iterator().next().getParts();
if(parts.size()>1){
+ checkBoxShowAdvancedView.setSelection(true);
checkBoxShowAdvancedView.setEnabled(false);
return true;
}