[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Traverso-commit] traverso/src/traverso/songcanvas AudioClipView....
From: |
Remon Sijrier |
Subject: |
[Traverso-commit] traverso/src/traverso/songcanvas AudioClipView.... |
Date: |
Mon, 23 Apr 2007 17:56:53 +0000 |
CVSROOT: /sources/traverso
Module name: traverso
Changes by: Remon Sijrier <r_sijrier> 07/04/23 17:56:53
Modified files:
src/traverso/songcanvas: AudioClipView.cpp Cursors.cpp Cursors.h
SongView.cpp SongView.h
Log message:
* playhead: do not start animated scroll if song isn't transporting
* only enabled boundary checking for microview painting, macroview
needed the extra pixels to correctly paint the waveform!
* catch hscrollbar value changed signals, and only forward them to the
'real' viewports scrollbar if the ie is not holding. this avoids
some jitter during zooming for example. (hopefully)
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/traverso/src/traverso/songcanvas/AudioClipView.cpp?cvsroot=traverso&r1=1.49&r2=1.50
http://cvs.savannah.gnu.org/viewcvs/traverso/src/traverso/songcanvas/Cursors.cpp?cvsroot=traverso&r1=1.17&r2=1.18
http://cvs.savannah.gnu.org/viewcvs/traverso/src/traverso/songcanvas/Cursors.h?cvsroot=traverso&r1=1.12&r2=1.13
http://cvs.savannah.gnu.org/viewcvs/traverso/src/traverso/songcanvas/SongView.cpp?cvsroot=traverso&r1=1.42&r2=1.43
http://cvs.savannah.gnu.org/viewcvs/traverso/src/traverso/songcanvas/SongView.h?cvsroot=traverso&r1=1.21&r2=1.22
Patches:
Index: AudioClipView.cpp
===================================================================
RCS file: /sources/traverso/traverso/src/traverso/songcanvas/AudioClipView.cpp,v
retrieving revision 1.49
retrieving revision 1.50
diff -u -b -r1.49 -r1.50
--- AudioClipView.cpp 23 Apr 2007 15:02:36 -0000 1.49
+++ AudioClipView.cpp 23 Apr 2007 17:56:53 -0000 1.50
@@ -228,12 +228,14 @@
if (pixelcount % 2) {
pixelcount += 1;
}
- if ( (xstart + pixelcount) > m_boundingRect.width()) {
+
+ bool microView = m_song->get_hzoom() > (Peak::MAX_ZOOM_USING_SOURCEFILE
- 1) ? 0 : 1;
+ // boundary checking, important for microview only, macroview needs the
additional
+ // pixels to paint the waveform correctly
+ if ( microView && ((xstart + pixelcount) > m_boundingRect.width()) ) {
pixelcount = m_boundingRect.width() - xstart;
}
-
int channels = m_clip->get_channels();
- bool microView = m_song->get_hzoom() > (Peak::MAX_ZOOM_USING_SOURCEFILE
- 1) ? 0 : 1;
int peakdatacount = microView ? pixelcount : pixelcount * 2;
int buffersize = microView ? sizeof(short) * peakdatacount :
sizeof(unsigned char) * peakdatacount;
Index: Cursors.cpp
===================================================================
RCS file: /sources/traverso/traverso/src/traverso/songcanvas/Cursors.cpp,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -b -r1.17 -r1.18
--- Cursors.cpp 2 Apr 2007 19:23:06 -0000 1.17
+++ Cursors.cpp 23 Apr 2007 17:56:53 -0000 1.18
@@ -1,5 +1,5 @@
/*
- Copyright (C) 2005-2006 Remon Sijrier
+ Copyright (C) 2005-2007 Remon Sijrier
This file is part of Traverso
@@ -17,7 +17,6 @@
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- $Id: Cursors.cpp,v 1.17 2007/04/02 19:23:06 benjie Exp $
*/
#include "Cursors.h"
@@ -129,7 +128,7 @@
return;
}
- if ( ! m_follow || m_followDisabled) {
+ if ( ! m_follow || m_followDisabled || ! m_song->is_transporting()) {
return;
}
Index: Cursors.h
===================================================================
RCS file: /sources/traverso/traverso/src/traverso/songcanvas/Cursors.h,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -b -r1.12 -r1.13
--- Cursors.h 2 Apr 2007 19:23:06 -0000 1.12
+++ Cursors.h 23 Apr 2007 17:56:53 -0000 1.13
@@ -1,5 +1,5 @@
/*
- Copyright (C) 2005-2006 Remon Sijrier
+ Copyright (C) 2005-2007 Remon Sijrier
This file is part of Traverso
@@ -17,7 +17,6 @@
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
- $Id: Cursors.h,v 1.12 2007/04/02 19:23:06 benjie Exp $
*/
#ifndef CURSORS_H
Index: SongView.cpp
===================================================================
RCS file: /sources/traverso/traverso/src/traverso/songcanvas/SongView.cpp,v
retrieving revision 1.42
retrieving revision 1.43
diff -u -b -r1.42 -r1.43
--- SongView.cpp 13 Apr 2007 09:59:19 -0000 1.42
+++ SongView.cpp 23 Apr 2007 17:56:53 -0000 1.43
@@ -122,8 +122,7 @@
connect(m_hScrollBar, SIGNAL(valueChanged(int)),
this,SLOT(set_snap_range(int)));
connect(&m_shuttletimer, SIGNAL(timeout() ), this, SLOT
(update_shuttle()) );
- connect(m_hScrollBar, SIGNAL(valueChanged(int)),
- m_clipsViewPort->horizontalScrollBar(), SLOT(setValue(int)));
+ connect(m_hScrollBar, SIGNAL(valueChanged(int)), this,
SLOT(hscrollbar_value_changed(int)));
connect(m_vScrollBar, SIGNAL(valueChanged(int)),
m_clipsViewPort->verticalScrollBar(), SLOT(setValue(int)));
@@ -226,6 +225,14 @@
set_snap_range(m_hScrollBar->value());
}
+void SongView::hscrollbar_value_changed(int value)
+{
+ if (!ie().is_holding()) {
+ m_clipsViewPort->horizontalScrollBar()->setValue(value);
+ set_snap_range(m_hScrollBar->value());
+ }
+}
+
Command* SongView::zoom()
{
return new Zoom(this);
@@ -576,3 +583,4 @@
}
//eof
+
Index: SongView.h
===================================================================
RCS file: /sources/traverso/traverso/src/traverso/songcanvas/SongView.h,v
retrieving revision 1.21
retrieving revision 1.22
diff -u -b -r1.21 -r1.22
--- SongView.h 12 Apr 2007 12:32:07 -0000 1.21
+++ SongView.h 23 Apr 2007 17:56:53 -0000 1.22
@@ -142,6 +142,7 @@
void work_cursor_updated();
void play_head_updated();
void song_mode_changed();
+ void hscrollbar_value_changed(int);
};
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Traverso-commit] traverso/src/traverso/songcanvas AudioClipView....,
Remon Sijrier <=