]> source.dussan.org Git - vaadin-framework.git/commitdiff
#1986 (tabindex for some selects)
authorMatti Tahvonen <matti.tahvonen@itmill.com>
Mon, 25 Aug 2008 09:59:50 +0000 (09:59 +0000)
committerMatti Tahvonen <matti.tahvonen@itmill.com>
Mon, 25 Aug 2008 09:59:50 +0000 (09:59 +0000)
svn changeset:5255/svn branch:trunk

src/com/itmill/toolkit/terminal/gwt/client/ui/IListSelect.java
src/com/itmill/toolkit/terminal/gwt/client/ui/INativeSelect.java
src/com/itmill/toolkit/terminal/gwt/client/ui/IOptionGroup.java
src/com/itmill/toolkit/terminal/gwt/client/ui/IOptionGroupBase.java
src/com/itmill/toolkit/terminal/gwt/client/ui/ITwinColSelect.java

index ccc149a52ef5ac13e3940cebf135da837fb621b3..6c4584edf2be14a296cb24ca086cbc82c4107f20 100644 (file)
@@ -94,6 +94,10 @@ public class IListSelect extends IOptionGroupBase {
         super.setWidth(width);
     }
 
+    protected void setTabIndex(int tabIndex) {
+        ((TooltipListBox) optionsContainer).setTabIndex(tabIndex);
+    }
+
 }
 
 /**
index 9cc1e685c84c3e191ef0e7460fdc575a8113b6a0..8bb4bd35dd5036cdc1e09d0a5bcc10e79c883476 100644 (file)
@@ -88,4 +88,8 @@ public class INativeSelect extends IOptionGroupBase implements Field {
         super.setWidth(width);
     }
 
+    protected void setTabIndex(int tabIndex) {
+        ((TooltipListBox) optionsContainer).setTabIndex(tabIndex);
+    }
+
 }
index 5120d913ec41933529a64a01708d693d1f028916..d771f5e644241172c6e7fb1d94fc23438efabfe3 100644 (file)
@@ -75,4 +75,16 @@ public class IOptionGroup extends IOptionGroupBase {
         }\r
     }\r
 \r
+    protected void setTabIndex(int tabIndex) {\r
+        for (Iterator iterator = panel.iterator(); iterator.hasNext();) {\r
+            if (isMultiselect()) {\r
+                ICheckBox cb = (ICheckBox) iterator.next();\r
+                cb.setTabIndex(tabIndex);\r
+            } else {\r
+                RadioButton rb = (RadioButton) iterator.next();\r
+                rb.setTabIndex(tabIndex);\r
+            }\r
+        }\r
+    }\r
+\r
 }\r
index 04ac2cee788d47eae71590706bbf3a4cd717fa19..ffb204dee0caac82c2da7bb6b3d67c090a7a54d6 100644 (file)
@@ -173,8 +173,13 @@ abstract class IOptionGroupBase extends Composite implements Paintable, Field,
             container.remove(newItemButton);\r
         }\r
 \r
+        setTabIndex(uidl.hasAttribute("tabindex") ? uidl\r
+                .getIntAttribute("tabindex") : 0);\r
+\r
     }\r
 \r
+    abstract protected void setTabIndex(int tabIndex);\r
+\r
     public void onClick(Widget sender) {\r
         if (sender == newItemButton && !newItemField.getText().equals("")) {\r
             client.updateVariable(id, "newitem", newItemField.getText(), true);\r
index 40aae9d8527319ea09debae1a4881e2536b20caf..d33fc5a8b90d06cd7de9e7ddcccccad260626f06 100644 (file)
@@ -217,4 +217,11 @@ public class ITwinColSelect extends IOptionGroupBase {
         selections.setWidth("42%");\r
         widthSet = true;\r
     }\r
+\r
+    protected void setTabIndex(int tabIndex) {\r
+        options.setTabIndex(tabIndex);\r
+        selections.setTabIndex(tabIndex);\r
+        add.setTabIndex(tabIndex);\r
+        remove.setTabIndex(tabIndex);\r
+    }\r
 }\r