
Author: achiumenti Date: Tue Oct 21 13:05:45 2008 New Revision: 125 Log: several bugfixes and enhancements Added: trunk/main/claw-html.dojo/src/js/Button.js Added: trunk/main/claw-html.dojo/src/js/Button.js ============================================================================== --- (empty file) +++ trunk/main/claw-html.dojo/src/js/Button.js Tue Oct 21 13:05:45 2008 @@ -0,0 +1,70 @@ +/** +;;; $Header: dojo/src/js/Button.js $ + +;;; Copyright (c) 2008, Andrea Chiumenti. All rights reserved. + +;;; Redistribution and use in source and binary forms, with or without +;;; modification, are permitted provided that the following conditions +;;; are met: + +;;; * Redistributions of source code must retain the above copyright +;;; notice, this list of conditions and the following disclaimer. + +;;; * Redistributions in binary form must reproduce the above +;;; copyright notice, this list of conditions and the following +;;; disclaimer in the documentation and/or other materials +;;; provided with the distribution. + +;;; THIS SOFTWARE IS PROVIDED BY THE AUTHOR 'AS IS' AND ANY EXPRESSED +;;; OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +;;; WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +;;; ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY +;;; DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +;;; DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE +;;; GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +;;; INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +;;; WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +;;; NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +;;; SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +*/ + +if(!dojo._hasResource["claw.Button"]){ +dojo.provide("claw.Button"); + +dojo.require("dijit.form.Button"); + +dojo.declare( + "claw.Button", + [dijit.form.Button], + { + formId: '', + _onButtonClick: function(/*Event*/ e){ + // summary: callback when the user mouse clicks the button portion + if(e.type!='click'){ + dojo.stopEvent(e); + } + if(this._onClick(e) === false){ // returning nothing is same as true + dojo.stopEvent(e); + return false; + } + + var form = dojo.byId(this.id).form; + if (!form && (this.formId != '')) { + form = dojo.byId(this.formId) + } + if(this.type=="submit" && form){ // see if a form widget needs to be signalled + var name = this.name; + if (!name) { + name = "submit"; + } + var djform = dijit.byId(form.id); + if (djform) { + var jsonContent = {}; + jsonContent[name] = this.value; + djform.jsonContent = dojo.mixin(djform.jsonContent, jsonContent); + djform.onSubmit(e); + } + } + } + }); +} \ No newline at end of file