Browse Source

WidgetSet.createWidget() now returns Paintable, to indicate that that's required. Fixes #1974.

svn changeset:5223/svn branch:trunk
tags/6.7.0.beta1
Marc Englund 16 years ago
parent
commit
9f6b70c637

+ 2
- 2
src/com/itmill/toolkit/demo/colorpicker/gwt/client/ColorPickerWidgetSet.java View File

@@ -4,14 +4,14 @@
package com.itmill.toolkit.demo.colorpicker.gwt.client;
import com.google.gwt.user.client.ui.Widget;
import com.itmill.toolkit.demo.colorpicker.gwt.client.ui.IColorPicker;
import com.itmill.toolkit.terminal.gwt.client.DefaultWidgetSet;
import com.itmill.toolkit.terminal.gwt.client.Paintable;
import com.itmill.toolkit.terminal.gwt.client.UIDL;
public class ColorPickerWidgetSet extends DefaultWidgetSet {
/** Creates a widget according to its class name. */
public Widget createWidget(UIDL uidl) {
public Paintable createWidget(UIDL uidl) {
final String className = resolveWidgetTypeName(uidl);
if ("com.itmill.toolkit.demo.colorpicker.gwt.client.ui.IColorPicker"
.equals(className)) {

+ 2
- 1
src/com/itmill/toolkit/demo/reservation/gwt/client/ReservationWidgetSet.java View File

@@ -9,10 +9,11 @@ import com.google.gwt.user.client.ui.Widget;
import com.itmill.toolkit.demo.reservation.gwt.client.ui.ICalendarField;
import com.itmill.toolkit.demo.reservation.gwt.client.ui.IGoogleMap;
import com.itmill.toolkit.terminal.gwt.client.DefaultWidgetSet;
import com.itmill.toolkit.terminal.gwt.client.Paintable;
import com.itmill.toolkit.terminal.gwt.client.UIDL;
public class ReservationWidgetSet extends DefaultWidgetSet {
public Widget createWidget(UIDL uidl) {
public Paintable createWidget(UIDL uidl) {
final String className = resolveWidgetTypeName(uidl);
if ("com.itmill.toolkit.terminal.gwt.client.ui.IGoogleMap"
.equals(className)) {

+ 2
- 2
src/com/itmill/toolkit/terminal/gwt/client/ApplicationConnection.java View File

@@ -745,7 +745,7 @@ public class ApplicationConnection {
if (!widgetSet.isCorrectImplementation(component, uidl)) {
final Container parent = Util.getParentLayout(component);
if (parent != null) {
final Widget w = widgetSet.createWidget(uidl);
final Widget w = (Widget) widgetSet.createWidget(uidl);
parent.replaceChildComponent(component, w);
registerPaintable(uidl.getId(), (Paintable) w);
((Paintable) w).updateFromUIDL(uidl, this);
@@ -866,7 +866,7 @@ public class ApplicationConnection {
if (w != null) {
return w;
}
w = (Paintable) widgetSet.createWidget(uidl);
w = widgetSet.createWidget(uidl);
registerPaintable(id, w);
return w;
}

+ 1
- 1
src/com/itmill/toolkit/terminal/gwt/client/DefaultWidgetSet.java View File

@@ -66,7 +66,7 @@ public class DefaultWidgetSet implements WidgetSet {
}
}

public Widget createWidget(UIDL uidl) {
public Paintable createWidget(UIDL uidl) {

final String className = resolveWidgetTypeName(uidl);
if ("com.itmill.toolkit.terminal.gwt.client.ui.ICheckBox"

+ 3
- 2
src/com/itmill/toolkit/terminal/gwt/client/WidgetSet.java View File

@@ -10,14 +10,15 @@ import com.google.gwt.user.client.ui.Widget;
public interface WidgetSet extends EntryPoint {

/**
* Create an uninitialized component that best matches given UIDL.
* Create an uninitialized component that best matches given UIDL. The
* component must be a {@link Widget} that implements {@link Paintable}.
*
* @param uidl
* UIDL to be painted with returned component.
* @return New uninitialized and unregistered component that can paint given
* UIDL.
*/
public Widget createWidget(UIDL uidl);
public Paintable createWidget(UIDL uidl);

/**
* Test if the given component implementation conforms to UIDL.

Loading…
Cancel
Save