2

私は次のモデルを持っています:

public class HoverDescriptor {

    private String id;
    private String label;
    private boolean enabled;
    private String description;
    private int stateMask;
    private String modifierString;

    public HoverDescriptor(String id, String label, boolean isEnabled, String description,
        ...
}

public class HoverViewModel {

    Set<HoverDescriptor> mHovers;

    private HoverViewModel() {
        mHovers = new HashSet<HoverDescriptor>();
        mHovers.add(new HoverDescriptor("Mock1", "Label1", true, "Desc1", SWT.DEFAULT, ""));
        mHovers.add(new HoverDescriptor("Mock2", "Label2", false, "Desc2",SWT.DEFAULT, ""));
        mHovers.add(new HoverDescriptor("Mock3", "Label3", false, "Desc3", SWT.DEFAULT, ""));
    }

    public static HoverViewModel newInstance() {
        return new HoverViewModel();
    }

    public Set<HoverDescriptor> getHovers() {
        return mHovers;
    }

バインドしたい:

final IObservableSet checkedElements = ViewersObservables.observeCheckedElements(viewer, HoverDescriptor.class);

次の ObservableMap に:

IBeanSetProperty descriptors = PojoProperties.set("hovers", HoverDescriptor.class);
IObservableMap observeMap = PojoObservables.observeMap(descriptors.observe(fViewModel), HoverDescriptor.class, "enabled");

MappedSetしかし、非推奨とDataBindingContext.bindSet(?) を除いて、私は慣用的な方法を見つけることができませんでした。どうすれば効果的にできるでしょうか?

4

0 に答える 0