making certain cells of an ExtJS GridPanel un-editable

Posted by synchronicity on Stack Overflow See other posts from Stack Overflow or by synchronicity
Published on 2010-02-16T00:05:25Z Indexed on 2010/03/12 7:47 UTC
Read the original article Hit count: 333

Filed under:
|
|

I currently have a GridPanel with the Ext.ux.RowEditor plugin. Four fields exist in the row editor: port, ip address, subnet and DHCP. If the DHCP field (checkbox) of the selected row is checked, I need to make the other three fields un-editable.

I've been trying to perform this code when the beforeedit event is triggered, but to no avail... I've only found ways to make the entire column un-editable. My code so far:

this.rowEditor.on({
    scope: this,
    beforeedit: this.checkIfEditable
});

checkIfEditable:function(rowEditor, rowIndex) {
    if(this.getStore().getAt(rowIndex).get('dhcp')) {
        // this function makes the entire column un-editable:
        this.getColumnModel().setEditable(2, false); 

        // I want to make only the other three fields of the current row 
        // uneditable.
    }
 }

Please let me know if any clarification is needed.

Any help potentially extending RowEditor to accomplish the target functionality would be greatly appreciated as well!

© Stack Overflow or respective owner

Related posts about extjs

Related posts about JavaScript