[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