summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatti Tahvonen <matti.tahvonen@itmill.com>2007-08-09 07:32:19 +0000
committerMatti Tahvonen <matti.tahvonen@itmill.com>2007-08-09 07:32:19 +0000
commitada564c202f7020fb250b5e5357fdae58e9ac48a (patch)
tree2f82e44230d29a483a82c61b2f5f15ecf8079697
parent1e4852c87e895456bad116b5ae690450156a735e (diff)
downloadvaadin-framework-ada564c202f7020fb250b5e5357fdae58e9ac48a.tar.gz
vaadin-framework-ada564c202f7020fb250b5e5357fdae58e9ac48a.zip
Renamed IWindow to IView
svn changeset:1972/svn branch:trunk
-rw-r--r--src/com/itmill/toolkit/terminal/gwt/client/DefaultWidgetFactory.java4
-rw-r--r--src/com/itmill/toolkit/terminal/gwt/client/ui/ICustomLayout.java6
-rw-r--r--src/com/itmill/toolkit/terminal/gwt/client/ui/IView.java38
3 files changed, 43 insertions, 5 deletions
diff --git a/src/com/itmill/toolkit/terminal/gwt/client/DefaultWidgetFactory.java b/src/com/itmill/toolkit/terminal/gwt/client/DefaultWidgetFactory.java
index 907b8c4a47..a40b6985a2 100644
--- a/src/com/itmill/toolkit/terminal/gwt/client/DefaultWidgetFactory.java
+++ b/src/com/itmill/toolkit/terminal/gwt/client/DefaultWidgetFactory.java
@@ -27,7 +27,7 @@ import com.itmill.toolkit.terminal.gwt.client.ui.ITree;
import com.itmill.toolkit.terminal.gwt.client.ui.ITwinColSelect;
import com.itmill.toolkit.terminal.gwt.client.ui.IUnknownComponent;
import com.itmill.toolkit.terminal.gwt.client.ui.IOrderedLayout;
-import com.itmill.toolkit.terminal.gwt.client.ui.IWindow;
+import com.itmill.toolkit.terminal.gwt.client.ui.IView;
public class DefaultWidgetFactory implements WidgetFactory {
@@ -41,7 +41,7 @@ public class DefaultWidgetFactory implements WidgetFactory {
return new IButton();
}
else if ("window".equals(tag))
- return new IWindow();
+ return new IView();
else if ("orderedlayout".equals(tag)) {
if ("horizontal".equals(uidl.getStringAttribute("orientation")))
return new IOrderedLayout(IOrderedLayout.ORIENTATION_HORIZONTAL);
diff --git a/src/com/itmill/toolkit/terminal/gwt/client/ui/ICustomLayout.java b/src/com/itmill/toolkit/terminal/gwt/client/ui/ICustomLayout.java
index f90b11b516..e1a3e6e148 100644
--- a/src/com/itmill/toolkit/terminal/gwt/client/ui/ICustomLayout.java
+++ b/src/com/itmill/toolkit/terminal/gwt/client/ui/ICustomLayout.java
@@ -137,11 +137,11 @@ public class ICustomLayout extends ComplexPanel implements Paintable, Layout {
// Remap image srcs in layout
Widget parent = getParent();
- while (parent != null && !(parent instanceof IWindow))
+ while (parent != null && !(parent instanceof IView))
parent = parent.getParent();
- if (parent != null && ((IWindow) parent).getTheme() != null)
+ if (parent != null && ((IView) parent).getTheme() != null)
;
- prefixImgSrcs(getElement(), "../theme/" + ((IWindow) parent).getTheme()
+ prefixImgSrcs(getElement(), "../theme/" + ((IView) parent).getTheme()
+ "/layout/");
}
diff --git a/src/com/itmill/toolkit/terminal/gwt/client/ui/IView.java b/src/com/itmill/toolkit/terminal/gwt/client/ui/IView.java
new file mode 100644
index 0000000000..d7c42050d1
--- /dev/null
+++ b/src/com/itmill/toolkit/terminal/gwt/client/ui/IView.java
@@ -0,0 +1,38 @@
+package com.itmill.toolkit.terminal.gwt.client.ui;
+
+import com.google.gwt.user.client.ui.SimplePanel;
+import com.google.gwt.user.client.ui.Widget;
+import com.itmill.toolkit.terminal.gwt.client.ApplicationConnection;
+import com.itmill.toolkit.terminal.gwt.client.Paintable;
+import com.itmill.toolkit.terminal.gwt.client.UIDL;
+
+public class IView extends SimplePanel implements Paintable {
+
+ private String theme;
+
+ private Paintable layout;
+
+ public String getTheme() {
+ return theme;
+ }
+
+ public void updateFromUIDL(UIDL uidl, ApplicationConnection client) {
+ theme = uidl.getStringAttribute("theme");
+ com.google.gwt.user.client.Window.setTitle(uidl.getStringAttribute("caption"));
+ UIDL childUidl = uidl.getChildUIDL(0);
+ Paintable lo = (Paintable) client.getWidget(childUidl);
+ if(layout != null) {
+ if(layout != lo) {
+ // remove old
+ client.unregisterPaintable(layout);
+ // add new
+ setWidget((Widget) lo);
+ layout = lo;
+ }
+ } else {
+ setWidget((Widget) lo);
+ }
+ lo.updateFromUIDL(childUidl, client);
+ }
+
+}