void CTcContainer::CreateLabelsL( const TRect& /*aRect*/ ) { // Create labels CEikLabel* label; TRect rect( KLabelTlX, KLabelTlY, KLabelBrX, KLabelBrY ); label = CreateLabelL( rect, KTestCase ); rect.Move( 0, KLabelSpacing ); label = CreateLabelL( rect, KNone ); // Use smaller for for this label label->SetFont( CEikonEnv::Static()->AnnotationFont() ); rect.Move( 0, KLabelSpacing ); label = CreateLabelL( rect, KRequest ); rect.Move( 0, KLabelSpacing ); label = CreateLabelL( rect, KNone ); // Use smaller for for this label label->SetFont( CEikonEnv::Static()->AnnotationFont() ); rect.Move( 0, KLabelSpacing ); label = CreateLabelL( rect, KStatus ); rect.Move( 0, KLabelSpacing ); label = CreateLabelL( rect, KNone ); // Use smaller for for this label label->SetFont( CEikonEnv::Static()->AnnotationFont() ); }
void CMainMenuListContainer::SizeChanged() { CCoeControl::SizeChanged(); if(iBgContext) { iBgContext->SetRect(Rect()); if (&Window()) { iBgContext->SetParentPos(PositionRelativeToScreen()); } } CCoeControlArray::TCursor cursor = Components().Find(ETitleLabel); CEikLabel* label = cursor.Control<CEikLabel>(); const TDesC* titleText = label->Text(); TRect rect = Rect(); CFont* titleFont = FindLargestPossibleFontL(*titleText, rect.Width(), EAknLogicalFontPrimaryFont); label->SetFont(titleFont); CEikonEnv::Static()->ScreenDevice()->ReleaseFont(titleFont); // Set the size of the label, need to think of the descent as well. TSize size = label->MinimumSize(); size.iWidth = rect.Width(); TInt descent = label->Font()->DescentInPixels(); size.iHeight += descent; // Set the pos for the listbox, use the height for the label when doing this. // Also add the descent in pixels to get some space between the label and the // listbox. rect.iTl.iY = descent; TPoint pos(0, descent); label->SetExtent(rect.iTl, size); rect.iTl.iY += size.iHeight; // As default display both rows and hide the scrollbars HideSecondRow(EFalse); iListBox->ScrollBarFrame()->SetScrollBarVisibilityL(CEikScrollBarFrame::EOff, CEikScrollBarFrame::EOff); // Need to set the rect to get the listbox to update its values iListBox->SetRect(rect); TInt listBoxHeight = iListBox->ItemHeight() * iListBox->Model()->NumberOfItems(); if (listBoxHeight > rect.Height()) { // The listbox is to large to fint, hide the row and check again. HideSecondRow(ETrue); iListBox->SetRect(rect); listBoxHeight = iListBox->ItemHeight() * iListBox->Model()->NumberOfItems(); if (listBoxHeight > rect.Height()) { // Show scroll bar only if the height of the listbox is larger then // the rect. iListBox->ScrollBarFrame()->SetScrollBarVisibilityL(CEikScrollBarFrame::EOff, CEikScrollBarFrame::EOn); iListBox->UpdateScrollBarsL(); } } else { // Setting the first item gets the list box positioned correctly on the screen iListBox->ScrollToMakeItemVisible(0); } }
void CPreviewPopUpContent::InitialiseL(const TRect& aRect, const TDesC& aMbmName, TInt aNbrOfRows, TInt aImageId, TInt aMaskId) { // Do not call CreateWindowL() as parent CAknPreviewPopUpController owns window InitComponentArrayL(); iMbmName = aMbmName.AllocL(); MAknsSkinInstance* skin = AknsUtils::SkinInstance(); TRgb fgcolor(0,0,0); AknsUtils::GetCachedColor(skin, fgcolor, KAknsIIDQsnTextColors, EAknsCIQsnTextColorsCG55); if (aImageId != -1 && aMaskId != -1) { AknIconUtils::CreateIconL(iBitmap, iMask, *iMbmName, aImageId, aMaskId); AknIconUtils::SetSize(iBitmap, TSize(10, 10), EAspectRatioPreservedAndUnusedSpaceRemoved); } iStringLengths = new (ELeave) CArrayFixFlat<TInt>(aNbrOfRows); iLabelContainer.Reset(); // Create one label with standard font size. iStringLengths->AppendL(aRect.Width()); CEikLabel* label = new (ELeave) CEikLabel(); label->SetContainerWindowL(*this); Components().AppendLC(label); label->OverrideColorL(EColorLabelText, fgcolor); label->SetTextL(KDefaultText); CleanupStack::Pop(label); iLabelContainer.AppendL(TLabelData(label)); // The rest of the labels with a smaller font. const CFont* font = AknLayoutUtils::FontFromId(EAknLogicalFontSecondaryFont); for (TInt i = 0; i < aNbrOfRows-1; ++i) { iStringLengths->AppendL(aRect.Width()); CEikLabel* label = new (ELeave) CEikLabel(); label->SetContainerWindowL(*this); Components().AppendLC(label); label->SetFont(font); label->OverrideColorL(EColorLabelText, fgcolor); label->SetTextL(KDefaultText); CleanupStack::Pop(label); iLabelContainer.AppendL(TLabelData(label)); } //CEikonEnv::Static()->ScreenDevice()->ReleaseFont(font); Components().SetControlsOwnedExternally(EFalse); // Set the windows size SetRect(aRect); // Activate the window, which makes it ready to be drawn ActivateL(); }
void CUploadContainer::ConstructL(const TRect& aRect) { CALLSTACKITEM_N(_CL("CUploadContainer"), _CL("ConstructL")); iControls=new (ELeave) CArrayPtrFlat< CCoeControl >(10); CreateWindowL(); TRect r(TPoint(5, 5), TSize(aRect.Width()-10, 1)); if (iFileName.Right(3).CompareF(_L("jpg"))==0) { #ifndef __S60V2__ iMdaServer=CMdaServer::NewL(); iFileUtil=CMdaImageFileToBitmapUtility::NewL(*this, iMdaServer); #else iFileUtil=CMdaImageFileToBitmapUtility::NewL(*this, 0); #endif iFileUtil->OpenL(iFileName); scaled=false; iImgPlaceHolder=new (ELeave) CEikLabel; iControls->AppendL(iImgPlaceHolder); iImgPlaceHolder->SetContainerWindowL( *this ); iImgPlaceHolder->SetFont(iEikonEnv->DenseFont()); iImgPlaceHolder->SetTextL( _L("loading image...") ); r.SetHeight(IMG_HEIGHT); iImgPlaceHolder->SetRect(r); r.Move(0, r.Height()+4); } else { r.SetHeight(IMG_HEIGHT); r.Move(0, r.Height()+4); } TInt tagw=0; /* iTagLabel=new (ELeave) CEikLabel; iControls->AppendL(iTagLabel); iTagLabel->SetContainerWindowL( *this ); iTagLabel->SetTextL( _L("Tag:") ); r.SetHeight(12); iTagLabel->SetRect(r); tagw=iTagLabel->MinimumSize().iWidth+4; r.Move( tagw , 0); r.SetWidth(r.Width()-tagw); */ TBuf<100> tag; Settings().GetSettingL(SETTING_UPLOAD_TAG, tag); if (tag.Length() == 0) tag=KTag(); iTagEdit=new (ELeave) CEikEdwin; iControls->AppendL(iTagEdit); iTagEdit->SetContainerWindowL( *this ); iTagEdit->ConstructL(); iTagEdit->SetTextL(&tag); iTagEdit->AddEdwinObserverL(this); r.SetHeight(16); iTagEdit->SetRect(r); iTagEdit->ActivateL(); r.Move(-tagw, r.Height()+4); r.SetWidth(r.Width()+tagw); TBool no_descr; if (iTagOnly) no_descr=true; else no_descr=false; if (!no_descr) { TInt height=56; /* iDescriptionLabel=new (ELeave) CEikLabel; iControls->AppendL(iDescriptionLabel); iDescriptionLabel->SetContainerWindowL( *this ); iDescriptionLabel->SetTextL( _L("Description:") ); r.SetHeight(12); iDescriptionLabel->SetRect(r); r.Move(0, r.Height()+4); height-=16; */ r.Move(0, 2); iDescriptionEdit=new (ELeave) CEikEdwin; iControls->AppendL(iDescriptionEdit); iDescriptionEdit->SetContainerWindowL( *this ); iDescriptionEdit->ConstructL(); iDescriptionEdit->AddEdwinObserverL(this); iDescriptionEdit->SetTextL(&(KDescription())); r.SetHeight(height); iDescriptionEdit->SetRect(r); r.Move(0, r.Height()+4); SetEditSelected(iDescriptionEdit, true); SetEditActive(iDescriptionEdit, true); } else { SetEditSelected(iTagEdit, true); SetEditActive(iTagEdit, true); } SetRect(aRect); ActivateL(); }