summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMavridis Philippe <mavridisf@gmail.com>2021-03-16 10:20:22 +0200
committerMichele Calgaro <michele.calgaro@yahoo.it>2021-03-18 19:55:00 +0900
commitb43a934bb7abd7af1ab279b5bc6193052f597df5 (patch)
tree568bca9ca548bfd12f0020e7c94163ea6b7c58a1
parent769a496bf77457ac4bcb06cdc19a4fde721d40a8 (diff)
downloadklamav-b43a934bb7abd7af1ab279b5bc6193052f597df5.tar.gz
klamav-b43a934bb7abd7af1ab279b5bc6193052f597df5.zip
Klamscan, Scheduler: Reset DirectoryList after use
Signed-off-by: Mavridis Philippe <mavridisf@gmail.com> (cherry picked from commit 69817f0eae3ed0e420a7d0e58c29953dd65dda97)
-rw-r--r--src/directorylist.cpp13
-rw-r--r--src/directorylist.h4
-rw-r--r--src/klamscan.cpp2
-rw-r--r--src/schedule.cpp1
4 files changed, 20 insertions, 0 deletions
diff --git a/src/directorylist.cpp b/src/directorylist.cpp
index aae909d..c401644 100644
--- a/src/directorylist.cpp
+++ b/src/directorylist.cpp
@@ -98,6 +98,7 @@ Item::Item( TQListView *parent, CollectionSetup *collection, const TQString &nam
else
setPixmap( 0, SmallIcon( "folder" ) );
setVisible( true );
+ connect( collectionSetup, SIGNAL(resetDirs()), this, SLOT(reset()) );
}
@@ -115,6 +116,7 @@ Item::Item( TQListViewItem *parent, CollectionSetup *collection, const KURL &url
connect( &m_lister, SIGNAL(newItems( const KFileItemList& )), SLOT(newItems( const KFileItemList& )) );
connect( &m_lister, SIGNAL(completed()), SLOT(completed()) );
connect( &m_lister, SIGNAL(canceled()), SLOT(completed()) );
+ connect( collectionSetup, SIGNAL(resetDirs()), this, SLOT(reset()) );
}
@@ -225,6 +227,8 @@ Item::paintCell( TQPainter * p, const TQColorGroup & cg, int column, int width,
setOn(false);
}
+void Item::reset() { this->setOn(false); }
+
//////////////////////////////////////////////////////////////////////////////////////////
// CLASS DeviceItem
//////////////////////////////////////////////////////////////////////////////////////////
@@ -237,6 +241,7 @@ DeviceItem::DeviceItem( TQListView *parent, CollectionSetup *collection )
collectionSetup = collection;
m_lister.setDirOnlyMode( true );
connect( &m_lister, SIGNAL(newItems( const KFileItemList& )), SLOT(newItems( const KFileItemList& )) );
+ connect( collectionSetup, SIGNAL(resetDirs()), this, SLOT(reset()) );
if ( KDE::versionMajor() == 3 && KDE::versionMinor() < 4 )
{
@@ -299,6 +304,7 @@ DeviceItem::DeviceItem( TQListViewItem *parent, CollectionSetup *collection, con
connect( &m_lister, SIGNAL(newItems( const KFileItemList& )), SLOT(newItems( const KFileItemList& )) );
connect( &m_lister, SIGNAL(completed()), SLOT(completed()) );
connect( &m_lister, SIGNAL(canceled()), SLOT(completed()) );
+ connect( collectionSetup, SIGNAL(resetDirs()), this, SLOT(reset()) );
}
@@ -475,6 +481,8 @@ DeviceItem::mountDevice( const TQString & device)
}
}
+void DeviceItem::reset() { this->setOn(false); }
+
TQStringList CollectionSetup::pruneSelectedDirs( TQStringList listOfUrls ){
// This gets rid of redundant sub-directories
// from the list of dirs to be scanned.
@@ -538,4 +546,9 @@ void CollectionSetup::writeConfig( const char* optGroup, const char* optName )
config->sync();
}
+void CollectionSetup::reset()
+{
+ emit resetDirs();
+}
+
#include "directorylist.moc"
diff --git a/src/directorylist.h b/src/directorylist.h
index 79f3b9c..aebbeec 100644
--- a/src/directorylist.h
+++ b/src/directorylist.h
@@ -48,9 +48,11 @@ public:
static TQStringList pruneSelectedDirs( TQStringList listOfUrls = 0 );
void writeConfig( const char* optGroup, const char* optName );
+ void reset();
signals:
void dirsSelected(TQStringList& dirs);
+ void resetDirs();
public slots:
@@ -85,6 +87,7 @@ public:
public slots:
void newItems( const KFileItemList& );
void completed() { if( childCount() == 0 ) { setExpandable( false ); repaint(); } }
+ void reset();
private:
CollectionSetup *collectionSetup;
@@ -113,6 +116,7 @@ class DeviceItem : public TQObject, public TQCheckListItem
public slots:
void newItems( const KFileItemList& );
void completed() { if( childCount() == 0 ) { setExpandable( false ); repaint(); } }
+ void reset();
private:
void mountDevice(const TQString & device);
CollectionSetup *collectionSetup;
diff --git a/src/klamscan.cpp b/src/klamscan.cpp
index ea5c92e..7d116d8 100644
--- a/src/klamscan.cpp
+++ b/src/klamscan.cpp
@@ -415,6 +415,8 @@ void Klamscan::slotStartAgain(){
}else
slotScan();
+ setup->reset();
+
//slotManageButtons(tabBrowser->currentPage());
}
diff --git a/src/schedule.cpp b/src/schedule.cpp
index 743c551..7ea7a22 100644
--- a/src/schedule.cpp
+++ b/src/schedule.cpp
@@ -198,6 +198,7 @@ void Schedule::slotScheduleScan()
{
// Update directory list
filepattern = setup->dirs();
+ setup->reset();
/* cthost = new CTHost();*/
/* const CTHost& cth(*cthost);