Package org.lobobrowser.html.renderer
Class RRelative
- java.lang.Object
-
- org.lobobrowser.html.renderer.RRelative
-
- All Implemented Interfaces:
BoundableRenderable,RCollection,Renderable
public class RRelative extends java.lang.Object
-
-
Field Summary
Fields Modifier and Type Field Description protected RenderableContainercontainerintheightprotected booleanlayoutUpTreeCanBeInvalidatedStarts as true because ancestors could be invalidated.protected static java.util.logging.Loggerloggerprotected ModelNodemodelNodeprotected RCollectionoriginalParentParent for invalidation.protected RCollectionparentParent for graphics coordinates.protected static java.awt.ColorSELECTION_COLORprotected static java.awt.ColorSELECTION_XORintwidthintxinty-
Fields inherited from interface org.lobobrowser.html.renderer.Renderable
EMPTY_ARRAY
-
-
Constructor Summary
Constructors Constructor Description RRelative(RenderableContainer container, ModelNode modelNode, RElement child, int xoffset, int yoffset)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidassignDimension()voidblur()booleancontains(int x, int y)booleanextractSelectionText(java.lang.StringBuffer buffer, boolean inSelection, RenderableSpot startPoint, RenderableSpot endPoint)voidfocus()java.awt.ColorgetBlockBackgroundColor()java.awt.RectanglegetBounds()RElementgetElement()FloatingInfogetExportableFloatingInfo()java.awt.PointgetGUIPoint(int clientX, int clientY)intgetHeight()RenderableSpotgetLowestRenderableSpot(int x, int y)ModelNodegetModelNode()intgetOrdinal()java.awt.PointgetOrigin()RCollectiongetOriginalOrCurrentParent()ReturnsBoundableRenderable.getOriginalParent()if not null.RCollectiongetOriginalParent()This is the parent based on the original element hierarchy.java.awt.PointgetOriginRelativeTo(RCollection ancestor)RCollectiongetParent()Gets the parent where the renderable is rendered.BoundableRenderablegetRenderable(int x, int y)java.awt.PointgetRenderablePoint(int guiX, int guiY)java.util.IteratorgetRenderables()Gets the collection ofRenderablechildren.java.awt.DimensiongetSize()intgetWidth()intgetX()intgetXOffset()intgetY()intgetYOffset()intgetZIndex()voidinvalidateLayoutDeep()Invalidates layout in all descendents.protected voidinvalidateLayoutLocal()voidinvalidateLayoutUpTree()Invalidates this Renderable and its parent (i.e.booleanisContainedByNode()Returns true if the renderable is fully contained by its modelNode, but said modelNode does not fully contain an ancestor renderable.protected booleanisValid()voidmarkLayoutValid()booleanonDoubleClick(java.awt.event.MouseEvent event, int x, int y)booleanonMouseClick(java.awt.event.MouseEvent event, int x, int y)booleanonMouseDisarmed(java.awt.event.MouseEvent event)voidonMouseMoved(java.awt.event.MouseEvent event, int x, int y, boolean triggerEvent, ModelNode limit)voidonMouseOut(java.awt.event.MouseEvent event, int x, int y, ModelNode limit)booleanonMousePressed(java.awt.event.MouseEvent event, int x, int y)Returns false if the event is consumed.booleanonMouseReleased(java.awt.event.MouseEvent event, int x, int y)booleanonRightClick(java.awt.event.MouseEvent event, int x, int y)voidpaint(java.awt.Graphics g)booleanpaintSelection(java.awt.Graphics g, boolean inSelection, RenderableSpot startPoint, RenderableSpot endPoint)Asks the Renderable to paint the selection between two points.voidpaintTranslated(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.voidrelayout()Invalidates the current Renderable (which invalidates its ancestors) and then requests the top level GUI container to do the layout and repaint.voidrelayoutIfValid()voidrepaint()voidrepaint(int x, int y, int width, int height)voidsetBounds(int x, int y, int width, int height)voidsetHeight(int height)voidsetOrdinal(int ordinal)voidsetOrigin(int x, int y)voidsetOriginalParent(RCollection origParent)voidsetParent(RCollection parent)voidsetWidth(int width)voidsetX(int x)voidsetY(int y)protected java.awt.PointtranslateDescendentPoint(BoundableRenderable descendent, int x, int y)voidupdateWidgetBounds(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, finalize, getClass, hashCode, notify, notifyAll, toString, 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, getZIndex, invalidateLayoutUpTree, paintTranslated, relayout, repaint, repaint, setBounds, setHeight, setOrdinal, setOrigin, setOriginalParent, setParent, setWidth, setX, setY
-
-
-
-
Field Detail
-
logger
protected static final java.util.logging.Logger logger
-
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
-
RRelative
public RRelative(RenderableContainer container, ModelNode modelNode, RElement child, int xoffset, int yoffset)
-
-
Method Detail
-
assignDimension
public void assignDimension()
-
getExportableFloatingInfo
public FloatingInfo getExportableFloatingInfo()
-
getElement
public RElement getElement()
-
getXOffset
public int getXOffset()
-
getYOffset
public int getYOffset()
-
getRenderables
public java.util.Iterator getRenderables()
Description copied from interface:RCollectionGets the collection ofRenderablechildren.
-
invalidateLayoutLocal
protected void invalidateLayoutLocal()
-
getLowestRenderableSpot
public RenderableSpot getLowestRenderableSpot(int x, int y)
-
isContainedByNode
public boolean isContainedByNode()
Description copied from interface:BoundableRenderableReturns true if the renderable is fully contained by its modelNode, but said modelNode does not fully contain an ancestor renderable.
-
onDoubleClick
public boolean onDoubleClick(java.awt.event.MouseEvent event, int x, int y)
-
onMouseClick
public boolean onMouseClick(java.awt.event.MouseEvent event, int x, int y)
-
onMouseDisarmed
public boolean onMouseDisarmed(java.awt.event.MouseEvent event)
-
onMousePressed
public boolean onMousePressed(java.awt.event.MouseEvent event, int x, int y)Description copied from interface:BoundableRenderableReturns false if the event is consumed. True to propagate further.
-
onMouseReleased
public boolean onMouseReleased(java.awt.event.MouseEvent event, int x, int y)
-
paint
public void paint(java.awt.Graphics g)
-
focus
public void focus()
- Specified by:
focusin interfaceRCollection
-
blur
public void blur()
- Specified by:
blurin interfaceRCollection
-
updateWidgetBounds
public void updateWidgetBounds(int guiX, int guiY)Updates bounds of all descendent's GUI components, based on root bounds.- Specified by:
updateWidgetBoundsin interfaceRCollection
-
paintSelection
public boolean paintSelection(java.awt.Graphics g, boolean inSelection, RenderableSpot startPoint, RenderableSpot endPoint)Description copied from interface:BoundableRenderableAsks the Renderable to paint the selection between two points. Nothing will be done if the points are outside the Renderable.- Specified by:
paintSelectionin interfaceBoundableRenderable- Returns:
- True iff it's in selection when finished painting.
-
extractSelectionText
public boolean extractSelectionText(java.lang.StringBuffer buffer, boolean inSelection, RenderableSpot startPoint, RenderableSpot endPoint)- Specified by:
extractSelectionTextin interfaceBoundableRenderable
-
invalidateLayoutDeep
public void invalidateLayoutDeep()
Description copied from interface:RCollectionInvalidates layout in all descendents.- Specified by:
invalidateLayoutDeepin interfaceRCollection
-
onMouseMoved
public void onMouseMoved(java.awt.event.MouseEvent event, int x, int y, boolean triggerEvent, ModelNode limit)- Specified by:
onMouseMovedin interfaceBoundableRenderable
-
onMouseOut
public void onMouseOut(java.awt.event.MouseEvent event, int x, int y, ModelNode limit)- Specified by:
onMouseOutin interfaceBoundableRenderable
-
getRenderable
public BoundableRenderable getRenderable(int x, int y)
-
onRightClick
public boolean onRightClick(java.awt.event.MouseEvent event, int x, int y)- Specified by:
onRightClickin interfaceBoundableRenderable
-
markLayoutValid
public void markLayoutValid()
-
getGUIPoint
public java.awt.Point getGUIPoint(int clientX, int clientY)- Specified by:
getGUIPointin interfaceBoundableRenderable
-
getRenderablePoint
public java.awt.Point getRenderablePoint(int guiX, int guiY)- Specified by:
getRenderablePointin interfaceBoundableRenderable
-
getHeight
public int getHeight()
- Specified by:
getHeightin interfaceBoundableRenderable
-
getWidth
public int getWidth()
- Specified by:
getWidthin interfaceBoundableRenderable
-
setWidth
public void setWidth(int width)
- Specified by:
setWidthin interfaceBoundableRenderable
-
getX
public int getX()
- Specified by:
getXin interfaceBoundableRenderable
-
getY
public int getY()
- Specified by:
getYin interfaceBoundableRenderable
-
contains
public boolean contains(int x, int y)
-
getBounds
public java.awt.Rectangle getBounds()
- Specified by:
getBoundsin interfaceBoundableRenderable
-
getSize
public java.awt.Dimension getSize()
- Specified by:
getSizein interfaceBoundableRenderable
-
getModelNode
public ModelNode getModelNode()
- Specified by:
getModelNodein interfaceBoundableRenderable- Specified by:
getModelNodein interfaceRenderable
-
setBounds
public void setBounds(int x, int y, int width, int height)- Specified by:
setBoundsin interfaceBoundableRenderable
-
setX
public void setX(int x)
- Specified by:
setXin interfaceBoundableRenderable
-
setY
public void setY(int y)
- Specified by:
setYin interfaceBoundableRenderable
-
setHeight
public void setHeight(int height)
- Specified by:
setHeightin interfaceBoundableRenderable
-
setOrigin
public void setOrigin(int x, int y)- Specified by:
setOriginin interfaceBoundableRenderable
-
invalidateLayoutUpTree
public final void invalidateLayoutUpTree()
Invalidates this Renderable and its parent (i.e. all ancestors).- Specified by:
invalidateLayoutUpTreein 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:
relayoutin interfaceBoundableRenderable
-
relayoutIfValid
public void relayoutIfValid()
-
setParent
public void setParent(RCollection parent)
- Specified by:
setParentin interfaceBoundableRenderable
-
getParent
public RCollection getParent()
Description copied from interface:BoundableRenderableGets the parent where the renderable is rendered.- Specified by:
getParentin interfaceBoundableRenderable
-
setOriginalParent
public void setOriginalParent(RCollection origParent)
- Specified by:
setOriginalParentin interfaceBoundableRenderable
-
getOriginalParent
public RCollection getOriginalParent()
This is the parent based on the original element hierarchy.- Specified by:
getOriginalParentin interfaceBoundableRenderable
-
getOriginalOrCurrentParent
public RCollection getOriginalOrCurrentParent()
Description copied from interface:BoundableRenderableReturnsBoundableRenderable.getOriginalParent()if not null. Otherwise it returnsBoundableRenderable.getParent().- Specified by:
getOriginalOrCurrentParentin interfaceBoundableRenderable
-
repaint
public void repaint(int x, int y, int width, int height)- Specified by:
repaintin interfaceBoundableRenderable
-
repaint
public void repaint()
- Specified by:
repaintin interfaceBoundableRenderable
-
getBlockBackgroundColor
public java.awt.Color getBlockBackgroundColor()
-
paintTranslated
public final void paintTranslated(java.awt.Graphics g)
Description copied from interface:BoundableRenderablePaints by either creating a new clipped graphics context corresponding to the bounds of the Renderable, or by translating the origin.- Specified by:
paintTranslatedin 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:
getOriginin interfaceBoundableRenderable
-
getOriginRelativeTo
public java.awt.Point getOriginRelativeTo(RCollection ancestor)
- Specified by:
getOriginRelativeToin interfaceBoundableRenderable
-
getOrdinal
public int getOrdinal()
-
getZIndex
public int getZIndex()
-
setOrdinal
public void setOrdinal(int ordinal)
-
-