/** * Creates the events for the Widget. * * @param widget The Widget to create the events for * @param wt The WidgetTemplate */ private void createEvents(Widget widget, WidgetTemplate wt) { for (EventTemplate et : wt.getEventTemplates()) { String eventName = et.getEventType(); Event event = getModelFactory().createEvent(); FunctionType ft = et.getFunctionType(); event.setEventName(eventName); event.setFunctionName(ft.getName()); event.setNature(EventNature.get(et.getNature())); if (!hasEvent(widget, eventName)) { widget.getEvents().add(event); createParameters(event, et); // from the template // add missing parameters defined in the model. for (ParameterType pt : et.getFunctionType().getParameters()) { String name = pt.getName(); if (event.findParameter(name) == null) { Parameter p = getModelFactory().createParameter(); p.setName(name); p.setValue(pt.getDefaultValue()); event.getParameters().add(p); } } } } }
/** * Updates the TableItem and the Parameter of the event. * * @param ti The TableItem * @param value The value to update */ private void updateTableItemAndParameter(TableItem ti, String value) { ti.setText(EDITABLE_COLUMN, value); String paramName = ti.getText(0); Parameter p = event.findParameter(paramName); p.setValue(value); }