*/
package eu.etaxonomy.taxeditor.preference.wizard;
-import java.util.ArrayList;
-import java.util.Collection;
import java.util.List;
-import java.util.Map;
-
-import org.eclipse.jface.viewers.CheckStateChangedEvent;
-import org.eclipse.jface.viewers.CheckboxTreeViewer;
-import org.eclipse.jface.viewers.ColumnViewer;
-import org.eclipse.jface.viewers.ICheckStateListener;
-import org.eclipse.jface.viewers.StyledString.Styler;
-import org.eclipse.jface.viewers.ViewerComparator;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.TextStyle;
-import org.eclipse.swt.layout.GridData;
-import org.eclipse.swt.layout.GridLayout;
+
import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Display;
-import eu.etaxonomy.cdm.model.common.CdmBase;
-import eu.etaxonomy.cdm.model.common.DefinedTermBase;
-import eu.etaxonomy.cdm.model.common.TermType;
-import eu.etaxonomy.cdm.model.common.TermVocabulary;
import eu.etaxonomy.cdm.model.metadata.CdmPreference;
-import eu.etaxonomy.taxeditor.editor.definedterm.TermContentProvider;
-import eu.etaxonomy.taxeditor.editor.definedterm.TermLabelProvider;
+import eu.etaxonomy.cdm.model.metadata.PreferencePredicate;
+import eu.etaxonomy.cdm.model.term.TermType;
+import eu.etaxonomy.cdm.persistence.dto.TermDto;
+import eu.etaxonomy.cdm.persistence.dto.TermVocabularyDto;
import eu.etaxonomy.taxeditor.l10n.Messages;
-import eu.etaxonomy.taxeditor.session.ICdmEntitySession;
-import eu.etaxonomy.taxeditor.session.ICdmEntitySessionEnabled;
+import eu.etaxonomy.taxeditor.preference.PreferencesUtil;
+
+
/**
* @author k.luther
* @since 05.10.2018
*
*/
-public class AvailableDistributionStatusPage extends AbstractTermSelectionWizardPage implements ICdmEntitySessionEnabled{
+public class AvailableDistributionStatusPage extends AbstractTermSelectionWizardPage<TermDto> {
- private ColumnViewer viewer;
- private List<TermVocabulary<DefinedTermBase>> vocabularies = new ArrayList<>();
- private CdmPreference pref;
- public AvailableDistributionStatusPage(String pageName, CdmPreference pref) {
+ public AvailableDistributionStatusPage(String pageName, CdmPreference pref, boolean localPref) {
super(pageName, TermType.PresenceAbsenceTerm);
this.pref = pref;
-
+ this.localPref = localPref;
}
- /**
- * {@inheritDoc}
- */
@Override
public void createControl(Composite parent) {
-
- // String checkedValues = preferenceStore.getString(PreferencesUtil.DISTRIBUTION_VOCABULARIES);
-
-
- // String grayedValues = preferenceStore.getString(PreferencesUtil.DISTRIBUTION_AREA_OCCURENCE_STATUS_GRAYED);
setTitle(Messages.AvailableDistributionStatusPage_PAGE_TITLE);
setDescription(Messages.AvailableDistributionStatusPage_PAGE_DESCRIPTION);
- Composite composite = new Composite(parent, SWT.NULL);
- composite.setLayout(new GridLayout());
- setViewer(new CheckboxTreeViewer(composite, SWT.NULL));
- ((CheckboxTreeViewer)getViewer()).getTree().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
-// viewer.setContentProvider(new TermContentProvider());
- Styler styler = new Styler() {
- @Override
- public void applyStyles(TextStyle textStyle) {
- textStyle.foreground = Display.getCurrent().getSystemColor(SWT.COLOR_BLACK);
- }
- };
- getViewer().setContentProvider(new TermContentProvider());
- getViewer().setLabelProvider(new TermLabelProvider(styler));
- getViewer().setComparator(new ViewerComparator());
- ((CheckboxTreeViewer)getViewer()).addCheckStateListener(new ICheckStateListener() {
-
- private boolean ignoreCheckEvent = false;
-
- @Override
- public void checkStateChanged(CheckStateChangedEvent event) {
-
-
- if (ignoreCheckEvent ) {
- return;
- }
-
- ignoreCheckEvent = true;
-
- try {
-
-
- }
- finally {
- ignoreCheckEvent = false;
- }
-
- }
- });
- String checkedValues = null;
- if (pref != null){
- checkedValues = pref.getValue();
- }
- rememberCheckedValues(checkedValues, null);
- ((CheckboxTreeViewer)getViewer()).setCheckedElements(listCheckedTerms.toArray());
- ((CheckboxTreeViewer)getViewer()).expandToLevel(2);
- setControl(composite);
+ //if (!localPref){
+ override = PreferencesUtil.getBooleanValue(PreferencesUtil.createOverridePreferenceString(PreferencePredicate.AvailableDistributionStatus.getKey()));
+ createAllowOverrideButton(parent);
+ //}
+ super.createControl(parent);
}
-
@Override
- public ColumnViewer getViewer() {
- return viewer;
+ protected String getCheckedValuesFromPreferences() {
+ String checkedValues = null;
+ if (localPref){
+ checkedValues = PreferencesUtil.getStringValue(PreferencePredicate.AvailableDistributionStatus.getKey(), true);
+ }else if(pref != null){
+ checkedValues = pref.getValue();
+ }
+ return checkedValues;
}
- @Override
- public void setViewer(ColumnViewer viewer) {
- this.viewer = viewer;
- }
- /**
- * {@inheritDoc}
- */
- @Override
- public ICdmEntitySession getCdmEntitySession() {
- // TODO Auto-generated method stub
- return null;
- }
+
/**
* {@inheritDoc}
*/
@Override
- public <T extends CdmBase> Collection<T> getRootEntities() {
+ protected List<TermVocabularyDto> getVocabulariesFromPreference() {
// TODO Auto-generated method stub
return null;
}
- /**
- * {@inheritDoc}
- */
@Override
- public Map<Object, List<String>> getPropertyPathsMap() {
+ protected List<TermDto> getTermsFromStringValues(List<String> listValue) {
// TODO Auto-generated method stub
return null;
}
- @Override
- protected List<TermVocabulary<DefinedTermBase>> getVocabulariesFromPreference(){
- return null;
- }
+
}