X-Git-Url: https://git.sesse.net/?p=nageru;a=blobdiff_plain;f=futatabi%2Fmainwindow.cpp;h=77a3ba35e35bebfdf31c5df258052c75dcffb1e7;hp=154537c7c4c05791c8532d8f35eb29536d3a46a2;hb=7ae1d56b56be5cc80333b2f7124ecfb6a86f16e9;hpb=c6c33efa85cecce484bba5ff179ed121e807f858 diff --git a/futatabi/mainwindow.cpp b/futatabi/mainwindow.cpp index 154537c..77a3ba3 100644 --- a/futatabi/mainwindow.cpp +++ b/futatabi/mainwindow.cpp @@ -273,21 +273,33 @@ void MainWindow::cue_in_clicked() { if (!cliplist_clips->empty() && cliplist_clips->back()->pts_out < 0) { cliplist_clips->mutable_back()->pts_in = current_pts; - return; + } else { + Clip clip; + clip.pts_in = max(current_pts - lrint(global_flags.cue_point_padding_seconds * TIMEBASE), 0); + cliplist_clips->add_clip(clip); + playlist_selection_changed(); } - Clip clip; - clip.pts_in = max(current_pts - lrint(global_flags.cue_point_padding_seconds * TIMEBASE), 0); - cliplist_clips->add_clip(clip); - playlist_selection_changed(); + + // Select the item so that we can jog it. + ui->clip_list->setFocus(); + QModelIndex index = cliplist_clips->index(cliplist_clips->size() - 1, int(ClipList::Column::IN)); + ui->clip_list->selectionModel()->setCurrentIndex(index, QItemSelectionModel::ClearAndSelect); ui->clip_list->scrollToBottom(); } void MainWindow::cue_out_clicked() { - if (!cliplist_clips->empty()) { - cliplist_clips->mutable_back()->pts_out = current_pts + lrint(global_flags.cue_point_padding_seconds * TIMEBASE); - // TODO: select the row in the clip list? + if (cliplist_clips->empty()) { + return; } + + cliplist_clips->mutable_back()->pts_out = current_pts + lrint(global_flags.cue_point_padding_seconds * TIMEBASE); + + // Select the item so that we can jog it. + ui->clip_list->setFocus(); + QModelIndex index = cliplist_clips->index(cliplist_clips->size() - 1, int(ClipList::Column::OUT)); + ui->clip_list->selectionModel()->setCurrentIndex(index, QItemSelectionModel::ClearAndSelect); + ui->clip_list->scrollToBottom(); } void MainWindow::queue_clicked()