|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
D
- the kind of DockElement
this converter handlesP
- the kind of PerspectiveElement
that represents D
L
- the kind of data this converter uses as intermediate formatpublic interface DockConverter<D extends DockElement,P extends PerspectiveElement,L>
A DockConverter
can store or load content which is related
to a certain kind of DockElement
.
The content of an element is first converted in a special intermediate form
represented by some object of type L
. This intermediate object
can then be written as byte-stream or in xml.
Method Summary | |
---|---|
java.lang.String |
getID()
Gets the unique name of this converter. |
L |
getLayout(D element,
java.util.Map<Dockable,java.lang.Integer> children)
Gets the layout of element . |
L |
getPerspectiveLayout(P element,
java.util.Map<PerspectiveDockable,java.lang.Integer> children)
Gets the layout information that is associated with element . |
L |
read(java.io.DataInputStream in,
PlaceholderStrategy placeholders)
Reads a layout from a stream. |
L |
read(XElement element,
PlaceholderStrategy placeholders)
Reads a layout from an xml-element. |
void |
setLayout(D element,
L layout,
java.util.Map<java.lang.Integer,Dockable> children,
PlaceholderStrategy placeholders)
Reads the contents of layout and changes the layout of
element accordingly. |
void |
setLayout(D element,
L layout,
PlaceholderStrategy placeholders)
Reads the contents of layout and changes the layout of
element accordingly. |
void |
write(L layout,
java.io.DataOutputStream out)
Writes the contents of layout into out . |
void |
write(L layout,
XElement element)
Writes the contents of layout into element . |
Method Detail |
---|
java.lang.String getID()
L getLayout(D element, java.util.Map<Dockable,java.lang.Integer> children)
element
. This method should create
a new instance of the layout object, that new object should not be
tied to element
in any way. A layout can be living for
a long period of time and might be used on another dockable
object.
element
- the element for which a new layout should be createdchildren
- a map containing unique identifiers for the children
of the element. Children which are not in this map should not be
stored in the layout.children.size()
(excl.). The
same identifiers will be used as indices by a LocationEstimationMap
. See
also DockFactory.estimateLocations(Object, LocationEstimationMap)
.
L getPerspectiveLayout(P element, java.util.Map<PerspectiveDockable,java.lang.Integer> children)
element
.
The layout information can be any Object
. The only restriction
of the object is, that the associated DockFactory
understands
how to read that object.
element
- the element whose layout information is asked.children
- a map providing identifiers for the children of this element. The
identifiers are in the range from 0 (incl.) to children.size()
(excl.),
the exact same identifiers would be given to getLayout(bibliothek.gui.dock.DockElement, Map)
.
Is null
if the children of this station should be ignored.
null
if this converter does not support perspectivesvoid setLayout(D element, L layout, java.util.Map<java.lang.Integer,Dockable> children, PlaceholderStrategy placeholders)
layout
and changes the layout of
element
accordingly. This method should remove all
children from element
and add new children.
element
- the element whose content and children will be rearranged.layout
- the new layout of element
children
- some children, note that the map may not contain all elements
which were present when the layout was created.placeholders
- a strategy to detect invalid placeholders, can be null
.
Factories loading only Dockable
s but no DockStation
s can safely ignore this argument.void setLayout(D element, L layout, PlaceholderStrategy placeholders)
layout
and changes the layout of
element
accordingly. This method should not add or remove
children to or from element
.
element
- the element whose properties will be changedlayout
- the new set of propertiesplaceholders
- a strategy to detect invalid placeholders, can be null
.
Factories loading only Dockable
s but no DockStation
s can safely ignore this argument.void write(L layout, java.io.DataOutputStream out) throws java.io.IOException
layout
into out
.
layout
- the layout to storeout
- the stream to write into
java.io.IOException
- if an I/O-error occursvoid write(L layout, XElement element)
layout
into element
.
layout
- the layout to storeelement
- an xml-element into which this method should write, the
attributes of element
should not be changed.L read(java.io.DataInputStream in, PlaceholderStrategy placeholders) throws java.io.IOException
in
- the stream to read fromplaceholders
- a strategy to detect invalid placeholders, can be null
.
Factories loading only Dockable
s but no DockStation
s can safely ignore this argument.
null
if the layout
should be discarded
java.io.IOException
- if an I/O-error occursL read(XElement element, PlaceholderStrategy placeholders)
element
- the element to read, should not be changed by this
method.placeholders
- a strategy to detect invalid placeholders, can be null
.
Factories loading only Dockable
s but no DockStation
s can safely ignore this argument.
null
if the layout
should be discarded
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |