From c5d01d5e0db5bde90b653c60396528df7bb46e76 Mon Sep 17 00:00:00 2001 From: Tobias Doerffel Date: Fri, 13 Feb 2009 23:36:32 +0000 Subject: [PATCH] stable backport: * added missing slot declaration for abortFreeze(), fixes lockup when freezing pattern (closes #2530320) * update patternView after freezing * fixed drawing of frozen pattern git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/branches/lmms/stable-0.4@2042 0778d3d1-df1d-0410-868b-ea421aaaa00d --- ChangeLog | 7 +++++++ include/pattern.h | 5 ++--- src/tracks/pattern.cpp | 6 ++++-- 3 files changed, 13 insertions(+), 5 deletions(-) diff --git a/ChangeLog b/ChangeLog index 50a1656fc..072fd6c52 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,12 @@ 2009-02-13 Tobias Doerffel + * include/pattern.h: + * src/tracks/pattern.cpp: + - added missing slot declaration for abortFreeze(), fixes lockup when + freezing pattern (closes #2530320) + - update patternView after freezing + - fixed drawing of frozen pattern + * include/sample_buffer.h: * src/core/sample_buffer.cpp: - when resampling whole sampleBuffer, set end_of_input = 1 in diff --git a/include/pattern.h b/include/pattern.h index d256e90a4..a5edb0fbc 100644 --- a/include/pattern.h +++ b/include/pattern.h @@ -2,7 +2,7 @@ * pattern.h - declaration of class pattern, which contains all informations * about a pattern * - * Copyright (c) 2004-2008 Tobias Doerffel + * Copyright (c) 2004-2009 Tobias Doerffel * * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net * @@ -139,13 +139,12 @@ protected: void ensureBeatNotes( void ); void updateBBTrack( void ); - void abortFreeze( void ); - protected slots: void clear( void ); void freeze( void ); void unfreeze( void ); + void abortFreeze( void ); void changeTimeSignature( void ); diff --git a/src/tracks/pattern.cpp b/src/tracks/pattern.cpp index 15a005ee8..8bba198a7 100644 --- a/src/tracks/pattern.cpp +++ b/src/tracks/pattern.cpp @@ -3,7 +3,7 @@ /* * pattern.cpp - implementation of class pattern which holds notes * - * Copyright (c) 2004-2008 Tobias Doerffel + * Copyright (c) 2004-2009 Tobias Doerffel * Copyright (c) 2005-2007 Danny McRae * * This file is part of Linux MultiMedia Studio - http://lmms.sourceforge.net @@ -731,6 +731,7 @@ patternFreezeThread::patternFreezeThread( pattern * _pattern ) : patternFreezeThread::~patternFreezeThread() { + m_pattern->dataChanged(); } @@ -1310,8 +1311,9 @@ void patternView::paintEvent( QPaintEvent * ) } else if( m_pat->m_frozenPattern != NULL ) { + p.setBrush( QBrush() ); p.setPen( QColor( 0, 224, 255 ) ); - p.drawRect( 0, 0, width(), height() - 1 ); + p.drawRect( 0, 0, width()-1, height() - 1 ); p.drawPixmap( 3, height() - s_frozen->height() - 4, *s_frozen ); }