Package org.lobobrowser.html.renderer
Class RBlock
- java.lang.Object
-
- org.lobobrowser.html.renderer.RBlock
-
- All Implemented Interfaces:
java.awt.image.ImageObserver
,UINode
,BoundableRenderable
,RCollection
,RElement
,Renderable
,RenderableContainer
public class RBlock extends java.lang.Object implements RenderableContainer, java.awt.image.ImageObserver
Represents a HTML block in a rendered document, typically a DIV. The root renderer node is of this type as well.Immediately below an
RBlock
you will find a node of typeRBlockViewport
.
-
-
Field Summary
Fields Modifier and Type Field Description protected java.awt.Color
backgroundColor
Background color which may be different to that from RenderState in the case of a Document node.protected java.awt.Image
backgroundImage
protected RBlockViewport
bodyLayout
protected java.awt.Color
borderBottomColor
protected BorderInfo
borderInfo
protected java.awt.Insets
borderInsets
protected java.awt.Color
borderLeftColor
protected java.awt.Color
borderRightColor
protected java.awt.Color
borderTopColor
protected java.util.Map
cachedLayout
protected RenderableContainer
container
protected java.awt.Insets
defaultMarginInsets
protected int
defaultOverflowX
protected int
defaultOverflowY
protected java.awt.Insets
defaultPaddingInsets
protected java.util.Collection
delayedPairs
A list of absolute positioned or float parent-child pairs.protected RenderableSpot
endSelection
protected FrameContext
frameContext
protected boolean
hasHScrollBar
protected boolean
hasVScrollBar
int
height
protected javax.swing.JScrollBar
hScrollBar
protected static java.lang.Integer
INVALID_SIZE
protected java.net.URL
lastBackgroundImageUri
protected boolean
layoutDeepCanBeInvalidated
protected boolean
layoutUpTreeCanBeInvalidated
Starts as true because ancestors could be invalidated.protected int
listNesting
protected static java.util.logging.Logger
logger
protected java.awt.Insets
marginInsets
protected ModelNode
modelNode
protected RCollection
originalParent
Parent for invalidation.protected int
overflowX
protected int
overflowY
protected java.awt.Insets
paddingInsets
protected RCollection
parent
Parent for graphics coordinates.protected HtmlRendererContext
rendererContext
protected static int
SCROLL_BAR_THICKNESS
protected static java.awt.Color
SELECTION_COLOR
protected static java.awt.Color
SELECTION_XOR
protected RenderableSpot
startSelection
protected UserAgentContext
userAgentContext
protected javax.swing.JScrollBar
vScrollBar
int
width
int
x
int
y
protected int
zIndex
-
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
-
Fields inherited from interface org.lobobrowser.html.renderer.RElement
VALIGN_ABSBOTTOM, VALIGN_ABSMIDDLE, VALIGN_BASELINE, VALIGN_BOTTOM, VALIGN_MIDDLE, VALIGN_TOP
-
Fields inherited from interface org.lobobrowser.html.renderer.Renderable
EMPTY_ARRAY
-
-
Constructor Summary
Constructors Constructor Description RBlock(NodeImpl modelNode, int listNesting, UserAgentContext pcontext, HtmlRendererContext rcontext, FrameContext frameContext, RenderableContainer parentContainer)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.awt.Component
addComponent(java.awt.Component component)
void
addDelayedPair(DelayedPair pair)
protected void
applyStyle(int availWidth, int availHeight)
void
blur()
void
clearDelayedPairs()
protected void
clearGUIComponents()
protected void
clearStyle(boolean isRootBlock)
boolean
contains(int x, int y)
void
doLayout(int availWidth, int availHeight, boolean sizeOnly)
void
doLayout(int availWidth, int availHeight, boolean expandWidth, boolean expandHeight, org.lobobrowser.html.renderer.FloatingBoundsSource floatBoundsSource, int defaultOverflowX, int defaultOverflowY, boolean sizeOnly)
Lays out and sets dimensions only if RBlock is invalid (or never before layed out), if the parameters passed differ from the last layout, or if the current font differs from the font for the last layout.void
ensureVisible(java.awt.Point point)
boolean
extractSelectionText(java.lang.StringBuffer buffer, boolean inSelection, RenderableSpot startPoint, RenderableSpot endPoint)
void
finalize()
void
focus()
float
getAlignmentX()
float
getAlignmentY()
java.awt.Color
getBlockBackgroundColor()
java.awt.Rectangle
getBounds()
java.awt.Rectangle
getBoundsRelativeToBlock()
int
getCollapsibleMarginBottom()
int
getCollapsibleMarginTop()
protected java.lang.Integer
getDeclaredHeight(RenderState renderState, int actualAvailHeight)
protected int
getDeclaredHeightImpl(RenderState renderState, int availHeight)
protected java.lang.Integer
getDeclaredWidth(RenderState renderState, int actualAvailWidth)
int
getDefaultOverflowX()
int
getDefaultOverflowY()
java.util.Collection
getDelayedPairs()
FloatingInfo
getExportableFloatingInfo()
int
getFirstBaselineOffset()
int
getFirstLineHeight()
java.awt.Point
getGUIPoint(int clientX, int clientY)
int
getHeight()
java.awt.Insets
getInsets(boolean hscroll, boolean vscroll)
Gets insets of content area.RenderableSpot
getLowestRenderableSpot(int x, int y)
int
getMarginBottom()
int
getMarginLeft()
int
getMarginRight()
int
getMarginTop()
ModelNode
getModelNode()
int
getOrdinal()
java.awt.Point
getOrigin()
RCollection
getOriginalOrCurrentParent()
ReturnsBoundableRenderable.getOriginalParent()
if not null.RCollection
getOriginalParent()
This is the parent based on the original element hierarchy.java.awt.Point
getOriginRelativeTo(RCollection ancestor)
java.awt.Color
getPaintedBackgroundColor()
RCollection
getParent()
Gets the parent where the renderable is rendered.RenderableContainer
getParentContainer()
RBlockViewport
getRBlockViewport()
BoundableRenderable
getRenderable(int x, int y)
java.awt.Point
getRenderablePoint(int guiX, int guiY)
java.util.Iterator
getRenderables()
Gets the collection ofRenderable
children.java.awt.Dimension
getSize()
int
getVAlign()
Vertical alignment for elements rendered in a line.int
getViewportListNesting(int blockNesting)
int
getVScrollBarWidth()
Gets the width the vertical scrollbar has when shown.int
getWidth()
int
getX()
int
getY()
int
getZIndex()
boolean
hasDeclaredWidth()
boolean
imageUpdate(java.awt.Image img, int infoflags, int x, int y, int w, int h)
void
invalidateLayoutDeep()
Invalidates this Renderable and all descendents.void
invalidateLayoutLocal()
RBlocks should only be invalidated if one of their properties change, or if a descendent changes, or if a style property of an ancestor is such that it could produce layout changes in this RBlock.void
invalidateLayoutUpTree()
Invalidates this Renderable and its parent (i.e.boolean
isContainedByNode()
Returns true if the renderable is fully contained by its modelNode, but said modelNode does not fully contain an ancestor renderable.protected boolean
isMarginBoundary()
boolean
isOverflowVisibleX()
boolean
isOverflowVisibleY()
protected boolean
isValid()
void
layout(int availWidth, int availHeight, boolean sizeOnly)
Lays out children, and deals with "valid" state.void
layout(int availWidth, int availHeight, boolean expandWidth, boolean expandHeight, int defaultOverflowX, int defaultOverflowY, boolean sizeOnly)
void
layout(int availWidth, int availHeight, boolean expandWidth, boolean expandHeight, org.lobobrowser.html.renderer.FloatingBoundsSource floatBoundsSource, boolean sizeOnly)
void
layout(int availWidth, int availHeight, boolean expandWidth, boolean expandHeight, org.lobobrowser.html.renderer.FloatingBoundsSource floatBoundsSource, int defaultOverflowX, int defaultOverflowY, boolean sizeOnly)
protected void
loadBackgroundImage(java.net.URL imageURL)
void
markLayoutValid()
boolean
onDoubleClick(java.awt.event.MouseEvent event, int x, int y)
boolean
onMouseClick(java.awt.event.MouseEvent event, int x, int y)
boolean
onMouseDisarmed(java.awt.event.MouseEvent event)
void
onMouseMoved(java.awt.event.MouseEvent event, int x, int y, boolean triggerEvent, ModelNode limit)
void
onMouseOut(java.awt.event.MouseEvent event, int x, int y, ModelNode limit)
boolean
onMousePressed(java.awt.event.MouseEvent event, int x, int y)
Returns false if the event is consumed.boolean
onMouseReleased(java.awt.event.MouseEvent event, int x, int y)
boolean
onRightClick(java.awt.event.MouseEvent event, int x, int y)
void
paint(java.awt.Graphics g)
All overriders should call super implementation.boolean
paintSelection(java.awt.Graphics g, boolean inSelection, RenderableSpot startPoint, RenderableSpot endPoint)
Asks the Renderable to paint the selection between two points.void
paintTranslated(java.awt.Graphics g)
Paints by either creating a new clipped graphics context corresponding to the bounds of the Renderable, or by translating the origin.protected void
prePaint(java.awt.Graphics g)
void
relayout()
Invalidates the current Renderable (which invalidates its ancestors) and then requests the top level GUI container to do the layout and repaint.void
relayoutIfValid()
void
repaint()
void
repaint(int x, int y, int width, int height)
void
repaint(ModelNode modelNode)
Calledvoid
scrollBy(int orientation, int offset)
void
scrollByUnits(int orientation, int units)
void
scrollHorizontalTo(int newX)
void
scrollTo(java.awt.Rectangle bounds, boolean xIfNeeded, boolean yIfNeeded)
Scrolls the viewport's origin to the given location, or as close to it as possible.void
scrollVerticalTo(int newY)
protected void
sendDelayedPairsToParent()
protected void
sendGUIComponentsToParent()
void
setBounds(int x, int y, int width, int height)
void
setDefaultMarginInsets(java.awt.Insets insets)
void
setDefaultOverflowX(int defaultOverflowX)
void
setDefaultOverflowY(int defaultOverflowY)
void
setDefaultPaddingInsets(java.awt.Insets insets)
void
setHeight(int height)
void
setOrdinal(int ordinal)
void
setOrigin(int x, int y)
void
setOriginalParent(RCollection origParent)
void
setParent(RCollection parent)
void
setSelectionEnd(RenderableSpot rpoint)
void
setSelectionStart(RenderableSpot rpoint)
void
setWidth(int width)
void
setX(int x)
void
setY(int y)
java.lang.String
toString()
protected java.awt.Point
translateDescendentPoint(BoundableRenderable descendent, int x, int y)
void
updateAllWidgetBounds()
void
updateWidgetBounds()
Updates widget bounds below this node only.void
updateWidgetBounds(int guiX, int guiY)
Updates bounds of all descendent's GUI components, based on root bounds.-
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.lobobrowser.html.renderer.BoundableRenderable
getBounds, getGUIPoint, getHeight, getModelNode, getOrdinal, getOrigin, getOriginalOrCurrentParent, getOriginalParent, getOriginRelativeTo, getParent, getRenderablePoint, getSize, getWidth, getX, getY, invalidateLayoutUpTree, onMouseMoved, onMouseOut, onRightClick, paintTranslated, relayout, repaint, repaint, setBounds, setHeight, setOrdinal, setOrigin, setOriginalParent, setParent, setWidth, setX, setY
-
Methods inherited from interface org.lobobrowser.html.renderer.RCollection
blur, focus
-
Methods inherited from interface org.lobobrowser.html.renderer.RenderableContainer
addComponent, addDelayedPair, clearDelayedPairs, focus, getDelayedPairs, getGUIPoint, getParentContainer, invalidateLayoutUpTree, relayout, repaint, updateAllWidgetBounds
-
-
-
-
Field Detail
-
logger
protected static final java.util.logging.Logger logger
-
frameContext
protected final FrameContext frameContext
-
listNesting
protected final int listNesting
-
rendererContext
protected final HtmlRendererContext rendererContext
-
bodyLayout
protected final RBlockViewport bodyLayout
-
cachedLayout
protected final java.util.Map cachedLayout
-
startSelection
protected RenderableSpot startSelection
-
endSelection
protected RenderableSpot endSelection
-
vScrollBar
protected javax.swing.JScrollBar vScrollBar
-
hScrollBar
protected javax.swing.JScrollBar hScrollBar
-
hasHScrollBar
protected boolean hasHScrollBar
-
hasVScrollBar
protected boolean hasVScrollBar
-
defaultOverflowX
protected int defaultOverflowX
-
defaultOverflowY
protected int defaultOverflowY
-
INVALID_SIZE
protected static final java.lang.Integer INVALID_SIZE
-
delayedPairs
protected java.util.Collection delayedPairs
A list of absolute positioned or float parent-child pairs.
-
backgroundColor
protected java.awt.Color backgroundColor
Background color which may be different to that from RenderState in the case of a Document node.
-
backgroundImage
protected volatile java.awt.Image backgroundImage
-
zIndex
protected int zIndex
-
borderTopColor
protected java.awt.Color borderTopColor
-
borderLeftColor
protected java.awt.Color borderLeftColor
-
borderBottomColor
protected java.awt.Color borderBottomColor
-
borderRightColor
protected java.awt.Color borderRightColor
-
borderInsets
protected java.awt.Insets borderInsets
-
marginInsets
protected java.awt.Insets marginInsets
-
paddingInsets
protected java.awt.Insets paddingInsets
-
borderInfo
protected BorderInfo borderInfo
-
lastBackgroundImageUri
protected java.net.URL lastBackgroundImageUri
-
defaultMarginInsets
protected java.awt.Insets defaultMarginInsets
-
defaultPaddingInsets
protected java.awt.Insets defaultPaddingInsets
-
overflowX
protected int overflowX
-
overflowY
protected int overflowY
-
userAgentContext
protected final UserAgentContext userAgentContext
-
layoutDeepCanBeInvalidated
protected boolean layoutDeepCanBeInvalidated
-
SCROLL_BAR_THICKNESS
protected static final int SCROLL_BAR_THICKNESS
- See Also:
- Constant Field Values
-
SELECTION_COLOR
protected static final java.awt.Color SELECTION_COLOR
-
SELECTION_XOR
protected static final java.awt.Color SELECTION_XOR
-
container
protected final RenderableContainer container
-
modelNode
protected final ModelNode modelNode
-
x
public int x
-
y
public int y
-
width
public int width
-
height
public int height
-
layoutUpTreeCanBeInvalidated
protected boolean layoutUpTreeCanBeInvalidated
Starts as true because ancestors could be invalidated.
-
parent
protected RCollection parent
Parent for graphics coordinates.
-
originalParent
protected RCollection originalParent
Parent for invalidation.
-
-
Constructor Detail
-
RBlock
public RBlock(NodeImpl modelNode, int listNesting, UserAgentContext pcontext, HtmlRendererContext rcontext, FrameContext frameContext, RenderableContainer parentContainer)
-
-
Method Detail
-
getVScrollBarWidth
public int getVScrollBarWidth()
Gets the width the vertical scrollbar has when shown.
-
finalize
public void finalize() throws java.lang.Throwable
- Overrides:
finalize
in classjava.lang.Object
- Throws:
java.lang.Throwable
-
getVAlign
public int getVAlign()
Description copied from interface:RElement
Vertical alignment for elements rendered in a line. Returns one of the constants defined in this class.
-
ensureVisible
public void ensureVisible(java.awt.Point point)
-
isOverflowVisibleX
public final boolean isOverflowVisibleX()
-
isOverflowVisibleY
public final boolean isOverflowVisibleY()
-
getFirstLineHeight
public int getFirstLineHeight()
-
getFirstBaselineOffset
public int getFirstBaselineOffset()
-
setSelectionEnd
public void setSelectionEnd(RenderableSpot rpoint)
-
setSelectionStart
public void setSelectionStart(RenderableSpot rpoint)
-
getViewportListNesting
public int getViewportListNesting(int blockNesting)
-
paint
public void paint(java.awt.Graphics g)
All overriders should call super implementation.- Specified by:
paint
in interfaceRenderable
-
layout
public final void layout(int availWidth, int availHeight, boolean expandWidth, boolean expandHeight, int defaultOverflowX, int defaultOverflowY, boolean sizeOnly)
-
layout
public final void layout(int availWidth, int availHeight, boolean expandWidth, boolean expandHeight, org.lobobrowser.html.renderer.FloatingBoundsSource floatBoundsSource, boolean sizeOnly)
-
layout
public final void layout(int availWidth, int availHeight, boolean expandWidth, boolean expandHeight, org.lobobrowser.html.renderer.FloatingBoundsSource floatBoundsSource, int defaultOverflowX, int defaultOverflowY, boolean sizeOnly)
-
doLayout
public final void doLayout(int availWidth, int availHeight, boolean sizeOnly)
-
doLayout
public void doLayout(int availWidth, int availHeight, boolean expandWidth, boolean expandHeight, org.lobobrowser.html.renderer.FloatingBoundsSource floatBoundsSource, int defaultOverflowX, int defaultOverflowY, boolean sizeOnly)
Lays out and sets dimensions only if RBlock is invalid (or never before layed out), if the parameters passed differ from the last layout, or if the current font differs from the font for the last layout.- Parameters:
availWidth
-availHeight
-
-
paintSelection
public boolean paintSelection(java.awt.Graphics g, boolean inSelection, RenderableSpot startPoint, RenderableSpot endPoint)
Description copied from interface:BoundableRenderable
Asks the Renderable to paint the selection between two points. Nothing will be done if the points are outside the Renderable.- Specified by:
paintSelection
in interfaceBoundableRenderable
- Returns:
- True iff it's in selection when finished painting.
-
getLowestRenderableSpot
public RenderableSpot getLowestRenderableSpot(int x, int y)
- Specified by:
getLowestRenderableSpot
in interfaceBoundableRenderable
-
invalidateLayoutLocal
public void invalidateLayoutLocal()
RBlocks should only be invalidated if one of their properties change, or if a descendent changes, or if a style property of an ancestor is such that it could produce layout changes in this RBlock.
-
clearStyle
protected void clearStyle(boolean isRootBlock)
-
onMouseClick
public boolean onMouseClick(java.awt.event.MouseEvent event, int x, int y)
- Specified by:
onMouseClick
in interfaceBoundableRenderable
-
onDoubleClick
public boolean onDoubleClick(java.awt.event.MouseEvent event, int x, int y)
- Specified by:
onDoubleClick
in interfaceBoundableRenderable
-
onMouseDisarmed
public boolean onMouseDisarmed(java.awt.event.MouseEvent event)
- Specified by:
onMouseDisarmed
in interfaceBoundableRenderable
-
onMousePressed
public boolean onMousePressed(java.awt.event.MouseEvent event, int x, int y)
Description copied from interface:BoundableRenderable
Returns false if the event is consumed. True to propagate further.- Specified by:
onMousePressed
in interfaceBoundableRenderable
-
onMouseReleased
public boolean onMouseReleased(java.awt.event.MouseEvent event, int x, int y)
- Specified by:
onMouseReleased
in interfaceBoundableRenderable
-
getPaintedBackgroundColor
public java.awt.Color getPaintedBackgroundColor()
- Specified by:
getPaintedBackgroundColor
in interfaceRenderableContainer
-
getRenderables
public java.util.Iterator getRenderables()
Description copied from interface:RCollection
Gets the collection ofRenderable
children.- Specified by:
getRenderables
in interfaceRCollection
-
updateWidgetBounds
public void updateWidgetBounds(int guiX, int guiY)
Updates bounds of all descendent's GUI components, based on root bounds.- Specified by:
updateWidgetBounds
in interfaceRCollection
-
scrollHorizontalTo
public void scrollHorizontalTo(int newX)
-
scrollVerticalTo
public void scrollVerticalTo(int newY)
-
scrollByUnits
public void scrollByUnits(int orientation, int units)
-
scrollBy
public void scrollBy(int orientation, int offset)
-
scrollTo
public void scrollTo(java.awt.Rectangle bounds, boolean xIfNeeded, boolean yIfNeeded)
Scrolls the viewport's origin to the given location, or as close to it as possible.This method should be invoked in the GUI thread.
- Parameters:
bounds
- The bounds of the scrollable area that should become visible.xIfNeeded
- If this parameter istrue
the x coordinate is changed only if the horizontal bounds are not currently visible.yIfNeeded
- If this parameter istrue
the y coordinate is changed only if the vertical bounds are not currently visible.
-
getRBlockViewport
public RBlockViewport getRBlockViewport()
-
extractSelectionText
public boolean extractSelectionText(java.lang.StringBuffer buffer, boolean inSelection, RenderableSpot startPoint, RenderableSpot endPoint)
- Specified by:
extractSelectionText
in interfaceBoundableRenderable
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
getExportableFloatingInfo
public FloatingInfo getExportableFloatingInfo()
-
getDefaultOverflowX
public int getDefaultOverflowX()
-
getDefaultOverflowY
public int getDefaultOverflowY()
-
setDefaultOverflowX
public void setDefaultOverflowX(int defaultOverflowX)
-
setDefaultOverflowY
public void setDefaultOverflowY(int defaultOverflowY)
-
setDefaultPaddingInsets
public void setDefaultPaddingInsets(java.awt.Insets insets)
-
setDefaultMarginInsets
public void setDefaultMarginInsets(java.awt.Insets insets)
-
getAlignmentX
public float getAlignmentX()
-
getAlignmentY
public float getAlignmentY()
-
invalidateLayoutDeep
public final void invalidateLayoutDeep()
Invalidates this Renderable and all descendents. This is only used in special cases, such as when a new style sheet is added.- Specified by:
invalidateLayoutDeep
in interfaceRCollection
-
getDeclaredWidth
protected java.lang.Integer getDeclaredWidth(RenderState renderState, int actualAvailWidth)
-
hasDeclaredWidth
public final boolean hasDeclaredWidth()
-
getDeclaredHeight
protected java.lang.Integer getDeclaredHeight(RenderState renderState, int actualAvailHeight)
-
getDeclaredHeightImpl
protected int getDeclaredHeightImpl(RenderState renderState, int availHeight)
-
layout
public final void layout(int availWidth, int availHeight, boolean sizeOnly)
Lays out children, and deals with "valid" state. Override doLayout method instead of this one.
-
sendGUIComponentsToParent
protected final void sendGUIComponentsToParent()
-
clearGUIComponents
protected final void clearGUIComponents()
-
addComponent
public java.awt.Component addComponent(java.awt.Component component)
- Specified by:
addComponent
in interfaceRenderableContainer
-
updateAllWidgetBounds
public void updateAllWidgetBounds()
- Specified by:
updateAllWidgetBounds
in interfaceRenderableContainer
-
updateWidgetBounds
public void updateWidgetBounds()
Updates widget bounds below this node only. Should not be called during general rendering.
-
getBoundsRelativeToBlock
public java.awt.Rectangle getBoundsRelativeToBlock()
- Specified by:
getBoundsRelativeToBlock
in interfaceUINode
-
applyStyle
protected void applyStyle(int availWidth, int availHeight)
-
loadBackgroundImage
protected void loadBackgroundImage(java.net.URL imageURL)
-
getZIndex
public int getZIndex()
- Specified by:
getZIndex
in interfaceBoundableRenderable
-
prePaint
protected void prePaint(java.awt.Graphics g)
-
imageUpdate
public boolean imageUpdate(java.awt.Image img, int infoflags, int x, int y, int w, int h)
- Specified by:
imageUpdate
in interfacejava.awt.image.ImageObserver
-
getInsets
public java.awt.Insets getInsets(boolean hscroll, boolean vscroll)
Gets insets of content area. It includes margin, borders and scrollbars, but not padding.
-
sendDelayedPairsToParent
protected final void sendDelayedPairsToParent()
-
clearDelayedPairs
public final void clearDelayedPairs()
- Specified by:
clearDelayedPairs
in interfaceRenderableContainer
-
getDelayedPairs
public final java.util.Collection getDelayedPairs()
- Specified by:
getDelayedPairs
in interfaceRenderableContainer
-
addDelayedPair
public void addDelayedPair(DelayedPair pair)
- Specified by:
addDelayedPair
in interfaceRenderableContainer
-
getParentContainer
public RenderableContainer getParentContainer()
- Specified by:
getParentContainer
in interfaceRenderableContainer
-
isContainedByNode
public boolean isContainedByNode()
Description copied from interface:BoundableRenderable
Returns true if the renderable is fully contained by its modelNode, but said modelNode does not fully contain an ancestor renderable.- Specified by:
isContainedByNode
in interfaceBoundableRenderable
-
getCollapsibleMarginBottom
public int getCollapsibleMarginBottom()
- Specified by:
getCollapsibleMarginBottom
in interfaceRElement
-
isMarginBoundary
protected boolean isMarginBoundary()
-
getCollapsibleMarginTop
public int getCollapsibleMarginTop()
- Specified by:
getCollapsibleMarginTop
in interfaceRElement
-
getMarginBottom
public int getMarginBottom()
- Specified by:
getMarginBottom
in interfaceRElement
-
getMarginLeft
public int getMarginLeft()
- Specified by:
getMarginLeft
in interfaceRElement
-
getMarginRight
public int getMarginRight()
- Specified by:
getMarginRight
in interfaceRElement
-
getMarginTop
public int getMarginTop()
- Specified by:
getMarginTop
in interfaceRElement
-
focus
public void focus()
- Specified by:
focus
in interfaceRCollection
-
blur
public void blur()
- Specified by:
blur
in interfaceRCollection
-
onMouseMoved
public void onMouseMoved(java.awt.event.MouseEvent event, int x, int y, boolean triggerEvent, ModelNode limit)
- Specified by:
onMouseMoved
in interfaceBoundableRenderable
-
onMouseOut
public void onMouseOut(java.awt.event.MouseEvent event, int x, int y, ModelNode limit)
- Specified by:
onMouseOut
in interfaceBoundableRenderable
-
getRenderable
public BoundableRenderable getRenderable(int x, int y)
-
onRightClick
public boolean onRightClick(java.awt.event.MouseEvent event, int x, int y)
- Specified by:
onRightClick
in interfaceBoundableRenderable
-
markLayoutValid
public void markLayoutValid()
-
getGUIPoint
public java.awt.Point getGUIPoint(int clientX, int clientY)
- Specified by:
getGUIPoint
in interfaceBoundableRenderable
-
getRenderablePoint
public java.awt.Point getRenderablePoint(int guiX, int guiY)
- Specified by:
getRenderablePoint
in interfaceBoundableRenderable
-
getHeight
public int getHeight()
- Specified by:
getHeight
in interfaceBoundableRenderable
-
getWidth
public int getWidth()
- Specified by:
getWidth
in interfaceBoundableRenderable
-
setWidth
public void setWidth(int width)
- Specified by:
setWidth
in interfaceBoundableRenderable
-
getX
public int getX()
- Specified by:
getX
in interfaceBoundableRenderable
-
getY
public int getY()
- Specified by:
getY
in interfaceBoundableRenderable
-
contains
public boolean contains(int x, int y)
-
getBounds
public java.awt.Rectangle getBounds()
- Specified by:
getBounds
in interfaceBoundableRenderable
-
getSize
public java.awt.Dimension getSize()
- Specified by:
getSize
in interfaceBoundableRenderable
-
getModelNode
public ModelNode getModelNode()
- Specified by:
getModelNode
in interfaceBoundableRenderable
- Specified by:
getModelNode
in interfaceRenderable
-
setBounds
public void setBounds(int x, int y, int width, int height)
- Specified by:
setBounds
in interfaceBoundableRenderable
-
setX
public void setX(int x)
- Specified by:
setX
in interfaceBoundableRenderable
-
setY
public void setY(int y)
- Specified by:
setY
in interfaceBoundableRenderable
-
setHeight
public void setHeight(int height)
- Specified by:
setHeight
in interfaceBoundableRenderable
-
setOrigin
public void setOrigin(int x, int y)
- Specified by:
setOrigin
in interfaceBoundableRenderable
-
invalidateLayoutUpTree
public final void invalidateLayoutUpTree()
Invalidates this Renderable and its parent (i.e. all ancestors).- Specified by:
invalidateLayoutUpTree
in interfaceBoundableRenderable
-
isValid
protected boolean isValid()
-
relayout
public void relayout()
Invalidates the current Renderable (which invalidates its ancestors) and then requests the top level GUI container to do the layout and repaint. It's safe to call this method outside the GUI thread.- Specified by:
relayout
in interfaceBoundableRenderable
-
relayoutIfValid
public void relayoutIfValid()
-
setParent
public void setParent(RCollection parent)
- Specified by:
setParent
in interfaceBoundableRenderable
-
getParent
public RCollection getParent()
Description copied from interface:BoundableRenderable
Gets the parent where the renderable is rendered.- Specified by:
getParent
in interfaceBoundableRenderable
-
setOriginalParent
public void setOriginalParent(RCollection origParent)
- Specified by:
setOriginalParent
in interfaceBoundableRenderable
-
getOriginalParent
public RCollection getOriginalParent()
This is the parent based on the original element hierarchy.- Specified by:
getOriginalParent
in interfaceBoundableRenderable
-
getOriginalOrCurrentParent
public RCollection getOriginalOrCurrentParent()
Description copied from interface:BoundableRenderable
ReturnsBoundableRenderable.getOriginalParent()
if not null. Otherwise it returnsBoundableRenderable.getParent()
.- Specified by:
getOriginalOrCurrentParent
in interfaceBoundableRenderable
-
repaint
public void repaint(int x, int y, int width, int height)
- Specified by:
repaint
in interfaceBoundableRenderable
-
repaint
public void repaint()
- Specified by:
repaint
in interfaceBoundableRenderable
-
getBlockBackgroundColor
public java.awt.Color getBlockBackgroundColor()
-
paintTranslated
public final void paintTranslated(java.awt.Graphics g)
Description copied from interface:BoundableRenderable
Paints by either creating a new clipped graphics context corresponding to the bounds of the Renderable, or by translating the origin.- Specified by:
paintTranslated
in interfaceBoundableRenderable
- Parameters:
g
- Parent's Graphics context.
-
translateDescendentPoint
protected final java.awt.Point translateDescendentPoint(BoundableRenderable descendent, int x, int y)
-
getOrigin
public java.awt.Point getOrigin()
- Specified by:
getOrigin
in interfaceBoundableRenderable
-
getOriginRelativeTo
public java.awt.Point getOriginRelativeTo(RCollection ancestor)
- Specified by:
getOriginRelativeTo
in interfaceBoundableRenderable
-
getOrdinal
public int getOrdinal()
-
setOrdinal
public void setOrdinal(int ordinal)
-
-