Loading template/index.html +1 −2 Original line number Diff line number Diff line Loading @@ -106,9 +106,8 @@ </script> <script type="text/javascript" src="output/tree.js"></script> <script type="text/javascript" src="js/functions.js"></script> <script type="text/javascript" src="js/App.js"></script> <script type="text/javascript" src="js/ClassLoader.js"></script> <script type="text/javascript" src="js/History.js"></script> <script type="text/javascript" src="js/PageHeader.js"></script> <script type="text/javascript" src="js/ClassTree.js"></script> Loading template/js/ClassLoader.js 0 → 100644 +81 −0 Original line number Diff line number Diff line /** * Manages the loading of class documentation. */ Ext.define("Docs.ClassLoader", { singleton: true, cache: {}, /** * Loads class. * * @param {String} cls name of the class to load * @param {Boolean} noHistory true to disable adding entry to browser history */ load: function(cls, noHistory) { var member, hashIdx = cls.indexOf('#'); if (hashIdx > 0) { member = cls.substr(hashIdx + 1); cls = cls.substr(0, hashIdx); } if (!noHistory) { Docs.History.push(cls); } Docs.App.setClassMode(); var docTabPanel = Ext.getCmp('docTabPanel'); if (docTabPanel) { Ext.getCmp('docTabPanel').setActiveTab(0); } if (this.cache[cls]) { this.showClass(this.cache[cls], member); } else { if (docTabPanel) { Ext.getCmp('doc-overview').setLoading(true); } Ext.Ajax.request({ url: Docs.App.getBaseUrl() + '/output/' + cls + '.json', success: function(response, opts) { var json = Ext.JSON.decode(response.responseText); this.cache[cls] = json; this.showClass(json, member); }, failure : function(response, opts) { console.log('Fail'); }, scope: this }); } }, showClass: function(cls, anchor) { var docTabPanel = Ext.getCmp('docTabPanel'); if (!docTabPanel) { Ext.create('Docs.ClassPanel'); } Ext.get('docTabPanel').show(); var pageContent = Ext.get('pageContent'); if (pageContent) { pageContent.setVisibilityMode(Ext.core.Element.DISPLAY).hide(); } Docs.PageHeader.load(cls); var docOverviewTab = Ext.getCmp('doc-overview'); docOverviewTab.load(cls); docOverviewTab.setLoading(false); if (anchor) { Ext.getCmp('doc-overview').scrollToEl("a[name=" + anchor + "]"); } else { var docContent = Ext.get(Ext.query('#doc-overview .x-panel-body')[0]); docContent.scrollTo('top', 0); } } }); template/js/ClassTree.js +1 −1 Original line number Diff line number Diff line Loading @@ -18,7 +18,7 @@ Ext.define('Docs.ClassTree', { var clsName = node.raw ? node.raw.clsName : node.data.clsName; if (clsName) { getDocClass(clsName); Docs.ClassLoader.load(clsName); } else if (!node.isLeaf()) { if (node.isExpanded()) { node.collapse(false); Loading template/js/History.js +2 −2 Original line number Diff line number Diff line Loading @@ -14,7 +14,7 @@ Ext.define("Docs.History", { window.addEventListener('popstate', function(e) { e.preventDefault(); if (e.state && e.state.docClass) { getDocClass(e.state.docClass, true); Docs.ClassLoader.load(e.state.docClass, true); } return false; }, false); Loading @@ -22,7 +22,7 @@ Ext.define("Docs.History", { var matches = document.location.hash.match(/#\/api\/(.*)/); if (matches) { var className = matches[1]; getDocClass(className, true); Docs.ClassLoader.load(className, true); } }, Loading template/js/OverviewPanel.js +1 −1 Original line number Diff line number Diff line Loading @@ -25,7 +25,7 @@ Ext.define('Docs.OverviewPanel', { }); cmp.el.addListener('click', function(cmp, el) { getDocClass(el.rel); Docs.ClassLoader.load(el.rel); }, this, { preventDefault: true, delegate: '.docClass' Loading Loading
template/index.html +1 −2 Original line number Diff line number Diff line Loading @@ -106,9 +106,8 @@ </script> <script type="text/javascript" src="output/tree.js"></script> <script type="text/javascript" src="js/functions.js"></script> <script type="text/javascript" src="js/App.js"></script> <script type="text/javascript" src="js/ClassLoader.js"></script> <script type="text/javascript" src="js/History.js"></script> <script type="text/javascript" src="js/PageHeader.js"></script> <script type="text/javascript" src="js/ClassTree.js"></script> Loading
template/js/ClassLoader.js 0 → 100644 +81 −0 Original line number Diff line number Diff line /** * Manages the loading of class documentation. */ Ext.define("Docs.ClassLoader", { singleton: true, cache: {}, /** * Loads class. * * @param {String} cls name of the class to load * @param {Boolean} noHistory true to disable adding entry to browser history */ load: function(cls, noHistory) { var member, hashIdx = cls.indexOf('#'); if (hashIdx > 0) { member = cls.substr(hashIdx + 1); cls = cls.substr(0, hashIdx); } if (!noHistory) { Docs.History.push(cls); } Docs.App.setClassMode(); var docTabPanel = Ext.getCmp('docTabPanel'); if (docTabPanel) { Ext.getCmp('docTabPanel').setActiveTab(0); } if (this.cache[cls]) { this.showClass(this.cache[cls], member); } else { if (docTabPanel) { Ext.getCmp('doc-overview').setLoading(true); } Ext.Ajax.request({ url: Docs.App.getBaseUrl() + '/output/' + cls + '.json', success: function(response, opts) { var json = Ext.JSON.decode(response.responseText); this.cache[cls] = json; this.showClass(json, member); }, failure : function(response, opts) { console.log('Fail'); }, scope: this }); } }, showClass: function(cls, anchor) { var docTabPanel = Ext.getCmp('docTabPanel'); if (!docTabPanel) { Ext.create('Docs.ClassPanel'); } Ext.get('docTabPanel').show(); var pageContent = Ext.get('pageContent'); if (pageContent) { pageContent.setVisibilityMode(Ext.core.Element.DISPLAY).hide(); } Docs.PageHeader.load(cls); var docOverviewTab = Ext.getCmp('doc-overview'); docOverviewTab.load(cls); docOverviewTab.setLoading(false); if (anchor) { Ext.getCmp('doc-overview').scrollToEl("a[name=" + anchor + "]"); } else { var docContent = Ext.get(Ext.query('#doc-overview .x-panel-body')[0]); docContent.scrollTo('top', 0); } } });
template/js/ClassTree.js +1 −1 Original line number Diff line number Diff line Loading @@ -18,7 +18,7 @@ Ext.define('Docs.ClassTree', { var clsName = node.raw ? node.raw.clsName : node.data.clsName; if (clsName) { getDocClass(clsName); Docs.ClassLoader.load(clsName); } else if (!node.isLeaf()) { if (node.isExpanded()) { node.collapse(false); Loading
template/js/History.js +2 −2 Original line number Diff line number Diff line Loading @@ -14,7 +14,7 @@ Ext.define("Docs.History", { window.addEventListener('popstate', function(e) { e.preventDefault(); if (e.state && e.state.docClass) { getDocClass(e.state.docClass, true); Docs.ClassLoader.load(e.state.docClass, true); } return false; }, false); Loading @@ -22,7 +22,7 @@ Ext.define("Docs.History", { var matches = document.location.hash.match(/#\/api\/(.*)/); if (matches) { var className = matches[1]; getDocClass(className, true); Docs.ClassLoader.load(className, true); } }, Loading
template/js/OverviewPanel.js +1 −1 Original line number Diff line number Diff line Loading @@ -25,7 +25,7 @@ Ext.define('Docs.OverviewPanel', { }); cmp.el.addListener('click', function(cmp, el) { getDocClass(el.rel); Docs.ClassLoader.load(el.rel); }, this, { preventDefault: true, delegate: '.docClass' Loading