Browse Source

State is now created using generators, removed setState (#8502)

tags/7.0.0.alpha3
Artur Signell 12 years ago
parent
commit
79bb29e855
61 changed files with 375 additions and 374 deletions
  1. 13
    1
      src/com/vaadin/terminal/gwt/DefaultWidgetSet.gwt.xml
  2. 3
    4
      src/com/vaadin/terminal/gwt/client/ApplicationConnection.java
  3. 0
    16
      src/com/vaadin/terminal/gwt/client/ServerConnector.java
  4. 11
    30
      src/com/vaadin/terminal/gwt/client/ui/AbstractComponentConnector.java
  5. 31
    0
      src/com/vaadin/terminal/gwt/client/ui/AbstractConnector.java
  6. 40
    0
      src/com/vaadin/terminal/gwt/client/ui/ConnectorClassBasedFactory.java
  7. 28
    0
      src/com/vaadin/terminal/gwt/client/ui/ConnectorStateFactory.java
  8. 39
    0
      src/com/vaadin/terminal/gwt/client/ui/ConnectorWidgetFactory.java
  9. 0
    7
      src/com/vaadin/terminal/gwt/client/ui/UnknownComponentConnector.java
  10. 0
    6
      src/com/vaadin/terminal/gwt/client/ui/absolutelayout/AbsoluteLayoutConnector.java
  11. 0
    7
      src/com/vaadin/terminal/gwt/client/ui/accordion/AccordionConnector.java
  12. 0
    7
      src/com/vaadin/terminal/gwt/client/ui/button/ButtonConnector.java
  13. 0
    7
      src/com/vaadin/terminal/gwt/client/ui/checkbox/CheckBoxConnector.java
  14. 0
    7
      src/com/vaadin/terminal/gwt/client/ui/combobox/ComboBoxConnector.java
  15. 0
    6
      src/com/vaadin/terminal/gwt/client/ui/csslayout/CssLayoutConnector.java
  16. 0
    7
      src/com/vaadin/terminal/gwt/client/ui/customcomponent/CustomComponentConnector.java
  17. 0
    12
      src/com/vaadin/terminal/gwt/client/ui/customfield/CustomFieldConnector.java
  18. 0
    6
      src/com/vaadin/terminal/gwt/client/ui/customlayout/CustomLayoutConnector.java
  19. 0
    7
      src/com/vaadin/terminal/gwt/client/ui/datefield/AbstractDateFieldConnector.java
  20. 0
    7
      src/com/vaadin/terminal/gwt/client/ui/datefield/InlineDateFieldConnector.java
  21. 0
    7
      src/com/vaadin/terminal/gwt/client/ui/datefield/PopupDateFieldConnector.java
  22. 0
    7
      src/com/vaadin/terminal/gwt/client/ui/datefield/TextualDateConnector.java
  23. 0
    7
      src/com/vaadin/terminal/gwt/client/ui/draganddropwrapper/DragAndDropWrapperConnector.java
  24. 0
    7
      src/com/vaadin/terminal/gwt/client/ui/embedded/EmbeddedConnector.java
  25. 0
    6
      src/com/vaadin/terminal/gwt/client/ui/form/FormConnector.java
  26. 0
    6
      src/com/vaadin/terminal/gwt/client/ui/formlayout/FormLayoutConnector.java
  27. 0
    6
      src/com/vaadin/terminal/gwt/client/ui/gridlayout/GridLayoutConnector.java
  28. 1
    7
      src/com/vaadin/terminal/gwt/client/ui/label/LabelConnector.java
  29. 0
    7
      src/com/vaadin/terminal/gwt/client/ui/link/LinkConnector.java
  30. 0
    7
      src/com/vaadin/terminal/gwt/client/ui/listselect/ListSelectConnector.java
  31. 0
    6
      src/com/vaadin/terminal/gwt/client/ui/menubar/MenuBarConnector.java
  32. 0
    7
      src/com/vaadin/terminal/gwt/client/ui/nativebutton/NativeButtonConnector.java
  33. 0
    7
      src/com/vaadin/terminal/gwt/client/ui/nativeselect/NativeSelectConnector.java
  34. 0
    6
      src/com/vaadin/terminal/gwt/client/ui/optiongroup/OptionGroupConnector.java
  35. 0
    6
      src/com/vaadin/terminal/gwt/client/ui/orderedlayout/HorizontalLayoutConnector.java
  36. 0
    6
      src/com/vaadin/terminal/gwt/client/ui/orderedlayout/VerticalLayoutConnector.java
  37. 0
    6
      src/com/vaadin/terminal/gwt/client/ui/panel/PanelConnector.java
  38. 0
    7
      src/com/vaadin/terminal/gwt/client/ui/passwordfield/PasswordFieldConnector.java
  39. 0
    7
      src/com/vaadin/terminal/gwt/client/ui/popupview/PopupViewConnector.java
  40. 0
    7
      src/com/vaadin/terminal/gwt/client/ui/progressindicator/ProgressIndicatorConnector.java
  41. 0
    7
      src/com/vaadin/terminal/gwt/client/ui/richtextarea/RichTextAreaConnector.java
  42. 0
    6
      src/com/vaadin/terminal/gwt/client/ui/root/RootConnector.java
  43. 0
    7
      src/com/vaadin/terminal/gwt/client/ui/slider/SliderConnector.java
  44. 0
    3
      src/com/vaadin/terminal/gwt/client/ui/splitpanel/AbstractSplitPanelConnector.java
  45. 2
    3
      src/com/vaadin/terminal/gwt/client/ui/splitpanel/HorizontalSplitPanelConnector.java
  46. 2
    2
      src/com/vaadin/terminal/gwt/client/ui/splitpanel/VerticalSplitPanelConnector.java
  47. 0
    6
      src/com/vaadin/terminal/gwt/client/ui/table/TableConnector.java
  48. 0
    5
      src/com/vaadin/terminal/gwt/client/ui/tabsheet/TabsheetConnector.java
  49. 0
    7
      src/com/vaadin/terminal/gwt/client/ui/textarea/TextAreaConnector.java
  50. 0
    7
      src/com/vaadin/terminal/gwt/client/ui/textfield/TextFieldConnector.java
  51. 0
    7
      src/com/vaadin/terminal/gwt/client/ui/tree/TreeConnector.java
  52. 0
    7
      src/com/vaadin/terminal/gwt/client/ui/treetable/TreeTableConnector.java
  53. 0
    7
      src/com/vaadin/terminal/gwt/client/ui/twincolselect/TwinColSelectConnector.java
  54. 0
    7
      src/com/vaadin/terminal/gwt/client/ui/upload/UploadConnector.java
  55. 0
    7
      src/com/vaadin/terminal/gwt/client/ui/video/VideoConnector.java
  56. 0
    6
      src/com/vaadin/terminal/gwt/client/ui/window/WindowConnector.java
  57. 145
    0
      src/com/vaadin/terminal/gwt/widgetsetutils/AbstractConnectorClassBasedFactoryGenerator.java
  58. 29
    0
      src/com/vaadin/terminal/gwt/widgetsetutils/ConnectorStateFactoryGenerator.java
  59. 29
    0
      src/com/vaadin/terminal/gwt/widgetsetutils/ConnectorWidgetFactoryGenerator.java
  60. 2
    4
      tests/testbench/com/vaadin/tests/dd/MyDragSourceConnector.java
  61. 0
    7
      tests/testbench/com/vaadin/tests/dd/MyDropTargetConnector.java

+ 13
- 1
src/com/vaadin/terminal/gwt/DefaultWidgetSet.gwt.xml View File

@@ -37,7 +37,7 @@
</replace-with>

<generate-with
class="com.vaadin.terminal.gwt.widgetsetutils.EagerWidgetMapGenerator">
class="com.vaadin.terminal.gwt.widgetsetutils.EagerWidgetMapGenerator">
<when-type-is class="com.vaadin.terminal.gwt.client.WidgetMap" />
</generate-with>

@@ -68,6 +68,18 @@
class="com.vaadin.terminal.gwt.client.communication.RpcManager" />
</generate-with>

<generate-with
class="com.vaadin.terminal.gwt.widgetsetutils.ConnectorWidgetFactoryGenerator">
<when-type-assignable
class="com.vaadin.terminal.gwt.client.ui.ConnectorWidgetFactory" />
</generate-with>

<generate-with
class="com.vaadin.terminal.gwt.widgetsetutils.ConnectorStateFactoryGenerator">
<when-type-assignable
class="com.vaadin.terminal.gwt.client.ui.ConnectorStateFactory" />
</generate-with>

<entry-point class="com.vaadin.terminal.gwt.client.ApplicationConfiguration" />

<!-- Use the new cross site linker to get a nocache.js without document.write -->

+ 3
- 4
src/com/vaadin/terminal/gwt/client/ApplicationConnection.java View File

@@ -1414,11 +1414,10 @@ public class ApplicationConnection {
JSONArray stateDataAndType = new JSONArray(
states.getJavaScriptObject(connectorId));

Object state = JsonDecoder.decodeValue(
stateDataAndType, connector.getState(),
connectorMap, ApplicationConnection.this);
JsonDecoder.decodeValue(stateDataAndType,
connector.getState(), connectorMap,
ApplicationConnection.this);

connector.setState((SharedState) state);
StateChangeEvent event = GWT
.create(StateChangeEvent.class);
event.setConnector(connector);

+ 0
- 16
src/com/vaadin/terminal/gwt/client/ServerConnector.java View File

@@ -8,7 +8,6 @@ import java.util.Collection;
import com.google.gwt.event.shared.GwtEvent;
import com.google.web.bindery.event.shared.HandlerRegistration;
import com.vaadin.terminal.gwt.client.communication.ClientRpc;
import com.vaadin.terminal.gwt.client.communication.SharedState;
import com.vaadin.terminal.gwt.client.communication.StateChangeEvent.StateChangeHandler;

/**
@@ -22,21 +21,6 @@ import com.vaadin.terminal.gwt.client.communication.StateChangeEvent.StateChange
*/
public interface ServerConnector extends Connector {

/**
* Sets a new state for the connector.
*
* @param state
* The new state
* @deprecated This should be removed. Framework should update what is
* returned by getState() instead of setting a new state object.
* Note that this must be done either so that setState accepts a
* state object once (first time received from the server) or
* getState() in AbstractConnector uses a generated class to
* create the state object (like RpcProy.craete())
*/
@Deprecated
public void setState(SharedState state);

/**
* Gets ApplicationConnection instance that created this connector.
*

+ 11
- 30
src/com/vaadin/terminal/gwt/client/ui/AbstractComponentConnector.java View File

@@ -18,7 +18,6 @@ import com.vaadin.terminal.gwt.client.TooltipInfo;
import com.vaadin.terminal.gwt.client.UIDL;
import com.vaadin.terminal.gwt.client.Util;
import com.vaadin.terminal.gwt.client.VConsole;
import com.vaadin.terminal.gwt.client.communication.SharedState;
import com.vaadin.terminal.gwt.client.communication.StateChangeEvent;
import com.vaadin.terminal.gwt.client.ui.root.RootConnector;

@@ -29,9 +28,6 @@ public abstract class AbstractComponentConnector extends AbstractConnector

private Widget widget;

// shared state from the server to the client
private ComponentState state;

private String lastKnownWidth = "";
private String lastKnownHeight = "";

@@ -47,7 +43,9 @@ public abstract class AbstractComponentConnector extends AbstractConnector
*
* @return
*/
protected abstract Widget createWidget();
protected Widget createWidget() {
return ConnectorWidgetFactory.createWidget(getClass());
}

/**
* Returns the widget associated with this paintable. The widget returned by
@@ -63,23 +61,16 @@ public abstract class AbstractComponentConnector extends AbstractConnector
return widget;
}

/**
* Returns the shared state object for this connector.
*
* If overriding this method to return a more specific type, also
* {@link #createState()} must be overridden.
*
* @return current shared state (not null)
*/
public ComponentState getState() {
return state;
}

@Deprecated
public static boolean isRealUpdate(UIDL uidl) {
return !uidl.hasAttribute("cached");
}

@Override
public ComponentState getState() {
return (ComponentState) super.getState();
}

@Override
public void onStateChanged(StateChangeEvent stateChangeEvent) {
super.onStateChanged(stateChangeEvent);
@@ -97,8 +88,9 @@ public abstract class AbstractComponentConnector extends AbstractConnector
* Disabled state may affect (override) tabindex so the order must be
* first setting tabindex, then enabled state.
*/
if (state instanceof TabIndexState && getWidget() instanceof Focusable) {
((Focusable) getWidget()).setTabIndex(((TabIndexState) state)
if (getState() instanceof TabIndexState
&& getWidget() instanceof Focusable) {
((Focusable) getWidget()).setTabIndex(((TabIndexState) getState())
.getTabIndex());
}

@@ -288,17 +280,6 @@ public abstract class AbstractComponentConnector extends AbstractConnector
return getState().isReadOnly();
}

/**
* Sets the shared state for the paintable widget.
*
* @param new shared state (must be compatible with the return value of
* {@link #getState()} - {@link ComponentState} if
* {@link #getState()} is not overridden
*/
public final void setState(SharedState state) {
this.state = (ComponentState) state;
}

public LayoutManager getLayoutManager() {
return LayoutManager.get(getConnection());
}

+ 31
- 0
src/com/vaadin/terminal/gwt/client/ui/AbstractConnector.java View File

@@ -17,6 +17,7 @@ import com.vaadin.terminal.gwt.client.ServerConnector;
import com.vaadin.terminal.gwt.client.Util;
import com.vaadin.terminal.gwt.client.VConsole;
import com.vaadin.terminal.gwt.client.communication.ClientRpc;
import com.vaadin.terminal.gwt.client.communication.SharedState;
import com.vaadin.terminal.gwt.client.communication.StateChangeEvent;
import com.vaadin.terminal.gwt.client.communication.StateChangeEvent.StateChangeHandler;

@@ -38,6 +39,8 @@ public abstract class AbstractConnector implements ServerConnector,
private Map<String, Collection<ClientRpc>> rpcImplementations;
private final boolean debugLogging = false;

private SharedState state;

/*
* (non-Javadoc)
*
@@ -183,4 +186,32 @@ public abstract class AbstractConnector implements ServerConnector,
}

}

/**
* Returns the shared state object for this connector.
*
* Override this method to define the shared state type for your connector.
*
* @return the current shared state (never null)
*/
public SharedState getState() {
if (state == null) {
state = createState();
}

return state;
}

/**
* Creates a state object with default values for this connector. The
* created state object must be compatible with the return type of
* {@link #getState()}. The default implementation creates a state object
* using GWT.create() using the defined return type of {@link #getState()}.
*
* @return A new state object
*/
protected SharedState createState() {
return ConnectorStateFactory.createState(getClass());
}

}

+ 40
- 0
src/com/vaadin/terminal/gwt/client/ui/ConnectorClassBasedFactory.java View File

@@ -0,0 +1,40 @@
/*
@VaadinApache2LicenseForJavaFiles@
*/
package com.vaadin.terminal.gwt.client.ui;

import java.util.HashMap;
import java.util.Map;

import com.vaadin.terminal.gwt.client.Connector;

public abstract class ConnectorClassBasedFactory<T> {
public interface Creator<T> {
public T create();
}

private Map<Class<? extends Connector>, Creator<? extends T>> creators = new HashMap<Class<? extends Connector>, Creator<? extends T>>();

protected void addCreator(Class<? extends Connector> cls,
Creator<? extends T> creator) {
creators.put(cls, creator);
}

/**
* Creates a widget using GWT.create for the given connector, based on its
* {@link AbstractComponentConnector#getWidget()} return type.
*
* @param connector
* @return
*/
public T create(Class<? extends Connector> connector) {
Creator<? extends T> foo = creators.get(connector);
if (foo == null) {
throw new RuntimeException(getClass().getName()
+ " could not find a creator for connector of type "
+ connector.getName());
}
return foo.create();
}

}

+ 28
- 0
src/com/vaadin/terminal/gwt/client/ui/ConnectorStateFactory.java View File

@@ -0,0 +1,28 @@
package com.vaadin.terminal.gwt.client.ui;

import com.google.gwt.core.client.GWT;
import com.vaadin.terminal.gwt.client.Connector;
import com.vaadin.terminal.gwt.client.communication.SharedState;

public abstract class ConnectorStateFactory extends
ConnectorClassBasedFactory<SharedState> {
private static ConnectorStateFactory impl = null;

/**
* Creates a SharedState using GWT.create for the given connector, based on
* its {@link AbstractComponentConnector#getSharedState ()} return type.
*
* @param connector
* @return
*/
public static SharedState createState(Class<? extends Connector> connector) {
return getImpl().create(connector);
}

private static ConnectorStateFactory getImpl() {
if (impl == null) {
impl = GWT.create(ConnectorStateFactory.class);
}
return impl;
}
}

+ 39
- 0
src/com/vaadin/terminal/gwt/client/ui/ConnectorWidgetFactory.java View File

@@ -0,0 +1,39 @@
package com.vaadin.terminal.gwt.client.ui;

import com.google.gwt.core.client.GWT;
import com.google.gwt.user.client.ui.Widget;
import com.vaadin.terminal.gwt.client.ui.textfield.TextFieldConnector;
import com.vaadin.terminal.gwt.client.ui.textfield.VTextField;

public abstract class ConnectorWidgetFactory extends
ConnectorClassBasedFactory<Widget> {
private static ConnectorWidgetFactory impl = null;

// TODO Move to generator
{
addCreator(TextFieldConnector.class, new Creator<Widget>() {
public Widget create() {
return GWT.create(VTextField.class);
}
});
}

/**
* Creates a widget using GWT.create for the given connector, based on its
* {@link AbstractComponentConnector#getWidget()} return type.
*
* @param connector
* @return
*/
public static Widget createWidget(
Class<? extends AbstractComponentConnector> connector) {
return getImpl().create(connector);
}

private static ConnectorWidgetFactory getImpl() {
if (impl == null) {
impl = GWT.create(ConnectorWidgetFactory.class);
}
return impl;
}
}

+ 0
- 7
src/com/vaadin/terminal/gwt/client/ui/UnknownComponentConnector.java View File

@@ -4,8 +4,6 @@

package com.vaadin.terminal.gwt.client.ui;

import com.google.gwt.core.client.GWT;
import com.google.gwt.user.client.ui.Widget;

public class UnknownComponentConnector extends AbstractComponentConnector {

@@ -14,11 +12,6 @@ public class UnknownComponentConnector extends AbstractComponentConnector {
return false;
}

@Override
protected Widget createWidget() {
return GWT.create(VUnknownComponent.class);
}

@Override
public VUnknownComponent getWidget() {
return (VUnknownComponent) super.getWidget();

+ 0
- 6
src/com/vaadin/terminal/gwt/client/ui/absolutelayout/AbsoluteLayoutConnector.java View File

@@ -6,7 +6,6 @@ package com.vaadin.terminal.gwt.client.ui.absolutelayout;
import java.util.HashMap;
import java.util.Map;

import com.google.gwt.core.client.GWT;
import com.google.gwt.dom.client.Style;
import com.google.gwt.dom.client.Style.Unit;
import com.google.gwt.user.client.Element;
@@ -93,11 +92,6 @@ public class AbsoluteLayoutConnector extends

}

@Override
protected Widget createWidget() {
return GWT.create(VAbsoluteLayout.class);
}

@Override
public VAbsoluteLayout getWidget() {
return (VAbsoluteLayout) super.getWidget();

+ 0
- 7
src/com/vaadin/terminal/gwt/client/ui/accordion/AccordionConnector.java View File

@@ -5,8 +5,6 @@ package com.vaadin.terminal.gwt.client.ui.accordion;

import java.util.Iterator;

import com.google.gwt.core.client.GWT;
import com.google.gwt.user.client.ui.Widget;
import com.vaadin.terminal.gwt.client.ApplicationConnection;
import com.vaadin.terminal.gwt.client.ComponentConnector;
import com.vaadin.terminal.gwt.client.UIDL;
@@ -59,11 +57,6 @@ public class AccordionConnector extends TabsheetBaseConnector implements
return (VAccordion) super.getWidget();
}

@Override
protected Widget createWidget() {
return GWT.create(VAccordion.class);
}

public void updateCaption(ComponentConnector component) {
/* Accordion does not render its children's captions */
}

+ 0
- 7
src/com/vaadin/terminal/gwt/client/ui/button/ButtonConnector.java View File

@@ -4,7 +4,6 @@

package com.vaadin.terminal.gwt.client.ui.button;

import com.google.gwt.core.client.GWT;
import com.google.gwt.event.dom.client.BlurEvent;
import com.google.gwt.event.dom.client.BlurHandler;
import com.google.gwt.event.dom.client.ClickEvent;
@@ -13,7 +12,6 @@ import com.google.gwt.event.dom.client.FocusEvent;
import com.google.gwt.event.dom.client.FocusHandler;
import com.google.gwt.event.shared.HandlerRegistration;
import com.google.gwt.user.client.DOM;
import com.google.gwt.user.client.ui.Widget;
import com.vaadin.terminal.gwt.client.EventHelper;
import com.vaadin.terminal.gwt.client.MouseEventDetails;
import com.vaadin.terminal.gwt.client.MouseEventDetailsBuilder;
@@ -95,11 +93,6 @@ public class ButtonConnector extends AbstractComponentConnector implements
getWidget().clickShortcut = getState().getClickShortcutKeyCode();
}

@Override
protected Widget createWidget() {
return GWT.create(VButton.class);
}

@Override
public VButton getWidget() {
return (VButton) super.getWidget();

+ 0
- 7
src/com/vaadin/terminal/gwt/client/ui/checkbox/CheckBoxConnector.java View File

@@ -3,7 +3,6 @@
*/
package com.vaadin.terminal.gwt.client.ui.checkbox;

import com.google.gwt.core.client.GWT;
import com.google.gwt.event.dom.client.BlurEvent;
import com.google.gwt.event.dom.client.BlurHandler;
import com.google.gwt.event.dom.client.ClickEvent;
@@ -13,7 +12,6 @@ import com.google.gwt.event.dom.client.FocusHandler;
import com.google.gwt.event.shared.HandlerRegistration;
import com.google.gwt.user.client.DOM;
import com.google.gwt.user.client.Event;
import com.google.gwt.user.client.ui.Widget;
import com.vaadin.terminal.gwt.client.EventHelper;
import com.vaadin.terminal.gwt.client.MouseEventDetails;
import com.vaadin.terminal.gwt.client.MouseEventDetailsBuilder;
@@ -116,11 +114,6 @@ public class CheckBoxConnector extends AbstractFieldConnector implements
return (VCheckBox) super.getWidget();
}

@Override
protected Widget createWidget() {
return GWT.create(VCheckBox.class);
}

public void onFocus(FocusEvent event) {
// EventHelper.updateFocusHandler ensures that this is called only when
// there is a listener on server side

+ 0
- 7
src/com/vaadin/terminal/gwt/client/ui/combobox/ComboBoxConnector.java View File

@@ -5,8 +5,6 @@ package com.vaadin.terminal.gwt.client.ui.combobox;

import java.util.Iterator;

import com.google.gwt.core.client.GWT;
import com.google.gwt.user.client.ui.Widget;
import com.vaadin.terminal.gwt.client.ApplicationConnection;
import com.vaadin.terminal.gwt.client.Paintable;
import com.vaadin.terminal.gwt.client.UIDL;
@@ -227,11 +225,6 @@ public class ComboBoxConnector extends AbstractFieldConnector implements
getWidget().initDone = true;
}

@Override
protected Widget createWidget() {
return GWT.create(VFilterSelect.class);
}

@Override
public VFilterSelect getWidget() {
return (VFilterSelect) super.getWidget();

+ 0
- 6
src/com/vaadin/terminal/gwt/client/ui/csslayout/CssLayoutConnector.java View File

@@ -6,7 +6,6 @@ package com.vaadin.terminal.gwt.client.ui.csslayout;
import java.util.HashMap;
import java.util.Map;

import com.google.gwt.core.client.GWT;
import com.google.gwt.dom.client.Style;
import com.google.gwt.user.client.Element;
import com.google.gwt.user.client.ui.Widget;
@@ -138,11 +137,6 @@ public class CssLayoutConnector extends AbstractLayoutConnector {
return (VCssLayout) super.getWidget();
}

@Override
protected Widget createWidget() {
return GWT.create(VCssLayout.class);
}

public void updateCaption(ComponentConnector child) {
Widget childWidget = child.getWidget();
FlowPane cssLayoutWidgetContainer = getWidget().panel;

+ 0
- 7
src/com/vaadin/terminal/gwt/client/ui/customcomponent/CustomComponentConnector.java View File

@@ -3,8 +3,6 @@
*/
package com.vaadin.terminal.gwt.client.ui.customcomponent;

import com.google.gwt.core.client.GWT;
import com.google.gwt.user.client.ui.Widget;
import com.vaadin.terminal.gwt.client.ComponentConnector;
import com.vaadin.terminal.gwt.client.ConnectorHierarchyChangeEvent;
import com.vaadin.terminal.gwt.client.ui.AbstractComponentContainerConnector;
@@ -16,11 +14,6 @@ import com.vaadin.ui.CustomComponent;
public class CustomComponentConnector extends
AbstractComponentContainerConnector {

@Override
protected Widget createWidget() {
return GWT.create(VCustomComponent.class);
}

@Override
public VCustomComponent getWidget() {
return (VCustomComponent) super.getWidget();

+ 0
- 12
src/com/vaadin/terminal/gwt/client/ui/customfield/CustomFieldConnector.java View File

@@ -3,23 +3,11 @@
*/
package com.vaadin.terminal.gwt.client.ui.customfield;

import com.google.gwt.core.client.GWT;
import com.google.gwt.user.client.ui.Widget;
import com.vaadin.terminal.gwt.client.ui.Connect;
import com.vaadin.terminal.gwt.client.ui.customcomponent.CustomComponentConnector;
import com.vaadin.terminal.gwt.client.ui.customcomponent.VCustomComponent;
import com.vaadin.ui.CustomField;

@Connect(value = CustomField.class)
public class CustomFieldConnector extends CustomComponentConnector {

@Override
protected Widget createWidget() {
return GWT.create(VCustomComponent.class);
}

@Override
public VCustomComponent getWidget() {
return super.getWidget();
}
}

+ 0
- 6
src/com/vaadin/terminal/gwt/client/ui/customlayout/CustomLayoutConnector.java View File

@@ -3,7 +3,6 @@
*/
package com.vaadin.terminal.gwt.client.ui.customlayout;

import com.google.gwt.core.client.GWT;
import com.google.gwt.user.client.DOM;
import com.google.gwt.user.client.ui.Widget;
import com.vaadin.terminal.gwt.client.ComponentConnector;
@@ -103,11 +102,6 @@ public class CustomLayoutConnector extends AbstractLayoutConnector implements
return (VCustomLayout) super.getWidget();
}

@Override
protected Widget createWidget() {
return GWT.create(VCustomLayout.class);
}

public void updateCaption(ComponentConnector paintable) {
getWidget().updateCaption(paintable);
}

+ 0
- 7
src/com/vaadin/terminal/gwt/client/ui/datefield/AbstractDateFieldConnector.java View File

@@ -5,8 +5,6 @@ package com.vaadin.terminal.gwt.client.ui.datefield;

import java.util.Date;

import com.google.gwt.core.client.GWT;
import com.google.gwt.user.client.ui.Widget;
import com.vaadin.terminal.gwt.client.ApplicationConnection;
import com.vaadin.terminal.gwt.client.LocaleNotLoadedException;
import com.vaadin.terminal.gwt.client.Paintable;
@@ -97,11 +95,6 @@ public class AbstractDateFieldConnector extends AbstractFieldConnector
}
}

@Override
protected Widget createWidget() {
return GWT.create(VDateField.class);
}

@Override
public VDateField getWidget() {
return (VDateField) super.getWidget();

+ 0
- 7
src/com/vaadin/terminal/gwt/client/ui/datefield/InlineDateFieldConnector.java View File

@@ -5,8 +5,6 @@ package com.vaadin.terminal.gwt.client.ui.datefield;

import java.util.Date;

import com.google.gwt.core.client.GWT;
import com.google.gwt.user.client.ui.Widget;
import com.vaadin.terminal.gwt.client.ApplicationConnection;
import com.vaadin.terminal.gwt.client.DateTimeService;
import com.vaadin.terminal.gwt.client.UIDL;
@@ -92,11 +90,6 @@ public class InlineDateFieldConnector extends AbstractDateFieldConnector {
getWidget().calendarPanel.renderCalendar();
}

@Override
protected Widget createWidget() {
return GWT.create(VDateFieldCalendar.class);
}

@Override
public VDateFieldCalendar getWidget() {
return (VDateFieldCalendar) super.getWidget();

+ 0
- 7
src/com/vaadin/terminal/gwt/client/ui/datefield/PopupDateFieldConnector.java View File

@@ -6,8 +6,6 @@ package com.vaadin.terminal.gwt.client.ui.datefield;

import java.util.Date;

import com.google.gwt.core.client.GWT;
import com.google.gwt.user.client.ui.Widget;
import com.vaadin.terminal.gwt.client.ApplicationConnection;
import com.vaadin.terminal.gwt.client.DateTimeService;
import com.vaadin.terminal.gwt.client.UIDL;
@@ -112,11 +110,6 @@ public class PopupDateFieldConnector extends TextualDateConnector {
getWidget().calendarToggle.setEnabled(true);
}

@Override
protected Widget createWidget() {
return GWT.create(VPopupCalendar.class);
}

@Override
public VPopupCalendar getWidget() {
return (VPopupCalendar) super.getWidget();

+ 0
- 7
src/com/vaadin/terminal/gwt/client/ui/datefield/TextualDateConnector.java View File

@@ -4,8 +4,6 @@

package com.vaadin.terminal.gwt.client.ui.datefield;

import com.google.gwt.core.client.GWT;
import com.google.gwt.user.client.ui.Widget;
import com.vaadin.terminal.gwt.client.ApplicationConnection;
import com.vaadin.terminal.gwt.client.UIDL;

@@ -44,11 +42,6 @@ public class TextualDateConnector extends AbstractDateFieldConnector {

}

@Override
protected Widget createWidget() {
return GWT.create(VTextualDate.class);
}

@Override
public VTextualDate getWidget() {
return (VTextualDate) super.getWidget();

+ 0
- 7
src/com/vaadin/terminal/gwt/client/ui/draganddropwrapper/DragAndDropWrapperConnector.java View File

@@ -6,8 +6,6 @@ package com.vaadin.terminal.gwt.client.ui.draganddropwrapper;
import java.util.HashMap;
import java.util.Set;

import com.google.gwt.core.client.GWT;
import com.google.gwt.user.client.ui.Widget;
import com.vaadin.terminal.gwt.client.ApplicationConnection;
import com.vaadin.terminal.gwt.client.Paintable;
import com.vaadin.terminal.gwt.client.UIDL;
@@ -62,11 +60,6 @@ public class DragAndDropWrapperConnector extends CustomComponentConnector
}
}

@Override
protected Widget createWidget() {
return GWT.create(VDragAndDropWrapper.class);
}

@Override
public VDragAndDropWrapper getWidget() {
return (VDragAndDropWrapper) super.getWidget();

+ 0
- 7
src/com/vaadin/terminal/gwt/client/ui/embedded/EmbeddedConnector.java View File

@@ -6,7 +6,6 @@ package com.vaadin.terminal.gwt.client.ui.embedded;

import java.util.Map;

import com.google.gwt.core.client.GWT;
import com.google.gwt.dom.client.Document;
import com.google.gwt.dom.client.NativeEvent;
import com.google.gwt.dom.client.Node;
@@ -16,7 +15,6 @@ import com.google.gwt.dom.client.Style;
import com.google.gwt.user.client.DOM;
import com.google.gwt.user.client.Element;
import com.google.gwt.user.client.Event;
import com.google.gwt.user.client.ui.Widget;
import com.vaadin.terminal.gwt.client.ApplicationConnection;
import com.vaadin.terminal.gwt.client.MouseEventDetails;
import com.vaadin.terminal.gwt.client.Paintable;
@@ -181,11 +179,6 @@ public class EmbeddedConnector extends AbstractComponentConnector implements
}
}

@Override
protected Widget createWidget() {
return GWT.create(VEmbedded.class);
}

@Override
public VEmbedded getWidget() {
return (VEmbedded) super.getWidget();

+ 0
- 6
src/com/vaadin/terminal/gwt/client/ui/form/FormConnector.java View File

@@ -3,7 +3,6 @@
*/
package com.vaadin.terminal.gwt.client.ui.form;

import com.google.gwt.core.client.GWT;
import com.google.gwt.dom.client.Style.Unit;
import com.google.gwt.event.dom.client.KeyDownEvent;
import com.google.gwt.user.client.ui.Widget;
@@ -191,11 +190,6 @@ public class FormConnector extends AbstractComponentContainerConnector
return (VForm) super.getWidget();
}

@Override
protected Widget createWidget() {
return GWT.create(VForm.class);
}

@Override
public boolean isReadOnly() {
return super.isReadOnly() || getState().isPropertyReadOnly();

+ 0
- 6
src/com/vaadin/terminal/gwt/client/ui/formlayout/FormLayoutConnector.java View File

@@ -3,7 +3,6 @@
*/
package com.vaadin.terminal.gwt.client.ui.formlayout;

import com.google.gwt.core.client.GWT;
import com.google.gwt.user.client.ui.Widget;
import com.vaadin.terminal.gwt.client.ComponentConnector;
import com.vaadin.terminal.gwt.client.ConnectorHierarchyChangeEvent;
@@ -97,9 +96,4 @@ public class FormLayoutConnector extends AbstractLayoutConnector {
return (VFormLayout) super.getWidget();
}

@Override
protected Widget createWidget() {
return GWT.create(VFormLayout.class);
}

}

+ 0
- 6
src/com/vaadin/terminal/gwt/client/ui/gridlayout/GridLayoutConnector.java View File

@@ -5,7 +5,6 @@ package com.vaadin.terminal.gwt.client.ui.gridlayout;

import java.util.Iterator;

import com.google.gwt.core.client.GWT;
import com.google.gwt.user.client.Element;
import com.google.gwt.user.client.ui.Widget;
import com.vaadin.terminal.gwt.client.ApplicationConnection;
@@ -224,11 +223,6 @@ public class GridLayoutConnector extends AbstractComponentContainerConnector
return (VGridLayout) super.getWidget();
}

@Override
protected Widget createWidget() {
return GWT.create(VGridLayout.class);
}

public void layoutVertically() {
getWidget().updateHeight();
}

+ 1
- 7
src/com/vaadin/terminal/gwt/client/ui/label/LabelConnector.java View File

@@ -3,10 +3,8 @@
*/
package com.vaadin.terminal.gwt.client.ui.label;

import com.google.gwt.core.client.GWT;
import com.google.gwt.dom.client.Document;
import com.google.gwt.dom.client.PreElement;
import com.google.gwt.user.client.ui.Widget;
import com.vaadin.terminal.gwt.client.Util;
import com.vaadin.terminal.gwt.client.communication.StateChangeEvent;
import com.vaadin.terminal.gwt.client.ui.AbstractComponentConnector;
@@ -17,6 +15,7 @@ import com.vaadin.ui.Label;
@Connect(value = Label.class, loadStyle = LoadStyle.EAGER)
public class LabelConnector extends AbstractComponentConnector {

@Override
public LabelState getState() {
return (LabelState) super.getState();
}
@@ -61,11 +60,6 @@ public class LabelConnector extends AbstractComponentConnector {
}
}

@Override
protected Widget createWidget() {
return GWT.create(VLabel.class);
}

@Override
public VLabel getWidget() {
return (VLabel) super.getWidget();

+ 0
- 7
src/com/vaadin/terminal/gwt/client/ui/link/LinkConnector.java View File

@@ -4,9 +4,7 @@

package com.vaadin.terminal.gwt.client.ui.link;

import com.google.gwt.core.client.GWT;
import com.google.gwt.user.client.DOM;
import com.google.gwt.user.client.ui.Widget;
import com.vaadin.terminal.gwt.client.ApplicationConnection;
import com.vaadin.terminal.gwt.client.Paintable;
import com.vaadin.terminal.gwt.client.UIDL;
@@ -87,11 +85,6 @@ public class LinkConnector extends AbstractComponentConnector implements

}

@Override
protected Widget createWidget() {
return GWT.create(VLink.class);
}

@Override
public VLink getWidget() {
return (VLink) super.getWidget();

+ 0
- 7
src/com/vaadin/terminal/gwt/client/ui/listselect/ListSelectConnector.java View File

@@ -4,8 +4,6 @@

package com.vaadin.terminal.gwt.client.ui.listselect;

import com.google.gwt.core.client.GWT;
import com.google.gwt.user.client.ui.Widget;
import com.vaadin.terminal.gwt.client.ui.Connect;
import com.vaadin.terminal.gwt.client.ui.optiongroup.OptionGroupBaseConnector;
import com.vaadin.ui.ListSelect;
@@ -13,11 +11,6 @@ import com.vaadin.ui.ListSelect;
@Connect(ListSelect.class)
public class ListSelectConnector extends OptionGroupBaseConnector {

@Override
protected Widget createWidget() {
return GWT.create(VListSelect.class);
}

@Override
public VListSelect getWidget() {
return (VListSelect) super.getWidget();

+ 0
- 6
src/com/vaadin/terminal/gwt/client/ui/menubar/MenuBarConnector.java View File

@@ -8,7 +8,6 @@ import java.util.Stack;

import com.google.gwt.core.client.GWT;
import com.google.gwt.user.client.Command;
import com.google.gwt.user.client.ui.Widget;
import com.vaadin.terminal.gwt.client.ApplicationConnection;
import com.vaadin.terminal.gwt.client.Paintable;
import com.vaadin.terminal.gwt.client.UIDL;
@@ -153,11 +152,6 @@ public class MenuBarConnector extends AbstractComponentConnector implements

}// updateFromUIDL

@Override
protected Widget createWidget() {
return GWT.create(VMenuBar.class);
}

@Override
public VMenuBar getWidget() {
return (VMenuBar) super.getWidget();

+ 0
- 7
src/com/vaadin/terminal/gwt/client/ui/nativebutton/NativeButtonConnector.java View File

@@ -3,14 +3,12 @@
*/
package com.vaadin.terminal.gwt.client.ui.nativebutton;

import com.google.gwt.core.client.GWT;
import com.google.gwt.event.dom.client.BlurEvent;
import com.google.gwt.event.dom.client.BlurHandler;
import com.google.gwt.event.dom.client.FocusEvent;
import com.google.gwt.event.dom.client.FocusHandler;
import com.google.gwt.event.shared.HandlerRegistration;
import com.google.gwt.user.client.DOM;
import com.google.gwt.user.client.ui.Widget;
import com.vaadin.terminal.gwt.client.EventHelper;
import com.vaadin.terminal.gwt.client.communication.FieldRpc.FocusAndBlurServerRpc;
import com.vaadin.terminal.gwt.client.communication.RpcProxy;
@@ -99,11 +97,6 @@ public class NativeButtonConnector extends AbstractComponentConnector implements

}

@Override
protected Widget createWidget() {
return GWT.create(VNativeButton.class);
}

@Override
public VNativeButton getWidget() {
return (VNativeButton) super.getWidget();

+ 0
- 7
src/com/vaadin/terminal/gwt/client/ui/nativeselect/NativeSelectConnector.java View File

@@ -4,8 +4,6 @@

package com.vaadin.terminal.gwt.client.ui.nativeselect;

import com.google.gwt.core.client.GWT;
import com.google.gwt.user.client.ui.Widget;
import com.vaadin.terminal.gwt.client.ui.Connect;
import com.vaadin.terminal.gwt.client.ui.optiongroup.OptionGroupBaseConnector;
import com.vaadin.ui.NativeSelect;
@@ -13,11 +11,6 @@ import com.vaadin.ui.NativeSelect;
@Connect(NativeSelect.class)
public class NativeSelectConnector extends OptionGroupBaseConnector {

@Override
protected Widget createWidget() {
return GWT.create(VNativeSelect.class);
}

@Override
public VNativeSelect getWidget() {
return (VNativeSelect) super.getWidget();

+ 0
- 6
src/com/vaadin/terminal/gwt/client/ui/optiongroup/OptionGroupConnector.java View File

@@ -6,7 +6,6 @@ package com.vaadin.terminal.gwt.client.ui.optiongroup;

import java.util.ArrayList;

import com.google.gwt.core.client.GWT;
import com.google.gwt.event.shared.HandlerRegistration;
import com.google.gwt.user.client.ui.CheckBox;
import com.google.gwt.user.client.ui.Widget;
@@ -61,11 +60,6 @@ public class OptionGroupConnector extends OptionGroupBaseConnector {
}
}

@Override
protected Widget createWidget() {
return GWT.create(VOptionGroup.class);
}

@Override
public VOptionGroup getWidget() {
return (VOptionGroup) super.getWidget();

+ 0
- 6
src/com/vaadin/terminal/gwt/client/ui/orderedlayout/HorizontalLayoutConnector.java View File

@@ -3,7 +3,6 @@
*/
package com.vaadin.terminal.gwt.client.ui.orderedlayout;

import com.google.gwt.core.client.GWT;
import com.vaadin.terminal.gwt.client.ui.Connect;
import com.vaadin.terminal.gwt.client.ui.Connect.LoadStyle;
import com.vaadin.ui.HorizontalLayout;
@@ -16,9 +15,4 @@ public class HorizontalLayoutConnector extends AbstractOrderedLayoutConnector {
return (VHorizontalLayout) super.getWidget();
}

@Override
protected VHorizontalLayout createWidget() {
return GWT.create(VHorizontalLayout.class);
}

}

+ 0
- 6
src/com/vaadin/terminal/gwt/client/ui/orderedlayout/VerticalLayoutConnector.java View File

@@ -3,7 +3,6 @@
*/
package com.vaadin.terminal.gwt.client.ui.orderedlayout;

import com.google.gwt.core.client.GWT;
import com.vaadin.terminal.gwt.client.ui.Connect;
import com.vaadin.terminal.gwt.client.ui.Connect.LoadStyle;
import com.vaadin.ui.VerticalLayout;
@@ -16,9 +15,4 @@ public class VerticalLayoutConnector extends AbstractOrderedLayoutConnector {
return (VVerticalLayout) super.getWidget();
}

@Override
protected VVerticalLayout createWidget() {
return GWT.create(VVerticalLayout.class);
}

}

+ 0
- 6
src/com/vaadin/terminal/gwt/client/ui/panel/PanelConnector.java View File

@@ -3,7 +3,6 @@
*/
package com.vaadin.terminal.gwt.client.ui.panel;

import com.google.gwt.core.client.GWT;
import com.google.gwt.dom.client.NativeEvent;
import com.google.gwt.dom.client.Style;
import com.google.gwt.dom.client.Style.Unit;
@@ -172,11 +171,6 @@ public class PanelConnector extends AbstractComponentContainerConnector
return (VPanel) super.getWidget();
}

@Override
protected Widget createWidget() {
return GWT.create(VPanel.class);
}

public void layout() {
updateSizes();
}

+ 0
- 7
src/com/vaadin/terminal/gwt/client/ui/passwordfield/PasswordFieldConnector.java View File

@@ -4,8 +4,6 @@

package com.vaadin.terminal.gwt.client.ui.passwordfield;

import com.google.gwt.core.client.GWT;
import com.google.gwt.user.client.ui.Widget;
import com.vaadin.terminal.gwt.client.ui.Connect;
import com.vaadin.terminal.gwt.client.ui.textfield.TextFieldConnector;
import com.vaadin.ui.PasswordField;
@@ -13,11 +11,6 @@ import com.vaadin.ui.PasswordField;
@Connect(PasswordField.class)
public class PasswordFieldConnector extends TextFieldConnector {

@Override
protected Widget createWidget() {
return GWT.create(VPasswordField.class);
}

@Override
public VPasswordField getWidget() {
return (VPasswordField) super.getWidget();

+ 0
- 7
src/com/vaadin/terminal/gwt/client/ui/popupview/PopupViewConnector.java View File

@@ -3,8 +3,6 @@
*/
package com.vaadin.terminal.gwt.client.ui.popupview;

import com.google.gwt.core.client.GWT;
import com.google.gwt.user.client.ui.Widget;
import com.vaadin.terminal.gwt.client.ApplicationConnection;
import com.vaadin.terminal.gwt.client.ComponentConnector;
import com.vaadin.terminal.gwt.client.Paintable;
@@ -106,11 +104,6 @@ public class PopupViewConnector extends AbstractComponentContainerConnector
return (VPopupView) super.getWidget();
}

@Override
protected Widget createWidget() {
return GWT.create(VPopupView.class);
}

public void postLayout() {
if (centerAfterLayout) {
centerAfterLayout = false;

+ 0
- 7
src/com/vaadin/terminal/gwt/client/ui/progressindicator/ProgressIndicatorConnector.java View File

@@ -4,9 +4,7 @@

package com.vaadin.terminal.gwt.client.ui.progressindicator;

import com.google.gwt.core.client.GWT;
import com.google.gwt.user.client.DOM;
import com.google.gwt.user.client.ui.Widget;
import com.vaadin.terminal.gwt.client.ApplicationConnection;
import com.vaadin.terminal.gwt.client.Paintable;
import com.vaadin.terminal.gwt.client.UIDL;
@@ -54,11 +52,6 @@ public class ProgressIndicatorConnector extends AbstractFieldConnector
}
}

@Override
protected Widget createWidget() {
return GWT.create(VProgressIndicator.class);
}

@Override
public VProgressIndicator getWidget() {
return (VProgressIndicator) super.getWidget();

+ 0
- 7
src/com/vaadin/terminal/gwt/client/ui/richtextarea/RichTextAreaConnector.java View File

@@ -3,9 +3,7 @@
*/
package com.vaadin.terminal.gwt.client.ui.richtextarea;

import com.google.gwt.core.client.GWT;
import com.google.gwt.user.client.Event;
import com.google.gwt.user.client.ui.Widget;
import com.vaadin.terminal.gwt.client.ApplicationConnection;
import com.vaadin.terminal.gwt.client.Paintable;
import com.vaadin.terminal.gwt.client.UIDL;
@@ -70,9 +68,4 @@ public class RichTextAreaConnector extends AbstractFieldConnector implements
return (VRichTextArea) super.getWidget();
};

@Override
protected Widget createWidget() {
return GWT.create(VRichTextArea.class);
}

}

+ 0
- 6
src/com/vaadin/terminal/gwt/client/ui/root/RootConnector.java View File

@@ -7,7 +7,6 @@ import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

import com.google.gwt.core.client.GWT;
import com.google.gwt.core.client.Scheduler;
import com.google.gwt.dom.client.NativeEvent;
import com.google.gwt.dom.client.Style;
@@ -299,11 +298,6 @@ public class RootConnector extends AbstractComponentContainerConnector
return (VRoot) super.getWidget();
}

@Override
protected Widget createWidget() {
return GWT.create(VRoot.class);
}

protected ComponentConnector getContent() {
return (ComponentConnector) getState().getContent();
}

+ 0
- 7
src/com/vaadin/terminal/gwt/client/ui/slider/SliderConnector.java View File

@@ -3,10 +3,8 @@
*/
package com.vaadin.terminal.gwt.client.ui.slider;

import com.google.gwt.core.client.GWT;
import com.google.gwt.core.client.Scheduler;
import com.google.gwt.user.client.Command;
import com.google.gwt.user.client.ui.Widget;
import com.vaadin.terminal.gwt.client.ApplicationConnection;
import com.vaadin.terminal.gwt.client.Paintable;
import com.vaadin.terminal.gwt.client.UIDL;
@@ -69,9 +67,4 @@ public class SliderConnector extends AbstractFieldConnector implements
return (VSlider) super.getWidget();
}

@Override
protected Widget createWidget() {
return GWT.create(VSlider.class);
}

}

+ 0
- 3
src/com/vaadin/terminal/gwt/client/ui/splitpanel/AbstractSplitPanelConnector.java View File

@@ -171,9 +171,6 @@ public abstract class AbstractSplitPanelConnector extends
return (VAbstractSplitPanel) super.getWidget();
}

@Override
protected abstract VAbstractSplitPanel createWidget();

@Override
public AbstractSplitPanelState getState() {
return (AbstractSplitPanelState) super.getState();

+ 2
- 3
src/com/vaadin/terminal/gwt/client/ui/splitpanel/HorizontalSplitPanelConnector.java View File

@@ -3,7 +3,6 @@
*/
package com.vaadin.terminal.gwt.client.ui.splitpanel;

import com.google.gwt.core.client.GWT;
import com.vaadin.terminal.gwt.client.ui.Connect;
import com.vaadin.terminal.gwt.client.ui.Connect.LoadStyle;
import com.vaadin.ui.HorizontalSplitPanel;
@@ -12,8 +11,8 @@ import com.vaadin.ui.HorizontalSplitPanel;
public class HorizontalSplitPanelConnector extends AbstractSplitPanelConnector {

@Override
protected VAbstractSplitPanel createWidget() {
return GWT.create(VSplitPanelHorizontal.class);
public VSplitPanelHorizontal getWidget() {
return (VSplitPanelHorizontal) super.getWidget();
}

}

+ 2
- 2
src/com/vaadin/terminal/gwt/client/ui/splitpanel/VerticalSplitPanelConnector.java View File

@@ -12,8 +12,8 @@ import com.vaadin.ui.VerticalSplitPanel;
public class VerticalSplitPanelConnector extends AbstractSplitPanelConnector {

@Override
protected VAbstractSplitPanel createWidget() {
return GWT.create(VSplitPanelVertical.class);
public VSplitPanelVertical getWidget() {
return (VSplitPanelVertical) super.getWidget();
}

}

+ 0
- 6
src/com/vaadin/terminal/gwt/client/ui/table/TableConnector.java View File

@@ -5,7 +5,6 @@ package com.vaadin.terminal.gwt.client.ui.table;

import java.util.Iterator;

import com.google.gwt.core.client.GWT;
import com.google.gwt.core.client.Scheduler;
import com.google.gwt.core.client.Scheduler.ScheduledCommand;
import com.google.gwt.dom.client.Style.Position;
@@ -260,11 +259,6 @@ public class TableConnector extends AbstractComponentContainerConnector

}

@Override
protected Widget createWidget() {
return GWT.create(VScrollTable.class);
}

@Override
public VScrollTable getWidget() {
return (VScrollTable) super.getWidget();

+ 0
- 5
src/com/vaadin/terminal/gwt/client/ui/tabsheet/TabsheetConnector.java View File

@@ -62,11 +62,6 @@ public class TabsheetConnector extends TabsheetBaseConnector implements
getWidget().waitingForResponse = false;
}

@Override
protected Widget createWidget() {
return GWT.create(VTabsheet.class);
}

@Override
public VTabsheet getWidget() {
return (VTabsheet) super.getWidget();

+ 0
- 7
src/com/vaadin/terminal/gwt/client/ui/textarea/TextAreaConnector.java View File

@@ -4,8 +4,6 @@

package com.vaadin.terminal.gwt.client.ui.textarea;

import com.google.gwt.core.client.GWT;
import com.google.gwt.user.client.ui.Widget;
import com.vaadin.terminal.gwt.client.communication.StateChangeEvent;
import com.vaadin.terminal.gwt.client.ui.Connect;
import com.vaadin.terminal.gwt.client.ui.textfield.TextFieldConnector;
@@ -27,11 +25,6 @@ public class TextAreaConnector extends TextFieldConnector {
getWidget().setWordwrap(getState().isWordwrap());
}

@Override
protected Widget createWidget() {
return GWT.create(VTextArea.class);
}

@Override
public VTextArea getWidget() {
return (VTextArea) super.getWidget();

+ 0
- 7
src/com/vaadin/terminal/gwt/client/ui/textfield/TextFieldConnector.java View File

@@ -4,11 +4,9 @@

package com.vaadin.terminal.gwt.client.ui.textfield;

import com.google.gwt.core.client.GWT;
import com.google.gwt.core.client.Scheduler;
import com.google.gwt.user.client.Command;
import com.google.gwt.user.client.Event;
import com.google.gwt.user.client.ui.Widget;
import com.vaadin.terminal.gwt.client.ApplicationConnection;
import com.vaadin.terminal.gwt.client.Paintable;
import com.vaadin.terminal.gwt.client.UIDL;
@@ -92,11 +90,6 @@ public class TextFieldConnector extends AbstractFieldConnector implements
}
}

@Override
protected Widget createWidget() {
return GWT.create(VTextField.class);
}

@Override
public VTextField getWidget() {
return (VTextField) super.getWidget();

+ 0
- 7
src/com/vaadin/terminal/gwt/client/ui/tree/TreeConnector.java View File

@@ -5,8 +5,6 @@ package com.vaadin.terminal.gwt.client.ui.tree;

import java.util.Iterator;

import com.google.gwt.core.client.GWT;
import com.google.gwt.user.client.ui.Widget;
import com.vaadin.terminal.gwt.client.AbstractFieldState;
import com.vaadin.terminal.gwt.client.ApplicationConnection;
import com.vaadin.terminal.gwt.client.BrowserInfo;
@@ -129,11 +127,6 @@ public class TreeConnector extends AbstractComponentConnector implements

}

@Override
protected Widget createWidget() {
return GWT.create(VTree.class);
}

@Override
public VTree getWidget() {
return (VTree) super.getWidget();

+ 0
- 7
src/com/vaadin/terminal/gwt/client/ui/treetable/TreeTableConnector.java View File

@@ -3,8 +3,6 @@
*/
package com.vaadin.terminal.gwt.client.ui.treetable;

import com.google.gwt.core.client.GWT;
import com.google.gwt.user.client.ui.Widget;
import com.vaadin.terminal.gwt.client.ApplicationConnection;
import com.vaadin.terminal.gwt.client.UIDL;
import com.vaadin.terminal.gwt.client.ui.Connect;
@@ -90,11 +88,6 @@ public class TreeTableConnector extends TableConnector {
}
}

@Override
protected Widget createWidget() {
return GWT.create(VTreeTable.class);
}

@Override
public VTreeTable getWidget() {
return (VTreeTable) super.getWidget();

+ 0
- 7
src/com/vaadin/terminal/gwt/client/ui/twincolselect/TwinColSelectConnector.java View File

@@ -4,8 +4,6 @@

package com.vaadin.terminal.gwt.client.ui.twincolselect;

import com.google.gwt.core.client.GWT;
import com.google.gwt.user.client.ui.Widget;
import com.vaadin.terminal.gwt.client.ApplicationConnection;
import com.vaadin.terminal.gwt.client.DirectionalManagedLayout;
import com.vaadin.terminal.gwt.client.UIDL;
@@ -41,11 +39,6 @@ public class TwinColSelectConnector extends OptionGroupBaseConnector implements
getWidget().captionWrapper.getElement());
}

@Override
protected Widget createWidget() {
return GWT.create(VTwinColSelect.class);
}

@Override
public VTwinColSelect getWidget() {
return (VTwinColSelect) super.getWidget();

+ 0
- 7
src/com/vaadin/terminal/gwt/client/ui/upload/UploadConnector.java View File

@@ -4,8 +4,6 @@

package com.vaadin.terminal.gwt.client.ui.upload;

import com.google.gwt.core.client.GWT;
import com.google.gwt.user.client.ui.Widget;
import com.vaadin.terminal.gwt.client.ApplicationConnection;
import com.vaadin.terminal.gwt.client.Paintable;
import com.vaadin.terminal.gwt.client.UIDL;
@@ -55,11 +53,6 @@ public class UploadConnector extends AbstractComponentConnector implements
}
}

@Override
protected Widget createWidget() {
return GWT.create(VUpload.class);
}

@Override
public VUpload getWidget() {
return (VUpload) super.getWidget();

+ 0
- 7
src/com/vaadin/terminal/gwt/client/ui/video/VideoConnector.java View File

@@ -3,8 +3,6 @@
*/
package com.vaadin.terminal.gwt.client.ui.video;

import com.google.gwt.core.client.GWT;
import com.google.gwt.user.client.ui.Widget;
import com.vaadin.terminal.gwt.client.communication.StateChangeEvent;
import com.vaadin.terminal.gwt.client.communication.URLReference;
import com.vaadin.terminal.gwt.client.ui.Connect;
@@ -35,11 +33,6 @@ public class VideoConnector extends MediaBaseConnector {
return (VVideo) super.getWidget();
}

@Override
protected Widget createWidget() {
return GWT.create(VVideo.class);
}

@Override
protected String getDefaultAltHtml() {
return "Your browser does not support the <code>video</code> element.";

+ 0
- 6
src/com/vaadin/terminal/gwt/client/ui/window/WindowConnector.java View File

@@ -3,7 +3,6 @@
*/
package com.vaadin.terminal.gwt.client.ui.window;

import com.google.gwt.core.client.GWT;
import com.google.gwt.dom.client.Element;
import com.google.gwt.dom.client.NativeEvent;
import com.google.gwt.dom.client.Style;
@@ -195,11 +194,6 @@ public class WindowConnector extends AbstractComponentContainerConnector
return (VWindow) super.getWidget();
}

@Override
protected Widget createWidget() {
return GWT.create(VWindow.class);
}

@Override
public void onConnectorHierarchyChange(ConnectorHierarchyChangeEvent event) {
super.onConnectorHierarchyChange(event);

+ 145
- 0
src/com/vaadin/terminal/gwt/widgetsetutils/AbstractConnectorClassBasedFactoryGenerator.java View File

@@ -0,0 +1,145 @@
/*
@VaadinApache2LicenseForJavaFiles@
*/

package com.vaadin.terminal.gwt.widgetsetutils;

import java.io.PrintWriter;
import java.util.Date;

import com.google.gwt.core.client.GWT;
import com.google.gwt.core.ext.Generator;
import com.google.gwt.core.ext.GeneratorContext;
import com.google.gwt.core.ext.TreeLogger;
import com.google.gwt.core.ext.TreeLogger.Type;
import com.google.gwt.core.ext.UnableToCompleteException;
import com.google.gwt.core.ext.typeinfo.JClassType;
import com.google.gwt.core.ext.typeinfo.JMethod;
import com.google.gwt.core.ext.typeinfo.JType;
import com.google.gwt.core.ext.typeinfo.NotFoundException;
import com.google.gwt.core.ext.typeinfo.TypeOracle;
import com.google.gwt.user.rebind.ClassSourceFileComposerFactory;
import com.google.gwt.user.rebind.SourceWriter;
import com.vaadin.terminal.gwt.client.ServerConnector;
import com.vaadin.terminal.gwt.client.ui.ConnectorClassBasedFactory;
import com.vaadin.terminal.gwt.client.ui.ConnectorClassBasedFactory.Creator;

/**
* GWT generator that creates a lookup method for
* {@link ConnectorClassBasedFactory} instances.
*
* @since 7.0
*/
public abstract class AbstractConnectorClassBasedFactoryGenerator extends
Generator {

@Override
public String generate(TreeLogger logger, GeneratorContext context,
String typeName) throws UnableToCompleteException {

try {
// get classType and save instance variables
return generateConnectorClassBasedFactory(typeName, logger, context);
} catch (Exception e) {
logger.log(TreeLogger.ERROR, typeName + " creation failed", e);
throw new UnableToCompleteException();
}
}

private String generateConnectorClassBasedFactory(String typeName,
TreeLogger logger, GeneratorContext context)
throws NotFoundException {
TypeOracle typeOracle = context.getTypeOracle();

JClassType classType = typeOracle.getType(typeName);
String superName = classType.getSimpleSourceName();
String packageName = classType.getPackage().getName();
String className = superName + "Impl";

// get print writer that receives the source code
PrintWriter printWriter = null;
printWriter = context.tryCreate(logger, packageName, className);
// print writer if null, source code has ALREADY been generated
if (printWriter == null) {
return packageName + "." + className;
}

Date date = new Date();

// init composer, set class properties, create source writer
ClassSourceFileComposerFactory composer = null;
composer = new ClassSourceFileComposerFactory(packageName, className);
composer.addImport(GWT.class.getName());
composer.addImport(Creator.class.getCanonicalName());
composer.setSuperclass(superName);

SourceWriter sourceWriter = composer.createSourceWriter(context,
printWriter);
sourceWriter.indent();

// public ConnectorStateFactoryImpl() {
sourceWriter.println("public " + className + "() {");
sourceWriter.indent();

JClassType serverConnectorType = typeOracle.getType(getConnectorType()
.getCanonicalName());
for (JClassType connector : serverConnectorType.getSubtypes()) {
// addCreator(TextAreaConnector.class, new Creator<SharedState>() {
if (connector.isInterface() != null || connector.isAbstract()) {
continue;
}

JClassType targetType = getTargetType(connector);
if (targetType.isAbstract()) {
continue;
}

sourceWriter.println("addCreator("
+ connector.getQualifiedSourceName()
+ ".class, new Creator<"
+ targetType.getQualifiedSourceName() + ">() {");
// public SharedState create() {
sourceWriter.println("public "
+ targetType.getQualifiedSourceName() + " create() {");
// return GWT.create(TextAreaState.class);
sourceWriter.println("return GWT.create("
+ targetType.getQualifiedSourceName() + ".class);");
// }
sourceWriter.println("}");
// });
sourceWriter.println("});");
}

// End of constructor
sourceWriter.outdent();
sourceWriter.println("}");

// close generated class
sourceWriter.outdent();
sourceWriter.println("}");

// commit generated class
context.commit(logger, printWriter);
logger.log(Type.INFO,
"Done. (" + (new Date().getTime() - date.getTime()) / 1000
+ "seconds)");
return packageName + "." + className;

}

protected abstract Class<? extends ServerConnector> getConnectorType();

protected abstract JClassType getTargetType(JClassType connectorType);

protected JClassType getGetterReturnType(JClassType connector,
String getterName) {
try {
JMethod getMethod = connector.getMethod(getterName, new JType[] {});
return (JClassType) getMethod.getReturnType();
} catch (NotFoundException e) {
return getGetterReturnType(connector.getSuperclass(), getterName);
}

}

}

+ 29
- 0
src/com/vaadin/terminal/gwt/widgetsetutils/ConnectorStateFactoryGenerator.java View File

@@ -0,0 +1,29 @@
/*
@VaadinApache2LicenseForJavaFiles@
*/

package com.vaadin.terminal.gwt.widgetsetutils;

import com.google.gwt.core.ext.typeinfo.JClassType;
import com.vaadin.terminal.gwt.client.ServerConnector;

/**
* GWT generator that creates a SharedState class for a given Connector class,
* based on the return type of getState()
*
* @since 7.0
*/
public class ConnectorStateFactoryGenerator extends
AbstractConnectorClassBasedFactoryGenerator {

@Override
protected JClassType getTargetType(JClassType connectorType) {
return getGetterReturnType(connectorType, "getState");
}

@Override
protected Class<? extends ServerConnector> getConnectorType() {
return ServerConnector.class;
}

}

+ 29
- 0
src/com/vaadin/terminal/gwt/widgetsetutils/ConnectorWidgetFactoryGenerator.java View File

@@ -0,0 +1,29 @@
/*
@VaadinApache2LicenseForJavaFiles@
*/

package com.vaadin.terminal.gwt.widgetsetutils;

import com.google.gwt.core.ext.typeinfo.JClassType;
import com.vaadin.terminal.gwt.client.ComponentConnector;
import com.vaadin.terminal.gwt.client.ServerConnector;

/**
* GWT generator that creates a Widget class for a given Connector class, based
* on the return type of getWidget()
*
* @since 7.0
*/
public class ConnectorWidgetFactoryGenerator extends
AbstractConnectorClassBasedFactoryGenerator {
@Override
protected JClassType getTargetType(JClassType connectorType) {
return getGetterReturnType(connectorType, "getWidget");
}

@Override
protected Class<? extends ServerConnector> getConnectorType() {
return ComponentConnector.class;
}

}

+ 2
- 4
tests/testbench/com/vaadin/tests/dd/MyDragSourceConnector.java View File

@@ -3,8 +3,6 @@
*/
package com.vaadin.tests.dd;

import com.google.gwt.core.client.GWT;
import com.google.gwt.user.client.ui.Widget;
import com.vaadin.terminal.gwt.client.ApplicationConnection;
import com.vaadin.terminal.gwt.client.Paintable;
import com.vaadin.terminal.gwt.client.UIDL;
@@ -23,8 +21,8 @@ public class MyDragSourceConnector extends AbstractComponentConnector implements
}

@Override
protected Widget createWidget() {
return GWT.create(VMyDragSource.class);
public VMyDragSource getWidget() {
return (VMyDragSource) super.getWidget();
}

}

+ 0
- 7
tests/testbench/com/vaadin/tests/dd/MyDropTargetConnector.java View File

@@ -3,8 +3,6 @@
*/
package com.vaadin.tests.dd;

import com.google.gwt.core.client.GWT;
import com.google.gwt.user.client.ui.Widget;
import com.vaadin.terminal.gwt.client.ApplicationConnection;
import com.vaadin.terminal.gwt.client.Paintable;
import com.vaadin.terminal.gwt.client.UIDL;
@@ -28,9 +26,4 @@ public class MyDropTargetConnector extends AbstractComponentConnector implements
return (VMyDropTarget) super.getWidget();
}

@Override
protected Widget createWidget() {
return GWT.create(VMyDropTarget.class);
}

}

Loading…
Cancel
Save