This class represents a common layout manager used in desktop applications. For screenshots and more details,
please see:
Cross Browser Layouts - Part 1
Cross Browser Layouts - Part 2
Example:
var layout = new YAHOO.ext.BorderLayout(document.body, {
hideOnLayout: true,
north: {
initialSize: 25,
titlebar: false
},
west: {
split:true,
initialSize: 200,
minSize: 175,
maxSize: 400,
titlebar: true,
collapsible: true
},
east: {
split:true,
initialSize: 202,
minSize: 175,
maxSize: 400,
titlebar: true,
collapsible: true
},
south: {
split:true,
initialSize: 100,
minSize: 100,
maxSize: 200,
titlebar: true,
collapsible: true
},
center: {
titlebar: true,
autoScroll:true
}
});
// shorthand
var CP = YAHOO.ext.ContentPanel;
layout.beginUpdate();
layout.add('north', new CP('north', 'North'));
layout.add('south', new CP('south', {title: 'South', closable: true}));
layout.add('west', new CP('west', {title: 'West'}));
layout.add('east', new CP('autoTabs', {title: 'Auto Tabs', closable: true}));
layout.add('center', new CP('center1', {title: 'Close Me', closable: true}));
layout.add('center', new CP('center2', {title: 'Center Panel', closable: false}));
layout.getRegion('center').showPanel('center1');
layout.endUpdate();
| |
BorderLayout(String/HTMLElement/Element container, Object config) |
BorderLayout |
| Create a new BorderLayout |
| |
add(String target, YAHOO.ext.ContentPanel panel) : YAHOO.ext.ContentPanel |
BorderLayout |
| Adds a ContentPanel (or subclass) to this layout. |
| |
addListener(String eventName, Function handler, [Object scope], [boolean override]) : void |
Observable |
| Appends an event handler to this element |
| |
addRegion(String target, Object config) : BorderLayoutRegion |
BorderLayout |
| Creates and adds a new region if it doesn't already exist. |
| |
beginUpdate() : void |
LayoutManager |
| Suspend the LayoutManager from doing auto-layouts while
making multiple add or remove calls |
| |
delayedListener(String eventName, Function handler, [Object scope], [Number delay]) : Function |
Observable |
| Appends an event handler to this element that is delayed the specified number of milliseconds. |
| |
endUpdate(Boolean noLayout) : void |
LayoutManager |
| Restore auto-layouts and optionally disable the manager from performing a layout |
| |
findPanel(String panelId) : YAHOO.ext.ContentPanel |
BorderLayout |
| Searches all regions for a panel with the specified id |
| |
fireEvent(String eventName, Object... args) : void |
Observable |
| Fires the specified event with the passed parameters (minus the event name). |
| |
getEl() : YAHOO.ext.Element |
LayoutManager |
| Returns the element this layout is bound to. |
| |
getRegion(String target) : YAHOO.ext.LayoutRegion |
LayoutManager |
| Returns the specified region. |
| |
getViewSize() : Object |
LayoutManager |
| Returns the size of the current view, This method normalizes document.body and element embedded layouts and
performs ... |
| |
isUpdating() : Boolean |
LayoutManager |
| Returns true if this layout is currently being updated |
| |
layout() : void |
BorderLayout |
| Performs a layout update. |
| |
purgeListeners() : void |
Observable |
| Removes all listeners for this object |
| |
remove(String target, Number/String/YAHOO.ext.ContentPanel panel) : YAHOO.ext.ContentPanel |
BorderLayout |
| Adds a ContentPanel (or subclass) to this layout. |
| |
removeListener(String eventName, Function handler, [Object scope]) : void |
Observable |
| Removes a listener |
| |
restoreState([YAHOO.ext.state.Provider provider]) : void |
BorderLayout |
| Restores this layouts state using YAHOO.ext.state.Manager or the state provided by the passed provider. |
| |
showPanel(String/ContentPanel panelId) : YAHOO.ext.ContentPanel |
BorderLayout |
| Searches all regions for a panel with the specified id and activates (shows) it. |
add
public function add(String target, YAHOO.ext.ContentPanel panel)
Adds a ContentPanel (or subclass) to this layout.
Parameters:
Returns:
YAHOO.ext.ContentPanelThe added panel
This method is defined by BorderLayout.
addListener
public function addListener(String eventName, Function handler, [Object scope], [boolean override])
Appends an event handler to this element
Parameters:
eventName : StringThe type of event to listen for
handler : FunctionThe method the event invokes
scope : Object(optional) The scope (this object) for the handler
override : boolean(optional) If true, scope becomes the scope
Returns:
addRegion
public function addRegion(String target, Object config)
Creates and adds a new region if it doesn't already exist.
Parameters:
target : StringThe target region key (north, south, east, west or center).
config : ObjectThe regions config object
Returns:
BorderLayoutRegionThe new region
This method is defined by BorderLayout.
beginUpdate
public function beginUpdate()
Suspend the LayoutManager from doing auto-layouts while
making multiple add or remove calls
delayedListener
public function delayedListener(String eventName, Function handler, [Object scope], [Number delay])
Appends an event handler to this element that is delayed the specified number of milliseconds.
Parameters:
eventName : StringThe type of event to listen for
handler : FunctionThe method the event invokes
scope : Object(optional) The scope (this object) for the handler
delay : Number(optional) The number of milliseconds to delay
Returns:
endUpdate
public function endUpdate(Boolean noLayout)
Restore auto-layouts and optionally disable the manager from performing a layout
findPanel
public function findPanel(String panelId)
Searches all regions for a panel with the specified id
This method is defined by BorderLayout.
fireEvent
public function fireEvent(String eventName, Object... args)
Fires the specified event with the passed parameters (minus the event name).
getEl
public function getEl()
Returns the element this layout is bound to.
getRegion
public function getRegion(String target)
Returns the specified region.
Parameters:
target : StringThe region key
Returns:
getViewSize
public function getViewSize()
Returns the size of the current view, This method normalizes document.body and element embedded layouts and
performs box-model adjustments.
isUpdating
public function isUpdating()
Returns true if this layout is currently being updated
layout
public function layout()
Performs a layout update.
This method is defined by BorderLayout.
purgeListeners
public function purgeListeners()
Removes all listeners for this object
remove
public function remove(String target, Number/String/YAHOO.ext.ContentPanel panel)
Adds a ContentPanel (or subclass) to this layout.
Parameters:
target : StringThe target region key (north, south, east, west or center).
panel : Number/String/YAHOO.ext.ContentPanelThe index, id or panel to remove
Returns:
YAHOO.ext.ContentPanelThe removed panel
This method is defined by BorderLayout.
removeListener
public function removeListener(String eventName, Function handler, [Object scope])
restoreState
public function restoreState([YAHOO.ext.state.Provider provider])
Restores this layouts state using YAHOO.ext.state.Manager or the state provided by the passed provider.
This method is defined by BorderLayout.
showPanel
public function showPanel(String/ContentPanel panelId)
Searches all regions for a panel with the specified id and activates (shows) it.
Parameters:
Returns:
YAHOO.ext.ContentPanelThe shown panel or null
This method is defined by BorderLayout.