videditor/ManualVideoEditor/inc/VeiSettingItemList.h
branchRCL_3
changeset 3 e0b5df5c0969
parent 0 951a5db380a0
child 5 4c409de21d23
equal deleted inserted replaced
0:951a5db380a0 3:e0b5df5c0969
     1 /*
       
     2 * Copyright (c) 2010 Ixonos Plc.
       
     3 * All rights reserved.
       
     4 * This component and the accompanying materials are made available
       
     5 * under the terms of the "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 * Ixonos Plc
       
    14 *
       
    15 * Description:  
       
    16 *
       
    17 */
       
    18 
       
    19 
       
    20 
       
    21 #ifndef VEISETTINGITEMLIST_H
       
    22 #define VEISETTINGSITEMLIST_H
       
    23 
       
    24 // INCLUDES
       
    25 #include <aknsettingitemlist.h> 
       
    26 #include "VeiSettings.h"
       
    27 
       
    28 //  CLASS DECLARATION
       
    29 
       
    30 /**
       
    31  * Setting item list for setting items.
       
    32  */
       
    33 class CVeiSettingItemList: public CAknSettingItemList
       
    34 {
       
    35 public:
       
    36     // Constructor and destructor
       
    37 
       
    38     /**
       
    39      * C++ default constructor for constructing this object.
       
    40      *
       
    41      * @param aSettings Reference to settings data class.
       
    42      */
       
    43     CVeiSettingItemList( TVeiSettings& aSettings );
       
    44 
       
    45     /**
       
    46      * Destroys the object and releases all memory objects.
       
    47      */
       
    48     ~CVeiSettingItemList();
       
    49 
       
    50 public:
       
    51     // New functions
       
    52 
       
    53     /**
       
    54      * This launches the setting page for the highlighted item by calling
       
    55      * <code>EditItemL</code> on it.
       
    56      */
       
    57     void ChangeFocusedItemL();
       
    58 
       
    59 public:
       
    60     // Functions from base classes
       
    61 
       
    62     /**
       
    63      * From <code>CAknSettingItemList</code>, this launches the setting
       
    64      * page for the current item by calling <code>EditItemL</code> on it.
       
    65      * Corresponding value is also saved by calling it's 
       
    66      * <code>StoreL</code> function.
       
    67      *
       
    68      * @param aIndex Current item's (Visible) index in the list.
       
    69      * @param aCalledFromMenu In this case, passed directly to the base
       
    70      *                        class.
       
    71      */
       
    72     void EditItemL( TInt aIndex, TBool aCalledFromMenu );
       
    73 
       
    74 protected:
       
    75     // Functions from base classes
       
    76 
       
    77     /**
       
    78      * From <code>CAknSettingItemList</code>, framework method to create
       
    79      * a setting item based upon the user id <code>aSettingId</code>. 
       
    80      * Implementation decides what type to contruct.
       
    81      *
       
    82      * @param aSettingId ID to use to determine the type of the setting item.
       
    83      * @return A constructed (not 2nd-stage constructed) setting item.
       
    84      */
       
    85     CAknSettingItem* CreateSettingItemL( TInt aSettingId );
       
    86 
       
    87     /**
       
    88      * From <code>CCoeControl</code>, responds to size changes to sets the
       
    89      * size and position of the contents of this control.Resizes the
       
    90      * setting list accordingly.
       
    91      */
       
    92     void SizeChanged();
       
    93 
       
    94 private:
       
    95     // Data
       
    96 
       
    97     /**
       
    98      * Application settings data.
       
    99      */
       
   100     TVeiSettings& iSettings;
       
   101 
       
   102 };
       
   103 
       
   104 #endif // VEISETTINGSITEMLIST_H
       
   105 
       
   106 // End of File