mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-08-14 17:58:59 +00:00
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@5282 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
73 lines
2.1 KiB
JavaScript
73 lines
2.1 KiB
JavaScript
/*
|
|
Copyright (c) 2004-2006, The Dojo Foundation
|
|
All Rights Reserved.
|
|
|
|
Licensed under the Academic Free License version 2.1 or above OR the
|
|
modified BSD license. For more information on Dojo licensing, see:
|
|
|
|
http://dojotoolkit.org/community/licensing.shtml
|
|
*/
|
|
|
|
dojo.provide("dojo.widget.IntegerTextbox");
|
|
|
|
dojo.require("dojo.widget.ValidationTextbox");
|
|
dojo.require("dojo.validate.common");
|
|
|
|
dojo.widget.defineWidget(
|
|
"dojo.widget.IntegerTextbox",
|
|
dojo.widget.ValidationTextbox,
|
|
{
|
|
// summary:
|
|
// A subclass of ValidationTextbox.
|
|
// Over-rides isValid/isInRange to test for integer input.
|
|
// signed: String
|
|
// The leading plus-or-minus sign. Can be true or false, default is either.
|
|
/*=====
|
|
signed: "either",
|
|
// separator: "",
|
|
// The character used as the thousands separator. Default is no separator.
|
|
separator: "",
|
|
// min: Number
|
|
// Minimum signed value. Default is -Infinity
|
|
min: undefined,
|
|
// max: Number
|
|
// Maximum signed value. Default is +Infinity
|
|
max: undefined,
|
|
=====*/
|
|
mixInProperties: function(localProperties, frag){
|
|
// First initialize properties in super-class.
|
|
dojo.widget.IntegerTextbox.superclass.mixInProperties.apply(this, arguments);
|
|
|
|
// Get properties from markup attributes, and assign to flags object.
|
|
if((localProperties.signed == "true")||
|
|
(localProperties.signed == "always")){
|
|
this.flags.signed = true;
|
|
}else if((localProperties.signed == "false")||
|
|
(localProperties.signed == "never")){
|
|
this.flags.signed = false;
|
|
this.flags.min = 0;
|
|
}else{
|
|
this.flags.signed = [ true, false ]; // optional
|
|
}
|
|
if(localProperties.separator){
|
|
this.flags.separator = localProperties.separator;
|
|
}
|
|
if(localProperties.min){
|
|
this.flags.min = parseInt(localProperties.min);
|
|
}
|
|
if(localProperties.max){
|
|
this.flags.max = parseInt(localProperties.max);
|
|
}
|
|
},
|
|
|
|
isValid: function(){
|
|
// summary: Over-ride for integer validation
|
|
return dojo.validate.isInteger(this.textbox.value, this.flags);
|
|
},
|
|
isInRange: function(){
|
|
// summary: Over-ride for integer validation
|
|
return dojo.validate.isInRange(this.textbox.value, this.flags);
|
|
}
|
|
}
|
|
);
|