📄 atlasui.js
字号:
Web.UI.Control.getLocation =function(element){var offsetX =0;var offsetY =0;var parent;for (parent =element;parent;parent =parent.offsetParent){if (parent.offsetLeft){offsetX +=parent.offsetLeft;}if (parent.offsetTop){offsetY +=parent.offsetTop;}}return {x:offsetX,y:offsetY };}Web.UI.Control.getBounds =function(element){var offset =Web.UI.Control.getLocation(element);var width =element.offsetWidth;var height =element.offsetHeight;return {x:offset.x,y:offset.y,width:width,height:height };}Web.UI.Behavior =function(){Web.UI.Behavior.initializeBase(this,[false]);this.get_dataContext =function(){var dc =Web.UI.Behavior.callBaseMethod(this,'get_dataContext');if (!dc){if (this.control){dc =this.control.get_dataContext();}}return dc;}this.dispose =function(){this.control =null;Web.UI.Behavior.callBaseMethod(this,'dispose');}Web.UI.Behavior.registerBaseMethod(this,'dispose');this.setOwner =function(control){this.control =control;}}Type.registerAbstractClass('Web.UI.Behavior',Web.Component);Web.UI.IValidationTarget =function(){this.get_isInvalid =Function.abstractMethod;this.get_validationMessage =Function.abstractMethod;this.validated =null;this.validate =Function.abstractMethod;}Type.registerInterface('Web.UI.IValidationTarget');Web.UI.Validator =function(){Web.UI.Validator.initializeBase(this);var _errorMessage;var _isInvalid =false;this.get_dataContext =function(){var dc =Web.Component.callBaseMethod(this,'get_dataContext');if (!dc){if (this.control){dc =this.control.get_dataContext();}}return dc;}this.get_errorMessage =function(){return _errorMessage;}this.set_errorMessage =function(value){_errorMessage =value;}this.get_isInvalid =function(){return _isInvalid;}this.getDescriptor =function(){var td =Web.UI.Validator.callBaseMethod(this,'getDescriptor');td.addProperty('errorMessage',String);return td;}Web.UI.Validator.registerBaseMethod(this,'getDescriptor');this.dispose =function(){this.control =null;Web.UI.Validator.callBaseMethod(this,'dispose');}Web.UI.Validator.registerBaseMethod(this,'dispose');this.performValidation =function(value){_isInvalid =!this.validate(value);}this.setOwner =function(control){this.control =control;}this.validate =Function.abstractMethod;}Type.registerAbstractClass('Web.UI.Validator',Web.Component);Web.UI.ValidationGroup =function(){Web.UI.ValidationGroup.initializeBase(this);var _associatedControls =[];var _valid =true;var _validated =false;var _validatedHandler;this.get_associatedControls =function(){return _associatedControls;}this.get_isValid =function(){if (!_validated){this.validate();_validated =true;}return _valid;}this.dispose =function(){if (_associatedControls){for (i =0;i <_associatedControls.length;i++){_associatedControls[i].get_component().validated.remove(_validatedHandler);_associatedControls[i].dispose();}_validatedHandler =null;_associatedControls =null;}Web.UI.ValidationGroup.callBaseMethod(this,'dispose');}this.getDescriptor =function(){var td =Web.UI.ValidationGroup.callBaseMethod(this,'getDescriptor');td.addProperty('isValid',Boolean,true);td.addProperty('associatedControls',Array,true);return td;}this.initialize =function(){Web.UI.ValidationGroup.callBaseMethod(this,'initialize');_validatedHandler =Function.createDelegate(this,this._onControlValidated);for (var i =0;i <_associatedControls.length;i++){_associatedControls[i].get_component().validated.add(_validatedHandler);}}this.validate =function(){var valid =true;if (_associatedControls &&_associatedControls.length){for (var i =0;i <_associatedControls.length;i++){if (_associatedControls[i].get_component().get_isInvalid()){valid =false;break;}}}_valid =valid;}this._onControlValidated =function(sender,eventArgs){var isValid =_valid;this.validate();if (_valid !=isValid){this.raisePropertyChanged('isValid');}}}Type.registerSealedClass('Web.UI.ValidationGroup',Web.Component);Web.TypeDescriptor.addType('script','validationGroup',Web.UI.ValidationGroup);Web.UI.InputControl =function(associatedElement){Web.UI.InputControl.initializeBase(this,[associatedElement]);var _valuePropertyName;var _validators;var _invalid =false;var _validated =false;var _validationMessage;this.get_isInvalid =function(){if (!_validated){this.validate(false);_validated =true;}return _invalid;}this.get_validationMessage =function(){return this.get_isInvalid()?_validationMessage :'';}this.get_validators =function(){if (!_validators){_validators =Web.Component.createCollection(this);}return _validators;}this.validated =this.createEvent();this.dispose =function(){if (_validators){_validators.dispose();_validators =null;}Web.UI.InputControl.callBaseMethod(this,'dispose');}Web.UI.InputControl.registerBaseMethod(this,'dispose');this.getDescriptor =function(){var td =Web.UI.InputControl.callBaseMethod(this,'getDescriptor');td.addProperty('validators',Array,true);return td;}Web.UI.InputControl.registerBaseMethod(this,'getDescriptor');this.raisePropertyChanged =function(propertyName){if (_validators &&_validators.length){if (!_valuePropertyName){_valuePropertyName =Web.TypeDescriptor.getAttribute(this,Web.Attributes.ValueProperty);}if (_valuePropertyName ==propertyName){if (!this.validate(true)){return;}}}Web.UI.InputControl.callBaseMethod(this,'raisePropertyChanged',[propertyName]);}Web.UI.InputControl.registerBaseMethod(this,'raisePropertyChanged');this.validate =function(raiseEvent){if (!_validators ||!_validators.length){return true;}if (!_valuePropertyName){_valuePropertyName =Web.TypeDescriptor.getAttribute(this,Web.Attributes.ValueProperty);}var value =Web.TypeDescriptor.getProperty(this,_valuePropertyName);var invalidValidator =null;for (var i =0;i <_validators.length;i++){var validator =_validators[i];validator.performValidation(value);if (validator.get_isInvalid()){invalidValidator =validator;_validationMessage =invalidValidator.get_errorMessage();_invalid =true;break;}}if (!invalidValidator){_invalid =false;}if (raiseEvent){this.validated.invoke(this,Web.EventArgs.Empty);}return !_invalid;}}Type.registerAbstractClass('Web.UI.InputControl',Web.UI.Control,Web.UI.IValidationTarget);Web.TemplateInstance =function(){this.instanceElement =null;this.callbackResult =null;}Web.UI.ITemplate =function(){this.createInstance =Function.abstractMethod;this.initialize =Function.abstractMethod;}Type.registerInterface('Web.UI.ITemplate');Web.TypeDescriptor.addType('script','template',Web.UI.ITemplate);Web.UI.ITemplate.parseFromMarkup =function(type,node,markupContext){var layoutElementID;var layoutElementAttribute =node.attributes.getNamedItem('layoutElement');if (layoutElementAttribute){layoutElementID =layoutElementAttribute.nodeValue;}else {var idAttribute =node.attributes.getNamedItem('id');if (idAttribute){layoutElementID =idAttribute.nodeValue;}}var layoutElement;if (layoutElementID){layoutElement =markupContext.findObject(layoutElementID,true);}if (!layoutElement){return null;}return new Web.UI.DeclarativeTemplate(layoutElement,node,markupContext);}Web.UI.ITemplate.disposeInstance =function(container){if (container.markupContext){container.markupContext.dispose();container.markupContext =null;}}Web.UI.DeclarativeTemplate =function(layoutElement,scriptNode,parentMarkupContext){Web.UI.DeclarativeTemplate.initializeBase(this);var _layoutElement =layoutElement;var _scriptNode =scriptNode;var _parentMarkupContext =parentMarkupContext;this.createInstance =function(containerElement,dataContext,instanceElementCreatedCallback,callbackContext){var result =new Web.TemplateInstance();result.instanceElement =_layoutElement.cloneNode(true);var documentContext =document.createDocumentFragment();documentContext.appendChild(result.instanceElement);var markupContext =new Web.TypeDescriptor.MarkupContext(documentContext,false,_parentMarkupContext,dataContext);Web.TypeDescriptor.processMarkupNodes(_scriptNode.childNodes,markupContext);if (instanceElementCreatedCallback){result.callbackResult =instanceElementCreatedCallback(result.instanceElement,markupContext,callbackContext);}result.instanceElement.markupContext =markupContext;containerElement.appendChild(result.instanceElement);markupContext.complete();return result;}this.dispose =function(){_layoutElement =null;_scriptNode =null;_parentMarkupContext =null;}this.initialize =function(){if (_layoutElement.parentNode){_layoutElement.parentNode.removeChild(_layoutElement);}}}Type.registerSealedClass('Web.UI.DeclarativeTemplate',null,Web.UI.ITemplate,Web.IDisposable);Web.UI.DialogResult =Web.Enum.create('OK','Cancel');Web.UI.MessageBoxStyle =Web.Enum.create('OK','OKCancel');Web.UI.Window =new function(){this.messageBox =function(text,style){if (!style){style =Web.UI.MessageBoxStyle.OK;}var result =Web.UI.DialogResult.OK;switch (style){case Web.UI.MessageBoxStyle.OK:window.alert(text);break;case Web.UI.MessageBoxStyle.OKCancel:if (window.confirm(text)==false){result =Web.UI.DialogResult.Cancel;}break;}return result;}this.inputBox =function(promptText,defaultValue){if (!defaultValue){defaultValue ='';}return window.prompt(promptText,defaultValue);}}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -