diff -r 6465d5bb863a -r 13e71d907dc3 profilesservices/MediaFileList/Inc/mediafilelist.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/profilesservices/MediaFileList/Inc/mediafilelist.h Thu Nov 04 13:38:47 2010 +0800 @@ -0,0 +1,187 @@ +/* +* Copyright (c) 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: Interface of MediaFileList. Provide some API for +* the user to use mediafilelist +* +*/ + + + + +#ifndef MEDIALFILELIST_H +#define MEDIALFILELIST_H + +// INCLUDES +#include +#include + + +// FORWARD DECLARATIONS +class CMediaFileDialog; + + + +// CLASS DECLARATION + +/** +* Public API for displaying media file list. List is used for +* selecting/previewing audio and video files. +* +* @lib mediafilelist.lib +* @since Series60_5.1 +* +*/ +class CMediaFileList : public CBase + { + public: + enum TMediaFileListAttribute + { + // max media file size + EAttrFileSize = 0, + // ringing volume (TProfileRingingVolume from Profile.hrh) + EAttrVolume, + // ringing type, (TProfileRingingType from Profile.hrh) + EAttrRingingType, + // vibra on/off (Boolean) + EAttrVibra, + // 3D effect (TProfile3DToneEffect from ProfileInternal.hrh) + EAttr3DEffect, + // 3D echo (TProfile3DToneEcho from ProfileInternal.hrh) + EAttr3DEcho, + // excluded mime type text + EAttrExcludeMimeType, + // for file protection checking + EAttrAutomatedType, + // media file dialog title + EAttrTitle, + // excluded folder (see enum TFolderType) + EAttrExcludeFolder + }; + + enum TMediaFileType + { + EMediaFileTypeAudio = 0, + EMediaFileTypeVideo + }; + + enum TNullItemIcon + { + ENullItemIconNone = 0, + ENullItemIconDefaultTone, + ENullItemIconOff + }; + + enum TFolderType + { + EFolderDownload = 0, + EFolderVideos + }; + + public: + /** + * Two-phased constructor. + */ + IMPORT_C static CMediaFileList* NewL(); + + /** + * Destructor. + */ + IMPORT_C virtual ~CMediaFileList(); + + private: + /** + * By default Symbian 2nd phase constructor is private. + */ + void ConstructL(); + + /** + * C++ default constructor. + */ + CMediaFileList(); + + public: + + /** + * Shows Media file list. + * @since Series60_5.1 + * @param aFileName Selected media file name full path. + * @param aNullItem Selected null item index. Possible values: + * KErrNotFound - item is not null item or Download item + * 0 - Download item + * 1 - first null item + * 2 - second null item + * + * @param aInfo Extra information, set to NULL if not used. + * @param aDesInfo Extra information, set to KNullDesC if not used. + * @return ETrue if user selected media file, EFalse otherwise. + */ + IMPORT_C TBool ShowMediaFileListL( TDes* aFileName, TInt* aNullItem, + TInt* aInfo, TDes* aDesInfo ); + + /** + * Set Media file list attribute. See enum TMediaFileListAttribute for + * list of supported attributes. + * @since Series60_5.1 + * @param aAttr Attribute id. + * @param aValue Attribute value. + * @return None. + */ + IMPORT_C void SetAttrL( TInt aAttr, TInt aValue ); + + /** + * Set Media file list attribute. See enum TMediaFileListAttribute for + * list of supported attributes. + * @since Series60_5.1 + * @param aAttr Attribute id. + * @param aValue Attribute value. + * @return None. + */ + IMPORT_C void SetAttrL( TInt aAttr, const TDesC& aValue ); + + /** + * Set Media file list attribute. Currently not in use. + * @since Series60_5.1 + * @param aAttr Attribute id. + * @param aValue Attribute value. + * @return None. + */ + IMPORT_C void SetAttrL( TInt aAttr, TAny* aValue ); + + /** + * Set Media file list null item. Null items are custom list items + * that appear at the end of the media file list main view. + * @since Series60_5.1 + * @param aText Null item text. + * @param aMediaFile File that is played when null items gets focused. + * Use KNullDesC if not used. + * @param aMediaFileType Media file type. See enum TMediaFileType for + supported media types. + * @param aIconId Null item icon id. See enum TNullItemIcon for + supported icons. + * @return None. + */ + IMPORT_C void SetNullItemL( const TDesC& aText, const TDesC& aMediaFile, + TInt aMediaFileType, TInt aIconId ); + + + + private: + CMediaFileDialog* iDialog; + }; + + + +#endif // MEDIALFILELIST_H + +// End of File