Class Widget
-
- All Implemented Interfaces:
-
com.androidplot.ui.BoxModelable,com.androidplot.ui.Resizable
public abstract class Widget implements BoxModelable, Resizable
A Widget is a graphical sub-element of a Plot that can be positioned relative to the bounds of the Plot.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description public enumWidget.Rotation
-
Field Summary
Fields Modifier and Type Field Description public PaintborderPaintpublic PaintbackgroundPaintpublic Sizesizepublic DisplayDimensionswidgetDimensionspublic booleanisVisiblepublic PositionMetricspositionMetricspublic Widget.Rotationrotation
-
Constructor Summary
Constructors Constructor Description Widget(LayoutManager layoutManager, SizeMetric heightMetric, SizeMetric widthMetric)Widget(LayoutManager layoutManager, Size size)
-
Method Summary
Modifier and Type Method Description PaintgetBorderPaint()voidsetBorderPaint(@Nullable() Paint borderPaint)PaintgetBackgroundPaint()voidsetBackgroundPaint(@Nullable() Paint backgroundPaint)SizegetSize()voidsetSize(@NonNull() Size size)DisplayDimensionsgetWidgetDimensions()booleanisVisible()voidsetVisible(boolean visible)PositionMetricsgetPositionMetrics()voidsetPositionMetrics(@NonNull() PositionMetrics positionMetrics)Widget.RotationgetRotation()voidsetRotation(@NonNull() Widget.Rotation rotation)AnchorgetAnchor()voidsetAnchor(@NonNull() Anchor anchor)voidposition(float x, @NonNull() HorizontalPositioning horizontalPositioning, float y, @NonNull() VerticalPositioning verticalPositioning)Same as position but with the anchor parameter defaulted to the upper left corner. voidposition(float x, @NonNull() HorizontalPositioning horizontalPositioning, float y, @NonNull() VerticalPositioning verticalPositioning, @NonNull() Anchor anchor)voidonPostInit()Can be overridden by subclasses to handle any final resizing etc. booleancontainsPoint(@NonNull() PointF point)Determines whether or not point lies within this Widget. voidsetWidth(float width)voidsetWidth(float width, @NonNull() SizeMode layoutType)voidsetHeight(float height)voidsetHeight(float height, @NonNull() SizeMode layoutType)SizeMetricgetWidthMetric()SizeMetricgetHeightMetric()floatgetWidthPix(float size)floatgetHeightPix(float size)RectFgetMarginatedRect(@NonNull() RectF widgetRect)Returns a RectF instance describing the inner edge of the margin layer. RectFgetPaddedRect(@NonNull() RectF widgetMarginRect)Returns a RectF instance describing the inner edge of the padding layer. voidsetMarginRight(float marginRight)voidsetMargins(float left, float top, float right, float bottom)voidsetPadding(float left, float top, float right, float bottom)floatgetMarginTop()voidsetMarginTop(float marginTop)floatgetMarginBottom()floatgetPaddingLeft()voidsetPaddingLeft(float paddingLeft)floatgetPaddingTop()voidsetPaddingTop(float paddingTop)floatgetPaddingRight()voidsetPaddingRight(float paddingRight)floatgetPaddingBottom()voidsetPaddingBottom(float paddingBottom)voidsetMarginBottom(float marginBottom)floatgetMarginLeft()voidsetMarginLeft(float marginLeft)floatgetMarginRight()synchronized voidrefreshLayout()Causes the pixel dimensions used for rendering this Widget to be recalculated. synchronized voidlayout(@NonNull() DisplayDimensions plotDimensions)Called when a change to the class' dimensions is made. static PointFcalculateCoordinates(float height, float width, @NonNull() RectF viewRect, @NonNull() PositionMetrics metrics)static PointFgetAnchorOffset(float width, float height, @NonNull() Anchor anchor)static PointFgetAnchorCoordinates(@NonNull() RectF widgetRect, @NonNull() Anchor anchor)static PointFgetAnchorCoordinates(float x, float y, float width, float height, @NonNull() Anchor anchor)voiddraw(@NonNull() Canvas canvas)booleanisClippingEnabled()voidsetClippingEnabled(boolean clippingEnabled)-
-
Constructor Detail
-
Widget
Widget(LayoutManager layoutManager, SizeMetric heightMetric, SizeMetric widthMetric)
-
Widget
Widget(LayoutManager layoutManager, Size size)
-
-
Method Detail
-
getBorderPaint
@Nullable() Paint getBorderPaint()
-
setBorderPaint
void setBorderPaint(@Nullable() Paint borderPaint)
-
getBackgroundPaint
@Nullable() Paint getBackgroundPaint()
-
setBackgroundPaint
void setBackgroundPaint(@Nullable() Paint backgroundPaint)
-
getWidgetDimensions
@NonNull() DisplayDimensions getWidgetDimensions()
-
isVisible
boolean isVisible()
-
setVisible
void setVisible(boolean visible)
-
getPositionMetrics
@Nullable() PositionMetrics getPositionMetrics()
-
setPositionMetrics
void setPositionMetrics(@NonNull() PositionMetrics positionMetrics)
-
getRotation
@NonNull() Widget.Rotation getRotation()
-
setRotation
void setRotation(@NonNull() Widget.Rotation rotation)
-
position
void position(float x, @NonNull() HorizontalPositioning horizontalPositioning, float y, @NonNull() VerticalPositioning verticalPositioning)
Same as position but with the anchor parameter defaulted to the upper left corner.
-
position
void position(float x, @NonNull() HorizontalPositioning horizontalPositioning, float y, @NonNull() VerticalPositioning verticalPositioning, @NonNull() Anchor anchor)
- Parameters:
x- X-Coordinate of the top left corner of element.horizontalPositioning- LayoutType to use when orienting this element's X-Coordinate.y- Y_VALS_ONLY-Coordinate of the top-left corner of element.verticalPositioning- LayoutType to use when orienting this element's Y_VALS_ONLY-Coordinate.anchor- The point of reference used by this positioning call.
-
onPostInit
void onPostInit()
Can be overridden by subclasses to handle any final resizing etc. that can only be done after XML configuration etc. has completed.
-
containsPoint
boolean containsPoint(@NonNull() PointF point)
Determines whether or not point lies within this Widget.
-
setWidth
void setWidth(float width)
-
setHeight
void setHeight(float height)
-
getWidthMetric
@NonNull() SizeMetric getWidthMetric()
-
getHeightMetric
@NonNull() SizeMetric getHeightMetric()
-
getWidthPix
float getWidthPix(float size)
-
getHeightPix
float getHeightPix(float size)
-
getMarginatedRect
@NonNull() RectF getMarginatedRect(@NonNull() RectF widgetRect)
Returns a RectF instance describing the inner edge of the margin layer.
-
getPaddedRect
@NonNull() RectF getPaddedRect(@NonNull() RectF widgetMarginRect)
Returns a RectF instance describing the inner edge of the padding layer.
-
setMarginRight
void setMarginRight(float marginRight)
-
setMargins
void setMargins(float left, float top, float right, float bottom)
-
setPadding
void setPadding(float left, float top, float right, float bottom)
-
getMarginTop
float getMarginTop()
-
setMarginTop
void setMarginTop(float marginTop)
-
getMarginBottom
float getMarginBottom()
-
getPaddingLeft
float getPaddingLeft()
-
setPaddingLeft
void setPaddingLeft(float paddingLeft)
-
getPaddingTop
float getPaddingTop()
-
setPaddingTop
void setPaddingTop(float paddingTop)
-
getPaddingRight
float getPaddingRight()
-
setPaddingRight
void setPaddingRight(float paddingRight)
-
getPaddingBottom
float getPaddingBottom()
-
setPaddingBottom
void setPaddingBottom(float paddingBottom)
-
setMarginBottom
void setMarginBottom(float marginBottom)
-
getMarginLeft
float getMarginLeft()
-
setMarginLeft
void setMarginLeft(float marginLeft)
-
getMarginRight
float getMarginRight()
-
refreshLayout
synchronized void refreshLayout()
Causes the pixel dimensions used for rendering this Widget to be recalculated. Should be called any time a parameter that factors into this Widget's size or position is altered.
-
layout
synchronized void layout(@NonNull() DisplayDimensions plotDimensions)
Called when a change to the class' dimensions is made. This method is responsible for cascading calls to update for any logical children of this class, for example the Plot class is responsible for updating the LayoutManager. Note that while dims is marked final in this interface, the compiler will not enforce it. Implementors of this method should take care not to make changes to dims as this will affect parent Resizables in likely undesired ways.
-
calculateCoordinates
@NonNull() static PointF calculateCoordinates(float height, float width, @NonNull() RectF viewRect, @NonNull() PositionMetrics metrics)
-
getAnchorOffset
@NonNull() static PointF getAnchorOffset(float width, float height, @NonNull() Anchor anchor)
-
getAnchorCoordinates
@NonNull() static PointF getAnchorCoordinates(@NonNull() RectF widgetRect, @NonNull() Anchor anchor)
-
getAnchorCoordinates
@NonNull() static PointF getAnchorCoordinates(float x, float y, float width, float height, @NonNull() Anchor anchor)
-
isClippingEnabled
boolean isClippingEnabled()
-
setClippingEnabled
void setClippingEnabled(boolean clippingEnabled)
-
-
-
-