photos_plat/controllers_collection_api/inc/glxcollectionselectionpopup.h
changeset 0 4e91876724a2
equal deleted inserted replaced
-1:000000000000 0:4e91876724a2
       
     1 /*
       
     2 * Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies). 
       
     3 * All rights reserved.
       
     4 * This component and the accompanying materials are made available
       
     5 * under the terms of "Eclipse Public License v1.0"
       
     6 * which accompanies this distribution, and is available
       
     7 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
       
     8 *
       
     9 * Initial Contributors:
       
    10 * Nokia Corporation - initial contribution.
       
    11 *
       
    12 * Contributors:
       
    13 *
       
    14 * Description:    Interface for displaying/using the popup to select collections
       
    15 *
       
    16 */
       
    17 
       
    18 
       
    19 
       
    20 
       
    21 #ifndef __T_GLXCCOLLECTIONSELECTIONPOPUP_H__
       
    22 #define __T_GLXCCOLLECTIONSELECTIONPOPUP_H__
       
    23 
       
    24 #include <e32base.h>
       
    25 
       
    26 /**
       
    27  * Collection (container) types
       
    28  * These are defined as TUint32 instead of enum to allow the definition
       
    29  * of these to be spread across multiple headers (and MPX collection plugin
       
    30  * id to be used directly as the type id)
       
    31  */
       
    32 // Album
       
    33 const TUint32 KGlxCollectionTypeIdAlbum = 0x01;
       
    34 // Tag
       
    35 const TUint32 KGlxCollectionTypeIdTag = 0x02;
       
    36 
       
    37 /**
       
    38  * @class TGlxCollectionSelectionPopup
       
    39  *
       
    40  * Collection selection popup external interface
       
    41  * 
       
    42  * Shows a popup that contains a selectable list of media collections, 
       
    43  * such as albums or tags
       
    44  * 
       
    45  *  @lib glxcollectionmanager.lib
       
    46  */
       
    47 class TGlxCollectionSelectionPopup
       
    48 {
       
    49 public:
       
    50     /**
       
    51      * Displays the list of selectable collections in a popup. Allows creation of a new collection.
       
    52      * @ param aSelectedIds list of the selected item id
       
    53      * @ param aType Type of the collection to be shown (albums, tags, locations, etc).
       
    54      *               KGlxCollectionTypeIdAlbum and KGlxCollectionTypeIdTag.
       
    55      * @param aAllowMultipleSelection If ETrue, popup allows selecting multiple collections
       
    56      *                                If EFalse, only a single collection may be selected
       
    57      * @param aEnableContaierCreation If ETrue, popup allows the creation of a new collection.
       
    58      *                                If EFalse, popup does not allow the creation of a new collection.
       
    59      * @ return Standard error code, e.g., KErrCancel
       
    60      */
       
    61     IMPORT_C static TInt ShowPopupL(RArray<TUint32>& aSelectedIds, 
       
    62         TUint32 aCollectionType, TBool aAllowMultipleSelection, TBool aEnableContainerCreation = ETrue);
       
    63 };
       
    64 
       
    65 #endif // __T_GLXCCOLLECTIONSELECTIONPOPUP_H__