vtuis/videotelui/inc/features/prefs/cvtuitransparentsettingpage.h
branchRCL_3
changeset 35 779871d1e4f4
equal deleted inserted replaced
34:f15ac8e65a02 35:779871d1e4f4
       
     1 /*
       
     2 * Copyright (c) 2007 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:  CVtUiTransparentSettingPage API definition.
       
    15 *
       
    16 */
       
    17 
       
    18 
       
    19 #ifndef CVTUITRANSPARENTSETTINGPAGE_H
       
    20 #define CVTUITRANSPARENTSETTINGPAGE_H
       
    21 
       
    22 #include <AknTransparentCameraSettingPage.h>
       
    23 
       
    24 class MVtUiSettingPageObserver;
       
    25 class CAknsBasicBackgroundControlContext;
       
    26 
       
    27 /**
       
    28 *  CVtUiTransparentSettingPage
       
    29 *
       
    30 *  CVtUiTransparentSettingPage API definition.
       
    31 *
       
    32 *  @since S60 v3.2
       
    33 */   
       
    34 class CVtUiTransparentSettingPage : public CAknTransparentCameraSettingPage
       
    35 {
       
    36 public: // public methods
       
    37     /**
       
    38     * handle layoutChange
       
    39      */
       
    40     void HandleLayoutChangeL();
       
    41 
       
    42     /**
       
    43     * Constructor.
       
    44     * @param aResourceID Setting Page to use.
       
    45     * @param aCurrentSelectionIndex The currently selected index.
       
    46     * @param aItemArray List of option texts and their selection states.
       
    47     * @param aAppUi Reference to AppUi.
       
    48     * @return Newly created instance of CVtUiTransparentSettingPage class.
       
    49     */
       
    50     CVtUiTransparentSettingPage(
       
    51         TInt aResourceID, 
       
    52         TInt& aCurrentSelectionIndex, 
       
    53         const MDesCArray* aItemArray );
       
    54      
       
    55     /**
       
    56     * 2nd constructor
       
    57     */   
       
    58     void ConstructL();
       
    59         
       
    60     /**
       
    61     * Destructor
       
    62     */        
       
    63     ~CVtUiTransparentSettingPage();
       
    64 
       
    65     /**
       
    66     * Adds setting page observer.
       
    67     * @param aObserver Observer for setting page.
       
    68     */
       
    69     void SetSettingPageEventStateObserver(
       
    70         MVtUiSettingPageObserver* aObserver );
       
    71 
       
    72 private: // from aknsettinpage
       
    73 
       
    74      /**
       
    75      * @see CAknSettinPage::DynamicInitL
       
    76      */
       
    77      void  DynamicInitL();
       
    78      
       
    79      /**
       
    80      * @get the layout data in portrait or landscape mode
       
    81      */
       
    82 		 void		GetTheLayoutData();
       
    83 		 
       
    84      /**
       
    85      * @see CAknSettinPage::HandleControlEventL
       
    86      */
       
    87      void HandleControlEventL( CCoeControl* aControl,TCoeEvent aEventType );
       
    88      
       
    89      /**
       
    90      * @see CAknSettinPage::HandleResourceChange
       
    91      */
       
    92      void HandleResourceChange(TInt aType);
       
    93      
       
    94 private: // new functions
       
    95         
       
    96         /*
       
    97         * Gets rect from layout data.
       
    98         */
       
    99         TRect RectFromLayout( const TAknWindowComponentLayout&
       
   100             aComponentLayout ) const;
       
   101                  
       
   102 private:
       
   103     
       
   104     // Setting page observer
       
   105     MVtUiSettingPageObserver* iSettingPageObserver;
       
   106 }; 
       
   107 
       
   108 #endif // CVTUITRANSPARENTSETTINGPAGE_H