1. #41
    Sencha User
    Join Date
    Apr 2009
    Location
    / .de / ST / HAL
    Posts
    33
    Vote Rating
    0
    Matthias_WB is on a distinguished road

      0  

    Default style-binding in JS-File

    style-binding in JS-File


    Hello community,

    because many developer forget binding the css-file, I have the style properties in the JS file placed.

    In "init"-function near line 103 you add the red marked line.
    Code:
    init : function(grid)
        {
            if (grid.enableHdMenu === false) {
                return;
            }
    
            styleExtention=Ext.util.CSS.createStyleSheet('.ext-ux-grid-gridviewmenuplugin-menuBtn.x-grid3-hd-btn {display:block}');
    Then you don't bind the CSS file. When you open a grid with added plugin-property, you see a button with "Arrow down"-symbol.




    When posibile, integrated my idea on the next version.


    Attached Files
    Best regards

    Matthias

    _______________
    ExtJS is the best ajax-framework, that I know!

  2. #42
    Sencha User fangzhouxing's Avatar
    Join Date
    Mar 2007
    Posts
    468
    Vote Rating
    1
    fangzhouxing is on a distinguished road

      0  

    Default


    I found a bug in IE7, when using hideHeaders config item in grid, the whole grid cannot show!
    In FF 3.5, it is fine.

  3. #43
    Sencha User makana's Avatar
    Join Date
    Apr 2008
    Location
    Dresden, Germany
    Posts
    527
    Vote Rating
    19
    makana has a spectacular aura about makana has a spectacular aura about

      0  

    Default


    Hi Thorsten!
    Thanks for sharing this great plugin! I like it!

    I found out, that
    Code:
    this.colMenu.getEl()
    is undefined until you open the menu. So there's an error in your destroy-method.

    I simply changed it to
    Code:
        _destroy : function()
        {
            if(this.colMenu){
                this.colMenu.removeAll();
                Ext.menu.MenuMgr.unregister(this.colMenu);
                if (this.colMenu.el) this.colMenu.el.remove();
                delete this.colMenu;
            }
    
            if(this._menuBtn){
                this._menuBtn.remove();
                delete this._menuBtn;
            }
        }
    The error occured when I closed a tab which contains a GridPanel with your plugin and I didn't open the menu at least once.
    (But it's reproducable in a simple example. I modified the array-grid example and added your plugin. Then I called grid.destroy() on a button click. Just the same error.)

    Maybe the problem occurs in your app as well and you can apply the little change to your code.

    Keep up the great work!
    Best regards
    Programming today is a race between software engineers striving to build bigger and better іdiot-proof programs, and the universe striving to produce bigger and better idiots. So far, the universe is winning. (Rick Cook)

    Enhanced ExtJS adapter for Adobe AIR

  4. #44
    Sencha User ThorstenSuckow's Avatar
    Join Date
    Sep 2007
    Location
    Aachen, Germany
    Posts
    597
    Vote Rating
    2
    ThorstenSuckow is on a distinguished road

      0  

    Default


    Quote Originally Posted by makana View Post
    I found out, that
    Code:
    this.colMenu.getEl()
    is undefined until you open the menu. So there's an error in your destroy-method.
    Hi Makana,

    thanks for your error report. I'll fix this for the next release!

  5. #45
    Sencha User fangzhouxing's Avatar
    Join Date
    Mar 2007
    Posts
    468
    Vote Rating
    1
    fangzhouxing is on a distinguished road

      0  

    Default


    Using 'Ext.util.CSS.createStyleSheet' will have problem in IE7.

    see: http://extjs.com/forum/showthread.php?p=369735

  6. #46
    Ext User tonedeaf's Avatar
    Join Date
    Dec 2007
    Posts
    137
    Vote Rating
    1
    tonedeaf is on a distinguished road

      0  

    Default


    Quote Originally Posted by AlxH View Post
    I would like to have both menus, too! If theres technically and logically nothing to say against it, why would you want to prevent it?
    It would be useful for example when you have other plugins like columnfilters in hd-menu of columns and this plugin for column-show/hide menu on the right.
    +1 for keeping the existing enableHdMenu option and operating this plugin separately of the column dropdown menus.
    I use the GridFilters extension and there doesn't look any way of using both at the moment.

  7. #47
    Ext User
    Join Date
    Feb 2009
    Posts
    1
    Vote Rating
    0
    futpol is on a distinguished road

      0  

    Default


    Quote Originally Posted by MindPatterns View Post
    Hi Makana,

    thanks for your error report. I'll fix this for the next release!
    As I have the same problem I would appreciate a fix in svn, to prevent local change to be overwritten by clean download of plugin.

    Thanks for great plugin!

  8. #48
    Sencha User ThorstenSuckow's Avatar
    Join Date
    Sep 2007
    Location
    Aachen, Germany
    Posts
    597
    Vote Rating
    2
    ThorstenSuckow is on a distinguished road

      0  

    Default Ext.ux.grid.GridViewMenuPlugin 0.3 available

    Ext.ux.grid.GridViewMenuPlugin 0.3 available


    Hey there, I have just updated the plugin to work with Ext 3.1, along with some minor bug fixes.

  9. #49
    Ext JS Premium Member
    Join Date
    Dec 2009
    Posts
    1
    Vote Rating
    0
    warren72 is on a distinguished road

      0  

    Default Showing the menu from a button click

    Showing the menu from a button click


    Is there a way to show the menu from a click of a button that is somewhere else on the page? It works as specified, but I have a need to be able to display it when a button is clicked. I can't seem to figure how to get the handle/reference to the menu object.

  10. #50
    Sencha User
    Join Date
    Mar 2008
    Posts
    566
    Vote Rating
    0
    moegal is on a distinguished road

      0  

    Default


    Quote Originally Posted by makana View Post
    Hi Thorsten!
    Thanks for sharing this great plugin! I like it!

    I found out, that
    Code:
    this.colMenu.getEl()
    is undefined until you open the menu. So there's an error in your destroy-method.

    I simply changed it to
    Code:
        _destroy : function()
        {
            if(this.colMenu){
                this.colMenu.removeAll();
                Ext.menu.MenuMgr.unregister(this.colMenu);
                if (this.colMenu.el) this.colMenu.el.remove();
                delete this.colMenu;
            }
    
            if(this._menuBtn){
                this._menuBtn.remove();
                delete this._menuBtn;
            }
        }
    The error occured when I closed a tab which contains a GridPanel with your plugin and I didn't open the menu at least once.
    (But it's reproducable in a simple example. I modified the array-grid example and added your plugin. Then I called grid.destroy() on a button click. Just the same error.)

    Maybe the problem occurs in your app as well and you can apply the little change to your code.

    Keep up the great work!
    Best regards
    I changed it the following to get it to work:

    Code:
    if(typeof(this.colMenu.getEl())!="undefined"){ 
         if (this.colMenu.getEl()) this.colMenu.getEl().remove();
    }
    //this.colMenu.getEl().remove();
    Thanks, Marty