de.enough.polish.ui.containerviews
Class CarouselContainerView

java.lang.Object
  extended by de.enough.polish.ui.ItemView
      extended by de.enough.polish.ui.ContainerView
          extended by de.enough.polish.ui.containerviews.FishEyeContainerView
              extended by de.enough.polish.ui.containerviews.CarouselContainerView
All Implemented Interfaces:
Serializable

public class CarouselContainerView
extends FishEyeContainerView

Arranges the items in an animated carousel.

Activate this view by specifying view-type: carousel in the ChoiceGroup's, Container's or List's style.

Further attributes are:

Since this view extends the fisheye view, you can also use all fisheyeview attributes, e.g.:

Example:

 .myList {
                view-type: carousel;
                fisheyeview-remove-text: true;
                fisheyeview-scale-start: 70%;
                fisheyeview-scale-end: 40%;
                fisheyeview-alpha-start: 200;
                fisheyeview-alpha-end: 100;
      background-color: green;
      padding: 5;
 }
 

Copyright Enough Software 2007 - 2008

 history
        Oct 11, 2007 - rob creation
 

Author:
Robert Virkus, j2mepolish@enough.de
See Also:
FishEyeContainerView

Field Summary
 
Fields inherited from class de.enough.polish.ui.containerviews.FishEyeContainerView
currentTranslucencies, endTranslucency, focusedBackground, focusedBorder, focusedDirection, focusedLabel, focusedStyle, focusedWidth, includeAllItems, isRemoveText, isShowTextInTitle, labels, maxItemHeight, maxVisibleItems, originalRgbData, originalRgbDataWidths, referenceFocusedIndex, referenceXCenterPositions, referenceYCenterPositions, scaleFactor, scaleFactorEnd, shownRgbData, shownRgbDataHeights, shownRgbDataWidths, startTranslucency, targetTranslucencies, targetXCenterPositions, targetYCenterPositions
 
Fields inherited from class de.enough.polish.ui.ContainerView
allowCycling, allowsAutoTraversal, allowsDirectSelectionByPointerEvent, appearanceMode, columnsSetting, columnsWidths, EQUAL_WIDTH_COLUMNS, focusedIndex, focusedItem, focusFirstElement, isExpandItems, isHorizontal, isSequentialTraversal, isVertical, leftXOffset, NO_COLUMNS, NORMAL_WIDTH_COLUMNS, numberOfColumns, numberOfRows, parentContainer, restartAnimation, rightXOffset, rowsHeights, STATIC_WIDTH_COLUMNS, topYOffset, yOffset
 
Fields inherited from class de.enough.polish.ui.ItemView
contentHeight, contentWidth, isFocused, isLayoutCenter, isLayoutRight, layout, paddingHorizontal, paddingVertical, parentItem
 
Constructor Summary
CarouselContainerView()
           
 
Method Summary
protected  void initContent(Item parentContainerItem, int firstLineWidth, int lineWidth)
          Initialises this item.
protected  void initItemArrangement(int lineWidth, Item[] myItems, int length, int maxWidth, int maxHeight)
          Arranges the items in this view.
protected  void paintItem(Item item, int index, int x, int y, int leftBorder, int rightBorder, int clipX, int clipY, int clipWidth, int clipHeight, javax.microedition.lcdui.Graphics g)
          Paints this item at the specified position.
protected  void setStyle(Style style)
          Sets the style for this view.
 
Methods inherited from class de.enough.polish.ui.containerviews.FishEyeContainerView
animate, calculateCurrent, defocus, focus, focusItem, getDistance, getScaleFactor, paintContent, releaseResources
 
Methods inherited from class de.enough.polish.ui.ContainerView
focusItem, focusItem, getItemRelativeY, getNextFocusableItem, getNextItem, getParentRelativeY, getScreen, handleKeyPressed, isInBottomRow, isLayoutExpand, isValid, paintContent, scroll, shiftFocus, showNotify
 
Methods inherited from class de.enough.polish.ui.ItemView
addFullRepaintRegion, animate, handleKeyReleased, handlePointerPressed, handlePointerReleased, hideNotify, initContentByParent, notifyItemPressedEnd, notifyItemPressedStart, paintBackground, paintBorder, paintContentByParent, removeItemBackground, removeItemBorder, removeParentBackground, removeParentBorder, removeViewFromParent, requestInit
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

CarouselContainerView

public CarouselContainerView()
Method Detail

initItemArrangement

protected void initItemArrangement(int lineWidth,
                                   Item[] myItems,
                                   int length,
                                   int maxWidth,
                                   int maxHeight)
Description copied from class: FishEyeContainerView
Arranges the items in this view.

Overrides:
initItemArrangement in class FishEyeContainerView
Parameters:
lineWidth - the available line width
myItems - all items
length - the number of items
maxWidth - the maximum width of one item
maxHeight - the maximum height of one item

initContent

protected void initContent(Item parentContainerItem,
                           int firstLineWidth,
                           int lineWidth)
Description copied from class: ContainerView
Initialises this item. The implementation needs to calculate and set the contentWidth and contentHeight fields. The style of the focused item has already been set.

Overrides:
initContent in class FishEyeContainerView
Parameters:
parentContainerItem - the Container which uses this view, use parent.getItems() for retrieving all items.
firstLineWidth - the maximum width of the first line
lineWidth - the maximum width of any following lines
See Also:
ItemView.contentWidth, ItemView.contentHeight

setStyle

protected void setStyle(Style style)
Description copied from class: ContainerView
Sets the style for this view. The style can include additional parameters for the view. Subclasses should call super.setStyle(style) first.

Overrides:
setStyle in class FishEyeContainerView
Parameters:
style - the style

paintItem

protected void paintItem(Item item,
                         int index,
                         int x,
                         int y,
                         int leftBorder,
                         int rightBorder,
                         int clipX,
                         int clipY,
                         int clipWidth,
                         int clipHeight,
                         javax.microedition.lcdui.Graphics g)
Description copied from class: ContainerView
Paints this item at the specified position. Subclasses can override this method for taking advantage of the table support of the basic ContainerView class. When the item is outside of the given clipping area, it will not be painted.

Overrides:
paintItem in class FishEyeContainerView
Parameters:
item - the item that needs to be painted
index - the index of the item
x - the horizontal position of the item
y - the vertical position of the item
leftBorder - the left border
rightBorder - the right border
clipX - absolute horizontal clipping start
clipY - absolute verical clipping start
clipWidth - clipping width
clipHeight - clipping height
g - the graphics context