[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Traverso-commit] traverso resources/keymap.xml src/core/Song.cpp...
From: |
Ben Levitt |
Subject: |
[Traverso-commit] traverso resources/keymap.xml src/core/Song.cpp... |
Date: |
Sat, 02 Jun 2007 23:02:35 +0000 |
CVSROOT: /sources/traverso
Module name: traverso
Changes by: Ben Levitt <benjie> 07/06/02 23:02:33
Modified files:
resources : keymap.xml
src/core : Song.cpp Song.h
src/traverso/songcanvas: SongView.cpp SongView.h
src/traverso/widgets: InfoWidgets.cpp InfoWidgets.h
Log message:
make the Follow Playhead button show the current follow state during
playback. During playback, toggling the follow button toggles the current
state of follow.
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/traverso/resources/keymap.xml?cvsroot=traverso&r1=1.77&r2=1.78
http://cvs.savannah.gnu.org/viewcvs/traverso/src/core/Song.cpp?cvsroot=traverso&r1=1.115&r2=1.116
http://cvs.savannah.gnu.org/viewcvs/traverso/src/core/Song.h?cvsroot=traverso&r1=1.57&r2=1.58
http://cvs.savannah.gnu.org/viewcvs/traverso/src/traverso/songcanvas/SongView.cpp?cvsroot=traverso&r1=1.67&r2=1.68
http://cvs.savannah.gnu.org/viewcvs/traverso/src/traverso/songcanvas/SongView.h?cvsroot=traverso&r1=1.30&r2=1.31
http://cvs.savannah.gnu.org/viewcvs/traverso/src/traverso/widgets/InfoWidgets.cpp?cvsroot=traverso&r1=1.36&r2=1.37
http://cvs.savannah.gnu.org/viewcvs/traverso/src/traverso/widgets/InfoWidgets.h?cvsroot=traverso&r1=1.17&r2=1.18
Patches:
Index: resources/keymap.xml
===================================================================
RCS file: /sources/traverso/traverso/resources/keymap.xml,v
retrieving revision 1.77
retrieving revision 1.78
diff -u -b -r1.77 -r1.78
--- resources/keymap.xml 2 Jun 2007 22:17:45 -0000 1.77
+++ resources/keymap.xml 2 Jun 2007 23:02:32 -0000 1.78
@@ -318,11 +318,6 @@
<Object objectname="TrackView" modes="All"
sortorder="13" slotsignature="insert_silence" instantanious="0" />
</Objects>
</keyfact>
- <keyfact type="FKEY2" key1="V" key2="C" >
- <Objects>
- <Object objectname="SongView"
slotsignature="playhead_to_workcursor" modes="All" sortorder="12"
submenu="Playhead" instantanious="0" />
- </Objects>
- </keyfact>
<keyfact type="FKEY2" key1="V" key2="B" >
<Objects>
<Object objectname="SongView"
slotsignature="center_playhead" modes="All" sortorder="15" submenu="Playhead"
instantanious="0" />
Index: src/core/Song.cpp
===================================================================
RCS file: /sources/traverso/traverso/src/core/Song.cpp,v
retrieving revision 1.115
retrieving revision 1.116
diff -u -b -r1.115 -r1.116
--- src/core/Song.cpp 30 May 2007 16:13:58 -0000 1.115
+++ src/core/Song.cpp 2 Jun 2007 23:02:32 -0000 1.116
@@ -1162,5 +1162,10 @@
emit recordingStateChanged();
}
+void Song::set_temp_follow_state(bool state)
+{
+ emit tempFollowChanged(state);
+}
+
// eof
Index: src/core/Song.h
===================================================================
RCS file: /sources/traverso/traverso/src/core/Song.h,v
retrieving revision 1.57
retrieving revision 1.58
diff -u -b -r1.57 -r1.58
--- src/core/Song.h 30 May 2007 13:57:36 -0000 1.57
+++ src/core/Song.h 2 Jun 2007 23:02:33 -0000 1.58
@@ -206,6 +206,8 @@
float get_gain() const;
+ void set_temp_follow_state(bool state);
+
Command* go();
Command* go_and_record();
Command* work_next_edge();
@@ -229,6 +231,7 @@
void lastFramePositionChanged();
void seekStart(uint position);
void snapChanged();
+ void tempFollowChanged(bool state);
void propertyChanged();
void setCursorAtEdge();
void masterGainChanged();
Index: src/traverso/songcanvas/SongView.cpp
===================================================================
RCS file: /sources/traverso/traverso/src/traverso/songcanvas/SongView.cpp,v
retrieving revision 1.67
retrieving revision 1.68
diff -u -b -r1.67 -r1.68
--- src/traverso/songcanvas/SongView.cpp 31 May 2007 06:20:13 -0000
1.67
+++ src/traverso/songcanvas/SongView.cpp 2 Jun 2007 23:02:33 -0000
1.68
@@ -110,6 +110,7 @@
}
connect(m_song, SIGNAL(hzoomChanged()), this,
SLOT(scale_factor_changed()));
+ connect(m_song, SIGNAL(tempFollowChanged(bool)), this,
SLOT(set_follow_state(bool)));
connect(m_song, SIGNAL(trackAdded(Track*)), this,
SLOT(add_new_trackview(Track*)));
connect(m_song, SIGNAL(trackRemoved(Track*)), this,
SLOT(remove_trackview(Track*)));
connect(m_song, SIGNAL(lastFramePositionChanged()), this,
SLOT(update_scrollbars()));
@@ -344,16 +345,26 @@
void SongView::stop_follow_play_head()
{
- m_actOnPlayHead = false;
- m_playCursor->disable_follow();
+ m_song->set_temp_follow_state(false);
}
void SongView::follow_play_head()
{
+ m_song->set_temp_follow_state(true);
+}
+
+
+void SongView::set_follow_state(bool state)
+{
+ if (state) {
m_actOnPlayHead = true;
m_playCursor->enable_follow();
m_playCursor->setPos(m_song->get_transport_frame() / scalefactor, 0);
+ } else {
+ m_actOnPlayHead = false;
+ m_playCursor->disable_follow();
+ }
}
Index: src/traverso/songcanvas/SongView.h
===================================================================
RCS file: /sources/traverso/traverso/src/traverso/songcanvas/SongView.h,v
retrieving revision 1.30
retrieving revision 1.31
diff -u -b -r1.30 -r1.31
--- src/traverso/songcanvas/SongView.h 31 May 2007 06:20:13 -0000 1.30
+++ src/traverso/songcanvas/SongView.h 2 Jun 2007 23:02:33 -0000 1.31
@@ -124,6 +124,7 @@
void update_scrollbars();
void stop_follow_play_head();
void follow_play_head();
+ void set_follow_state(bool state);
Command* touch();
Command* touch_play_cursor();
Index: src/traverso/widgets/InfoWidgets.cpp
===================================================================
RCS file: /sources/traverso/traverso/src/traverso/widgets/InfoWidgets.cpp,v
retrieving revision 1.36
retrieving revision 1.37
diff -u -b -r1.36 -r1.37
--- src/traverso/widgets/InfoWidgets.cpp 25 May 2007 12:21:20 -0000
1.36
+++ src/traverso/widgets/InfoWidgets.cpp 2 Jun 2007 23:02:33 -0000
1.37
@@ -623,7 +623,9 @@
if (m_song) {
connect(m_song, SIGNAL(snapChanged()), this,
SLOT(update_snap_state()));
connect(m_song, SIGNAL(modeChanged()), this,
SLOT(update_effects_state()));
+ connect(m_song, SIGNAL(tempFollowChanged(bool)), this,
SLOT(update_temp_follow_state(bool)));
connect(m_song, SIGNAL(recordingStateChanged()), this,
SLOT(update_recording_state()));
+ connect(m_song, SIGNAL(transferStopped()), this,
SLOT(update_follow_state()));
update_snap_state();
update_effects_state();
update_recording_state();
@@ -666,10 +668,21 @@
m_followAct->setChecked(config().get_property("PlayHead", "Follow",
true).toBool());
}
+void SongInfo::update_temp_follow_state(bool state)
+{
+ if (m_song->is_transporting()) {
+ m_followAct->setChecked(state);
+ }
+}
+
void SongInfo::follow_state_changed(bool state)
{
+ if (!m_song->is_transporting()) {
config().set_property("PlayHead", "Follow", state);
config().save();
+ } else {
+ m_song->set_temp_follow_state(state);
+ }
}
void SongInfo::effect_button_clicked()
Index: src/traverso/widgets/InfoWidgets.h
===================================================================
RCS file: /sources/traverso/traverso/src/traverso/widgets/InfoWidgets.h,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -b -r1.17 -r1.18
--- src/traverso/widgets/InfoWidgets.h 25 May 2007 10:52:28 -0000 1.17
+++ src/traverso/widgets/InfoWidgets.h 2 Jun 2007 23:02:33 -0000 1.18
@@ -189,6 +189,7 @@
void update_snap_state();
void snap_state_changed(bool state);
void update_follow_state();
+ void update_temp_follow_state(bool state);
void update_effects_state();
void follow_state_changed(bool state);
void effect_button_clicked();
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Traverso-commit] traverso resources/keymap.xml src/core/Song.cpp...,
Ben Levitt <=