Removed extraneous TimelineLayoutHelper::draggingTrack member
This commit is contained in:
parent
e15adf1afb
commit
1908ff08a0
3 changed files with 24 additions and 22 deletions
|
|
@ -201,14 +201,14 @@ bool TimelineHeaderContainer::on_motion_notify_event (
|
||||||
|
|
||||||
// Are we beginning to drag a header?
|
// Are we beginning to drag a header?
|
||||||
if((event->state & GDK_BUTTON1_MASK) && hoveringTrack &&
|
if((event->state & GDK_BUTTON1_MASK) && hoveringTrack &&
|
||||||
!layout.get_dragging_track())
|
!layout.is_dragging_track())
|
||||||
{
|
{
|
||||||
begin_drag();
|
begin_drag();
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Are we currently dragging?
|
// Are we currently dragging?
|
||||||
if(layout.get_dragging_track())
|
if(layout.is_dragging_track())
|
||||||
{
|
{
|
||||||
// Forward the message to the layout manager
|
// Forward the message to the layout manager
|
||||||
layout.drag_to_point(mousePoint);
|
layout.drag_to_point(mousePoint);
|
||||||
|
|
@ -347,9 +347,6 @@ TimelineHeaderContainer::layout_headers()
|
||||||
const TimelineLayoutHelper::TrackTree &layout_tree =
|
const TimelineLayoutHelper::TrackTree &layout_tree =
|
||||||
layout_helper.get_layout_tree();
|
layout_helper.get_layout_tree();
|
||||||
|
|
||||||
shared_ptr<timeline::Track> dragging_track =
|
|
||||||
layout_helper.get_dragging_track();
|
|
||||||
|
|
||||||
TimelineLayoutHelper::TrackTree::pre_order_iterator iterator;
|
TimelineLayoutHelper::TrackTree::pre_order_iterator iterator;
|
||||||
for(iterator = ++layout_tree.begin(); // ++ so that we skip the sequence root
|
for(iterator = ++layout_tree.begin(); // ++ so that we skip the sequence root
|
||||||
iterator != layout_tree.end();
|
iterator != layout_tree.end();
|
||||||
|
|
@ -416,7 +413,7 @@ TimelineHeaderContainer::end_drag(bool apply)
|
||||||
TimelineLayoutHelper &layout = timelineWidget.layoutHelper;
|
TimelineLayoutHelper &layout = timelineWidget.layoutHelper;
|
||||||
|
|
||||||
// Has the user been dragging?
|
// Has the user been dragging?
|
||||||
if(layout.get_dragging_track())
|
if(layout.is_dragging_track())
|
||||||
layout.end_dragging_track(apply);
|
layout.end_dragging_track(apply);
|
||||||
|
|
||||||
// Reset the arrow as a cursor
|
// Reset the arrow as a cursor
|
||||||
|
|
|
||||||
|
|
@ -45,6 +45,8 @@ TimelineLayoutHelper::TimelineLayoutHelper(TimelineWidget &owner) :
|
||||||
dragBranchHeight(0),
|
dragBranchHeight(0),
|
||||||
animating(false)
|
animating(false)
|
||||||
{
|
{
|
||||||
|
// Init draggingTrackIter into a non-dragging state
|
||||||
|
draggingTrackIter.node = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
|
|
@ -134,26 +136,27 @@ shared_ptr<timeline::Track>
|
||||||
TimelineLayoutHelper::begin_dragging_track(
|
TimelineLayoutHelper::begin_dragging_track(
|
||||||
const Gdk::Point &mouse_point)
|
const Gdk::Point &mouse_point)
|
||||||
{
|
{
|
||||||
draggingTrack = header_from_point(mouse_point);
|
shared_ptr<timeline::Track> dragging_track =
|
||||||
if(!draggingTrack)
|
header_from_point(mouse_point);
|
||||||
|
if(!dragging_track)
|
||||||
return shared_ptr<timeline::Track>();
|
return shared_ptr<timeline::Track>();
|
||||||
|
|
||||||
dragPoint = Gdk::Point(mouse_point.get_x(),
|
dragPoint = Gdk::Point(mouse_point.get_x(),
|
||||||
mouse_point.get_y() + timelineWidget.get_y_scroll_offset());
|
mouse_point.get_y() + timelineWidget.get_y_scroll_offset());
|
||||||
|
|
||||||
const Gdk::Rectangle &rect = headerBoxes[draggingTrack];
|
const Gdk::Rectangle &rect = headerBoxes[dragging_track];
|
||||||
dragStartOffset = Gdk::Point(
|
dragStartOffset = Gdk::Point(
|
||||||
dragPoint.get_x() - rect.get_x(),
|
dragPoint.get_x() - rect.get_x(),
|
||||||
dragPoint.get_y() - rect.get_y());
|
dragPoint.get_y() - rect.get_y());
|
||||||
|
|
||||||
const shared_ptr<model::Track> model_track =
|
const shared_ptr<model::Track> model_track =
|
||||||
draggingTrack->get_model_track();
|
dragging_track->get_model_track();
|
||||||
draggingTrackIter = iterator_from_track(model_track);
|
draggingTrackIter = iterator_from_track(model_track);
|
||||||
dragBranchHeight = measure_branch_height(draggingTrackIter);
|
dragBranchHeight = measure_branch_height(draggingTrackIter);
|
||||||
|
|
||||||
draggingDrop.relation = None;
|
draggingDrop.relation = None;
|
||||||
|
|
||||||
return draggingTrack;
|
return dragging_track;
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
|
|
@ -162,15 +165,15 @@ TimelineLayoutHelper::end_dragging_track(bool apply)
|
||||||
if(apply)
|
if(apply)
|
||||||
apply_drop_to_model_tree(draggingDrop);
|
apply_drop_to_model_tree(draggingDrop);
|
||||||
|
|
||||||
draggingTrack.reset();
|
draggingTrackIter.node = NULL;
|
||||||
clone_tree_from_sequence();
|
clone_tree_from_sequence();
|
||||||
update_layout();
|
update_layout();
|
||||||
}
|
}
|
||||||
|
|
||||||
boost::shared_ptr<timeline::Track>
|
bool
|
||||||
TimelineLayoutHelper::get_dragging_track() const
|
TimelineLayoutHelper::is_dragging_track() const
|
||||||
{
|
{
|
||||||
return draggingTrack;
|
return draggingTrackIter.node != NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
TimelineLayoutHelper::TrackTree::pre_order_iterator
|
TimelineLayoutHelper::TrackTree::pre_order_iterator
|
||||||
|
|
@ -484,6 +487,7 @@ TimelineLayoutHelper::layout_headers_recursive(
|
||||||
{
|
{
|
||||||
REQUIRE(depth >= 0);
|
REQUIRE(depth >= 0);
|
||||||
|
|
||||||
|
const bool dragging = is_dragging_track();
|
||||||
int child_offset = 0;
|
int child_offset = 0;
|
||||||
|
|
||||||
TrackTree::sibling_iterator iterator;
|
TrackTree::sibling_iterator iterator;
|
||||||
|
|
@ -499,7 +503,10 @@ TimelineLayoutHelper::layout_headers_recursive(
|
||||||
shared_ptr<timeline::Track> timeline_track =
|
shared_ptr<timeline::Track> timeline_track =
|
||||||
lookup_timeline_track(model_track);
|
lookup_timeline_track(model_track);
|
||||||
|
|
||||||
const bool being_dragged = (timeline_track == draggingTrack);
|
// Is this the root track of a dragging branch?
|
||||||
|
bool being_dragged = false;
|
||||||
|
if(dragging)
|
||||||
|
being_dragged = (model_track == *draggingTrackIter);
|
||||||
|
|
||||||
// Is the track going to be shown?
|
// Is the track going to be shown?
|
||||||
if(parent_expanded)
|
if(parent_expanded)
|
||||||
|
|
|
||||||
|
|
@ -132,7 +132,7 @@ public:
|
||||||
|
|
||||||
void end_dragging_track(bool apply);
|
void end_dragging_track(bool apply);
|
||||||
|
|
||||||
boost::shared_ptr<timeline::Track> get_dragging_track() const;
|
bool is_dragging_track() const;
|
||||||
|
|
||||||
TrackTree::pre_order_iterator get_dragging_track_iter() const;
|
TrackTree::pre_order_iterator get_dragging_track_iter() const;
|
||||||
|
|
||||||
|
|
@ -276,8 +276,6 @@ protected:
|
||||||
|
|
||||||
TrackTree::pre_order_iterator draggingTrackIter;
|
TrackTree::pre_order_iterator draggingTrackIter;
|
||||||
|
|
||||||
boost::shared_ptr<timeline::Track> draggingTrack;
|
|
||||||
|
|
||||||
Gdk::Point dragStartOffset;
|
Gdk::Point dragStartOffset;
|
||||||
|
|
||||||
Gdk::Point dragPoint;
|
Gdk::Point dragPoint;
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue