[richfaces-svn-commits] JBoss Rich Faces SVN: r2158 - in trunk/ui/tooltip/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
Wed Aug 8 15:04:21 EDT 2007


Author: dbiatenia
Date: 2007-08-08 15:04:21 -0400 (Wed, 08 Aug 2007)
New Revision: 2158

Modified:
   trunk/ui/tooltip/src/main/java/org/richfaces/renderkit/html/ToolTipRenderer.java
   trunk/ui/tooltip/src/main/resources/org/richfaces/renderkit/html/scripts/tooltip.js
Log:
adding client parameters passing into ajax-request

Modified: trunk/ui/tooltip/src/main/java/org/richfaces/renderkit/html/ToolTipRenderer.java
===================================================================
--- trunk/ui/tooltip/src/main/java/org/richfaces/renderkit/html/ToolTipRenderer.java	2007-08-08 17:38:09 UTC (rev 2157)
+++ trunk/ui/tooltip/src/main/java/org/richfaces/renderkit/html/ToolTipRenderer.java	2007-08-08 19:04:21 UTC (rev 2158)
@@ -22,12 +22,15 @@
 import org.ajax4jsf.javascript.JSFunction;
 import org.ajax4jsf.javascript.JSFunctionDefinition;
 import org.ajax4jsf.javascript.JSReference;
+import org.ajax4jsf.javascript.ScriptUtils;
 import org.ajax4jsf.renderkit.AjaxComponentRendererBase;
 import org.ajax4jsf.renderkit.AjaxRendererUtils;
 import org.ajax4jsf.resource.InternetResource;
 import org.richfaces.component.UIToolTip;
 import org.richfaces.skin.Skin;
 
+import com.sun.el.lang.FunctionMapperImpl.Function;
+
 public class ToolTipRenderer extends AjaxComponentRendererBase{
 
 	// 
@@ -167,10 +170,7 @@
 	}
 	
 	
-	public String insertAjaxFunction(FacesContext context, UIComponent component){
-		JSFunction function = AjaxRendererUtils.buildAjaxFunction(component, context);
-		component.getClientId(context);
-		
+	public Map buildEventOptions(FacesContext context, UIComponent component){
         Map eventOptions = AjaxRendererUtils.buildEventOptions(context,	component);
         
         //after element is subsituted in DOM tree, we have to re-create
@@ -200,11 +200,18 @@
 			eventOptions.put("oncomplete", onComplete);
         }
         
-        function.addParameter(eventOptions);
+        return eventOptions;
+	}
+	/*
+	public JSFunction insertAjaxFunction(FacesContext context, UIComponent component){
+		JSFunction function = AjaxRendererUtils.buildAjaxFunction(component, context);
+		component.getClientId(context);
 		
+//        function.addParameter(eventOptions);
+        //function.
 		return function.toScript();
 	}
-	
+	*/
 
 	public void insertScript(FacesContext context, UIComponent component) throws IOException{
 		
@@ -246,6 +253,14 @@
 		//"\",delay:" + toolTip.getDelay() + ",jsVarName:\"" + getJsVarName(context, component) + "\"}";
 		"\",delay:" + toolTip.getDelay() + "}";
 		
+		
+		JSFunction function = AjaxRendererUtils.buildAjaxFunction(component, context);
+		JSReference ref = new JSReference("ajaxOptions");
+		function.addParameter(ref);
+		String ajaxFunc = function.toScript();
+		
+		Map ajaxOptions = buildEventOptions(context, toolTip);
+		
 		ret.append("new ToolTip(" + events).append(comma).append(quot).append( toolTip.getClientId(context)).append(quot).append(comma).
 		append(quot).append(parentClientId).append(quot).append(comma).
 		append(quot).append(toolTip.getMode()).append(quot).append(comma).
@@ -254,7 +269,7 @@
 		append(toolTip.isFollowMouse()).append(comma).
 		append(toolTip.getHorizontalOffset()).append(comma).
 		append(toolTip.getVerticalOffset()).append(comma).
-		append("\"").append(insertAjaxFunction(context, component)).append("\")");
+		append("\"").append(ajaxFunc).append("\"").append(comma).append(ScriptUtils.toScript(ajaxOptions)).append(");");
 
 		return ret.toString();
 	}

Modified: trunk/ui/tooltip/src/main/resources/org/richfaces/renderkit/html/scripts/tooltip.js
===================================================================
--- trunk/ui/tooltip/src/main/resources/org/richfaces/renderkit/html/scripts/tooltip.js	2007-08-08 17:38:09 UTC (rev 2157)
+++ trunk/ui/tooltip/src/main/resources/org/richfaces/renderkit/html/scripts/tooltip.js	2007-08-08 19:04:21 UTC (rev 2158)
@@ -5,13 +5,12 @@
 ToolTip = Class.create();
 
 ToolTip.prototype = {
-	initialize:function(events, id, parentId, mode, disabled, direction, followMouse, horizontalOffset, verticalOffset, ajaxFunction){
+	initialize:function(events, id, parentId, mode, disabled, direction, followMouse, horizontalOffset, verticalOffset, ajaxFunction, ajaxOptions){
 		this.event = events.event;
 		this.onshow = events.onshow;
 		this.oncomplete = events.oncomplete;
 		this.onhide = events.onhide;
 		this.delay = events.delay;
-		//this.jsVarName = events.jsVarName;
 		
 		this.id = id;
 		this.parentId = parentId;
@@ -21,7 +20,11 @@
 		this.followMouse = followMouse;
 		this.horizontalOffset = horizontalOffset;
 		this.verticalOffset = verticalOffset;
+		
 		this.ajaxExecuteString = ajaxFunction;
+		this.ajaxOptions = ajaxOptions;
+		this.clientAjaxParams = {};
+		
 		this.toolTip = $(id);
 		
 		this.toolTipContent = $(id + 'content');
@@ -124,6 +127,10 @@
 				this.toolTipContent.innerHTML = this.toolTipDefaultContent.innerHTML; 
 			}
 			var event = e;
+			var ajaxOptions = this.ajaxOptions;
+			if(this.clientAjaxParams){
+				Object.extend(ajaxOptions['parameters'], this.clientAjaxParams);
+			}
 			eval(this.ajaxExecuteString);
 		}
 		if(this.delay > 0){




More information about the richfaces-svn-commits mailing list