You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
krusader/krusader/GUI/dirhistoryqueue.cpp

88 lines
2.5 KiB

/***************************************************************************
dirhistoryqueue.cpp - description
-------------------
begin : Thu Jan 1 2004
copyright : (C) 2004 by Shie Erlich & Rafi Yanai
email :
***************************************************************************/
/***************************************************************************
* *
* This program is free software; you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by *
* the Free Software Foundation; either version 2 of the License, or *
* (at your option) any later version. *
* *
***************************************************************************/
#include "dirhistoryqueue.h"
#include "../Panel/listpanel.h"
#include <kdebug.h>
DirHistoryQueue::DirHistoryQueue( ListPanel* p ) {
panel = p;
connect( panel, TQ_SIGNAL( pathChanged( ListPanel* ) ), this, TQ_SLOT( slotPathChanged( ListPanel* ) ) );
}
DirHistoryQueue::~DirHistoryQueue() {}
/** No descriptions */
void DirHistoryQueue::slotPathChanged( ListPanel* p ) {
KURL url = p->virtualPath();
// already in the queue ?
if( urlQueue.findIndex( url ) >= 0 ){
// remove it !
urlQueue.remove( url );
}
// do we have room for another ?
if ( urlQueue.size() > 12 ) {
// no room - remove the oldest entry
urlQueue.pop_back();
}
urlQueue.push_front( url );
}
#if 0
void DirHistoryQueue::addUrl(const KURL& url){
if ( pathQueue.findIndex( path ) == -1 ) {
if ( pathQueue.size() > 12 ) {
// remove the oldest entry
pathQueue.pop_back();
}
} else {
pathQueue.remove( path );
}
pathQueue.push_front( path );
}
void DirHistoryQueue::RemovePath( const TQString& path ) {
TQStringList::iterator it;
it = pathQueue.find( path );
if ( it != pathQueue.end() ) {
pathQueue.remove( it );
}
}
bool DirHistoryQueue::checkPath( const TQString& path ) {
KURL url( path );
TQString p = url.path();
// kdDebug() << "url:" << p << ", file: " << url.fileName() << ", dir: " << url.directory() << endl;
if ( url.protocol() == "file" ) {
TQDir dir( path );
if ( !dir.exists() ) {
RemovePath( path );
return false;
}
}
return true;
}
#endif
#include "dirhistoryqueue.moc"