1. #1
    Ext JS Premium Member
    Join Date
    Nov 2008
    Posts
    284
    Vote Rating
    3
    wki01 is on a distinguished road

      0  

    Default listeners in grid with ext40

    listeners in grid with ext40


    I just changed grid.js in example directory.
    The listener does not seem to work.
    Ext40 how to do this?

    thanks

    Code:
    Ext.require([
        'Ext.grid.*',
        'Ext.data.*',
        'Ext.util.*',
        'Ext.state.*'
    ]);
    
    Ext.onReady(function() {    
        Ext.QuickTips.init();
     
        // sample static data for the store
        var myData = [
            ['3m Co',                               71.72, 0.02,  0.03,  '9/1 12:00am'],
            ['Alcoa Inc',                           29.01, 0.42,  1.47,  '9/1 12:00am'],
            ['Altria Group Inc',                    83.81, 0.28,  0.34,  '9/1 12:00am'],
            ['American Express Company',            52.55, 0.01,  0.02,  '9/1 12:00am'],
            ['American International Group, Inc.',  64.13, 0.31,  0.49,  '9/1 12:00am'],
            ['AT&T Inc.',                           31.61, -0.48, -1.54, '9/1 12:00am'],
            ['Boeing Co.',                          75.43, 0.53,  0.71,  '9/1 12:00am'],
            ['Caterpillar Inc.',                    67.27, 0.92,  1.39,  '9/1 12:00am'],
            ['Citigroup, Inc.',                     49.37, 0.02,  0.04,  '9/1 12:00am'],
            ['E.I. du Pont de Nemours and Company', 40.48, 0.51,  1.28,  '9/1 12:00am'],
            ['Exxon Mobil Corp',                    68.1,  -0.43, -0.64, '9/1 12:00am'],
            ['General Electric Company',            34.14, -0.08, -0.23, '9/1 12:00am'],
            ['General Motors Corporation',          30.27, 1.09,  3.74,  '9/1 12:00am'],
            ['Hewlett-Packard Co.',                 36.53, -0.03, -0.08, '9/1 12:00am'],
            ['Honeywell Intl Inc',                  38.77, 0.05,  0.13,  '9/1 12:00am'],
            ['Intel Corporation',                   19.88, 0.31,  1.58,  '9/1 12:00am'],
            ['International Business Machines',     81.41, 0.44,  0.54,  '9/1 12:00am'],
            ['Johnson & Johnson',                   64.72, 0.06,  0.09,  '9/1 12:00am'],
            ['JP Morgan & Chase & Co',              45.73, 0.07,  0.15,  '9/1 12:00am'],
            ['McDonald\'s Corporation',             36.76, 0.86,  2.40,  '9/1 12:00am'],
            ['Merck & Co., Inc.',                   40.96, 0.41,  1.01,  '9/1 12:00am'],
            ['Microsoft Corporation',               25.84, 0.14,  0.54,  '9/1 12:00am'],
            ['Pfizer Inc',                          27.96, 0.4,   1.45,  '9/1 12:00am'],
            ['The Coca-Cola Company',               45.07, 0.26,  0.58,  '9/1 12:00am'],
            ['The Home Depot, Inc.',                34.64, 0.35,  1.02,  '9/1 12:00am'],
            ['The Procter & Gamble Company',        61.91, 0.01,  0.02,  '9/1 12:00am'],
            ['United Technologies Corporation',     63.26, 0.55,  0.88,  '9/1 12:00am'],
            ['Verizon Communications',              35.57, 0.39,  1.11,  '9/1 12:00am'],
            ['Wal-Mart Stores, Inc.',               45.45, 0.73,  1.63,  '9/1 12:00am']
        ];
        
        /**
         * Custom function used for column renderer
         * @param {Object} val
         */
        function change(val) {
            if (val > 0) {
                return '<span style="color:green;">' + val + '</span>';
            } else if (val < 0) {
                return '<span style="color:red;">' + val + '</span>';
            }
            return val;
        }
        
        /**
         * Custom function used for column renderer
         * @param {Object} val
         */
        function pctChange(val) {
            if (val > 0) {
                return '<span style="color:green;">' + val + '%</span>';
            } else if (val < 0) {
                return '<span style="color:red;">' + val + '%</span>';
            }
            return val;
        }
        
        // create the data store
        var store = new Ext.data.ArrayStore({
            fields: [
               {name: 'company'},
               {name: 'price',      type: 'float'},
               {name: 'change',     type: 'float'},
               {name: 'pctChange',  type: 'float'},
               {name: 'lastChange', type: 'date', dateFormat: 'n/j h:ia'}
            ],
            data: myData
        });
        
        // manually load local data
        //store.loadData(myData);
        
        // create the Grid
        var grid = new Ext.grid.GridPanel({
            store: store,
            columnLines: true,
    
            listeners :{
                  "scope":this,
                  "cellclick":function(){ alert('cellclick') }, 
                  "rowdblclick":function(){ alert('rowdblclick') }, 
                  "celldblclick":function(){ alert('celldblclick') },  
                  "dblclick":function(){ alert('dblclick') }
            },    
            
            headers: [
                {
                    text     : 'Company',
                    flex     : 1,
                    sortable : false, 
                    dataIndex: 'company'
                },
                {
                    text     : 'Price', 
                    width    : 75, 
                    sortable : true, 
                    renderer : 'usMoney', 
                    dataIndex: 'price'
                },
                {
                    text     : 'Change', 
                    width    : 75, 
                    sortable : true, 
                    renderer : change, 
                    dataIndex: 'change'
                },
                {
                    text     : '% Change', 
                    width    : 75, 
                    sortable : true, 
                    renderer : pctChange, 
                    dataIndex: 'pctChange'
                },
                {
                    text     : 'Last Updated', 
                    width    : 85, 
                    sortable : true, 
                    renderer : Ext.util.Format.dateRenderer('m/d/Y'), 
                    dataIndex: 'lastChange'
                }
            ],
            height: 350,
            width: 600,
            title: 'Array Grid',
            renderTo: 'grid-example',
            viewConfig: {
                stripeRows: true
            }
        });
     
        grid.on('dblclick', function()
            {
               alert("aaa")
            }, this
        );   
        
    });

  2. #2
    Sencha User
    Join Date
    Nov 2010
    Location
    France
    Posts
    37
    Vote Rating
    2
    EBS is on a distinguished road

      0  

    Default


    I'm begginer in extjs but this code is ok for detect "click" in the grid

    Code:
                    viewConfig: {
                        listeners: {
                            click: function(dataview, index, item, e) {
                                var record = dataview.getRecord(item);
                                alert('click : ' + record.get('company'));
                            }
                            
                        }                    
                    }
    EBS
    PS: sorry for my poor english

  3. #3
    Ext JS Premium Member
    Join Date
    Nov 2008
    Posts
    284
    Vote Rating
    3
    wki01 is on a distinguished road

      0  

    Default


    Thanks, Yes is work!

    And this ? in ext30 it work, in ext40 no.
    Code:
        grid.on('dblclick', function()        {           alert("aaa")        }, this    );   

  4. #4
    Ext JS Premium Member
    Join Date
    Nov 2008
    Posts
    284
    Vote Rating
    3
    wki01 is on a distinguished road

      0  

    Default


    Not even this works ...
    It looks like a bug.

    Code:
        grid.addListener('dblclick', function() {
               alert("aaa")
            }
        );

Similar Threads

  1. Ext.Event static listeners[] slows down listeners removal
    By gbulfon in forum Ext 3.x: Help & Discussion
    Replies: 6
    Last Post: 31 Aug 2009, 7:51 AM
  2. Grid Paging and Listeners
    By Shaguar in forum Ext 2.x: Help & Discussion
    Replies: 2
    Last Post: 29 Sep 2008, 3:33 AM
  3. Grid Listeners - how to make a listener only working on grid data
    By thething in forum Ext 2.x: Help & Discussion
    Replies: 4
    Last Post: 6 Feb 2008, 6:48 AM
  4. [Solved] Ext.grid.Grid.destroy() not removing listeners in DS + FIX
    By Artur Bodera (Joust) in forum Ext 1.x: Bugs
    Replies: 4
    Last Post: 7 Aug 2007, 12:17 AM

Thread Participants: 1

Turkiyenin en sevilen filmlerinin yer aldigi xnxx internet sitemiz olan ve porn sex tarzi bir site olan mobil porno izle sitemiz gercekten dillere destan bir durumda herkesin sevdigi bir site olarak tarihe gececege benziyor. Sitenin en belirgin ozelliklerinden birisi de Turkiyede gercekten kaliteli ve muntazam, duzenli porno izle siteleri olmamasidir. Bu yuzden iste. Ayrica en net goruntu kalitesine sahip adresinde yayinlanmaktadir. Mesela diğer sitelerimizden bahsedecek olursak, en iyi hd porno video arşivine sahip bir siteyiz. "The Best anal porn videos and slut anus, big asses movies set..." hd porno faketaxi