diff -r 5cc91383ab1e -r 7333d7932ef7 appinstall_plat/sifui_api/inc/sifuiappinfo.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/appinstall_plat/sifui_api/inc/sifuiappinfo.h Tue Aug 31 15:21:33 2010 +0300 @@ -0,0 +1,131 @@ +/* +* Copyright (c) 2010 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: CSifUiAppInfo for application details +* +*/ + +#ifndef C_SIFUIAPPINFO_H +#define C_SIFUIAPPINFO_H + +#include // CBase + +class RWriteStream; +class CApaMaskedBitmap; + + +/** + * CSifUiAppInfo transfers application details from a SIF plugin + * to UI process in device dialog server. See also Swi::CAppInfo. + * + * @lib sifui.lib + * @since 10.1 + */ +class CSifUiAppInfo : public CBase + { + public: // constructors and destructor + /** + * Creates new CSifUiAppInfo object and pushes it to cleanup stack. + * Does not take the ownership of aAppIcon parameter. + * @param aAppName - application name + * @param aAppVendor - vendor name + * @param aAppVersion - application version + * @param aAppSize - application size in bytes + * @param aAppIcon - application icon (or NULL if no icon) + * @returns CSifUiAppInfo* -- new CSifUiAppInfo object + */ + IMPORT_C static CSifUiAppInfo* NewLC( const TDesC& aAppName, + const TDesC& aAppVendor, const TVersion& aAppVersion, TInt aAppSize, + const CApaMaskedBitmap* aAppIcon ); + + /** + * Creates new CSifUiAppInfo object. + * Does not take the ownership of aAppIcon parameter. + * @param aAppName - application name + * @param aAppVendor - vendor name + * @param aAppVersion - application version + * @param aAppSize - application size in bytes + * @param aAppIcon - application icon (or NULL if no icon) + * @returns CSifUiAppInfo* -- new CSifUiAppInfo object + */ + IMPORT_C static CSifUiAppInfo* NewL( const TDesC& aAppName, + const TDesC& aAppVendor, const TVersion& aAppVersion, TInt aAppSize, + const CApaMaskedBitmap* aAppIcon ); + + /** + * Creates new CSifUiAppInfo object by copying existing object. + * @param aAppInfo - application info to copy + * @returns CSifUiAppInfo* -- new CSifUiAppInfo object + */ + IMPORT_C static CSifUiAppInfo* NewL( const CSifUiAppInfo& aAppInfo ); + + /** + * Destructor. + */ + ~CSifUiAppInfo(); + + public: // new functions + + /** + * Application name. + * @returns TDesC - application name + */ + IMPORT_C const TDesC& Name() const; + + /** + * Application vendor. + * @returns TDesC - vendor name + */ + IMPORT_C const TDesC& Vendor() const; + + /** + * Application version. + * @returns TVersion - application version + */ + IMPORT_C const TVersion& Version() const; + + /** + * Application size. + * @returns TInt - application size + */ + IMPORT_C TInt Size() const; + + /** + * Application icon and mask bitmaps. Does not transfer ownership. + * @returns CApaMaskedBitmap - icon and mask bitmaps, NULL if no bitmaps + */ + IMPORT_C const CApaMaskedBitmap* Bitmaps() const; + + /** + * Externalizes this object to the specified write stream. + * @param aStream Stream to which the contents is written. + */ + IMPORT_C void ExternalizeL( RWriteStream& aStream ) const; + + private: // new functions + CSifUiAppInfo(); + void ConstructL( const TDesC& aAppName, const TDesC& aAppVendor, + const TVersion& aAppVersion, TInt aAppSize, + const CApaMaskedBitmap* aAppIcon ); + void ConstructL( const CSifUiAppInfo& aAppInfo ); + + private: // data + HBufC* iAppName; + HBufC* iAppVendor; + TVersion iAppVersion; + TInt iAppSize; + CApaMaskedBitmap* iAppIcon; + }; + +#endif // C_SIFUIAPPINFO_H +