--- a/webengine/wmlengine/src/lmgr/include/ObjectUtils.h Mon May 03 13:32:15 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,298 +0,0 @@
-/*
-* Copyright (c) 2003 - 2004 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "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: Performs a set of util methods related to objects.
-*
-*/
-
-
-
-#ifndef OBJECTUTILS_H
-#define OBJECTUTILS_H
-
-// INCLUDES
-#include <e32def.h>
-#include <badesca.h>
-
-#include "nwx_defs.h"
-#include "nw_dom_element.h"
-
-// CONSTANTS
-
-// MACROS
-
-// DATA TYPES
-
-// FUNCTION PROTOTYPES
-
-// FORWARD DECLARATIONS
-#ifdef __cplusplus
-extern "C" {
-#endif /* __cplusplus */
-
-typedef struct NW_LMgr_Box_s NW_LMgr_Box_t;
-typedef struct NW_HED_DomHelper_s NW_HED_DomHelper_t;
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-class CBrCtlObjectInfo;
-
-// CLASS DECLARATION
-
-class ObjectUtils
- {
- public: // Datatypes
- typedef enum
- {
- EHandlerImage,
- EHandlerPlugin,
- EHandlerExternalApp,
- EHandlerAny
- } THandlerType;
-
-
- public: // Constructors and destructor
- /**
- * Destructor.
- */
- ~ObjectUtils();
-
-
- public: // New Methods
- /**
- * Returns ETrue if aBox is an object box.
- *
- * @param aBox a box.
- * @param aOnlyIfPlaceHolder if true this method will only return true
- * if the box is showing its place-holder (not an active plugin).
- * Otherwise it was true true if it an object-box.
- *
- * @return ETrue or EFalse.
- */
- static TBool IsObjectBox(const NW_LMgr_Box_t& aBox, TBool aOnlyIfPlaceHolder);
-
- /**
- * Returns ETrue if aBox is an object box in the pre-active state.
- *
- * @param aBox a box.
- *
- * @return ETrue or EFalse.
- */
- static TBool IsDownloadedObjectBox(const NW_LMgr_Box_t& aBox);
-
- /**
- * Gets the following information about the object's resource: whether a third party
- * plugin or external application can open the resource, the size of the resource,
- * the mime-type of the resource, and the name of the plugin or application to
- * be used to open the resource.
- *
- * @param aBox the object's associated box.
- * @param aBrCtlObjectInfo, upon completion it holds the info about the object.
- *
- * @return void.
- */
- static void GetBrCtlObjectInfoL(const NW_LMgr_Box_t& aBox, CBrCtlObjectInfo& aBrCtlObjectInfo);
-
- /**
- * Determines whether a given content-type of dot-extension has a cooresponding
- * plugin or external application. aContentType and aUrl can be NULL, but at least
- * one must be non-NULL (otherwise it will always return EFalse). If aHandlerType
- * is EPlugin then it returns ETrue only if their is a supported plugin. If aHandlerType
- * is EExternalApp then it returns ETrue only if their is a supported external
- * application. If aHandlerType is EBoth then it returns ETrue only if their is a
- * supported plugin or external application.
- *
- * @param aContentType the content type to compare against, may be NULL.
- * @param aUrl the url to extract the dot-extension and to compare against, may be NULL.
- * @param aHandlerType the type of handler to consider.
- *
- * @return ETrue or EFalse.
- */
- static TBool IsSupported(const TDesC* aContentType, const TDesC* aUrl,
- THandlerType aHandlerType);
-
- /**
- * Returns ETrue if plugin support is enabled.
- *
- * @return ETrue or EFalse.
- */
- static TBool Enabled();
-
- /**
- * Extracts the attribute's names and values from the given aElementNode.
- *
- * @param aDomHelper the caller's DomHelper, used to interact with its
- * dom-tree.
- * @param aElementNode the element to extract attributes from.
- * @param aNameArray the attribute names.
- * @param aValueArray the attribute values.
- *
- * @return void
- */
- static void GetAttributesL(const NW_HED_DomHelper_t& aDomHelper,
- const NW_DOM_ElementNode_t& aElementNode, CDesCArray** aNameArray,
- CDesCArray** aValueArray);
-
- /**
- * Extracts the <param> tag attribute's name and value from the given aElementNode.
- *
- * @param aDomHelper the caller's DomHelper, used to interact with its
- * dom-tree.
- * @param aElementNode the element to extract attributes from.
- * @param aNameArray the attribute names.
- * @param aValueArray the attribute values.
- *
- * @return void
- */
- static void GetParamAttributesL(const NW_HED_DomHelper_t& aDomHelper,
- const NW_DOM_ElementNode_t& aElementNode, CDesCArray** aNameArray,
- CDesCArray** aValueArray);
-
- /**
- * Given a name and value array attained from GetAttributesL it returns
- * a copy of the attribute value associated with the given name. Upon
- * success the caller adopts aValue. aValue is set to NULL if no
- * attribute with the given name is present.
- *
- * @param aNameArray the attribute names.
- * @param aValueArray the attribute values.
- * @param aName the name of the attribute to be extracted.
- * @param aValue upon success it contains a copy of the attribute value or
- * NULL if the attribute wasn't present.
- *
- * @return void
- */
- static void GetAttributeValueL(const CDesCArray& aNameArray,
- const CDesCArray& aValueArray, const TDesC& aName, TDesC** aValue);
-
- /**
- * Given a name and value array this method inserts name/value pair to array.
- * If the name already is in the array, replace value
- * by deleting old pair and adding new pair
- *
- * @param aNameArray the attribute names.
- * @param aValueArray the attribute values.
- * @param aName the name of the attribute to be replaced.
- * @param aValue the value of the attribute to be replaced.
- *
- * @return void
- */
- static void SetAttributeValueL( CDesCArray& aNameArray,
- CDesCArray& aValueArray, const TDesC& aName, const TDesC& aValue);
-
- /**
- * Given a name and value array this method remove name/value pair from array.
- * If the name is not found in the array, do nothing
- *
- * @param aNameArray the attribute names.
- * @param aValueArray the attribute values.
- * @param aName the name of the attribute to be removed.
- *
- * @return void
- */
- static void ObjectUtils::RemoveAttributeL( CDesCArray& aNameArray,
- CDesCArray& aValueArray, const TDesC& aName );
-
- /**
- * Returns the content type associated with the given class-id.
- *
- * @param aClassId the classid to lookup.
- *
- * @return the associated content type of NULL if no association exists.
- */
- static TDesC* ObjectUtils::GetAssociatedContentType(const TDesC& aClassId);
-
- /**
- * Returns the source param name associated with the given class-id.
- *
- * @param aClassId the classid to lookup.
- *
- * @return the associated source param name of NULL if no association exists.
- */
- static TDesC* ObjectUtils::GetAssociatedSourceParamName(const TDesC& aClassId);
-
- /**
- * General purpose panic function for Object related errors.
- *
- * @since 2.6
- * @param aError The reason for panic. Could be left out.
- * @return void
- */
- static void Panic(TInt aError = KErrNone);
-
- /**
- * General purpose panic function for Object related errors.
- *
- * @since 2.8
- * @param aUrl The uri with file name and extension.
- * @return the content type of the uri
- */
- static HBufC* ObjectUtils::GetContentTypeByUrl(const TDesC* aUri);
-
- private: // Private Methods
- /**
- * C++ default constructor.
- */
- ObjectUtils();
-
- /**
- * Returns the name of the plugin that supports the given content-type or
- * dot-extension otherwise NULL if no plugin support this type. aContentType
- * and aUrl can be NULL, but at least one must be non-NULL (otherwise it will
- * always return EFalse). The caller adopts the result.
- *
- * @param aContentType the content type to compare against, may be NULL.
- * @param aUrl the url to compare against, may be NULL.
- *
- * @return The name of the plugin or NULL
- */
- static TDesC* GetPluginNameL(const TDesC* aContentType,
- const TDesC* aUrl);
-
- /**
- * Returns the name of the external application that supports the given
- * content-type or NULL if no application support this type.
- * The caller adopts the result.
- *
- * @return The name of the application or NULL
- */
- static TDesC* GetExternalAppNameL(const TDesC* aContentType);
-
- /**
- * Returns ETrue if the content-type or dot-extension is a supported image type.
- * aContentType and aUrl can be NULL, but at least one must be non-NULL (otherwise
- * it will always return EFalse).
- *
- * @param aContentType the content type to compare against, may be NULL.
- * @param aUrl the url to compare against, may be NULL.
- *
- * @return ETrue if its a supported image type.
- */
- static TBool IsImageSupported(const TDesC* aContentType, const TDesC* aUrl);
-
- /**
- * Returns the cooresponding value (either source-param-name or content-type)
- * given the class-id.
- *
- * @param aClassId the class-id used to map to the requested value.
- * @param aValueSelector used to select the cooresponding value
- * (either KParamName or KContentType)
- * @return the value or NULL on out of memory.
- */
- static TDesC* ObjectUtils::GetClassidAssociation(const TDesC& aClassId,
- TInt aValueSelector);
- };
-
-#endif // OBJECTUTILS_H