From f9ac7497ec0e0412385611b2722261ebb367a5e0 Mon Sep 17 00:00:00 2001 From: Arno Date: Thu, 27 Aug 2015 07:43:40 +0200 Subject: Fix keyboard triggers Call the appropriate functions on keyPressEvent --- pictureviewer2.cpp | 28 ++++++++++++++++++++++++++-- 1 file changed, 26 insertions(+), 2 deletions(-) (limited to 'pictureviewer2.cpp') diff --git a/pictureviewer2.cpp b/pictureviewer2.cpp index 93bb148..898ee81 100644 --- a/pictureviewer2.cpp +++ b/pictureviewer2.cpp @@ -468,15 +468,39 @@ void PictureViewer2::contextMenuEvent(QContextMenuEvent *e){ } void PictureViewer2::keyPressEvent(QKeyEvent *e){ + Qt::KeyboardModifiers mod = e->modifiers(); + if(mod & Qt::ControlModifier){ + if(e->key() == Qt::Key_Down || e->key() == Qt::Key_Right){ + skip(25); + } + if(e->key() == Qt::Key_Up || e->key() == Qt::Key_Left){ + skip(-25); + } + if(e->key() == Qt::Key_Space){ + if(mCurTimer->isActive()){ + stopSlide(); + }else{ + startSlideAll(); + } + } + return; + } + if(e->key() == Qt::Key_Escape){ + stopSlide(); mHideA->toggle(); } if(e->key() == Qt::Key_Space){ - mToggleSlideA->toggle(); + if(mCurTimer->isActive()){ + stopSlide(); + }else{ + startSlide(); + } } if(e->key() == Qt::Key_M){ markCurrent(); } + if((e->key() == Qt::Key_N) || (e->key() == Qt::Key_Down) || (e->key() == Qt::Key_Right)){ next(); } @@ -658,7 +682,7 @@ void PictureViewer2::nextFromAll(){ } void PictureViewer2::constructControlItem(){ - QStringList controls = QStringList() << "Next (>)" << "Previous (<)" << "Skip forward (>>)" << "Skip back (<<)" << "Stop Slide" << "Slide" << "Slide all"; + QStringList controls = QStringList() << "Next (>)" << "Previous (<)" << "Skip forward (C->)" << "Skip back (C-<)" << "Stop Slide " << "Slide " << "Slide all "; QFont f = QFont(); f.setPointSize(14); f.setBold(true); -- cgit v1.2.3-70-g09d2