ImagePrint/ImagePrintEngine/DeviceProtocols/xhtmlfilecomposer/src/cimageinfo.cpp
branchRCL_3
changeset 27 159fc2f68139
parent 21 26673e532f65
child 28 d59c248c9d36
--- a/ImagePrint/ImagePrintEngine/DeviceProtocols/xhtmlfilecomposer/src/cimageinfo.cpp	Tue May 25 12:42:41 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,627 +0,0 @@
-/*
-* Copyright (c) 2002-2007 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Contains the declarations for miscellanous image information.
-*
-*/
-
-
-#include <uri8.h> // curi8
-#include <uri16.h> // curi16
-#include <uriutils.h> // uriutils
-#include <escapeutils.h> //utf8 conversions
-
-#include "cimageinfo.h"
-#include "cxfclogger.h"
-
-// log macros for static methods
-
-#ifdef ENABLE_LOGGING
-//#define LOCAL_LOGGING
-#endif
-
-#ifdef LOCAL_LOGGING
-
-#define I_LOG(a) LOG(a)            
-#define I_LOG1(s, v) LOG1(s, v)        
-#define I_LOG2(s, v1, v2) LOG2(s, v1, v2)   
-                                              
-#define I_LOG8(a) LOG8(a)           
-#define I_LOG81(s, v) LOG81(s, v)       
-#define I_LOG82(s, v1, v2) LOG82(s, v1, v2)  
-
-#else
-
-#ifdef ENABLE_LOGGING
-#undef ENABLE_LOGGING
-#endif
-
-#define I_LOG(a)
-#define I_LOG1(s, v)
-#define I_LOG2(s, v1, v2)
-
-#define I_LOG8(a)
-#define I_LOG81(s, v)
-#define I_LOG82(s, v1, v2)
-
-
-#endif
-
-//--------------------------------------------------------------------------------------------
-//
-// CImageInfo::CImageInfo
-//
-//--------------------------------------------------------------------------------------------
-EXPORT_C CImageInfo* CImageInfo::NewL()
-{
-	CImageInfo *self = NewLC();
-	CleanupStack::Pop();	// self
-	return self;
-}
-
-//--------------------------------------------------------------------------------------------
-//
-// CImageInfo::CImageInfo
-//
-//--------------------------------------------------------------------------------------------
-EXPORT_C CImageInfo* CImageInfo::NewL(const CImageInfo& a)
-{
-	CImageInfo *self = NewLC(a);
-	CleanupStack::Pop();	// self
-	return self;
-}
-
-//--------------------------------------------------------------------------------------------
-//
-// CImageInfo::CImageInfo
-//
-//--------------------------------------------------------------------------------------------
-EXPORT_C CImageInfo* CImageInfo::NewLC()
-{
-	CImageInfo *self = new (ELeave) CImageInfo();
-	CleanupStack::PushL(self);
-	self->ConstructL();
-	return self;
-}
-
-//--------------------------------------------------------------------------------------------
-//
-// CImageInfo::CImageInfo
-//
-//--------------------------------------------------------------------------------------------
-EXPORT_C CImageInfo* CImageInfo::NewLC(const CImageInfo& a)
-{
-	CImageInfo *self = new (ELeave) CImageInfo(a);
-	CleanupStack::PushL(self);
-	self->ConstructL();
-	return self;
-}
-
-//--------------------------------------------------------------------------------------------
-//
-// CImageInfo::CImageInfo
-//
-//--------------------------------------------------------------------------------------------
-EXPORT_C void CImageInfo::ConstructL()
-{
-
-}
-
-//--------------------------------------------------------------------------------------------
-//
-// CImageInfo::CImageInfo
-//
-//--------------------------------------------------------------------------------------------
-EXPORT_C CImageInfo::CImageInfo() :
-	iUri(KNullDesC8()),
-	iEncoded(EFalse),
-	iFilePath(KNullDesC8()),
-	iId(KErrNotFound),
-	iCopies(1),
-	iIndex(KErrNotFound)
-{
-
-}
-
-//--------------------------------------------------------------------------------------------
-//
-// CImageInfo::CImageInfo
-//
-//--------------------------------------------------------------------------------------------
-EXPORT_C CImageInfo::CImageInfo(const CImageInfo &a) :
-	iUri(a.iUri),
-	iEncoded(a.iEncoded),
-	iFilePath(a.iFilePath),
-	iId(a.iId),
-	iCopies(a.iCopies),
-	iIndex(a.iIndex)
-{
-
-}
-
-//--------------------------------------------------------------------------------------------
-//
-// CImageInfo::CImageInfo
-//
-//--------------------------------------------------------------------------------------------
-EXPORT_C CImageInfo::~CImageInfo()
-{
-
-}
-
-//--------------------------------------------------------------------------------------------
-//
-// CImageInfo::UriLog
-//
-//--------------------------------------------------------------------------------------------
-EXPORT_C void CImageInfo::UriLog(const TDesC8& aUri)
-{
-#ifdef ENABLE_LOGGING
-	TFileName8 uri;
-    UriLog(aUri, uri);
-    LOG81("[CImageInfo::UriLog]\t \"%S\"", &uri);
-#else // prevent warning in compiler
-	aUri.Length();
-#endif
-}
-
-//--------------------------------------------------------------------------------------------
-//
-// CImageInfo::UriLog
-//
-//--------------------------------------------------------------------------------------------
-EXPORT_C void CImageInfo::UriLog(const TDesC& aUri)
-{
-#ifdef ENABLE_LOGGING
-	TFileName uri;
-    UriLog(aUri, uri);
-    LOG1("[CImageInfo::UriLog(const TDesC&)]\t \"%S\"", &uri);
-#else // prevent warning in compiler
-	aUri.Length();
-#endif
-}
-
-//--------------------------------------------------------------------------------------------
-//
-// CImageInfo::UriLog
-//
-//--------------------------------------------------------------------------------------------
-EXPORT_C void CImageInfo::UriLog(const TDesC8& aUri, TDes8& aConvert)
-{
-#ifdef ENABLE_LOGGING
-
-    I_LOG2("[CImageInfo::UriLog(const TDesC8&, TDes8&)]\t %d - %d", aConvert.MaxLength(), aUri.Length());
-	if(aUri.Length() >= aConvert.MaxLength())
-	{
-    	aConvert.Copy(aUri.Left(aConvert.MaxLength()));
-	}
-	else
-	{
-		aConvert.Copy(aUri);
-	}
-
-	TInt pos = aConvert.Find(KPros8());
-	while(pos != KErrNotFound)
-	{
-		if(KErrNotFound != pos && pos < aConvert.Length())
-			aConvert.Replace(pos, KPros8().Length(), KUnderScore8());
-	
-		pos = aConvert.Find(KPros8());
-	}
-#else // prevent warning in compiler
-	aUri.Length();
-	aConvert.Length();
-#endif
-}
-
-//--------------------------------------------------------------------------------------------
-//
-// CImageInfo::UriLog
-//
-//--------------------------------------------------------------------------------------------
-EXPORT_C void CImageInfo::UriLog(const TDesC& aUri, TDes& aConvert)
-{
-#ifdef ENABLE_LOGGING
-    I_LOG2("[CImageInfo::UriLog(const TDesC&, TDes&)]\t %d - %d", aConvert.MaxLength(), aUri.Length());
-	if(aUri.Length() >= aConvert.MaxLength())
-	{
-    	aConvert.Copy(aUri.Left(aConvert.MaxLength()));
-	}
-	else
-	{
-		aConvert.Copy(aUri);
-	}
-
-	TInt pos = aConvert.Find(KPros());
-	while(pos != KErrNotFound)
-	{
-		if(KErrNotFound != pos && pos < aConvert.Length())
-			aConvert.Replace(pos, KPros().Length(), KUnderScore());
-	
-		pos = aConvert.Find(KPros());
-	}
-#else // prevent warning in compiler
-	aUri.Length();
-	aConvert.Length();
-#endif
-}
-
-//--------------------------------------------------------------------------------------------
-//
-// CImageInfo::ConvertL
-//
-//--------------------------------------------------------------------------------------------
-EXPORT_C void CImageInfo::ConvertToUTF8L(const TDesC& aSource, TDes8& aResult)
-{
-	HBufC8* buf = EscapeUtils::ConvertFromUnicodeToUtf8L(aSource);
-	if(buf)
-	{
-	    I_LOG2("[CImageInfo::ConvertToUTF8L]\t %d - %d", aResult.MaxLength(), buf->Des().Length());
-		aResult.Copy(buf->Des());
-		delete buf;
-	}
-}
-
-//--------------------------------------------------------------------------------------------
-//
-// CImageInfo::ConvertL
-//
-//--------------------------------------------------------------------------------------------
-EXPORT_C void CImageInfo::ConvertToUnicodeL(const TDesC8& aSource, TDes& aResult)
-{
-	HBufC16* buf = EscapeUtils::ConvertToUnicodeFromUtf8L(aSource);
-	if(buf)
-	{
-	    I_LOG2("[CImageInfo::ConvertToUnicodeL]\t %d - %d", aResult.MaxLength(), buf->Des().Length());
-		aResult.Copy(buf->Des());
-		delete buf;
-	}
-}
-
-//--------------------------------------------------------------------------------------------
-//
-// CImageInfo::EncodeUriL
-//
-//--------------------------------------------------------------------------------------------
-EXPORT_C void CImageInfo::EncodeUriL(const TDesC8& aDecodedUri, TDes8& aEncodedUri)
-{
-    TFileName unicodeUri;
-    ConvertToUnicodeL( aDecodedUri, unicodeUri );
-    EncodeUriL(unicodeUri, aEncodedUri);
-}
-//--------------------------------------------------------------------------------------------
-//
-// CImageInfo::EncodeUriL
-//
-//--------------------------------------------------------------------------------------------
-EXPORT_C void CImageInfo::EncodeUriL(const TDesC16& aDecodedUri, TDes8& aEncodedUri)
-{
-    I_LOG("[CImageInfo::EncodeUriL]");
-    CUri8* uri8 = UriUtils::CreateUriL( aDecodedUri );
-    CleanupStack::PushL( uri8 );
-    HBufC16* uriBuf = uri8->Uri().DisplayFormL();
-    CleanupStack::PushL( uriBuf );
-
-    //alloc enough memory: encoding replaces one char with three: '%XX'
-    HBufC8* uriBuf8 = HBufC8::NewLC(KMaxFileName*3);
-
-   	TPtr8 buf8Ptr(uriBuf8->Des());
-    ConvertToUTF8L( uriBuf->Des(), buf8Ptr );
-    I_LOG("[CImageInfo::EncodeUriL]\t <-ConvertToUTF8L");
-
-    // encode additionally the following characters
-    //";"  | "?"  | "@" | "&" | "=" | "+" | "$" | ","
-    // no encoding of "/" or ":" for paths
-
-	TInt pos = buf8Ptr.LocateReverse('/');
-    I_LOG1("[CImageInfo::EncodeUriL]\t pos %d", pos);
-    if(KErrNotFound != pos)
-    {
-		TPtr8 namePtr(buf8Ptr.LeftTPtr(pos));
-	    I_LOG1("[CImageInfo::EncodeUriL]\t namePtr.Length() %d", namePtr.Length());
-	    UriLog(namePtr);
-
-	    I_LOG("[CImageInfo::EncodeUriL]\t ->EncodeFileNameL");
-	    EncodeFileNameL(namePtr);
-    }
-
-    if(buf8Ptr.Length() > aEncodedUri.MaxLength())
-    	User::Leave(KErrOverflow);
-
-    aEncodedUri.Copy(buf8Ptr);
-    I_LOG("[CImageInfo::EncodeUriL]\t aEncodedUri:");
-    UriLog(aEncodedUri);
-
-    CleanupStack::PopAndDestroy( uriBuf8 );
-    CleanupStack::PopAndDestroy( uriBuf );
-    CleanupStack::PopAndDestroy( uri8 );
-}
-
-
-//--------------------------------------------------------------------------------------------
-//
-// CImageInfo::SetUri
-//
-//--------------------------------------------------------------------------------------------
-EXPORT_C void CImageInfo::SetUri(const TDesC8& aUri, const TBool aEncoded)
-{
-	iUri.Copy(aUri);
-	iEncoded = aEncoded;
-}
-
-//--------------------------------------------------------------------------------------------
-//
-// CImageInfo::SetUri
-//
-//--------------------------------------------------------------------------------------------
-EXPORT_C void CImageInfo::SetUriL(const TDesC& aUri)
-{
-	ConvertToUTF8L(aUri, iUri);
-}
-
-//--------------------------------------------------------------------------------------------
-//
-// CImageInfo::GetUri
-//
-//--------------------------------------------------------------------------------------------
-EXPORT_C void CImageInfo::GetUri(TDes8& aUri) const
-{
-	aUri.Copy(iUri);
-}
-
-//--------------------------------------------------------------------------------------------
-//
-// CImageInfo::GetUri
-//
-//--------------------------------------------------------------------------------------------
-EXPORT_C void CImageInfo::GetUriL(TDes& aUri) const
-{
-	ConvertToUnicodeL( iUri, aUri );
-}
-
-//--------------------------------------------------------------------------------------------
-//
-// CImageInfo::GetUri
-//
-//--------------------------------------------------------------------------------------------
-EXPORT_C void CImageInfo::GetEncodedUriL(TDes8& aUri)
-{
-    I_LOG1("[CImageInfo::EncodeUriL]\t iEncoded = %d", iEncoded);
-
-	if(iEncoded)
-		GetUri(aUri);
-	else
-		EncodeUriL(iUri, aUri);
-}
-
-//--------------------------------------------------------------------------------------------
-//
-// CImageInfo::CompareUri
-//
-//--------------------------------------------------------------------------------------------
-EXPORT_C TBool CImageInfo::CompareUri(const TDesC& aUri)
-{
-	if(KNullDesC() == aUri && KNullDesC8() == iUri)
-		return ETrue;
-
-	TFileName8 tmpUri8;
-	//First try copy (if earlier copied 8->16 the conversion cannot be done anymore):
-	tmpUri8.Copy(aUri);
-	if(CompareUri(tmpUri8))
-		return ETrue;
-	
-	//Then convert:
-	TRAPD(err, ConvertToUTF8L(aUri, tmpUri8));
-	if(KErrNone == err)
-		return CompareUri(tmpUri8);
-
-	return EFalse;
-}
-
-//--------------------------------------------------------------------------------------------
-//
-// CImageInfo::CompareUri
-//
-//--------------------------------------------------------------------------------------------
-EXPORT_C TBool CImageInfo::CompareUri(const TDesC8& aUri)
-{
-	if(0 == iUri.Compare(aUri))
-		return ETrue;
-
-	TFileName8 encodedUri;
-	TRAPD(err, EncodeUriL(iUri, encodedUri));
-	if(KErrNone == err && 0 == encodedUri.Compare(aUri))
-		return ETrue;
-
-	return EFalse;
-}
-
-//--------------------------------------------------------------------------------------------
-//
-// CImageInfo::SetUri
-//
-//--------------------------------------------------------------------------------------------
-EXPORT_C void CImageInfo::SetFilePath(const TDesC8& aFilePath)
-{
-	iFilePath = aFilePath;
-}
-
-//--------------------------------------------------------------------------------------------
-//
-// CImageInfo::SetUri
-//
-//--------------------------------------------------------------------------------------------
-EXPORT_C void CImageInfo::SetFilePathL(const TDesC& aFilePath)
-{
-	ConvertToUTF8L(aFilePath, iFilePath);
-}
-
-//--------------------------------------------------------------------------------------------
-//
-// CImageInfo::SetUri
-//
-//--------------------------------------------------------------------------------------------
-EXPORT_C void CImageInfo::GetFilePath(TDes8& aFilePath) const
-{
-	aFilePath.Copy(iFilePath);
-}
-
-//--------------------------------------------------------------------------------------------
-//
-// CImageInfo::SetUri
-//
-//--------------------------------------------------------------------------------------------
-EXPORT_C void CImageInfo::GetFilePathL(TDes& aFilePath) const
-{
-	ConvertToUnicodeL(iFilePath, aFilePath);
-}
-
-//--------------------------------------------------------------------------------------------
-//
-// CImageInfo::CompareFilePath
-//
-//--------------------------------------------------------------------------------------------
-EXPORT_C TBool CImageInfo::CompareFilePath(const TDesC& aFilePath)
-{
-	if(KNullDesC() == aFilePath && KNullDesC8() == iFilePath)
-		return ETrue;
-
-	TFileName8 tmpFile8;
-	TRAPD(err, ConvertToUTF8L(aFilePath, tmpFile8));
-	if(KErrNone == err)
-		return CompareFilePath(tmpFile8);
-
-	return EFalse;
-}
-
-//--------------------------------------------------------------------------------------------
-//
-// CImageInfo::CompareFilePath
-//
-//--------------------------------------------------------------------------------------------
-EXPORT_C TBool CImageInfo::CompareFilePath(const TDesC8& aFilePath)
-{
-	if(0 == iFilePath.Compare(aFilePath))
-		return ETrue;
-
-	return EFalse;
-}
-
-//--------------------------------------------------------------------------------------------
-//
-// CImageInfo::SetUri
-//
-//--------------------------------------------------------------------------------------------
-EXPORT_C void CImageInfo::SetId(const TInt aId)
-{
-	iId = aId;
-}
-
-//--------------------------------------------------------------------------------------------
-//
-// CImageInfo::SetUri
-//
-//--------------------------------------------------------------------------------------------
-EXPORT_C TInt CImageInfo::Id() const
-{
-	return iId;
-}
-
-//--------------------------------------------------------------------------------------------
-//
-// CImageInfo::SetUri
-//
-//--------------------------------------------------------------------------------------------
-EXPORT_C void CImageInfo::SetCopies(const TInt aCopies)
-{
-	iCopies = aCopies;
-}
-
-//--------------------------------------------------------------------------------------------
-//
-// CImageInfo::SetUri
-//
-//--------------------------------------------------------------------------------------------
-EXPORT_C TInt CImageInfo::Copies() const
-{
-	return iCopies;
-}
-
-//--------------------------------------------------------------------------------------------
-//
-// CImageInfo::SetUri
-//
-//--------------------------------------------------------------------------------------------
-EXPORT_C void CImageInfo::SetIndex(const TInt aIndex)
-{
-	iIndex = aIndex;
-}
-
-//--------------------------------------------------------------------------------------------
-//
-// CImageInfo::SetUri
-//
-//--------------------------------------------------------------------------------------------
-EXPORT_C TInt CImageInfo::Index() const
-{
-	return iIndex;
-}
-
-//--------------------------------------------------------------------------------------------
-//
-// CImageInfo::EncodeFileNameL
-//
-//--------------------------------------------------------------------------------------------
-EXPORT_C void CImageInfo::EncodeFileNameL(TDes8& aFileName)
-{
-
-	HBufC8* result = HBufC8::NewLC(aFileName.MaxLength());
-
-	for(TInt i = 0; i < result->Length(); ++i)
-	{
-		TUint8 ch = aFileName[i];
-		switch(ch)
-		{
-			case ':':
-				AppendL(result, KColonUrlEncoded());
-				break;
-			case '/':
-				AppendL(result, KSlashUrlEncoded());
-				break;
-			default:
-				TBufC8<1> character(&ch);
-				AppendL(result, character);
-				break;
-		}
-	}
-	aFileName.Copy(result->Des());
-	CleanupStack::PopAndDestroy(result);
-}
-
-//--------------------------------------------------------------------------------------------
-//
-// CImageInfo::Append
-//
-//--------------------------------------------------------------------------------------------
-EXPORT_C void CImageInfo::AppendL(HBufC8* aWhere, const TDesC8& aWhat)
-{
-	if( (aWhere->Length() + aWhat.Length()) >= aWhere->Des().MaxLength())
-	{
-    	I_LOG2("[CImageInfo::AppendL]\t %d - %d", aWhat.Length(), aWhere->Length());
-		aWhere = aWhere->ReAllocL(aWhere->Des().MaxLength() + aWhat.Length());
-	}
-
-	aWhere->Des().Append(aWhat);
-}
-
-//  End of File