localisation/apparchitecture/apparc/APADBASE.CPP
author Maciej Seroka <maciejs@symbian.org>
Tue, 03 Aug 2010 10:20:34 +0100
branchSymbian3
changeset 57 b8d18c84f71c
permissions -rw-r--r--
Re-enabled smoke test for Language-setting
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
57
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
     1
// Copyright (c) 1997-2009 Nokia Corporation and/or its subsidiary(-ies).
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
     2
// All rights reserved.
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
     3
// This component and the accompanying materials are made available
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
     4
// under the terms of "Eclipse Public License v1.0"
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
     5
// which accompanies this distribution, and is available
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
     6
// at the URL "http://www.eclipse.org/legal/epl-v10.html".
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
     7
//
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
     8
// Initial Contributors:
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
     9
// Nokia Corporation - initial contribution.
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    10
//
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    11
// Contributors:
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    12
//
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    13
// Description:
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    14
// apadbase.cpp
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    15
//
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    16
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    17
#include <apadbase.h>
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    18
#include "APASTD.H" // Panics etc.
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    19
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    20
const TUid KUidApaDoorBaseStream = {0x10003A36};
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    21
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    22
//
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    23
// CApaDoorBase
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    24
//
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    25
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    26
EXPORT_C CApaDoorBase::CApaDoorBase()
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    27
	{
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    28
	}
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    29
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    30
EXPORT_C void CApaDoorBase::ExternalizeBaseStreamL(CStreamStore& aStore,CStreamDictionary& aStreamDict)const
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    31
/** Externalises the information contained in this base class to a stream in the 
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    32
specified store.
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    33
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    34
The resulting stream ID is associated with an internal UID, and placed in 
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    35
the specified stream dictionary.
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    36
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    37
@publishedAll
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    38
@released
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    39
@param aStore The store to contain the stream.
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    40
@param aStreamDict The stream dictionary to contain the stream ID (and an associated 
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    41
internal UID). */
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    42
	{
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    43
	RStoreWriteStream stream;
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    44
	TStreamId id=stream.CreateLC(aStore);
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    45
	//
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    46
	// write the format
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    47
	if (iFormat==ETemporarilyIconic)
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    48
		stream.WriteInt8L(EGlassDoor);
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    49
	else
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    50
		stream.WriteInt8L(iFormat);
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    51
	//
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    52
	// write the size
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    53
	TSize size;
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    54
	if (iFormat==ETemporarilyIconic)
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    55
		size = GlassDoorSize();
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    56
	else
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    57
		GetSizeInTwips(size);
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    58
	stream<< size;
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    59
	// 
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    60
	// write the source and close
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    61
	stream<< iSource;
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    62
	stream.CommitL();
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    63
	CleanupStack::PopAndDestroy(); // stream
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    64
	aStreamDict.AssignL(KUidApaDoorBaseStream,id);
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    65
	}
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    66
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    67
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    68
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    69
EXPORT_C TSize CApaDoorBase::InternalizeBaseStreamL(const CStreamStore& aStore,const CStreamDictionary& aStreamDict)
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    70
/** Internalises the information for this base class from a stream in the specified 
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    71
store, and returns the size of the icon or glass door.
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    72
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    73
The stream ID is extracted from the specified stream dictionary. The UID associated 
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    74
with the stream ID is the same as that used when externalising.
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    75
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    76
@publishedAll 
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    77
@released
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    78
@param aStore The store containing the stream.
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    79
@param aStreamDict The steam dictionary containing the stream ID.
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    80
@return The size of the icon or glass door, in twips. */
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    81
	{
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    82
	TStreamId id=aStreamDict.At(KUidApaDoorBaseStream);
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    83
	if (id==KNullStreamId)
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    84
		User::Leave(KErrCorrupt); //  there is no base stream - the file is not valid (used to panic EPanicNoBaseDoorStream)
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    85
	RStoreReadStream stream;
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    86
	stream.OpenLC(aStore,id);
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    87
	iFormat = (TFormat)stream.ReadInt8L();
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    88
	__ASSERT_DEBUG(iFormat==EIconic || iFormat==EGlassDoor,Panic(EDPanicIllegalDoorFormat));
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    89
	TSize size;
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    90
	stream>> size;
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    91
	stream>> iSource;
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    92
	CleanupStack::PopAndDestroy(); // stream
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    93
	return size;
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    94
	}
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    95
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    96
// Virtual functions from CPicture
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    97
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    98
EXPORT_C TStreamId CApaDoorBase::StoreL(CStreamStore& aStore) const
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
    99
/** Stores the Embedded Document to the specified store.
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   100
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   101
@publishedAll 
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   102
@released
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   103
@param aStore The store containing the stream.
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   104
@return The ID of the (head) stream used to store the Embedded Document */
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   105
	{
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   106
	return CPicture::StoreL(aStore);
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   107
	}
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   108
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   109
EXPORT_C void CApaDoorBase::SetScaleFactor(TInt aScaleFactorWidth,TInt aScaleFactorHeight)
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   110
/** Sets the Embedded Document's scale factors
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   111
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   112
@publishedAll 
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   113
@released
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   114
@param aScaleFactorWidth The width scale factor, in percent
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   115
@param aScaleFactorHeight The height scale factor, in percent
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   116
*/
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   117
	{
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   118
	CPicture::SetScaleFactor(aScaleFactorWidth, aScaleFactorHeight);
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   119
	}
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   120
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   121
EXPORT_C void CApaDoorBase::SetCropInTwips(const TMargins& aMargins)
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   122
/** Sets the cropping margins of a Embedded Document in twips.
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   123
These are relative to the original unscaled size of the Embedded Document.
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   124
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   125
@publishedAll 
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   126
@released
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   127
@param aMargins The cropping margins of the Embedded Document, in twips
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   128
*/	
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   129
	{
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   130
	CPicture::SetCropInTwips(aMargins);
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   131
	}
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   132
	
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   133
EXPORT_C TPictureCapability CApaDoorBase::Capability() const
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   134
/** Gets the Embedded Document's capabilities.
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   135
These include whether it is scalable and croppable.
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   136
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   137
@publishedAll 
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   138
@released
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   139
@return The capabilities of the Embedded Document
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   140
*/
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   141
	{
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   142
	return CPicture::Capability();
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   143
	}
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   144
	
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   145
EXPORT_C void CApaDoorBase::GetCropInTwips(TMargins& aMargins) const 
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   146
/** Gets the cropping margins of a Embedded Document in twips.
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   147
These margins are relative to the original unscaled size of the Embedded Document.
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   148
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   149
@publishedAll 
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   150
@released
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   151
@param aMargins The cropping margins of the Embedded Document, in twips 
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   152
*/
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   153
	{
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   154
	CPicture::GetCropInTwips(aMargins);
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   155
	}
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   156
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   157
EXPORT_C TInt CApaDoorBase::ScaleFactorWidth() const
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   158
/** Gets the Embedded Document's width scale factor.
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   159
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   160
@publishedAll 
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   161
@released
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   162
@return The width scale factor, in percent
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   163
*/	
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   164
	{
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   165
	return CPicture::ScaleFactorWidth();
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   166
	}
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   167
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   168
EXPORT_C TInt CApaDoorBase::ScaleFactorHeight() const
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   169
/** Gets the Embedded Document height scale factor.
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   170
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   171
@publishedAll 
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   172
@released
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   173
@return The height scale factor, in percent
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   174
*/
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   175
	{
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   176
	return CPicture::ScaleFactorHeight();
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   177
	}
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   178
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   179
EXPORT_C TBool CApaDoorBase::LineBreakPossible(TUint aClass,TBool aBeforePicture,TBool aHaveSpaces) const
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   180
/** States whether a line break is possible, either before or after an Embedded Document.
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   181
The default implementation returns ETrue, implying that there is a break opportunity both before and after the Embedded Document, whether or not a space is present.
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   182
This may be overridden for special types of Embedded Documents.
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   183
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   184
@publishedAll 
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   185
@released
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   186
@param aClass The line breaking class of the adjacent character
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   187
@param aBeforePicture ETrue, if the adjacent character is before the Embedded Document; EFalse, if the adjacent character is afterwards
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   188
@param aHaveSpaces ETrue, if spaces occur between the adjacent character and the Embedded Document; EFalse, otherwise
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   189
@return ETrue, if a line break is possible; EFalse, otherwise. 
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   190
*/	
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   191
	{
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   192
	return CPicture::LineBreakPossible(aClass, aBeforePicture, aHaveSpaces);
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   193
	}
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   194
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   195
EXPORT_C TBool CApaDoorBase::NativePixelSize(TSize& aPixelSize)
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   196
/** Returns the native pixel size of the bitmap. 
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   197
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   198
Derived classes might be implemented as bitmaps, in that case it might be interesting to know this.
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   199
@publishedAll 
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   200
@released
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   201
@param aPixelSize The pixel size
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   202
@return TBool ETrue, if the derived classes are implemented as bitmaps; EFalse, otherwise.
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   203
*/	
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   204
	{
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   205
	return const_cast<CApaDoorBase*>(this)->CPicture::NativePixelSize(aPixelSize);	// CPicture::NativePixelSize() is logical const
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   206
	}
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   207
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   208
/** Reserved for future use */
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   209
EXPORT_C void CApaDoorBase::CApaDoorBase_Reserved1()
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   210
	{
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   211
	}
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   212
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   213
/** Reserved for future use */
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   214
EXPORT_C void CApaDoorBase::CApaDoorBase_Reserved2()
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   215
	{
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   216
	}
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   217
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   218
b8d18c84f71c Re-enabled smoke test for Language-setting
Maciej Seroka <maciejs@symbian.org>
parents:
diff changeset
   219