17 |
17 |
18 |
18 |
19 #ifndef C_AIOPERATORLOGOPUBLISHER_H |
19 #ifndef C_AIOPERATORLOGOPUBLISHER_H |
20 #define C_AIOPERATORLOGOPUBLISHER_H |
20 #define C_AIOPERATORLOGOPUBLISHER_H |
21 |
21 |
22 |
22 // System includes |
23 #include <e32base.h> |
23 #include <e32base.h> |
24 #include <e32property.h> |
24 #include <e32property.h> |
25 #include <cenrepnotifyhandler.h> |
25 #include <cenrepnotifyhandler.h> |
|
26 |
|
27 // User includes |
26 #include <aiutility.h> |
28 #include <aiutility.h> |
27 #include "aidevicestatuspublisher.h" |
29 #include "aidevicestatuspublisher.h" |
28 #include "ainetworkinfoobserver.h" |
30 #include "ainetworkinfoobserver.h" |
29 |
31 |
|
32 // Forward declarations |
30 class CAiNetworkInfoListener; |
33 class CAiNetworkInfoListener; |
31 class MAiDeviceStatusContentObserver; |
34 class MAiDeviceStatusContentObserver; |
32 class MAiPropertyExtension; |
35 class CHsContentPublisher; |
33 class CGulIcon; |
36 class CGulIcon; |
34 class CCenRepNotifyHandler; |
37 class CCenRepNotifyHandler; |
|
38 |
35 |
39 |
36 /** |
40 /** |
37 * @ingroup group_devicestatusplugin |
41 * @ingroup group_devicestatusplugin |
38 * |
42 * |
39 * Operator logo publisher. |
43 * Operator logo publisher. |
41 * Listens operator logo changes (OTA and programmable) and publishes |
45 * Listens operator logo changes (OTA and programmable) and publishes |
42 * the new logo when it is updated. |
46 * the new logo when it is updated. |
43 * |
47 * |
44 * @since S60 3.2 |
48 * @since S60 3.2 |
45 */ |
49 */ |
46 class CAiOperatorLogoPublisher : public CBase, public MAiDeviceStatusPublisher, |
50 NONSHARABLE_CLASS( CAiOperatorLogoPublisher ) : public CBase, |
47 public MAiNetworkInfoObserver, /*public MAiCenRepNotifierCallBack*/ |
51 public MAiDeviceStatusPublisher, |
48 public MCenRepNotifyHandlerCallback |
52 public MAiNetworkInfoObserver, |
|
53 public MCenRepNotifyHandlerCallback |
49 { |
54 { |
50 public: |
55 public: |
51 |
56 |
52 static CAiOperatorLogoPublisher* NewL(); |
57 static CAiOperatorLogoPublisher* NewL(); |
53 |
58 |
57 |
62 |
58 //from base class MAiDeviceStatusPublisher |
63 //from base class MAiDeviceStatusPublisher |
59 |
64 |
60 void ResumeL(); |
65 void ResumeL(); |
61 void Subscribe( MAiContentObserver& aObserver, |
66 void Subscribe( MAiContentObserver& aObserver, |
62 MAiPropertyExtension& aExtension, |
67 CHsContentPublisher& aExtension, |
63 MAiPublishPrioritizer& aPrioritizer, |
68 MAiPublishPrioritizer& aPrioritizer, |
64 MAiPublisherBroadcaster& aBroadcaster ); |
69 MAiPublisherBroadcaster& aBroadcaster ); |
65 void RefreshL( TBool aClean ); |
70 void RefreshL( TBool aClean ); |
66 TBool RefreshL( TInt aContentId, TBool aClean ); |
71 TBool RefreshL( TInt aContentId, TBool aClean ); |
|
72 TBool SuspendL( TInt aContentId, TBool aClean ); |
67 TBool RefreshContentWithPriorityL( TInt aContentId, TInt aPriority ); |
73 TBool RefreshContentWithPriorityL( TInt aContentId, TInt aPriority ); |
68 |
74 |
69 |
75 |
70 //from base class MAiNetworkInfoObserver |
76 //from base class MAiNetworkInfoObserver |
71 |
77 |
147 static TInt HandleOperatorLogoUpdateL( TAny *aPtr ); |
153 static TInt HandleOperatorLogoUpdateL( TAny *aPtr ); |
148 |
154 |
149 |
155 |
150 private: // data |
156 private: // data |
151 |
157 |
152 /** |
158 /** Network info listener, owned */ |
153 * Network info listener. |
|
154 * Own. |
|
155 */ |
|
156 CAiNetworkInfoListener* iListener; |
159 CAiNetworkInfoListener* iListener; |
157 |
160 /** Operator logo bitmap and mask, owned */ |
158 /** |
|
159 * Operator logo bitmap and mask. |
|
160 * Own. |
|
161 */ |
|
162 CGulIcon* iIcon; |
161 CGulIcon* iIcon; |
163 |
162 /** Content observer, not owned */ |
164 /** |
|
165 * Content observer. |
|
166 * Not own. |
|
167 */ |
|
168 MAiContentObserver* iContentObserver; |
163 MAiContentObserver* iContentObserver; |
169 |
164 /** Property extension, not owned */ |
170 /** |
165 CHsContentPublisher* iExtension; |
171 * Property extension. |
166 /** Content prioritizer, not owned */ |
172 * Not own. |
167 MAiPublishPrioritizer* iPrioritizer; |
173 */ |
168 /** Publish broadcaster, not owned */ |
174 MAiPropertyExtension* iExtension; |
169 MAiPublisherBroadcaster* iBroadcaster; |
175 |
170 /** Publish-subscribe client, owned */ |
176 /** |
|
177 * Content prioritizer. |
|
178 * Not own. |
|
179 */ |
|
180 MAiPublishPrioritizer* iPrioritizer; |
|
181 |
|
182 /** |
|
183 * Publish broadcaster. |
|
184 * Not own. |
|
185 */ |
|
186 MAiPublisherBroadcaster* iBroadcaster; |
|
187 |
|
188 /** |
|
189 * Publish-subscribe client. |
|
190 */ |
|
191 MAiPSPropertyObserver* iOperatorLogoObserver; |
171 MAiPSPropertyObserver* iOperatorLogoObserver; |
192 |
172 /** Central repository client, owned */ |
193 /** |
|
194 * Central repository client. |
|
195 * Own. |
|
196 */ |
|
197 CRepository* iCenRep; |
173 CRepository* iCenRep; |
198 |
174 /** Central repository notifier, owned */ |
199 /** |
|
200 * Central repository notifier. |
|
201 * Own. |
|
202 */ |
|
203 CCenRepNotifyHandler* iCenRepNotify; |
175 CCenRepNotifyHandler* iCenRepNotify; |
204 |
176 /** Operator logo priority, can have one of the following values: |
205 /** |
177 * |
206 * Operator logo priority, can have one of the following values: |
|
207 * 1) EAiOTAOperatorLogo |
178 * 1) EAiOTAOperatorLogo |
208 * 2) EAiProgOperatorLogo |
179 * 2) EAiProgOperatorLogo |
209 * 3) EAiInvalidPriority |
180 * 3) EAiInvalidPriority |
210 */ |
181 */ |
211 TInt iPriority; |
182 TInt iPriority; |
212 |
183 /** True if publish was successful. */ |
213 /** |
184 TBool iSuccess; |
214 * True if publish was successful. |
185 /** Flag to indicate if the content is suspended */ |
215 */ |
186 TBool iSuspended; |
216 TBool iSuccess; |
187 /** Show operator indicator */ |
217 |
|
218 /** |
|
219 * Show operator indicator. |
|
220 */ |
|
221 TBool iShowOpInd; |
188 TBool iShowOpInd; |
222 }; |
189 }; |
223 |
190 |
|
191 #endif // C_AIOPERATORLOGOPUBLISHER_H |
224 |
192 |
225 #endif // C_AIOPERATORLOGOPUBLISHER_H |
193 // End of file |