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 |