]>
git.proxmox.com Git - extjs.git/blob - extjs/classic/classic/src/layout/container/boxOverflow/None.js
3 * Base class for Box Layout overflow handlers. These specialized classes are invoked when a Box Layout
4 * (either an HBox or a VBox) has child items that are either too wide (for HBox) or too tall (for VBox)
7 Ext
.define('Ext.layout.container.boxOverflow.None', {
8 alternateClassName
: 'Ext.layout.boxOverflow.None',
11 'box.overflow.None' // capitalized for 4.x compat
15 'Ext.mixin.Factoryable'
22 isBoxOverflowHandler
: true,
24 $configPrefixed
: false,
27 constructor: function(config
) {
28 this.initConfig(config
);
31 handleOverflow
: Ext
.emptyFn
,
33 clearOverflow
: Ext
.emptyFn
,
35 beginLayout
: Ext
.emptyFn
,
36 beginLayoutCycle
: Ext
.emptyFn
,
38 calculate: function(ownerContext
) {
40 plan
= ownerContext
.state
.boxPlan
,
43 if (plan
&& plan
.tooNarrow
) {
44 overflow
= me
.handleOverflow(ownerContext
);
47 if (overflow
.reservedSpace
) {
48 me
.layout
.publishInnerCtSize(ownerContext
, overflow
.reservedSpace
);
51 // TODO: If we need to use the code below then we will need to pass along
52 // the new targetSize as state and use it calculate somehow...
54 //if (overflow.recalculate) {
55 // ownerContext.invalidate({
67 completeLayout
: Ext
.emptyFn
,
69 finishedLayout: function (ownerContext
) {
71 owner
= me
.layout
.owner
,
75 // Only count hidden children if someone is interested when the overflow state changes
76 if (owner
.hasListeners
.overflowchange
) {
77 hiddens
= owner
.query('>[hidden]');
78 hiddenCount
= hiddens
.length
;
79 if (hiddenCount
!== me
.lastHiddenCount
) {
80 owner
.fireEvent('overflowchange', me
.lastHiddenCount
, hiddenCount
, hiddens
);
81 me
.lastHiddenCount
= hiddenCount
;
86 onRemove
: Ext
.emptyFn
,
90 * Normalizes an item reference, string id or numerical index into a reference to the item
91 * @param {Ext.Component/String/Number} item The item reference, id or index
92 * @return {Ext.Component} The item
94 getItem: function(item
) {
95 return this.layout
.owner
.getComponent(item
);
98 getOwnerType: function(owner
){
100 if (owner
.isToolbar
) {
102 } else if (owner
.isTabBar
) {
104 } else if (owner
.isMenu
) {
106 } else if (owner
.isBreadcrumb
) {
109 type
= owner
.getXType();
115 getPrefixConfig
: Ext
.emptyFn
,
116 getSuffixConfig
: Ext
.emptyFn
,
117 getOverflowCls: function() {
121 setVertical: function() {
124 innerCt
= layout
.innerCt
;
126 innerCt
.removeCls(me
.getOverflowCls(layout
.oppositeDirection
));
127 innerCt
.addCls(me
.getOverflowCls(layout
.direction
));