commondrm/drmsettingsplugin/src/drmsettingsusagecheckbox.cpp
branchRCL_3
changeset 12 8a03a285ab14
parent 10 89a1f2bd800d
equal deleted inserted replaced
11:e16d72588c28 12:8a03a285ab14
    15 *
    15 *
    16 */
    16 */
    17 
    17 
    18 
    18 
    19 // INCLUDE FILES
    19 // INCLUDE FILES
    20 #include <stringloader.h>
    20 #include <StringLoader.h>
    21 #include <aknquerydialog.h>
    21 #include <AknQueryDialog.h>
    22 #include <akninfopopupnotecontroller.h>
    22 #include <AknInfoPopupNoteController.h>
    23 #include <drmsettingspluginrsc.rsg>
    23 #include <drmsettingspluginrsc.rsg>
    24 
    24 
    25 #include "drmsettingsusagecheckbox.h"
    25 #include "drmsettingsusagecheckbox.h"
    26 #include "drmsettingsusagelist.h"
    26 #include "drmsettingsusagelist.h"
    27 #include "drmsettingsmodel.h"
    27 #include "drmsettingsmodel.h"
    32 // -----------------------------------------------------------------------------
    32 // -----------------------------------------------------------------------------
    33 // CDrmSettingUsageCheckBox::CDrmSettingUsageCheckBox
    33 // CDrmSettingUsageCheckBox::CDrmSettingUsageCheckBox
    34 // Default constructor.
    34 // Default constructor.
    35 // -----------------------------------------------------------------------------
    35 // -----------------------------------------------------------------------------
    36 //
    36 //
    37 CDrmSettingUsageCheckBox::CDrmSettingUsageCheckBox( 
    37 CDrmSettingUsageCheckBox::CDrmSettingUsageCheckBox(
    38     TInt aResourceId,
    38     TInt aResourceId,
    39     CDRMSettingUsageList* aList,
    39     CDRMSettingUsageList* aList,
    40     CDRMSettingsModel* aModel,
    40     CDRMSettingsModel* aModel,
    41     CDRMSettingsPlugin* aPlugin ) : CAknCheckBoxSettingPage( aResourceId, aList ),
    41     CDRMSettingsPlugin* aPlugin ) : CAknCheckBoxSettingPage( aResourceId, aList ),
    42                                   iList( aList ),
    42                                   iList( aList ),
    43                                   iModel( aModel ),
    43                                   iModel( aModel ),
    44                                   iDrmSettingsPlugin( aPlugin )
    44                                   iDrmSettingsPlugin( aPlugin )
    45     {
    45     {
    46 	}
    46     }
    47 
    47 
    48 // ----------------------------------------------------------------------------
    48 // ----------------------------------------------------------------------------
    49 // CDrmSettingUsageCheckBox::~CDrmSettingUsageCheckBox
    49 // CDrmSettingUsageCheckBox::~CDrmSettingUsageCheckBox
    50 //
    50 //
    51 // Destructor
    51 // Destructor
    58 
    58 
    59 // -----------------------------------------------------------------------------
    59 // -----------------------------------------------------------------------------
    60 // CDrmSettingUsageCheckBox::OfferKeyEventL
    60 // CDrmSettingUsageCheckBox::OfferKeyEventL
    61 // -----------------------------------------------------------------------------
    61 // -----------------------------------------------------------------------------
    62 //
    62 //
    63 TKeyResponse CDrmSettingUsageCheckBox::OfferKeyEventL( 
    63 TKeyResponse CDrmSettingUsageCheckBox::OfferKeyEventL(
    64     const TKeyEvent& aKeyEvent,
    64     const TKeyEvent& aKeyEvent,
    65     TEventCode aType )
    65     TEventCode aType )
    66     {
    66     {
    67     TKeyResponse response( EKeyWasNotConsumed );
    67     TKeyResponse response( EKeyWasNotConsumed );
    68     if ( aKeyEvent.iCode != EKeyApplicationF )
    68     if ( aKeyEvent.iCode != EKeyApplicationF )
    69         {
    69         {
    70         response = this->ListBoxControl()->OfferKeyEventL( aKeyEvent, aType );
    70         response = this->ListBoxControl()->OfferKeyEventL( aKeyEvent, aType );
    71         }
    71         }
    72     
    72 
    73     if ( aType == EEventKeyUp )
    73     if ( aType == EEventKeyUp )
    74         {
    74         {
    75         ShowInfoPopupL();
    75         ShowInfoPopupL();
    76         }
    76         }
    77     
    77 
    78     if ( ( aType == EEventKey ) && ( aKeyEvent.iCode == EKeyEscape ) )
    78     if ( ( aType == EEventKey ) && ( aKeyEvent.iCode == EKeyEscape ) )
    79         {
    79         {
    80         iDrmSettingsPlugin->HandleCommandL( EEikCmdExit );
    80         iDrmSettingsPlugin->HandleCommandL( EEikCmdExit );
    81         }
    81         }
    82     
    82 
    83     return response;
    83     return response;
    84     }
    84     }
    85 
    85 
    86 // -----------------------------------------------------------------------------
    86 // -----------------------------------------------------------------------------
    87 // CDrmSettingUsageCheckBox::DynamicInitL
    87 // CDrmSettingUsageCheckBox::DynamicInitL
    89 //
    89 //
    90 void CDrmSettingUsageCheckBox::DynamicInitL()
    90 void CDrmSettingUsageCheckBox::DynamicInitL()
    91     {
    91     {
    92     HBufC* emptyText( StringLoader::LoadLC( R_USAGE_REPORTING_LIST_EMPTY,
    92     HBufC* emptyText( StringLoader::LoadLC( R_USAGE_REPORTING_LIST_EMPTY,
    93                                             iEikonEnv ) );
    93                                             iEikonEnv ) );
    94 	this->ListBoxControl()->View()->SetListEmptyTextL( *emptyText );
    94     this->ListBoxControl()->View()->SetListEmptyTextL( *emptyText );
    95 	CleanupStack::PopAndDestroy( emptyText );
    95     CleanupStack::PopAndDestroy( emptyText );
    96 	}
    96     }
    97 
    97 
    98 // -----------------------------------------------------------------------------
    98 // -----------------------------------------------------------------------------
    99 // CDrmSettingUsageCheckBox::OkToExitL
    99 // CDrmSettingUsageCheckBox::OkToExitL
   100 // -----------------------------------------------------------------------------
   100 // -----------------------------------------------------------------------------
   101 //
   101 //
   102 TBool CDrmSettingUsageCheckBox::OkToExitL( TBool aAccept )
   102 TBool CDrmSettingUsageCheckBox::OkToExitL( TBool aAccept )
   103     {
   103     {
   104     TBool exit( ETrue );
   104     TBool exit( ETrue );
   105     
   105 
   106     if ( aAccept )
   106     if ( aAccept )
   107         {
   107         {
   108         iList->UpdateContexts();
   108         iList->UpdateContexts();
   109     
   109 
   110         if ( !iModel->IsMeteringAllowedForAll() )
   110         if ( !iModel->IsMeteringAllowedForAll() )
   111             {
   111             {
   112             HBufC* query( StringLoader::LoadLC( R_DRM_CONF_QUERY_METERING,
   112             HBufC* query( StringLoader::LoadLC( R_DRM_CONF_QUERY_METERING,
   113                                                 iEikonEnv ) );
   113                                                 iEikonEnv ) );
   114         
   114 
   115             CAknQueryDialog* queryDialog( CAknQueryDialog::NewL() );
   115             CAknQueryDialog* queryDialog( CAknQueryDialog::NewL() );
   116         
   116 
   117             TBool retVal( queryDialog->ExecuteLD( R_DRM_CONFIRMATION_QUERY_METERING,
   117             TBool retVal( queryDialog->ExecuteLD( R_DRM_CONFIRMATION_QUERY_METERING,
   118                                                   *query ) );
   118                                                   *query ) );
   119             CleanupStack::PopAndDestroy( query );
   119             CleanupStack::PopAndDestroy( query );
   120             
   120 
   121             if ( !retVal )
   121             if ( !retVal )
   122                 {
   122                 {
   123                 exit = EFalse;
   123                 exit = EFalse;
   124                 }
   124                 }
   125             }
   125             }
   126         }
   126         }
   127     
   127 
   128     return exit;
   128     return exit;
   129     }
   129     }
   130 
   130 
   131 // -----------------------------------------------------------------------------
   131 // -----------------------------------------------------------------------------
   132 // CDrmSettingUsageCheckBox::AcceptSettingL
   132 // CDrmSettingUsageCheckBox::AcceptSettingL
   149         }
   149         }
   150     TInt index( this->ListBoxControl()->View()->CurrentItemIndex() );
   150     TInt index( this->ListBoxControl()->View()->CurrentItemIndex() );
   151     if ( index != -1 )
   151     if ( index != -1 )
   152         {
   152         {
   153         iPopupController->SetTextL( iList->At(index)->ItemText() );
   153         iPopupController->SetTextL( iList->At(index)->ItemText() );
   154         iPopupController->ShowInfoPopupNote();    
   154         iPopupController->ShowInfoPopupNote();
   155         }
   155         }
   156     }
   156     }
   157 
   157 
   158 //  End of File
   158 //  End of File