| /******************************************************************************* |
| * Copyright: 2004, 2012 1&1 Internet AG, Germany, http://www.1und1.de, |
| * and EclipseSource |
| * |
| * This program and the accompanying materials are made available under the |
| * terms of the Eclipse Public License v1.0 which accompanies this |
| * distribution, and is available at http://www.eclipse.org/legal/epl-v10.html |
| * |
| * Contributors: |
| * 1&1 Internet AG and others - original API and implementation |
| * EclipseSource - adaptation for the Eclipse Remote Application Platform |
| ******************************************************************************/ |
| |
| /** |
| * Helper functions for numbers. |
| * |
| * The native JavaScript Number is not modified by this class. |
| * |
| * The additions implemented here may be added directly to the native Number |
| * by a setting in {@link qx.lang.Prototypes}. This feature is not enabled by |
| * default. |
| */ |
| rwt.qx.Class.define("rwt.util.Numbers", |
| { |
| statics : |
| { |
| /** |
| * Check whether the number is in a given range |
| * |
| * @type static |
| * @param nr {Number} the number to check |
| * @param vmin {Integer} lower bound of the range |
| * @param vmax {Integer} upper bound of the range |
| * @return {Boolean} whether the number is >= vmin and <= vmax |
| */ |
| isInRange : function(nr, vmin, vmax) { |
| return nr >= vmin && nr <= vmax; |
| }, |
| |
| |
| /** |
| * Check whether the number is between a given range |
| * |
| * @type static |
| * @param nr {Number} the number to check |
| * @param vmin {Integer} lower bound of the range |
| * @param vmax {Integer} upper bound of the range |
| * @return {Boolean} whether the number is > vmin and < vmax |
| */ |
| isBetweenRange : function(nr, vmin, vmax) { |
| return nr > vmin && nr < vmax; |
| }, |
| |
| |
| /** |
| * Limit the nuber to a given range |
| * |
| * * If the number is greater than the upper bound, the upper bound is returned |
| * * If the number is smaller than the lower bound, the lower bound is returned |
| * * If the number is in the range, the number is retuned |
| * |
| * @type static |
| * @param nr {Number} the number to limit |
| * @param vmin {Integer} lower bound of the range |
| * @param vmax {Integer} upper bound of the range |
| * @return {Integer} the limited number |
| */ |
| limit : function(nr, vmin, vmax) |
| { |
| if (typeof vmax === "number" && nr > vmax) { |
| return vmax; |
| } else if (typeof vmin === "number" && nr < vmin) { |
| return vmin; |
| } else { |
| return nr; |
| } |
| } |
| } |
| }); |