class CEikScrollBar : public CEikBorderedControl |
The CEikScrollBar class implements a scroll bar. Scroll bars are used when the contents of a view require a greater area than can be physically displayed. Scroll bars allow a user to move different parts of the content into the view and to indicate what proportion of the total contents are visible at any one time.
Protected Member Functions | |
---|---|
IMPORT_C CCoeControl * | ComponentControl(TInt) |
IMPORT_C TInt | CountComponentControls() |
void | CreateRequiredComponentsL() |
void | DestroyButton(CAknScrollButton *&) |
IMPORT_C void | SetButtonPositionL(CAknScrollButton *) |
Private Member Functions | |
---|---|
void | AddExternalFrameL(CEikScrollBarFrame *) |
CEikCba * | Cba() |
IMPORT_C void | CreateButtonL(CAknScrollButton *&, CAknScrollButton::TType) |
void | DisconnectExternalFrames() |
void | DoSetModel(const TEikScrollBarModel *) |
IMPORT_C void * | ExtensionInterface(TUid) |
IMPORT_C void | HandleControlEventL(CCoeControl *, TCoeEvent) |
void | RemoveExternalFrame(CEikScrollBarFrame *) |
IMPORT_C void | Reserved_2() |
void | SizeChanged() |
Public Member Enumerations | |
---|---|
enum | TEikScrollBarFlags { EEikScrollBarDefaultBehaviour = SLafScrollBar::EEikScrollBarDefaultBehaviour, EEikScrollBarNoNudgeButtons = SLafScrollBar::EEikScrollBarNoNudgeButtons, EEikScrollBarHasPageButtons = SLafScrollBar::EEikScrollBarHasPageButtons, EEikScrollBarHasHomeEndButtons = SLafScrollBar::EEikScrollBarHasHomeEndButtons, EEikScrollBarNoShaftOrThumb = SLafScrollBar::EEikScrollBarNoShaftOrThumb, EEikScrollBarShaftButNoThumb = SLafScrollBar::EEikScrollBarShaftButNoThumb, EButtonsAtStartOfShaft = SLafScrollBar::EButtonsAtStartOfShaft, EButtonsAtEndOfShaft = SLafScrollBar::EButtonsAtEndOfShaft, EButtonsEitherSideOfShaft = SLafScrollBar::EButtonsEitherSideOfShaft, ENoAutoDimming = SLafScrollBar::ENoAutoDimming, EEnableNudgeButtons = 0x0200, EDisableExpandedTouchArea = 0x0400 } |
enum | TOrientation { EVertical = SLafScrollBar::EVertical, EHorizontal = SLafScrollBar::EHorizontal } |
enum | TScrollBarExtensionAreaType { ENormalExpandedTouchArea, EScaleExpandedTouchArea, ENoExpandedTouchArea } |
enum | TScrollBarType { ENormalScrollBar = 0x0, EArrowHead = 0x200, EDoubleSpan = 0x400 } |
Protected Member Enumerations | |
---|---|
enum | TPointerDownOn { ENone, EHomeButton, EDecreasePageButton, EDecreaseNudgeButton, EDecreaseShaft, EThumb, EIncreaseShaft, EIncreaseNudgeButton, EIncreasePageButton, EEndButton } |
enum | TPrivateScrollBarFlags { ENoComponentsToDisplay = 0x10000, EIncreaseButtonsDimmed = 0x20000, EDecreaseButtonsDimmed = 0x40000 } |
enum | TShaftRedrawRequired { ENoRedrawRequired, ERedrawShaft } |
enum | TWhichButtons { EIncreaseOnly, EDecreaseOnly, EAll } |
Inherited Enumerations | |
---|---|
CCoeControl:TZoomType |
Public Member Type Definitions | |
---|---|
typedef | TEikScrollBarFlags TAknScrollBarFlags |
Public Attributes | |
---|---|
TDblQueLink | iSBLink |
Protected Attributes | |
---|---|
SEikScrollBarButtons | iButtons |
CEikScrollBarExtensionImpl * | iExtension |
TOrientation | iOrientation |
Private Attributes | |
---|---|
TEikScrollBarModel | iModel |
Inherited Attributes | |
---|---|
CCoeControl::iCoeEnv | |
CCoeControl::iContext | |
CCoeControl::iPosition | |
CCoeControl::iSize | |
CEikBorderedControl::iBorder |
void | AddExternalFrameL | ( | CEikScrollBarFrame * | aFrame | ) | [private] |
CEikScrollBarFrame * aFrame |
IMPORT_C CCoeControl * | ComponentControl | ( | TInt | aIndex | ) | const [protected, virtual] |
From CCoeControl
Gets the specified scrollbar component. Each component control is identified by an index, where the index depends on the order the controls were added: the first is given an index of 0, the next an index of 1.
TInt aIndex | The index of the control to get. |
IMPORT_C void | ConstructL | ( | MEikScrollBarObserver * | aScrollBarObserver, |
const CCoeControl * | aParent, | |||
TOrientation | aOrientation, | |||
TInt | aLength, | |||
TInt | aScrollBarFlags = EEikScrollBarDefaultBehaviour | |||
) | [virtual] |
Second phase constructor of the scroll bar.
MEikScrollBarObserver * aScrollBarObserver | The scroll bar observer which is to be informed of scroll events by this scroll bar. |
const CCoeControl * aParent | Parent control for this new scroll bar. |
TOrientation aOrientation | Orientation of the new scroll bar. |
TInt aLength | Not used. |
TInt aScrollBarFlags = EEikScrollBarDefaultBehaviour | Not used. |
IMPORT_C TInt | CountComponentControls | ( | ) | const [protected, virtual] |
From .
Gets the number of controls contained in this scrollbar.
IMPORT_C void | CreateButtonL | ( | CAknScrollButton *& | aButton, |
CAknScrollButton::TType | aType | |||
) | [private, virtual] |
CAknScrollButton *& aButton | |
CAknScrollButton::TType aType |
void | CreateRequiredComponentsL | ( | ) | [protected] |
Allocates and constructs all the required components of the scrollbar.
CAknScrollButton * | DecreaseNudgeButton | ( | ) | const [inline] |
Gets handle to the controls that draw arrows in the both ends of spanned scrollbar. These arrows are for pen support to enable exact moving of the scrollbar with pen. The arrow is tapped with the pen to move the scrollbar with one step.
IMPORT_C TInt | DefaultScrollBarBreadth | ( | ) | [static] |
Gets the default width of the scroll bar.
void | DestroyButton | ( | CAknScrollButton *& | aButton | ) | [protected] |
Destroys a button.
CAknScrollButton *& aButton | A button that will be destroyed. |
void | DoSetModel | ( | const TEikScrollBarModel * | aModel | ) | [private] |
const TEikScrollBarModel * aModel |
IMPORT_C void * | ExtensionInterface | ( | TUid | aInterface | ) | [private, virtual] |
From CAknControl
TUid aInterface |
IMPORT_C void | HandleControlEventL | ( | CCoeControl * | aControl, |
TCoeEvent | aEventType | |||
) | [private, virtual] |
CCoeControl * aControl | |
TCoeEvent aEventType |
IMPORT_C void | HandlePointerEventL | ( | const TPointerEvent & | aPointerEvent | ) | [virtual] |
From CCoeControl
Called by the framework to handle pointer events.
const TPointerEvent & aPointerEvent | A pointer event. |
CAknScrollButton * | IncreaseNudgeButton | ( | ) | const [inline] |
Gets handle to the controls that draw arrows in the both ends of spanned scrollbar. These arrows are for pen support to enable exact moving of the scrollbar with pen. The arrow is tapped with the pen to move the scrollbar with one step.
IMPORT_C void | MakeVisible | ( | TBool | aVisible | ) | [virtual] |
From CCoeControl.
Sets this control as visible or invisible.
If MakeVisible() is used to make a component visible, and the control captures the pointer (see CapturesPointer()), MakeVisible() throws away any pending pointer events for that control.
TBool aVisible | ETrue to make the control visible, EFalse to make it invisible. |
IMPORT_C TInt | MinVisibleLength | ( | const TInt | aScrollBarFlags | ) | [static] |
Not implemented.
const TInt aScrollBarFlags | Not used. |
const TEikScrollBarModel * | Model | ( | ) | const [inline] |
Gets the scroll bar model used by this scroll bar.
void | RemoveExternalFrame | ( | CEikScrollBarFrame * | aFrame | ) | [private] |
CEikScrollBarFrame * aFrame |
IMPORT_C TInt | ScrollBarBreadth | ( | ) | const |
Gets the height of a horizontal scrollbar or width of a vertical scrollbar.
IMPORT_C void | SetAllButtonsDimmed | ( | TBool | aDimmed | ) |
Not implemented.
TBool aDimmed | Not used. |
IMPORT_C void | SetButtonPositionL | ( | CAknScrollButton * | aButton | ) | [protected, virtual] |
Not implemented
CAknScrollButton * aButton | Not used. |
IMPORT_C void | SetContainingCba | ( | CEikCba * | aCba | ) |
Sets command button area. This function should only be used by CEikCba.
CEikCba * aCba | Command button area. |
IMPORT_C void | SetDecreaseButtonsDimmed | ( | TBool | aDimmed | ) |
Not implemented.
TBool aDimmed | Not used. |
IMPORT_C void | SetExtensionAreaType | ( | TScrollBarExtensionAreaType | aType | ) |
Not implemented.
TScrollBarExtensionAreaType aType | The extension area to use. |
IMPORT_C void | SetFocusPosToThumbPos | ( | TInt | aFocusPosition | ) |
Not implemented.
TInt aFocusPosition | Not used. |
IMPORT_C void | SetIncreaseButtonsDimmed | ( | TBool | aDimmed | ) |
Not implemented.
TBool aDimmed | Not used. |
IMPORT_C void | SetLengthAndModelL | ( | TInt | aLength, |
const TEikScrollBarModel * | aModel | |||
) |
Change the model at once to avoid a double update of the scroll bar.
TInt aLength | Not used. |
const TEikScrollBarModel * aModel | New scroll bar model. |
IMPORT_C void | SetLengthL | ( | TInt | aLength | ) |
Not implemented.
TInt aLength | Not used. |
IMPORT_C void | SetModel | ( | const TEikScrollBarModel * | aModel | ) |
Change the scrollbar model.
const TEikScrollBarModel * aModel | The new model to use. |
IMPORT_C void | SetModelL | ( | const TEikScrollBarModel * | aModel | ) |
Change the scrollbar model.
const TEikScrollBarModel * aModel | The new model to use. |
IMPORT_C void | SetModelThumbPosition | ( | TInt | aThumbPos | ) |
Not implemented.
TInt aThumbPos | Not used. |
void | SetScrollBarObserver | ( | MEikScrollBarObserver * | aScrollBarObserver | ) |
Allows scroll bar observer to be changed also after the construction. This function is not exported, but the applications can use it via CEikScrollBarFrame::SetScrollBarFrameObserver function.
MEikScrollBarObserver * aScrollBarObserver | New observer replacing the previous (if any). |
IMPORT_C TInt | ThumbPosition | ( | ) | const |
Gets the position within the scroll bar model. This function would normally be called by an MEikScrollBarObserver implementation in response to a scroll bar event.
Scroll bar initialisation flags. The default is for the scroll bar to have both a shaft and a thumb.
EEikScrollBarDefaultBehaviour = SLafScrollBar::EEikScrollBarDefaultBehaviour | |
EEikScrollBarNoNudgeButtons = SLafScrollBar::EEikScrollBarNoNudgeButtons |
Does not display nudge buttons. |
EEikScrollBarHasPageButtons = SLafScrollBar::EEikScrollBarHasPageButtons |
Has buttons which move it a page at a time. |
EEikScrollBarHasHomeEndButtons = SLafScrollBar::EEikScrollBarHasHomeEndButtons |
Has buttons which move it its entire extent. |
EEikScrollBarNoShaftOrThumb = SLafScrollBar::EEikScrollBarNoShaftOrThumb |
Central area is empty. |
EEikScrollBarShaftButNoThumb = SLafScrollBar::EEikScrollBarShaftButNoThumb |
Central area has no scroll thumb. |
EButtonsAtStartOfShaft = SLafScrollBar::EButtonsAtStartOfShaft |
Buttons are placed at the start of the bar. |
EButtonsAtEndOfShaft = SLafScrollBar::EButtonsAtEndOfShaft |
Buttons are placed at the end of the bar. |
EButtonsEitherSideOfShaft = SLafScrollBar::EButtonsEitherSideOfShaft |
Buttons are placed at either end of the bar (EButtonsAtStartOfShaft | EButtonsAtEndOfShaft). |
ENoAutoDimming = SLafScrollBar::ENoAutoDimming |
Buttons do not automatically dim when scroll bar is at its maximum extent. |
EEnableNudgeButtons = 0x0200 |
Enable the nudge buttons. |
EDisableExpandedTouchArea = 0x0400 |
Disable the expanded touch area. |
Scroll bar orientation.
EVertical = SLafScrollBar::EVertical |
Scroll bar is oriented vertically. |
EHorizontal = SLafScrollBar::EHorizontal |
Scroll bar is oriented horizontally. |
Determines where on a scroll bar a pointer down event occurred.
ENone |
No pointer down event occurred on the scroll bar. |
EHomeButton |
A pointer down event occurred on the home button. |
EDecreasePageButton |
A pointer down event occurred on the decrease page button. |
EDecreaseNudgeButton |
A pointer down event occurred on the decrease nudge button. |
EDecreaseShaft |
A pointer down event occurred on the decrease shaft button. |
EThumb |
A pointer down event occurred on the scroll bar thumb. |
EIncreaseShaft |
A pointer down event occurred on the increase shaft button. |
EIncreaseNudgeButton |
A pointer down event occurred on the increase nudge button. |
EIncreasePageButton |
A pointer down event occurred on the increase page button. |
EEndButton |
A pointer down event occurred on the end button. |
Flags to determine whether there are visible components and whether to dim the increase, or decrease, buttons.
ENoComponentsToDisplay = 0x10000 |
There are no visible components in the scroll bar. |
EIncreaseButtonsDimmed = 0x20000 |
Dim the increase buttons. |
EDecreaseButtonsDimmed = 0x40000 |
Dim the decrease buttons. |
Type of the scroll extension area.
ENormalExpandedTouchArea |
Normal scrollbar extension area. |
EScaleExpandedTouchArea |
Scale scrollbar extension area. |
ENoExpandedTouchArea |
none scrollbar extension area. |
Type of the scroll bar.
ENormalScrollBar = 0x0 |
Normal scrollbar. |
EArrowHead = 0x200 |
Used scrollbar type is an old one. (arrows in the CBA-area) |
EDoubleSpan = 0x400 |
The created scrollbar is the current and commonly used in Series 60 platform, spanned scrollbar. (scrollable bar on the right side of the control, like in windows etc.). |
Determines whether to redraw the scroll bar shaft.
ENoRedrawRequired |
Do not redraw the scroll bar shaft. |
ERedrawShaft |
Redraw the scroll bar shaft. |
Determines which buttons are displayed.
EIncreaseOnly |
Display the increase buttons only. |
EDecreaseOnly |
Display the decrease buttons only. |
EAll |
Display all buttons. |
CEikScrollBarExtensionImpl * | iExtension | [protected] |
A pointer to CEikScrollBarExtensionImpl class.
TDblQueLink | iSBLink |
Not used, but cannot be removed due binary compatibility issues.
Copyright ©2010 Nokia Corporation and/or its subsidiary(-ies).
All rights
reserved. Unless otherwise stated, these materials are provided under the terms of the Eclipse Public License
v1.0.