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.ContentPanel
The 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:
BorderLayoutRegion
The 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.ContentPanel
The 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.ContentPanel
The shown panel or null
This method is defined by BorderLayout.