diff layer/FlexiNoteLayer.cpp @ 796:7717751f4407 tonioni

fixed selection by note move to not include the next note on the right
author matthiasm
date Fri, 13 Jun 2014 16:50:17 +0100
parents 54efa0a4f728
children d6b79166ae0d
line wrap: on
line diff
--- a/layer/FlexiNoteLayer.cpp	Fri Jun 13 15:29:06 2014 +0100
+++ b/layer/FlexiNoteLayer.cpp	Fri Jun 13 16:50:17 2014 +0100
@@ -1666,8 +1666,10 @@
 
     for (FlexiNoteModel::PointList::iterator i = points.begin();
          i != points.end(); ++i) {
-        bool overlap = !(((s.getStartFrame() < i->frame) && (s.getEndFrame() < i->frame))
-            || ((s.getStartFrame() > i->frame+i->duration) && (s.getEndFrame() > i->frame+i->duration)));
+        bool overlap = !(
+            ((s.getStartFrame() < i->frame) && (s.getEndFrame() < i->frame)) || // selection is left of note
+            ((s.getStartFrame() > (i->frame+i->duration-1)) && (s.getEndFrame() > (i->frame+i->duration-1))) // selection is right of note
+            );
         if (overlap) {
             command->deletePoint(*i);
         }