From 56fee292c37e162c03fab9eeadd6a8b9ab85c251 Mon Sep 17 00:00:00 2001 From: xue <> Date: Mon, 4 Sep 2006 19:15:47 +0000 Subject: merge from 3.0 branch till 1387 --- framework/Web/Javascripts/extended/event.js | 17 +++++++++++++---- framework/Web/Javascripts/js/compressed/ajax.js | 2 +- framework/Web/Javascripts/js/compressed/prado.js | 7 +++++-- framework/Web/Javascripts/js/debug/ajax.js | 2 +- framework/Web/Javascripts/js/debug/prado.js | 18 ++++++++++++++---- framework/Web/Javascripts/js/debug/validator.js | 4 ++-- framework/Web/Javascripts/prado/controls.js | 1 + framework/Web/Javascripts/prado/validation3.js | 4 ++-- 8 files changed, 39 insertions(+), 16 deletions(-) (limited to 'framework/Web/Javascripts') diff --git a/framework/Web/Javascripts/extended/event.js b/framework/Web/Javascripts/extended/event.js index 4fd041d8..e464fa94 100644 --- a/framework/Web/Javascripts/extended/event.js +++ b/framework/Web/Javascripts/extended/event.js @@ -82,10 +82,19 @@ Object.extend(Event, } else if(Event.isMouseEvent(type)) { - var event = document.createEvent('MouseEvents'); - event.initMouseEvent(type,true,true, - document.defaultView, 1, 0, 0, 0, 0, false, - false, false, false, 0, null); + var event = document.createEvent('MouseEvents'); + if (event.initMouseEvent) + { + event.initMouseEvent(type,true,true, + document.defaultView, 1, 0, 0, 0, 0, false, + false, false, false, 0, null); + } + else + { + // Safari + // TODO we should be initialising other mouse-event related attributes here + event.initEvent(type, true, true); + } } element.dispatchEvent(event); } diff --git a/framework/Web/Javascripts/js/compressed/ajax.js b/framework/Web/Javascripts/js/compressed/ajax.js index b65892cc..645df359 100644 --- a/framework/Web/Javascripts/js/compressed/ajax.js +++ b/framework/Web/Javascripts/js/compressed/ajax.js @@ -210,7 +210,7 @@ Event.observe(this.element,"keydown",this.handleReturnKey.bind(this));Event.obse {this.options=options;this.baseInitialize(options.ID,options.ResultPanel,options);Object.extend(this.options,{onSuccess:this.onComplete.bind(this)});if(options.AutoPostBack) this.onInit(options);},doCallback:function(event,options) {if(!this.active) -{request=new Prado.CallbackRequest(options.EventTarget,options);request.dispatch();Event.stop(event);}},onClick:function(event) +{request=new Prado.CallbackRequest(this.options.EventTarget,options);request.dispatch();Event.stop(event);}},onClick:function(event) {var element=Event.findElement(event,'LI');this.index=element.autocompleteIndex;this.selectEntry();this.hide();Event.fireEvent(this.element,"change");},getUpdatedChoices:function() {options=new Array(this.getToken(),"__TAutoComplete_onSuggest__");Prado.Callback(this.options.EventTarget,options,null,this.options);},onComplete:function(request,boundary) {result=Prado.Element.extractContent(request.transport.responseText,boundary);if(typeof(result)=="string"&&result.length>0) diff --git a/framework/Web/Javascripts/js/compressed/prado.js b/framework/Web/Javascripts/js/compressed/prado.js index d9eb1b8e..e565d59a 100644 --- a/framework/Web/Javascripts/js/compressed/prado.js +++ b/framework/Web/Javascripts/js/compressed/prado.js @@ -137,7 +137,10 @@ return element.submit();if(document.createEvent) {if(Event.isHTMLEvent(type)) {var event=document.createEvent('HTMLEvents');event.initEvent(type,true,true);} else if(Event.isMouseEvent(type)) -{var event=document.createEvent('MouseEvents');event.initMouseEvent(type,true,true,document.defaultView,1,0,0,0,0,false,false,false,false,0,null);} +{var event=document.createEvent('MouseEvents');if(event.initMouseEvent) +{event.initMouseEvent(type,true,true,document.defaultView,1,0,0,0,0,false,false,false,false,0,null);} +else +{event.initEvent(type,true,true);}} element.dispatchEvent(event);} else if(document.createEventObject) {var evObj=document.createEventObject();element.fireEvent('on'+type,evObj);} @@ -377,7 +380,7 @@ Event.observe(this.element,"keydown",this.handleReturnKey.bind(this));Event.obse {this.options=options;this._event=this.triggerEvent.bindEvent(this);Event.observe(options['Panel'],'keydown',this._event);},triggerEvent:function(ev,target) {var enterPressed=Event.keyCode(ev)==Event.KEY_RETURN;var isTextArea=Event.element(ev).tagName.toLowerCase()=="textarea";if(enterPressed&&!isTextArea) {var defaultButton=$(this.options['Target']);if(defaultButton) -{this.triggered=true;Event.fireEvent(defaultButton,this.options['Event']);Event.stop(ev);}}}};Prado.WebUI.TTextHighlighter=Class.create();Prado.WebUI.TTextHighlighter.prototype={initialize:function(id) +{this.triggered=true;$('PRADO_POSTBACK_TARGET').value=this.options.EventTarget;Event.fireEvent(defaultButton,this.options['Event']);Event.stop(ev);}}}};Prado.WebUI.TTextHighlighter=Class.create();Prado.WebUI.TTextHighlighter.prototype={initialize:function(id) {if(!window.clipboardData)return;var options={href:'javascript:;/'+'/copy code to clipboard',onclick:'Prado.WebUI.TTextHighlighter.copy(this)',onmouseover:'Prado.WebUI.TTextHighlighter.hover(this)',onmouseout:'Prado.WebUI.TTextHighlighter.out(this)'} var div=DIV({className:'copycode'},A(options,'Copy Code'));document.write(DIV(null,div).innerHTML);}};Object.extend(Prado.WebUI.TTextHighlighter,{copy:function(obj) {var parent=obj.parentNode.parentNode.parentNode;var text='';for(var i=0;i<parent.childNodes.length;i++) diff --git a/framework/Web/Javascripts/js/debug/ajax.js b/framework/Web/Javascripts/js/debug/ajax.js index 61881bf9..3ea8acce 100644 --- a/framework/Web/Javascripts/js/debug/ajax.js +++ b/framework/Web/Javascripts/js/debug/ajax.js @@ -2079,7 +2079,7 @@ Prado.WebUI.TAutoComplete = Class.extend(Prado.WebUI.TAutoComplete, { if(!this.active) { - request = new Prado.CallbackRequest(options.EventTarget, options); + request = new Prado.CallbackRequest(this.options.EventTarget, options); request.dispatch(); Event.stop(event); } diff --git a/framework/Web/Javascripts/js/debug/prado.js b/framework/Web/Javascripts/js/debug/prado.js index ee228240..c890ccdb 100644 --- a/framework/Web/Javascripts/js/debug/prado.js +++ b/framework/Web/Javascripts/js/debug/prado.js @@ -2004,10 +2004,19 @@ Object.extend(Event, } else if(Event.isMouseEvent(type)) { - var event = document.createEvent('MouseEvents'); - event.initMouseEvent(type,true,true, - document.defaultView, 1, 0, 0, 0, 0, false, - false, false, false, 0, null); + var event = document.createEvent('MouseEvents'); + if (event.initMouseEvent) + { + event.initMouseEvent(type,true,true, + document.defaultView, 1, 0, 0, 0, 0, false, + false, false, false, 0, null); + } + else + { + // Safari + // TODO we should be initialising other mouse-event related attributes here + event.initEvent(type, true, true); + } } element.dispatchEvent(event); } @@ -3461,6 +3470,7 @@ Prado.WebUI.DefaultButton.prototype = if(defaultButton) { this.triggered = true; + $('PRADO_POSTBACK_TARGET').value = this.options.EventTarget; Event.fireEvent(defaultButton, this.options['Event']); Event.stop(ev); } diff --git a/framework/Web/Javascripts/js/debug/validator.js b/framework/Web/Javascripts/js/debug/validator.js index d068900c..dbc180cf 100644 --- a/framework/Web/Javascripts/js/debug/validator.js +++ b/framework/Web/Javascripts/js/debug/validator.js @@ -357,7 +357,7 @@ Prado.WebUI.TValidationSummary.prototype = * options['DisplayMode'] Summary display style, 'BulletList', 'List', 'SingleParagraph' * options['Refresh'] True to update the summary upon validator state change. * options['ValidationGroup'] Validation summary group - * options['Display'] Display mode, 'None', 'Static', 'Dynamic'. + * options['Display'] Display mode, 'None', 'Fixed', 'Dynamic'. * options['ScrollToSummary'] True to scroll to the validation summary upon refresh. * </code> */ @@ -564,7 +564,7 @@ Prado.WebUI.TBaseValidator.prototype = * options['ID']* Validator ID, e.g. span with message * options['FormID']* HTML form that the validator belongs * options['ControlToValidate']*HTML form input to validate - * options['Display'] Display mode, 'None', 'Static', 'Dynamic' + * options['Display'] Display mode, 'None', 'Fixed', 'Dynamic' * options['ErrorMessage'] Validation error message * options['FocusOnError'] True to focus on validation error * options['FocusElementID'] Element to focus on error diff --git a/framework/Web/Javascripts/prado/controls.js b/framework/Web/Javascripts/prado/controls.js index 25e1315b..8595b5fd 100644 --- a/framework/Web/Javascripts/prado/controls.js +++ b/framework/Web/Javascripts/prado/controls.js @@ -220,6 +220,7 @@ Prado.WebUI.DefaultButton.prototype = if(defaultButton) { this.triggered = true; + $('PRADO_POSTBACK_TARGET').value = this.options.EventTarget; Event.fireEvent(defaultButton, this.options['Event']); Event.stop(ev); } diff --git a/framework/Web/Javascripts/prado/validation3.js b/framework/Web/Javascripts/prado/validation3.js index f2b3cbb3..4e30b0b2 100644 --- a/framework/Web/Javascripts/prado/validation3.js +++ b/framework/Web/Javascripts/prado/validation3.js @@ -357,7 +357,7 @@ Prado.WebUI.TValidationSummary.prototype = * options['DisplayMode'] Summary display style, 'BulletList', 'List', 'SingleParagraph' * options['Refresh'] True to update the summary upon validator state change. * options['ValidationGroup'] Validation summary group - * options['Display'] Display mode, 'None', 'Static', 'Dynamic'. + * options['Display'] Display mode, 'None', 'Fixed', 'Dynamic'. * options['ScrollToSummary'] True to scroll to the validation summary upon refresh. * </code> */ @@ -564,7 +564,7 @@ Prado.WebUI.TBaseValidator.prototype = * options['ID']* Validator ID, e.g. span with message * options['FormID']* HTML form that the validator belongs * options['ControlToValidate']*HTML form input to validate - * options['Display'] Display mode, 'None', 'Static', 'Dynamic' + * options['Display'] Display mode, 'None', 'Fixed', 'Dynamic' * options['ErrorMessage'] Validation error message * options['FocusOnError'] True to focus on validation error * options['FocusElementID'] Element to focus on error -- cgit v1.2.3