35 aMimeType ); |
34 aMimeType ); |
36 CleanupStack::Pop( self ); |
35 CleanupStack::Pop( self ); |
37 return self; |
36 return self; |
38 } |
37 } |
39 |
38 |
|
39 |
|
40 // --------------------------------------------------------------------------- |
|
41 // CThumbnailObjectSource::NewLC() |
|
42 // Two-phased constructor. |
|
43 // --------------------------------------------------------------------------- |
|
44 // |
40 EXPORT_C CThumbnailObjectSource* CThumbnailObjectSource::NewLC( const TDesC& |
45 EXPORT_C CThumbnailObjectSource* CThumbnailObjectSource::NewLC( const TDesC& |
41 aUri, const TDesC& aMimeType ) |
46 aUri, const TDesC& aMimeType ) |
42 { |
47 { |
43 CThumbnailObjectSource* self = new( ELeave )CThumbnailObjectSource(); |
48 CThumbnailObjectSource* self = new( ELeave )CThumbnailObjectSource(); |
44 CleanupStack::PushL( self ); |
49 CleanupStack::PushL( self ); |
45 self->ConstructL( aUri, aMimeType ); |
50 self->ConstructL( aUri, aMimeType ); |
46 return self; |
51 return self; |
47 } |
52 } |
48 |
53 |
|
54 // --------------------------------------------------------------------------- |
|
55 // CThumbnailObjectSource::NewL() |
|
56 // Two-phased constructor. |
|
57 // --------------------------------------------------------------------------- |
|
58 // |
49 EXPORT_C CThumbnailObjectSource* CThumbnailObjectSource::NewL( const RFile64& |
59 EXPORT_C CThumbnailObjectSource* CThumbnailObjectSource::NewL( const RFile64& |
50 aFile, const TDesC& aMimeType ) |
60 aFile, const TDesC& aMimeType ) |
51 { |
61 { |
52 CThumbnailObjectSource* self = CThumbnailObjectSource::NewLC( aFile, |
62 CThumbnailObjectSource* self = CThumbnailObjectSource::NewLC( aFile, |
53 aMimeType ); |
63 aMimeType ); |
54 CleanupStack::Pop( self ); |
64 CleanupStack::Pop( self ); |
55 return self; |
65 return self; |
56 } |
66 } |
57 |
67 |
|
68 |
|
69 // --------------------------------------------------------------------------- |
|
70 // CThumbnailObjectSource::NewLC() |
|
71 // Two-phased constructor. |
|
72 // --------------------------------------------------------------------------- |
|
73 // |
58 EXPORT_C CThumbnailObjectSource* CThumbnailObjectSource::NewLC( const RFile64& |
74 EXPORT_C CThumbnailObjectSource* CThumbnailObjectSource::NewLC( const RFile64& |
59 aFile, const TDesC& aMimeType ) |
75 aFile, const TDesC& aMimeType ) |
60 { |
76 { |
61 CThumbnailObjectSource* self = new( ELeave )CThumbnailObjectSource(); |
77 CThumbnailObjectSource* self = new( ELeave )CThumbnailObjectSource(); |
62 CleanupStack::PushL( self ); |
78 CleanupStack::PushL( self ); |
63 self->ConstructL( aFile, aMimeType ); |
79 self->ConstructL( aFile, aMimeType ); |
64 return self; |
80 return self; |
65 } |
81 } |
66 |
82 |
67 EXPORT_C CThumbnailObjectSource* CThumbnailObjectSource::NewL( CFbsBitmap* aBitmap, |
83 |
68 const TDesC& aUri ) |
84 EXPORT_C CThumbnailObjectSource* CThumbnailObjectSource::NewL( CFbsBitmap* aBitmap, const TDesC& aUri ) |
69 { |
85 { |
70 CThumbnailObjectSource* self = CThumbnailObjectSource::NewLC( aBitmap, aUri ); |
86 CThumbnailObjectSource* self = CThumbnailObjectSource::NewLC( aBitmap, aUri ); |
71 CleanupStack::Pop( self ); |
87 CleanupStack::Pop( self ); |
72 return self; |
88 return self; |
73 } |
89 } |
74 |
90 |
75 EXPORT_C CThumbnailObjectSource* CThumbnailObjectSource::NewLC( CFbsBitmap* aBitmap, |
91 EXPORT_C CThumbnailObjectSource* CThumbnailObjectSource::NewLC( CFbsBitmap* aBitmap, const TDesC& aUri ) |
76 const TDesC& aUri ) |
|
77 { |
92 { |
78 CThumbnailObjectSource* self = new( ELeave )CThumbnailObjectSource(); |
93 CThumbnailObjectSource* self = new( ELeave )CThumbnailObjectSource(); |
79 CleanupStack::PushL( self ); |
94 CleanupStack::PushL( self ); |
80 self->ConstructL( aBitmap, aUri ); |
95 self->ConstructL( aBitmap, aUri ); |
81 return self; |
96 return self; |
82 } |
97 } |
83 |
98 |
84 EXPORT_C CThumbnailObjectSource* CThumbnailObjectSource::NewL( TDesC8* aBuffer, |
99 EXPORT_C CThumbnailObjectSource* CThumbnailObjectSource::NewL( TDesC8* aBuffer, TDesC& aMimeType, const TDesC& aUri) |
85 TDesC& aMimeType, const TDesC& aUri) |
100 { |
86 { |
101 CThumbnailObjectSource* self = CThumbnailObjectSource::NewLC( aBuffer, aMimeType, aUri ); |
87 CThumbnailObjectSource* self = CThumbnailObjectSource::NewLC( aBuffer, |
|
88 aMimeType, aUri ); |
|
89 CleanupStack::Pop( self ); |
102 CleanupStack::Pop( self ); |
90 return self; |
103 return self; |
91 } |
104 } |
92 |
105 |
93 EXPORT_C CThumbnailObjectSource* CThumbnailObjectSource::NewLC( TDesC8* aBuffer, |
106 EXPORT_C CThumbnailObjectSource* CThumbnailObjectSource::NewLC( TDesC8* aBuffer, TDesC& aMimeType, const TDesC& aUri) |
94 TDesC& aMimeType, const TDesC& aUri) |
|
95 { |
107 { |
96 CThumbnailObjectSource* self = new( ELeave )CThumbnailObjectSource(); |
108 CThumbnailObjectSource* self = new( ELeave )CThumbnailObjectSource(); |
97 CleanupStack::PushL( self ); |
109 CleanupStack::PushL( self ); |
98 self->ConstructL( aBuffer, aMimeType, aUri ); |
110 self->ConstructL( aBuffer, aMimeType, aUri ); |
99 return self; |
111 return self; |
100 } |
112 } |
101 |
113 |
102 EXPORT_C CThumbnailObjectSource* CThumbnailObjectSource::NewL( const TDesC& |
|
103 aUri, const TThumbnailId aThumbnailId, const TDesC& aMimeType ) |
|
104 { |
|
105 CThumbnailObjectSource* self = CThumbnailObjectSource::NewLC( aUri, |
|
106 aThumbnailId, aMimeType ); |
|
107 CleanupStack::Pop( self ); |
|
108 return self; |
|
109 } |
|
110 |
|
111 EXPORT_C CThumbnailObjectSource* CThumbnailObjectSource::NewLC( const TDesC& aUri, |
|
112 const TThumbnailId aThumbnailId, const TDesC& aMimeType ) |
|
113 { |
|
114 CThumbnailObjectSource* self = new( ELeave )CThumbnailObjectSource(); |
|
115 CleanupStack::PushL( self ); |
|
116 self->ConstructL( aUri, aMimeType, aThumbnailId ); |
|
117 return self; |
|
118 } |
|
119 |
|
120 EXPORT_C CThumbnailObjectSource* CThumbnailObjectSource::NewL( const TDesC& aUri, |
|
121 const TDesC& aTargetUri, const TDesC& aMimeType ) |
|
122 { |
|
123 CThumbnailObjectSource* self = CThumbnailObjectSource::NewLC( aUri, aTargetUri, |
|
124 aMimeType ); |
|
125 CleanupStack::Pop( self ); |
|
126 return self; |
|
127 } |
|
128 |
|
129 EXPORT_C CThumbnailObjectSource* CThumbnailObjectSource::NewLC( const TDesC& aUri, |
|
130 const TDesC& aTargetUri, const TDesC& aMimeType ) |
|
131 { |
|
132 CThumbnailObjectSource* self = new( ELeave )CThumbnailObjectSource(); |
|
133 CleanupStack::PushL( self ); |
|
134 self->ConstructL( aUri, aTargetUri, aMimeType ); |
|
135 return self; |
|
136 } |
|
137 |
|
138 |
114 |
139 // --------------------------------------------------------------------------- |
115 // --------------------------------------------------------------------------- |
140 // CThumbnailObjectSource::CThumbnailObjectSource() |
116 // CThumbnailObjectSource::CThumbnailObjectSource() |
141 // C++ default constructor can NOT contain any code, that might leave. |
117 // C++ default constructor can NOT contain any code, that might leave. |
142 // --------------------------------------------------------------------------- |
118 // --------------------------------------------------------------------------- |
156 aMimeType) |
132 aMimeType) |
157 { |
133 { |
158 iUri = aUri.AllocL(); |
134 iUri = aUri.AllocL(); |
159 iMimeType = HBufC8::NewL( aMimeType.Length() ); |
135 iMimeType = HBufC8::NewL( aMimeType.Length() ); |
160 iMimeType->Des().Copy( aMimeType ); |
136 iMimeType->Des().Copy( aMimeType ); |
161 iThumbnailId = 0; |
137 iBitmap = NULL; |
162 iBitmap = NULL; |
138 } |
163 iTargetUri = NULL; |
139 |
164 } |
140 |
165 |
141 // --------------------------------------------------------------------------- |
|
142 // CThumbnailObjectSource::ConstructL() |
|
143 // Symbian 2nd phase constructor can leave. |
|
144 // --------------------------------------------------------------------------- |
|
145 // |
166 void CThumbnailObjectSource::ConstructL( const RFile64& aFile, const TDesC& |
146 void CThumbnailObjectSource::ConstructL( const RFile64& aFile, const TDesC& |
167 aMimeType ) |
147 aMimeType ) |
168 { |
148 { |
169 iFile = aFile; |
149 iFile = aFile; |
170 iMimeType = HBufC8::NewL( aMimeType.Length() ); |
150 iMimeType = HBufC8::NewL( aMimeType.Length() ); |
171 iMimeType->Des().Copy( aMimeType ); |
151 iMimeType->Des().Copy( aMimeType ); |
172 iThumbnailId = 0; |
152 iThumbnailId = 0; |
173 iBitmap = NULL; |
153 iBitmap = NULL; |
174 iTargetUri = NULL; |
154 } |
175 } |
155 |
176 |
156 // --------------------------------------------------------------------------- |
177 void CThumbnailObjectSource::ConstructL( CFbsBitmap* aBitmap, const TDesC& |
157 // CThumbnailObjectSource::ConstructL() |
178 aUri ) |
158 // Symbian 2nd phase constructor can leave. |
|
159 // --------------------------------------------------------------------------- |
|
160 // |
|
161 void CThumbnailObjectSource::ConstructL( CFbsBitmap* aBitmap, const TDesC& |
|
162 aUri ) |
179 { |
163 { |
180 iBitmap = aBitmap; |
164 iBitmap = aBitmap; |
181 iUri = aUri.AllocL(); |
165 iUri = aUri.AllocL(); |
182 iThumbnailId = 0; |
166 iThumbnailId = 0; |
183 iTargetUri = NULL; |
167 } |
184 } |
168 |
185 |
169 // --------------------------------------------------------------------------- |
|
170 // CThumbnailObjectSource::ConstructL() |
|
171 // Symbian 2nd phase constructor can leave. |
|
172 // --------------------------------------------------------------------------- |
|
173 // |
186 void CThumbnailObjectSource::ConstructL( TDesC8* aBuffer, const TDesC& |
174 void CThumbnailObjectSource::ConstructL( TDesC8* aBuffer, const TDesC& |
187 aMimeType, const TDesC& aUri ) |
175 aMimeType, const TDesC& aUri ) |
188 { |
176 { |
189 iBuffer = aBuffer; |
177 iBuffer = aBuffer; |
190 iMimeType = HBufC8::NewL( aMimeType.Length() ); |
178 iMimeType = HBufC8::NewL( aMimeType.Length() ); |
191 iMimeType->Des().Copy( aMimeType ); |
179 iMimeType->Des().Copy( aMimeType ); |
192 iUri = aUri.AllocL(); |
180 iUri = aUri.AllocL(); |
193 iThumbnailId = 0; |
181 iThumbnailId = 0; |
194 iBitmap = NULL; |
182 iBitmap = NULL; |
195 iTargetUri = NULL; |
183 } |
196 } |
184 |
197 |
185 // --------------------------------------------------------------------------- |
|
186 // CThumbnailObjectSource::ConstructL() |
|
187 // Symbian 2nd phase constructor can leave. |
|
188 // --------------------------------------------------------------------------- |
|
189 // |
198 void CThumbnailObjectSource::ConstructL( const TDesC& aUri, const TDesC& |
190 void CThumbnailObjectSource::ConstructL( const TDesC& aUri, const TDesC& |
199 aMimeType, TThumbnailId aThumbnailId ) |
191 aMimeType, TThumbnailId aThumbnailId ) |
200 { |
192 { |
201 iUri = aUri.AllocL(); |
193 iUri = aUri.AllocL(); |
202 iMimeType = HBufC8::NewL( aMimeType.Length() ); |
194 iMimeType = HBufC8::NewL( aMimeType.Length() ); |
203 iMimeType->Des().Copy( aMimeType ); |
195 iMimeType->Des().Copy( aMimeType ); |
204 iThumbnailId = aThumbnailId; |
196 iThumbnailId = aThumbnailId; |
205 iTargetUri = NULL; |
|
206 } |
|
207 |
|
208 void CThumbnailObjectSource::ConstructL( const TDesC& aUri, const TDesC& |
|
209 aTargetUri, const TDesC& aMimeType ) |
|
210 { |
|
211 iUri = aUri.AllocL(); |
|
212 iTargetUri = aTargetUri.AllocL(); |
|
213 iMimeType = HBufC8::NewL( aMimeType.Length() ); |
|
214 iMimeType->Des().Copy( aMimeType ); |
|
215 iThumbnailId = 0; |
|
216 iBitmap = NULL; |
|
217 } |
197 } |
218 |
198 |
219 |
199 |
220 // --------------------------------------------------------------------------- |
200 // --------------------------------------------------------------------------- |
221 // CThumbnailObjectSource::~CThumbnailObjectSource()() |
201 // CThumbnailObjectSource::~CThumbnailObjectSource()() |
288 return *iMimeType; |
269 return *iMimeType; |
289 } |
270 } |
290 return KNullDesC8; |
271 return KNullDesC8; |
291 } |
272 } |
292 |
273 |
293 // --------------------------------------------------------------------------- |
|
294 // CThumbnailObjectSourceImpl::Id() |
|
295 // --------------------------------------------------------------------------- |
|
296 // |
|
297 EXPORT_C TThumbnailId CThumbnailObjectSource::Id() |
274 EXPORT_C TThumbnailId CThumbnailObjectSource::Id() |
298 { |
275 { |
299 return iThumbnailId; |
276 return iThumbnailId; |
300 } |
277 } |
301 |
278 |
|
279 EXPORT_C CThumbnailObjectSource* CThumbnailObjectSource::NewL( const TDesC& |
|
280 aUri, const TThumbnailId aThumbnailId, const TDesC& aMimeType ) |
|
281 { |
|
282 CThumbnailObjectSource* self = CThumbnailObjectSource::NewLC( aUri, |
|
283 aThumbnailId, aMimeType ); |
|
284 CleanupStack::Pop( self ); |
|
285 return self; |
|
286 } |
|
287 |
|
288 |
|
289 // --------------------------------------------------------------------------- |
|
290 // CThumbnailObjectSource::NewLC() |
|
291 // Two-phased constructor. |
|
292 // --------------------------------------------------------------------------- |
|
293 // |
|
294 EXPORT_C CThumbnailObjectSource* CThumbnailObjectSource::NewLC( const TDesC& aUri, |
|
295 const TThumbnailId aThumbnailId, const TDesC& aMimeType ) |
|
296 { |
|
297 CThumbnailObjectSource* self = new( ELeave )CThumbnailObjectSource(); |
|
298 CleanupStack::PushL( self ); |
|
299 self->ConstructL( aUri, aMimeType, aThumbnailId ); |
|
300 return self; |
|
301 } |
|
302 |
302 // --------------------------------------------------------------------------- |
303 // --------------------------------------------------------------------------- |
303 // CThumbnailObjectSourceImpl::Bitmap() |
304 // CThumbnailObjectSourceImpl::Bitmap() |
304 // --------------------------------------------------------------------------- |
305 // --------------------------------------------------------------------------- |
305 // |
306 // |
306 EXPORT_C CFbsBitmap* CThumbnailObjectSource::Bitmap() |
307 EXPORT_C CFbsBitmap* CThumbnailObjectSource::Bitmap() |