⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 panel.js

📁 数据库系统教材中附录的课程设计accomodation宿舍管理系统源码
💻 JS
📖 第 1 页 / 共 3 页
字号:
            this.on('render', this.doAutoLoad, this, {delay:10});        }    },    // private    createElement : function(name, pnode){        if(this[name]){            pnode.appendChild(this[name].dom);            return;        }        if(name === 'bwrap' || this.elements.indexOf(name) != -1){            if(this[name+'Cfg']){                this[name] = Ext.fly(pnode).createChild(this[name+'Cfg']);            }else{                var el = document.createElement('div');                el.className = this[name+'Cls'];                this[name] = Ext.get(pnode.appendChild(el));            }        }    },    // private    onRender : function(ct, position){        Ext.Panel.superclass.onRender.call(this, ct, position);        this.createClasses();        if(this.el){ // existing markup            this.el.addClass(this.baseCls);            this.header = this.el.down('.'+this.headerCls);            this.bwrap = this.el.down('.'+this.bwrapCls);            var cp = this.bwrap ? this.bwrap : this.el;            this.tbar = cp.down('.'+this.tbarCls);            this.body = cp.down('.'+this.bodyCls);            this.bbar = cp.down('.'+this.bbarCls);            this.footer = cp.down('.'+this.footerCls);            this.fromMarkup = true;        }else{            this.el = ct.createChild({                id: this.id,                cls: this.baseCls            }, position);        }        var el = this.el, d = el.dom;        if(this.cls){            this.el.addClass(this.cls);        }        if(this.buttons){            this.elements += ',footer';        }        // This block allows for maximum flexibility and performance when using existing markup        // framing requires special markup        if(this.frame){            el.insertHtml('afterBegin', String.format(Ext.Element.boxMarkup, this.baseCls));            this.createElement('header', d.firstChild.firstChild.firstChild);            this.createElement('bwrap', d);            // append the mid and bottom frame to the bwrap            var bw = this.bwrap.dom;            var ml = d.childNodes[1], bl = d.childNodes[2];            bw.appendChild(ml);            bw.appendChild(bl);            var mc = bw.firstChild.firstChild.firstChild;            this.createElement('tbar', mc);            this.createElement('body', mc);            this.createElement('bbar', mc);            this.createElement('footer', bw.lastChild.firstChild.firstChild);            if(!this.footer){                this.bwrap.dom.lastChild.className += ' x-panel-nofooter';            }        }else{            this.createElement('header', d);            this.createElement('bwrap', d);            // append the mid and bottom frame to the bwrap            var bw = this.bwrap.dom;            this.createElement('tbar', bw);            this.createElement('body', bw);            this.createElement('bbar', bw);            this.createElement('footer', bw);            if(!this.header){                this.body.addClass(this.bodyCls + '-noheader');                if(this.tbar){                    this.tbar.addClass(this.tbarCls + '-noheader');                }            }        }        if(this.border === false){            this.el.addClass(this.baseCls + '-noborder');            this.body.addClass(this.bodyCls + '-noborder');            if(this.header){                this.header.addClass(this.headerCls + '-noborder');            }            if(this.footer){                this.footer.addClass(this.footerCls + '-noborder');            }            if(this.tbar){                this.tbar.addClass(this.tbarCls + '-noborder');            }            if(this.bbar){                this.bbar.addClass(this.bbarCls + '-noborder');            }        }        if(this.bodyBorder === false){           this.body.addClass(this.bodyCls + '-noborder');        }        if(this.bodyStyle){           this.body.applyStyles(this.bodyStyle);        }        this.bwrap.enableDisplayMode('block');        if(this.header){            this.header.unselectable();            // for tools, we need to wrap any existing header markup            if(this.headerAsText){                this.header.dom.innerHTML =                    '<span class="' + this.headerTextCls + '">'+this.header.dom.innerHTML+'</span>';                if(this.iconCls){                    this.setIconClass(this.iconCls);                }            }        }        if(this.floating){            this.makeFloating(this.floating);        }                if(this.collapsible){            this.tools = this.tools ? this.tools.slice(0) : [];            if(!this.hideCollapseTool){                this.tools[this.collapseFirst?'unshift':'push']({                    id: 'toggle',                    handler : this.toggleCollapse,                    scope: this                });            }            if(this.titleCollapse && this.header){                this.header.on('click', this.toggleCollapse, this);                this.header.setStyle('cursor', 'pointer');            }        }        if(this.tools){            var ts = this.tools;            this.tools = {};            this.addTool.apply(this, ts);        }else{            this.tools = {};        }        if(this.buttons && this.buttons.length > 0){            // tables are required to maintain order and for correct IE layout            var tb = this.footer.createChild({cls:'x-panel-btns-ct', cn: {                cls:"x-panel-btns x-panel-btns-"+this.buttonAlign,                html:'<table cellspacing="0"><tbody><tr></tr></tbody></table><div class="x-clear"></div>'            }}, null, true);            var tr = tb.getElementsByTagName('tr')[0];            for(var i = 0, len = this.buttons.length; i < len; i++) {                var b = this.buttons[i];                var td = document.createElement('td');                td.className = 'x-panel-btn-td';                b.render(tr.appendChild(td));            }        }        if(this.tbar && this.topToolbar){            if(this.topToolbar instanceof Array){                this.topToolbar = new Ext.Toolbar(this.topToolbar);            }            this.topToolbar.render(this.tbar);        }        if(this.bbar && this.bottomToolbar){            if(this.bottomToolbar instanceof Array){                this.bottomToolbar = new Ext.Toolbar(this.bottomToolbar);            }            this.bottomToolbar.render(this.bbar);        }    },    /**     * Sets the CSS class that provides the icon image for this panel.  This method will replace any existing     * icon class if one has already been set.     * @param {String} cls The new CSS class name     */    setIconClass : function(cls){        var old = this.iconCls;        this.iconCls = cls;        if(this.rendered){            if(this.frame){                this.header.addClass('x-panel-icon');                this.header.replaceClass(old, this.iconCls);            }else{                var hd = this.header.dom;                var img = hd.firstChild && String(hd.firstChild.tagName).toLowerCase() == 'img' ? hd.firstChild : null;                if(img){                    Ext.fly(img).replaceClass(old, this.iconCls);                }else{                    Ext.DomHelper.insertBefore(hd.firstChild, {                        tag:'img', src: Ext.BLANK_IMAGE_URL, cls:'x-panel-inline-icon '+this.iconCls                    });                 }            }        }    },    // private    makeFloating : function(cfg){        this.floating = true;        this.el = new Ext.Layer(            typeof cfg == 'object' ? cfg : {                shadow: this.shadow !== undefined ? this.shadow : 'sides',                constrain:false,                shim: this.shim === false ? false : undefined            }, this.el        );    },    /**     * Returns the toolbar from the top (tbar) section of the panel.     * @return {Ext.Toolbar} The toolbar     */    getTopToolbar : function(){        return this.topToolbar;    },    /**     * Returns the toolbar from the bottom (bbar) section of the panel.     * @return {Ext.Toolbar} The toolbar     */    getBottomToolbar : function(){        return this.bottomToolbar;      },    /**     * Adds a button to this panel.  Note that this method must be called prior to rendering.  The preferred     * approach is to add buttons via the {@link #buttons} config.     * @param {String/Object} config A valid {@link Ext.Button} config.  A string will become the text for a default     * button config, an object will be treated as a button config object.     * @param {Function} handler The function to be called on button {@link Ext.Button#click}     * @param {Object} scope The scope to use for the button handler function     * @return {Ext.Button} The button that was added     */    addButton : function(config, handler, scope){        var bc = {            handler: handler,            scope: scope,            minWidth: this.minButtonWidth,            hideParent:true        };        if(typeof config == "string"){            bc.text = config;        }else{            Ext.apply(bc, config);        }        var btn = new Ext.Button(bc);        if(!this.buttons){            this.buttons = [];        }        this.buttons.push(btn);        return btn;    },    // private    addTool : function(){        if(!this[this.toolTarget]) { // no where to render tools!            return;        }        if(!this.toolTemplate){            // initialize the global tool template on first use            var tt = new Ext.Template(                 '<div class="x-tool x-tool-{id}">&#160</div>'            );            tt.disableFormats = true;            tt.compile();            Ext.Panel.prototype.toolTemplate = tt;        }        for(var i = 0, a = arguments, len = a.length; i < len; i++) {            var tc = a[i], overCls = 'x-tool-'+tc.id+'-over';            var t = this.toolTemplate.insertFirst(this[this.toolTarget], tc, true);            this.tools[tc.id] = t;            t.enableDisplayMode('block');            t.on('click', this.createToolHandler(t, tc, overCls, this));            if(tc.on){                t.on(tc.on);            }            if(tc.hidden){                t.hide();            }            t.addClassOnOver(overCls);        }    },    onShow : function(){        if(this.floating){            return this.el.show();        }        Ext.Panel.superclass.onShow.call(this);    },    onHide : function(){        if(this.floating){            return this.el.hide();        }        Ext.Panel.superclass.onHide.call(this);    },    // private    createToolHandler : function(t, tc, overCls, panel){        return function(e){            t.removeClass(overCls);            e.stopEvent();            if(tc.handler){                tc.handler.call(tc.scope || t, e, t, panel);            }        };    },    // private    afterRender : function(){        if(this.fromMarkup && this.height === undefined && !this.autoHeight){            this.height = this.el.getHeight();        }        if(this.floating && !this.hidden && !this.initHidden){            this.el.show();        }        if(this.title){            this.setTitle(this.title);        }        if(this.autoScroll){            this.body.dom.style.overflow = 'auto';        }        if(this.html){            this.body.update(typeof this.html == 'object' ?                             Ext.DomHelper.markup(this.html) :                             this.html);            delete this.html;        }        if(this.contentEl){            var ce = Ext.getDom(this.contentEl);            Ext.fly(ce).removeClass(['x-hidden', 'x-hide-display']);            this.body.dom.appendChild(ce);        }        if(this.collapsed){            this.collapsed = false;            this.collapse(false);        }        Ext.Panel.superclass.afterRender.call(this); // do sizing calcs last        this.initEvents();    },    // private    getKeyMap : function(){        if(!this.keyMap){            this.keyMap = new Ext.KeyMap(this.el, this.keys);        }        return this.keyMap;    },    // private    initEvents : function(){        if(this.keys){            this.getKeyMap();        }        if(this.draggable){            this.initDraggable();        }

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -