1 26 30 31 package org.omg.lifl.eclipse.plugin.project.utils.SWT; 32 33 import org.eclipse.swt.SWT; 34 import org.eclipse.swt.widgets.Button; 35 import org.eclipse.swt.widgets.Event; 36 import org.eclipse.swt.widgets.Group; 37 import org.eclipse.swt.widgets.Listener; 38 39 50 public class DirectoryChooserCheckRadioButtonSetter 51 extends DirectoryChooserCheckTextSetter { 52 53 private Button _radios[]; 54 private String [] value = { "On", "Off" }; 55 56 61 public DirectoryChooserCheckRadioButtonSetter( 62 Group parent, 63 SetterGroupPreference preference) { 64 super(parent, preference); 65 _text.dispose(); 66 _btnChooser.dispose(); 67 _radios = new Button[value.length]; 68 for (int i = 0; i < _radios.length; i++) { 69 _radios[i] = new Button(getSubGroup(), SWT.RADIO); 70 if (i < value.length && value[i] != null) { 71 72 _radios[i].setText(value[i]); 73 _radios[i].addListener(SWT.Selection, new Listener() { 74 75 public void handleEvent(Event arg0) { 76 _preference.set_Name(getSelected().trim()); 77 } 78 79 }); 80 } else 81 _radios[i].setText(""); 82 83 } 84 _radios[0].setSelection(true); 85 _preference.set_Name(getSelected().trim()); 86 87 } 88 89 92 protected String getSelected() { 93 for (int i = 0; i < _radios.length; i++) { 94 if (_radios[i].getSelection()) 95 return _radios[i].getText(); 96 } 97 return null; 98 } 99 100 103 protected void setCheckButton() { 104 _checkButton = new Button(subGroup, SWT.CHECK); 105 _checkButton.setSelection(isSubGroupVisible()); 106 _checkButton.addListener(SWT.Selection, new Listener() { 107 108 public void handleEvent(Event event) { 109 setSubGroupVisible(_checkButton.getSelection()); 110 if (subGroup != null) { 111 for (int i = 0; i < _radios.length; i++) 113 _radios[i].setVisible(isSubGroupVisible()); 114 get_preference().setEnable(isSubGroupVisible()); 115 } else ; 117 } 118 119 }); 120 121 } 122 123 126 protected void config(String buffer) { 127 } 128 129 } 130 | Popular Tags |