def lift_button_pressed(): """ Removes 1 - n long continuous clip range from track and fills the created gap with a black clip """ if movemodes.selected_track == -1: return # Edit consumes selection, set clips seletion attr to false movemodes.set_range_selection(movemodes.selected_track, movemodes.selected_range_in, movemodes.selected_range_out, False) track = get_track(movemodes.selected_track) if editevent.track_lock_check_and_user_info(track, lift_button_pressed, "lift"): movemodes.clear_selection_values() return data = { "track": track, "from_index": movemodes.selected_range_in, "to_index": movemodes.selected_range_out } edit_action = edit.lift_multiple_action(data) edit_action.do_edit() # Nothing is left selected after edit movemodes.clear_selection_values() updater.repaint_tline()
def lift_button_pressed(): """ Removes 1 - n long continuous clip range from track and fills the created gap with a black clip """ if movemodes.selected_track == -1: return # Edit consumes selection, set clips seletion attr to false movemodes.set_range_selection(movemodes.selected_track, movemodes.selected_range_in, movemodes.selected_range_out, False) track = get_track(movemodes.selected_track) if editevent.track_lock_check_and_user_info(track, lift_button_pressed, "lift"): movemodes.clear_selection_values() return data = {"track":track, "from_index":movemodes.selected_range_in, "to_index":movemodes.selected_range_out} edit_action = edit.lift_multiple_action(data) edit_action.do_edit() # Nothing is left selected after edit movemodes.clear_selection_values() updater.repaint_tline()
def splice_out_button_pressed(): """ Removes 1 - n long continuous clip range from track and closes the created gap. """ if movemodes.selected_track == -1: return # Edit consumes selection, so clear selected from clips movemodes.set_range_selection(movemodes.selected_track, movemodes.selected_range_in, movemodes.selected_range_out, False) track = get_track(movemodes.selected_track) if editevent.track_lock_check_and_user_info(track, splice_out_button_pressed, "splice out"): movemodes.clear_selection_values() return data = { "track": track, "from_index": movemodes.selected_range_in, "to_index": movemodes.selected_range_out } edit_action = edit.remove_multiple_action(data) edit_action.do_edit() # Nothing is selected after edit movemodes.clear_selection_values() updater.repaint_tline()
def splice_out_button_pressed(): """ Removes 1 - n long continuous clip range from track and closes the created gap. """ if movemodes.selected_track == -1: return # Edit consumes selection, so clear selected from clips movemodes.set_range_selection(movemodes.selected_track, movemodes.selected_range_in, movemodes.selected_range_out, False) track = get_track(movemodes.selected_track) if editevent.track_lock_check_and_user_info(track, splice_out_button_pressed, "splice out"): movemodes.clear_selection_values() return data = {"track":track, "from_index":movemodes.selected_range_in, "to_index":movemodes.selected_range_out} edit_action = edit.remove_multiple_action(data) edit_action.do_edit() # Nothing is selected after edit movemodes.clear_selection_values() updater.repaint_tline()
def splice_out_button_pressed(): """ Removes 1 - n long continuous clip range from track and closes the created gap. """ if movemodes.selected_track == -1: return # Edit consumes selection, so clear selected from clips movemodes.set_range_selection(movemodes.selected_track, movemodes.selected_range_in, movemodes.selected_range_out, False) track = get_track(movemodes.selected_track) if editevent.track_lock_check_and_user_info(track, splice_out_button_pressed, "splice out"): movemodes.clear_selection_values() return # A single clip delete can trigger a special clip cover delete # See if such delete should be attempted. # Exit if done succesfully, do normal splice out and report if failed cover_delete_failed = False if editorpersistance.prefs.trans_cover_delete == True: if movemodes.selected_range_out == movemodes.selected_range_in: clip = track.clips[movemodes.selected_range_in] if hasattr(clip, "rendered_type") and ( track.id >= current_sequence().first_video_index): cover_delete_success = _attempt_clip_cover_delete( clip, track, movemodes.selected_range_in) if cover_delete_success: return # A successful cover delete happened else: cover_delete_failed = True # A successful cover delete failed, do normal delete and gove info # Do delete data = { "track": track, "from_index": movemodes.selected_range_in, "to_index": movemodes.selected_range_out } edit_action = edit.remove_multiple_action(data) edit_action.do_edit() _splice_out_done_update() if cover_delete_failed == True: dialogutils.info_message( _("Fade/Transition cover delete failed!"), _("There wasn't enough material available in adjacent clips.\nA normal Splice Out was done instead." ), gui.editor_window.window)
def init_editor_state(): """ Called after project load or changing current sequence to initalize editor state. """ render.fill_out_profile_widgets() gui.media_view_filter_selector.set_pixbuf(editorstate.media_view_filter) gui.clip_editor_b.set_sensitive(False) gui.editor_window.window.set_title(editorstate.project.name + " - Flowblade") gui.editor_window.uimanager.get_widget( "/MenuBar/FileMenu/Save").set_sensitive(False) gui.editor_window.uimanager.get_widget( "/MenuBar/EditMenu/Undo").set_sensitive(False) gui.editor_window.uimanager.get_widget( "/MenuBar/EditMenu/Redo").set_sensitive(False) # Center tracks vertical display and init some listeners to # new value and repaint tracks column. tlinewidgets.set_ref_line_y(gui.tline_canvas.widget.get_allocation()) gui.tline_column.init_listeners() gui.tline_column.widget.queue_draw() # Clear editors clipeffectseditor.clear_clip() compositeeditor.clear_compositor() # Show first pages on notebooks gui.middle_notebook.set_current_page(0) # Clear clip selection. movemodes.clear_selection_values() # Set initial edit mode gui.editor_window.tool_selector.set_tool_pixbuf( appconsts.TLINE_TOOL_INSERT) editevent.insert_move_mode_pressed() # Create array needed to update compositors after all edits editorstate.current_sequence().restack_compositors() proxyediting.set_menu_to_proxy_state() undo.clear_undos() # Enable edit action GUI updates edit.do_gui_update = True
def splice_out_button_pressed(): """ Removes 1 - n long continuous clip range from track and closes the created gap. """ if movemodes.selected_track == -1: return # Edit consumes selection, so clear selected from clips movemodes.set_range_selection(movemodes.selected_track, movemodes.selected_range_in, movemodes.selected_range_out, False) track = get_track(movemodes.selected_track) if editevent.track_lock_check_and_user_info(track, splice_out_button_pressed, "splice out"): movemodes.clear_selection_values() return # A single clip delete can trigger a special clip cover delete # See if such delete should be attempted. # Exit if done succesfully, do normal splice out and report if failed cover_delete_failed = False if editorpersistance.prefs.trans_cover_delete == True: if movemodes.selected_range_out == movemodes.selected_range_in: clip = track.clips[movemodes.selected_range_in] if hasattr(clip, "rendered_type") and (track.id >= current_sequence().first_video_index): cover_delete_success = _attempt_clip_cover_delete(clip, track, movemodes.selected_range_in) if cover_delete_success: return # A successful cover delete happened else: cover_delete_failed = True # A successful cover delete failed, do normal delete and gove info # Do delete data = {"track":track, "from_index":movemodes.selected_range_in, "to_index":movemodes.selected_range_out} edit_action = edit.remove_multiple_action(data) edit_action.do_edit() _splice_out_done_update() if cover_delete_failed == True: dialogutils.info_message(_("Fade/Transition cover delete failed!"), _("There wasn't enough material available in adjacent clips.\nA normal Splice Out was done instead."), gui.editor_window.window)
def init_editor_state(): """ Called after project load or changing current sequence to initalize editor state. """ render.fill_out_profile_widgets() gui.media_view_filter_selector.set_pixbuf(editorstate.media_view_filter) gui.editor_window.window.set_title(editorstate.project.name + " - Flowblade") gui.editor_window.uimanager.get_widget("/MenuBar/FileMenu/Save").set_sensitive(False) gui.editor_window.uimanager.get_widget("/MenuBar/EditMenu/Undo").set_sensitive(False) gui.editor_window.uimanager.get_widget("/MenuBar/EditMenu/Redo").set_sensitive(False) # Center tracks vertical display and init some listeners to # new value and repaint tracks column. tlinewidgets.set_ref_line_y(gui.tline_canvas.widget.get_allocation()) gui.tline_column.init_listeners() gui.tline_column.widget.queue_draw() # Clear editors clipeffectseditor.clear_clip() clipeffectseditor.effect_selection_changed() # to get No Clip text compositeeditor.clear_compositor() # Show first pages on notebooks gui.middle_notebook.set_current_page(0) # Clear clip selection. movemodes.clear_selection_values() # Set initial edit mode modesetting.set_default_edit_mode() # Create array needed to update compositors after all edits editorstate.current_sequence().restack_compositors() proxyediting.set_menu_to_proxy_state() undo.clear_undos() # Enable edit action GUI updates edit.do_gui_update = True
def _splice_out_done_update(): # Nothing is selected after edit movemodes.clear_selection_values() updater.repaint_tline()