|
1 /* |
|
2 * Copyright (c) 2009 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: |
|
15 * |
|
16 */ |
|
17 |
|
18 |
|
19 #ifndef HGINDICATORMANAGER_H_ |
|
20 #define HGINDICATORMANAGER_H_ |
|
21 |
|
22 #include <e32base.h> |
|
23 |
|
24 class CWindowGc; |
|
25 class TAknLayoutRect; |
|
26 class CGulIcon; |
|
27 class TAknsItemID; |
|
28 class TAknWindowComponentLayout; |
|
29 |
|
30 NONSHARABLE_CLASS( CHgIndicatorManager ) : public CBase |
|
31 { |
|
32 public: |
|
33 |
|
34 static CHgIndicatorManager* NewL(); |
|
35 |
|
36 /** |
|
37 * Destructor. |
|
38 */ |
|
39 virtual ~CHgIndicatorManager(); |
|
40 |
|
41 void InitIndicatorsL( const TSize& aIndicatorSize ); |
|
42 |
|
43 void DrawIndicators( |
|
44 CWindowGc& aGc, |
|
45 const TRect& aRect, |
|
46 TInt aFlags, |
|
47 TAknWindowComponentLayout aFirstIndicatorLayout, |
|
48 TAknWindowComponentLayout aSecondIndicatorLayout |
|
49 ) const; |
|
50 |
|
51 TBool DrawIndicator( |
|
52 CWindowGc& aGc, |
|
53 TAknLayoutRect& aRect, |
|
54 TInt aFlags, |
|
55 TBool& aMemIndicator |
|
56 ) const; |
|
57 |
|
58 void InitIconL( |
|
59 CGulIcon*& aIcon, |
|
60 const TAknsItemID& aItemId, |
|
61 TInt aIconIndex, |
|
62 TInt aMaskIndex, |
|
63 TSize aSize); |
|
64 |
|
65 void InitColorIconL( |
|
66 CGulIcon*& aIcon, |
|
67 const TAknsItemID& aItemId, |
|
68 TInt aIconIndex, |
|
69 TInt aMaskIndex, |
|
70 TSize aSize); |
|
71 |
|
72 void InitIconL( |
|
73 CGulIcon*& aIcon, |
|
74 TInt aIconIndex, |
|
75 TInt aMaskIndex, |
|
76 TSize aSize); |
|
77 |
|
78 static TInt CountIndicators( TInt aFlags ); |
|
79 |
|
80 private: |
|
81 |
|
82 CHgIndicatorManager(); |
|
83 |
|
84 void ConstructL(); |
|
85 |
|
86 private: // data |
|
87 |
|
88 // Indicator stuff |
|
89 CGulIcon* iDrmIcon; // icon for valid drm rights indicator |
|
90 CGulIcon* iDrmExpIcon; // icon for expired drm rights indicator |
|
91 CGulIcon* iVideoIcon; // icon for video indicator |
|
92 CGulIcon* iMarkIcon; // Icon for selection marking |
|
93 CGulIcon* iMmcIcon; // Mmc indicator icon |
|
94 CGulIcon* iPlaybackIndicatorIcon; // Playback indicator icon |
|
95 CGulIcon* iPauseIndicatorIcon; // Playback pause indicator icon |
|
96 CGulIcon* iBrokenPlaylistIcon; // Playback pause indicator icon |
|
97 CGulIcon* iBrokenTrackIcon; // Playback pause indicator icon |
|
98 CGulIcon* iCorruptedTrackIcon; // Playback pause indicator icon |
|
99 CGulIcon* iNewVideoIcon; // new item icon for myVideos |
|
100 CGulIcon* iMassStorageIcon; // new mass storage icon for my videos |
|
101 CGulIcon* iPhoneStorageIcon; // phone memory icon for my videos |
|
102 CGulIcon* iNewPodcastIcon; // new podcast icon for mpx |
|
103 CGulIcon* iPlayedPodcastIcon; // played podcast icon for mpx |
|
104 CGulIcon* iCompletelyPlayedPodcastIcon; // completely played podcast icon for mpx |
|
105 CGulIcon* iMoveUpIcon; // reorder playlist icon |
|
106 CGulIcon* iMoveDownIcon; // reorder playlist icon |
|
107 CGulIcon* iMoveUpDownIcon; // reorder playlist icon |
|
108 |
|
109 }; |
|
110 |
|
111 |
|
112 #endif // HGINDICATORMANAGER_H |