summaryrefslogtreecommitdiff
path: root/library
Unidiff
Diffstat (limited to 'library') (more/less context) (ignore whitespace changes)
-rw-r--r--library/applnk.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/library/applnk.cpp b/library/applnk.cpp
index 1f053f3..44f3f58 100644
--- a/library/applnk.cpp
+++ b/library/applnk.cpp
@@ -430,129 +430,129 @@ AppLnk& AppLnk::operator=(const AppLnk &copy)
430 mMimeTypeIcons = copy.mMimeTypeIcons; 430 mMimeTypeIcons = copy.mMimeTypeIcons;
431 mId = 0; 431 mId = 0;
432 d = new AppLnkPrivate(); 432 d = new AppLnkPrivate();
433 d->mCat = copy.d->mCat; 433 d->mCat = copy.d->mCat;
434 d->mCatList = copy.d->mCatList; 434 d->mCatList = copy.d->mCatList;
435 d->mPixmaps = copy.d->mPixmaps; 435 d->mPixmaps = copy.d->mPixmaps;
436 436
437 return *this; 437 return *this;
438} 438}
439/*! 439/*!
440 protected internally to share code 440 protected internally to share code
441 should I document that at all? 441 should I document that at all?
442 I don't know the TT style for that 442 I don't know the TT style for that
443*/ 443*/
444const QPixmap& AppLnk::pixmap( int pos, int size ) const { 444const QPixmap& AppLnk::pixmap( int pos, int size ) const {
445 if ( d->mPixmaps[pos].isNull() ) { 445 if ( d->mPixmaps[pos].isNull() ) {
446 AppLnk* that = (AppLnk*)this; 446 AppLnk* that = (AppLnk*)this;
447 if ( mIconFile.isEmpty() ) { 447 if ( mIconFile.isEmpty() ) {
448 MimeType mt(type()); 448 MimeType mt(type());
449 that->d->mPixmaps[pos] = mt.pixmap(); 449 that->d->mPixmaps[pos] = mt.pixmap();
450 if ( that->d->mPixmaps[pos].isNull() ) 450 if ( that->d->mPixmaps[pos].isNull() )
451 that->d->mPixmaps[pos].convertFromImage( 451 that->d->mPixmaps[pos].convertFromImage(
452 Resource::loadImage("UnknownDocument") 452 Resource::loadImage("UnknownDocument")
453 .smoothScale( size, size ) ); 453 .smoothScale( size, size ) );
454 return that->d->mPixmaps[pos]; 454 return that->d->mPixmaps[pos];
455 } 455 }
456 QImage unscaledIcon = Resource::loadImage( that->mIconFile ); 456 QImage unscaledIcon = Resource::loadImage( that->mIconFile );
457 if ( unscaledIcon.isNull() ) { 457 if ( unscaledIcon.isNull() ) {
458 qDebug( "Cannot find icon: %s", that->mIconFile.latin1() ); 458 qDebug( "Cannot find icon: %s", that->mIconFile.latin1() );
459 that->d->mPixmaps[pos].convertFromImage( 459 that->d->mPixmaps[pos].convertFromImage(
460 Resource::loadImage("UnknownDocument") 460 Resource::loadImage("UnknownDocument")
461 .smoothScale( size, size ) ); 461 .smoothScale( size, size ) );
462 } else { 462 } else {
463 that->d->mPixmaps[0].convertFromImage( unscaledIcon.smoothScale( smallSize, smallSize ) ); 463 that->d->mPixmaps[0].convertFromImage( unscaledIcon.smoothScale( smallSize, smallSize ) );
464 that->d->mPixmaps[1].convertFromImage( unscaledIcon.smoothScale( bigSize, bigSize ) ); 464 that->d->mPixmaps[1].convertFromImage( unscaledIcon.smoothScale( bigSize, bigSize ) );
465 } 465 }
466 return that->d->mPixmaps[pos]; 466 return that->d->mPixmaps[pos];
467 } 467 }
468 return d->mPixmaps[pos]; 468 return d->mPixmaps[pos];
469} 469}
470 470
471/*! 471/*!
472 Returns a small pixmap associated with the application. 472 Returns a small pixmap associated with the application.
473 473
474 \sa bigPixmap() setIcon() 474 \sa bigPixmap() setIcon()
475*/ 475*/
476const QPixmap& AppLnk::pixmap() const 476const QPixmap& AppLnk::pixmap() const
477{ 477{
478 if ( d->mPixmaps[0].isNull() ) { 478 if ( d->mPixmaps[0].isNull() ) {
479 return pixmap(AppLnkPrivate::Normal, smallSize ); 479 return pixmap(AppLnkPrivate::Normal, smallSize );
480 } 480 }
481 return d->mPixmaps[0]; 481 return d->mPixmaps[0];
482} 482}
483 483
484/*! 484/*!
485 Returns a large pixmap associated with the application. 485 Returns a large pixmap associated with the application.
486 486
487 \sa pixmap() setIcon() 487 \sa pixmap() setIcon()
488*/ 488*/
489const QPixmap& AppLnk::bigPixmap() const 489const QPixmap& AppLnk::bigPixmap() const
490{ 490{
491 if ( d->mPixmaps[1].isNull() ) { 491 if ( d->mPixmaps[1].isNull() ) {
492 return pixmap( AppLnkPrivate::Big, bigSize ); 492 return pixmap( AppLnkPrivate::Big, bigSize );
493 } 493 }
494 return mBigPixmap; 494 return d->mPixmaps[1];
495} 495}
496 496
497/*! 497/*!
498 Returns the type of the AppLnk. For applications, games and 498 Returns the type of the AppLnk. For applications, games and
499 settings the type is \c Application; for documents the type is the 499 settings the type is \c Application; for documents the type is the
500 document's MIME type. 500 document's MIME type.
501*/ 501*/
502QString AppLnk::type() const 502QString AppLnk::type() const
503{ 503{
504 if ( mType.isNull() ) { 504 if ( mType.isNull() ) {
505 AppLnk* that = (AppLnk*)this; 505 AppLnk* that = (AppLnk*)this;
506 QString f = file(); 506 QString f = file();
507 if ( !f.isNull() ) { 507 if ( !f.isNull() ) {
508 MimeType mt(f); 508 MimeType mt(f);
509 that->mType = mt.id(); 509 that->mType = mt.id();
510 return that->mType; 510 return that->mType;
511 } 511 }
512 } 512 }
513 return mType; 513 return mType;
514} 514}
515 515
516/*! 516/*!
517 Returns the file associated with the AppLnk. 517 Returns the file associated with the AppLnk.
518 518
519 \sa exec() name() 519 \sa exec() name()
520*/ 520*/
521QString AppLnk::file() const 521QString AppLnk::file() const
522{ 522{
523 if ( mFile.isNull() ) { 523 if ( mFile.isNull() ) {
524 AppLnk* that = (AppLnk*)this; 524 AppLnk* that = (AppLnk*)this;
525 QString ext = MimeType(mType).extension(); 525 QString ext = MimeType(mType).extension();
526 if ( !ext.isEmpty() ) 526 if ( !ext.isEmpty() )
527 ext = "." + ext; 527 ext = "." + ext;
528 if ( !mLinkFile.isEmpty() ) { 528 if ( !mLinkFile.isEmpty() ) {
529 that->mFile = 529 that->mFile =
530 mLinkFile.right(8)==".desktop" // 8 = strlen(".desktop") 530 mLinkFile.right(8)==".desktop" // 8 = strlen(".desktop")
531 ? mLinkFile.left(mLinkFile.length()-8) : mLinkFile; 531 ? mLinkFile.left(mLinkFile.length()-8) : mLinkFile;
532 } else if ( mType.contains('/') ) { 532 } else if ( mType.contains('/') ) {
533 that->mFile = 533 that->mFile =
534 QString(getenv("HOME"))+"/Documents/"+mType+"/"+safeFileName(that->mName); 534 QString(getenv("HOME"))+"/Documents/"+mType+"/"+safeFileName(that->mName);
535 /* 535 /*
536 * A file with the same name or a .desktop file already exists 536 * A file with the same name or a .desktop file already exists
537 */ 537 */
538 if ( QFile::exists(that->mFile+ext) || QFile::exists(that->mFile+".desktop") ) { 538 if ( QFile::exists(that->mFile+ext) || QFile::exists(that->mFile+".desktop") ) {
539 int n=1; 539 int n=1;
540 QString nn; 540 QString nn;
541 while (QFile::exists((nn=(that->mFile+"_"+QString::number(n)))+ext) 541 while (QFile::exists((nn=(that->mFile+"_"+QString::number(n)))+ext)
542 || QFile::exists(nn+".desktop")) 542 || QFile::exists(nn+".desktop"))
543 n++; 543 n++;
544 that->mFile = nn; 544 that->mFile = nn;
545 } 545 }
546 that->mLinkFile = that->mFile+".desktop"; 546 that->mLinkFile = that->mFile+".desktop";
547 that->mFile += ext; 547 that->mFile += ext;
548 } 548 }
549 prepareDirectories(that->mFile); 549 prepareDirectories(that->mFile);
550 if ( !that->mFile.isEmpty() ) { 550 if ( !that->mFile.isEmpty() ) {
551 QFile f(that->mFile); 551 QFile f(that->mFile);
552 if ( !f.open(IO_WriteOnly) ) 552 if ( !f.open(IO_WriteOnly) )
553 that->mFile = QString::null; 553 that->mFile = QString::null;
554 return that->mFile; 554 return that->mFile;
555 } 555 }
556 } 556 }
557 return mFile; 557 return mFile;
558} 558}