final Spinner spinner = new Spinner(tree, SWT.BORDER);
spinner.setMinimum(0);
String level = item.getText(1);
int defaultLevel = level.length() == 0 || "default".equals(level) ? 0 : Integer.parseInt(level); //$NON-NLS-1$
spinner.setSelection(defaultLevel);
spinner.addModifyListener(new ModifyListener() {
public void modifyText(ModifyEvent e) {
if (item.getChecked()) {
int selection = spinner.getSelection();
item.setText(1, selection == 0 ? "default" //$NON-NLS-1$
: Integer.toString(selection));