┌   ┐
54
└   ┘

summaryrefslogtreecommitdiff
path: root/src/dolphincolumnview.cpp
diff options
context:
space:
mode:
authorPeter Penz <[email protected]>2008-06-18 19:34:03 +0000
committerPeter Penz <[email protected]>2008-06-18 19:34:03 +0000
commitb8a4e0fac2820ec8fc442c2abeea700ae4947e01 (patch)
tree22d132204de327656614ee2dfe97834218eef776 /src/dolphincolumnview.cpp
parent91607d4c4d60d7d51827e770e5504aa4ff552e48 (diff)
Assure that when requesting the context menu for the column-view, that the correct items are used.
TODO for 4.2: get rid of those 'if (isColumnViewActive())' special cases and provide a generic model which also works with the way the column view is implemented BUG: 164146 svn path=/trunk/KDE/kdebase/apps/; revision=821903
Diffstat (limited to 'src/dolphincolumnview.cpp')
-rw-r--r--src/dolphincolumnview.cpp27
1 files changed, 24 insertions, 3 deletions
diff --git a/src/dolphincolumnview.cpp b/src/dolphincolumnview.cpp
index 1ed8b6b82..957b2064f 100644
--- a/src/dolphincolumnview.cpp
+++ b/src/dolphincolumnview.cpp
@@ -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);
@@ -254,6 +264,11 @@ void DolphinColumnView::editItem(const KFileItem& item)
activeColumn()->editItem(item);
}
+KFileItemList DolphinColumnView::selectedItems() const
+{
+ return activeColumn()->selectedItems();
+}
+
void DolphinColumnView::selectAll()
{
activeColumn()->selectAll();
@@ -587,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"