[richfaces-svn-commits] JBoss Rich Faces SVN: r5828 - in trunk/sandbox/ui/pickList/src/main: resources/org/richfaces/renderkit/html/scripts and 1 other directory.

richfaces-svn-commits at lists.jboss.org richfaces-svn-commits at lists.jboss.org
Tue Feb 5 11:34:30 EST 2008


Author: vmolotkov
Date: 2008-02-05 11:34:30 -0500 (Tue, 05 Feb 2008)
New Revision: 5828

Modified:
   trunk/sandbox/ui/pickList/src/main/java/org/richfaces/renderkit/PickListControlsHelper.java
   trunk/sandbox/ui/pickList/src/main/java/org/richfaces/renderkit/PickListRenderer.java
   trunk/sandbox/ui/pickList/src/main/resources/org/richfaces/renderkit/html/scripts/PickList.js
Log:
buttons rendering from server side

Modified: trunk/sandbox/ui/pickList/src/main/java/org/richfaces/renderkit/PickListControlsHelper.java
===================================================================
--- trunk/sandbox/ui/pickList/src/main/java/org/richfaces/renderkit/PickListControlsHelper.java	2008-02-05 16:06:05 UTC (rev 5827)
+++ trunk/sandbox/ui/pickList/src/main/java/org/richfaces/renderkit/PickListControlsHelper.java	2008-02-05 16:34:30 UTC (rev 5828)
@@ -65,10 +65,10 @@
 	
 	private final static String CONTROL_ID_REMOVE_ALL = "removeAll";
 	
-	private final static String DEFAULT_LABEL_COPY_ALL = "Copy all";
+	public final static String DEFAULT_LABEL_COPY_ALL = "Copy all";
 	private final static String DEFAULT_LABEL_COPY = "Copy";
 	private final static String DEFAULT_LABEL_REMOVE = "Remove";
-	private final static String DEFAULT_LABEL_REMOVE_ALL = "Remove All";
+	public final static String DEFAULT_LABEL_REMOVE_ALL = "Remove All";
 	
 	protected static final OrderingComponentRendererBase.ControlsHelper[] HELPERS = new OrderingComponentRendererBase.ControlsHelper[] {
 		new OrderingComponentRendererBase.ControlsHelper("copyAll", "COPY_ALL_LABEL", DEFAULT_LABEL_COPY_ALL, ListShuttleIconCopyAll.class.getName(), FACET_COPY_ALL,
@@ -91,7 +91,7 @@
 		},
 		new OrderingComponentRendererBase.ControlsHelper("copy", "COPY_LABEL", DEFAULT_LABEL_COPY, ListShuttleIconCopy.class.getName(), FACET_COPY,
 						   "-copy", ATTRIBUTE_CLASS_COPY_CONTROL, "", 
-						   CONTROL_ID_COPY, ATTRIBUTE_CE_ONCOPYCLICK ,true, "copy".concat(OrderingComponentControlsHelper.CONTROL_LABEL_ATTRIBUTE_SUFFIX)) {
+						   CONTROL_ID_COPY, ATTRIBUTE_CE_ONCOPYCLICK ,false, "copy".concat(OrderingComponentControlsHelper.CONTROL_LABEL_ATTRIBUTE_SUFFIX)) {
 
 			public boolean isRendered(FacesContext context, UIOrderingBaseComponent list) {
 				return true;
@@ -100,7 +100,7 @@
 		},
 		new OrderingComponentRendererBase.ControlsHelper("disabledCopy", "COPY_LABEL", DEFAULT_LABEL_COPY, ListShuttleIconCopyDisabled.class.getName(), FACET_DIS_COPY,
 						   "-disabled", ATTRIBUTE_CLASS_DISABLED_CONTROL, "-disabled",
-						   DIS_CONTROL_ID_PREFIX.concat(CONTROL_ID_COPY), null, false, "copy".concat(OrderingComponentControlsHelper.CONTROL_LABEL_ATTRIBUTE_SUFFIX)) {
+						   DIS_CONTROL_ID_PREFIX.concat(CONTROL_ID_COPY), null, true, "copy".concat(OrderingComponentControlsHelper.CONTROL_LABEL_ATTRIBUTE_SUFFIX)) {
 
 			public boolean isRendered(FacesContext context, UIOrderingBaseComponent list) {
 				return true;
@@ -109,7 +109,7 @@
 		},
 		new OrderingComponentRendererBase.ControlsHelper("remove", "REMOVE_LABEL", DEFAULT_LABEL_REMOVE, ListShuttleIconRemove.class.getName(), FACET_REMOVE,
 						   "-remove", ATTRIBUTE_CLASS_REMOVE_CONTROL, "",
-						   CONTROL_ID_REMOVE, ATTRIBUTE_CE_ONREMOVECLICK, true, "remove".concat(OrderingComponentControlsHelper.CONTROL_LABEL_ATTRIBUTE_SUFFIX)) {
+						   CONTROL_ID_REMOVE, ATTRIBUTE_CE_ONREMOVECLICK, false, "remove".concat(OrderingComponentControlsHelper.CONTROL_LABEL_ATTRIBUTE_SUFFIX)) {
 
 			public boolean isRendered(FacesContext context, UIOrderingBaseComponent list) {
 				return true;
@@ -118,7 +118,7 @@
 		},
 		new OrderingComponentRendererBase.ControlsHelper("disabledRemove", "REMOVE_LABEL", DEFAULT_LABEL_REMOVE, ListShuttleIconRemoveDisabled.class.getName(), FACET_DIS_REMOVE,
 						   "-disabled", ATTRIBUTE_CLASS_DISABLED_CONTROL, "-disabled", 
-						   DIS_CONTROL_ID_PREFIX.concat(CONTROL_ID_REMOVE), null, false, "remove".concat(OrderingComponentControlsHelper.CONTROL_LABEL_ATTRIBUTE_SUFFIX)) {
+						   DIS_CONTROL_ID_PREFIX.concat(CONTROL_ID_REMOVE), null, true, "remove".concat(OrderingComponentControlsHelper.CONTROL_LABEL_ATTRIBUTE_SUFFIX)) {
 
 			public boolean isRendered(FacesContext context, UIOrderingBaseComponent list) {
 				return true;

Modified: trunk/sandbox/ui/pickList/src/main/java/org/richfaces/renderkit/PickListRenderer.java
===================================================================
--- trunk/sandbox/ui/pickList/src/main/java/org/richfaces/renderkit/PickListRenderer.java	2008-02-05 16:06:05 UTC (rev 5827)
+++ trunk/sandbox/ui/pickList/src/main/java/org/richfaces/renderkit/PickListRenderer.java	2008-02-05 16:34:30 UTC (rev 5828)
@@ -51,6 +51,8 @@
     protected static final OrderingComponentRendererBase.ControlsHelper[] SHUTTLE_HELPERS = ListShuttleControlsHelper.HELPERS;
     protected final static String SHOW_LABELS_ATTRIBUTE_NAME = "showButtonLabels";
     private static final String MESSAGE_BUNDLE_NAME = OrderingListRendererBase.class.getPackage().getName() + "ListShuttle";
+    private boolean isSelectedList;
+    private boolean isAvailableList;
     
     protected List selectItemsForSelectedList(FacesContext facesContext,UIComponent uiComponent, List selectItemList, Converter converter, Set lookupSet) {
 		List selectItemForSelectedValues = new ArrayList(lookupSet.size());
@@ -165,7 +167,8 @@
 	    Set lookupSet = PickListUtils.getSubmittedOrSelectedValuesAsSet(true, component, context, converter);
 	    List selectItemsForSelectedValues = selectItemsForSelectedList(context, component, selectItemsList, converter, lookupSet); //TODO: optimaze
 	    List selectItemsForAvailableList = selectItemsForAvailableList(context, component, selectItemsList, selectItemsForSelectedValues, converter);
-	    
+	    isSelectedList = !selectItemsForSelectedValues.isEmpty();
+	    isAvailableList = !selectItemsForAvailableList.isEmpty();
 	    List selectItemList = null;
 	    if (source) {
 		selectItemList = selectItemsForAvailableList;
@@ -376,10 +379,22 @@
         	ResponseWriter writer = context.getResponseWriter();
         	
         	int divider = SHUTTLE_HELPERS.length / 2;
-        	
+        	boolean enable;
         	for (int i = 0; i < SHUTTLE_HELPERS.length; i++) {
-        			encodeControlFacet(context, component, SHUTTLE_HELPERS[i], clientId, writer, true, 
-        					"rich-list-picklist-button", " rich-picklist-control");
+        	    OrderingComponentRendererBase.ControlsHelper helper = SHUTTLE_HELPERS[i];
+        	    if (helper.getDefaultText().equals(PickListControlsHelper.DEFAULT_LABEL_REMOVE_ALL)) {
+        		enable = isSelectedList;
+        	    } else if (helper.getDefaultText().equals(PickListControlsHelper.DEFAULT_LABEL_COPY_ALL)) {
+        		enable = isAvailableList;
+        	    } else {
+        		if (helper.getButtonStyleClass().equals(OrderingComponentControlsHelper.DISABLED_STYLE_PREF)) {
+        		    enable = true;
+        		} else {
+        		    enable = false;	
+        		}
+        	    }
+        	    encodeControlFacet(context, component, SHUTTLE_HELPERS[i], clientId, writer, enable, 
+        			       "rich-list-picklist-button", " rich-picklist-control");
         	}
 	}
 	

Modified: trunk/sandbox/ui/pickList/src/main/resources/org/richfaces/renderkit/html/scripts/PickList.js
===================================================================
--- trunk/sandbox/ui/pickList/src/main/resources/org/richfaces/renderkit/html/scripts/PickList.js	2008-02-05 16:06:05 UTC (rev 5827)
+++ trunk/sandbox/ui/pickList/src/main/resources/org/richfaces/renderkit/html/scripts/PickList.js	2008-02-05 16:34:30 UTC (rev 5828)
@@ -4,7 +4,7 @@
 		initialize : function($super, targetList, sourceList, clientId, controlIds, switchByClick, sourceLayoutManager, targetLayoutManager, onlistchanged, valueKeeperId) {
 			$super(targetList, sourceList, clientId, controlIds, switchByClick, sourceLayoutManager, targetLayoutManager, onlistchanged);
 			this.valueKeeper = $(valueKeeperId);
-			this.controlListManager();
+			//this.controlListManager();
 		},
 		
 		moveItems : function($super, sourceComponent, targetComponent, items) {




More information about the richfaces-svn-commits mailing list