Commit inicial Ventas Productivo
This commit is contained in:
@@ -0,0 +1,83 @@
|
||||
Type.registerNamespace("Sys.Extended.UI.HtmlEditor.Popups");
|
||||
|
||||
Sys.Extended.UI.HtmlEditor.Popups.AttachedPopup = function(element) {
|
||||
Sys.Extended.UI.HtmlEditor.Popups.AttachedPopup.initializeBase(this, [element]);
|
||||
|
||||
this._relatedElement = null;
|
||||
}
|
||||
|
||||
Sys.Extended.UI.HtmlEditor.Popups.AttachedPopup.prototype = {
|
||||
|
||||
get_relatedElement: function() {
|
||||
return this._relatedElement;
|
||||
},
|
||||
|
||||
set_relatedElement: function(value) {
|
||||
this._relatedElement = value;
|
||||
},
|
||||
|
||||
open: function(callback) {
|
||||
if(this._relatedElement != null) {
|
||||
var popup = this;
|
||||
|
||||
if(!this.checkCorrectLoaded(function() { popup.open(callback); }))
|
||||
return;
|
||||
|
||||
var location = $common.getLocation(this._relatedElement),
|
||||
x = location.x,
|
||||
y = location.y + this._relatedElement.offsetHeight;
|
||||
|
||||
var element = this.get_element().parentNode;
|
||||
while(element && element.tagName && element.tagName.toUpperCase() != "BODY") {
|
||||
var position = Sys.Extended.UI.HtmlEditor.getStyle(element, "position");
|
||||
|
||||
if(position == "absolute" || position == "fixed") {
|
||||
var top = parseInt(Sys.Extended.UI.HtmlEditor.getStyle(element, "top")),
|
||||
left = parseInt(Sys.Extended.UI.HtmlEditor.getStyle(element, "left"));
|
||||
|
||||
if(!isNaN(top) && !isNaN(left)) {
|
||||
x -= left;
|
||||
y -= top;
|
||||
}
|
||||
break;
|
||||
} else if(position == "relative") {
|
||||
var relativeLocation = $common.getLocation(element);
|
||||
|
||||
x -= relativeLocation.x;
|
||||
y -= relativeLocation.y;
|
||||
}
|
||||
element = element.parentNode;
|
||||
}
|
||||
|
||||
var viewportElement = Sys.Extended.UI.HtmlEditor.getClientViewportElement(this._iframe),
|
||||
theVisibleWidth = viewportElement.clientWidth + viewportElement.scrollLeft,
|
||||
theVisibleHeight = viewportElement.clientHeight + viewportElement.scrollTop;
|
||||
|
||||
if(y < viewportElement.scrollTop)
|
||||
y = viewportElement.scrollTop;
|
||||
if(x < viewportElement.scrollLeft)
|
||||
x = viewportElement.scrollLeft;
|
||||
|
||||
if(y + this._iframe.offsetHeight > theVisibleHeight)
|
||||
y -= y + this._iframe.offsetHeight - theVisibleHeight;
|
||||
if(x + this._iframe.offsetWidth > theVisibleWidth)
|
||||
x -= x + this._iframe.offsetWidth - theVisibleWidth;
|
||||
|
||||
Sys.Extended.UI.HtmlEditor.Popups.AttachedPopup.callBaseMethod(this, "open", [callback, y, x]);
|
||||
}
|
||||
},
|
||||
|
||||
close: function(callback) {
|
||||
Sys.Extended.UI.HtmlEditor.Popups.AttachedPopup.callBaseMethod(this, "close", [callback]);
|
||||
},
|
||||
|
||||
initialize: function() {
|
||||
Sys.Extended.UI.HtmlEditor.Popups.AttachedPopup.callBaseMethod(this, "initialize");
|
||||
},
|
||||
|
||||
dispose: function() {
|
||||
Sys.Extended.UI.HtmlEditor.Popups.AttachedPopup.callBaseMethod(this, "dispose");
|
||||
}
|
||||
}
|
||||
|
||||
Sys.Extended.UI.HtmlEditor.Popups.AttachedPopup.registerClass("Sys.Extended.UI.HtmlEditor.Popups.AttachedPopup", Sys.Extended.UI.HtmlEditor.Popups.Popup);
|
||||
Reference in New Issue
Block a user