diff --git a/src/dolphincolumnview.cpp b/src/dolphincolumnview.cpp index d6bd08a422..a6fda66d0e 100644 --- a/src/dolphincolumnview.cpp +++ b/src/dolphincolumnview.cpp @@ -554,19 +554,4 @@ void DolphinColumnView::removeAllColumns() assureVisibleActiveColumn(); } -void DolphinColumnView::setModel ( QAbstractItemModel * model ) -{ - QAbstractItemView::setModel(model); - if(m_columns[0]) { - m_columns[0]->setModel(model); - m_columns[0]->setSelectionModel(selectionModel()); - } -} -void DolphinColumnView::setSelectionModel ( QItemSelectionModel * selectionModel ) -{ - if(m_columns[0]) - m_columns[0]->setSelectionModel(selectionModel); - QAbstractItemView::setSelectionModel(selectionModel); -} - #include "dolphincolumnview.moc" diff --git a/src/dolphincolumnview.h b/src/dolphincolumnview.h index 0030c69ce0..30ac7ae710 100644 --- a/src/dolphincolumnview.h +++ b/src/dolphincolumnview.h @@ -103,8 +103,6 @@ protected: virtual void mousePressEvent(QMouseEvent* event); virtual void resizeEvent(QResizeEvent* event); - virtual void setSelectionModel ( QItemSelectionModel * selectionModel ); - virtual void setModel ( QAbstractItemModel * model ); private slots: void zoomIn(); diff --git a/src/dolphincolumnwidget.cpp b/src/dolphincolumnwidget.cpp index abd236c7dd..677215972d 100644 --- a/src/dolphincolumnwidget.cpp +++ b/src/dolphincolumnwidget.cpp @@ -115,16 +115,18 @@ DolphinColumnWidget::DolphinColumnWidget(QWidget* parent, m_dirLister->setShowingDotFiles(showHiddenFiles); connect(m_dirLister, SIGNAL(newItems(const KFileItemList&)), this, SLOT(generatePreviews(const KFileItemList&))); -} -void DolphinColumnWidget::setModel ( QAbstractItemModel * model ) -{ - m_proxyModel = dynamic_cast(model); - if(m_proxyModel) - m_dolphinModel = dynamic_cast(m_proxyModel->sourceModel()); + m_dolphinModel = new DolphinModel(this); + m_dolphinModel->setDirLister(m_dirLister); + m_dolphinModel->setDropsAllowed(DolphinModel::DropOnDirectory); + + m_proxyModel = new DolphinSortFilterProxyModel(this); + m_proxyModel->setSourceModel(m_dolphinModel); + + setModel(m_proxyModel); new KMimeTypeResolver(this, m_dolphinModel); - m_dirLister->openUrl(m_url, KDirLister::NoFlags); - QListView::setModel(m_proxyModel); + + m_dirLister->openUrl(url, KDirLister::NoFlags); } DolphinColumnWidget::~DolphinColumnWidget() diff --git a/src/dolphincolumnwidget.h b/src/dolphincolumnwidget.h index 14b4c87517..e8fea3bf59 100644 --- a/src/dolphincolumnwidget.h +++ b/src/dolphincolumnwidget.h @@ -89,7 +89,6 @@ public: * which contain the given filter string will be shown. */ void setNameFilter(const QString& nameFilter); - virtual void setModel ( QAbstractItemModel * model ); protected: virtual QStyleOptionViewItem viewOptions() const;