1. #1
    Sencha User
    Join Date
    Apr 2011
    Posts
    15
    Vote Rating
    2
    navr84 is on a distinguished road

      0  

    Default Grid header creation on set title

    Grid header creation on set title


    Grid headers were created by doing a setTitle before extjs 4.2.1 .
    For example :

    PHP Code:
    this.setTitle('Titles); 
    would create the header and you could add to the header by

    PHP Code:
        this.header.add({             
                      
    xtype 'button',            
                      
    text :'Button1'
                   
    }); 
    But after migrating to 4.2.1, the header is not getting created by setTitle(); Do we have to manually create the headers ?

  2. #2
    Sencha - Support Team slemmon's Avatar
    Join Date
    Mar 2009
    Location
    Boise, ID
    Posts
    6,062
    Vote Rating
    215
    slemmon has much to be proud of slemmon has much to be proud of slemmon has much to be proud of slemmon has much to be proud of slemmon has much to be proud of slemmon has much to be proud of slemmon has much to be proud of slemmon has much to be proud of slemmon has much to be proud of

      0  

    Default


    The following works ok for me in 4.2.1.

    Code:
    var panel = Ext.create('Ext.panel.Panel', {
        width: 200,
        html: '<p>World!</p>',
        renderTo: Ext.getBody()
    });
    
    
    // add the header with title: 'Hello'
    Ext.defer(function () {
        panel.setTitle('Hello');
    }, 1000);
    
    
    // add a button to the header
    Ext.defer(function () {
        panel.getHeader().add({
            xtype: 'button',
            text: 'Button1'
        });
    }, 2000);


    Are you a Sencha products veteran who has wondered what it might be like to work at Sencha? If so, please reach out to our recruiting manager:
    sheryl@sencha.com

  3. #3
    Sencha User
    Join Date
    Apr 2011
    Posts
    15
    Vote Rating
    2
    navr84 is on a distinguished road

      0  

    Default


    The above code does not work for me with version 4.2.1.883

  4. #4
    Sencha - Support Team slemmon's Avatar
    Join Date
    Mar 2009
    Location
    Boise, ID
    Posts
    6,062
    Vote Rating
    215
    slemmon has much to be proud of slemmon has much to be proud of slemmon has much to be proud of slemmon has much to be proud of slemmon has much to be proud of slemmon has much to be proud of slemmon has much to be proud of slemmon has much to be proud of slemmon has much to be proud of

      0  

    Default


    Are you seeing what you were expecting here:
    http://jsfiddle.net/slemmon/ENQYa/

    *using 4.2.1


    Are you a Sencha products veteran who has wondered what it might be like to work at Sencha? If so, please reach out to our recruiting manager:
    sheryl@sencha.com

  5. #5
    Sencha User
    Join Date
    Apr 2011
    Posts
    15
    Vote Rating
    2
    navr84 is on a distinguished road

      0  

    Default


    Sorry my mistake, the sample code is working.

    But I have a doubt , when does the header creation occur in 4.2.1 ? Earlier consecutive statements of setTitle and adding to header would work. Now should we add to the header element in the afterrender of the panel ?

  6. #6
    Sencha - Support Team slemmon's Avatar
    Join Date
    Mar 2009
    Location
    Boise, ID
    Posts
    6,062
    Vote Rating
    215
    slemmon has much to be proud of slemmon has much to be proud of slemmon has much to be proud of slemmon has much to be proud of slemmon has much to be proud of slemmon has much to be proud of slemmon has much to be proud of slemmon has much to be proud of slemmon has much to be proud of

      0  

    Default


    I believe you're on the right track - the header doesn't exist until the panel is rendered (or until some other method like setTitle creates it ad hoc).

    Code:
    var panel = Ext.create('Ext.panel.Panel', {
        width: 200,
        html: '<p>World!</p>'
    });
    
    
    
    
    // add the header with title: 'Hello'
    Ext.defer(function () {
        panel.setTitle('Hello');
    }, 1000);
    
    
    
    
    // add a button to the header
    Ext.defer(function () {
        panel.getHeader().add({
            xtype: 'button',
            text: 'Button1'
        });
    }, 2000); // this fails since the header doesn't exist, yet
    
    
    // render the panel
    Ext.defer(function () {
        panel.render(document.body);
    }, 3000);


    Are you a Sencha products veteran who has wondered what it might be like to work at Sencha? If so, please reach out to our recruiting manager:
    sheryl@sencha.com

Thread Participants: 1

Tags for this Thread