diff options
| author | Peter Penz <[email protected]> | 2008-06-18 19:34:03 +0000 |
|---|---|---|
| committer | Peter Penz <[email protected]> | 2008-06-18 19:34:03 +0000 |
| commit | b8a4e0fac2820ec8fc442c2abeea700ae4947e01 (patch) | |
| tree | 22d132204de327656614ee2dfe97834218eef776 /src/dolphincolumnview.cpp | |
| parent | 91607d4c4d60d7d51827e770e5504aa4ff552e48 (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.cpp | 27 |
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" |
