}
};
})();/*
+ * RooJS Library
+ * Copyright(c) 2007-2017, Roo J Solutions Ltd
+ *
+ * Licence LGPL
+ *
+ */
+
+/**
+ * @class Roo.Document
+ * @extends Roo.util.Observable
+ * This is a convience class to wrap up the main document loading code.. , rather than adding Roo.onReady(......)
+ *
+ * @param {Object} config the methods and properties of the 'base' class for the application.
+ *
+ * Generic Page handler - implement this to start your app..
+ *
+ * eg.
+ * MyProject = new Roo.Document({
+ events : {
+ 'load' : true // your events..
+ },
+ listeners : {
+ 'ready' : function() {
+ // fired on Roo.onReady()
+ }
+ }
+ *
+ */
+Roo.Document = function(cfg) {
+
+ this.addEvents({
+ 'ready' : true
+ });
+ Roo.util.Observable.call(this,cfg);
+
+ var _this = this;
+
+ Roo.onReady(function() {
+ _this.fireEvent('ready');
+ },null,false);
+
+
+}
+
+Roo.extend(Roo.Document, Roo.util.Observable, {});/*
* Based on:
* Ext JS Library 1.1.1
* Copyright(c) 2006-2007, Ext JS, LLC.
var p = Roo.fly(this.dom.parentNode, '_internal');
return p ? p.findParent(simpleSelector, maxDepth, returnEl) : null;
},
+
+ /**
+ * Looks at the scrollable parent element
+ */
+ findScrollableParent : function(){
+
+ var overflowRegex = /(auto|scroll)/;
+
+ if(this.getStyle('position') === 'fixed'){
+ return Roo.isIOS ? Roo.get(document.body) : Roo.get(document.documentElement);
+ }
+
+ var excludeStaticParent = this.getStyle('position') === "absolute";
+
+ for (var parent = this; (parent = Roo.get(parent.dom.parentNode));){
+
+ if (excludeStaticParent && parent.getStyle('position') === "static") {
+ continue;
+ }
+
+ if (
+ parent.dom.nodeName.toLowerCase() == 'body' ||
+ overflowRegex.test(parent.getStyle('overflow') + parent.getStyle('overflow-x') + parent.getStyle('overflow-y'))
+ ){
+ return parent;
+ }
+ }
+
+ return Roo.isIOS ? Roo.get(document.body) : Roo.get(document.documentElement);
+ },
/**
* Walks up the dom looking for a parent node that matches the passed simple selector (e.g. div.some-class or span:first-child).
break;
}
- if (typeof(Roo.bootstrap.Body) != 'undefined') {
+ if (typeof(Roo.bootstrap.Body) != 'undefined' ) {
this.parent = { el : new Roo.bootstrap.Body() };
Roo.debug && Roo.log("setting el to doc body");
// fall through
default:
el = Roo.get(ename);
+ if (typeof(Roo.bootstrap) != 'undefined' && tree['|xns'] == 'Roo.bootstrap') {
+ this.parent = { el : true};
+ }
+
break;
}
return;
}
}
+
Roo.debug && Roo.log("EL:");
Roo.debug && Roo.log(el);
Roo.debug && Roo.log("this.parent.el:");
Roo.debug && Roo.log("no parent - creating one");
el = el ? Roo.get(el) : false;
-
- // it's a top level one..
- this.parent = {
- el : new Roo.BorderLayout(el || document.body, {
+ if (typeof(Roo.BorderLayout) == 'undefined' ) {
- center: {
- titlebar: false,
- autoScroll:false,
- closeOnTab: true,
- tabPosition: 'top',
- //resizeTabs: true,
- alwaysShowTabs: el && hp? false : true,
- hideTabs: el || !hp ? true : false,
- minTabWidth: 140
- }
- })
- };
+ this.parent = {
+ el : new Roo.bootstrap.layout.Border({
+ el: el || document.body,
+
+ center: {
+ titlebar: false,
+ autoScroll:false,
+ closeOnTab: true,
+ tabPosition: 'top',
+ //resizeTabs: true,
+ alwaysShowTabs: false,
+ hideTabs: true,
+ minTabWidth: 140,
+ overflow: 'visible'
+ }
+ })
+ };
+ } else {
+
+ // it's a top level one..
+ this.parent = {
+ el : new Roo.BorderLayout(el || document.body, {
+ center: {
+ titlebar: false,
+ autoScroll:false,
+ closeOnTab: true,
+ tabPosition: 'top',
+ //resizeTabs: true,
+ alwaysShowTabs: el && hp? false : true,
+ hideTabs: el || !hp ? true : false,
+ minTabWidth: 140
+ }
+ })
+ };
+ }
}
if (!this.parent.el) {
var is_body = false;
if (this.parent.el === true) {
// bootstrap... - body..
+ if (el) {
+ tree.el = el;
+ }
this.parent.el = Roo.factory(tree);
is_body = true;
}
" of " + total +
(m.name ? (' - ' + m.name) : '');
Roo.debug && Roo.log(msg);
- if (!this.hideProgress && Roo.MessageBox) {
+ if (!_this.hideProgress && Roo.MessageBox) {
Roo.MessageBox.updateProgress( (total - mods.length)/total, msg );
}