]> source.dussan.org Git - vaadin-framework.git/commitdiff
enhancements to gridlayout, label, window
authorMatti Tahvonen <matti.tahvonen@itmill.com>
Thu, 7 Jun 2007 10:49:08 +0000 (10:49 +0000)
committerMatti Tahvonen <matti.tahvonen@itmill.com>
Thu, 7 Jun 2007 10:49:08 +0000 (10:49 +0000)
svn changeset:1633/svn branch:trunk

src/com/itmill/toolkit/terminal/gwt/client/Client.java
src/com/itmill/toolkit/terminal/gwt/client/UIDL.java
src/com/itmill/toolkit/terminal/gwt/client/ui/GridLayout.java
src/com/itmill/toolkit/terminal/gwt/client/ui/Label.java
src/com/itmill/toolkit/terminal/gwt/client/ui/Window.java

index 3027b10740f42147f5aefd11043ddb0b7ea56798..f9c0179f0226f11007e0e8d92870783fd35b498a 100755 (executable)
@@ -1,5 +1,6 @@
 package com.itmill.toolkit.terminal.gwt.client;
 
+import java.util.Date;
 import java.util.HashMap;
 import java.util.Vector;
 
@@ -94,6 +95,7 @@ public class Client implements EntryPoint {
        }
 
        private void handleReceivedJSONMessage(Response response) {
+               Date start = new Date();
                JSONValue json = JSONParser
                                .parse(response.getText().substring(3) + "}");
 
@@ -103,7 +105,12 @@ public class Client implements EntryPoint {
                        try {
                                UIDL change = new UIDL((JSONArray) changes.get(i));
                                console.log("Received the following change: ");
-                               console.dirUIDL(change);
+                               try {
+                                       console.dirUIDL(change);
+                               } catch (Exception e) {
+                                       // TODO: dir doesn't work in any browser although it should work (works in hosted mode)
+                                       // it partially did at some part but now broken.
+                               }
                                UIDL uidl = change.getChildUIDL(0);
                                Paintable paintable = getPaintable(uidl.getId());
                                if (paintable != null)
@@ -124,6 +131,8 @@ public class Client implements EntryPoint {
                        }
 
                }
+               long prosessingTime = (new Date().getTime()) - start.getTime();
+               console.log(" Processing time was " + String.valueOf(prosessingTime));
        }
 
        public void registerPaintable(String id, Paintable paintable) {
index 6f86696cba230c11d99060d7af48bd23c39cd8a4..acddac2634736e7690f6f0d1b6372b7f558107d3 100644 (file)
@@ -179,12 +179,13 @@ public class UIDL {
 
                Iterator i = getChildIterator();
                while (i.hasNext()) {
+                       Object child = i.next();
                        try{
-                               UIDL c = (UIDL) i.next();
+                               UIDL c = (UIDL) child;
                                tmp.addItem(c.dir());
                                
                        } catch (Exception e) {
-                               tmp.addItem("bööh");
+                               tmp.addItem(child.toString());
                        }
                }
                item.addItem(tmp);
index b61a53aabd8a1559143386fc668eaeacd7667a97..e3c560408cac4e008845498793c4e6ac372e3173 100644 (file)
@@ -23,6 +23,10 @@ public class GridLayout extends FlexTable implements Paintable {
                                        UIDL c = (UIDL) j.next();
                                        if ("gc".equals(c.getTag())) {
                                                column++;
+                                               if(c.hasAttribute("w")) {
+                                                       int w = c.getIntAttribute("w");
+                                                       ((FlexCellFormatter)getCellFormatter()).setColSpan(row,column, w);
+                                               }
                                                UIDL u = c.getChildUIDL(0);                                             
                                                Widget child = client.createWidgetFromUIDL(u);
                                                if (child != null)
index 23008ab6257a5a4c5331b890e29c958ef121d22e..21199396d9231dc3454c4b333cd4495e3e41292a 100644 (file)
@@ -1,12 +1,38 @@
 package com.itmill.toolkit.terminal.gwt.client.ui;
 
+import com.google.gwt.user.client.ui.Composite;
+import com.google.gwt.user.client.ui.VerticalPanel;
 import com.itmill.toolkit.terminal.gwt.client.Client;
 import com.itmill.toolkit.terminal.gwt.client.Paintable;
 import com.itmill.toolkit.terminal.gwt.client.UIDL;
 
-public class Label extends com.google.gwt.user.client.ui.Label implements Paintable{
-
+public class Label extends Composite implements Paintable{
+       
+       com.google.gwt.user.client.ui.Label caption = new com.google.gwt.user.client.ui.Label();;
+       com.google.gwt.user.client.ui.Label content = new com.google.gwt.user.client.ui.Label();;
+       
+       public Label() {
+               VerticalPanel panel = new VerticalPanel();
+               panel.add(caption);
+               panel.add(content);
+               initWidget(panel);
+               setStyleName("itmtk-label");
+               caption.setStyleName("itmtk-label-caption");
+               content.setStyleName("itmtk-label-content");
+       }
+       
        public void updateFromUIDL(UIDL uidl, Client client) {
-               setText(uidl.getChildString(0));
+               setContent(uidl.getChildString(0));
+               if(uidl.hasAttribute("caption"))
+                       setCaption(uidl.getStringAttribute("caption"));
+               else
+                       caption.setVisible(false);
+       }
+       
+       public void setContent(String c) {
+               content.setText(c);
+       }
+       public void setCaption(String c) {
+               caption.setText(c);
        }
 }
index b1d0a92968582ea4a0de06b9b3c598fa638db111..ed49aa5c13d1f496feb4c4f8eb54d1c92621d211 100644 (file)
@@ -1,28 +1,24 @@
 package com.itmill.toolkit.terminal.gwt.client.ui;
 
-import com.google.gwt.user.client.ui.DockPanel;
-import com.google.gwt.user.client.ui.Label;
+import com.google.gwt.user.client.ui.FlowPanel;
 import com.itmill.toolkit.terminal.gwt.client.Client;
 import com.itmill.toolkit.terminal.gwt.client.Paintable;
 import com.itmill.toolkit.terminal.gwt.client.UIDL;
 
-public class Window extends DockPanel implements Paintable {
+public class Window extends FlowPanel implements Paintable {
 
        String id;
-       Label caption = new Label();
 
        public Window() {
                super();
-               setBorderWidth(2);
-               add(caption,NORTH);
        }
        
        public void updateFromUIDL(UIDL uidl, Client client) {
 
                id = uidl.getId();
-               caption.setText(uidl.getStringAttribute("caption"));
+               com.google.gwt.user.client.Window.setTitle(uidl.getStringAttribute("caption"));
                UIDL child = uidl.getChildUIDL(0);
-               add(client.createWidgetFromUIDL(child),CENTER);
+               add(client.createWidgetFromUIDL(child));
        }
 
 }