bibliothek.gui.dock.common.intern.station
Class CLockedResizeLayoutManager

java.lang.Object
  extended by bibliothek.gui.dock.facile.station.split.DelegatingSplitLayoutManager
      extended by bibliothek.gui.dock.facile.station.split.LockedResizeLayoutManager<RequestDimension>
          extended by bibliothek.gui.dock.common.intern.station.CLockedResizeLayoutManager
All Implemented Interfaces:
SplitLayoutManager

@FrameworkOnly
public class CLockedResizeLayoutManager
extends LockedResizeLayoutManager<RequestDimension>

A LockedResizeLayoutManager that looks out for CDockable.isResizeLockedVertically() and CDockable.isResizeLockedHorizontally().

Author:
Benjamin Sigg

Constructor Summary
CLockedResizeLayoutManager()
          Creates a new layout manager
CLockedResizeLayoutManager(CControl control)
          Creates a new layout manager
CLockedResizeLayoutManager(SplitLayoutManager delegate)
          Creates a new layout manager using delegate as delegate for all tasks that have to be carried out.
 
Method Summary
 ConflictResolver<RequestDimension> getConflictResolver()
          Gets the policy that tells how two ResizeRequests are merged.
 ResizeRequest getRequest(RequestDimension size, Leaf leaf)
          Gets the size request that changes the size of leaf such that it has a valid size again.
 RequestDimension prepareResize(Leaf leaf)
          Called before the resize takes place, subclasses might store some properties.
 void setControl(CControl control)
          Sets the control in whose realm this manager should work.
 
Methods inherited from class bibliothek.gui.dock.facile.station.split.LockedResizeLayoutManager
asyncToElement, isResize, setConflictResolver, toElement, updateBounds, updateBoundsLocked
 
Methods inherited from class bibliothek.gui.dock.facile.station.split.DelegatingSplitLayoutManager
calculateDivider, install, prepareDrop, prepareMove, uninstall, validateDivider, validatePutInfo, willMakeFullscreen
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

CLockedResizeLayoutManager

public CLockedResizeLayoutManager()
Creates a new layout manager


CLockedResizeLayoutManager

public CLockedResizeLayoutManager(CControl control)
Creates a new layout manager

Parameters:
control - the control in whose realm this manager works

CLockedResizeLayoutManager

public CLockedResizeLayoutManager(SplitLayoutManager delegate)
Creates a new layout manager using delegate as delegate for all tasks that have to be carried out.

Parameters:
delegate - the delegate used for standard tasks to carry out.
Method Detail

setControl

public void setControl(CControl control)
Sets the control in whose realm this manager should work.

Parameters:
control - the control, can be null

getConflictResolver

public ConflictResolver<RequestDimension> getConflictResolver()
Description copied from class: LockedResizeLayoutManager
Gets the policy that tells how two ResizeRequests are merged.

Overrides:
getConflictResolver in class LockedResizeLayoutManager<RequestDimension>
Returns:
the policy

getRequest

public ResizeRequest getRequest(RequestDimension size,
                                Leaf leaf)
Description copied from class: LockedResizeLayoutManager
Gets the size request that changes the size of leaf such that it has a valid size again.

Specified by:
getRequest in class LockedResizeLayoutManager<RequestDimension>
Parameters:
size - the data that was created in LockedResizeLayoutManager.prepareResize(Leaf) or null
leaf - the leaf which size is not yet valid.
Returns:
the preferred size or null

prepareResize

public RequestDimension prepareResize(Leaf leaf)
Description copied from class: LockedResizeLayoutManager
Called before the resize takes place, subclasses might store some properties.

Specified by:
prepareResize in class LockedResizeLayoutManager<RequestDimension>
Parameters:
leaf - some leaf
Returns:
some temporary data that gets forwarded to LockedResizeLayoutManager.getRequest(Object, Leaf), can be null