uidesigner/com.nokia.sdt.series60.componentlibrary/components/LoadAndScaleIconL.inc
add label provider for SDK Config Tree to show SDK node in red when EPOCROOT does not exist.
<defineLocation id="LOADANDSCALEICONL_METHOD" baseLocation="MAIN_FILE"
owned="true"
location="function(${className}::LoadAndScaleIconL(const TDesC&,TInt,TInt,TSize*,TScaleMode))">
<template><![CDATA[
/**
* This routine loads and scales a bitmap or icon.
*
* @param aFileName the MBM or MIF filename
* @param aBitmapId the bitmap id
* @param aMaskId the mask id or -1 for none
* @param aSize the TSize for the icon, or NULL to use real size
* @param aScaleMode one of the EAspectRatio* enums when scaling
*
*/
CGulIcon* ${className}::LoadAndScaleIconL(
const TDesC& aFileName,
TInt aBitmapId,
TInt aMaskId,
TSize* aSize,
TScaleMode aScaleMode )
{
CFbsBitmap* bitmap;
CFbsBitmap* mask;
AknIconUtils::CreateIconL( bitmap, mask, aFileName, aBitmapId, aMaskId );
TSize size;
if ( aSize == NULL )
{
// Use size from the image header. In case of SVG,
// we preserve the image data for a while longer, since ordinarily
// it is disposed at the first GetContentDimensions() or SetSize() call.
AknIconUtils::PreserveIconData( bitmap );
AknIconUtils::GetContentDimensions( bitmap, size );
}
else
{
size = *aSize;
}
AknIconUtils::SetSize( bitmap, size, aScaleMode );
AknIconUtils::SetSize( mask, size, aScaleMode );
if ( aSize == NULL )
{
AknIconUtils::DestroyIconData( bitmap );
}
return CGulIcon::NewL( bitmap, mask );
}
]]>
</template>
</defineLocation>