]> cloud.milkyroute.net Git - dolphin.git/blobdiff - src/dolphinview.cpp
The else path is never reached -> removed it (thanks to Simon St James for the hint)
[dolphin.git] / src / dolphinview.cpp
index 685177db440755c47ab9251b93c5cfb614adbb74..42136f4459b487656ff2e9ffee70bcca1638c63f 100644 (file)
 #include "dolphinsettings.h"
 #include "dolphin_generalsettings.h"
 #include "folderexpander.h"
-#include "iconmanager.h"
+#include "kfilepreviewgenerator.h"
 #include "renamedialog.h"
 #include "tooltipmanager.h"
 #include "viewproperties.h"
+#include "zoomlevelinfo.h"
 
 DolphinView::DolphinView(QWidget* parent,
                          const KUrl& url,
@@ -86,7 +87,7 @@ DolphinView::DolphinView(QWidget* parent,
     m_dolphinModel(dolphinModel),
     m_dirLister(dirLister),
     m_proxyModel(proxyModel),
-    m_iconManager(0),
+    m_previewGenerator(0),
     m_toolTipManager(0),
     m_rootUrl(),
     m_currentItemUrl()
@@ -364,15 +365,15 @@ QPoint DolphinView::contentsPosition() const
 
 void DolphinView::setZoomLevel(int level)
 {
-    if (level < zoomLevelMinimum()) {
-        level = zoomLevelMinimum();
-    } else if (level > zoomLevelMaximum()) {
-        level = zoomLevelMaximum();
+    if (level < ZoomLevelInfo::minimumLevel()) {
+        level = ZoomLevelInfo::minimumLevel();
+    } else if (level > ZoomLevelInfo::maximumLevel()) {
+        level = ZoomLevelInfo::maximumLevel();
     }
     
     if (level != zoomLevel()) {
         m_controller->setZoomLevel(level);
-        m_iconManager->updatePreviews();
+        m_previewGenerator->updatePreviews();
         emit zoomLevelChanged(level);
     }
 }
@@ -382,16 +383,6 @@ int DolphinView::zoomLevel() const
     return m_controller->zoomLevel();
 }
 
-int DolphinView::zoomLevelMinimum() const
-{
-    return m_controller->zoomLevelMinimum();
-}
-
-int DolphinView::zoomLevelMaximum() const
-{
-    return m_controller->zoomLevelMaximum();
-}
-
 void DolphinView::setSorting(Sorting sorting)
 {
     if (sorting != this->sorting()) {
@@ -461,7 +452,7 @@ void DolphinView::updateView(const KUrl& url, const KUrl& rootUrl)
         return;
     }
 
-    m_iconManager->cancelPreviews();
+    m_previewGenerator->cancelPreviews();
     m_controller->setUrl(url); // emits urlChanged, which we forward
 
     if (!rootUrl.isEmpty() && rootUrl.isParentOf(url)) {
@@ -605,21 +596,13 @@ void DolphinView::renameSelectedItems()
 void DolphinView::trashSelectedItems()
 {
     emit doingOperation(KIO::FileUndoManager::Trash);
-    KUrl::List list = selectedUrls();
-    DolphinDetailsView *dv = qobject_cast<DolphinDetailsView*>(itemView());
-    if (dv && dv->itemsExpandable()) {
-        list = KonqOperations::simplifiedUrlList(list);
-    }
+    const KUrl::List list = simplifiedSelectedUrls();
     KonqOperations::del(this, KonqOperations::TRASH, list);
 }
 
 void DolphinView::deleteSelectedItems()
 {
-    KUrl::List list = selectedUrls();
-    DolphinDetailsView *dv = qobject_cast<DolphinDetailsView*>(itemView());
-    if (dv && dv->itemsExpandable()) {
-        list = KonqOperations::simplifiedUrlList(list);
-    }
+    const KUrl::List list = simplifiedSelectedUrls();
     const bool del = KonqOperations::askDeleteConfirmation(list,
                      KonqOperations::DEL,
                      KonqOperations::DEFAULT_CONFIRMATION,
@@ -635,11 +618,7 @@ void DolphinView::deleteSelectedItems()
 void DolphinView::cutSelectedItems()
 {
     QMimeData* mimeData = new QMimeData();
-    KUrl::List kdeUrls = selectedUrls();
-    DolphinDetailsView *dv = qobject_cast<DolphinDetailsView*>(itemView());
-    if (dv && dv->itemsExpandable()) {
-        kdeUrls = KonqOperations::simplifiedUrlList(kdeUrls);
-    }
+    const KUrl::List kdeUrls = simplifiedSelectedUrls();
     const KUrl::List mostLocalUrls;
     KonqMimeData::populateMimeData(mimeData, kdeUrls, mostLocalUrls, true);
     QApplication::clipboard()->setMimeData(mimeData);
@@ -678,7 +657,7 @@ void DolphinView::setShowPreview(bool show)
     props.setShowPreview(show);
 
     m_showPreview = show;
-    m_iconManager->setShowPreview(show);
+    m_previewGenerator->setShowPreview(show);
     
     const int oldZoomLevel = m_controller->zoomLevel();
     emit showPreviewChanged();
@@ -1128,7 +1107,7 @@ void DolphinView::applyViewProperties(const KUrl& url)
     const bool showPreview = props.showPreview();
     if (showPreview != m_showPreview) {
         m_showPreview = showPreview;
-        m_iconManager->setShowPreview(showPreview);
+        m_previewGenerator->setShowPreview(showPreview);
         
         const int oldZoomLevel = m_controller->zoomLevel();
         emit showPreviewChanged();
@@ -1201,8 +1180,8 @@ void DolphinView::createView()
 
     view->setSelectionMode(QAbstractItemView::ExtendedSelection);
 
-    m_iconManager = new IconManager(view, m_proxyModel);
-    m_iconManager->setShowPreview(m_showPreview);
+    m_previewGenerator = new KFilePreviewGenerator(view, m_proxyModel);
+    m_previewGenerator->setShowPreview(m_showPreview);
 
     if (DolphinSettings::instance().generalSettings()->showToolTips()) {
         m_toolTipManager = new ToolTipManager(view, m_proxyModel);
@@ -1236,7 +1215,7 @@ void DolphinView::deleteView()
         m_detailsView = 0;
         m_columnView = 0;
         m_fileItemDelegate = 0;
-        m_iconManager = 0;
+        m_previewGenerator = 0;
         m_toolTipManager = 0;
     }
 }
@@ -1288,11 +1267,20 @@ void DolphinView::pasteToUrl(const KUrl& url)
 
 void DolphinView::updateZoomLevel(int oldZoomLevel)
 {       
-    const int newZoomLevel = DolphinController::zoomLevelForIconSize(itemView()->iconSize());
+    const int newZoomLevel = ZoomLevelInfo::zoomLevelForIconSize(itemView()->iconSize());
     if (oldZoomLevel != newZoomLevel) {
         m_controller->setZoomLevel(newZoomLevel);
         emit zoomLevelChanged(newZoomLevel);
     }
 }
 
+KUrl::List DolphinView::simplifiedSelectedUrls() const
+{
+    KUrl::List list = selectedUrls();
+    if ((m_detailsView != 0) && m_detailsView->itemsExpandable()) {
+        list = KonqOperations::simplifiedUrlList(list);
+    }
+    return list;
+}
+
 #include "dolphinview.moc"