ext.grid.grid.js

来自「anewssystem新闻发布系统集成使用了spring hibernate f」· JavaScript 代码 · 共 503 行 · 第 1/2 页

JS
503
字号
Ext.grid.Grid = function (container, config) {
    // 初始化容器
    this.container = Ext.get(container);
    this.container.update("");
    this.container.setStyle("overflow", "hidden");
    this.container.addClass("x-grid-container");

    this.id = this.container.id;

    Ext.apply(this, config);
    // 检测并确认配置的快捷方式
    if(this.ds) {
        this.dataSource = this.ds;
        delete this.ds;
    }
    if(this.cm) {
        this.colModel = this.cm;
        delete this.cm;
    }
    if(this.sm) {
        this.selModel = this.sm;
        delete this.sm;
    }

    if(this.width) {
        this.container.setWidth(this.width);
    }

    if(this.height) {
        this.container.setHeight(this.height);
    }
    /** @private */
    this.addEvents({
        // raw events
        /**
         * @event click
         * The raw click event for the entire grid.
         * @param {Ext.EventObject} e
         */
        "click":true,
        /**
         * @event dblclick
         * The raw dblclick event for the entire grid.
         * @param {Ext.EventObject} e
         */
        "dblclick":true,
        /**
         * @event contextmenu
         * The raw contextmenu event for the entire grid.
         * @param {Ext.EventObject} e
         */
        "contextmenu":true,
        /**
         * @event mousedown
         * The raw mousedown event for the entire grid.
         * @param {Ext.EventObject} e
         */
        "mousedown":true,
        /**
         * @event mouseup
         * The raw mouseup event for the entire grid.
         * @param {Ext.EventObject} e
         */
        "mouseup":true,
        /**
         * @event mouseover
         * The raw mouseover event for the entire grid.
         * @param {Ext.EventObject} e
         */
        "mouseover":true,
        /**
         * @event mouseout
         * The raw mouseout event for the entire grid.
         * @param {Ext.EventObject} e
         */
        "mouseout":true,
        /**
         * @event keypress
         * The raw keypress event for the entire grid.
         * @param {Ext.EventObject} e
         */
        "keypress":true,
        /**
         * @event keydown
         * The raw keydown event for the entire grid.
         * @param {Ext.EventObject} e
         */
        "keydown":true,

        // custom events

        /**
         * @event cellclick
         * Fires when a cell is clicked
         * @param {Grid} this
         * @param {Number} rowIndex
         * @param {Number} columnIndex
         * @param {Ext.EventObject} e
         */
        "cellclick":true,
        /**
         * @event celldblclick
         * Fires when a cell is double clicked
         * @param {Grid} this
         * @param {Number} rowIndex
         * @param {Number} columnIndex
         * @param {Ext.EventObject} e
         */
        "celldblclick":true,
        /**
         * @event rowclick
         * Fires when a row is clicked
         * @param {Grid} this
         * @param {Number} rowIndex
         * @param {Ext.EventObject} e
         */
        "rowclick":true,
        /**
         * @event rowdblclick
         * Fires when a row is double clicked
         * @param {Grid} this
         * @param {Number} rowIndex
         * @param {Ext.EventObject} e
         */
        "rowdblclick":true,
        /**
         * @event headerclick
         * Fires when a header is clicked
         * @param {Grid} this
         * @param {Number} columnIndex
         * @param {Ext.EventObject} e
         */
        "headerclick":true,
        /**
         * @event headerdblclick
         * Fires when a header cell is double clicked
         * @param {Grid} this
         * @param {Number} columnIndex
         * @param {Ext.EventObject} e
         */
        "headerdblclick":true,
        /**
         * @event rowcontextmenu
         * Fires when a row is right clicked
         * @param {Grid} this
         * @param {Number} rowIndex
         * @param {Ext.EventObject} e
         */
        "rowcontextmenu":true,
        /**
         * @event cellcontextmenu
         * Fires when a cell is right clicked
         * @param {Grid} this
         * @param {Number} rowIndex
         * @param {Number} cellIndex
         * @param {Ext.EventObject} e
         */
        "cellcontextmenu":true,
        /**
         * @event headercontextmenu
         * Fires when a header is right clicked
         * @param {Grid} this
         * @param {Number} columnIndex
         * @param {Ext.EventObject} e
         */
        "headercontextmenu":true,
        /**
         * @event bodyscroll
         * Fires when the body element is scrolled
         * @param {Number} scrollLeft
         * @param {Number} scrollTop
         */
        "bodyscroll":true,
        /**
         * @event columnresize
         * Fires when the user resizes a column
         * @param {Number} columnIndex
         * @param {Number} newSize
         */
        "columnresize":true,
        /**
         * @event columnmove
         * Fires when the user moves a column
         * @param {Number} oldIndex
         * @param {Number} newIndex
         */
        "columnmove":true,
        /**
         * @event startdrag
         * Fires when row(s) start being dragged
         * @param {Grid} this
         * @param {Ext.GridDD} dd The drag drop object
         * @param {event} e The raw browser event
         */
        "startdrag":true,
        /**
         * @event enddrag
         * Fires when a drag operation is complete
         * @param {Grid} this
         * @param {Ext.GridDD} dd The drag drop object
         * @param {event} e The raw browser event
         */
        "enddrag":true,
        /**
         * @event dragdrop
         * Fires when dragged row(s) are dropped on a valid DD target
         * @param {Grid} this
         * @param {Ext.GridDD} dd The drag drop object
         * @param {String} targetId The target drag drop object
         * @param {event} e The raw browser event
         */
        "dragdrop":true,
        /**
         * @event dragover
         * Fires while row(s) are being dragged. "targetId" is the id of the Yahoo.util.DD object the selected rows are being dragged over.
         * @param {Grid} this
         * @param {Ext.GridDD} dd The drag drop object
         * @param {String} targetId The target drag drop object
         * @param {event} e The raw browser event
         */
        "dragover":true,
        /**
         * @event dragenter
         *  Fires when the dragged row(s) first cross another DD target while being dragged
         * @param {Grid} this
         * @param {Ext.GridDD} dd The drag drop object
         * @param {String} targetId The target drag drop object
         * @param {event} e The raw browser event
         */
        "dragenter":true,
        /**
         * @event dragout
         * Fires when the dragged row(s) leave another DD target while being dragged
         * @param {Grid} this
         * @param {Ext.GridDD} dd The drag drop object
         * @param {String} targetId The target drag drop object
         * @param {event} e The raw browser event
         */
        "dragout":true,
        /**
         * @event render
         * Fires when the grid is rendered
         * @param {Grid} grid
         */
        render : true
    });

    Ext.grid.Grid.superclass.constructor.call(this);
};
Ext.extend(Ext.grid.Grid, Ext.util.Observable, {
    /**
     * @cfg {Number} minColumnWidth The minimum width a column can be resized to. Default is 25.

⌨️ 快捷键说明

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