Sophie

Sophie

distrib > Mandriva > 2006.0 > i586 > by-pkgid > ee5019e51831f214d532979b59ea2d61 > files > 56

kdelibs-3.4.2-31.4.20060mdk.src.rpm

*** kdelibs-3.4.2/kio/kfile/kfileiconview.cpp	2005-08-22 13:18:20.000000000 +0200
--- kdelibs-helio/kio/kfile/kfileiconview.cpp	2005-08-22 13:19:37.000000000 +0200
***************
*** 34,39 ****
--- 34,40 ----
  #include <kfileitem.h>
  #include <kiconeffect.h>
  #include <kglobalsettings.h>
+ #include <kdesktopfile.h>
  #include <kurldrag.h>
  #include <kio/previewjob.h>
  
***************
*** 279,284 ****
--- 280,286 ----
  	sig->activateMenu( 0, pos );
  	return;
      }
+ 
      KFileIconViewItem *i = (KFileIconViewItem*) item;
      sig->activateMenu( i->fileInfo(), pos );
  }
***************
*** 335,340 ****
--- 337,350 ----
  
  void KFileIconView::insertItem( KFileItem *i )
  {
+     if ( i->mimetype() == "application/x-desktop" )
+     {
+ 	    KDesktopFile df( i->url().path(), true );
+ 	    if ( df.readType() == "Link" )
+ 	    {
+ 	       i->setName( df.readName() );
+ 	    }
+     }
      KFileView::insertItem( i );
  
      QIconView* qview = static_cast<QIconView*>( this );
***************
*** 342,347 ****
--- 352,358 ----
      // we disable updates on the IconView for a while.
      qview->setUpdatesEnabled( false );
      KFileIconViewItem *item = new KFileIconViewItem( qview, i );
+     
      initItem( item, i, true );
      qview->setUpdatesEnabled( true );
  
***************
*** 353,375 ****
  
  void KFileIconView::slotActivate( QIconViewItem *item )
  {
!     if ( !item )
! 	return;
!     const KFileItem *fi = ( (KFileIconViewItem*)item )->fileInfo();
!     if ( fi )
! 	sig->activate( fi );
  }
  
  void KFileIconView::selected( QIconViewItem *item )
  {
!     if ( !item || (KApplication::keyboardMouseState() & (ShiftButton | ControlButton)) != 0 )
! 	return;
! 
!     if ( KGlobalSettings::singleClick() ) {
  	const KFileItem *fi = ( (KFileIconViewItem*)item )->fileInfo();
! 	if ( fi && (fi->isDir() || !onlyDoubleClickSelectsFiles()) )
! 	    sig->activate( fi );
!     }
  }
  
  void KFileIconView::setCurrentItem( const KFileItem *item )
--- 364,414 ----
  
  void KFileIconView::slotActivate( QIconViewItem *item )
  {
! 	if ( !item )
! 		return;
! 
! 	const KFileItem *fi = ( (KFileIconViewItem*)item )->fileInfo();
! 	
! 	if ( fi->mimetype() == "application/x-desktop" )
! 	{
! 		KDesktopFile df( fi->url().path(), true );
! 		if ( df.readType() == "Link"  )
! 		{
! 			KURL lu( df.readURL() );
! 			if ( lu.isLocalFile() )
! 			{
! 				fi = new KFileItem( KURL( df.readURL() ), "inode/directory", S_IFDIR );
! 			}
! 		}
! 	}
! 	if ( fi )
! 		sig->activate( fi );
  }
  
  void KFileIconView::selected( QIconViewItem *item )
  {
! 	if ( !item || (KApplication::keyboardMouseState() & (ShiftButton | ControlButton)) != 0 )
! 		return;
! 	
  	const KFileItem *fi = ( (KFileIconViewItem*)item )->fileInfo();
! 	if ( fi->mimetype() == "application/x-desktop" )
! 	{
! 		KDesktopFile df( fi->url().path(), true );
! 		if ( df.readType() == "Link" )
! 		{
! 			KURL lu( df.readURL() );
! 			if ( lu.isLocalFile() )
! 			{
! 				fi = new KFileItem( KURL( df.readURL() ), "inode/directory", S_IFDIR );
! 			}
! 		}
! 	}
! 	
! 	if ( KGlobalSettings::singleClick() ) 
! 	{
! 		if ( fi && (fi->isDir() || !onlyDoubleClickSelectsFiles()) )
! 			sig->activate( fi );
! 	}
  }
  
  void KFileIconView::setCurrentItem( const KFileItem *item )
*** kdelibs-3.4.2/kio/kfile/kfiledetailview.cpp	2005-05-23 14:15:57.000000000 +0200
--- kdelibs-helio/kio/kfile/kfiledetailview.cpp	2005-08-22 13:01:22.000000000 +0200
***************
*** 34,39 ****
--- 34,40 ----
  #include <klocale.h>
  #include <kdebug.h>
  #include <kurldrag.h>
+ #include <kdesktopfile.h>
  
  #include "kfiledetailview.h"
  #include "config-kfile.h"
***************
*** 209,214 ****
--- 210,224 ----
  {
      KFileView::insertItem( i );
  
+ 	 if ( i->mimetype() == "application/x-desktop" )
+     {
+ 	    KDesktopFile df( i->url().path(), true );
+ 	    if ( df.readType() == "Link" )
+ 	    {
+ 	       i->setName( df.readName() );
+ 	    }
+     }
+ 
      KFileListViewItem *item = new KFileListViewItem( (QListView*) this, i );
  
      setSortingKey( item, i );
***************
*** 221,244 ****
  
  void KFileDetailView::slotActivate( QListViewItem *item )
  {
!     if ( !item )
!         return;
! 
!     const KFileItem *fi = ( (KFileListViewItem*)item )->fileInfo();
!     if ( fi )
!         sig->activate( fi );
  }
  
  void KFileDetailView::selected( QListViewItem *item )
  {
!     if ( !item )
!         return;
! 
!     if ( KGlobalSettings::singleClick() ) {
!         const KFileItem *fi = ( (KFileListViewItem*)item )->fileInfo();
!         if ( fi && (fi->isDir() || !onlyDoubleClickSelectsFiles()) )
!             sig->activate( fi );
!     }
  }
  
  void KFileDetailView::highlighted( QListViewItem *item )
--- 231,282 ----
  
  void KFileDetailView::slotActivate( QListViewItem *item )
  {
! 	if ( !item )
! 		return;
! 	
! 	const KFileItem *fi = ( (KFileListViewItem*)item )->fileInfo();
! 	
! 	if ( fi->mimetype() == "application/x-desktop" )
! 	{
! 		KDesktopFile df( fi->url().path(), true );
! 		if ( df.readType() == "Link"  )
! 		{
! 			KURL lu( df.readURL() );
! 			if ( lu.isLocalFile() )
! 			{
! 				fi = new KFileItem( KURL( df.readURL() ), "inode/directory", S_IFDIR );
! 			}
! 		}
! 	}
! 	
! 	if ( fi )
! 		sig->activate( fi );
  }
  
  void KFileDetailView::selected( QListViewItem *item )
  {
! 	if ( !item )
! 		return;
! 	
! 	const KFileItem *fi = ( (KFileListViewItem*)item )->fileInfo();
! 	if ( fi->mimetype() == "application/x-desktop" )
! 	{
! 		KDesktopFile df( fi->url().path(), true );
! 		if ( df.readType() == "Link" )
! 		{
! 			KURL lu( df.readURL() );
! 			if ( lu.isLocalFile() )
! 			{
! 				fi = new KFileItem( KURL( df.readURL() ), "inode/directory", S_IFDIR );
! 			}
! 		}
! 	}
! 	
! 	if ( KGlobalSettings::singleClick() ) 
! 	{
! 		if ( fi && (fi->isDir() || !onlyDoubleClickSelectsFiles()) )
! 			sig->activate( fi );
! 	}
  }
  
  void KFileDetailView::highlighted( QListViewItem *item )