From 68f850b36d622fc597826e0d678e4fb397fd9692 Mon Sep 17 00:00:00 2001 From: Tobias Doerffel Date: Mon, 21 Apr 2008 08:39:40 +0000 Subject: [PATCH] made faders automatable git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@932 0778d3d1-df1d-0410-868b-ea421aaaa00d --- include/fader.h | 1 + src/gui/widgets/fader.cpp | 28 +++++++++++++++++++++++++++- 2 files changed, 28 insertions(+), 1 deletion(-) diff --git a/include/fader.h b/include/fader.h index 1bf2726a9..3e2234abd 100644 --- a/include/fader.h +++ b/include/fader.h @@ -72,6 +72,7 @@ public: private: + virtual void contextMenuEvent( QContextMenuEvent * _me ); virtual void mousePressEvent( QMouseEvent *ev ); virtual void mouseMoveEvent( QMouseEvent *ev ); virtual void wheelEvent( QWheelEvent *ev ); diff --git a/src/gui/widgets/fader.cpp b/src/gui/widgets/fader.cpp index c0b882cb1..940deaf60 100644 --- a/src/gui/widgets/fader.cpp +++ b/src/gui/widgets/fader.cpp @@ -51,6 +51,10 @@ #include "fader.h" #include "embed.h" +#include "caption_menu.h" +#include "automation_pattern.h" +#include "automatable_model_templates.h" + fader::fader( floatModel * _model, QWidget * _parent ) : @@ -80,6 +84,24 @@ fader::~fader() + +void fader::contextMenuEvent( QContextMenuEvent * _ev ) +{ + if( !model()->nullTrack() ) + { + captionMenu contextMenu( accessibleName() ); + contextMenu.addAction( embed::getIconPixmap( "automation" ), + tr( "&Open in automation editor" ), + model()->getAutomationPattern(), + SLOT( openInAutomationEditor() ) ); + contextMenu.exec( QCursor::pos() ); + _ev->accept(); + } +} + + + + void fader::mouseMoveEvent( QMouseEvent *ev ) { float fVal = (float)( height() - ev->y() ) / (float)height(); @@ -94,7 +116,11 @@ void fader::mouseMoveEvent( QMouseEvent *ev ) void fader::mousePressEvent(QMouseEvent *ev) { - mouseMoveEvent( ev ); + if( ev->button() == Qt::LeftButton ) + { + mouseMoveEvent( ev ); + ev->accept(); + } }