From 5492e69de0665a2d0c3afa890c4d36d4110df671 Mon Sep 17 00:00:00 2001 From: goldenhawking Date: Tue, 12 Jan 2016 19:46:07 +0800 Subject: [PATCH] sloved a tiny problem, thar same tile will be downloaded more than once. --- .../osmtiles/layer_tiles_page.cpp | 6 ++--- qtviewer_planetosm/osmtiles/urlDownloader.cpp | 23 ++++++++++++------- 2 files changed, 18 insertions(+), 11 deletions(-) diff --git a/qtviewer_planetosm/osmtiles/layer_tiles_page.cpp b/qtviewer_planetosm/osmtiles/layer_tiles_page.cpp index 88c55db..1eefc5b 100644 --- a/qtviewer_planetosm/osmtiles/layer_tiles_page.cpp +++ b/qtviewer_planetosm/osmtiles/layer_tiles_page.cpp @@ -63,8 +63,8 @@ namespace QTVOSM{ void layer_tiles_page::slot_message(QString message) { m_pPendingTasksModel->appendRow(new QStandardItem(message)); - if (m_pPendingTasksModel->rowCount()>256) - m_pPendingTasksModel->removeRows(0,m_pPendingTasksModel->rowCount()-256); - + if (m_pPendingTasksModel->rowCount()>128) + m_pPendingTasksModel->removeRows(0,m_pPendingTasksModel->rowCount()-128); + ui->listView_messages->scrollToBottom(); } } diff --git a/qtviewer_planetosm/osmtiles/urlDownloader.cpp b/qtviewer_planetosm/osmtiles/urlDownloader.cpp index e201190..4bb25c8 100644 --- a/qtviewer_planetosm/osmtiles/urlDownloader.cpp +++ b/qtviewer_planetosm/osmtiles/urlDownloader.cpp @@ -110,16 +110,23 @@ namespace QTVOSM{ QString uniqueKey = sourceUrl + ":" + DestinDir +":" + filename; m_mutex_protect.lock(); if (m_set_tileAddress.contains(uniqueKey)==true) - m_listTask.removeAll(tk); + { + if (newerFirst) + { + m_listTask.removeAll(tk); + m_listTask.push_front(tk); + } + } else + { m_set_tileAddress.insert(uniqueKey); - if (m_map_pendingTasks.size()