aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatti Tahvonen <matti.tahvonen@itmill.com>2010-06-11 14:40:49 +0000
committerMatti Tahvonen <matti.tahvonen@itmill.com>2010-06-11 14:40:49 +0000
commitd3482aab86dfdb76ab33260b82e4821094e1b5fa (patch)
treea96d883cd6d182ef29167b5294218014c86cbfe9
parentac06d92f7e6ec40fc9cbdf5c2fe867079cfc343c (diff)
downloadvaadin-framework-d3482aab86dfdb76ab33260b82e4821094e1b5fa.tar.gz
vaadin-framework-d3482aab86dfdb76ab33260b82e4821094e1b5fa.zip
code splitting + client initialization
svn changeset:13651/svn branch:6.4
-rw-r--r--src/com/vaadin/terminal/gwt/DefaultWidgetSet.gwt.xml2
-rw-r--r--src/com/vaadin/ui/Button.java3
-rw-r--r--src/com/vaadin/ui/ClientWidget.java22
-rw-r--r--src/com/vaadin/ui/CustomComponent.java3
-rw-r--r--src/com/vaadin/ui/HorizontalLayout.java3
-rw-r--r--src/com/vaadin/ui/Label.java3
-rw-r--r--src/com/vaadin/ui/OrderedLayout.java3
-rw-r--r--src/com/vaadin/ui/SplitPanel.java3
-rw-r--r--src/com/vaadin/ui/TextField.java3
-rw-r--r--src/com/vaadin/ui/UriFragmentUtility.java3
-rw-r--r--src/com/vaadin/ui/VerticalLayout.java3
-rw-r--r--tests/src/com/vaadin/tests/server/container/AbstractContainerTest.java2
12 files changed, 40 insertions, 13 deletions
diff --git a/src/com/vaadin/terminal/gwt/DefaultWidgetSet.gwt.xml b/src/com/vaadin/terminal/gwt/DefaultWidgetSet.gwt.xml
index c5c9556eb0..1413377717 100644
--- a/src/com/vaadin/terminal/gwt/DefaultWidgetSet.gwt.xml
+++ b/src/com/vaadin/terminal/gwt/DefaultWidgetSet.gwt.xml
@@ -53,6 +53,6 @@
</any>
</replace-with>
- <entry-point class="com.vaadin.terminal.gwt.client.DefaultWidgetSet" />
+ <entry-point class="com.vaadin.terminal.gwt.client.ApplicationConfiguration" />
</module>
diff --git a/src/com/vaadin/ui/Button.java b/src/com/vaadin/ui/Button.java
index 99daf2b34c..92e578baad 100644
--- a/src/com/vaadin/ui/Button.java
+++ b/src/com/vaadin/ui/Button.java
@@ -22,6 +22,7 @@ import com.vaadin.event.ShortcutAction.ModifierKey;
import com.vaadin.terminal.PaintException;
import com.vaadin.terminal.PaintTarget;
import com.vaadin.terminal.gwt.client.ui.VButton;
+import com.vaadin.ui.ClientWidget.LoadStyle;
import com.vaadin.ui.themes.BaseTheme;
/**
@@ -33,7 +34,7 @@ import com.vaadin.ui.themes.BaseTheme;
* @since 3.0
*/
@SuppressWarnings("serial")
-@ClientWidget(value = VButton.class, lazyLoad = false)
+@ClientWidget(value = VButton.class, loadStyle = LoadStyle.EAGER)
public class Button extends AbstractField implements FieldEvents.BlurNotifier,
FieldEvents.FocusNotifier {
diff --git a/src/com/vaadin/ui/ClientWidget.java b/src/com/vaadin/ui/ClientWidget.java
index 39aecf1f86..0848309b31 100644
--- a/src/com/vaadin/ui/ClientWidget.java
+++ b/src/com/vaadin/ui/ClientWidget.java
@@ -26,7 +26,6 @@ import com.vaadin.terminal.gwt.widgetsetutils.WidgetMapGenerator;
* Note, even though client side implementation is needed during development,
* one may safely remove them from classpath of the production server.
*
- *
* @since 6.2
*/
@Retention(RetentionPolicy.RUNTIME)
@@ -38,6 +37,8 @@ public @interface ClientWidget {
Class<? extends Paintable> value();
/**
+ * TODO rewrite for EAGER, DEFERRED, LAZY
+ *
* The lazy loading of a widget implementation means the client side
* component is not included in the initial JavaScript application loaded
* when the application starts. Instead the implementation is loaded to the
@@ -64,6 +65,23 @@ public @interface ClientWidget {
* screen slightly increases, but widgets implementation does not
* stress the initialization of the client side engine.
*/
- boolean lazyLoad() default true;
+ LoadStyle loadStyle() default LoadStyle.DEFERRED;
+
+ public enum LoadStyle {
+ /**
+ * The widget is included in the initial JS sent to the client.
+ */
+ EAGER,
+ /**
+ * Not included in the initial set of widgets, but added to queue from
+ * which it will be loaded when network is not busy or the
+ * implementation is required.
+ */
+ DEFERRED,
+ /**
+ * Loaded to the client only if needed.
+ */
+ LAZY
+ }
}
diff --git a/src/com/vaadin/ui/CustomComponent.java b/src/com/vaadin/ui/CustomComponent.java
index 46e92384f8..e06fb321e3 100644
--- a/src/com/vaadin/ui/CustomComponent.java
+++ b/src/com/vaadin/ui/CustomComponent.java
@@ -10,6 +10,7 @@ import java.util.Iterator;
import com.vaadin.terminal.PaintException;
import com.vaadin.terminal.PaintTarget;
import com.vaadin.terminal.gwt.client.ui.VCustomComponent;
+import com.vaadin.ui.ClientWidget.LoadStyle;
/**
* Custom component provides simple implementation of Component interface for
@@ -26,7 +27,7 @@ import com.vaadin.terminal.gwt.client.ui.VCustomComponent;
* @since 3.0
*/
@SuppressWarnings("serial")
-@ClientWidget(value = VCustomComponent.class, lazyLoad = false)
+@ClientWidget(value = VCustomComponent.class, loadStyle = LoadStyle.EAGER)
public class CustomComponent extends AbstractComponentContainer {
/**
diff --git a/src/com/vaadin/ui/HorizontalLayout.java b/src/com/vaadin/ui/HorizontalLayout.java
index 3308b5764e..7840d50027 100644
--- a/src/com/vaadin/ui/HorizontalLayout.java
+++ b/src/com/vaadin/ui/HorizontalLayout.java
@@ -4,6 +4,7 @@
package com.vaadin.ui;
import com.vaadin.terminal.gwt.client.ui.VHorizontalLayout;
+import com.vaadin.ui.ClientWidget.LoadStyle;
/**
* Horizontal layout
@@ -17,7 +18,7 @@ import com.vaadin.terminal.gwt.client.ui.VHorizontalLayout;
* @since 5.3
*/
@SuppressWarnings("serial")
-@ClientWidget(value = VHorizontalLayout.class, lazyLoad = false)
+@ClientWidget(value = VHorizontalLayout.class, loadStyle = LoadStyle.EAGER)
public class HorizontalLayout extends AbstractOrderedLayout {
public HorizontalLayout() {
diff --git a/src/com/vaadin/ui/Label.java b/src/com/vaadin/ui/Label.java
index 288692a365..6a295f7bc1 100644
--- a/src/com/vaadin/ui/Label.java
+++ b/src/com/vaadin/ui/Label.java
@@ -11,6 +11,7 @@ import com.vaadin.data.util.ObjectProperty;
import com.vaadin.terminal.PaintException;
import com.vaadin.terminal.PaintTarget;
import com.vaadin.terminal.gwt.client.ui.VLabel;
+import com.vaadin.ui.ClientWidget.LoadStyle;
/**
* Label component for showing non-editable short texts.
@@ -38,7 +39,7 @@ import com.vaadin.terminal.gwt.client.ui.VLabel;
* @since 3.0
*/
@SuppressWarnings("serial")
-@ClientWidget(value = VLabel.class, lazyLoad = false)
+@ClientWidget(value = VLabel.class, loadStyle = LoadStyle.EAGER)
public class Label extends AbstractComponent implements Property,
Property.Viewer, Property.ValueChangeListener,
Property.ValueChangeNotifier, Comparable {
diff --git a/src/com/vaadin/ui/OrderedLayout.java b/src/com/vaadin/ui/OrderedLayout.java
index dafaf54e8e..4718c839ba 100644
--- a/src/com/vaadin/ui/OrderedLayout.java
+++ b/src/com/vaadin/ui/OrderedLayout.java
@@ -6,6 +6,7 @@ package com.vaadin.ui;
import com.vaadin.terminal.PaintException;
import com.vaadin.terminal.PaintTarget;
import com.vaadin.terminal.gwt.client.ui.VOrderedLayout;
+import com.vaadin.ui.ClientWidget.LoadStyle;
/**
* Ordered layout.
@@ -24,7 +25,7 @@ import com.vaadin.terminal.gwt.client.ui.VOrderedLayout;
*/
@SuppressWarnings("serial")
@Deprecated
-@ClientWidget(value = VOrderedLayout.class, lazyLoad = false)
+@ClientWidget(value = VOrderedLayout.class, loadStyle = LoadStyle.EAGER)
public class OrderedLayout extends AbstractOrderedLayout {
/* Predefined orientations */
diff --git a/src/com/vaadin/ui/SplitPanel.java b/src/com/vaadin/ui/SplitPanel.java
index fc443052e8..cd41a82760 100644
--- a/src/com/vaadin/ui/SplitPanel.java
+++ b/src/com/vaadin/ui/SplitPanel.java
@@ -17,6 +17,7 @@ import com.vaadin.terminal.gwt.client.MouseEventDetails;
import com.vaadin.terminal.gwt.client.ui.VSplitPanel;
import com.vaadin.terminal.gwt.client.ui.VSplitPanelHorizontal;
import com.vaadin.tools.ReflectTools;
+import com.vaadin.ui.ClientWidget.LoadStyle;
/**
* SplitPanel.
@@ -30,7 +31,7 @@ import com.vaadin.tools.ReflectTools;
* @since 5.0
*/
@SuppressWarnings("serial")
-@ClientWidget(value = VSplitPanelHorizontal.class, lazyLoad = false)
+@ClientWidget(value = VSplitPanelHorizontal.class, loadStyle = LoadStyle.EAGER)
public class SplitPanel extends AbstractLayout {
/* Predefined orientations */
diff --git a/src/com/vaadin/ui/TextField.java b/src/com/vaadin/ui/TextField.java
index 9baeea744b..aa4c7c8661 100644
--- a/src/com/vaadin/ui/TextField.java
+++ b/src/com/vaadin/ui/TextField.java
@@ -16,6 +16,7 @@ import com.vaadin.event.FieldEvents.FocusListener;
import com.vaadin.terminal.PaintException;
import com.vaadin.terminal.PaintTarget;
import com.vaadin.terminal.gwt.client.ui.VTextField;
+import com.vaadin.ui.ClientWidget.LoadStyle;
/**
* <p>
@@ -38,7 +39,7 @@ import com.vaadin.terminal.gwt.client.ui.VTextField;
* @since 3.0
*/
@SuppressWarnings("serial")
-@ClientWidget(value = VTextField.class, lazyLoad = false)
+@ClientWidget(value = VTextField.class, loadStyle = LoadStyle.EAGER)
public class TextField extends AbstractField implements
FieldEvents.BlurNotifier, FieldEvents.FocusNotifier {
diff --git a/src/com/vaadin/ui/UriFragmentUtility.java b/src/com/vaadin/ui/UriFragmentUtility.java
index a99b2803ca..7835dcf90e 100644
--- a/src/com/vaadin/ui/UriFragmentUtility.java
+++ b/src/com/vaadin/ui/UriFragmentUtility.java
@@ -10,6 +10,7 @@ import java.util.Map;
import com.vaadin.terminal.PaintException;
import com.vaadin.terminal.PaintTarget;
import com.vaadin.terminal.gwt.client.ui.VUriFragmentUtility;
+import com.vaadin.ui.ClientWidget.LoadStyle;
/**
* Experimental web browser dependent component for URI fragment (part after
@@ -20,7 +21,7 @@ import com.vaadin.terminal.gwt.client.ui.VUriFragmentUtility;
*
*/
@SuppressWarnings("serial")
-@ClientWidget(value = VUriFragmentUtility.class, lazyLoad = false)
+@ClientWidget(value = VUriFragmentUtility.class, loadStyle = LoadStyle.EAGER)
public class UriFragmentUtility extends AbstractComponent {
/**
diff --git a/src/com/vaadin/ui/VerticalLayout.java b/src/com/vaadin/ui/VerticalLayout.java
index 52b928ed82..40ea05b697 100644
--- a/src/com/vaadin/ui/VerticalLayout.java
+++ b/src/com/vaadin/ui/VerticalLayout.java
@@ -4,6 +4,7 @@
package com.vaadin.ui;
import com.vaadin.terminal.gwt.client.ui.VVerticalLayout;
+import com.vaadin.ui.ClientWidget.LoadStyle;
/**
* Vertical layout
@@ -18,7 +19,7 @@ import com.vaadin.terminal.gwt.client.ui.VVerticalLayout;
* @since 5.3
*/
@SuppressWarnings("serial")
-@ClientWidget(value = VVerticalLayout.class, lazyLoad = false)
+@ClientWidget(value = VVerticalLayout.class, loadStyle = LoadStyle.EAGER)
public class VerticalLayout extends AbstractOrderedLayout {
public VerticalLayout() {
diff --git a/tests/src/com/vaadin/tests/server/container/AbstractContainerTest.java b/tests/src/com/vaadin/tests/server/container/AbstractContainerTest.java
index f7f6ccbd47..30c528a04d 100644
--- a/tests/src/com/vaadin/tests/server/container/AbstractContainerTest.java
+++ b/tests/src/com/vaadin/tests/server/container/AbstractContainerTest.java
@@ -333,7 +333,7 @@ public abstract class AbstractContainerTest extends TestCase {
"com.vaadin.terminal.gwt.client.ContainerResizedListener",
"com.vaadin.terminal.gwt.client.CSSRule",
"com.vaadin.terminal.gwt.client.DateTimeService",
- "com.vaadin.terminal.gwt.client.DefaultWidgetSet",
+ "com.vaadin.terminal.gwt.client.WidgetSet",
"com.vaadin.terminal.gwt.client.Focusable",
"com.vaadin.terminal.gwt.client.HistoryImplIEVaadin",
"com.vaadin.terminal.gwt.client.LocaleNotLoadedException",