private EventProperty property;
public EventPropertyObservableValue(Object observed, EventProperty property) {
super(Boolean.class, observed, property.getName());
this.property = property;
IEventHandler controller = UserData.findEventController(observed);
if (controller == null) {
controller = UserData.updateEventController(observed);
}
IEvent event = property.getEvent();
IObservableValueListener manager = UserData.getObservableValueManager(observed);
if (manager == null) {
manager = new ObservableValueManager(observed);
UserData.setObservableValueManager(observed, manager);
}
try {
controller.setEvent(event, UserData.getWidget(observed), manager, property, IObservableValueListener.class.getDeclaredMethod("changeValueHandle", Object.class, org.eclipse.swt.widgets.Event.class));
manager.registerValue(property, this);
} catch (Exception e) {
LoggerManager.log(e);
return;
}