]> cloud.milkyroute.net Git - dolphin.git/blobdiff - src/dolphincolumnview.cpp
fix linking
[dolphin.git] / src / dolphincolumnview.cpp
index 7257cd8301ec9d0d722d9d73ca383c00ff703be8..957b2064f64bd6774c1875ad816dbee01e43ac55 100644 (file)
@@ -92,9 +92,7 @@ DolphinColumnView::~DolphinColumnView()
 QModelIndex DolphinColumnView::indexAt(const QPoint& point) const
 {
     foreach (DolphinColumnWidget* column, m_columns) {
-        const QPoint topLeft = column->frameGeometry().topLeft();
-        const QPoint adjustedPoint(point.x() - topLeft.x(), point.y() - topLeft.y());
-        const QModelIndex index = column->indexAt(adjustedPoint);
+        const QModelIndex index = column->indexAt(columnPosition(column, point));
         if (index.isValid()) {
             return index;
         }
@@ -103,6 +101,18 @@ QModelIndex DolphinColumnView::indexAt(const QPoint& point) const
     return QModelIndex();
 }
 
+KFileItem DolphinColumnView::itemAt(const QPoint& point) const
+{
+    foreach (DolphinColumnWidget* column, m_columns) {
+        KFileItem item = column->itemAt(columnPosition(column, point));
+        if (!item.isNull()) {
+            return item;
+        }
+    }
+
+    return KFileItem();
+}
+
 void DolphinColumnView::scrollTo(const QModelIndex& index, ScrollHint hint)
 {
     activeColumn()->scrollTo(index, hint);
@@ -249,6 +259,16 @@ void DolphinColumnView::showColumn(const KUrl& url)
     assureVisibleActiveColumn();
 }
 
+void DolphinColumnView::editItem(const KFileItem& item)
+{
+    activeColumn()->editItem(item);
+}
+
+KFileItemList DolphinColumnView::selectedItems() const
+{
+    return activeColumn()->selectedItems();
+}
+
 void DolphinColumnView::selectAll()
 {
     activeColumn()->selectAll();
@@ -305,13 +325,12 @@ void DolphinColumnView::setSelection(const QRect& rect, QItemSelectionModel::Sel
 {
     Q_UNUSED(rect);
     Q_UNUSED(flags);
-    //activeColumn()->setSelection(rect, flags);
 }
 
 QRegion DolphinColumnView::visualRegionForSelection(const QItemSelection& selection) const
 {
     Q_UNUSED(selection);
-    return QRegion(); //activeColumn()->visualRegionForSelection(selection);
+    return QRegion();
 }
 
 int DolphinColumnView::horizontalOffset() const
@@ -555,6 +574,7 @@ void DolphinColumnView::assureVisibleActiveColumn()
 
 void DolphinColumnView::requestActivation(DolphinColumnWidget* column)
 {
+    m_controller->setItemView(column);
     if (column->isActive()) {
         assureVisibleActiveColumn();
     } else {
@@ -582,4 +602,10 @@ void DolphinColumnView::removeAllColumns()
     assureVisibleActiveColumn();
 }
 
+QPoint DolphinColumnView::columnPosition(DolphinColumnWidget* column, const QPoint& point) const
+{
+    const QPoint topLeft = column->frameGeometry().topLeft();
+    return QPoint(point.x() - topLeft.x(), point.y() - topLeft.y());
+}
+
 #include "dolphincolumnview.moc"