bibliothek.gui.dock.themes.basic
Class BasicCombiner

java.lang.Object
  extended by bibliothek.gui.dock.themes.basic.BasicCombiner
All Implemented Interfaces:
Combiner
Direct Known Subclasses:
SplitCombiner

public class BasicCombiner
extends Object
implements Combiner

A simple implementation of Combiner, which merges two Dockables by creating a StackDockStation, and putting the children onto this station.

Author:
Benjamin Sigg

Constructor Summary
BasicCombiner()
           
 
Method Summary
 Dockable combine(CombinerSource source, CombinerTarget target)
          Merges two Dockables into a new Dockable.
 CombinerTarget prepare(CombinerSource source, Enforcement force)
          Prepares information telling how two Dockables may be combined.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

BasicCombiner

public BasicCombiner()
Method Detail

prepare

public CombinerTarget prepare(CombinerSource source,
                              Enforcement force)
Description copied from interface: Combiner
Prepares information telling how two Dockables may be combined.

Specified by:
prepare in interface Combiner
Parameters:
source - the Dockables which may be combined, their parent station and other helpful information.
force - how much the caller of this method would like the method not to return a value of null. Implementations should read the force property, where a value of 1 means that this method must success, while 0 means that this method may or may not success. In general the modules in the framework expect that a value below 0.5 results in null, while a value above 0.5f results in a non-null value.
Returns:
How to combine the Dockables, may be null to indicate that a combination is not desired

combine

public Dockable combine(CombinerSource source,
                        CombinerTarget target)
Description copied from interface: Combiner
Merges two Dockables into a new Dockable. This method may set the DockController of the created element in order to initialize it more efficiently.

Specified by:
combine in interface Combiner
Parameters:
source - information about the two Dockables that are going to be merged, not null. This object may or may not have been created by this Combiner, some sanity checks are advised before using it
target - information that was created by Combiner.prepare(CombinerSource, Enforcement) using source, not null
Returns:
the combined Dockable, not null