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" |
|
28 #include "drmsettingsplugin.h" |
28 |
29 |
29 // ================= MEMBER FUNCTIONS ======================= |
30 // ================= MEMBER FUNCTIONS ======================= |
30 |
31 |
31 // ----------------------------------------------------------------------------- |
32 // ----------------------------------------------------------------------------- |
32 // CDrmSettingUsageCheckBox::CDrmSettingUsageCheckBox |
33 // CDrmSettingUsageCheckBox::CDrmSettingUsageCheckBox |
33 // Default constructor. |
34 // Default constructor. |
34 // ----------------------------------------------------------------------------- |
35 // ----------------------------------------------------------------------------- |
35 // |
36 // |
36 CDrmSettingUsageCheckBox::CDrmSettingUsageCheckBox( |
37 CDrmSettingUsageCheckBox::CDrmSettingUsageCheckBox( |
37 TInt aResourceId, |
38 TInt aResourceId, |
38 CDRMSettingUsageList* aList, |
39 CDRMSettingUsageList* aList, |
39 CDRMSettingsModel* aModel ) : CAknCheckBoxSettingPage( aResourceId, aList ), |
40 CDRMSettingsModel* aModel, |
|
41 CDRMSettingsPlugin* aPlugin ) : CAknCheckBoxSettingPage( aResourceId, aList ), |
40 iList( aList ), |
42 iList( aList ), |
41 iModel( aModel ) |
43 iModel( aModel ), |
|
44 iDrmSettingsPlugin( aPlugin ) |
42 { |
45 { |
43 } |
46 } |
44 |
47 |
45 // ---------------------------------------------------------------------------- |
48 // ---------------------------------------------------------------------------- |
46 // CDrmSettingUsageCheckBox::~CDrmSettingUsageCheckBox |
49 // CDrmSettingUsageCheckBox::~CDrmSettingUsageCheckBox |
47 // |
50 // |
48 // Destructor |
51 // Destructor |
55 |
58 |
56 // ----------------------------------------------------------------------------- |
59 // ----------------------------------------------------------------------------- |
57 // CDrmSettingUsageCheckBox::OfferKeyEventL |
60 // CDrmSettingUsageCheckBox::OfferKeyEventL |
58 // ----------------------------------------------------------------------------- |
61 // ----------------------------------------------------------------------------- |
59 // |
62 // |
60 TKeyResponse CDrmSettingUsageCheckBox::OfferKeyEventL( |
63 TKeyResponse CDrmSettingUsageCheckBox::OfferKeyEventL( |
61 const TKeyEvent& aKeyEvent, |
64 const TKeyEvent& aKeyEvent, |
62 TEventCode aType ) |
65 TEventCode aType ) |
63 { |
66 { |
64 TKeyResponse response( EKeyWasNotConsumed ); |
67 TKeyResponse response( EKeyWasNotConsumed ); |
65 if ( aKeyEvent.iCode != EKeyApplicationF ) |
68 if ( aKeyEvent.iCode != EKeyApplicationF ) |
66 { |
69 { |
67 response = this->ListBoxControl()->OfferKeyEventL( aKeyEvent, aType ); |
70 response = this->ListBoxControl()->OfferKeyEventL( aKeyEvent, aType ); |
68 } |
71 } |
69 |
72 |
70 if ( aType == EEventKeyUp ) |
73 if ( aType == EEventKeyUp ) |
71 { |
74 { |
72 ShowInfoPopupL(); |
75 ShowInfoPopupL(); |
73 } |
76 } |
74 |
77 |
|
78 if ( ( aType == EEventKey ) && ( aKeyEvent.iCode == EKeyEscape ) ) |
|
79 { |
|
80 iDrmSettingsPlugin->HandleCommandL( EEikCmdExit ); |
|
81 } |
|
82 |
75 return response; |
83 return response; |
76 } |
84 } |
77 |
85 |
78 // ----------------------------------------------------------------------------- |
86 // ----------------------------------------------------------------------------- |
79 // CDrmSettingUsageCheckBox::DynamicInitL |
87 // CDrmSettingUsageCheckBox::DynamicInitL |
81 // |
89 // |
82 void CDrmSettingUsageCheckBox::DynamicInitL() |
90 void CDrmSettingUsageCheckBox::DynamicInitL() |
83 { |
91 { |
84 HBufC* emptyText( StringLoader::LoadLC( R_USAGE_REPORTING_LIST_EMPTY, |
92 HBufC* emptyText( StringLoader::LoadLC( R_USAGE_REPORTING_LIST_EMPTY, |
85 iEikonEnv ) ); |
93 iEikonEnv ) ); |
86 this->ListBoxControl()->View()->SetListEmptyTextL( *emptyText ); |
94 this->ListBoxControl()->View()->SetListEmptyTextL( *emptyText ); |
87 CleanupStack::PopAndDestroy( emptyText ); |
95 CleanupStack::PopAndDestroy( emptyText ); |
88 } |
96 } |
89 |
97 |
90 // ----------------------------------------------------------------------------- |
98 // ----------------------------------------------------------------------------- |
91 // CDrmSettingUsageCheckBox::OkToExitL |
99 // CDrmSettingUsageCheckBox::OkToExitL |
92 // ----------------------------------------------------------------------------- |
100 // ----------------------------------------------------------------------------- |
93 // |
101 // |
94 TBool CDrmSettingUsageCheckBox::OkToExitL( TBool aAccept ) |
102 TBool CDrmSettingUsageCheckBox::OkToExitL( TBool aAccept ) |
95 { |
103 { |
96 TBool exit( ETrue ); |
104 TBool exit( ETrue ); |
97 |
105 |
98 if ( aAccept ) |
106 if ( aAccept ) |
99 { |
107 { |
100 iList->UpdateContexts(); |
108 iList->UpdateContexts(); |
101 |
109 |
102 if ( !iModel->IsMeteringAllowedForAll() ) |
110 if ( !iModel->IsMeteringAllowedForAll() ) |
103 { |
111 { |
104 HBufC* query( StringLoader::LoadLC( R_DRM_CONF_QUERY_METERING, |
112 HBufC* query( StringLoader::LoadLC( R_DRM_CONF_QUERY_METERING, |
105 iEikonEnv ) ); |
113 iEikonEnv ) ); |
106 |
114 |
107 CAknQueryDialog* queryDialog( CAknQueryDialog::NewL() ); |
115 CAknQueryDialog* queryDialog( CAknQueryDialog::NewL() ); |
108 |
116 |
109 TBool retVal( queryDialog->ExecuteLD( R_DRM_CONFIRMATION_QUERY_METERING, |
117 TBool retVal( queryDialog->ExecuteLD( R_DRM_CONFIRMATION_QUERY_METERING, |
110 *query ) ); |
118 *query ) ); |
111 CleanupStack::PopAndDestroy( query ); |
119 CleanupStack::PopAndDestroy( query ); |
112 |
120 |
113 if ( !retVal ) |
121 if ( !retVal ) |
114 { |
122 { |
115 exit = EFalse; |
123 exit = EFalse; |
116 } |
124 } |
117 } |
125 } |
118 } |
126 } |
119 |
127 |
120 return exit; |
128 return exit; |
121 } |
129 } |
122 |
130 |
123 // ----------------------------------------------------------------------------- |
131 // ----------------------------------------------------------------------------- |
124 // CDrmSettingUsageCheckBox::AcceptSettingL |
132 // CDrmSettingUsageCheckBox::AcceptSettingL |