From: Luciano Montanaro Date: Fri, 1 Feb 2008 22:33:06 +0000 (+0000) Subject: Zoom in and out the icon view on Ctrl+Mouse wheel. X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/commitdiff_plain/a3003c2c94e34abefe1974633aa7c22734202cf6?ds=inline Zoom in and out the icon view on Ctrl+Mouse wheel. CCMAIL: peter.penz@gmx.atn --This li.Ine, and those below, will be ignored-- M src/dolphiniconsview.cpp svn path=/trunk/KDE/kdebase/apps/; revision=769728 --- diff --git a/src/dolphiniconsview.cpp b/src/dolphiniconsview.cpp index 9e4a2604b..ccf12a737 100644 --- a/src/dolphiniconsview.cpp +++ b/src/dolphiniconsview.cpp @@ -299,18 +299,27 @@ void DolphinIconsView::wheelEvent(QWheelEvent* event) { KCategorizedView::wheelEvent(event); - // if the icons are aligned left to right, the vertical wheel event should - // be applied to the horizontal scrollbar - const IconsModeSettings* settings = DolphinSettings::instance().iconsModeSettings(); - const bool scrollHorizontal = (event->orientation() == Qt::Vertical) && - (settings->arrangement() == QListView::LeftToRight); - if (scrollHorizontal) { - QWheelEvent horizEvent(event->pos(), - event->delta(), - event->buttons(), - event->modifiers(), - Qt::Horizontal); - QApplication::sendEvent(horizontalScrollBar(), &horizEvent); + if ((event->modifiers() & Qt::ControlModifier) == Qt::ControlModifier) { + int d = event->delta(); + if (d > 0) { + zoomIn(); + } else if (d < 0) { + zoomOut(); + } + } else { + // if the icons are aligned left to right, the vertical wheel event should + // be applied to the horizontal scrollbar + const IconsModeSettings* settings = DolphinSettings::instance().iconsModeSettings(); + const bool scrollHorizontal = (event->orientation() == Qt::Vertical) && + (settings->arrangement() == QListView::LeftToRight); + if (scrollHorizontal) { + QWheelEvent horizEvent(event->pos(), + event->delta(), + event->buttons(), + event->modifiers(), + Qt::Horizontal); + QApplication::sendEvent(horizontalScrollBar(), &horizEvent); + } } }