implemented bars object

This commit is contained in:
itsmattkc
2018-09-07 16:10:07 +10:00
parent d1de02d28f
commit 779e6b0a24
3 changed files with 22 additions and 8 deletions
+19 -5
View File
@@ -542,28 +542,42 @@ void TimelineWidget::mouseReleaseEvent(QMouseEvent *event) {
c->color_b = 64;
c->track = g.track;
Selection s;
s.in = c->timeline_in;
s.out = c->timeline_out;
s.track = c->track;
QVector<Selection> areas;
areas.append(s);
panel_timeline->delete_areas_and_relink(ta, areas);
QVector<Clip*> add;
add.append(c);
ta->add_clips(sequence, add);
ta->add_effect(sequence, sequence->clip_count(), VIDEO_TRANSFORM_EFFECT);
int clipIndex = sequence->clip_count();
ta->add_effect(sequence, clipIndex, VIDEO_TRANSFORM_EFFECT);
switch (panel_timeline->creatingObject) {
case ADD_OBJ_TITLE:
c->name = "Title";
ta->add_effect(sequence, sequence->clip_count(), VIDEO_TEXT_EFFECT);
ta->add_effect(sequence, clipIndex, VIDEO_TEXT_EFFECT);
break;
case ADD_OBJ_SOLID:
c->name = "Solid Color";
ta->add_effect(sequence, sequence->clip_count(), VIDEO_SOLID_EFFECT);
ta->add_effect(sequence, clipIndex, VIDEO_SOLID_EFFECT);
break;
case ADD_OBJ_BARS:
c->name = "Bars and Tone";
ta->add_effect(sequence, sequence->clip_count(), VIDEO_SOLID_EFFECT);
ta->add_effect(sequence, clipIndex, VIDEO_SOLID_EFFECT);
break;
}
undo_stack.push(ta);
// pretty hacky
if (panel_timeline->creatingObject == ADD_OBJ_BARS) {
sequence->get_clip(clipIndex)->effects.at(1)->row(0)->field(0)->set_combo_index(1);
}
panel_timeline->redraw_all_clips(true);
} else if (panel_timeline->moving_proc) {
repaint = true;
@@ -891,7 +905,7 @@ bool subvalidate_snapping(const Ghost& g, long* frame_diff, long snap_point) {
panel_timeline->snap_point = snap_point;
panel_timeline->snapped = true;
return true;
} else if (!g.trim_in && out_validator > -snap_range && out_validator < snap_range) {
} else if ((panel_timeline->trim_target == -1 || !g.trim_in) && out_validator > -snap_range && out_validator < snap_range) {
*frame_diff -= out_validator;
panel_timeline->snap_point = snap_point;
panel_timeline->snapped = true;