Input
- the state the extension operates on.public class RenderCoreExtension<Input,State>
extends java.lang.Object
Constructor and Description |
---|
RenderCoreExtension() |
Modifier and Type | Method and Description |
---|---|
static void |
afterMount(MountDelegateTarget mountDelegateTarget,
java.util.Map<RenderCoreExtension<?,?>,java.lang.Object> results)
Calls
MountExtension.afterMount(ExtensionState) for each RenderCoreExtension
that has a mount phase. |
static void |
beforeMount(MountDelegateTarget mountDelegateTarget,
Host host,
java.util.Map<RenderCoreExtension<?,?>,java.lang.Object> results)
Calls
MountExtension.beforeMount(ExtensionState, Object, Rect) for each RenderCoreExtension that has a mount phase. |
Input |
createInput()
Should return a new
Input > to which the LayoutResultVisitor can write into. |
LayoutResultVisitor<? extends Input> |
getLayoutVisitor()
The extension can optionally return a
LayoutResultVisitor for every layout pass which
will visit every Node.LayoutResult . |
MountExtension<? extends Input,State> |
getMountExtension()
The extension can optionally return a
MountExtension which can be used to augment the
RenderCore's mounting phase. |
static void |
notifyVisibleBoundsChanged(MountDelegateTarget mountDelegateTarget,
Host host,
java.util.Map<RenderCoreExtension<?,?>,java.lang.Object> results)
Calls
MountExtension.onVisibleBoundsChanged(ExtensionState, Rect) for each RenderCoreExtension that has a mount phase. |
static void |
recursivelyNotifyVisibleBoundsChanged(java.lang.Object content) |
static boolean |
shouldUpdate(java.util.Map<RenderCoreExtension<?,?>,java.lang.Object> currentResults,
java.util.Map<RenderCoreExtension<?,?>,java.lang.Object> nextResults)
returns
false iff the results have the same RenderCoreExtension s. |
public LayoutResultVisitor<? extends Input> getLayoutVisitor()
LayoutResultVisitor
for every layout pass which
will visit every Node.LayoutResult
. The visitor should be functional and immutable.LayoutResultVisitor
.public MountExtension<? extends Input,State> getMountExtension()
MountExtension
which can be used to augment the
RenderCore's mounting phase. The Input >
collected in the latest layout pass will be
passed to the extension before mount.MountExtension
.public Input createInput()
Input >
to which the LayoutResultVisitor
can write into.Input >
for LayoutResultVisitor
to write into.public static void beforeMount(MountDelegateTarget mountDelegateTarget, Host host, java.util.Map<RenderCoreExtension<?,?>,java.lang.Object> results)
MountExtension.beforeMount(ExtensionState, Object, Rect)
for each RenderCoreExtension
that has a mount phase.host
- The Host
of the extensionsresults
- A map of RenderCoreExtension
to their results from the layout phase.public static void afterMount(MountDelegateTarget mountDelegateTarget, java.util.Map<RenderCoreExtension<?,?>,java.lang.Object> results)
MountExtension.afterMount(ExtensionState)
for each RenderCoreExtension
that has a mount phase.results
- A map of RenderCoreExtension
to their results from the layout phase.public static void notifyVisibleBoundsChanged(MountDelegateTarget mountDelegateTarget, Host host, java.util.Map<RenderCoreExtension<?,?>,java.lang.Object> results)
MountExtension.onVisibleBoundsChanged(ExtensionState, Rect)
for each RenderCoreExtension
that has a mount phase.host
- The Host
of the extensionsresults
- A map of RenderCoreExtension
to their results from the layout phase.public static boolean shouldUpdate(java.util.Map<RenderCoreExtension<?,?>,java.lang.Object> currentResults, java.util.Map<RenderCoreExtension<?,?>,java.lang.Object> nextResults)
false
iff the results have the same RenderCoreExtension
s.public static void recursivelyNotifyVisibleBoundsChanged(java.lang.Object content)