traverso-commit
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Traverso-commit] traverso resources/keymap.xml src/commands/Move...


From: Remon Sijrier
Subject: [Traverso-commit] traverso resources/keymap.xml src/commands/Move...
Date: Mon, 18 Feb 2008 10:15:49 +0000

CVSROOT:        /sources/traverso
Module name:    traverso
Changes by:     Remon Sijrier <r_sijrier>       08/02/18 10:15:49

Modified files:
        resources      : keymap.xml 
        src/commands   : MoveClip.cpp MoveClip.h 

Log message:
        * Implemented [ D ] + arrow keys, [ D ] + S or F (prev/next snap) [ D ] 
+ V toggle vertical only on/off.

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/traverso/resources/keymap.xml?cvsroot=traverso&r1=1.106&r2=1.107
http://cvs.savannah.gnu.org/viewcvs/traverso/src/commands/MoveClip.cpp?cvsroot=traverso&r1=1.72&r2=1.73
http://cvs.savannah.gnu.org/viewcvs/traverso/src/commands/MoveClip.h?cvsroot=traverso&r1=1.32&r2=1.33

Patches:
Index: resources/keymap.xml
===================================================================
RCS file: /sources/traverso/traverso/resources/keymap.xml,v
retrieving revision 1.106
retrieving revision 1.107
diff -u -b -r1.106 -r1.107
--- resources/keymap.xml        16 Feb 2008 21:54:44 -0000      1.106
+++ resources/keymap.xml        18 Feb 2008 10:15:48 -0000      1.107
@@ -46,14 +46,14 @@
                <keyfact type="FKEY" key1="LARROW" >
                        <Objects>
                                <Object objectname="SheetView" 
slotsignature="scroll_left" modes="All" sortorder="1" submenu="Scroll" />
-                               <Object objectname="MoveClip" 
slotsignature="prev_snap_pos" modes="All" sortorder="1" />
+                               <Object objectname="MoveClip" 
slotsignature="move_left" modes="All" sortorder="3" />
                                <Object objectname="TrackPan" 
slotsignature="pan_left" modes="All" sortorder="1" />
                        </Objects>
                </keyfact>
                <keyfact type="FKEY" key1="RARROW" >
                        <Objects>
                                <Object objectname="SheetView" 
slotsignature="scroll_right" modes="All" sortorder="2" submenu="Scroll" />
-                               <Object objectname="MoveClip" 
slotsignature="next_snap_pos" modes="All" sortorder="1" />
+                               <Object objectname="MoveClip" 
slotsignature="move_right" modes="All" sortorder="4" />
                                <Object objectname="TrackPan" 
slotsignature="pan_right" modes="All" sortorder="2" />
                        </Objects>
                </keyfact>
@@ -62,6 +62,7 @@
                                <Object objectname="Gain" 
slotsignature="increase_gain" modes="All" />
                                <Object objectname="DragNode" 
slotsignature="move_up" modes="Effects" />
                                <Object objectname="SheetView" 
slotsignature="scroll_up" modes="All" sortorder="4" submenu="Scroll" />
+                               <Object objectname="MoveClip" 
slotsignature="move_up" modes="All" sortorder="1" />
                        </Objects>
                </keyfact>
                <keyfact type="FKEY" key1="DARROW" >
@@ -69,6 +70,7 @@
                                <Object objectname="Gain" 
slotsignature="decrease_gain" modes="All" />
                                <Object objectname="DragNode" 
slotsignature="move_down" modes="Effects" />
                                <Object objectname="SheetView" 
slotsignature="scroll_down" modes="All" sortorder="4" submenu="Scroll" />
+                               <Object objectname="MoveClip" 
slotsignature="move_down" modes="All" sortorder="2" />
                        </Objects>
                </keyfact>
                <keyfact type="FKEY" key1="SHIFT" >
@@ -82,6 +84,7 @@
                                <Object objectname="SheetView" 
slotsignature="playhead_to_workcursor" modes="All" sortorder="12" 
submenu="Playhead" />
                                <Object objectname="SheetView" 
slotsignature="center_playhead" modes="All" sortorder="15" modifierkeys="CTRL" 
submenu="Playhead" />
                                <Object objectname="Zoom" 
slotsignature="toggle_vertical_horizontal_jog_zoom" modes="All" />
+                               <Object objectname="MoveClip" 
slotsignature="toggle_vertical_only" modes="All" sortorder="10" />
                        </Objects>
                </keyfact>
                <keyfact type="FKEY" key1="W" >
@@ -102,14 +105,14 @@
                <keyfact type="FKEY" key1="Z" >
                        <Objects>
                                <Object objectname="SheetView" modes="All" 
sortorder="3" submenu="Zoom" pluginname="TraversoCommands" 
commandname="HZoomIn" arguments="HZoom;0.8" />
-                               <Object objectname="MoveClip" 
slotsignature="start_zoom" modes="All" />
+                               <Object objectname="MoveClip" 
slotsignature="start_zoom" modes="All" sortorder="11"/>
                        </Objects>
                </keyfact>
                <keyfact type="FKEY" key1="S" >
                        <Objects>
                                <Object objectname="AudioClip" modes="All" 
sortorder="1" submenu="Selection" pluginname="TraversoCommands" 
commandname="ClipSelectionSelect" arguments="select_clip" />
                                <Object objectname="Project" 
slotsignature="select" modes="All" />
-                               <Object objectname="MoveClip" 
slotsignature="prev_snap_pos" modes="All" sortorder="1" />
+                               <Object objectname="MoveClip" 
slotsignature="prev_snap_pos" modes="All" sortorder="5" />
                                <Object objectname="DragMarker" 
slotsignature="move_left" modes="All" sortorder="1" />
                        </Objects>
                </keyfact>
@@ -257,7 +260,7 @@
                </keyfact>
                <keyfact type="FKEY" key1="F" >
                        <Objects>
-                               <Object objectname="MoveClip" 
slotsignature="next_snap_pos" modes="All" sortorder="1" />
+                               <Object objectname="MoveClip" 
slotsignature="next_snap_pos" modes="All" sortorder="6" />
                                <Object objectname="DragMarker" 
slotsignature="move_right" modes="All" sortorder="1" />
                        </Objects>
                </keyfact>

Index: src/commands/MoveClip.cpp
===================================================================
RCS file: /sources/traverso/traverso/src/commands/MoveClip.cpp,v
retrieving revision 1.72
retrieving revision 1.73
diff -u -b -r1.72 -r1.73
--- src/commands/MoveClip.cpp   18 Feb 2008 08:09:54 -0000      1.72
+++ src/commands/MoveClip.cpp   18 Feb 2008 10:15:49 -0000      1.73
@@ -139,12 +139,11 @@
        }
        
        m_origTrackIndex = m_newTrackIndex = m_group.get_track_index();
-       
-       d->zoom = 0;
+       m_trackStartLocation = m_group.get_track_start_location();
        m_sheet = d->sv->get_sheet();
+       d->zoom = 0;
 }
 
-
 MoveClip::~MoveClip()
 {
        if (d) {
@@ -161,8 +160,6 @@
                return -1;
        }
        
-       m_trackStartLocation = m_group.get_track_start_location();
-       
        if (m_actionType == COPY) {
                // FIXME Memory leak here!
                QList<AudioClip*> newclips = m_group.copy_clips();
@@ -324,23 +321,61 @@
 
 void MoveClip::do_prev_next_snap(TimeRef trackStartLocation, TimeRef 
trackEndLocation)
 {
+       if (d->verticalOnly) return;
        ie().bypass_jog_until_mouse_movements_exceeded_manhattenlength();
        trackStartLocation -= 
m_sheet->get_snap_list()->calculate_snap_diff(trackStartLocation, 
trackEndLocation);
        m_posDiff = trackStartLocation - m_trackStartLocation;
-       m_group.move_to(m_group.get_track_index(), m_trackStartLocation + 
m_posDiff);
+       do_move();
 }
 
 void MoveClip::move_to_start(bool autorepeat)
 {
        Q_UNUSED(autorepeat);
-       TimeRef location; // location == 0
-       m_group.move_to(m_origTrackIndex, location);
+       m_group.move_to(m_group.get_track_index(), TimeRef());
 }
 
 void MoveClip::move_to_end(bool autorepeat)
 {
        Q_UNUSED(autorepeat);
-       m_group.move_to(m_origTrackIndex, m_sheet->get_last_location());
+       m_group.move_to(m_group.get_track_index(), 
m_sheet->get_last_location());
+}
+
+void MoveClip::move_up(bool autorepeat)
+{
+       Q_UNUSED(autorepeat);
+       ie().bypass_jog_until_mouse_movements_exceeded_manhattenlength();
+       int deltaTrackIndex = -1;
+       m_group.check_valid_track_index_delta(deltaTrackIndex);
+       m_newTrackIndex = m_newTrackIndex + deltaTrackIndex;
+       do_move();
+}
+
+void MoveClip::move_down(bool autorepeat)
+{
+       Q_UNUSED(autorepeat);
+       ie().bypass_jog_until_mouse_movements_exceeded_manhattenlength();
+       int deltaTrackIndex = 1;
+       m_group.check_valid_track_index_delta(deltaTrackIndex);
+       m_newTrackIndex = m_newTrackIndex + deltaTrackIndex;
+       do_move();
+}
+
+void MoveClip::move_left(bool autorepeat)
+{
+       Q_UNUSED(autorepeat);
+       if (d->verticalOnly) return;
+       ie().bypass_jog_until_mouse_movements_exceeded_manhattenlength();
+       m_posDiff -= d->sv->timeref_scalefactor;
+       do_move();
+}
+
+void MoveClip::move_right(bool autorepeat)
+{
+       Q_UNUSED(autorepeat);
+       if (d->verticalOnly) return;
+       ie().bypass_jog_until_mouse_movements_exceeded_manhattenlength();
+       m_posDiff += d->sv->timeref_scalefactor;
+       do_move();
 }
 
 void MoveClip::start_zoom(bool autorepeat)
@@ -367,3 +402,20 @@
        }
 }
 
+void MoveClip::toggle_vertical_only(bool autorepeat)
+{
+       d->verticalOnly = !d->verticalOnly;
+       if (d->verticalOnly) {
+               set_cursor_shape(0, 1);
+       } else {
+               set_cursor_shape(1, 1);
+       }
+}
+
+void MoveClip::do_move()
+{
+       m_group.move_to(m_newTrackIndex, m_trackStartLocation + m_posDiff);
+       if (d) {
+               
cpointer().get_viewport()->set_holdcursor_text(timeref_to_text(m_trackStartLocation
 + m_posDiff, d->sv->timeref_scalefactor));
+       }
+}

Index: src/commands/MoveClip.h
===================================================================
RCS file: /sources/traverso/traverso/src/commands/MoveClip.h,v
retrieving revision 1.32
retrieving revision 1.33
diff -u -b -r1.32 -r1.33
--- src/commands/MoveClip.h     18 Feb 2008 08:09:54 -0000      1.32
+++ src/commands/MoveClip.h     18 Feb 2008 10:15:49 -0000      1.33
@@ -41,6 +41,11 @@
        Q_CLASSINFO("next_snap_pos", tr("To next snap position"));
        Q_CLASSINFO("prev_snap_pos", tr("To previous snap position"));
        Q_CLASSINFO("start_zoom", tr("Jog Zoom"));
+       Q_CLASSINFO("move_up", tr("Move Up"));
+       Q_CLASSINFO("move_down", tr("Move Down"));
+       Q_CLASSINFO("move_left", tr("Move Left"));
+       Q_CLASSINFO("move_right", tr("Move Right"));
+       Q_CLASSINFO("toggle_vertical_only", tr("Toggle Vertical Only"));
        
 public :
        MoveClip(ViewItem* view, QVariantList args);
@@ -85,13 +90,19 @@
        Data* d;
 
        void do_prev_next_snap(TimeRef trackStartLocation, TimeRef 
trackEndLocation);
+       void do_move();
        
 public slots:
        void next_snap_pos(bool autorepeat);
        void prev_snap_pos(bool autorepeat);
         void move_to_start(bool autorepeat);
         void move_to_end(bool autorepeat);
+       void move_up(bool autorepeat);;
+       void move_down(bool autorepeat);
+       void move_left(bool autorepeat);
+       void move_right(bool autorepeat);
        void start_zoom(bool autorepeat);
+       void toggle_vertical_only(bool autorepeat);
 };
 
 #endif




reply via email to

[Prev in Thread] Current Thread [Next in Thread]