Class BoxPaneSkin
- java.lang.Object
-
- org.apache.pivot.wtk.skin.ComponentSkin
-
- org.apache.pivot.wtk.skin.ContainerSkin
-
- org.apache.pivot.wtk.skin.BoxPaneSkin
-
- All Implemented Interfaces:
BoxPaneListener,ComponentKeyListener,ComponentListener,ComponentMouseButtonListener,ComponentMouseListener,ComponentMouseWheelListener,ComponentStateListener,ComponentTooltipListener,ConstrainedVisual,ContainerListener,ContainerMouseListener,Skin,Visual
public class BoxPaneSkin extends ContainerSkin implements BoxPaneListener
Box pane skin.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.apache.pivot.wtk.skin.ContainerSkin
ContainerSkin.IndexFocusTraversalPolicy
-
Nested classes/interfaces inherited from interface org.apache.pivot.wtk.BoxPaneListener
BoxPaneListener.Listeners
-
Nested classes/interfaces inherited from interface org.apache.pivot.wtk.ComponentKeyListener
ComponentKeyListener.Adapter, ComponentKeyListener.Listeners
-
Nested classes/interfaces inherited from interface org.apache.pivot.wtk.ComponentListener
ComponentListener.Adapter, ComponentListener.Listeners
-
Nested classes/interfaces inherited from interface org.apache.pivot.wtk.ComponentMouseButtonListener
ComponentMouseButtonListener.Adapter, ComponentMouseButtonListener.Listeners
-
Nested classes/interfaces inherited from interface org.apache.pivot.wtk.ComponentMouseListener
ComponentMouseListener.Adapter, ComponentMouseListener.Listeners
-
Nested classes/interfaces inherited from interface org.apache.pivot.wtk.ComponentMouseWheelListener
ComponentMouseWheelListener.Listeners
-
Nested classes/interfaces inherited from interface org.apache.pivot.wtk.ComponentStateListener
ComponentStateListener.Adapter, ComponentStateListener.Listeners
-
Nested classes/interfaces inherited from interface org.apache.pivot.wtk.ComponentTooltipListener
ComponentTooltipListener.Listeners
-
Nested classes/interfaces inherited from interface org.apache.pivot.wtk.ContainerListener
ContainerListener.Adapter, ContainerListener.Listeners
-
Nested classes/interfaces inherited from interface org.apache.pivot.wtk.ContainerMouseListener
ContainerMouseListener.Adapter, ContainerMouseListener.Listeners
-
-
Constructor Summary
Constructors Constructor Description BoxPaneSkin()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description intgetBaseline(int width, int height)Should be implemented in every subclass.booleangetFill()HorizontalAlignmentgetHorizontalAlignment()InsetsgetPadding()intgetPreferredHeight(int width)Returns the visual's preferred height given the provided width constraint.DimensionsgetPreferredSize()Returns the visual's unconstrained preferred size.intgetPreferredWidth(int height)Returns the visual's preferred width given the provided height constraint.intgetSpacing()VerticalAlignmentgetVerticalAlignment()voidinstall(Component component)Must be implemented in every subclass in order to do component-specific operations at instantiation time, but every subclass must call this superclass method to setup the necessary listeners, etc.voidlayout()If the component on which the skin is installed is a container, lays out the container's children.voidorientationChanged(BoxPane boxPane)Called when a box pane's orientation has changed.voidsetFill(boolean fill)Sets whether the BoxPane's components fill to the edges of the pane.voidsetHorizontalAlignment(HorizontalAlignment horizontalAlignment)Sets the horizontal alignment of the BoxPane's components within the pane.voidsetPadding(int padding)Sets the amount of space to leave between the edge of the BoxPane and its components, uniformly on all four edges.voidsetPadding(java.lang.Number padding)Sets the amount of space to leave between the edge of the BoxPane and its components, uniformly on all four edges.voidsetPadding(java.lang.String padding)Sets the amount of space to leave between the edge of the BoxPane and its components.voidsetPadding(Dictionary<java.lang.String,?> padding)Sets the amount of space to leave between the edge of the BoxPane and its components.voidsetPadding(Sequence<?> padding)Sets the amount of space to leave between the edge of the BoxPane and its components.voidsetPadding(Insets padding)Sets the amount of space to leave between the edge of the BoxPane and its components.voidsetSpacing(int spacing)Sets the amount of space to leave between the BoxPane's components.voidsetSpacing(java.lang.Number spacing)Sets the amount of space to leave between the BoxPane's components.voidsetVerticalAlignment(VerticalAlignment verticalAlignment)Sets the vertical alignment of the BoxPane's components within the pane.-
Methods inherited from class org.apache.pivot.wtk.skin.ContainerSkin
componentInserted, componentMoved, componentsRemoved, focusTraversalPolicyChanged, getBackgroundColor, getBackgroundPaint, isFocusable, isOpaque, mouseDown, mouseMove, mouseUp, mouseWheel, paint, setBackgroundColor, setBackgroundColor, setBackgroundColor, setBackgroundPaint, setBackgroundPaint, setBackgroundPaint
-
Methods inherited from class org.apache.pivot.wtk.skin.ComponentSkin
colorFromObject, colorFromObject, colorFromObject, colorFromObject, currentTheme, cursorChanged, decodeFont, defaultBackgroundColor, defaultForegroundColor, dragSourceChanged, dropTargetChanged, enabledChanged, focusedChanged, fontFromObject, getBaseline, getColor, getComponent, getFocusRectangleStroke, getHeight, getSize, getTextInputMethodListener, getThemeFont, getWidth, heightLimitsChanged, invalidateComponent, keyPressed, keyReleased, keyTyped, locationChanged, menuHandlerChanged, mouseClick, mouseDown, mouseMove, mouseOut, mouseOver, mouseUp, mouseWheel, nameChanged, parentChanged, preferredSizeChanged, repaintComponent, repaintComponent, repaintComponent, repaintComponent, repaintComponent, setDefaultStyles, setSize, sizeChanged, themeHasThickFocusRectangle, themeHasTransitionEnabled, themeIsDark, themeIsFlat, tooltipDelayChanged, tooltipTextChanged, tooltipTriggered, visibleChanged, widthLimitsChanged
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.pivot.wtk.ConstrainedVisual
setSize
-
-
-
-
Method Detail
-
install
public void install(Component component)
Description copied from class:ComponentSkinMust be implemented in every subclass in order to do component-specific operations at instantiation time, but every subclass must call this superclass method to setup the necessary listeners, etc.- Specified by:
installin interfaceSkin- Overrides:
installin classContainerSkin- Parameters:
component- The component to which the skin is being attached.
-
getPreferredWidth
public int getPreferredWidth(int height)
Description copied from interface:ConstrainedVisualReturns the visual's preferred width given the provided height constraint.- Specified by:
getPreferredWidthin interfaceConstrainedVisual- Overrides:
getPreferredWidthin classContainerSkin- Parameters:
height- The height by which to constrain the preferred width, or-1for no constraint.- Returns:
- The preferred width given the height constraint.
-
getPreferredHeight
public int getPreferredHeight(int width)
Description copied from interface:ConstrainedVisualReturns the visual's preferred height given the provided width constraint.- Specified by:
getPreferredHeightin interfaceConstrainedVisual- Overrides:
getPreferredHeightin classContainerSkin- Parameters:
width- The width by which to constrain the preferred height, or-1for no constraint.- Returns:
- The preferred height given the width constraint.
-
getPreferredSize
public Dimensions getPreferredSize()
Description copied from interface:ConstrainedVisualReturns the visual's unconstrained preferred size.- Specified by:
getPreferredSizein interfaceConstrainedVisual- Overrides:
getPreferredSizein classComponentSkin- Returns:
- The preferred size (width and height) of this component.
Depending on the component this can be a static value or derived (as for a container) from its subcomponents, etc.
The default implementation simply calls
ConstrainedVisual.getPreferredWidth(int)andConstrainedVisual.getPreferredHeight(int).
-
getBaseline
public int getBaseline(int width, int height)Description copied from class:ComponentSkinShould be implemented in every subclass.The default implementation here simply returns -1 (no baseline).
- Specified by:
getBaselinein interfaceConstrainedVisual- Overrides:
getBaselinein classComponentSkin- Parameters:
width- Constrained width to compute the baseline for.height- Constrained height to compute the baseline for.- Returns:
- The baseline relative to the origin of this visual, or
-1if this visual does not have a baseline.
-
layout
public void layout()
Description copied from interface:SkinIf the component on which the skin is installed is a container, lays out the container's children.
-
getHorizontalAlignment
public HorizontalAlignment getHorizontalAlignment()
- Returns:
- The horizontal alignment of the BoxPane's components within the pane.
-
setHorizontalAlignment
public void setHorizontalAlignment(HorizontalAlignment horizontalAlignment)
Sets the horizontal alignment of the BoxPane's components within the pane.If the orientation of the pane is HORIZONTAL, this means the collective alignment all the components as group, which are still laid out close together according to the value of the
spacingstyle.If the orientation of the pane is VERTICAL, this means the alignment of each individual component within the pane. It has no effect if the
fillstyle is true.- Parameters:
horizontalAlignment- The new horizontal alignment for our children.
-
getVerticalAlignment
public VerticalAlignment getVerticalAlignment()
- Returns:
- The vertical alignment of the BoxPane's components within the pane.
-
setVerticalAlignment
public void setVerticalAlignment(VerticalAlignment verticalAlignment)
Sets the vertical alignment of the BoxPane's components within the pane.If the orientation of the pane is VERTICAL, this means the collective alignment all the components as group, which are still laid out close together according to the value of the
spacingstyle.If the orientation of the pane is HORIZONTAL, this means the alignment of each individual component within the pane. It has no effect if the
fillstyle is true.- Parameters:
verticalAlignment- The new horizontal alignment for our children.
-
getPadding
public Insets getPadding()
- Returns:
- The amount of space between the edge of the BoxPane and its components.
-
setPadding
public void setPadding(Insets padding)
Sets the amount of space to leave between the edge of the BoxPane and its components.- Parameters:
padding- The new padding values for all edges.
-
setPadding
public final void setPadding(Dictionary<java.lang.String,?> padding)
Sets the amount of space to leave between the edge of the BoxPane and its components.- Parameters:
padding- A dictionary with keys in the set {top, left, bottom, right}.
-
setPadding
public final void setPadding(Sequence<?> padding)
Sets the amount of space to leave between the edge of the BoxPane and its components.- Parameters:
padding- A sequence with values in the order [top, left, bottom, right].
-
setPadding
public final void setPadding(int padding)
Sets the amount of space to leave between the edge of the BoxPane and its components, uniformly on all four edges.- Parameters:
padding- The new padding value for all edges.
-
setPadding
public final void setPadding(java.lang.Number padding)
Sets the amount of space to leave between the edge of the BoxPane and its components, uniformly on all four edges.- Parameters:
padding- The integer value to use for padding on all edges.
-
setPadding
public final void setPadding(java.lang.String padding)
Sets the amount of space to leave between the edge of the BoxPane and its components.- Parameters:
padding- A string containing an integer or a JSON dictionary with keys left, top, bottom, and/or right.
-
getSpacing
public int getSpacing()
- Returns:
- The amount of space between the BoxPane's components.
-
setSpacing
public void setSpacing(int spacing)
Sets the amount of space to leave between the BoxPane's components.- Parameters:
spacing- The new amount of spacing between components.
-
setSpacing
public final void setSpacing(java.lang.Number spacing)
Sets the amount of space to leave between the BoxPane's components.- Parameters:
spacing- The new amount of spacing to use between components.
-
getFill
public boolean getFill()
- Returns:
- A value indicating whether the BoxPane's components fill the available space in the pane in the dimension orthogonal to its orientation.
-
setFill
public void setFill(boolean fill)
Sets whether the BoxPane's components fill to the edges of the pane.- Parameters:
fill- If true, the components are given all the available space in the dimension orthogonal to the pane's orientation (e.g., vertically in a BoxPane with orientation=horizontal). It has no effect on the layout of components in the direction of the pane's orientation, which are always given exactly their preferred size. If false, the pane's components are laid out to their preferred size, regardless of the size of the BoxPane. Their alignment along the axis orthogonal to the pane's orientation is controlled by the corresponding alignment style (e.g., verticalAlignment in a BoxPane with orientation=horizontal).Note that to Scale Up Images, other that fill=true it will be needed to set even the preferredWidth/preferredHeight as with container preferredHeight/preferredWidth just set, depending on the pane's orientation.
-
orientationChanged
public void orientationChanged(BoxPane boxPane)
Description copied from interface:BoxPaneListenerCalled when a box pane's orientation has changed.- Specified by:
orientationChangedin interfaceBoxPaneListener- Parameters:
boxPane- The box pane whose orientation has changed.
-
-