]> source.dussan.org Git - vaadin-framework.git/commitdiff
added select
authorMatti Tahvonen <matti.tahvonen@itmill.com>
Fri, 8 Jun 2007 06:09:58 +0000 (06:09 +0000)
committerMatti Tahvonen <matti.tahvonen@itmill.com>
Fri, 8 Jun 2007 06:09:58 +0000 (06:09 +0000)
svn changeset:1642/svn branch:trunk

src/com/itmill/toolkit/terminal/gwt/client/DefaultWidgetFactory.java
src/com/itmill/toolkit/terminal/gwt/client/ui/TkSelect.java [new file with mode: 0644]

index f6a4646c10e504073b283d964e3bc39ac78bd7ba..c381406fd23a378ca17f003bf2f97c7c8038dd6f 100644 (file)
@@ -5,6 +5,7 @@ import com.itmill.toolkit.terminal.gwt.client.ui.TkButton;
 import com.itmill.toolkit.terminal.gwt.client.ui.TkGridLayout;
 import com.itmill.toolkit.terminal.gwt.client.ui.TkLabel;
 import com.itmill.toolkit.terminal.gwt.client.ui.TkOrderedLayout;
+import com.itmill.toolkit.terminal.gwt.client.ui.TkSelect;
 import com.itmill.toolkit.terminal.gwt.client.ui.TkTree;
 import com.itmill.toolkit.terminal.gwt.client.ui.TkUnknownComponent;
 import com.itmill.toolkit.terminal.gwt.client.ui.TkWindow;
@@ -25,6 +26,8 @@ public class DefaultWidgetFactory implements WidgetFactory {
                        return new TkGridLayout();
                if ("tree".equals(tag))
                        return new TkTree();
+               if ("select".equals(tag))
+                       return new TkSelect();
 
                return new TkUnknownComponent();
        }
diff --git a/src/com/itmill/toolkit/terminal/gwt/client/ui/TkSelect.java b/src/com/itmill/toolkit/terminal/gwt/client/ui/TkSelect.java
new file mode 100644 (file)
index 0000000..91c8fdc
--- /dev/null
@@ -0,0 +1,38 @@
+package com.itmill.toolkit.terminal.gwt.client.ui;
+
+import java.util.Iterator;
+
+import com.google.gwt.user.client.ui.Composite;
+import com.google.gwt.user.client.ui.Label;
+import com.google.gwt.user.client.ui.ListBox;
+import com.google.gwt.user.client.ui.TreeItem;
+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 TkSelect extends Composite implements Paintable {
+       
+       Label caption = new Label();
+       ListBox select = new ListBox();
+       
+       public TkSelect() {
+               VerticalPanel panel = new VerticalPanel();
+               panel.add(caption);
+               panel.add(select);
+               initWidget(panel);
+       }
+
+       public void updateFromUIDL(UIDL uidl, Client client) {
+               
+               if (uidl.hasAttribute("caption")) caption.setText(uidl.getStringAttribute("caption")); 
+
+               UIDL options = uidl.getChildUIDL(0);
+               
+               for (Iterator i = options.getChildIterator(); i.hasNext();) {
+                       UIDL optionUidl = (UIDL)i.next();
+                       select.addItem(optionUidl.getStringAttribute("caption"), optionUidl.getStringAttribute("key"));
+               }
+       }
+}