summaryrefslogtreecommitdiff
path: root/gtk2_ardour/editor_drag.h
diff options
context:
space:
mode:
authorCarl Hetherington <carl@carlh.net>2010-09-09 21:35:28 +0000
committerCarl Hetherington <carl@carlh.net>2010-09-09 21:35:28 +0000
commit86244875a40206694c142af8fe1128f28293c467 (patch)
tree7a643215fa39e9538fff5fc282139866c44fe529 /gtk2_ardour/editor_drag.h
parent5f27e70016a88cbb9a77275ce3e5798540f9bbdf (diff)
Allow drags of automation in time ranges where the automation is on a MIDI track and may span different regions. Fixes #3366.
git-svn-id: svn://localhost/ardour2/branches/3.0@7765 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/editor_drag.h')
-rw-r--r--gtk2_ardour/editor_drag.h12
1 files changed, 11 insertions, 1 deletions
diff --git a/gtk2_ardour/editor_drag.h b/gtk2_ardour/editor_drag.h
index 6b4420715f..80ffbb927c 100644
--- a/gtk2_ardour/editor_drag.h
+++ b/gtk2_ardour/editor_drag.h
@@ -826,7 +826,17 @@ public:
private:
std::list<ARDOUR::AudioRange> _ranges;
AutomationTimeAxisView* _atav;
- boost::shared_ptr<AutomationLine> _line;
+
+ /** A line that is part of the drag */
+ struct Line {
+ boost::shared_ptr<AutomationLine> line; ///< the line
+ std::list<ControlPoint*> points; ///< points to drag on the line
+ std::pair<ARDOUR::framepos_t, ARDOUR::framepos_t> range; ///< the range of all points on the line, in session frames
+ XMLNode* state; ///< the XML state node before the drag
+ };
+
+ std::list<Line> _lines;
+
bool _nothing_to_drag;
};