From: Matti Tahvonen Date: Fri, 8 Jun 2007 08:22:42 +0000 (+0000) Subject: text field component X-Git-Tag: 6.7.0.beta1~6296 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=e715822c3d058a931065b8284ce5b142682bd108;p=vaadin-framework.git text field component svn changeset:1651/svn branch:trunk --- diff --git a/src/com/itmill/toolkit/terminal/gwt/client/ui/TkTextField.java b/src/com/itmill/toolkit/terminal/gwt/client/ui/TkTextField.java new file mode 100644 index 0000000000..e31f25a437 --- /dev/null +++ b/src/com/itmill/toolkit/terminal/gwt/client/ui/TkTextField.java @@ -0,0 +1,61 @@ +package com.itmill.toolkit.terminal.gwt.client.ui; + +import com.google.gwt.user.client.ui.Composite; +import com.google.gwt.user.client.ui.Label; +import com.google.gwt.user.client.ui.TextArea; +import com.google.gwt.user.client.ui.TextBox; +import com.google.gwt.user.client.ui.VerticalPanel; +import com.google.gwt.user.client.ui.Widget; +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 TkTextField extends Composite implements + Paintable { + + String id; + + Client client; + + Widget field; + Label caption = new Label(); + + private VerticalPanel p; + + public TkTextField() { + p = new VerticalPanel(); + p.add(caption); + initWidget(p); + } + + public void updateFromUIDL(UIDL uidl, Client client) { + this.client = client; + id = uidl.getId(); + if(uidl.hasAttribute("caption")) + caption.setText(uidl.getStringAttribute("caption")); + else + caption.setVisible(false); + if(uidl.hasAttribute("rows")) { + // TODO textarea + TextArea ta = new TextArea(); + field = ta; + if(uidl.hasAttribute("cols")) + ta.setWidth(uidl.getStringAttribute("cols")+"em"); + ta.setHeight(uidl.getStringAttribute("height")+"em"); + + } else { + // one line text field + TextBox tb = new TextBox(); + field = tb; + if(uidl.hasAttribute("cols")) + tb.setWidth(uidl.getStringAttribute("cols")+"em"); + } + p.add(field); + } + + public void onClick(Widget sender) { + if (id == null || client == null) + return; + client.updateVariable(id, "state", true, true); + } +}