comparison view/Pane.cpp @ 945:bb80983c9e61 osx-retina

Merge from default branch
author Chris Cannam
date Mon, 20 Apr 2015 09:18:55 +0100
parents 3fb91da7d98d
children 36cddc3de023 e297b7d752f2
comparison
equal deleted inserted replaced
920:e39d5d2734ed 945:bb80983c9e61
22 #include "ViewManager.h" 22 #include "ViewManager.h"
23 #include "widgets/CommandHistory.h" 23 #include "widgets/CommandHistory.h"
24 #include "widgets/TextAbbrev.h" 24 #include "widgets/TextAbbrev.h"
25 #include "base/Preferences.h" 25 #include "base/Preferences.h"
26 #include "layer/WaveformLayer.h" 26 #include "layer/WaveformLayer.h"
27 #include "layer/TimeRulerLayer.h"
27 28
28 // GF: added so we can propagate the mouse move event to the note layer for context handling. 29 // GF: added so we can propagate the mouse move event to the note layer for context handling.
29 #include "layer/LayerFactory.h" 30 #include "layer/LayerFactory.h"
30 #include "layer/FlexiNoteLayer.h" 31 #include "layer/FlexiNoteLayer.h"
31 32
1365 sv_frame_t mouseFrame = getFrameForX(e->x()); 1366 sv_frame_t mouseFrame = getFrameForX(e->x());
1366 int resolution = 1; 1367 int resolution = 1;
1367 sv_frame_t snapFrame = mouseFrame; 1368 sv_frame_t snapFrame = mouseFrame;
1368 1369
1369 Layer *layer = getInteractionLayer(); 1370 Layer *layer = getInteractionLayer();
1370 if (layer && !m_shiftPressed) { 1371 if (layer && !m_shiftPressed &&
1372 !qobject_cast<TimeRulerLayer *>(layer)) { // don't snap to secs
1371 layer->snapToFeatureFrame(this, snapFrame, 1373 layer->snapToFeatureFrame(this, snapFrame,
1372 resolution, Layer::SnapLeft); 1374 resolution, Layer::SnapLeft);
1373 } 1375 }
1374 1376
1375 if (snapFrame < 0) snapFrame = 0; 1377 if (snapFrame < 0) snapFrame = 0;
1738 1740
1739 } else { 1741 } else {
1740 1742
1741 if (!editSelectionDrag(e)) { 1743 if (!editSelectionDrag(e)) {
1742 1744
1743 Layer *layer = getInteractionLayer(); 1745 Layer *layer = getTopFlexiNoteLayer();
1744 1746
1745 if (layer && layer->isLayerEditable()) { 1747 if (layer) {
1746 1748
1747 int x = e->x(); 1749 int x = e->x();
1748 int y = e->y(); 1750 int y = e->y();
1749 if (m_dragMode == VerticalDrag) x = m_clickPos.x(); 1751 if (m_dragMode == VerticalDrag) x = m_clickPos.x();
1750 else if (m_dragMode == HorizontalDrag) y = m_clickPos.y(); 1752 else if (m_dragMode == HorizontalDrag) y = m_clickPos.y();
2081 int resolution = 1; 2083 int resolution = 1;
2082 sv_frame_t snapFrameLeft = mouseFrame; 2084 sv_frame_t snapFrameLeft = mouseFrame;
2083 sv_frame_t snapFrameRight = mouseFrame; 2085 sv_frame_t snapFrameRight = mouseFrame;
2084 2086
2085 Layer *layer = getInteractionLayer(); 2087 Layer *layer = getInteractionLayer();
2086 if (layer && !m_shiftPressed) { 2088 if (layer && !m_shiftPressed &&
2089 !qobject_cast<TimeRulerLayer *>(layer)) { // don't snap to secs
2087 layer->snapToFeatureFrame(this, snapFrameLeft, 2090 layer->snapToFeatureFrame(this, snapFrameLeft,
2088 resolution, Layer::SnapLeft); 2091 resolution, Layer::SnapLeft);
2089 layer->snapToFeatureFrame(this, snapFrameRight, 2092 layer->snapToFeatureFrame(this, snapFrameRight,
2090 resolution, Layer::SnapRight); 2093 resolution, Layer::SnapRight);
2091 } 2094 }