-
30 Nov 2012 1:57 AM #1
Unanswered: How to constrain resizable items in container with hbox layout?
Unanswered: How to constrain resizable items in container with hbox layout?
Let's say I have two items inside a container with a hbox layout. The first (left) item is resizable to the right and the second (right) item has a min width set. Unfortunately, it is possible to resize the the first item until the it's resize handle and the second item are outside of their parent container.
Is there a way to constrain the items inside their container? I already tried constrainAlign, manageOverflow and shrinkWrap. But to be honest, I don't really know where to put them. Thanks in advance.
PHP Code:Ext.create('Ext.Panel', {
width: 500,
height: 300,
title: "HBoxLayout Panel",
layout: {
type: 'hbox',
align: 'stretch',
pack: 'start'
},
renderTo: document.body,
items: [{
xtype: 'panel',
title: 'Inner Panel One',
width: 100,
resizable: {
handles: 'e'
}
},{
xtype: 'panel',
title: 'Inner Panel Two',
minWidth: 100,
flex: 1
}]
});
-
3 Dec 2012 4:42 AM #2Sencha - Senior Forum Manager
- Join Date
- Mar 2007
- Location
- St. Louis, MO
- Posts
- 33,581
- Vote Rating
- 433
- Answers
- 3100
Could try using border layout instead. It will stop the resize.
Mitchell Simoens @SenchaMitch
Sencha Inc, Senior Forum Manager
________________
http://www.JSONPLint.com - Source to lint your JSONP!
Check out my GitHub, lots of nice things for Ext JS 4 and Sencha Touch 2
https://github.com/mitchellsimoens
Think my support is good? Get more personalized support via a support subscription. https://www.sencha.com/store/
Need more help with your app? Hire Sencha Services services@sencha.com
Want to learn Sencha Touch 2? Check out Sencha Touch in Action that is almost in print!
When posting code, please use BBCode's CODE tags.
-
3 Dec 2012 5:48 AM #3
Sadly, the border layout doesn't work in my particular case. Does your reply mean, that currently there is no way to do it using the hbox layout?
-
3 Dec 2012 6:00 AM #4
Okay, I found out using a splitter will fix this problem, but inserts another item which kind of messes up my code. Is there any other way without inserting extra items?
Example with splitter item:
PHP Code:Ext.create('Ext.Panel', {
width: 500,
height: 300,
title: "HBoxLayout Panel",
layout: {
type: 'hbox',
align: 'stretch',
pack: 'start'
},
renderTo: document.body,
items: [{
xtype: 'panel',
title: 'Inner Panel One',
width: 100
},{
xtype: 'splitter',
},{
xtype: 'panel',
title: 'Inner Panel Two',
minWidth: 100,
flex: 1
}]
});


Reply With Quote