X-Git-Url: http://git.cinelerra-gg.org/git/?a=blobdiff_plain;f=cinelerra-5.1%2Fcinelerra%2Fkeyframepopup.C;h=cef8b2701a62e2aaeaba0f724d493f3426242d65;hb=cb73d14fe59acbe8eba0a62f4af26a23072201fa;hp=9fb15e71b1e5b67d4e953916e6449e4c499bc794;hpb=65eb7d06c462c2caaa7fabcb8956add9e6b8abc7;p=goodguy%2Fhistory.git diff --git a/cinelerra-5.1/cinelerra/keyframepopup.C b/cinelerra-5.1/cinelerra/keyframepopup.C index 9fb15e71..cef8b270 100644 --- a/cinelerra-5.1/cinelerra/keyframepopup.C +++ b/cinelerra-5.1/cinelerra/keyframepopup.C @@ -187,7 +187,9 @@ KeyframePopupDelete::~KeyframePopupDelete() int KeyframePopupDelete::handle_event() { mwindow->undo->update_undo_before(_("delete keyframe"), 0); + mwindow->speed_before(); delete popup->keyframe_auto; + mwindow->speed_after(1); mwindow->undo->update_undo_after(_("delete keyframe"), LOAD_ALL); mwindow->save_backup(); @@ -229,22 +231,6 @@ KeyframePopupShow::~KeyframePopupShow() { } -PatchGUI *KeyframePopupShow::get_patchgui(Track *track) -{ - PatchGUI *patchgui = 0; - TimelinePane **panes = mwindow->gui->pane; - for( int i=0; ipatchbay; - if( !patchbay ) continue; - for( int j=0; jpatches.total && !patchgui; ++j ) { - if( patchbay->patches.values[j]->track == track ) - patchgui = patchbay->patches.values[j]; - } - } - return patchgui; -} - int KeyframePopupShow::handle_event() { MWindowGUI *mgui = mwindow->gui; @@ -280,7 +266,7 @@ int KeyframePopupShow::handle_event() default: { show_window = 0; - PatchGUI *patchgui = get_patchgui(popup->keyframe_automation->track); + PatchGUI *patchgui = mwindow->get_patchgui(popup->keyframe_automation->track); if( !patchgui ) break; switch( popup->keyframe_autos->autoidx ) { @@ -638,6 +624,7 @@ KeySpeedValue::KeySpeedValue(KeySpeedPatch *key_speed_patch) key_speed_patch->mwindow->get_float_auto(key_speed_patch->patch, AUTOMATION_SPEED)->get_value()) { this->key_speed_patch = key_speed_patch; + key_speed_patch->mwindow->speed_before(); set_precision(0.01); } @@ -648,6 +635,8 @@ KeySpeedValue::~KeySpeedValue() int KeySpeedValue::button_release_event() { BC_FSlider::button_release_event(); + key_speed_patch->mwindow->speed_after(1); + key_speed_patch->mwindow->resync_guis(); return 0; } @@ -661,7 +650,7 @@ void KeySpeedValue::update_edl() mwindow->undo->update_undo_before(_("speed"), need_undo ? 0 : this); FloatAuto *current = (FloatAuto*)speed_autos->get_auto_for_editing(position); current->set_value(get_value()); - mwindow->undo->update_undo_after(_("speed"), LOAD_AUTOMATION); + mwindow->undo->update_undo_after(_("speed"), LOAD_AUTOMATION+LOAD_EDITS); } int KeySpeedValue::handle_event()