本文整理汇总了Python中movemodes.clear_selected_clips函数的典型用法代码示例。如果您正苦于以下问题:Python clear_selected_clips函数的具体用法?Python clear_selected_clips怎么用?Python clear_selected_clips使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了clear_selected_clips函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: _cover_blank_from_next
def _cover_blank_from_next(data, called_from_next_clip=False):
clip, track, item_id, item_data = data
if not called_from_next_clip:
clip_index = movemodes.selected_range_out + 1
blank_index = movemodes.selected_range_in
if clip_index < 0: # we are not getting a legal clip index
return
cover_clip = track.clips[clip_index]
else:
clip_index = track.clips.index(clip) + 1
blank_index = clip_index - 1
cover_clip = track.clips[clip_index]
# Check that clip covers blank area
total_length = 0
for i in range(movemodes.selected_range_in, movemodes.selected_range_out + 1):
total_length += track.clips[i].clip_length()
if total_length > cover_clip.clip_in: # handle not long enough to cover blanks
primary_txt = _("Next clip does not have enough material to cover blank area")
secondary_txt = _("Requested edit can't be done.")
dialogutils.info_message(primary_txt, secondary_txt, gui.editor_window.window)
return
# Do edit
movemodes.clear_selected_clips()
data = {"track":track, "clip":cover_clip, "blank_index":blank_index}
action = edit.trim_start_over_blanks(data)
action.do_edit()
示例2: slide_trim_no_edit_init
def slide_trim_no_edit_init():
stop_looping() # Stops looping
editorstate.edit_mode = editorstate.SLIDE_TRIM_NO_EDIT
gui.editor_window.set_cursor_to_mode()
tlinewidgets.set_edit_mode(None, None) # No overlays are drawn in this edit mode
movemodes.clear_selected_clips() # Entering trim edit mode clears selection
updater.set_trim_mode_gui()
示例3: cut_mode_pressed
def cut_mode_pressed():
stop_looping()
current_sequence().clear_hidden_track()
# Box tool is implemeted as sub mode of OVERWRITE_MOVE
editorstate.edit_mode = editorstate.CUT
tlinewidgets.set_edit_mode(None, tlinewidgets.draw_cut_overlay)
movemodes.clear_selected_clips() # Entering trim edit mode clears selection
示例4: _delete_blank
def _delete_blank(data):
clip, track, item_id, x = data
movemodes.select_blank_range(track, clip)
from_index = movemodes.selected_range_in
to_index = movemodes.selected_range_out
movemodes.clear_selected_clips()
data = {"track":track,"from_index":from_index,"to_index":to_index}
action = edit.remove_multiple_action(data)
action.do_edit()
示例5: resync_everything
def resync_everything():
# Selection not valid after resync action
if movemodes.selected_track == -1:
movemodes.clear_selected_clips()
action = edit.resync_all_action({})
action.do_edit()
updater.repaint_tline()
示例6: clear_sync_relation
def clear_sync_relation(popup_data):
clip, track, item_id, x = popup_data
data = {"child_clip": clip, "child_track": track}
action = edit.clear_sync_action(data)
action.do_edit()
# Edit consumes selection
movemodes.clear_selected_clips()
updater.repaint_tline()
示例7: kftool_mode_pressed
def kftool_mode_pressed():
stop_looping()
current_sequence().clear_hidden_track()
# Box tool is implemeted as sub mode of OVERWRITE_MOVE
editorstate.edit_mode = editorstate.KF_TOOL
kftoolmode.enter_mode = None
kftoolmode.set_no_clip_edit_data()
tlinewidgets.set_edit_mode(None, tlinewidgets.draw_kftool_overlay)
movemodes.clear_selected_clips() # Entering trim edit mode clears selection
示例8: cut_pressed
def cut_pressed():
if not timeline_visible():
updater.display_sequence_in_monitor()
if EDIT_MODE() == editorstate.ONE_ROLL_TRIM:
editevent.oneroll_trim_no_edit_init()
return
if EDIT_MODE() == editorstate.TWO_ROLL_TRIM:
editevent.tworoll_trim_no_edit_init()
return
tline_frame = PLAYER().current_frame()
movemodes.clear_selected_clips()
# Iterate tracks and do cut on all active that have non-blanck
# clips and frame is not on previous edits
for i in range(1, len(current_sequence().tracks)):
track = get_track(i)
if track.active == False:
continue
if editevent.track_lock_check_and_user_info(track, cut_pressed, "cut"): # so the other tracks get cut...
continue
# Get index and clip
index = track.get_clip_index_at(int(tline_frame))
try:
clip = track.clips[index]
# don't cut blanck clip
if clip.is_blanck_clip:
continue
except Exception:
continue # Frame after last clip in track
# Get cut frame in clip frames
clip_start_in_tline = track.clip_start(index)
clip_frame = tline_frame - clip_start_in_tline + clip.clip_in
# Dont edit if frame on cut.
if clip_frame == clip.clip_in:
continue
# Do edit
data = {"track":track,
"index":index,
"clip":clip,
"clip_cut_frame":clip_frame}
action = edit.cut_action(data)
action.do_edit()
updater.repaint_tline()
示例9: oneroll_trim_no_edit_init
def oneroll_trim_no_edit_init():
"""
This mode is entered and this method is called when:
- user first selects trim tool
- user does cut(X) action while in trim mode
- user clicks empty and preference is to keep using trim tool (to not exit to INSERT_MOVE)
"""
stop_looping()
editorstate.edit_mode = editorstate.ONE_ROLL_TRIM_NO_EDIT
gui.editor_window.set_cursor_to_mode()
tlinewidgets.set_edit_mode(None, None) # No overlays are drawn in this edit mode
movemodes.clear_selected_clips() # Entering trim edit mode clears selection
updater.set_trim_mode_gui()
示例10: select_sync_parent_mouse_pressed
def select_sync_parent_mouse_pressed(event, frame):
_set_sync_parent_clip(event, frame)
gdk_window = gui.tline_display.get_parent_window();
gdk_window.set_cursor(gtk.gdk.Cursor(gtk.gdk.LEFT_PTR))
global parent_selection_data
parent_selection_data = None
# Edit consumes selection
movemodes.clear_selected_clips()
updater.repaint_tline()
示例11: kftool_mode_from_popup_menu
def kftool_mode_from_popup_menu(clip, track, edit_type):
stop_looping()
current_sequence().clear_hidden_track()
kftoolmode.enter_mode = editorstate.edit_mode
editorstate.edit_mode = editorstate.KF_TOOL
tlinewidgets.set_edit_mode(None, tlinewidgets.draw_kftool_overlay)
movemodes.clear_selected_clips() # Entering this edit mode clears selection
kftoolmode.set_no_clip_edit_data()
kftoolmode.init_tool_for_clip(clip, track, edit_type)
gui.editor_window.set_cursor_to_mode()
示例12: clear_filters
def clear_filters():
if movemodes.selected_track == -1:
return
track = get_track(movemodes.selected_track)
clips = []
for i in range(movemodes.selected_range_in, movemodes.selected_range_out + 1):
clips.append(track.clips[i])
data = {"clips":clips}
action = edit.remove_multiple_filters_action(data)
action.do_edit()
movemodes.clear_selected_clips()
updater.repaint_tline()
示例13: change_edit_sequence
def change_edit_sequence():
selection = gui.sequence_list_view.treeview.get_selection()
(model, rows) = selection.get_selected_rows()
row = max(rows[0])
current_index = PROJECT().sequences.index(current_sequence())
if row == current_index:
dialogutils.warning_message(_("Selected sequence is already being edited"),
_("Select another sequence. Press Add -button to create a\nnew sequence if needed."),
gui.editor_window.window)
return
# Clear clips selection at exit. This is transient user focus state and
# therefore is not saved.
movemodes.clear_selected_clips()
app.change_current_sequence(row)
示例14: three_point_overwrite_pressed
def three_point_overwrite_pressed():
# Check that state is good for edit
if movemodes.selected_track == -1:
primary_txt = _("No Clips are selected!")
secondary_txt = _("You need to select clips to overwrite to perform this edit.")
dialogutils.info_message(primary_txt, secondary_txt, gui.editor_window.window)
return
# Get data
track = get_track(movemodes.selected_track)
if editevent.track_lock_check_and_user_info(track, three_point_overwrite_pressed, "3 point overwrite"):
return
range_start_frame = track.clip_start(movemodes.selected_range_in)
out_clip = track.clips[movemodes.selected_range_out]
out_start = track.clip_start(movemodes.selected_range_out)
range_end_frame = out_start + out_clip.clip_out - out_clip.clip_in
range_length = range_end_frame - range_start_frame + 1 # calculated end is incl.
over_clip = _get_new_clip_from_clip_monitor()
if over_clip == None:
no_monitor_clip_info(gui.editor_window.window)
return
over_length = over_clip.mark_out - over_clip.mark_in + 1 # + 1 out incl ?????????? what if over_clip.mark_out == -1 ??????????
if over_length < range_length:
monitor_clip_too_short(gui.editor_window.window)
return
over_clip_out = over_clip.mark_in + range_length - 1 # -1 out incl
range_in = movemodes.selected_range_in
range_out = movemodes.selected_range_out
movemodes.clear_selected_clips() # edit consumes selection
updater.save_monitor_frame = False # hack to not get wrong value saved in MediaFile.current_frame
data = {"track":track,
"clip":over_clip,
"clip_in":over_clip.mark_in,
"clip_out":over_clip_out,
"in_index":range_in,
"out_index":range_out}
action = edit.three_point_overwrite_action(data)
action.do_edit()
updater.display_tline_cut_frame(track, range_in)
示例15: resync_selected
def resync_selected():
if movemodes.selected_track == -1:
return
track = get_track(movemodes.selected_track)
clip_list = []
for index in range(movemodes.selected_range_in, movemodes.selected_range_out + 1):
clip_list.append((track.clips[index], track))
# Selection not valid after resync action
movemodes.clear_selected_clips()
# Chack if synced clips have same or consecutive parent clips
all_same_or_consecutive = True
master_id = -1
current_master_clip = -1
current_master_index = -1
master_track = current_sequence().first_video_track()
for t in clip_list:
clip, track = t
try:
if master_id == -1:
master_id = clip.sync_data.master_clip.id
current_master_clip = clip.sync_data.master_clip
current_master_index = master_track.clips.index(current_master_clip)
else:
if clip.sync_data.master_clip.id != master_id:
next_master_index = master_track.clips.index(clip.sync_data.master_clip)
if current_master_index + 1 == next_master_index:
# Masters are consecutive, save data to test next
master_id = clip.sync_data.master_clip.id
current_master_index = master_track.clips.index(current_master_clip)
else:
all_same_or_consecutive = False
except:
all_same_or_consecutive = False
# If clips are all for same or consecutive sync parent clips, sync them as a unit.
if len(clip_list) > 1 and all_same_or_consecutive == True:
data = {"clips":clip_list}
action = edit.resync_clips_sequence_action(data)
action.do_edit()
else: # Single or non-consecutive clips are synched separately
data = {"clips":clip_list}
action = edit.resync_some_clips_action(data)
action.do_edit()
updater.repaint_tline()