com.extjs.gxt.ui.client.widget.layout
Class AnchorLayout

java.lang.Object
  extended by com.extjs.gxt.ui.client.event.BaseObservable
      extended by com.extjs.gxt.ui.client.widget.Layout
          extended by com.extjs.gxt.ui.client.widget.layout.AnchorLayout
All Implemented Interfaces:
Observable
Direct Known Subclasses:
AbsoluteLayout, FormLayout

public class AnchorLayout
extends Layout

This is a layout that enables anchoring of contained widgets relative to the container's dimensions. If the container is resized, all anchored items are automatically re-rendered according to their anchor rules.

Child Widgets are:

By default, AnchorLayout will calculate anchor measurements based on the size of the container itself. However, if anchorSize is specified, the layout will use it as a virtual container for the purposes of calculating anchor measurements based on it instead, allowing the container to be sized independently of the anchoring logic if necessary.

The items added to an AnchorLayout can also supply an anchoring-specific layout property (see AnchorData.setAnchorSpec(String)) which is a string containing two values: the horizontal anchor value and the vertical anchor value (for example, '100% 50%'). This value is what tells the layout how the item should be anchored to the container. The following types of anchor values are supported:

Anchor values can also be mixed as needed. For example, '-50 75%' would render the width offset from the container right edge by 50 pixels and 75% of the container's height.


Field Summary
 
Fields inherited from class com.extjs.gxt.ui.client.widget.Layout
activeItem, componentStyleName, container, monitorResize, renderHidden, target, targetStyleName
 
Constructor Summary
AnchorLayout()
           
 
Method Summary
protected  int adjustHeightAnchor(int height, Component comp)
           
protected  int adjustWidthAnchor(int width, Component comp)
           
 Size getAnchorSize()
          Returns the anchor size.
protected  void onLayout(Container<?> container, El target)
           
 void setAnchorSize(Size anchorSize)
          Sets a virtual container for the layout to use.
 
Methods inherited from class com.extjs.gxt.ui.client.widget.Layout
applyMargins, applyPadding, callLayout, fly, fly, getExtraStyle, getLayoutData, getResizeDelay, getSideMargins, initTarget, isLayoutExecuted, isLayoutNeeded, isRenderHidden, isRunning, isValidParent, layout, layoutContainer, onAdd, onComponentHide, onComponentShow, onRemove, onResize, renderAll, renderComponent, setBounds, setContainer, setExtraStyle, setLayoutData, setLayoutNeeded, setLayoutOnChange, setPosition, setRenderHidden, setResizeDelay, setSize
 
Methods inherited from class com.extjs.gxt.ui.client.event.BaseObservable
addListener, callListener, fireEvent, fireEvent, getFiresEvents, getListeners, hasActiveEvent, hasListeners, hasListeners, removeAllListeners, removeListener, setFiresEvents
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AnchorLayout

public AnchorLayout()
Method Detail

getAnchorSize

public Size getAnchorSize()
Returns the anchor size.

Returns:
the anchor size

setAnchorSize

public void setAnchorSize(Size anchorSize)
Sets a virtual container for the layout to use.

Parameters:
anchorSize - the anchor size

adjustHeightAnchor

protected int adjustHeightAnchor(int height,
                                 Component comp)

adjustWidthAnchor

protected int adjustWidthAnchor(int width,
                                Component comp)

onLayout

protected void onLayout(Container<?> container,
                        El target)
Overrides:
onLayout in class Layout