1 8 package com.mountainminds.eclemma.internal.ui.dialogs; 9 10 import org.eclipse.jface.preference.BooleanFieldEditor; 11 import org.eclipse.swt.widgets.Button; 12 import org.eclipse.swt.widgets.Composite; 13 14 20 class ToggleValueFieldEditor extends BooleanFieldEditor { 21 22 private final String onvalue; 23 private final String offvalue; 24 private Button checkbox; 25 26 public ToggleValueFieldEditor(String name, String label, Composite parent, 27 String onvalue, String offvalue) { 28 super(name, label, parent); 29 this.onvalue = onvalue; 30 this.offvalue = offvalue; 31 } 32 33 public Button getChangeControl(Composite parent) { 34 return checkbox = super.getChangeControl(parent); 36 } 37 38 protected void doLoad() { 39 if (checkbox != null) { 40 String value = getPreferenceStore().getString(getPreferenceName()); 41 checkbox.setSelection(onvalue.equals(value)); 42 } 43 } 44 45 protected void doLoadDefault() { 46 String value = getPreferenceStore().getDefaultString(getPreferenceName()); 47 checkbox.setSelection(onvalue.equals(value)); 48 } 49 50 protected void doStore() { 51 if (checkbox != null) { 52 String value = checkbox.getSelection() ? onvalue : offvalue; 53 getPreferenceStore().setValue(getPreferenceName(), value); 54 } 55 } 56 57 } 58 59 60 | Popular Tags |