You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

WidgetSet.java 1.0KB

12345678910111213141516171819202122232425262728293031323334
  1. package com.itmill.toolkit.demo.reservation.gwt.client;
  2. import com.google.gwt.core.client.GWT;
  3. import com.google.gwt.user.client.ui.Widget;
  4. import com.itmill.toolkit.demo.reservation.gwt.client.ui.IGoogleMap;
  5. import com.itmill.toolkit.terminal.gwt.client.DefaultWidgetSet;
  6. import com.itmill.toolkit.terminal.gwt.client.UIDL;
  7. public class WidgetSet extends DefaultWidgetSet {
  8. public Widget createWidget(UIDL uidl) {
  9. String className = resolveWidgetTypeName(uidl);
  10. if ("com.itmill.toolkit.terminal.gwt.client.ui.IGoogleMap"
  11. .equals(className)) {
  12. return new IGoogleMap();
  13. }
  14. return super.createWidget(uidl);
  15. }
  16. protected String resolveWidgetTypeName(UIDL uidl) {
  17. String tag = uidl.getTag();
  18. if ("googlemap".equals(tag)) {
  19. return "com.itmill.toolkit.terminal.gwt.client.ui.IGoogleMap";
  20. }
  21. return super.resolveWidgetTypeName(uidl);
  22. }
  23. public boolean isCorrectImplementation(Widget currentWidget, UIDL uidl) {
  24. return GWT.getTypeName(currentWidget).equals(
  25. resolveWidgetTypeName(uidl));
  26. }
  27. }