X-Git-Url: http://git.ithinksw.org/extjs.git/blobdiff_plain/7a654f8d43fdb43d78b63d90528bed6e86b608cc..f562e4c6e5fac7bcb445985b99acbea4d706e6f0:/docs/source/ButtonGroup.html diff --git a/docs/source/ButtonGroup.html b/docs/source/ButtonGroup.html index 3717ee4e..998ea5f3 100644 --- a/docs/source/ButtonGroup.html +++ b/docs/source/ButtonGroup.html @@ -1,67 +1,78 @@ -
+ +/** - * @class Ext.container.ButtonGroup - * @extends Ext.panel.Panel - * <p>Provides a container for arranging a group of related Buttons in a tabular manner.</p> - * Example usage: - * {@img Ext.container.ButtonGroup/Ext.container.ButtonGroup.png Ext.container.ButtonGroup component} - * <pre><code> - 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' - }] - }] - }); - * </code></pre> - * @constructor - * Create a new ButtonGroup. - * @param {Object} config The config object - * @xtype buttongroup + + + + +\ No newline at end of file +The source code + + + + + + +/** + * 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', alias: 'widget.buttongroup', alternateClassName: 'Ext.ButtonGroup', - /** - * @cfg {Number} columns The <tt>columns</tt> 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}. */ - /** + /** * @cfg {String} baseCls Defaults to <tt>'x-btn-group'</tt>. See {@link Ext.panel.Panel#baseCls}. */ baseCls: Ext.baseCSSPrefix + 'btn-group', - /** + /** * @cfg {Object} layout Defaults to <tt>'table'</tt>. See {@link Ext.container.Container#layout}. */ layout: { @@ -70,13 +81,13 @@ Ext.define('Ext.container.ButtonGroup', { defaultType: 'button', - /** + /** * @cfg {Boolean} frame Defaults to <tt>true</tt>. See {@link Ext.panel.Panel#frame}. */ frame: true, - + frameHeader: false, - + internalDefaults: {removeMode: 'container', hideParent: true}, initComponent : function(){ @@ -97,7 +108,7 @@ Ext.define('Ext.container.ButtonGroup', { afterLayout: function() { var me = this; - + me.callParent(arguments); // Pugly hack for a pugly browser: @@ -110,20 +121,30 @@ Ext.define('Ext.container.ButtonGroup', { 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 + delete me.header.items.items[0].flex; + + // For Centering, surround the text with two flex:1 spacers. + me.suspendLayout = true; + me.header.insert(1, { + xtype: 'component', + ui : me.ui, + flex : 1 + }); me.header.insert(0, { xtype: 'component', ui : me.ui, - html : ' ', flex : 1 }); + me.suspendLayout = false; } - + me.callParent(arguments); }, - + // private onBeforeAdd: function(component) { if (component.is('button')) { @@ -147,20 +168,22 @@ Ext.define('Ext.container.ButtonGroup', { return c; } - /** + /** * @cfg {Array} tools @hide */ - /** + /** * @cfg {Boolean} collapsible @hide */ - /** + /** * @cfg {Boolean} collapseMode @hide */ - /** + /** * @cfg {Boolean} animCollapse @hide */ - /** + /** * @cfg {Boolean} closable @hide */ }); -