]> source.dussan.org Git - vaadin-framework.git/commitdiff
window implementation
authorMatti Tahvonen <matti.tahvonen@itmill.com>
Fri, 10 Aug 2007 07:20:04 +0000 (07:20 +0000)
committerMatti Tahvonen <matti.tahvonen@itmill.com>
Fri, 10 Aug 2007 07:20:04 +0000 (07:20 +0000)
svn changeset:1981/svn branch:trunk

src/com/itmill/toolkit/terminal/gwt/client/ApplicationConnection.java
src/com/itmill/toolkit/terminal/gwt/client/DefaultWidgetFactory.java
src/com/itmill/toolkit/terminal/gwt/public/component-themes/collection.css
src/com/itmill/toolkit/terminal/gwt/public/component-themes/window/css/window.css [new file with mode: 0644]

index 088f63f07084d04eb4630bbaba54de2aa68b80e3..535605532a05ce042739dcc21659db3679c8c0dd 100755 (executable)
@@ -22,6 +22,7 @@ import com.google.gwt.user.client.ui.HasWidgets;
 import com.google.gwt.user.client.ui.RootPanel;
 import com.google.gwt.user.client.ui.Widget;
 import com.itmill.toolkit.terminal.gwt.client.ui.IContextMenu;
+import com.itmill.toolkit.terminal.gwt.client.ui.IView;
 
 /**
  * Entry point classes define <code>onModuleLoad()</code>.
@@ -153,14 +154,19 @@ public class ApplicationConnection implements EntryPoint, FocusListener {
                                                                + uidl.getTag()
                                                                + ", but there is no such paintable ("
                                                                + uidl.getId() + ") registered yet.");
-                                       Widget window = widgetFactory.createWidget(uidl);
-                                       registerPaintable(uidl.getId(), (Paintable) window);
-                                       ((Paintable) window).updateFromUIDL(uidl, this);
-
-                                       // TODO We should also handle other windows
-                                       RootPanel.get("itmtk-ajax-window").add(window);
+                                       if(uidl.getId().equals("PID0")) {
+                                               // view
+                                               IView view = new IView();
+                                               view.updateFromUIDL(uidl, this);
+                                               // TODO remove hardcoded id name
+                                               RootPanel.get("itmtk-ajax-window").add(view);
+                                       } else {
+                                               Widget window = widgetFactory.createWidget(uidl);
+                                               registerPaintable(uidl.getId(), (Paintable) window);
+                                               RootPanel.get().add(window);
+                                               ((Paintable) window).updateFromUIDL(uidl, this);
+                                       }
                                }
-
                        } catch (Throwable e) {
                                e.printStackTrace();
                        }
index a40b6985a2915bd443e7b28eccc508576ae095a7..f5d7a923dfdf7c09eb9653c05744f0ca3b3c997b 100644 (file)
@@ -28,6 +28,7 @@ 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.IView;
+import com.itmill.toolkit.terminal.gwt.client.ui.IWindow;
 
 public class DefaultWidgetFactory implements WidgetFactory {
 
@@ -41,7 +42,7 @@ public class DefaultWidgetFactory implements WidgetFactory {
                        return new IButton();
                }
                else if ("window".equals(tag))
-                       return new IView();
+                       return new IWindow();
                else if ("orderedlayout".equals(tag)) {
                        if ("horizontal".equals(uidl.getStringAttribute("orientation")))
                                return new IOrderedLayout(IOrderedLayout.ORIENTATION_HORIZONTAL);
index 04bf7396d2788a0b2e3b4fb0c3acac84b6438153..ee80367724ab13ebdd7753d10e99dee4a5f3ebf0 100644 (file)
@@ -5,4 +5,5 @@
 @import "tabsheet/css/tabsheet.css";\r
 @import "datefield/css/datefield.css";\r
 @import "table/css/table.css";\r
-@import "slider/css/slider.css";
\ No newline at end of file
+@import "slider/css/slider.css";
+@import "window/css/window.css";
diff --git a/src/com/itmill/toolkit/terminal/gwt/public/component-themes/window/css/window.css b/src/com/itmill/toolkit/terminal/gwt/public/component-themes/window/css/window.css
new file mode 100644 (file)
index 0000000..dd5b8bc
--- /dev/null
@@ -0,0 +1,22 @@
+.i-window {
+       border: 1px solid #999;
+}
+.i-window-header {
+       background: yellow;
+       height:20px;
+}
+
+.i-window-footer {
+       background: #0f0;
+       height:10px;
+}
+
+.i-window-resizeBox {
+       position:absolute;
+       bottom:0;
+       right:0;
+       background: black;
+       width: 10px;
+       height: 10px;
+       float:right;
+}