class CAlfLineVisual : public CAlfVisual |
Line visual draws a line along a curve path.
A line visual will draw a bendy line that follows a specified curve path. Width and alpha functions can be set to change the opacity and thickness of the line along its length.
Note that the Bitgdi renderer contains only a minimal implementation of line drawing. There is no aliasing or shading on the line, and thickness and alpha functions have no effect. The entire thickness of a Bitgdi line is set by the initial thickness at point 0. Usage:
//Create curvepath, which can be used as a path for linevisual CAlfCurvePath* path = CAlfCurvePath::NewL( &iEnv ); path->AppendArcL( TPoint(120, 120), TSize(60, 60), 180, 180 + 270, 0.5 ); path->AppendLineL( TPoint(120, 180), TPoint(20, 180), 0.5 ); //Create linevisual CAlfLineVisual* line = CAlfLineVisual::AddNewL( control ); //set curvepath instance, with ownership transfered to visual line->SetPath( path, EAlfHasOwnership ); //Line opacity function. Line visuals can use a mapping function to determine the opacity //of the line along the path. //member variable : LinearMappingFunction linearFunc; linearFunc.SetFactor( 1 ); //setlinevisual alpha function line->SetAlphaFunction( &linearFunc ); //Similerly, line visuals can use a mapping function to determine the width of the //line along the path. linearFunc.SetFactor( 60 ); line->SetWidthFunction( &linearFunc ); *
Public Member Functions | |
---|---|
CAlfLineVisual() | |
~CAlfLineVisual() | |
IMPORT_C CAlfLineVisual * | AddNewL(CAlfControl &, CAlfLayout *) |
IMPORT_C void | ConstructL(CAlfControl &) |
IMPORT_C const TAlfTimedValue & | EndPos() |
IMPORT_C CAlfVisual * | FindTag(const TDesC8 &) |
IMPORT_C const TAlfImage & | Image() |
IMPORT_C CAlfCurvePath * | Path() |
IMPORT_C void | RemoveAndDestroyAllD() |
IMPORT_C void | SetAlphaFunction(MAlfMappingFunction *) |
IMPORT_C void | SetColor(const TRgb &) |
IMPORT_C void | SetEndPos(const TAlfTimedValue &) |
IMPORT_C void | SetImage(const TAlfImage &) |
IMPORT_C void | SetPath(CAlfCurvePath *, TAlfOwnership) |
IMPORT_C void | SetShadowThickness(const TAlfTimedValue &) |
IMPORT_C void | SetStartPos(const TAlfTimedValue &) |
IMPORT_C void | SetThickness(const TAlfTimedValue &) |
IMPORT_C void | SetWidthFunction(MAlfMappingFunction *) |
IMPORT_C const TAlfTimedValue & | ShadowThickness() |
IMPORT_C const TAlfTimedValue & | StartPos() |
IMPORT_C const TAlfTimedValue & | Thickness() |
IMPORT_C void | UpdateChildrenLayout(TInt) |
Protected Member Functions | |
---|---|
IMPORT_C void | DoRemoveAndDestroyAllD() |
IMPORT_C void | PropertyOwnerExtension(const TUid &, TAny **) |
Private Attributes | |
---|---|
TLineVisualPrivateData * | iLineVisualData |
IMPORT_C CAlfLineVisual * | AddNewL | ( | CAlfControl & | aOwnerControl, |
CAlfLayout * | aParentLayout = 0 | |||
) | [static] |
Constructor, which gives ownership to the control.
CAlfControl & aOwnerControl | The control |
CAlfLayout * aParentLayout = 0 | If given, the parent layout. |
IMPORT_C void | ConstructL | ( | CAlfControl & | aOwner | ) | [virtual] |
Second-phase constructor.
CAlfControl & aOwner |
IMPORT_C void | DoRemoveAndDestroyAllD | ( | ) | [protected, virtual] |
From CAlfVisual CAlfVisual
IMPORT_C CAlfVisual * | FindTag | ( | const TDesC8 & | aTag | ) | [virtual] |
Finds a visual whose tag descriptor contains a specific tag.
CAlfVisual::FindTag() is the basic implementation that checks if this visual's tag matches the specified tag. CAlfLayout::FindTag() extends the search into child visuals, covering recursively entire visual hierarchies.
Todo: how should several visuals with matching tag to be handled ??
CAlfVisual::Tag() CAlfVisual::SetTagL() CAlfVisual::IsTagged() CAlfLayout::FindTag()
const TDesC8 & aTag | Tag to look for. If this tag is found as a part of a visual's colon-separated tag descriptor, it is treated as a match and the visual is returned. The tag to look for cannot contain separator characters (:). |
IMPORT_C CAlfCurvePath * | Path | ( | ) |
Returns the path of the visual. The path can be modified via this reference.
IMPORT_C void | PropertyOwnerExtension | ( | const TUid & | aExtensionUid, |
TAny ** | aExtensionParams | |||
) | [protected, virtual] |
! future proofing
IMPORT_C void | SetAlphaFunction | ( | MAlfMappingFunction * | aFunction | ) |
Sets the alpha mapping function that generates alpha values for the path.
MAlfMappingFunction * aFunction |
IMPORT_C void | SetColor | ( | const TRgb & | aColor | ) |
Sets the color of the line.
const TRgb & aColor |
IMPORT_C void | SetEndPos | ( | const TAlfTimedValue & | aEndPos | ) |
const TAlfTimedValue & aEndPos |
IMPORT_C void | SetImage | ( | const TAlfImage & | aImage | ) |
Sets the image used by the line.
const TAlfImage & aImage |
IMPORT_C void | SetPath | ( | CAlfCurvePath * | aPath, |
TAlfOwnership | aOwnership | |||
) |
Sets the path instance of the visual.
CAlfCurvePath * aPath | |
TAlfOwnership aOwnership |
IMPORT_C void | SetShadowThickness | ( | const TAlfTimedValue & | aShadowThickness | ) |
const TAlfTimedValue & aShadowThickness |
IMPORT_C void | SetStartPos | ( | const TAlfTimedValue & | aStartPos | ) |
const TAlfTimedValue & aStartPos |
IMPORT_C void | SetThickness | ( | const TAlfTimedValue & | aThickness | ) |
const TAlfTimedValue & aThickness |
IMPORT_C void | SetWidthFunction | ( | MAlfMappingFunction * | aFunction | ) |
Sets the width mapping function that generates width values for the path.
MAlfMappingFunction * aFunction |
IMPORT_C const TAlfTimedValue & | ShadowThickness | ( | ) | const |
Thickness of the shadow around the line.
IMPORT_C void | UpdateChildrenLayout | ( | TInt | aTransitionTime = 0 | ) | [virtual] |
Update the layout of all children. Subclasses can call this to recalculate the layout of all children.
TInt aTransitionTime = 0 | Time for layout transition in milliseconds. Any negative value uses value given in CAlfEnv::StaticSetLayoutTransitionTime() |
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.