X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/6b50b873ec8a9fb0fac84fc4d77f6cdf31a9df9a..862ceee323ad3b474ce9de11eefbddd99c528fac:/src/dolphincolumnview.cpp diff --git a/src/dolphincolumnview.cpp b/src/dolphincolumnview.cpp index 9ce51dbd2..72173538e 100644 --- a/src/dolphincolumnview.cpp +++ b/src/dolphincolumnview.cpp @@ -24,12 +24,8 @@ #include "dolphin_columnmodesettings.h" -#include -#include -#include - -#include -#include +#include +#include DolphinColumnView::DolphinColumnView(QWidget* parent, DolphinController* controller) : QColumnView(parent), @@ -42,18 +38,28 @@ DolphinColumnView::DolphinColumnView(QWidget* parent, DolphinController* control setDragDropMode(QAbstractItemView::DragDrop); setDropIndicatorShown(false); + setMouseTracking(true); viewport()->setAttribute(Qt::WA_Hover); - connect(this, SIGNAL(clicked(const QModelIndex&)), - controller, SLOT(triggerItem(const QModelIndex&))); + if (KGlobalSettings::singleClick()) { + connect(this, SIGNAL(clicked(const QModelIndex&)), + controller, SLOT(triggerItem(const QModelIndex&))); + } else { + connect(this, SIGNAL(doubleClicked(const QModelIndex&)), + controller, SLOT(triggerItem(const QModelIndex&))); + } connect(this, SIGNAL(activated(const QModelIndex&)), controller, SLOT(triggerItem(const QModelIndex&))); + connect(this, SIGNAL(entered(const QModelIndex&)), + controller, SLOT(emitItemEntered(const QModelIndex&))); + connect(this, SIGNAL(viewportEntered()), + controller, SLOT(emitViewportEntered())); connect(controller, SIGNAL(zoomIn()), this, SLOT(zoomIn())); connect(controller, SIGNAL(zoomOut()), this, SLOT(zoomOut())); - // apply the column mode settings to the widget + // apply the column mode settings to the widget const ColumnModeSettings* settings = DolphinSettings::instance().columnModeSettings(); Q_ASSERT(settings != 0); @@ -82,10 +88,10 @@ void DolphinColumnView::contextMenuEvent(QContextMenuEvent* event) m_controller->triggerContextMenuRequest(event->pos()); } -void DolphinColumnView::mouseReleaseEvent(QMouseEvent* event) +void DolphinColumnView::mousePressEvent(QMouseEvent* event) { - QColumnView::mouseReleaseEvent(event); m_controller->triggerActivation(); + QColumnView::mousePressEvent(event); } void DolphinColumnView::dragEnterEvent(QDragEnterEvent* event) @@ -113,9 +119,9 @@ void DolphinColumnView::zoomIn() ColumnModeSettings* settings = DolphinSettings::instance().columnModeSettings(); // TODO: get rid of K3Icon sizes switch (settings->iconSize()) { - case K3Icon::SizeSmall: settings->setIconSize(K3Icon::SizeMedium); break; - case K3Icon::SizeMedium: settings->setIconSize(K3Icon::SizeLarge); break; - default: Q_ASSERT(false); break; + case K3Icon::SizeSmall: settings->setIconSize(K3Icon::SizeMedium); break; + case K3Icon::SizeMedium: settings->setIconSize(K3Icon::SizeLarge); break; + default: Q_ASSERT(false); break; } updateDecorationSize(); } @@ -123,13 +129,13 @@ void DolphinColumnView::zoomIn() void DolphinColumnView::zoomOut() { - if (isZoomOutPossible()) { + if (isZoomOutPossible()) { ColumnModeSettings* settings = DolphinSettings::instance().columnModeSettings(); // TODO: get rid of K3Icon sizes switch (settings->iconSize()) { - case K3Icon::SizeLarge: settings->setIconSize(K3Icon::SizeMedium); break; - case K3Icon::SizeMedium: settings->setIconSize(K3Icon::SizeSmall); break; - default: Q_ASSERT(false); break; + case K3Icon::SizeLarge: settings->setIconSize(K3Icon::SizeMedium); break; + case K3Icon::SizeMedium: settings->setIconSize(K3Icon::SizeSmall); break; + default: Q_ASSERT(false); break; } updateDecorationSize(); }