CEikSnakingListBox Class Reference

#include <mw/eiklbx.h>

class CEikSnakingListBox : public CEikListBox

Inherits from

Public Member Functions
CEikSnakingListBox()
~CEikSnakingListBox()
IMPORT_C TIntColumnWidth()
virtual IMPORT_C voidHandlePointerEventL(const TPointerEvent &)
virtual IMPORT_C CListBoxView *MakeViewClassInstanceL()
IMPORT_C voidSetColumnWidth(TInt)
virtual IMPORT_C voidSetTopItemIndex(TInt)
Protected Member Functions
virtual IMPORT_C TIntAdjustRectHeightToWholeNumberOfItems(TRect &)
virtual IMPORT_C voidAdjustTopItemIndex()
virtual IMPORT_C voidGetColorUseListL(CArrayFix< TCoeColorUse > &)
virtual IMPORT_C voidHandleDragEventL(TPoint)
virtual IMPORT_C voidHandleLeftArrowKeyL(CListBoxView::TSelectionMode)
virtual IMPORT_C voidHandleResourceChange(TInt)
virtual IMPORT_C voidHandleRightArrowKeyL(CListBoxView::TSelectionMode)
virtual IMPORT_C voidHandleViewRectSizeChangeL()
virtual IMPORT_C TIntHorizScrollGranularityInPixels()
virtual IMPORT_C TIntHorizontalNudgeValue()
IMPORT_C voidMoveToNextOrPreviousItemL(TPoint)
virtual IMPORT_C voidRestoreClientRectFromViewRect(TRect &)
virtual IMPORT_C voidSizeChanged()
Inherited Attributes
CCoeControl::iCoeEnv
CCoeControl::iContext
CCoeControl::iPosition
CCoeControl::iSize
CEikBorderedControl::iBorder
CEikListBox::iItemDrawer
CEikListBox::iItemHeight
CEikListBox::iLaunchingButton
CEikListBox::iListBoxFlags
CEikListBox::iListBoxObserver
CEikListBox::iModel
CEikListBox::iRequiredHeightInNumOfItems
CEikListBox::iSBFrame
CEikListBox::iSBFrameOwned
CEikListBox::iView
Inherited Enumerations
CCoeControl:TZoomType
CEikListBox:@160
CEikListBox:TFlags
CEikListBox:TReasonForFocusLost
CEikListBox:TScrollBarOwnerShip
Inherited Functions
CAknControl::CAknControl()
CAknControl::~CAknControl()
CBase::CBase()
CBase::Delete(CBase *)
CBase::Extension_(TUint,TAny *&,TAny *)
CBase::operator new(TUint)
CBase::operator new(TUint,TAny *)
CBase::operator new(TUint,TLeave)
CBase::operator new(TUint,TLeave,TUint)
CBase::operator new(TUint,TUint)
CBase::~CBase()
CCoeControl::AccumulatedZoom()const
CCoeControl::ActivateGc()const
CCoeControl::BackedUpWindow()const
CCoeControl::Background()const
CCoeControl::CCoeControl()
CCoeControl::CCoeControl(CCoeEnv *)
CCoeControl::CCoeControl(const CCoeControl &)
CCoeControl::CCoeControlArray
CCoeControl::CapturesPointer()const
CCoeControl::ClaimPointerGrab(TBool)
CCoeControl::ClaimPointerGrab(TInt,TBool)
CCoeControl::CloseWindow()
CCoeControl::ComponentArrayExists()const
CCoeControl::Components()
CCoeControl::Components()const
CCoeControl::ConstructFromResourceL(TResourceReader &)
CCoeControl::ControlContext()const
CCoeControl::ControlEnv()const
CCoeControl::CopyControlContextFrom(const CCoeControl *)
CCoeControl::CreateBackedUpWindowL(RWindowTreeNode &)
CCoeControl::CreateBackedUpWindowL(RWindowTreeNode &,TDisplayMode)
CCoeControl::CreateWindowL()
CCoeControl::CreateWindowL(RWindowGroup *)
CCoeControl::CreateWindowL(RWindowTreeNode &)
CCoeControl::CreateWindowL(const CCoeControl *)
CCoeControl::CustomGc()const
CCoeControl::DeactivateGc()const
CCoeControl::DrawBackground(const TRect &)const
CCoeControl::DrawDeferred()const
CCoeControl::DrawForeground(const TRect &)const
CCoeControl::DrawNow()const
CCoeControl::DrawNow(const TRect &)const
CCoeControl::DrawableWindow()const
CCoeControl::EnableDragEvents()
CCoeControl::EnableReportControlStateChange(TBool)
CCoeControl::EnableWindowTransparency()
CCoeControl::FindBackground()const
CCoeControl::FindFontProvider()const
CCoeControl::GetColor(TInt,TRgb &)const
CCoeControl::GetGc()const
CCoeControl::GetHelpContext(TCoeHelpContext &)const
CCoeControl::GrabbingComponent()const
CCoeControl::GrabbingComponent(TInt)const
CCoeControl::HandleComponentControlsResourceChange(TInt)
CCoeControl::HandleControlArrayEventL(CCoeControlArray::TEvent,const CCoeControlArray *,CCoeControl *,TInt)
CCoeControl::HandlePointerBufferReadyL()
CCoeControl::HandleRedrawEvent(const TRect &)const
CCoeControl::HitTest()const
CCoeControl::IgnoreEventsUntilNextPointerUp()
CCoeControl::Index(const CCoeControl *)const
CCoeControl::InitComponentArrayL()
CCoeControl::IsActivated()const
CCoeControl::IsBackedUp()const
CCoeControl::IsBeingDestroyed()const
CCoeControl::IsBlank()const
CCoeControl::IsDimmed()const
CCoeControl::IsFocused()const
CCoeControl::IsNonFocusing()const
CCoeControl::IsReadyToDraw()const
CCoeControl::IsVisible()const
CCoeControl::LayoutManager()const
CCoeControl::MaximumWidth()const
CCoeControl::MopSupplyObject(TTypeUid)
CCoeControl::NotifyFontChange(const CCoeFontProvider *)
CCoeControl::Observer()const
CCoeControl::OverrideColorL(TInt,TRgb)
CCoeControl::OwnsWindow()const
CCoeControl::Parent()
CCoeControl::Parent()const
CCoeControl::Position()const
CCoeControl::PositionChanged()
CCoeControl::PositionRelativeToScreen()const
CCoeControl::PrepareForFocusGainL()
CCoeControl::PrepareForFocusLossL()
CCoeControl::ProcessPointerBufferReadyL()
CCoeControl::ProcessPointerEventL(const TPointerEvent &)
CCoeControl::Rect()const
CCoeControl::RecursivelyMergeInputCapabilities(TCoeInputCapabilities &)const
CCoeControl::RecursivelyMergedInputCapabilities()const
CCoeControl::RefetchPixelMappingL()
CCoeControl::RemoveFromParent()
CCoeControl::ReportEventL(MCoeControlObserver::TCoeEvent)
CCoeControl::RequestRelayout(const CCoeControl *)
CCoeControl::ResetGc()const
CCoeControl::ScreenFont(const TCoeFont &)const
CCoeControl::SetAllowStrayPointers()
CCoeControl::SetBackground(const MCoeControlBackground *)
CCoeControl::SetBlank()
CCoeControl::SetCanDrawOutsideRect()
CCoeControl::SetComponentsToInheritVisibility(TBool)
CCoeControl::SetContainerWindowL(RBackedUpWindow &)
CCoeControl::SetContainerWindowL(RWindow &)
CCoeControl::SetControlContext(MCoeControlContext *)
CCoeControl::SetCornerAndSize(TGulAlignment,const TSize &)
CCoeControl::SetCustomGc(CWindowGc *)
CCoeControl::SetExtent(const TPoint &,const TSize &)
CCoeControl::SetExtentToWholeScreen()
CCoeControl::SetFocus(TBool,TDrawNow)
CCoeControl::SetFocusing(TBool)
CCoeControl::SetFontProviderL(const CCoeFontProvider &)
CCoeControl::SetGc(CWindowGc *)const
CCoeControl::SetGloballyCapturing(TBool)
CCoeControl::SetHitTest(const MCoeControlHitTest *)
CCoeControl::SetLayoutManagerL(MCoeLayoutManager *)
CCoeControl::SetMaximumWidth(TInt)
CCoeControl::SetMopParent(MObjectProvider *)
CCoeControl::SetNeighbor(CCoeControl *)
CCoeControl::SetNonFocusing()
CCoeControl::SetObserver(MCoeControlObserver *)
CCoeControl::SetParent(CCoeControl *)
CCoeControl::SetPointerCapture(TBool)
CCoeControl::SetPosition(const TPoint &)
CCoeControl::SetRect(const TRect &)
CCoeControl::SetSize(const TSize &)
CCoeControl::SetSizeWithoutNotification(const TSize &)
CCoeControl::SetTextBaselineSpacing(TInt)
CCoeControl::SetUniqueHandle(TInt)
CCoeControl::SetZoomFactorL(TInt,TZoomType)
CCoeControl::Size()const
CCoeControl::SystemGc()const
CCoeControl::TextBaselineOffset(const TSize &)const
CCoeControl::TextDrawer(TInt)const
CCoeControl::UniqueHandle()const
CCoeControl::Window()const
CCoeControl::WriteInternalStateNowL(RWriteStream &)const
CCoeControl::ZoomWithType()const
CCoeControl::operator=(const CCoeControl &)
CCoeControl::~CCoeControl()
CEikBorderedControl::Border()const
CEikBorderedControl::CEikBorderedControl()
CEikBorderedControl::CEikBorderedControl(const TGulBorder &)
CEikBorderedControl::HasBorder()const
CEikBorderedControl::SetAdjacent(TInt)
CEikBorderedControl::SetBorder(TGulBorder::TBorderType)
CEikBorderedControl::SetBorder(TInt)
CEikBorderedControl::WriteInternalStateL(RWriteStream &)const
CEikListBox::ActivateL()
CEikListBox::AddItemChangeObserverL(MListBoxItemChangeObserver *)
CEikListBox::AddSelectionObserverL(MListBoxSelectionObserver *)
CEikListBox::AknListBoxLayouts
CEikListBox::AknListBoxShortCutsImplementation
CEikListBox::BackColor()const
CEikListBox::BackgroundDrawingSuppressed()const
CEikListBox::BottomItemIndex()const
CEikListBox::Buffer()const
CEikListBox::CEikListBox()
CEikListBox::CListBoxExt
CEikListBox::CalcHeightBasedOnNumOfItems(TInt)const
CEikListBox::CalcSizeInPixels(TInt,TInt)const
CEikListBox::CalcWidthBasedOnNumOfChars(TInt)const
CEikListBox::CalcWidthBasedOnRequiredItemWidth(TInt)const
CEikListBox::CalculatePopoutRect(TInt,TInt,TRect &,TInt)
CEikListBox::ChangeSelectionMode(TBool)
CEikListBox::CheckCreateBufferL()
CEikListBox::CheckCreateExtension()
CEikListBox::CheckCreateExtensionL()
CEikListBox::ClearMargins()const
CEikListBox::ClearMatchBuffer()const
CEikListBox::ClearSelection()
CEikListBox::ComponentControl(TInt)const
CEikListBox::ConstructL(MListBoxModel *,CListItemDrawer *,const CCoeControl *,TGulBorder,TInt)
CEikListBox::ConstructL(MListBoxModel *,CListItemDrawer *,const CCoeControl *,TInt)
CEikListBox::ConstructL(const CCoeControl *,TInt)
CEikListBox::CountComponentControls()const
CEikListBox::CreateMatchBufferL()
CEikListBox::CreateScrollBarFrameL(TBool)
CEikListBox::CreateScrollBarFrameL(TBool,TBool)
CEikListBox::CreateScrollBarFrameL(TBool,TBool,TBool)
CEikListBox::CreateScrollBarFrameLayout(TEikScrollBarFrameLayout &)const
CEikListBox::CreateViewL()
CEikListBox::CurrentItemIndex()const
CEikListBox::DisableItemSpecificMenu()
CEikListBox::DisableScrolling(TBool)
CEikListBox::DisableSingleClick(TBool)
CEikListBox::DoShiftMSKMarkingL()
CEikListBox::Draw(const TRect &)const
CEikListBox::DrawItem(TInt)const
CEikListBox::DrawMatcherCursor()const
CEikListBox::EditItemL(TInt)
CEikListBox::EnableMSKObserver(TBool)
CEikListBox::EventModifiers()
CEikListBox::FireItemChange()
CEikListBox::FocusChanged(TDrawNow)
CEikListBox::HandleItemAdditionL()
CEikListBox::HandleItemAdditionL(CArrayFix< TInt > &)
CEikListBox::HandleItemRemovalL()
CEikListBox::HandleItemRemovalL(CArrayFix< TInt > &)
CEikListBox::HandlePhysicsScrollEventL(TInt)
CEikListBox::HandleScrollEventL(CEikScrollBar *,TEikScrollEvent)
CEikListBox::HighlightRect()const
CEikListBox::HorizontalMargin()const
CEikListBox::InformMSKButtonGroupDeletion()
CEikListBox::InputCapabilities()const
CEikListBox::InterItemGap()
CEikListBox::IsHighlightEnabled()
CEikListBox::IsMatchBuffer()const
CEikListBox::IsMultiselection()
CEikListBox::ItemEditor()
CEikListBox::ItemExists(TInt)const
CEikListBox::ItemHeight()const
CEikListBox::ItemsInSingleLine()const
CEikListBox::LastCharMatched()const
CEikListBox::ListBoxMargins()const
CEikListBox::MakeVisible(TBool)
CEikListBox::MatchBuffer()const
CEikListBox::MatchTypedCharL(TUint)
CEikListBox::MinimumSize()
CEikListBox::Model()const
CEikListBox::OfferKeyEventL(const TKeyEvent &,TEventCode)
CEikListBox::ReasonForFocusLostL()
CEikListBox::RedrawItem(TInt)
CEikListBox::RemoveItemChangeObserver(MListBoxItemChangeObserver *)
CEikListBox::RemoveSelectionObserver(MListBoxSelectionObserver *)
CEikListBox::ReportListBoxEventL(MEikListBoxObserver::TListBoxEvent)
CEikListBox::Reset()
CEikListBox::ResetItemEditor()
CEikListBox::RestoreCommonListBoxPropertiesL(TResourceReader &)
CEikListBox::ScrollBarFrame()
CEikListBox::ScrollToMakeItemVisible(TInt)const
CEikListBox::ScrollingDisabled()
CEikListBox::SelectionIndexes()const
CEikListBox::SetContainerWindowL(const CCoeControl &)
CEikListBox::SetCurrentItemIndex(TInt)const
CEikListBox::SetCurrentItemIndexAndDraw(TInt)const
CEikListBox::SetDimmed(TBool)
CEikListBox::SetHorizontalMargin(TInt)
CEikListBox::SetItemEditor(MEikListBoxEditor *)
CEikListBox::SetItemHeightL(TInt)
CEikListBox::SetItemsInSingleLine(TInt)
CEikListBox::SetLaunchingButton(CEikButtonBase *)
CEikListBox::SetListBoxObserver(MEikListBoxObserver *)
CEikListBox::SetMarkingMode(TBool)
CEikListBox::SetMarkingModeObserver(MAknMarkingModeObserver *)
CEikListBox::SetPointerEventFilterDisabledL(const CArrayFix< TInt > &)
CEikListBox::SetReasonForFocusLostL(TReasonForFocusLost)
CEikListBox::SetScrollBarFrame(CEikScrollBarFrame *,TScrollBarOwnerShip)
CEikListBox::SetSelectionIndexesL(CListBoxView::CSelectionIndexArray *)
CEikListBox::SetShortcutValueFromPrevList(TInt)
CEikListBox::SetVerticalMargin(TInt)
CEikListBox::SetViewRectFromClientRect(const TRect &)
CEikListBox::SetViewRectHeightAdjustment(TInt)
CEikListBox::ShortcutValueForNextList()
CEikListBox::SimulateArrowKeyEventL(TKeyCode)
CEikListBox::StopEditingL(TBool)
CEikListBox::SuspendEffects(TBool)
CEikListBox::TopItemIndex()const
CEikListBox::UndoLastChar()
CEikListBox::UpdateCurrentItem(TInt)const
CEikListBox::UpdateItemDrawerColors()
CEikListBox::UpdateMarkUnmarkMSKL()const
CEikListBox::UpdateScrollBarThumbs()const
CEikListBox::UpdateScrollBarsL()
CEikListBox::UpdateViewColors()
CEikListBox::VerticalInterItemGap()const
CEikListBox::VerticalMargin()const
CEikListBox::View()const
CEikListBox::ViewRectHeightAdjustment()const
CEikListBox::~CEikListBox()

Detailed Description

This is a list box that scrolls horizontally, displaying its items in as many vertical columns as needed. Columns are arranged across the control from left to right; within columns, items are arranged from top to bottom. The flow of items or text ?snakes? across the face of the control.

This is a flexible control class that makes good use of short, wide display areas; for instance, subclasses of CEikSnakingListBox could be used for file lists or for a control panel. A standard user subclass, CEikSnakingTextListBox, also exists.

Since
Symbian 5.0

Constructor & Destructor Documentation

CEikSnakingListBox ( )

IMPORT_CCEikSnakingListBox()

C++ standard constructor

~CEikSnakingListBox ( )

IMPORT_C~CEikSnakingListBox()

Destructor

Member Function Documentation

AdjustRectHeightToWholeNumberOfItems ( TRect & )

IMPORT_C TIntAdjustRectHeightToWholeNumberOfItems(TRect &aRect)const [protected, virtual]

Reimplemented from CEikListBox::AdjustRectHeightToWholeNumberOfItems(TRect &)const

Rounds down the height of the rectangle (if necessary) so that only a whole number of items can be displayed inside the list box.

ParameterDescription
aRectThe rectangle to be modified.

Returns: The number of pixels reduced.

AdjustTopItemIndex ( )

IMPORT_C voidAdjustTopItemIndex()const [protected, virtual]

Reimplemented from CEikListBox::AdjustTopItemIndex()const

Called by various functions of this class to ensure that the top item index is always a sane value. The implementation in CEikListBox tries to ensure the minimum amount of white space at the bottom of the list box. Note that this function does not affect the current item index.

ColumnWidth ( )

IMPORT_C TIntColumnWidth()const

Gets the width of this list box?s columns.

Returns: Width of each column.

GetColorUseListL ( CArrayFix< TCoeColorUse > & )

IMPORT_C voidGetColorUseListL(CArrayFix< TCoeColorUse > &aColorUseList)const [protected, virtual]

Reimplemented from CEikListBox::GetColorUseListL(CArrayFix< TCoeColorUse > &)const

From CCoeControl

Gets the list of logical colours employed in the drawing of the control, paired with an explanation of how they are used. Appends the list to aColorUseList.

ParameterDescription
aColorUseListList of logical colours.

HandleDragEventL ( TPoint )

IMPORT_C voidHandleDragEventL(TPointaPointerPos)[protected, virtual]

Reimplemented from CEikListBox::HandleDragEventL(TPoint)

Handles drag events.

This function is called by HandlePointerEventL() to handle pointer drag events appropriately.

ParameterDescription
aPointerPosThe position of the TPointerEvent for which this handler is invoked.

HandleLeftArrowKeyL ( CListBoxView::TSelectionMode )

IMPORT_C voidHandleLeftArrowKeyL(CListBoxView::TSelectionModeaSelectionMode)[protected, virtual]

Reimplemented from CEikListBox::HandleLeftArrowKeyL(CListBoxView::TSelectionMode)

Handles a left arrow key event.

Moves the cursor into the correct column and clears any matcher buffer that may have been built up.

ParameterDescription
aSelectionModeNot used.

HandlePointerEventL ( const TPointerEvent & )

IMPORT_C voidHandlePointerEventL(const TPointerEvent &aPointerEvent)[virtual]

Reimplemented from CEikListBox::HandlePointerEventL(const TPointerEvent &)

From CCoeControl.

Handles pointer events.

ParameterDescription
aPointerEventThe pointer event.

HandleResourceChange ( TInt )

IMPORT_C voidHandleResourceChange(TIntaType)[protected, virtual]

Reimplemented from CEikListBox::HandleResourceChange(TInt)

From CCoeControl.

Handles a change to the list box?s resources of type aType which are shared across the environment, colours or fonts for example.

ParameterDescription
aTypeThe type of resources that have changed.

HandleRightArrowKeyL ( CListBoxView::TSelectionMode )

IMPORT_C voidHandleRightArrowKeyL(CListBoxView::TSelectionModeaSelectionMode)[protected, virtual]

Reimplemented from CEikListBox::HandleRightArrowKeyL(CListBoxView::TSelectionMode)

Handles a right arrow key event.

Moves the cursor into the correct column and clears any matcher buffer that may have been built up.

ParameterDescription
aSelectionModeNot used.

HandleViewRectSizeChangeL ( )

IMPORT_C voidHandleViewRectSizeChangeL()[protected, virtual]

Reimplemented from CEikListBox::HandleViewRectSizeChangeL()

Handles a change in size of the viewing rectangle.

This function is called by framework functions to update the content, view, and scroll bars of this list box after the viewing rectangle has changed size. This implementation ensures that the current item is visible after a resize.

HorizScrollGranularityInPixels ( )

IMPORT_C TIntHorizScrollGranularityInPixels()const [protected, virtual]

Reimplemented from CEikListBox::HorizScrollGranularityInPixels()const

Gets the granularity for horizontal scrolls.

The granularity is the minimum size of a horizontal move of the client area.

Returns: Grain size for horizontal scrolling in pixels.

HorizontalNudgeValue ( )

IMPORT_C TIntHorizontalNudgeValue()const [protected, virtual]

Reimplemented from CEikListBox::HorizontalNudgeValue()const

Gets the number of grains to move horizontally when a nudge button is tapped.

For simple list boxes, this value is a fraction of the width of the client area.

Returns: Number of grains to move left or right on each nudge.

MakeViewClassInstanceL ( )

IMPORT_C CListBoxView *MakeViewClassInstanceL()[virtual]

Reimplemented from CEikListBox::MakeViewClassInstanceL()

Creates an instance of the view class.

This function is called during construction to create (but not second-phase construct) an instance of the correct view class for this list box control. In the case of the snaking list box, a CSnakingListBoxView is returned.

This function overrides CEikListBox::MakeViewClassInstanceL().

Returns: The view which will be used by the list box being created

MoveToNextOrPreviousItemL ( TPoint )

IMPORT_C voidMoveToNextOrPreviousItemL(TPointaPoint)[protected]

Move to next or previous item according to the given parameter.

ParameterDescription
aPointPosition which defines the moving direction.

RestoreClientRectFromViewRect ( TRect & )

IMPORT_C voidRestoreClientRectFromViewRect(TRect &aClientRect)const [protected, virtual]

Reimplemented from CEikListBox::RestoreClientRectFromViewRect(TRect &)const

Calculates the client area.

This method is called by various functions of this class to recalculate the extent of the client area from iViewRect. This implementation takes into account any rounding of the viewing rectangle made to fit a whole number of items.

ParameterDescription
aClientRectOn return contains a size for the client area in pixels.

SetColumnWidth ( TInt )

IMPORT_C voidSetColumnWidth(TIntaColumnWidth)

Sets the width of all columns in the list box.

ParameterDescription
aColumnWidthNew column width.

SetTopItemIndex ( TInt )

IMPORT_C voidSetTopItemIndex(TIntaItemIndex)const [virtual]

Reimplemented from CEikListBox::SetTopItemIndex(TInt)const

Sets the top item?s index.

ParameterDescription
aItemIndexIndex of the item to set as the top item.

SizeChanged ( )

IMPORT_C voidSizeChanged()[protected, virtual]

Reimplemented from CEikListBox::SizeChanged()

From CCoeControl

Updates the viewing rectangle of this control appropriately. The function updates the viewing rectangle, and invokes HandleViewRectSizeChangeL().