[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] r7276 - gnunet-qt/src/plugins/fs
From: |
gnunet |
Subject: |
[GNUnet-SVN] r7276 - gnunet-qt/src/plugins/fs |
Date: |
Thu, 19 Jun 2008 13:07:08 -0600 (MDT) |
Author: durner
Date: 2008-06-19 13:07:08 -0600 (Thu, 19 Jun 2008)
New Revision: 7276
Modified:
gnunet-qt/src/plugins/fs/fs-search.cc
gnunet-qt/src/plugins/fs/fs.h
gnunet-qt/src/plugins/fs/searchController.cc
Log:
download directories only once
Modified: gnunet-qt/src/plugins/fs/fs-search.cc
===================================================================
--- gnunet-qt/src/plugins/fs/fs-search.cc 2008-06-19 17:40:28 UTC (rev
7275)
+++ gnunet-qt/src/plugins/fs/fs-search.cc 2008-06-19 19:07:08 UTC (rev
7276)
@@ -86,18 +86,23 @@
model = (GItemModel *) index.model();
model->lock();
- idx = model->index(index.row(), EXTRACTOR_MIMETYPE, index.parent());
- if (model->data(idx) == "application/gnunet-directory")
+ if (model->data(index, Qt::UserRole) != RESULT_DOWNLOADED)
{
- GPersistentModelIndexList list;
-
- list.append(idx);
-
- model->unlock();
- emit download(m, uri, list, spinAnon->value(), false);
+ idx = model->index(index.row(), EXTRACTOR_MIMETYPE, index.parent());
+ if (model->data(idx) == "application/gnunet-directory")
+ {
+ GPersistentModelIndexList list;
+
+ list.append(index);
+
+ model->unlock();
+ emit download(m, uri, list, spinAnon->value(), false);
+
+ return;
+ }
}
- else
- model->unlock();
+
+ model->unlock();
}
void GFSSearch::clear()
Modified: gnunet-qt/src/plugins/fs/fs.h
===================================================================
--- gnunet-qt/src/plugins/fs/fs.h 2008-06-19 17:40:28 UTC (rev 7275)
+++ gnunet-qt/src/plugins/fs/fs.h 2008-06-19 19:07:08 UTC (rev 7276)
@@ -43,6 +43,8 @@
GFSEcrsUri uri;
} GFSNewSearchInfo;
+typedef enum {RESULT_UNKNOWN, RESULT_DUMMY, RESULT_DOWNLOADED} GResultType;
+
class GFSPlugin : public GPlugin, protected Ui::FSWnd
{
Q_OBJECT
Modified: gnunet-qt/src/plugins/fs/searchController.cc
===================================================================
--- gnunet-qt/src/plugins/fs/searchController.cc 2008-06-19 17:40:28 UTC
(rev 7275)
+++ gnunet-qt/src/plugins/fs/searchController.cc 2008-06-19 19:07:08 UTC
(rev 7276)
@@ -167,7 +167,7 @@
child->appendRow(item);
itemIdx = model->index(0, 0, childIdx);
- model->setData(itemIdx, QVariant(1), Qt::UserRole);
+ model->setData(itemIdx, QVariant(RESULT_DUMMY), Qt::UserRole);
}
// insert serialized URI (used by download)
@@ -398,10 +398,13 @@
index = model->index(idxRow, MODEL_IDX(EXTRACTOR_MIMETYPE), idx.parent());
if (model->data(index).toString() == "application/gnunet-directory")
{
+ // mark directory as downloaded
+ model->setData(idx, QVariant(RESULT_DOWNLOADED), Qt::UserRole);
+
// remove dummy child
- index = model->index(idxRow, 0, idx.parent());
+ index = model->index(idxRow, 0, idx.parent());
model->removeRow(0, index);
-
+
// read directory
if (file.endsWith("/") || file.endsWith("\\"))
file = file.left(file.length() - 1);
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] r7276 - gnunet-qt/src/plugins/fs,
gnunet <=