Changeset 5232

Show
Ignore:
Timestamp:
08/21/08 09:43:07 (3 months ago)
Author:
marc.englund@…
Message:

Displayed empty if value==null even if nullselection is not allowed. Fixes #1996

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • trunk/src/com/itmill/toolkit/terminal/gwt/client/ui/INativeSelect.java

    r4782 r5232  
    3535            select.addItem("", null); 
    3636        } 
     37        boolean selected = false; 
    3738        for (final Iterator i = uidl.getChildIterator(); i.hasNext();) { 
    3839            final UIDL optionUidl = (UIDL) i.next(); 
     
    4142            if (optionUidl.hasAttribute("selected")) { 
    4243                select.setItemSelected(select.getItemCount() - 1, true); 
     44                selected = true; 
    4345            } 
    4446        } 
     47        if (!selected && !isNullSelectionAllowed()) { 
     48            // null-select not allowed, but value not selected yet; add null and 
     49            // remove when something is selected 
     50            select.insertItem("", null, 0); 
     51            select.setItemSelected(0, true); 
     52        } 
     53 
    4554    } 
    4655 
     
    5665 
    5766    public void onChange(Widget sender) { 
     67 
    5868        if (select.isMultipleSelect()) { 
    5969            client.updateVariable(id, "selected", getSelectedItems(), 
     
    6272            client.updateVariable(id, "selected", new String[] { "" 
    6373                    + getSelectedItem() }, isImmediate()); 
     74        } 
     75        if (!isNullSelectionAllowed() && "null".equals(select.getValue(0))) { 
     76            // remove temporary empty item 
     77            select.removeItem(0); 
    6478        } 
    6579    }