// Name: MicrosoftAjaxComponentModel.debug.js
// Assembly: System.Web.Extensions
// Version: 4.0.0.0
// FileVersion: 4.0.30205.0
//-----------------------------------------------------------------------
// Copyright (C) Microsoft Corporation. All rights reserved.
//-----------------------------------------------------------------------
// MicrosoftAjaxComponentModel.js
// Microsoft AJAX Framework Component Model.
///
Type._registerScript("MicrosoftAjaxComponentModel.js", ["MicrosoftAjaxCore.js"]);
Type.registerNamespace('Sys.UI');
Sys.CommandEventArgs = function Sys$CommandEventArgs(commandName, commandArgument, commandSource) {
///
///
///
///
var e = Function._validateParams(arguments, [
{name: "commandName", type: String},
{name: "commandArgument", mayBeNull: true},
{name: "commandSource", mayBeNull: true}
]);
if (e) throw e;
Sys.CommandEventArgs.initializeBase(this);
this._commandName = commandName;
this._commandArgument = commandArgument;
this._commandSource = commandSource;
}
function Sys$CommandEventArgs$get_commandName() {
///
if (arguments.length !== 0) throw Error.parameterCount();
return this._commandName;
}
function Sys$CommandEventArgs$get_commandArgument() {
///
if (arguments.length !== 0) throw Error.parameterCount();
return this._commandArgument;
}
function Sys$CommandEventArgs$get_commandSource() {
///
if (arguments.length !== 0) throw Error.parameterCount();
return this._commandSource;
}
Sys.CommandEventArgs.prototype = {
_commandName: null,
_commandArgument: null,
_commandSource: null,
get_commandName: Sys$CommandEventArgs$get_commandName,
get_commandArgument: Sys$CommandEventArgs$get_commandArgument,
get_commandSource: Sys$CommandEventArgs$get_commandSource
}
Sys.CommandEventArgs.registerClass("Sys.CommandEventArgs", Sys.CancelEventArgs);
Sys.INotifyDisposing = function Sys$INotifyDisposing() {
///
if (arguments.length !== 0) throw Error.parameterCount();
throw Error.notImplemented();
}
function Sys$INotifyDisposing$add_disposing(handler) {
///
var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
if (e) throw e;
throw Error.notImplemented();
}
function Sys$INotifyDisposing$remove_disposing(handler) {
var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
if (e) throw e;
throw Error.notImplemented();
}
Sys.INotifyDisposing.prototype = {
add_disposing: Sys$INotifyDisposing$add_disposing,
remove_disposing: Sys$INotifyDisposing$remove_disposing
}
Sys.INotifyDisposing.registerInterface("Sys.INotifyDisposing");
Sys.Component = function Sys$Component() {
///
if (arguments.length !== 0) throw Error.parameterCount();
if (Sys.Application) Sys.Application.registerDisposableObject(this);
}
function Sys$Component$get_events() {
///
if (arguments.length !== 0) throw Error.parameterCount();
if (!this._events) {
this._events = new Sys.EventHandlerList();
}
return this._events;
}
function Sys$Component$get_id() {
///
if (arguments.length !== 0) throw Error.parameterCount();
return this._id;
}
function Sys$Component$set_id(value) {
var e = Function._validateParams(arguments, [{name: "value", type: String}]);
if (e) throw e;
if (this._idSet) throw Error.invalidOperation(Sys.Res.componentCantSetIdTwice);
this._idSet = true;
var oldId = this.get_id();
if (oldId && Sys.Application.findComponent(oldId)) throw Error.invalidOperation(Sys.Res.componentCantSetIdAfterAddedToApp);
this._id = value;
}
function Sys$Component$get_isInitialized() {
///
if (arguments.length !== 0) throw Error.parameterCount();
return this._initialized;
}
function Sys$Component$get_isUpdating() {
///
if (arguments.length !== 0) throw Error.parameterCount();
return this._updating;
}
function Sys$Component$add_disposing(handler) {
///
var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
if (e) throw e;
this.get_events().addHandler("disposing", handler);
}
function Sys$Component$remove_disposing(handler) {
var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
if (e) throw e;
this.get_events().removeHandler("disposing", handler);
}
function Sys$Component$add_propertyChanged(handler) {
///
var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
if (e) throw e;
this.get_events().addHandler("propertyChanged", handler);
}
function Sys$Component$remove_propertyChanged(handler) {
var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
if (e) throw e;
this.get_events().removeHandler("propertyChanged", handler);
}
function Sys$Component$beginUpdate() {
this._updating = true;
}
function Sys$Component$dispose() {
if (this._events) {
var handler = this._events.getHandler("disposing");
if (handler) {
handler(this, Sys.EventArgs.Empty);
}
}
delete this._events;
Sys.Application.unregisterDisposableObject(this);
Sys.Application.removeComponent(this);
}
function Sys$Component$endUpdate() {
this._updating = false;
if (!this._initialized) this.initialize();
this.updated();
}
function Sys$Component$initialize() {
this._initialized = true;
}
function Sys$Component$raisePropertyChanged(propertyName) {
///
///
var e = Function._validateParams(arguments, [
{name: "propertyName", type: String}
]);
if (e) throw e;
if (!this._events) return;
var handler = this._events.getHandler("propertyChanged");
if (handler) {
handler(this, new Sys.PropertyChangedEventArgs(propertyName));
}
}
function Sys$Component$updated() {
}
Sys.Component.prototype = {
_id: null,
_idSet: false,
_initialized: false,
_updating: false,
get_events: Sys$Component$get_events,
get_id: Sys$Component$get_id,
set_id: Sys$Component$set_id,
get_isInitialized: Sys$Component$get_isInitialized,
get_isUpdating: Sys$Component$get_isUpdating,
add_disposing: Sys$Component$add_disposing,
remove_disposing: Sys$Component$remove_disposing,
add_propertyChanged: Sys$Component$add_propertyChanged,
remove_propertyChanged: Sys$Component$remove_propertyChanged,
beginUpdate: Sys$Component$beginUpdate,
dispose: Sys$Component$dispose,
endUpdate: Sys$Component$endUpdate,
initialize: Sys$Component$initialize,
raisePropertyChanged: Sys$Component$raisePropertyChanged,
updated: Sys$Component$updated
}
Sys.Component.registerClass('Sys.Component', null, Sys.IDisposable, Sys.INotifyPropertyChange, Sys.INotifyDisposing);
function Sys$Component$_setProperties(target, properties) {
///
///
///
var e = Function._validateParams(arguments, [
{name: "target"},
{name: "properties"}
]);
if (e) throw e;
var current;
var targetType = Object.getType(target);
var isObject = (targetType === Object) || (targetType === Sys.UI.DomElement);
var isComponent = Sys.Component.isInstanceOfType(target) && !target.get_isUpdating();
if (isComponent) target.beginUpdate();
for (var name in properties) {
var val = properties[name];
var getter = isObject ? null : target["get_" + name];
if (isObject || typeof(getter) !== 'function') {
var targetVal = target[name];
if (!isObject && typeof(targetVal) === 'undefined') throw Error.invalidOperation(String.format(Sys.Res.propertyUndefined, name));
if (!val || (typeof(val) !== 'object') || (isObject && !targetVal)) {
target[name] = val;
}
else {
Sys$Component$_setProperties(targetVal, val);
}
}
else {
var setter = target["set_" + name];
if (typeof(setter) === 'function') {
setter.apply(target, [val]);
}
else if (val instanceof Array) {
current = getter.apply(target);
if (!(current instanceof Array)) throw new Error.invalidOperation(String.format(Sys.Res.propertyNotAnArray, name));
for (var i = 0, j = current.length, l= val.length; i < l; i++, j++) {
current[j] = val[i];
}
}
else if ((typeof(val) === 'object') && (Object.getType(val) === Object)) {
current = getter.apply(target);
if ((typeof(current) === 'undefined') || (current === null)) throw new Error.invalidOperation(String.format(Sys.Res.propertyNullOrUndefined, name));
Sys$Component$_setProperties(current, val);
}
else {
throw new Error.invalidOperation(String.format(Sys.Res.propertyNotWritable, name));
}
}
}
if (isComponent) target.endUpdate();
}
function Sys$Component$_setReferences(component, references) {
for (var name in references) {
var setter = component["set_" + name];
var reference = $find(references[name]);
if (typeof(setter) !== 'function') throw new Error.invalidOperation(String.format(Sys.Res.propertyNotWritable, name));
if (!reference) throw Error.invalidOperation(String.format(Sys.Res.referenceNotFound, references[name]));
setter.apply(component, [reference]);
}
}
var $create = Sys.Component.create = function Sys$Component$create(type, properties, events, references, element) {
///
///
///
///
///
///
///
var e = Function._validateParams(arguments, [
{name: "type", type: Type},
{name: "properties", mayBeNull: true, optional: true},
{name: "events", mayBeNull: true, optional: true},
{name: "references", mayBeNull: true, optional: true},
{name: "element", mayBeNull: true, domElement: true, optional: true}
]);
if (e) throw e;
if (!type.inheritsFrom(Sys.Component)) {
throw Error.argument('type', String.format(Sys.Res.createNotComponent, type.getName()));
}
if (type.inheritsFrom(Sys.UI.Behavior) || type.inheritsFrom(Sys.UI.Control)) {
if (!element) throw Error.argument('element', Sys.Res.createNoDom);
}
else if (element) throw Error.argument('element', Sys.Res.createComponentOnDom);
var component = (element ? new type(element): new type());
var app = Sys.Application;
var creatingComponents = app.get_isCreatingComponents();
component.beginUpdate();
if (properties) {
Sys$Component$_setProperties(component, properties);
}
if (events) {
for (var name in events) {
if (!(component["add_" + name] instanceof Function)) throw new Error.invalidOperation(String.format(Sys.Res.undefinedEvent, name));
if (!(events[name] instanceof Function)) throw new Error.invalidOperation(Sys.Res.eventHandlerNotFunction);
component["add_" + name](events[name]);
}
}
if (component.get_id()) {
app.addComponent(component);
}
if (creatingComponents) {
app._createdComponents[app._createdComponents.length] = component;
if (references) {
app._addComponentToSecondPass(component, references);
}
else {
component.endUpdate();
}
}
else {
if (references) {
Sys$Component$_setReferences(component, references);
}
component.endUpdate();
}
return component;
}
Sys.UI.MouseButton = function Sys$UI$MouseButton() {
///
///
///
///
if (arguments.length !== 0) throw Error.parameterCount();
throw Error.notImplemented();
}
Sys.UI.MouseButton.prototype = {
leftButton: 0,
middleButton: 1,
rightButton: 2
}
Sys.UI.MouseButton.registerEnum("Sys.UI.MouseButton");
Sys.UI.Key = function Sys$UI$Key() {
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
if (arguments.length !== 0) throw Error.parameterCount();
throw Error.notImplemented();
}
Sys.UI.Key.prototype = {
backspace: 8,
tab: 9,
enter: 13,
esc: 27,
space: 32,
pageUp: 33,
pageDown: 34,
end: 35,
home: 36,
left: 37,
up: 38,
right: 39,
down: 40,
del: 127
}
Sys.UI.Key.registerEnum("Sys.UI.Key");
Sys.UI.Point = function Sys$UI$Point(x, y) {
///
///
///
///
///
var e = Function._validateParams(arguments, [
{name: "x", type: Number, integer: true},
{name: "y", type: Number, integer: true}
]);
if (e) throw e;
this.x = x;
this.y = y;
}
Sys.UI.Point.registerClass('Sys.UI.Point');
Sys.UI.Bounds = function Sys$UI$Bounds(x, y, width, height) {
///
///
///
///
///
///
///
///
///
var e = Function._validateParams(arguments, [
{name: "x", type: Number, integer: true},
{name: "y", type: Number, integer: true},
{name: "width", type: Number, integer: true},
{name: "height", type: Number, integer: true}
]);
if (e) throw e;
this.x = x;
this.y = y;
this.height = height;
this.width = width;
}
Sys.UI.Bounds.registerClass('Sys.UI.Bounds');
Sys.UI.DomEvent = function Sys$UI$DomEvent(eventObject) {
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
var e = Function._validateParams(arguments, [
{name: "eventObject"}
]);
if (e) throw e;
var ev = eventObject;
var etype = this.type = ev.type.toLowerCase();
this.rawEvent = ev;
this.altKey = ev.altKey;
if (typeof(ev.button) !== 'undefined') {
this.button = (typeof(ev.which) !== 'undefined') ? ev.button :
(ev.button === 4) ? Sys.UI.MouseButton.middleButton :
(ev.button === 2) ? Sys.UI.MouseButton.rightButton :
Sys.UI.MouseButton.leftButton;
}
if (etype === 'keypress') {
this.charCode = ev.charCode || ev.keyCode;
}
else if (ev.keyCode && (ev.keyCode === 46)) {
this.keyCode = 127;
}
else {
this.keyCode = ev.keyCode;
}
this.clientX = ev.clientX;
this.clientY = ev.clientY;
this.ctrlKey = ev.ctrlKey;
this.target = ev.target ? ev.target : ev.srcElement;
if (!etype.startsWith('key')) {
if ((typeof(ev.offsetX) !== 'undefined') && (typeof(ev.offsetY) !== 'undefined')) {
this.offsetX = ev.offsetX;
this.offsetY = ev.offsetY;
}
else if (this.target && (this.target.nodeType !== 3) && (typeof(ev.clientX) === 'number')) {
var loc = Sys.UI.DomElement.getLocation(this.target);
var w = Sys.UI.DomElement._getWindow(this.target);
this.offsetX = (w.pageXOffset || 0) + ev.clientX - loc.x;
this.offsetY = (w.pageYOffset || 0) + ev.clientY - loc.y;
}
}
this.screenX = ev.screenX;
this.screenY = ev.screenY;
this.shiftKey = ev.shiftKey;
}
function Sys$UI$DomEvent$preventDefault() {
///
if (arguments.length !== 0) throw Error.parameterCount();
if (this.rawEvent.preventDefault) {
this.rawEvent.preventDefault();
}
else if (window.event) {
this.rawEvent.returnValue = false;
}
}
function Sys$UI$DomEvent$stopPropagation() {
///
if (arguments.length !== 0) throw Error.parameterCount();
if (this.rawEvent.stopPropagation) {
this.rawEvent.stopPropagation();
}
else if (window.event) {
this.rawEvent.cancelBubble = true;
}
}
Sys.UI.DomEvent.prototype = {
preventDefault: Sys$UI$DomEvent$preventDefault,
stopPropagation: Sys$UI$DomEvent$stopPropagation
}
Sys.UI.DomEvent.registerClass('Sys.UI.DomEvent');
var $addHandler = Sys.UI.DomEvent.addHandler = function Sys$UI$DomEvent$addHandler(element, eventName, handler, autoRemove) {
///
///
///
///
///
var e = Function._validateParams(arguments, [
{name: "element"},
{name: "eventName", type: String},
{name: "handler", type: Function},
{name: "autoRemove", type: Boolean, optional: true}
]);
if (e) throw e;
Sys.UI.DomEvent._ensureDomNode(element);
if (eventName === "error") throw Error.invalidOperation(Sys.Res.addHandlerCantBeUsedForError);
if (!element._events) {
element._events = {};
}
var eventCache = element._events[eventName];
if (!eventCache) {
element._events[eventName] = eventCache = [];
}
var browserHandler;
if (element.addEventListener) {
browserHandler = function(e) {
return handler.call(element, new Sys.UI.DomEvent(e));
}
element.addEventListener(eventName, browserHandler, false);
}
else if (element.attachEvent) {
browserHandler = function() {
var e = {};
try {e = Sys.UI.DomElement._getWindow(element).event} catch(ex) {}
return handler.call(element, new Sys.UI.DomEvent(e));
}
element.attachEvent('on' + eventName, browserHandler);
}
eventCache[eventCache.length] = {handler: handler, browserHandler: browserHandler, autoRemove: autoRemove };
if (autoRemove) {
var d = element.dispose;
if (d !== Sys.UI.DomEvent._disposeHandlers) {
element.dispose = Sys.UI.DomEvent._disposeHandlers;
if (typeof(d) !== "undefined") {
element._chainDispose = d;
}
}
}
}
var $addHandlers = Sys.UI.DomEvent.addHandlers = function Sys$UI$DomEvent$addHandlers(element, events, handlerOwner, autoRemove) {
///
///
///
///
///
var e = Function._validateParams(arguments, [
{name: "element"},
{name: "events", type: Object},
{name: "handlerOwner", optional: true},
{name: "autoRemove", type: Boolean, optional: true}
]);
if (e) throw e;
Sys.UI.DomEvent._ensureDomNode(element);
for (var name in events) {
var handler = events[name];
if (typeof(handler) !== 'function') throw Error.invalidOperation(Sys.Res.cantAddNonFunctionhandler);
if (handlerOwner) {
handler = Function.createDelegate(handlerOwner, handler);
}
$addHandler(element, name, handler, autoRemove || false);
}
}
var $clearHandlers = Sys.UI.DomEvent.clearHandlers = function Sys$UI$DomEvent$clearHandlers(element) {
///
///
var e = Function._validateParams(arguments, [
{name: "element"}
]);
if (e) throw e;
Sys.UI.DomEvent._ensureDomNode(element);
Sys.UI.DomEvent._clearHandlers(element, false);
}
Sys.UI.DomEvent._clearHandlers = function Sys$UI$DomEvent$_clearHandlers(element, autoRemoving) {
if (element._events) {
var cache = element._events;
for (var name in cache) {
var handlers = cache[name];
for (var i = handlers.length - 1; i >= 0; i--) {
var entry = handlers[i];
if (!autoRemoving || entry.autoRemove) {
$removeHandler(element, name, entry.handler);
}
}
}
element._events = null;
}
}
Sys.UI.DomEvent._disposeHandlers = function Sys$UI$DomEvent$_disposeHandlers() {
Sys.UI.DomEvent._clearHandlers(this, true);
var d = this._chainDispose, type = typeof(d);
if (type !== "undefined") {
this.dispose = d;
this._chainDispose = null;
if (type === "function") {
this.dispose();
}
}
}
var $removeHandler = Sys.UI.DomEvent.removeHandler = function Sys$UI$DomEvent$removeHandler(element, eventName, handler) {
///
///
///
///
var e = Function._validateParams(arguments, [
{name: "element"},
{name: "eventName", type: String},
{name: "handler", type: Function}
]);
if (e) throw e;
Sys.UI.DomEvent._removeHandler(element, eventName, handler);
}
Sys.UI.DomEvent._removeHandler = function Sys$UI$DomEvent$_removeHandler(element, eventName, handler) {
Sys.UI.DomEvent._ensureDomNode(element);
var browserHandler = null;
if ((typeof(element._events) !== 'object') || !element._events) throw Error.invalidOperation(Sys.Res.eventHandlerInvalid);
var cache = element._events[eventName];
if (!(cache instanceof Array)) throw Error.invalidOperation(Sys.Res.eventHandlerInvalid);
for (var i = 0, l = cache.length; i < l; i++) {
if (cache[i].handler === handler) {
browserHandler = cache[i].browserHandler;
break;
}
}
if (typeof(browserHandler) !== 'function') throw Error.invalidOperation(Sys.Res.eventHandlerInvalid);
if (element.removeEventListener) {
element.removeEventListener(eventName, browserHandler, false);
}
else if (element.detachEvent) {
element.detachEvent('on' + eventName, browserHandler);
}
cache.splice(i, 1);
}
Sys.UI.DomEvent._ensureDomNode = function Sys$UI$DomEvent$_ensureDomNode(element) {
if (element.tagName && (element.tagName.toUpperCase() === "SCRIPT")) return;
var doc = element.ownerDocument || element.document || element;
if ((typeof(element.document) !== 'object') && (element != doc) && (typeof(element.nodeType) !== 'number')) {
throw Error.argument("element", Sys.Res.argumentDomNode);
}
}
Sys.UI.DomElement = function Sys$UI$DomElement() {
///
if (arguments.length !== 0) throw Error.parameterCount();
throw Error.notImplemented();
}
Sys.UI.DomElement.registerClass('Sys.UI.DomElement');
Sys.UI.DomElement.addCssClass = function Sys$UI$DomElement$addCssClass(element, className) {
///
///
///
var e = Function._validateParams(arguments, [
{name: "element", domElement: true},
{name: "className", type: String}
]);
if (e) throw e;
if (!Sys.UI.DomElement.containsCssClass(element, className)) {
if (element.className === '') {
element.className = className;
}
else {
element.className += ' ' + className;
}
}
}
Sys.UI.DomElement.containsCssClass = function Sys$UI$DomElement$containsCssClass(element, className) {
///
///
///
///
var e = Function._validateParams(arguments, [
{name: "element", domElement: true},
{name: "className", type: String}
]);
if (e) throw e;
return Array.contains(element.className.split(' '), className);
}
Sys.UI.DomElement.getBounds = function Sys$UI$DomElement$getBounds(element) {
///
///
///
var e = Function._validateParams(arguments, [
{name: "element", domElement: true}
]);
if (e) throw e;
var offset = Sys.UI.DomElement.getLocation(element);
return new Sys.UI.Bounds(offset.x, offset.y, element.offsetWidth || 0, element.offsetHeight || 0);
}
var $get = Sys.UI.DomElement.getElementById = function Sys$UI$DomElement$getElementById(id, element) {
///
///
///
///
var e = Function._validateParams(arguments, [
{name: "id", type: String},
{name: "element", mayBeNull: true, domElement: true, optional: true}
]);
if (e) throw e;
if (!element) return document.getElementById(id);
if (element.getElementById) return element.getElementById(id);
var nodeQueue = [];
var childNodes = element.childNodes;
for (var i = 0; i < childNodes.length; i++) {
var node = childNodes[i];
if (node.nodeType == 1) {
nodeQueue[nodeQueue.length] = node;
}
}
while (nodeQueue.length) {
node = nodeQueue.shift();
if (node.id == id) {
return node;
}
childNodes = node.childNodes;
for (i = 0; i < childNodes.length; i++) {
node = childNodes[i];
if (node.nodeType == 1) {
nodeQueue[nodeQueue.length] = node;
}
}
}
return null;
}
if (document.documentElement.getBoundingClientRect) {
Sys.UI.DomElement.getLocation = function Sys$UI$DomElement$getLocation(element) {
///
///
///
var e = Function._validateParams(arguments, [
{name: "element", domElement: true}
]);
if (e) throw e;
if (element.self || element.nodeType === 9 ||
(element === document.documentElement) ||
(element.parentNode === element.ownerDocument.documentElement)) {
return new Sys.UI.Point(0, 0);
}
var clientRect = element.getBoundingClientRect();
if (!clientRect) {
return new Sys.UI.Point(0,0);
}
var ex, documentElement = element.ownerDocument.documentElement,
offsetX = Math.round(clientRect.left) + documentElement.scrollLeft,
offsetY = Math.round(clientRect.top) + documentElement.scrollTop;
if (Sys.Browser.agent === Sys.Browser.InternetExplorer) {
try {
var f = element.ownerDocument.parentWindow.frameElement || null;
if (f) {
var offset = (f.frameBorder === "0" || f.frameBorder === "no") ? 2 : 0;
offsetX += offset;
offsetY += offset;
}
}
catch(ex) {
}
if (Sys.Browser.version === 7 && !document.documentMode) {
var body = document.body,
rect = body.getBoundingClientRect(),
zoom = (rect.right-rect.left) / body.clientWidth;
zoom = Math.round(zoom * 100);
zoom = (zoom - zoom % 5) / 100;
if (!isNaN(zoom) && (zoom !== 1)) {
offsetX = Math.round(offsetX / zoom);
offsetY = Math.round(offsetY / zoom);
}
}
if ((document.documentMode || 0) < 8) {
offsetX -= documentElement.clientLeft;
offsetY -= documentElement.clientTop;
}
}
return new Sys.UI.Point(offsetX, offsetY);
}
}
else if (Sys.Browser.agent === Sys.Browser.Safari) {
Sys.UI.DomElement.getLocation = function Sys$UI$DomElement$getLocation(element) {
///
///
///
var e = Function._validateParams(arguments, [
{name: "element", domElement: true}
]);
if (e) throw e;
if ((element.window && (element.window === element)) || element.nodeType === 9) return new Sys.UI.Point(0,0);
var offsetX = 0, offsetY = 0,
parent,
previous = null,
previousStyle = null,
currentStyle;
for (parent = element; parent; previous = parent, previousStyle = currentStyle, parent = parent.offsetParent) {
currentStyle = Sys.UI.DomElement._getCurrentStyle(parent);
var tagName = parent.tagName ? parent.tagName.toUpperCase() : null;
if ((parent.offsetLeft || parent.offsetTop) &&
((tagName !== "BODY") || (!previousStyle || previousStyle.position !== "absolute"))) {
offsetX += parent.offsetLeft;
offsetY += parent.offsetTop;
}
if (previous && Sys.Browser.version >= 3) {
offsetX += parseInt(currentStyle.borderLeftWidth);
offsetY += parseInt(currentStyle.borderTopWidth);
}
}
currentStyle = Sys.UI.DomElement._getCurrentStyle(element);
var elementPosition = currentStyle ? currentStyle.position : null;
if (!elementPosition || (elementPosition !== "absolute")) {
for (parent = element.parentNode; parent; parent = parent.parentNode) {
tagName = parent.tagName ? parent.tagName.toUpperCase() : null;
if ((tagName !== "BODY") && (tagName !== "HTML") && (parent.scrollLeft || parent.scrollTop)) {
offsetX -= (parent.scrollLeft || 0);
offsetY -= (parent.scrollTop || 0);
}
currentStyle = Sys.UI.DomElement._getCurrentStyle(parent);
var parentPosition = currentStyle ? currentStyle.position : null;
if (parentPosition && (parentPosition === "absolute")) break;
}
}
return new Sys.UI.Point(offsetX, offsetY);
}
}
else {
Sys.UI.DomElement.getLocation = function Sys$UI$DomElement$getLocation(element) {
///
///
///
var e = Function._validateParams(arguments, [
{name: "element", domElement: true}
]);
if (e) throw e;
if ((element.window && (element.window === element)) || element.nodeType === 9) return new Sys.UI.Point(0,0);
var offsetX = 0, offsetY = 0,
parent,
previous = null,
previousStyle = null,
currentStyle = null;
for (parent = element; parent; previous = parent, previousStyle = currentStyle, parent = parent.offsetParent) {
var tagName = parent.tagName ? parent.tagName.toUpperCase() : null;
currentStyle = Sys.UI.DomElement._getCurrentStyle(parent);
if ((parent.offsetLeft || parent.offsetTop) &&
!((tagName === "BODY") &&
(!previousStyle || previousStyle.position !== "absolute"))) {
offsetX += parent.offsetLeft;
offsetY += parent.offsetTop;
}
if (previous !== null && currentStyle) {
if ((tagName !== "TABLE") && (tagName !== "TD") && (tagName !== "HTML")) {
offsetX += parseInt(currentStyle.borderLeftWidth) || 0;
offsetY += parseInt(currentStyle.borderTopWidth) || 0;
}
if (tagName === "TABLE" &&
(currentStyle.position === "relative" || currentStyle.position === "absolute")) {
offsetX += parseInt(currentStyle.marginLeft) || 0;
offsetY += parseInt(currentStyle.marginTop) || 0;
}
}
}
currentStyle = Sys.UI.DomElement._getCurrentStyle(element);
var elementPosition = currentStyle ? currentStyle.position : null;
if (!elementPosition || (elementPosition !== "absolute")) {
for (parent = element.parentNode; parent; parent = parent.parentNode) {
tagName = parent.tagName ? parent.tagName.toUpperCase() : null;
if ((tagName !== "BODY") && (tagName !== "HTML") && (parent.scrollLeft || parent.scrollTop)) {
offsetX -= (parent.scrollLeft || 0);
offsetY -= (parent.scrollTop || 0);
currentStyle = Sys.UI.DomElement._getCurrentStyle(parent);
if (currentStyle) {
offsetX += parseInt(currentStyle.borderLeftWidth) || 0;
offsetY += parseInt(currentStyle.borderTopWidth) || 0;
}
}
}
}
return new Sys.UI.Point(offsetX, offsetY);
}
}
Sys.UI.DomElement.isDomElement = function Sys$UI$DomElement$isDomElement(obj) {
///
///
///
var e = Function._validateParams(arguments, [
{name: "obj"}
]);
if (e) throw e;
return Sys._isDomElement(obj);
}
Sys.UI.DomElement.removeCssClass = function Sys$UI$DomElement$removeCssClass(element, className) {
///
///
///
var e = Function._validateParams(arguments, [
{name: "element", domElement: true},
{name: "className", type: String}
]);
if (e) throw e;
var currentClassName = ' ' + element.className + ' ';
var index = currentClassName.indexOf(' ' + className + ' ');
if (index >= 0) {
element.className = (currentClassName.substr(0, index) + ' ' +
currentClassName.substring(index + className.length + 1, currentClassName.length)).trim();
}
}
Sys.UI.DomElement.resolveElement = function Sys$UI$DomElement$resolveElement(elementOrElementId, containerElement) {
///
///
///
///
var e = Function._validateParams(arguments, [
{name: "elementOrElementId", mayBeNull: true},
{name: "containerElement", mayBeNull: true, domElement: true, optional: true}
]);
if (e) throw e;
var el = elementOrElementId;
if (!el) return null;
if (typeof(el) === "string") {
el = Sys.UI.DomElement.getElementById(el, containerElement);
if (!el) {
throw Error.argument("elementOrElementId", String.format(Sys.Res.elementNotFound, elementOrElementId));
}
}
else if(!Sys.UI.DomElement.isDomElement(el)) {
throw Error.argument("elementOrElementId", Sys.Res.expectedElementOrId);
}
return el;
}
Sys.UI.DomElement.raiseBubbleEvent = function Sys$UI$DomElement$raiseBubbleEvent(source, args) {
///
///
///
var e = Function._validateParams(arguments, [
{name: "source", domElement: true},
{name: "args", type: Sys.EventArgs}
]);
if (e) throw e;
var target = source;
while (target) {
var control = target.control;
if (control && control.onBubbleEvent && control.raiseBubbleEvent) {
Sys.UI.DomElement._raiseBubbleEventFromControl(control, source, args);
return;
}
target = target.parentNode;
}
}
Sys.UI.DomElement._raiseBubbleEventFromControl = function Sys$UI$DomElement$_raiseBubbleEventFromControl(control, source, args) {
if (!control.onBubbleEvent(source, args)) {
control._raiseBubbleEvent(source, args);
}
}
Sys.UI.DomElement.setLocation = function Sys$UI$DomElement$setLocation(element, x, y) {
///
///
///
///
var e = Function._validateParams(arguments, [
{name: "element", domElement: true},
{name: "x", type: Number, integer: true},
{name: "y", type: Number, integer: true}
]);
if (e) throw e;
var style = element.style;
style.position = 'absolute';
style.left = x + "px";
style.top = y + "px";
}
Sys.UI.DomElement.toggleCssClass = function Sys$UI$DomElement$toggleCssClass(element, className) {
///
///
///
var e = Function._validateParams(arguments, [
{name: "element", domElement: true},
{name: "className", type: String}
]);
if (e) throw e;
if (Sys.UI.DomElement.containsCssClass(element, className)) {
Sys.UI.DomElement.removeCssClass(element, className);
}
else {
Sys.UI.DomElement.addCssClass(element, className);
}
}
Sys.UI.DomElement.getVisibilityMode = function Sys$UI$DomElement$getVisibilityMode(element) {
///
///
///
var e = Function._validateParams(arguments, [
{name: "element", domElement: true}
]);
if (e) throw e;
return (element._visibilityMode === Sys.UI.VisibilityMode.hide) ?
Sys.UI.VisibilityMode.hide :
Sys.UI.VisibilityMode.collapse;
}
Sys.UI.DomElement.setVisibilityMode = function Sys$UI$DomElement$setVisibilityMode(element, value) {
///
///
///
var e = Function._validateParams(arguments, [
{name: "element", domElement: true},
{name: "value", type: Sys.UI.VisibilityMode}
]);
if (e) throw e;
Sys.UI.DomElement._ensureOldDisplayMode(element);
if (element._visibilityMode !== value) {
element._visibilityMode = value;
if (Sys.UI.DomElement.getVisible(element) === false) {
if (element._visibilityMode === Sys.UI.VisibilityMode.hide) {
element.style.display = element._oldDisplayMode;
}
else {
element.style.display = 'none';
}
}
element._visibilityMode = value;
}
}
Sys.UI.DomElement.getVisible = function Sys$UI$DomElement$getVisible(element) {
///
///
///
var e = Function._validateParams(arguments, [
{name: "element", domElement: true}
]);
if (e) throw e;
var style = element.currentStyle || Sys.UI.DomElement._getCurrentStyle(element);
if (!style) return true;
return (style.visibility !== 'hidden') && (style.display !== 'none');
}
Sys.UI.DomElement.setVisible = function Sys$UI$DomElement$setVisible(element, value) {
///
///
///
var e = Function._validateParams(arguments, [
{name: "element", domElement: true},
{name: "value", type: Boolean}
]);
if (e) throw e;
if (value !== Sys.UI.DomElement.getVisible(element)) {
Sys.UI.DomElement._ensureOldDisplayMode(element);
element.style.visibility = value ? 'visible' : 'hidden';
if (value || (element._visibilityMode === Sys.UI.VisibilityMode.hide)) {
element.style.display = element._oldDisplayMode;
}
else {
element.style.display = 'none';
}
}
}
Sys.UI.DomElement._ensureOldDisplayMode = function Sys$UI$DomElement$_ensureOldDisplayMode(element) {
if (!element._oldDisplayMode) {
var style = element.currentStyle || Sys.UI.DomElement._getCurrentStyle(element);
element._oldDisplayMode = style ? style.display : null;
if (!element._oldDisplayMode || element._oldDisplayMode === 'none') {
switch(element.tagName.toUpperCase()) {
case 'DIV': case 'P': case 'ADDRESS': case 'BLOCKQUOTE': case 'BODY': case 'COL':
case 'COLGROUP': case 'DD': case 'DL': case 'DT': case 'FIELDSET': case 'FORM':
case 'H1': case 'H2': case 'H3': case 'H4': case 'H5': case 'H6': case 'HR':
case 'IFRAME': case 'LEGEND': case 'OL': case 'PRE': case 'TABLE': case 'TD':
case 'TH': case 'TR': case 'UL':
element._oldDisplayMode = 'block';
break;
case 'LI':
element._oldDisplayMode = 'list-item';
break;
default:
element._oldDisplayMode = 'inline';
}
}
}
}
Sys.UI.DomElement._getWindow = function Sys$UI$DomElement$_getWindow(element) {
var doc = element.ownerDocument || element.document || element;
return doc.defaultView || doc.parentWindow;
}
Sys.UI.DomElement._getCurrentStyle = function Sys$UI$DomElement$_getCurrentStyle(element) {
if (element.nodeType === 3) return null;
var w = Sys.UI.DomElement._getWindow(element);
if (element.documentElement) element = element.documentElement;
var computedStyle = (w && (element !== w) && w.getComputedStyle) ?
w.getComputedStyle(element, null) :
element.currentStyle || element.style;
if (!computedStyle && (Sys.Browser.agent === Sys.Browser.Safari) && element.style) {
var oldDisplay = element.style.display;
var oldPosition = element.style.position;
element.style.position = 'absolute';
element.style.display = 'block';
var style = w.getComputedStyle(element, null);
element.style.display = oldDisplay;
element.style.position = oldPosition;
computedStyle = {};
for (var n in style) {
computedStyle[n] = style[n];
}
computedStyle.display = 'none';
}
return computedStyle;
}
Sys.IContainer = function Sys$IContainer() {
throw Error.notImplemented();
}
function Sys$IContainer$addComponent(component) {
///
///
var e = Function._validateParams(arguments, [
{name: "component", type: Sys.Component}
]);
if (e) throw e;
throw Error.notImplemented();
}
function Sys$IContainer$removeComponent(component) {
///
///
var e = Function._validateParams(arguments, [
{name: "component", type: Sys.Component}
]);
if (e) throw e;
throw Error.notImplemented();
}
function Sys$IContainer$findComponent(id) {
///
///
///
var e = Function._validateParams(arguments, [
{name: "id", type: String}
]);
if (e) throw e;
throw Error.notImplemented();
}
function Sys$IContainer$getComponents() {
///
///
if (arguments.length !== 0) throw Error.parameterCount();
throw Error.notImplemented();
}
Sys.IContainer.prototype = {
addComponent: Sys$IContainer$addComponent,
removeComponent: Sys$IContainer$removeComponent,
findComponent: Sys$IContainer$findComponent,
getComponents: Sys$IContainer$getComponents
}
Sys.IContainer.registerInterface("Sys.IContainer");
Sys.ApplicationLoadEventArgs = function Sys$ApplicationLoadEventArgs(components, isPartialLoad) {
///
///
///
var e = Function._validateParams(arguments, [
{name: "components", type: Array, elementType: Sys.Component},
{name: "isPartialLoad", type: Boolean}
]);
if (e) throw e;
Sys.ApplicationLoadEventArgs.initializeBase(this);
this._components = components;
this._isPartialLoad = isPartialLoad;
}
function Sys$ApplicationLoadEventArgs$get_components() {
///
if (arguments.length !== 0) throw Error.parameterCount();
return this._components;
}
function Sys$ApplicationLoadEventArgs$get_isPartialLoad() {
///
if (arguments.length !== 0) throw Error.parameterCount();
return this._isPartialLoad;
}
Sys.ApplicationLoadEventArgs.prototype = {
get_components: Sys$ApplicationLoadEventArgs$get_components,
get_isPartialLoad: Sys$ApplicationLoadEventArgs$get_isPartialLoad
}
Sys.ApplicationLoadEventArgs.registerClass('Sys.ApplicationLoadEventArgs', Sys.EventArgs);
Sys._Application = function Sys$_Application() {
///
if (arguments.length !== 0) throw Error.parameterCount();
Sys._Application.initializeBase(this);
this._disposableObjects = [];
this._components = {};
this._createdComponents = [];
this._secondPassComponents = [];
this._unloadHandlerDelegate = Function.createDelegate(this, this._unloadHandler);
Sys.UI.DomEvent.addHandler(window, "unload", this._unloadHandlerDelegate);
this._domReady();
}
function Sys$_Application$get_isCreatingComponents() {
///
if (arguments.length !== 0) throw Error.parameterCount();
return this._creatingComponents;
}
function Sys$_Application$get_isDisposing() {
///
if (arguments.length !== 0) throw Error.parameterCount();
return this._disposing;
}
function Sys$_Application$add_init(handler) {
///
var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
if (e) throw e;
if (this._initialized) {
handler(this, Sys.EventArgs.Empty);
}
else {
this.get_events().addHandler("init", handler);
}
}
function Sys$_Application$remove_init(handler) {
var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
if (e) throw e;
this.get_events().removeHandler("init", handler);
}
function Sys$_Application$add_load(handler) {
///
var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
if (e) throw e;
this.get_events().addHandler("load", handler);
}
function Sys$_Application$remove_load(handler) {
var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
if (e) throw e;
this.get_events().removeHandler("load", handler);
}
function Sys$_Application$add_unload(handler) {
///
var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
if (e) throw e;
this.get_events().addHandler("unload", handler);
}
function Sys$_Application$remove_unload(handler) {
var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
if (e) throw e;
this.get_events().removeHandler("unload", handler);
}
function Sys$_Application$addComponent(component) {
///
///
var e = Function._validateParams(arguments, [
{name: "component", type: Sys.Component}
]);
if (e) throw e;
var id = component.get_id();
if (!id) throw Error.invalidOperation(Sys.Res.cantAddWithoutId);
if (typeof(this._components[id]) !== 'undefined') throw Error.invalidOperation(String.format(Sys.Res.appDuplicateComponent, id));
this._components[id] = component;
}
function Sys$_Application$beginCreateComponents() {
///
if (arguments.length !== 0) throw Error.parameterCount();
this._creatingComponents = true;
}
function Sys$_Application$dispose() {
///
if (arguments.length !== 0) throw Error.parameterCount();
if (!this._disposing) {
this._disposing = true;
if (this._timerCookie) {
window.clearTimeout(this._timerCookie);
delete this._timerCookie;
}
if (this._endRequestHandler) {
Sys.WebForms.PageRequestManager.getInstance().remove_endRequest(this._endRequestHandler);
delete this._endRequestHandler;
}
if (this._beginRequestHandler) {
Sys.WebForms.PageRequestManager.getInstance().remove_beginRequest(this._beginRequestHandler);
delete this._beginRequestHandler;
}
if (window.pageUnload) {
window.pageUnload(this, Sys.EventArgs.Empty);
}
var unloadHandler = this.get_events().getHandler("unload");
if (unloadHandler) {
unloadHandler(this, Sys.EventArgs.Empty);
}
var disposableObjects = Array.clone(this._disposableObjects);
for (var i = 0, l = disposableObjects.length; i < l; i++) {
var object = disposableObjects[i];
if (typeof(object) !== "undefined") {
object.dispose();
}
}
Array.clear(this._disposableObjects);
Sys.UI.DomEvent.removeHandler(window, "unload", this._unloadHandlerDelegate);
if (Sys._ScriptLoader) {
var sl = Sys._ScriptLoader.getInstance();
if(sl) {
sl.dispose();
}
}
Sys._Application.callBaseMethod(this, 'dispose');
}
}
function Sys$_Application$disposeElement(element, childNodesOnly) {
///
///
///
var e = Function._validateParams(arguments, [
{name: "element"},
{name: "childNodesOnly", type: Boolean}
]);
if (e) throw e;
if (element.nodeType === 1) {
var i, allElements = element.getElementsByTagName("*"),
length = allElements.length,
children = new Array(length);
for (i = 0; i < length; i++) {
children[i] = allElements[i];
}
for (i = length - 1; i >= 0; i--) {
var child = children[i];
var d = child.dispose;
if (d && typeof(d) === "function") {
child.dispose();
}
else {
var c = child.control;
if (c && typeof(c.dispose) === "function") {
c.dispose();
}
}
var list = child._behaviors;
if (list) {
this._disposeComponents(list);
}
list = child._components;
if (list) {
this._disposeComponents(list);
child._components = null;
}
}
if (!childNodesOnly) {
var d = element.dispose;
if (d && typeof(d) === "function") {
element.dispose();
}
else {
var c = element.control;
if (c && typeof(c.dispose) === "function") {
c.dispose();
}
}
var list = element._behaviors;
if (list) {
this._disposeComponents(list);
}
list = element._components;
if (list) {
this._disposeComponents(list);
element._components = null;
}
}
}
}
function Sys$_Application$endCreateComponents() {
///
if (arguments.length !== 0) throw Error.parameterCount();
var components = this._secondPassComponents;
for (var i = 0, l = components.length; i < l; i++) {
var component = components[i].component;
Sys$Component$_setReferences(component, components[i].references);
component.endUpdate();
}
this._secondPassComponents = [];
this._creatingComponents = false;
}
function Sys$_Application$findComponent(id, parent) {
///
///
///
///
var e = Function._validateParams(arguments, [
{name: "id", type: String},
{name: "parent", mayBeNull: true, optional: true}
]);
if (e) throw e;
return (parent ?
((Sys.IContainer.isInstanceOfType(parent)) ?
parent.findComponent(id) :
parent[id] || null) :
Sys.Application._components[id] || null);
}
function Sys$_Application$getComponents() {
///
///
if (arguments.length !== 0) throw Error.parameterCount();
var res = [];
var components = this._components;
for (var name in components) {
res[res.length] = components[name];
}
return res;
}
function Sys$_Application$initialize() {
///
if (arguments.length !== 0) throw Error.parameterCount();
if(!this.get_isInitialized() && !this._disposing) {
Sys._Application.callBaseMethod(this, 'initialize');
this._raiseInit();
if (this.get_stateString) {
if (Sys.WebForms && Sys.WebForms.PageRequestManager) {
this._beginRequestHandler = Function.createDelegate(this, this._onPageRequestManagerBeginRequest);
Sys.WebForms.PageRequestManager.getInstance().add_beginRequest(this._beginRequestHandler);
this._endRequestHandler = Function.createDelegate(this, this._onPageRequestManagerEndRequest);
Sys.WebForms.PageRequestManager.getInstance().add_endRequest(this._endRequestHandler);
}
var loadedEntry = this.get_stateString();
if (loadedEntry !== this._currentEntry) {
this._navigate(loadedEntry);
}
else {
this._ensureHistory();
}
}
this.raiseLoad();
}
}
function Sys$_Application$notifyScriptLoaded() {
///
if (arguments.length !== 0) throw Error.parameterCount();
}
function Sys$_Application$registerDisposableObject(object) {
///
///
var e = Function._validateParams(arguments, [
{name: "object", type: Sys.IDisposable}
]);
if (e) throw e;
if (!this._disposing) {
var objects = this._disposableObjects,
i = objects.length;
objects[i] = object;
object.__msdisposeindex = i;
}
}
function Sys$_Application$raiseLoad() {
///
if (arguments.length !== 0) throw Error.parameterCount();
var h = this.get_events().getHandler("load");
var args = new Sys.ApplicationLoadEventArgs(Array.clone(this._createdComponents), !!this._loaded);
this._loaded = true;
if (h) {
h(this, args);
}
if (window.pageLoad) {
window.pageLoad(this, args);
}
this._createdComponents = [];
}
function Sys$_Application$removeComponent(component) {
///
///
var e = Function._validateParams(arguments, [
{name: "component", type: Sys.Component}
]);
if (e) throw e;
var id = component.get_id();
if (id) delete this._components[id];
}
function Sys$_Application$unregisterDisposableObject(object) {
///
///
var e = Function._validateParams(arguments, [
{name: "object", type: Sys.IDisposable}
]);
if (e) throw e;
if (!this._disposing) {
var i = object.__msdisposeindex;
if (typeof(i) === "number") {
var disposableObjects = this._disposableObjects;
delete disposableObjects[i];
delete object.__msdisposeindex;
if (++this._deleteCount > 1000) {
var newArray = [];
for (var j = 0, l = disposableObjects.length; j < l; j++) {
object = disposableObjects[j];
if (typeof(object) !== "undefined") {
object.__msdisposeindex = newArray.length;
newArray.push(object);
}
}
this._disposableObjects = newArray;
this._deleteCount = 0;
}
}
}
}
function Sys$_Application$_addComponentToSecondPass(component, references) {
this._secondPassComponents[this._secondPassComponents.length] = {component: component, references: references};
}
function Sys$_Application$_disposeComponents(list) {
if (list) {
for (var i = list.length - 1; i >= 0; i--) {
var item = list[i];
if (typeof(item.dispose) === "function") {
item.dispose();
}
}
}
}
function Sys$_Application$_domReady() {
var check, er, app = this;
function init() { app.initialize(); }
var onload = function() {
Sys.UI.DomEvent.removeHandler(window, "load", onload);
init();
}
Sys.UI.DomEvent.addHandler(window, "load", onload);
if (document.addEventListener) {
try {
document.addEventListener("DOMContentLoaded", check = function() {
document.removeEventListener("DOMContentLoaded", check, false);
init();
}, false);
}
catch (er) { }
}
else if (document.attachEvent) {
if ((window == window.top) && document.documentElement.doScroll) {
var timeout, el = document.createElement("div");
check = function() {
try {
el.doScroll("left");
}
catch (er) {
timeout = window.setTimeout(check, 0);
return;
}
el = null;
init();
}
check();
}
else {
document.attachEvent("onreadystatechange", check = function() {
if (document.readyState === "complete") {
document.detachEvent("onreadystatechange", check);
init();
}
});
}
}
}
function Sys$_Application$_raiseInit() {
var handler = this.get_events().getHandler("init");
if (handler) {
this.beginCreateComponents();
handler(this, Sys.EventArgs.Empty);
this.endCreateComponents();
}
}
function Sys$_Application$_unloadHandler(event) {
this.dispose();
}
Sys._Application.prototype = {
_creatingComponents: false,
_disposing: false,
_deleteCount: 0,
get_isCreatingComponents: Sys$_Application$get_isCreatingComponents,
get_isDisposing: Sys$_Application$get_isDisposing,
add_init: Sys$_Application$add_init,
remove_init: Sys$_Application$remove_init,
add_load: Sys$_Application$add_load,
remove_load: Sys$_Application$remove_load,
add_unload: Sys$_Application$add_unload,
remove_unload: Sys$_Application$remove_unload,
addComponent: Sys$_Application$addComponent,
beginCreateComponents: Sys$_Application$beginCreateComponents,
dispose: Sys$_Application$dispose,
disposeElement: Sys$_Application$disposeElement,
endCreateComponents: Sys$_Application$endCreateComponents,
findComponent: Sys$_Application$findComponent,
getComponents: Sys$_Application$getComponents,
initialize: Sys$_Application$initialize,
notifyScriptLoaded: Sys$_Application$notifyScriptLoaded,
registerDisposableObject: Sys$_Application$registerDisposableObject,
raiseLoad: Sys$_Application$raiseLoad,
removeComponent: Sys$_Application$removeComponent,
unregisterDisposableObject: Sys$_Application$unregisterDisposableObject,
_addComponentToSecondPass: Sys$_Application$_addComponentToSecondPass,
_disposeComponents: Sys$_Application$_disposeComponents,
_domReady: Sys$_Application$_domReady,
_raiseInit: Sys$_Application$_raiseInit,
_unloadHandler: Sys$_Application$_unloadHandler
}
Sys._Application.registerClass('Sys._Application', Sys.Component, Sys.IContainer);
Sys.Application = new Sys._Application();
var $find = Sys.Application.findComponent;
Sys.UI.Behavior = function Sys$UI$Behavior(element) {
///
///
var e = Function._validateParams(arguments, [
{name: "element", domElement: true}
]);
if (e) throw e;
Sys.UI.Behavior.initializeBase(this);
this._element = element;
var behaviors = element._behaviors;
if (!behaviors) {
element._behaviors = [this];
}
else {
behaviors[behaviors.length] = this;
}
}
function Sys$UI$Behavior$get_element() {
///
if (arguments.length !== 0) throw Error.parameterCount();
return this._element;
}
function Sys$UI$Behavior$get_id() {
///
if (arguments.length !== 0) throw Error.parameterCount();
var baseId = Sys.UI.Behavior.callBaseMethod(this, 'get_id');
if (baseId) return baseId;
if (!this._element || !this._element.id) return '';
return this._element.id + '$' + this.get_name();
}
function Sys$UI$Behavior$get_name() {
///
if (arguments.length !== 0) throw Error.parameterCount();
if (this._name) return this._name;
var name = Object.getTypeName(this);
var i = name.lastIndexOf('.');
if (i !== -1) name = name.substr(i + 1);
if (!this.get_isInitialized()) this._name = name;
return name;
}
function Sys$UI$Behavior$set_name(value) {
var e = Function._validateParams(arguments, [{name: "value", type: String}]);
if (e) throw e;
if ((value === '') || (value.charAt(0) === ' ') || (value.charAt(value.length - 1) === ' '))
throw Error.argument('value', Sys.Res.invalidId);
if (typeof(this._element[value]) !== 'undefined')
throw Error.invalidOperation(String.format(Sys.Res.behaviorDuplicateName, value));
if (this.get_isInitialized()) throw Error.invalidOperation(Sys.Res.cantSetNameAfterInit);
this._name = value;
}
function Sys$UI$Behavior$initialize() {
Sys.UI.Behavior.callBaseMethod(this, 'initialize');
var name = this.get_name();
if (name) this._element[name] = this;
}
function Sys$UI$Behavior$dispose() {
Sys.UI.Behavior.callBaseMethod(this, 'dispose');
var e = this._element;
if (e) {
var name = this.get_name();
if (name) {
e[name] = null;
}
var behaviors = e._behaviors;
Array.remove(behaviors, this);
if (behaviors.length === 0) {
e._behaviors = null;
}
delete this._element;
}
}
Sys.UI.Behavior.prototype = {
_name: null,
get_element: Sys$UI$Behavior$get_element,
get_id: Sys$UI$Behavior$get_id,
get_name: Sys$UI$Behavior$get_name,
set_name: Sys$UI$Behavior$set_name,
initialize: Sys$UI$Behavior$initialize,
dispose: Sys$UI$Behavior$dispose
}
Sys.UI.Behavior.registerClass('Sys.UI.Behavior', Sys.Component);
Sys.UI.Behavior.getBehaviorByName = function Sys$UI$Behavior$getBehaviorByName(element, name) {
///
///
///
///
var e = Function._validateParams(arguments, [
{name: "element", domElement: true},
{name: "name", type: String}
]);
if (e) throw e;
var b = element[name];
return (b && Sys.UI.Behavior.isInstanceOfType(b)) ? b : null;
}
Sys.UI.Behavior.getBehaviors = function Sys$UI$Behavior$getBehaviors(element) {
///
///
///
var e = Function._validateParams(arguments, [
{name: "element", domElement: true}
]);
if (e) throw e;
if (!element._behaviors) return [];
return Array.clone(element._behaviors);
}
Sys.UI.Behavior.getBehaviorsByType = function Sys$UI$Behavior$getBehaviorsByType(element, type) {
///
///
///
///
var e = Function._validateParams(arguments, [
{name: "element", domElement: true},
{name: "type", type: Type}
]);
if (e) throw e;
var behaviors = element._behaviors;
var results = [];
if (behaviors) {
for (var i = 0, l = behaviors.length; i < l; i++) {
if (type.isInstanceOfType(behaviors[i])) {
results[results.length] = behaviors[i];
}
}
}
return results;
}
Sys.UI.VisibilityMode = function Sys$UI$VisibilityMode() {
///
///
///
if (arguments.length !== 0) throw Error.parameterCount();
throw Error.notImplemented();
}
Sys.UI.VisibilityMode.prototype = {
hide: 0,
collapse: 1
}
Sys.UI.VisibilityMode.registerEnum("Sys.UI.VisibilityMode");
Sys.UI.Control = function Sys$UI$Control(element) {
///
///
var e = Function._validateParams(arguments, [
{name: "element", domElement: true}
]);
if (e) throw e;
if (typeof(element.control) !== 'undefined') throw Error.invalidOperation(Sys.Res.controlAlreadyDefined);
Sys.UI.Control.initializeBase(this);
this._element = element;
element.control = this;
var role = this.get_role();
if (role) {
element.setAttribute("role", role);
}
}
function Sys$UI$Control$get_element() {
///
if (arguments.length !== 0) throw Error.parameterCount();
return this._element;
}
function Sys$UI$Control$get_id() {
///
if (arguments.length !== 0) throw Error.parameterCount();
if (!this._element) return '';
return this._element.id;
}
function Sys$UI$Control$set_id(value) {
var e = Function._validateParams(arguments, [{name: "value", type: String}]);
if (e) throw e;
throw Error.invalidOperation(Sys.Res.cantSetId);
}
function Sys$UI$Control$get_parent() {
///
if (arguments.length !== 0) throw Error.parameterCount();
if (this._parent) return this._parent;
if (!this._element) return null;
var parentElement = this._element.parentNode;
while (parentElement) {
if (parentElement.control) {
return parentElement.control;
}
parentElement = parentElement.parentNode;
}
return null;
}
function Sys$UI$Control$set_parent(value) {
var e = Function._validateParams(arguments, [{name: "value", type: Sys.UI.Control}]);
if (e) throw e;
if (!this._element) throw Error.invalidOperation(Sys.Res.cantBeCalledAfterDispose);
var parents = [this];
var current = value;
while (current) {
if (Array.contains(parents, current)) throw Error.invalidOperation(Sys.Res.circularParentChain);
parents[parents.length] = current;
current = current.get_parent();
}
this._parent = value;
}
function Sys$UI$Control$get_role() {
///
if (arguments.length !== 0) throw Error.parameterCount();
return null;
}
function Sys$UI$Control$get_visibilityMode() {
///
if (arguments.length !== 0) throw Error.parameterCount();
if (!this._element) throw Error.invalidOperation(Sys.Res.cantBeCalledAfterDispose);
return Sys.UI.DomElement.getVisibilityMode(this._element);
}
function Sys$UI$Control$set_visibilityMode(value) {
var e = Function._validateParams(arguments, [{name: "value", type: Sys.UI.VisibilityMode}]);
if (e) throw e;
if (!this._element) throw Error.invalidOperation(Sys.Res.cantBeCalledAfterDispose);
Sys.UI.DomElement.setVisibilityMode(this._element, value);
}
function Sys$UI$Control$get_visible() {
///
if (arguments.length !== 0) throw Error.parameterCount();
if (!this._element) throw Error.invalidOperation(Sys.Res.cantBeCalledAfterDispose);
return Sys.UI.DomElement.getVisible(this._element);
}
function Sys$UI$Control$set_visible(value) {
var e = Function._validateParams(arguments, [{name: "value", type: Boolean}]);
if (e) throw e;
if (!this._element) throw Error.invalidOperation(Sys.Res.cantBeCalledAfterDispose);
Sys.UI.DomElement.setVisible(this._element, value)
}
function Sys$UI$Control$addCssClass(className) {
///
///
var e = Function._validateParams(arguments, [
{name: "className", type: String}
]);
if (e) throw e;
if (!this._element) throw Error.invalidOperation(Sys.Res.cantBeCalledAfterDispose);
Sys.UI.DomElement.addCssClass(this._element, className);
}
function Sys$UI$Control$dispose() {
Sys.UI.Control.callBaseMethod(this, 'dispose');
if (this._element) {
this._element.control = null;
delete this._element;
}
if (this._parent) delete this._parent;
}
function Sys$UI$Control$onBubbleEvent(source, args) {
///
///
///
///
var e = Function._validateParams(arguments, [
{name: "source"},
{name: "args", type: Sys.EventArgs}
]);
if (e) throw e;
return false;
}
function Sys$UI$Control$raiseBubbleEvent(source, args) {
///
///
///
var e = Function._validateParams(arguments, [
{name: "source"},
{name: "args", type: Sys.EventArgs}
]);
if (e) throw e;
this._raiseBubbleEvent(source, args);
}
function Sys$UI$Control$_raiseBubbleEvent(source, args) {
var currentTarget = this.get_parent();
while (currentTarget) {
if (currentTarget.onBubbleEvent(source, args)) {
return;
}
currentTarget = currentTarget.get_parent();
}
}
function Sys$UI$Control$removeCssClass(className) {
///
///
var e = Function._validateParams(arguments, [
{name: "className", type: String}
]);
if (e) throw e;
if (!this._element) throw Error.invalidOperation(Sys.Res.cantBeCalledAfterDispose);
Sys.UI.DomElement.removeCssClass(this._element, className);
}
function Sys$UI$Control$toggleCssClass(className) {
///
///
var e = Function._validateParams(arguments, [
{name: "className", type: String}
]);
if (e) throw e;
if (!this._element) throw Error.invalidOperation(Sys.Res.cantBeCalledAfterDispose);
Sys.UI.DomElement.toggleCssClass(this._element, className);
}
Sys.UI.Control.prototype = {
_parent: null,
_visibilityMode: Sys.UI.VisibilityMode.hide,
get_element: Sys$UI$Control$get_element,
get_id: Sys$UI$Control$get_id,
set_id: Sys$UI$Control$set_id,
get_parent: Sys$UI$Control$get_parent,
set_parent: Sys$UI$Control$set_parent,
get_role: Sys$UI$Control$get_role,
get_visibilityMode: Sys$UI$Control$get_visibilityMode,
set_visibilityMode: Sys$UI$Control$set_visibilityMode,
get_visible: Sys$UI$Control$get_visible,
set_visible: Sys$UI$Control$set_visible,
addCssClass: Sys$UI$Control$addCssClass,
dispose: Sys$UI$Control$dispose,
onBubbleEvent: Sys$UI$Control$onBubbleEvent,
raiseBubbleEvent: Sys$UI$Control$raiseBubbleEvent,
_raiseBubbleEvent: Sys$UI$Control$_raiseBubbleEvent,
removeCssClass: Sys$UI$Control$removeCssClass,
toggleCssClass: Sys$UI$Control$toggleCssClass
}
Sys.UI.Control.registerClass('Sys.UI.Control', Sys.Component);