Author: abelevich
Date: 2007-11-16 09:33:49 -0500 (Fri, 16 Nov 2007)
New Revision: 4037
Modified:
trunk/ui/inputnumber-slider/src/main/config/component/inputNumberSlider.xml
trunk/ui/inputnumber-slider/src/main/resources/org/richfaces/renderkit/html/script/SliderScript.js
trunk/ui/inputnumber-slider/src/main/templates/inputNumberSlider.jspx
Log:
add onslide event and clientErrorMessage attribute
Modified: trunk/ui/inputnumber-slider/src/main/config/component/inputNumberSlider.xml
===================================================================
--- trunk/ui/inputnumber-slider/src/main/config/component/inputNumberSlider.xml 2007-11-16
13:38:10 UTC (rev 4036)
+++ trunk/ui/inputnumber-slider/src/main/config/component/inputNumberSlider.xml 2007-11-16
14:33:49 UTC (rev 4037)
@@ -136,7 +136,18 @@
</description>
<defaultvalue><![CDATA[""]]></defaultvalue>
</property>
- <property>
+ <property>
+ <name>clientErrorMessage</name>
+ <classname>java.lang.String</classname>
+ <description>an error message to use in client side validation
events</description>
+ </property>
+ <property>
+ <name>onslide</name>
+ <classname>java.lang.String</classname>
+ <description>Event occur on sliding</description>
+ <defaultvalue><![CDATA[""]]></defaultvalue>
+ </property>
+ <property>
<name> onchange </name>
<classname>java.lang.String</classname>
<description>a JavaScript handler that is called when handle change
position.
Modified:
trunk/ui/inputnumber-slider/src/main/resources/org/richfaces/renderkit/html/script/SliderScript.js
===================================================================
---
trunk/ui/inputnumber-slider/src/main/resources/org/richfaces/renderkit/html/script/SliderScript.js 2007-11-16
13:38:10 UTC (rev 4036)
+++
trunk/ui/inputnumber-slider/src/main/resources/org/richfaces/renderkit/html/script/SliderScript.js 2007-11-16
14:33:49 UTC (rev 4037)
@@ -73,13 +73,18 @@
this.eventInputChange = this.inputChange.bindAsEventListener(this);
this.eventWindowMouseOut= this.windowMouseOut.bindAsEventListener(this);
- if (this.options.onerr != ""){
- this.eventError = new Function(this.options.onerr).bindAsEventListener(this);
+ if (this.options.onerr) {
+ this.eventError = new
Function("event","clientErrorMessage",this.options.onerr);
}
+
+ if (this.options.onslide) {
+ this.onSlideEvent = new
Function("event",this.options.onslide).bindAsEventListener(this);
+ }
+
if (this.options.onchange != ""){
this.eventChanged = new
Function("event",this.options.onchange).bindAsEventListener(this);
}
-
+
Event.observe(this.track, "mousedown", this.eventMouseDown);
Event.observe(tr, "mousedown", this.eventMouseDown);
Event.observe(this.input, "keydown", this.eventEditValidate);
@@ -245,6 +250,7 @@
var pointer = Event.pointerX(event);
var offsets = Position.cumulativeOffset(this.track);
this.updating = true;
+ if(this.onSlideEvent) this.onSlideEvent(event);
this.setValue(this.translateToValue( ( pointer - offsets[0] )
-(this.handleLength/2)));
this.updating = false;
var offsets = Position.cumulativeOffset(this.handle);
@@ -257,7 +263,6 @@
update: function(event) {
this.updating = true;
if(this.active) {
-
if(!this.dragging) this.dragging = true;
this.draw(event);
Event.stop(event);
@@ -320,7 +325,7 @@
} else {
if (this.outOfRange)
if (this.eventError)
- this.eventError();
+ this.eventError(e,this.options.clientErrorMessage);
this.setValue(Number(this.input.value));
}
this.value = this.input.value ? this.input.value : this.minimum;
@@ -349,7 +354,7 @@
this.input.value = this.value;
if (this.eventError){
- this.eventError();
+ this.eventError(e,this.options.clientErrorMsg);
}
} else {
if (!( e.keyCode > 37 && e.keyCode < 40 )){
Modified: trunk/ui/inputnumber-slider/src/main/templates/inputNumberSlider.jspx
===================================================================
--- trunk/ui/inputnumber-slider/src/main/templates/inputNumberSlider.jspx 2007-11-16
13:38:10 UTC (rev 4036)
+++ trunk/ui/inputnumber-slider/src/main/templates/inputNumberSlider.jspx 2007-11-16
14:33:49 UTC (rev 4037)
@@ -183,6 +183,8 @@
inputId : "#{clientId}Input",
arrowSelected : "#{arrowSelected}",
onerr : "#{component.attributes['onerror']}",
+ clientErrorMsg :
"#{component.attributes['clientErrorMessage']}",
+ onslide : "#{component.attributes['onslide']}",
onchange : "#{component.attributes['onchange']}",
required : #{component.attributes['required']}
})
Show replies by date