X-Git-Url: http://git.ithinksw.org/extjs.git/blobdiff_plain/6746dc89c47ed01b165cc1152533605f97eb8e8d..HEAD:/src/container/ButtonGroup.js diff --git a/src/container/ButtonGroup.js b/src/container/ButtonGroup.js index 1ebbce60..05738ec1 100644 --- a/src/container/ButtonGroup.js +++ b/src/container/ButtonGroup.js @@ -13,48 +13,46 @@ If you are unsure which license is appropriate for your use, please contact the */ /** - * @class Ext.container.ButtonGroup - * @extends Ext.panel.Panel - *

Provides a container for arranging a group of related Buttons in a tabular manner.

- * Example usage: - * {@img Ext.container.ButtonGroup/Ext.container.ButtonGroup.png Ext.container.ButtonGroup component} - *

-    Ext.create('Ext.panel.Panel', {
-        title: 'Panel with ButtonGroup',
-        width: 300,
-        height:200,
-        renderTo: document.body,
-        html: 'HTML Panel Content',
-        tbar: [{
-            xtype: 'buttongroup',
-            columns: 3,
-            title: 'Clipboard',
-            items: [{
-                text: 'Paste',
-                scale: 'large',
-                rowspan: 3,
-                iconCls: 'add',
-                iconAlign: 'top',
-                cls: 'x-btn-as-arrow'
-            },{
-                xtype:'splitbutton',
-                text: 'Menu Button',
-                scale: 'large',
-                rowspan: 3,
-                iconCls: 'add',
-                iconAlign: 'top',
-                arrowAlign:'bottom',
-                menu: [{text: 'Menu Item 1'}]
-            },{
-                xtype:'splitbutton', text: 'Cut', iconCls: 'add16', menu: [{text: 'Cut Menu Item'}]
-            },{
-                text: 'Copy', iconCls: 'add16'
-            },{
-                text: 'Format', iconCls: 'add16'
-            }]
-        }]
-    });
- * 
+ * Provides a container for arranging a group of related Buttons in a tabular manner. + * + * @example + * Ext.create('Ext.panel.Panel', { + * title: 'Panel with ButtonGroup', + * width: 300, + * height:200, + * renderTo: document.body, + * bodyPadding: 10, + * html: 'HTML Panel Content', + * tbar: [{ + * xtype: 'buttongroup', + * columns: 3, + * title: 'Clipboard', + * items: [{ + * text: 'Paste', + * scale: 'large', + * rowspan: 3, + * iconCls: 'add', + * iconAlign: 'top', + * cls: 'btn-as-arrow' + * },{ + * xtype:'splitbutton', + * text: 'Menu Button', + * scale: 'large', + * rowspan: 3, + * iconCls: 'add', + * iconAlign: 'top', + * arrowAlign:'bottom', + * menu: [{ text: 'Menu Item 1' }] + * },{ + * xtype:'splitbutton', text: 'Cut', iconCls: 'add16', menu: [{text: 'Cut Menu Item'}] + * },{ + * text: 'Copy', iconCls: 'add16' + * },{ + * text: 'Format', iconCls: 'add16' + * }] + * }] + * }); + * */ Ext.define('Ext.container.ButtonGroup', { extend: 'Ext.panel.Panel', @@ -62,7 +60,7 @@ Ext.define('Ext.container.ButtonGroup', { alternateClassName: 'Ext.ButtonGroup', /** - * @cfg {Number} columns The columns configuration property passed to the + * @cfg {Number} columns The `columns` configuration property passed to the * {@link #layout configured layout manager}. See {@link Ext.layout.container.Table#columns}. */ @@ -84,9 +82,9 @@ Ext.define('Ext.container.ButtonGroup', { * @cfg {Boolean} frame Defaults to true. See {@link Ext.panel.Panel#frame}. */ frame: true, - + frameHeader: false, - + internalDefaults: {removeMode: 'container', hideParent: true}, initComponent : function(){ @@ -107,7 +105,7 @@ Ext.define('Ext.container.ButtonGroup', { afterLayout: function() { var me = this; - + me.callParent(arguments); // Pugly hack for a pugly browser: @@ -116,11 +114,16 @@ Ext.define('Ext.container.ButtonGroup', { var t = me.getTargetEl(); t.setWidth(me.layout.table.offsetWidth + t.getPadding('lr')); } + + // IE7 needs a forced repaint to make the top framing div expand to full width + if (Ext.isIE7) { + me.el.repaint(); + } }, afterRender: function() { var me = this; - + //we need to add an addition item in here so the ButtonGroup title is centered if (me.header) { // Header text cannot flex, but must be natural size if it's being centered @@ -140,10 +143,10 @@ Ext.define('Ext.container.ButtonGroup', { }); me.suspendLayout = false; } - + me.callParent(arguments); }, - + // private onBeforeAdd: function(component) { if (component.is('button')) {