emailuis/uicomponents/src/fstextparser.cpp
branchRCL_3
changeset 32 a3a1ae9acec6
parent 0 8466d47a6819
child 61 dcf0eedfc1a3
equal deleted inserted replaced
31:72d484772ca6 32:a3a1ae9acec6
   715             iGNOSomeText.Set(iText.Read(
   715             iGNOSomeText.Set(iText.Read(
   716                         iPosition, 
   716                         iPosition, 
   717                         info.iFirstFieldPos - iPosition));
   717                         info.iFirstFieldPos - iPosition));
   718             textObject = static_cast<MFsRichTextObject*>
   718             textObject = static_cast<MFsRichTextObject*>
   719                 (CFsRichTextText::NewL(iGNOSomeText, 0));
   719                 (CFsRichTextText::NewL(iGNOSomeText, 0));
   720             
   720             CleanupStack::PushL(textObject);
   721             TInt styleId = iTextStyleManager->GetStyleIDL(iGNOCharFormat);
   721             TInt styleId = iTextStyleManager->GetStyleIDL(iGNOCharFormat);
   722             ((CFsRichTextText*)textObject)->SetStyleId(styleId);
   722             ((CFsRichTextText*)textObject)->SetStyleId(styleId);
   723             
   723             
   724             textObject->SetBeginOfObject(iPosition);
   724             textObject->SetBeginOfObject(iPosition);
   725             textObject->SetEndOfObject(iPosition + iGNOSomeText.Length() - 1);    
   725             textObject->SetEndOfObject(iPosition + iGNOSomeText.Length() - 1);    
   726             
   726             
   727             ((CFsRichTextText*)textObject)->SetTextColor(
   727             ((CFsRichTextText*)textObject)->SetTextColor(
   728                 iGNOCharFormat.iFontPresentation.iTextColor );
   728                 iGNOCharFormat.iFontPresentation.iTextColor );
   729             
   729             
   730             iLastPosition = iPosition;
   730             iLastPosition = iPosition;
   731             iPosition += iGNOSomeText.Length();      
   731             iPosition += iGNOSomeText.Length();
       
   732             CleanupStack::Pop(textObject);
   732             }
   733             }
   733         else
   734         else
   734             {
   735             {
   735             //pobrac fielda
   736             //pobrac fielda
   736             const CTextField* field = iText.TextField(iPosition);
   737             const CTextField* field = iText.TextField(iPosition);
   764                             iPosition, 
   765                             iPosition, 
   765                             iSmileyParser->GetSmileyLength(smileyIndex)));
   766                             iSmileyParser->GetSmileyLength(smileyIndex)));
   766                                   
   767                                   
   767                 CFsRichTextText* smileyTextObject = 
   768                 CFsRichTextText* smileyTextObject = 
   768                     CFsRichTextText::NewL(iGNOSomeText, 0);
   769                     CFsRichTextText::NewL(iGNOSomeText, 0);
       
   770                 CleanupStack::PushL(smileyTextObject); 
   769                 smileyTextObject->SetTextColor(
   771                 smileyTextObject->SetTextColor(
   770                         iGNOCharFormat.iFontPresentation.iTextColor );
   772                         iGNOCharFormat.iFontPresentation.iTextColor );
   771                 
   773                 
   772                 TInt styleId = iTextStyleManager->GetStyleIDL(iGNOCharFormat);
   774                 TInt styleId = iTextStyleManager->GetStyleIDL(iGNOCharFormat);
   773                 ((CFsRichTextText*)smileyTextObject)->SetStyleId(styleId);
   775                 ((CFsRichTextText*)smileyTextObject)->SetStyleId(styleId);
   795                 	texturesize = texture.Texture().Size();
   797                 	texturesize = texture.Texture().Size();
   796                 	}
   798                 	}
   797                 
   799                 
   798                 CFsRichTextPicture* smileyPictureObject = 
   800                 CFsRichTextPicture* smileyPictureObject = 
   799                     CFsRichTextPicture::NewL();
   801                     CFsRichTextPicture::NewL();
   800                 
   802                 CleanupStack::PushL(smileyPictureObject);
   801                 if(iIsSetSizeOfSmiley)      
   803                 if(iIsSetSizeOfSmiley)      
   802                     {
   804                     {
   803                     texturesize = iSizeOfSmiley;
   805                     texturesize = iSizeOfSmiley;
   804                     }
   806                     }
   805                 else if ( texturesize == TSize( 0, 0 ) )
   807                 else if ( texturesize == TSize( 0, 0 ) )
   817                     (smileyPictureObject)->SetTextureSize( texturesize );
   819                     (smileyPictureObject)->SetTextureSize( texturesize );
   818                 
   820                 
   819                 textObject = CFsRichTextSmiley::NewL(
   821                 textObject = CFsRichTextSmiley::NewL(
   820                         smileyTextObject, 
   822                         smileyTextObject, 
   821                         smileyPictureObject);
   823                         smileyPictureObject);
   822                         
   824                 
       
   825                 CleanupStack::Pop(smileyPictureObject);
       
   826                 CleanupStack::Pop(smileyTextObject);
   823                 textObject->SetBeginOfObject(iPosition);
   827                 textObject->SetBeginOfObject(iPosition);
   824                 textObject->SetEndOfObject(iPosition + iGNOSomeText.Length() - 1);
   828                 textObject->SetEndOfObject(iPosition + iGNOSomeText.Length() - 1);
   825                 
   829                 
   826                 iLastPosition = iPosition;
   830                 iLastPosition = iPosition;
   827                 iPosition += iGNOSomeText.Length();     
   831                 iPosition += iGNOSomeText.Length();     
   842         	}
   846         	}
   843         else
   847         else
   844         	{
   848         	{
   845         	textObject = static_cast<MFsRichTextObject*>
   849         	textObject = static_cast<MFsRichTextObject*>
   846                     (CFsRichTextText::NewL(iGNOSomeText, 0));
   850                     (CFsRichTextText::NewL(iGNOSomeText, 0));
   847             
   851             CleanupStack::PushL(textObject); 
   848         	TInt styleId = iTextStyleManager->GetStyleIDL(iGNOCharFormat);
   852         	TInt styleId = iTextStyleManager->GetStyleIDL(iGNOCharFormat);
   849         	((CFsRichTextText*)textObject)->SetStyleId(styleId);
   853         	((CFsRichTextText*)textObject)->SetStyleId(styleId);
   850             
   854             
   851         	textObject->SetBeginOfObject(iPosition);
   855         	textObject->SetBeginOfObject(iPosition);
   852         	textObject->SetEndOfObject(iPosition + iGNOSomeText.Length() - 1);
   856         	textObject->SetEndOfObject(iPosition + iGNOSomeText.Length() - 1);
   885 	            
   889 	            
   886 	        textObject->SetIsWhiteSpace(isWhiteSpace);
   890 	        textObject->SetIsWhiteSpace(isWhiteSpace);
   887 	            
   891 	            
   888 	        iLastPosition = iPosition;
   892 	        iLastPosition = iPosition;
   889 	        iPosition += iGNOSomeText.Length();
   893 	        iPosition += iGNOSomeText.Length();
       
   894 	        
       
   895 	        CleanupStack::Pop(textObject);
   890 	        }     
   896 	        }     
   891         }
   897         }
   892     
   898     
   893     if(-1 != isWordPartOfHotSpotArea)
   899     if(-1 != isWordPartOfHotSpotArea)
   894         {
   900         {