From 786ba559c1cffc93d3be2a9b0786d5b34cfc334a Mon Sep 17 00:00:00 2001 From: Michele Calgaro Date: Thu, 22 Jun 2023 12:52:58 +0900 Subject: Fix functionality broken by commit d26dabfe. Signed-off-by: Michele Calgaro --- kview/modules/presenter/kviewpresenter.cpp | 29 ++++++++++------------------- kview/modules/presenter/kviewpresenter.h | 11 ++++++++--- 2 files changed, 18 insertions(+), 22 deletions(-) diff --git a/kview/modules/presenter/kviewpresenter.cpp b/kview/modules/presenter/kviewpresenter.cpp index c05490bb..99083b6d 100644 --- a/kview/modules/presenter/kviewpresenter.cpp +++ b/kview/modules/presenter/kviewpresenter.cpp @@ -60,7 +60,6 @@ KViewPresenter::KViewPresenter( TQObject* parent, const char* name, const TQStri , m_pSlideshowTimer( new TQTimer( this ) ) { kdDebug( 4630 ) << k_funcinfo << endl; - m_imagelist.setAutoDelete( true ); TQObjectList * viewerList = parent->queryList( 0, "KImageViewer Part", false, false ); m_pViewer = static_cast( viewerList->getFirst() ); @@ -190,14 +189,12 @@ bool KViewPresenter::eventFilter( TQObject *obj, TQEvent *ev ) { for( TQStringList::const_iterator it = l.begin(); it != l.end(); ++it ) { - ImageInfo * info = new ImageInfo( KURL( *it ) ); + ImageInfo info = ImageInfo( KURL( *it ) ); if( ! m_imagelist.contains( info ) ) { - m_imagelist.inSort( info ); + m_imagelist.append( info ); ( void )new ImageListItem( m_pImageList->m_pListView, KURL( *it ) ); } - else - delete info; } return true; } @@ -217,15 +214,13 @@ void KViewPresenter::slotImageOpened( const KURL & url ) if( ! m_bDontAdd ) { kdDebug( 4630 ) << k_funcinfo << "imagelist:" << endl; - ImageInfo * info = new ImageInfo( url ); + ImageInfo info = ImageInfo( url ); if( ! m_imagelist.contains( info ) ) { - m_imagelist.inSort( info ); + m_imagelist.append( info ); TQListViewItem * item = new ImageListItem( m_pImageList->m_pListView, url ); makeCurrent( item ); } - else - delete info; } } @@ -247,14 +242,12 @@ void KViewPresenter::slotOpenFiles() m_pViewer->openURL( *it ); for( ++it; it != urls.end(); ++it ) { - ImageInfo * info = new ImageInfo( *it ); + ImageInfo info = ImageInfo( *it ); if( ! m_imagelist.contains( info ) ) { - m_imagelist.inSort( info ); + m_imagelist.append( info ); ( void )new ImageListItem( m_pImageList->m_pListView, *it ); } - else - delete info; } } @@ -265,7 +258,7 @@ void KViewPresenter::slotClose() next = 0; ImageInfo info( m_pCurrentItem->url() ); - m_imagelist.remove( &info ); + m_imagelist.remove( info ); delete m_pCurrentItem; m_pCurrentItem = 0; @@ -285,7 +278,7 @@ void KViewPresenter::changeItem( TQListViewItem * qitem ) { kdDebug( 4630 ) << "file doesn't exist. removed." << endl; ImageInfo info( item->url() ); - m_imagelist.remove( &info ); + m_imagelist.remove( info ); if( m_pCurrentItem == item ) { TQListViewItem * next = m_pCurrentItem->itemBelow() ? m_pCurrentItem->itemBelow() : m_pImageList->m_pListView->firstChild(); @@ -430,14 +423,12 @@ void KViewPresenter::loadList() while( ! t.eof() ) { KURL url ( t.readLine() ); - ImageInfo * info = new ImageInfo( url ); + ImageInfo info = ImageInfo( url ); if( ! m_imagelist.contains( info ) ) { - m_imagelist.inSort( info ); + m_imagelist.append( info ); ( void )new ImageListItem( m_pImageList->m_pListView, url ); } - else - delete info; } } else diff --git a/kview/modules/presenter/kviewpresenter.h b/kview/modules/presenter/kviewpresenter.h index 2adee4fb..5bb3e953 100644 --- a/kview/modules/presenter/kviewpresenter.h +++ b/kview/modules/presenter/kviewpresenter.h @@ -24,7 +24,7 @@ #include #include -#include +#include namespace KImageViewer { class Viewer; } @@ -47,6 +47,11 @@ protected: struct ImageInfo { KURL url; + + ImageInfo() + : url() + { + } ImageInfo( const KURL & url ) : url( url ) { @@ -57,7 +62,7 @@ protected: } bool operator!=( const ImageInfo & i1 ) { - return url.prettyURL() == i1.url.prettyURL(); + return url.prettyURL() != i1.url.prettyURL(); } bool operator>( const ImageInfo & i1 ) { @@ -94,7 +99,7 @@ private: TDEAction * m_paFileOpen; TDEAction * m_paFileClose; - TQPtrList m_imagelist; + TQValueList m_imagelist; bool m_bDontAdd; ImageListItem * m_pCurrentItem; TQTimer * m_pSlideshowTimer; -- cgit v1.2.3