--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/appfw/apparchitecture/inc/APADBASE.H Tue Feb 02 10:12:00 2010 +0200
@@ -0,0 +1,120 @@
+// Copyright (c) 1997-2009 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:
+// apadbase.h
+//
+
+#ifndef __APADBASE_H__
+#define __APADBASE_H__
+
+#include <e32std.h>
+#include <s32std.h>
+#include <gdi.h>
+
+// Base class for a wrapper for embedded CApaDocuments
+
+/** The base class for the graphic representation of an embedded document.
+
+An embedded document can be represented either as an icon or as a glass picture.
+Such a graphic representation is known as a door.
+
+The class is intended for derivation.
+
+@publishedAll
+@released
+@see CApaDoor
+@see CApaModelDoor */
+class CApaDoorBase : public CPicture
+ {
+public:
+ /** Defines the possible formats for the graphical representation of the embedded
+ document. */
+ enum TFormat {
+ /** The representation is an icon. */
+ EIconic,
+ /** The representation is a glass door. */
+ EGlassDoor,
+ /** The representation is a glass door but has been temporarily switched to an icon. */
+ ETemporarilyIconic
+ };
+public:
+ inline TFormat Format() const;
+ inline TUid Source() const;
+ inline void SetSource(TUid aSource);
+public: // from CPicture
+ IMPORT_C TStreamId StoreL(CStreamStore& aStore) const;
+ IMPORT_C void SetScaleFactor(TInt aScaleFactorWidth, TInt aScaleFactorHeight);
+ IMPORT_C void SetCropInTwips(const TMargins& aMargins);
+ IMPORT_C TPictureCapability Capability() const;
+ IMPORT_C void GetCropInTwips(TMargins& aMargins) const;
+ IMPORT_C TInt ScaleFactorWidth() const;
+ IMPORT_C TInt ScaleFactorHeight() const;
+ IMPORT_C TBool LineBreakPossible(TUint aClass, TBool aBeforePicture, TBool aHaveSpaces) const;
+ IMPORT_C TBool NativePixelSize(TSize& aPixelSize);
+protected:
+ IMPORT_C CApaDoorBase();
+ IMPORT_C void ExternalizeBaseStreamL(CStreamStore& aStore,CStreamDictionary& aStreamDict)const;
+ IMPORT_C TSize InternalizeBaseStreamL(const CStreamStore& aStore,const CStreamDictionary& aStreamDict); // returns current size in twips
+private:
+ IMPORT_C virtual void CApaDoorBase_Reserved1();
+ IMPORT_C virtual void CApaDoorBase_Reserved2();
+protected:
+ /** Returns the size of the glass door, in twips.
+
+ A concrete implementation of this function is provided by derived classes.
+
+ @return The size of the glass door, in twips.
+
+ @publishedAll
+ @released */
+ virtual TSize GlassDoorSize() const = 0;
+protected:
+ TFormat iFormat;
+ TUid iSource; // foreign representation of a translated door (eg MS Word doc)
+private:
+ TInt iCApaDoorBase_Spare1;
+ };
+
+//
+// inlines
+//
+
+/** Gets the current format of the representation of the embedded document.
+
+@return The format for the representation of the embedded document. */
+inline CApaDoorBase::TFormat CApaDoorBase::Format()const
+ { return iFormat; }
+
+/** Gets the UID that identifies this door when the source originates on a non-Symbian
+OS device.
+
+This is used by converters.
+
+@return The UID for the non-Symbian OS source. For a source that originates
+on a Symbian OS phone, this is KNullUid. */
+inline TUid CApaDoorBase::Source()const
+ { return iSource; }
+
+/** Sets the UID that identifies this door when the source originates on a non-Symbian
+OS device.
+
+This is used by converters.
+
+@param aSource The UID for the non-Symbian OS source. For a source that originates
+on a Symbian OS phone, this is KNullUid. */
+inline void CApaDoorBase::SetSource(TUid aSource)
+ { iSource=aSource; }
+
+#endif // __APADBASE_H__
+
+