kısa adımlar:
- açık plugin.xml ve Extension sekmesine gidin.
- Uzatma noktası ekle
org.eclipse.ui.preferencePages
- Kimlik/ad ve diğer özellikleri belirtin.
- Uygulama sınıfı,
PreferencePage
'dan genişler. Eğer bir panelde grup birkaç kontroller istiyoruz ve FieldEditorPreferencePage
kullanmak durumunda
, sen org.eclipse.jface.preference.FieldEditor
uzanan yeni bir sınıf oluşturabilir. Örneğin:
public class MyFieldEditor extends FieldEditor {
public MyFieldEditor(String name, String labelText, Composite parent) {
super(name, labelText, parent);
}
protected void doFillIntoGrid(Composite parent, int numColumns) {
//...add your controls to panel
Group grpOpenMode = new Group(parent, SWT.NONE);
grpOpenMode.setText("Open mode");
grpOpenMode.setBounds(10, 10, 230, 117);
btnDoubleClick = new Button(grpOpenMode, SWT.RADIO);
btnDoubleClick.setBounds(10, 21, 90, 16);
btnDoubleClick.setText("Double click");
btnSingleClick = new Button(grpOpenMode, SWT.RADIO);
btnSingleClick.setBounds(10, 43, 90, 16);
btnSingleClick.setText("Single Click");
Button btnSelectOnHover = new Button(grpOpenMode, SWT.CHECK);
btnSelectOnHover.setBounds(20, 63, 123, 16);
btnSelectOnHover.setText("Select on hover");
Button btnOpenUsingArrowKey = new Button(grpOpenMode, SWT.CHECK);
btnOpenUsingArrowKey.setBounds(20, 85, 188, 16);
btnOpenUsingArrowKey.setText("Open when using arrow keys");
}
protected void doLoad() {
// get preference value, and set data to UI, Invoked after doFillIntoGrid(...)
String prefix = getPreferenceName();
boolean isDoubleClick = getPreferenceStore().getBoolean(prefix+"_isDoubleClick");
btnDoubleClick.setSelection(isDoubleClick);
btnSingleClick.setSelection(!isDoubleClick);
btnSelectOnHoverget.setSelection(getPreferenceStore().getBoolean(prefix+"_selectOnHover");
}
protected void doLoadDefault() {
//Invoked in preferencePages.performDefaults() - user click "Restore Default" button
}
protected void doStore() {
//save data of UI to preference store. Invoked in preferencePages.performOk() - user click "OK"/"Apply" button
getPreferenceStore().setValue(getPreferenceName()+"_isDoubleClick",btnDoubleClick.getSelection());
}
}
:
uygulama Örneğin, bu grup benim eklenti projede böyle görünüyor here
kullanılabilir sayfa ama etkin/devre dışı bırakılmış onay kutularını yapmak için bir mücadele olacağını düşünüyorum. Gösterdiğiniz özel tercih sayfası sadece 'PreferencePage' öğesini genişletir ve alan editörlerini kullanmak yerine normal SWT kontrolleri oluşturur. –
Windows XP'yi özlüyorum –