author | sandman <sandman> | 2002-11-24 18:31:38 (UTC) |
---|---|---|
committer | sandman <sandman> | 2002-11-24 18:31:38 (UTC) |
commit | 75cf5d2277d66f533167bcb2e3b6f0eee2424d96 (patch) (unidiff) | |
tree | 32f6fb81494954ac93e6f451f701d0b83f9852b7 | |
parent | 1b2c3ce0d94f033e8ffe1aa8575b210cdfb3c1ec (diff) | |
download | opie-75cf5d2277d66f533167bcb2e3b6f0eee2424d96.zip opie-75cf5d2277d66f533167bcb2e3b6f0eee2424d96.tar.gz opie-75cf5d2277d66f533167bcb2e3b6f0eee2424d96.tar.bz2 |
Valgrind complaint
had to changed the initialization sequence
-rw-r--r-- | noncore/styles/theme/othemebase.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/noncore/styles/theme/othemebase.cpp b/noncore/styles/theme/othemebase.cpp index 58005b5..acac847 100644 --- a/noncore/styles/theme/othemebase.cpp +++ b/noncore/styles/theme/othemebase.cpp | |||
@@ -184,211 +184,211 @@ void OThemeBase::generateBorderPix( int i ) | |||
184 | pbWidth[ i ], pbWidth[ i ], pbPixmaps[ i ] ->height() - pbWidth[ i ] * 2, | 184 | pbWidth[ i ], pbWidth[ i ], pbPixmaps[ i ] ->height() - pbWidth[ i ] * 2, |
185 | Qt::CopyROP, false ); | 185 | Qt::CopyROP, false ); |
186 | tmp.setMask( destMask ); | 186 | tmp.setMask( destMask ); |
187 | } | 187 | } |
188 | pbPixmaps[ i ] ->setBorder( OThemePixmap::Right, tmp ); | 188 | pbPixmaps[ i ] ->setBorder( OThemePixmap::Right, tmp ); |
189 | } | 189 | } |
190 | else | 190 | else |
191 | qDebug ( "OThemeBase: Tried making border from empty pixmap" ); | 191 | qDebug ( "OThemeBase: Tried making border from empty pixmap" ); |
192 | } | 192 | } |
193 | 193 | ||
194 | 194 | ||
195 | void OThemeBase::copyWidgetConfig( int sourceID, int destID, QString *pixnames, | 195 | void OThemeBase::copyWidgetConfig( int sourceID, int destID, QString *pixnames, |
196 | QString *brdnames ) | 196 | QString *brdnames ) |
197 | { | 197 | { |
198 | scaleHints[ destID ] = scaleHints[ sourceID ]; | 198 | scaleHints[ destID ] = scaleHints[ sourceID ]; |
199 | gradients[ destID ] = gradients[ sourceID ]; | 199 | gradients[ destID ] = gradients[ sourceID ]; |
200 | blends[ destID ] = blends[ sourceID ]; | 200 | blends[ destID ] = blends[ sourceID ]; |
201 | bContrasts[ destID ] = bContrasts[ sourceID ]; | 201 | bContrasts[ destID ] = bContrasts[ sourceID ]; |
202 | borders[ destID ] = borders[ sourceID ]; | 202 | borders[ destID ] = borders[ sourceID ]; |
203 | highlights[ destID ] = highlights[ sourceID ]; | 203 | highlights[ destID ] = highlights[ sourceID ]; |
204 | 204 | ||
205 | if ( grLowColors[ sourceID ] ) | 205 | if ( grLowColors[ sourceID ] ) |
206 | grLowColors[ destID ] = new QColor( *grLowColors[ sourceID ] ); | 206 | grLowColors[ destID ] = new QColor( *grLowColors[ sourceID ] ); |
207 | else | 207 | else |
208 | grLowColors[ destID ] = NULL; | 208 | grLowColors[ destID ] = NULL; |
209 | 209 | ||
210 | if ( grHighColors[ sourceID ] ) | 210 | if ( grHighColors[ sourceID ] ) |
211 | grHighColors[ destID ] = new QColor( *grHighColors[ sourceID ] ); | 211 | grHighColors[ destID ] = new QColor( *grHighColors[ sourceID ] ); |
212 | else | 212 | else |
213 | grHighColors[ destID ] = NULL; | 213 | grHighColors[ destID ] = NULL; |
214 | 214 | ||
215 | if ( colors[ sourceID ] ) | 215 | if ( colors[ sourceID ] ) |
216 | colors[ destID ] = new QColorGroup( *colors[ sourceID ] ); | 216 | colors[ destID ] = new QColorGroup( *colors[ sourceID ] ); |
217 | else | 217 | else |
218 | colors[ destID ] = NULL; | 218 | colors[ destID ] = NULL; |
219 | 219 | ||
220 | // pixmap | 220 | // pixmap |
221 | pixnames[ destID ] = pixnames[ sourceID ]; | 221 | pixnames[ destID ] = pixnames[ sourceID ]; |
222 | duplicate[ destID ] = false; | 222 | duplicate[ destID ] = false; |
223 | pixmaps[ destID ] = NULL; | 223 | pixmaps[ destID ] = NULL; |
224 | images[ destID ] = NULL; | 224 | images[ destID ] = NULL; |
225 | if ( !pixnames[ destID ].isEmpty() ) { | 225 | if ( !pixnames[ destID ].isEmpty() ) { |
226 | if ( scaleHints[ sourceID ] == TileScale && blends[ sourceID ] == 0.0 ) { | 226 | if ( scaleHints[ sourceID ] == TileScale && blends[ sourceID ] == 0.0 ) { |
227 | pixmaps[ destID ] = pixmaps[ sourceID ]; | 227 | pixmaps[ destID ] = pixmaps[ sourceID ]; |
228 | duplicate[ destID ] = true; | 228 | duplicate[ destID ] = true; |
229 | } | 229 | } |
230 | if ( !duplicate[ destID ] ) { | 230 | if ( !duplicate[ destID ] ) { |
231 | pixmaps[ destID ] = loadPixmap( pixnames[ destID ] ); | 231 | pixmaps[ destID ] = loadPixmap( pixnames[ destID ] ); |
232 | if ( scaleHints[ destID ] == TileScale && blends[ destID ] == 0.0 ) | 232 | if ( scaleHints[ destID ] == TileScale && blends[ destID ] == 0.0 ) |
233 | images[ destID ] = NULL; | 233 | images[ destID ] = NULL; |
234 | else | 234 | else |
235 | images[ destID ] = loadImage( pixnames[ destID ] ); | 235 | images[ destID ] = loadImage( pixnames[ destID ] ); |
236 | } | 236 | } |
237 | } | 237 | } |
238 | 238 | ||
239 | // border pixmap | 239 | // border pixmap |
240 | pbDuplicate[ destID ] = false; | 240 | pbDuplicate[ destID ] = false; |
241 | pbPixmaps[ destID ] = NULL; | 241 | pbPixmaps[ destID ] = NULL; |
242 | pbWidth[ destID ] = pbWidth[ sourceID ]; | 242 | pbWidth[ destID ] = pbWidth[ sourceID ]; |
243 | brdnames[ destID ] = brdnames[ sourceID ]; | 243 | brdnames[ destID ] = brdnames[ sourceID ]; |
244 | if ( !brdnames[ destID ].isEmpty() ) { | 244 | if ( !brdnames[ destID ].isEmpty() ) { |
245 | pbPixmaps[ destID ] = pbPixmaps[ sourceID ]; | 245 | pbPixmaps[ destID ] = pbPixmaps[ sourceID ]; |
246 | pbDuplicate[ destID ] = true; | 246 | pbDuplicate[ destID ] = true; |
247 | } | 247 | } |
248 | 248 | ||
249 | if ( sourceID == ActiveTab && destID == InactiveTab ) | 249 | if ( sourceID == ActiveTab && destID == InactiveTab ) |
250 | aTabLine = iTabLine; | 250 | aTabLine = iTabLine; |
251 | else if ( sourceID == InactiveTab && destID == ActiveTab ) | 251 | else if ( sourceID == InactiveTab && destID == ActiveTab ) |
252 | iTabLine = aTabLine; | 252 | iTabLine = aTabLine; |
253 | } | 253 | } |
254 | 254 | ||
255 | void OThemeBase::readConfig( Qt::GUIStyle /*style*/ ) | 255 | void OThemeBase::readConfig( Qt::GUIStyle /*style*/ ) |
256 | { | 256 | { |
257 | #define PREBLEND_ITEMS 12 | 257 | #define PREBLEND_ITEMS 12 |
258 | static WidgetType preBlend[] = {Slider, IndicatorOn, IndicatorOff, | 258 | static WidgetType preBlend[] = {Slider, IndicatorOn, IndicatorOff, |
259 | ExIndicatorOn, ExIndicatorOff, HScrollDeco, VScrollDeco, HScrollDecoDown, | 259 | ExIndicatorOn, ExIndicatorOff, HScrollDeco, VScrollDeco, HScrollDecoDown, |
260 | VScrollDecoDown, ComboDeco, ComboDecoDown, CheckMark}; | 260 | VScrollDecoDown, ComboDeco, ComboDecoDown, CheckMark}; |
261 | 261 | ||
262 | int i; | 262 | int i; |
263 | QString tmpStr; | 263 | QString tmpStr; |
264 | QString copyfrom[ WIDGETS ]; | 264 | QString copyfrom[ WIDGETS ]; |
265 | QString pixnames[ WIDGETS ]; // used for duplicate check | 265 | QString pixnames[ WIDGETS ]; // used for duplicate check |
266 | QString brdnames[ WIDGETS ]; | 266 | QString brdnames[ WIDGETS ]; |
267 | bool loaded[ WIDGETS ]; // used for preloading for CopyWidget | 267 | bool loaded[ WIDGETS ]; // used for preloading for CopyWidget |
268 | 268 | ||
269 | if ( configFileName.isEmpty() ) { | 269 | if ( configFileName.isEmpty() ) { |
270 | Config cfg ( "qpe" ); | 270 | Config cfg ( "qpe" ); |
271 | cfg. setGroup ( "Appearance" ); | 271 | cfg. setGroup ( "Appearance" ); |
272 | 272 | ||
273 | configFileName = cfg. readEntry ( "Theme", "default" ); | 273 | configFileName = cfg. readEntry ( "Theme", "default" ); |
274 | } | 274 | } |
275 | MyConfig config( configFilePath + "/themes/" + configFileName + ".themerc" , Config::File ); | 275 | MyConfig config( configFilePath + "/themes/" + configFileName + ".themerc" , Config::File ); |
276 | 276 | ||
277 | //printf ( "Opened config file: %s\n", ( configFilePath + "/themes/" + configFileName + ".themerc" ). ascii()); | 277 | //printf ( "Opened config file: %s\n", ( configFilePath + "/themes/" + configFileName + ".themerc" ). ascii()); |
278 | 278 | ||
279 | // Are we initalized? | 279 | // Are we initalized? |
280 | applyMiscResourceGroup( &config ); | ||
280 | for ( i = 0; i < INHERIT_ITEMS; ++i ) { | 281 | for ( i = 0; i < INHERIT_ITEMS; ++i ) { |
281 | applyResourceGroup( &config, i, copyfrom, pixnames, brdnames ); | 282 | applyResourceGroup( &config, i, copyfrom, pixnames, brdnames ); |
282 | // printf ( "%d [%s]: copy=%s, pix=%s, brd=%s\n", i, widgetEntries [i], copyfrom [i].latin1(), pixnames[i].latin1(),brdnames[i].latin1() ); | 283 | // printf ( "%d [%s]: copy=%s, pix=%s, brd=%s\n", i, widgetEntries [i], copyfrom [i].latin1(), pixnames[i].latin1(),brdnames[i].latin1() ); |
283 | } | 284 | } |
284 | for ( ; i < INHERIT_ITEMS*2; ++i ) { | 285 | for ( ; i < INHERIT_ITEMS*2; ++i ) { |
285 | if ( config.hasGroup( QString( widgetEntries[ i ] ) ) ) { | 286 | if ( config.hasGroup( QString( widgetEntries[ i ] ) ) ) { |
286 | applyResourceGroup( &config, i, copyfrom, pixnames, brdnames ); | 287 | applyResourceGroup( &config, i, copyfrom, pixnames, brdnames ); |
287 | // printf ( "%d [%s]: copy=%s, pix=%s, brd=%s\n", i, widgetEntries [i], copyfrom [i].latin1(), pixnames[i].latin1(),brdnames[i].latin1() ); | 288 | // printf ( "%d [%s]: copy=%s, pix=%s, brd=%s\n", i, widgetEntries [i], copyfrom [i].latin1(), pixnames[i].latin1(),brdnames[i].latin1() ); |
288 | } | 289 | } |
289 | else { | 290 | else { |
290 | copyfrom [ i ] = widgetEntries[ i - INHERIT_ITEMS ]; | 291 | copyfrom [ i ] = widgetEntries[ i - INHERIT_ITEMS ]; |
291 | // printf ( "%d [%s]: copy=%s\n", i, widgetEntries [i], copyfrom [i].latin1()); | 292 | // printf ( "%d [%s]: copy=%s\n", i, widgetEntries [i], copyfrom [i].latin1()); |
292 | } | 293 | } |
293 | } | 294 | } |
294 | for ( ; i < WIDGETS; ++i ) { | 295 | for ( ; i < WIDGETS; ++i ) { |
295 | applyResourceGroup( &config, i, copyfrom, pixnames, brdnames ); | 296 | applyResourceGroup( &config, i, copyfrom, pixnames, brdnames ); |
296 | // printf ( "%d [%s]: copy=%s, pix=%s, brd=%s\n", i, widgetEntries [i], copyfrom [i].latin1(), pixnames[i].latin1(),brdnames[i].latin1() ); | 297 | // printf ( "%d [%s]: copy=%s, pix=%s, brd=%s\n", i, widgetEntries [i], copyfrom [i].latin1(), pixnames[i].latin1(),brdnames[i].latin1() ); |
297 | } | 298 | } |
298 | applyMiscResourceGroup( &config ); | ||
299 | 299 | ||
300 | // initalize defaults that may not be read | 300 | // initalize defaults that may not be read |
301 | for ( i = 0; i < WIDGETS; ++i ) | 301 | for ( i = 0; i < WIDGETS; ++i ) |
302 | loaded[ i ] = false; | 302 | loaded[ i ] = false; |
303 | btnXShift = btnYShift = focus3DOffset = 0; | 303 | btnXShift = btnYShift = focus3DOffset = 0; |
304 | aTabLine = iTabLine = true; | 304 | aTabLine = iTabLine = true; |
305 | roundedButton = roundedCombo = roundedSlider = focus3D = false; | 305 | roundedButton = roundedCombo = roundedSlider = focus3D = false; |
306 | splitterWidth = 10; | 306 | splitterWidth = 10; |
307 | 307 | ||
308 | for ( i = 0; i < WIDGETS; ++i ) { | 308 | for ( i = 0; i < WIDGETS; ++i ) { |
309 | readResourceGroup( i, copyfrom, pixnames, brdnames, loaded ); | 309 | readResourceGroup( i, copyfrom, pixnames, brdnames, loaded ); |
310 | // printf ( "%d [%s]: copy=%s, pix=%s, brd=%s, colors=%s\n", i, widgetEntries [i], copyfrom [i].latin1(), pixnames[i].latin1(),brdnames[i].latin1(), (colors[i]?colors[i]->background().name().latin1():"<none)" )); | 310 | // printf ( "%d [%s]: copy=%s, pix=%s, brd=%s, colors=%s\n", i, widgetEntries [i], copyfrom [i].latin1(), pixnames[i].latin1(),brdnames[i].latin1(), (colors[i]?colors[i]->background().name().latin1():"<none)" )); |
311 | } | 311 | } |
312 | 312 | ||
313 | // misc items | 313 | // misc items |
314 | readMiscResourceGroup(); | 314 | readMiscResourceGroup(); |
315 | 315 | ||
316 | // Handle preblend items | 316 | // Handle preblend items |
317 | for ( i = 0; i < PREBLEND_ITEMS; ++i ) { | 317 | for ( i = 0; i < PREBLEND_ITEMS; ++i ) { |
318 | if ( pixmaps[ preBlend[ i ] ] != NULL && blends[ preBlend[ i ] ] != 0.0 ) | 318 | if ( pixmaps[ preBlend[ i ] ] != NULL && blends[ preBlend[ i ] ] != 0.0 ) |
319 | blend( preBlend[ i ] ); | 319 | blend( preBlend[ i ] ); |
320 | } | 320 | } |
321 | } | 321 | } |
322 | 322 | ||
323 | OThemeBase::OThemeBase( const QString & configFile ) | 323 | OThemeBase::OThemeBase( const QString & configFile ) |
324 | : QWindowsStyle() | 324 | : QWindowsStyle() |
325 | { | 325 | { |
326 | configFilePath = QPEApplication::qpeDir ( ) + "/plugins/styles/"; | 326 | configFilePath = QPEApplication::qpeDir ( ) + "/plugins/styles/"; |
327 | configFileName = configFile; | 327 | configFileName = configFile; |
328 | 328 | ||
329 | readConfig( Qt::WindowsStyle ); | 329 | readConfig( Qt::WindowsStyle ); |
330 | cache = new OThemeCache( cacheSize ); | 330 | cache = new OThemeCache( cacheSize ); |
331 | } | 331 | } |
332 | 332 | ||
333 | void OThemeBase::applyConfigFile( const QString &/*file*/ ) | 333 | void OThemeBase::applyConfigFile( const QString &/*file*/ ) |
334 | { | 334 | { |
335 | #if 0 | 335 | #if 0 |
336 | // handle std color scheme | 336 | // handle std color scheme |
337 | Config inConfig( file, Config::File ); | 337 | Config inConfig( file, Config::File ); |
338 | Config globalConfig ( "qpe" ); | 338 | Config globalConfig ( "qpe" ); |
339 | 339 | ||
340 | globalConfig. setGroup ( "Apperance" ); | 340 | globalConfig. setGroup ( "Apperance" ); |
341 | inConfig. setGroup( "General" ); | 341 | inConfig. setGroup( "General" ); |
342 | 342 | ||
343 | if ( inConfig.hasKey( "foreground" ) ) | 343 | if ( inConfig.hasKey( "foreground" ) ) |
344 | globalConfig.writeEntry( "Text", inConfig.readEntry( "foreground", " " ) ); | 344 | globalConfig.writeEntry( "Text", inConfig.readEntry( "foreground", " " ) ); |
345 | if ( inConfig.hasKey( "background" ) ) | 345 | if ( inConfig.hasKey( "background" ) ) |
346 | globalConfig.writeEntry( "Background", inConfig.readEntry( "background", " " ) ); | 346 | globalConfig.writeEntry( "Background", inConfig.readEntry( "background", " " ) ); |
347 | if ( inConfig.hasKey( "selectForeground" ) ) | 347 | if ( inConfig.hasKey( "selectForeground" ) ) |
348 | globalConfig.writeEntry( "HighlightedText", inConfig.readEntry( "selectForeground", " " ) ); | 348 | globalConfig.writeEntry( "HighlightedText", inConfig.readEntry( "selectForeground", " " ) ); |
349 | if ( inConfig.hasKey( "selectBackground" ) ) | 349 | if ( inConfig.hasKey( "selectBackground" ) ) |
350 | globalConfig.writeEntry( "Highlight", inConfig.readEntry( "selectBackground", " " ) ); | 350 | globalConfig.writeEntry( "Highlight", inConfig.readEntry( "selectBackground", " " ) ); |
351 | if ( inConfig.hasKey( "windowForeground" ) ) | 351 | if ( inConfig.hasKey( "windowForeground" ) ) |
352 | globalConfig.writeEntry( "Text", inConfig.readEntry( "windowForeground", " " ) ); | 352 | globalConfig.writeEntry( "Text", inConfig.readEntry( "windowForeground", " " ) ); |
353 | if ( inConfig.hasKey( "windowBackground" ) ) | 353 | if ( inConfig.hasKey( "windowBackground" ) ) |
354 | globalConfig.writeEntry( "Base", inConfig.readEntry( "windowBackground", " " ) ); | 354 | globalConfig.writeEntry( "Base", inConfig.readEntry( "windowBackground", " " ) ); |
355 | 355 | ||
356 | // Keep track of the current theme so that we can select the right one | 356 | // Keep track of the current theme so that we can select the right one |
357 | // in the KControl module. | 357 | // in the KControl module. |
358 | globalConfig.writeEntry ( "CurrentTheme", file ); | 358 | globalConfig.writeEntry ( "CurrentTheme", file ); |
359 | 359 | ||
360 | globalConfig.write(); | 360 | globalConfig.write(); |
361 | #endif | 361 | #endif |
362 | } | 362 | } |
363 | 363 | ||
364 | OThemeBase::~OThemeBase() | 364 | OThemeBase::~OThemeBase() |
365 | { | 365 | { |
366 | int i; | 366 | int i; |
367 | for ( i = 0; i < WIDGETS; ++i ) { | 367 | for ( i = 0; i < WIDGETS; ++i ) { |
368 | if ( !duplicate[ i ] ) { | 368 | if ( !duplicate[ i ] ) { |
369 | if ( images[ i ] ) | 369 | if ( images[ i ] ) |
370 | delete images[ i ]; | 370 | delete images[ i ]; |
371 | if ( pixmaps[ i ] ) | 371 | if ( pixmaps[ i ] ) |
372 | delete pixmaps[ i ]; | 372 | delete pixmaps[ i ]; |
373 | } | 373 | } |
374 | if ( !pbDuplicate[ i ] && pbPixmaps[ i ] ) | 374 | if ( !pbDuplicate[ i ] && pbPixmaps[ i ] ) |
375 | delete pbPixmaps[ i ]; | 375 | delete pbPixmaps[ i ]; |
376 | if ( colors[ i ] ) | 376 | if ( colors[ i ] ) |
377 | delete( colors[ i ] ); | 377 | delete( colors[ i ] ); |
378 | if ( grLowColors[ i ] ) | 378 | if ( grLowColors[ i ] ) |
379 | delete( grLowColors[ i ] ); | 379 | delete( grLowColors[ i ] ); |
380 | if ( grHighColors[ i ] ) | 380 | if ( grHighColors[ i ] ) |
381 | delete( grHighColors[ i ] ); | 381 | delete( grHighColors[ i ] ); |
382 | } | 382 | } |
383 | delete cache; | 383 | delete cache; |
384 | } | 384 | } |
385 | 385 | ||
386 | QImage* OThemeBase::loadImage( QString &name ) | 386 | QImage* OThemeBase::loadImage( QString &name ) |
387 | { | 387 | { |
388 | QImage * image = new QImage; | 388 | QImage * image = new QImage; |
389 | QString path = configFilePath + "/pixmaps/" + name; | 389 | QString path = configFilePath + "/pixmaps/" + name; |
390 | image->load( path ); | 390 | image->load( path ); |
391 | if ( !image->isNull() ) | 391 | if ( !image->isNull() ) |
392 | return ( image ); | 392 | return ( image ); |
393 | qDebug ( "OThemeBase: Unable to load image %s\n", name.ascii ( ) ); | 393 | qDebug ( "OThemeBase: Unable to load image %s\n", name.ascii ( ) ); |
394 | delete image; | 394 | delete image; |