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.

ReservationWidgetSet.java 1.1KB

12345678910111213141516171819202122232425262728293031323334353637
  1. /*
  2. @ITMillApache2LicenseForJavaFiles@
  3. */
  4. package com.vaadin.demo.reservation.gwt.client;
  5. import com.vaadin.demo.reservation.gwt.client.ui.VCalendarField;
  6. import com.vaadin.demo.reservation.gwt.client.ui.VGoogleMap;
  7. import com.vaadin.terminal.gwt.client.DefaultWidgetSet;
  8. import com.vaadin.terminal.gwt.client.Paintable;
  9. import com.vaadin.terminal.gwt.client.UIDL;
  10. public class ReservationWidgetSet extends DefaultWidgetSet {
  11. @Override
  12. public Paintable createWidget(UIDL uidl) {
  13. final Class type = resolveWidgetType(uidl);
  14. if (VGoogleMap.class == type) {
  15. return new VGoogleMap();
  16. } else if (VCalendarField.class == type) {
  17. return new VCalendarField();
  18. }
  19. return super.createWidget(uidl);
  20. }
  21. @Override
  22. protected Class resolveWidgetType(UIDL uidl) {
  23. final String tag = uidl.getTag();
  24. if ("googlemap".equals(tag)) {
  25. return VGoogleMap.class;
  26. } else if ("calendarfield".equals(tag)) {
  27. return VCalendarField.class;
  28. }
  29. return super.resolveWidgetType(uidl);
  30. }
  31. }