Author: ivaynberg
Date: Thu Feb 17 07:10:00 2011
New Revision: 1071520

URL: http://svn.apache.org/viewvc?rev=1071520&view=rev
Log:

Issue: WICKET-3416

Modified:
    
wicket/branches/wicket-1.4.x/wicket/src/main/java/org/apache/wicket/markup/html/form/CheckGroupSelector.java

Modified: 
wicket/branches/wicket-1.4.x/wicket/src/main/java/org/apache/wicket/markup/html/form/CheckGroupSelector.java
URL: 
http://svn.apache.org/viewvc/wicket/branches/wicket-1.4.x/wicket/src/main/java/org/apache/wicket/markup/html/form/CheckGroupSelector.java?rev=1071520&r1=1071519&r2=1071520&view=diff
==============================================================================
--- 
wicket/branches/wicket-1.4.x/wicket/src/main/java/org/apache/wicket/markup/html/form/CheckGroupSelector.java
 (original)
+++ 
wicket/branches/wicket-1.4.x/wicket/src/main/java/org/apache/wicket/markup/html/form/CheckGroupSelector.java
 Thu Feb 17 07:10:00 2011
@@ -83,11 +83,20 @@ public class CheckGroupSelector extends 
                        }
                }
 
-               tag.put(
-                       "onclick",
-                       "var cb=this.form['" +
-                               group.getInputName() +
-                               "']; if (cb!=null) { if (!isNaN(cb.length)) { 
for(var i=0;i<cb.length;i++) { if (cb[i].disabled) continue; if (cb[i].checked 
!= this.checked) {cb[i].click();} } } else { if (!cb.disabled&&cb.checked != 
this.checked) {cb.click();} } }");
+               final boolean groupEnabled = group.isEnabledInHierarchy() && 
group.isEnableAllowed();
+               final boolean selfEnabled = isEnabledInHierarchy() && 
isEnableAllowed();
+               if (groupEnabled && selfEnabled)
+               {
+                       tag.put(
+                               "onclick",
+                               "var cb=this.form['" +
+                                       group.getInputName() +
+                                       "']; if (cb!=null) { if 
(!isNaN(cb.length)) { for(var i=0;i<cb.length;i++) { if (cb[i].disabled) 
continue; if (cb[i].checked != this.checked) {cb[i].click();} } } else { if 
(!cb.disabled&&cb.checked != this.checked) {cb.click();} } }");
+               }
+               else
+               {
+                       tag.put("disabled", "disabled");
+               }
 
                super.onComponentTag(tag);
        }


Reply via email to