public static ISWTObservableValue observeSingleSelectionIndex(
Control control) {
if (control instanceof Table) {
return new TableSingleSelectionObservableValue((Table) control);
} else if (control instanceof Combo) {
return new ComboSingleSelectionObservableValue((Combo) control);
} else if (control instanceof CCombo) {
return new CComboSingleSelectionObservableValue((CCombo) control);
} else if (control instanceof List) {
return new ListSingleSelectionObservableValue((List) control);
}