class CEikCapCArray : public CArrayPtrFlat< CEikCaptionedControl > |
Public Member Functions | |
---|---|
CEikCapCArray(TInt) | |
~CEikCapCArray() | |
IMPORT_C void | AdjustAllIds(TInt) |
TBool | CalcItemIndexes(TInt &, TInt &, TInt &, TSize) |
void | CreateExtensionL() |
IMPORT_C void | DeleteLine(TInt) |
CEikCapCArrayExtension * | ExtensionOrNull() |
TInt | FindItemFromTextLine(TInt) |
IMPORT_C TInt | FindLineIndex(const CCoeControl *) |
TInt | FocusableLine(TInt, TInt) |
IMPORT_C TInt | LineIndexFromId(TInt) |
TInt | LineIndexToYPosition(TInt, TInt) |
IMPORT_C TSize | MinimumSize() |
void | MoveLineToScreen(TInt, TInt, TBool) |
TInt | NumberOfTextLines() |
TInt | NumberOfTextLinesBeforeLine(TInt) |
TRect | Rect() |
IMPORT_C void | ResetMinimumSizes() |
TInt | ScrollByPixels(TInt) |
IMPORT_C void | SetDensePacking(TBool) |
IMPORT_C void | SetRect(const TRect &) |
void | SetRect(const TRect &, TInt, TInt, TInt) |
TInt | YPosToLine(const TRect &, TInt, TInt, TInt, TInt) |
TInt | YPositionToLineIndex(TInt) |
Private Member Functions | |
---|---|
void | SetRealRect(const TRect &, TInt, TInt) |
Private Attributes | |
---|---|
TBool | iDensePacking |
CEikCapCArrayExtension * | iExtension |
IMPORT_C | CEikCapCArray | ( | TInt | aGranularity | ) |
Constructor
Creates CEikCapCArray with a granilarity.
TInt aGranularity | how many items will be allocated each time allocation happens |
IMPORT_C void | AdjustAllIds | ( | TInt | aControlIdDelta | ) |
AdjustAllIds() modified iId fields of the captionedcontrols
TInt aControlIdDelta | how much to increase or decrease control id's |
TBool | CalcItemIndexes | ( | TInt & | aTopItemIndex, |
TInt & | aMiddleItems, | |||
TInt & | aBottomItemIndex, | |||
TSize | aAreaSize | |||
) |
IMPORT_C void | DeleteLine | ( | TInt | aIndex | ) |
DeleteLine() removes line from captionedcontrolarray
Elements from CaptionedControlArray can be removed by calling DeleteLine method.
TInt aIndex | index of the line to be removed |
IMPORT_C TInt | FindLineIndex | ( | const CCoeControl * | aControl | ) | const |
FindLineIndex() finds line index based on control
Every captionedcontrol has iControl CCoeControl which implements the control for the DLG_LINE. FindLineIndex goes through all captionedcontrols and finds the one which has aControl as it's control.
const CCoeControl * aControl | control to be found |
TInt | FocusableLine | ( | TInt | aCurrentLine, |
TInt | aTopY | |||
) |
Calculates the line that should be focused when a navigation key is pressed while in form view mode.
IMPORT_C TInt | LineIndexFromId | ( | TInt | aControlId | ) | const |
LineIndexFromId() provides line index in array based on id number
Every captionedcontrol has iId and based on the id, LineIndexFromId goes through the captionedcontrolarray and finds the captionedcontrol's position in the array based on the id provided
TInt aControlId | captionedcontrol's iId. |
TInt | LineIndexToYPosition | ( | TInt | aLine, |
TInt | aTopY | |||
) | const |
Returns line's top y coordinate.
IMPORT_C TSize | MinimumSize | ( | ) |
MinimumSize() returns minimum size for the array
MinimumSize calculates minimum possible size for the captioned control array.
Calculate the size of all the component controls stacked vertically. For Avkon Forms the controls overlap by 2 pixels (hard coded)
void | MoveLineToScreen | ( | TInt | aLine, |
TInt | aTopY, | |||
TBool | aVisible | |||
) |
Moves aLine to the visible screen area or out of it.
TInt | NumberOfTextLinesBeforeLine | ( | TInt | aLine | ) | const |
TInt aLine |
TRect | Rect | ( | ) | const |
Position all of the component controls in a vertical pile. For Avkon Forms the controls overlap by two pixels. (hard coded)
IMPORT_C void | ResetMinimumSizes | ( | ) |
ResetMinimumSizes() clears size information
ResetMinimumSizes goes through all captionedcontrols and resets the minimum size information of the captionedcontrols
TInt | ScrollByPixels | ( | TInt | aDelta | ) |
Scrolls each item by aDelta pixels in y direction.
TInt aDelta |
IMPORT_C void | SetDensePacking | ( | TBool | aDensePacking | ) |
SetDensePacking() sets dense packing flag
TBool aDensePacking | whether dense packing flag is on |
void | SetRealRect | ( | const TRect & | aRect, |
TInt | aTop, | |||
TInt | aBottom | |||
) | [private] |
Positions controls in real locations.
IMPORT_C void | SetRect | ( | const TRect & | aRect | ) |
SetRect() sets the rectangle of the captionedcontrolarray
SetRect layouts the captionedcontrolarray. Captioned control rectangles are calculated based on provided rectangle and sizes of the captioned controls.
const TRect & aRect | Rectangle for the whole array |
void | SetRect | ( | const TRect & | aRect, |
TInt | aTop, | |||
TInt | aMiddle, | |||
TInt | aBottom | |||
) |
Places the dialog items according to the current visible window position. When hiding items, uses SetExtent() instead of just SetPosition() in order to call SizeChanged() of the moved item. For example, this is needed for the editor to change its cursor accordingly.
Parameter value equal to -1 means that the parameter is not defined and will be calculated automatically. Normally, either the top number or the bottom one is only defined. If aTop is defined, the items will be placed from top downwards, leaving aTop items above the window. If aBottom is defined, the items will be placed from bottom upwards, leaving aBottom items below the window.
This function panics, if neither aTop nor aBottom are defined.
The function first checks if the provided aTop and aBottom are consistent with the item sizes and the given window rectangle. If they are not, they will be corrected. Usually, aTop and aBottom come out of sync with the item sizes after the dynamic layout change.
TInt | YPosToLine | ( | const TRect & | aRect, |
TInt | aTop, | |||
TInt | aMiddle, | |||
TInt | aBottom, | |||
TInt | aYCoord | |||
) |
TInt | YPositionToLineIndex | ( | TInt | aYPos | ) | const |
Return the index of the line at aYPos.
TInt aYPos |
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.