本文整理汇总了Python中updater.repaint_tline函数的典型用法代码示例。如果您正苦于以下问题:Python repaint_tline函数的具体用法?Python repaint_tline怎么用?Python repaint_tline使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了repaint_tline函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。
示例1: delete_effect_pressed
def delete_effect_pressed():
if len(clip.filters) == 0:
return
# Block updates until we have set selected row
global edit_effect_update_blocked
edit_effect_update_blocked = True
treeselection = widgets.effect_stack_view.treeview.get_selection()
(model, rows) = treeselection.get_selected_rows()
try:
row = rows[0]
except:
return # This fails when there are filters but no rows are selected
row_index = max(row)
data = {"clip":clip,
"index":row_index,
"filter_edit_done_func":filter_edit_done}
action = edit.remove_filter_action(data)
action.do_edit()
updater.repaint_tline()
# Set last filter selected and display in editor
edit_effect_update_blocked = False
if len(clip.filters) == 0:
return
path = str(len(clip.filters) - 1)
# Causes edit_effect_selected() called as it is the "change" listener
widgets.effect_stack_view.treeview.get_selection().select_path(path)
开发者ID:admonkey,项目名称:flowblade,代码行数:32,代码来源:clipeffectseditor.py
示例2: lift_button_pressed
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()
开发者ID:pzl,项目名称:flowblade,代码行数:30,代码来源:tlineaction.py
示例3: splice_out_button_pressed
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()
开发者ID:Rayne,项目名称:flowblade,代码行数:30,代码来源:tlineaction.py
示例4: _exit_clip_end_drag
def _exit_clip_end_drag():
# Go back to enter mode
editorstate.edit_mode = _enter_mode
tlinewidgets.set_edit_mode(None, _enter_draw_func)
gui.editor_window.set_cursor_to_mode()
updater.repaint_tline()
开发者ID:iloveooz,项目名称:flowblade,代码行数:7,代码来源:clipenddragmode.py
示例5: set_waveform_displayer_clip_from_popup
def set_waveform_displayer_clip_from_popup(data):
clip, track, item_id, item_data = data
global frames_cache
if clip.path in frames_cache:
frame_levels = frames_cache[clip.path]
clip.waveform_data = frame_levels
updater.repaint_tline()
return
cache_file_path = userfolders.get_cache_dir() + appconsts.AUDIO_LEVELS_DIR + _get_unique_name_for_media(clip.path)
if os.path.isfile(cache_file_path):
f = open(cache_file_path)
frame_levels = pickle.load(f)
frames_cache[clip.path] = frame_levels
clip.waveform_data = frame_levels
updater.repaint_tline()
return
progress_bar = Gtk.ProgressBar()
title = _("Audio Levels Data Render")
text = "<b>Media File: </b>" + clip.path
dialog = _waveform_render_progress_dialog(_waveform_render_abort, title, text, progress_bar, gui.editor_window.window)
dialog.progress_bar = progress_bar
global waveform_thread
waveform_thread = WaveformCreator(clip, track.height, dialog)
waveform_thread.start()
开发者ID:jliljebl,项目名称:flowblade,代码行数:28,代码来源:audiowaveform.py
示例6: _add_autofade
def _add_autofade(data):
clip, track, item_id, item_data = data
x, compositor_type = item_data
frame = tlinewidgets.get_frame(x)
clip_index = track.get_clip_index_at(frame)
target_track_index = track.id - 1
clip_length = clip.clip_out - clip.clip_in
if compositor_type == "##auto_fade_in":
compositor_in = current_sequence().tracks[track.id].clip_start(clip_index)
compositor_out = compositor_in + int(utils.fps()) - 1
else:
clip_start = current_sequence().tracks[track.id].clip_start(clip_index)
compositor_out = clip_start + clip_length
compositor_in = compositor_out - int(utils.fps()) + 1
edit_data = {"origin_clip_id":clip.id,
"in_frame":compositor_in,
"out_frame":compositor_out,
"a_track":target_track_index,
"b_track":track.id,
"compositor_type":compositor_type,
"clip":clip}
action = edit.add_compositor_action(edit_data)
action.do_edit()
updater.repaint_tline()
开发者ID:ptrg,项目名称:flowblade,代码行数:29,代码来源:clipmenuaction.py
示例7: motion_notify_event
def motion_notify_event(self, x, y, state):
"""
Mouse move callback
"""
lx = self._legalize_x(x)
ly = self._legalize_y(y)
if abs(self.mouse_start_y - ly) > DRAG_MIN_Y:
self.value_drag_on = True
self.mouse_x = lx
self.mouse_y = ly
if self.current_mouse_action == POSITION_DRAG:
frame = self._get_drag_frame(lx)
self.current_clip_frame = frame
self.clip_editor_frame_changed(self.current_clip_frame)
updater.repaint_tline()
elif self.current_mouse_action == KF_DRAG or self.current_mouse_action == KF_DRAG_FRAME_ZERO_KF:
frame = self._get_drag_frame(lx)
if self.current_mouse_action == KF_DRAG_FRAME_ZERO_KF:
frame = 0
if self.value_drag_on == True:
value = round(self._get_value_for_panel_y(ly))
self.edit_value = value
self.set_active_kf_frame_and_value(frame, value)
else:
self.set_active_kf_frame_and_value(frame, self.edit_value)
if _playhead_follow_kf == True:
self.current_clip_frame = frame
self.clip_editor_frame_changed(self.current_clip_frame)
updater.repaint_tline()
开发者ID:ptrg,项目名称:flowblade,代码行数:33,代码来源:kftoolmode.py
示例8: overwrite_move_move
def overwrite_move_move(x, y, frame, state):
"""
User moves mouse when in overwrite move mode.
"""
global edit_data, drag_disabled
if drag_disabled:
return
if edit_data == None:
return
_move_mode_move(frame, x, y)
# Calculate overwrite area if moving
if edit_data["move_on"] == True:
# get in point
over_in = edit_data["attempt_insert_frame"]
# Check and do magnet
cut_x = tlinewidgets._get_frame_x(edit_data["insert_frame"])
clip_head_x = tlinewidgets._get_frame_x(edit_data["attempt_insert_frame"])
if abs(clip_head_x - cut_x) < MAGNETIC_AREA_IN_PIX:
over_in = edit_data["insert_frame"]
over_out = over_in + edit_data["moving_length"]
edit_data["over_in"] = over_in
edit_data["over_out"] = over_out
updater.repaint_tline()
开发者ID:Mermouy,项目名称:flowblade,代码行数:29,代码来源:movemodes.py
示例9: exit_tool
def exit_tool():
_set_no_clip_edit_data()
global enter_mode
if enter_mode != None:
gui.editor_window.kf_tool_exit_to_mode(enter_mode)
enter_mode = None
updater.repaint_tline()
开发者ID:ptrg,项目名称:flowblade,代码行数:7,代码来源:kftoolmode.py
示例10: _oor_menu_item_activated
def _oor_menu_item_activated(self, widget, data):
if data == "delete_all_before":
keep_doing = True
while keep_doing:
try:
frame, value = self.keyframes[1]
if frame < self.clip_in:
self.keyframes.pop(1)
else:
keep_doing = False
except:
keep_doing = False
elif data == "delete_all_but_last_after":
keep_doing = True
index = 1
while keep_doing:
try:
frame, value = self.keyframes[index]
if frame > self.clip_in + self.clip_length and index < (len(self.keyframes) - 1):
self.keyframes.pop(index)
else:
index += 1
except:
keep_doing = False
elif data == "zero_next":
frame_zero, frame_zero_value = self.keyframes[0]
frame, value = self.keyframes[1]
self.keyframes.pop(0)
self.keyframes.insert(0, (frame_zero, value))
self.update_property_value()
elif data == "delete_all_after":
delete_done = False
for i in range(0, len(self.keyframes)):
frame, value = self.keyframes[i]
if frame > self.clip_in + self.clip_length:
self.keyframes.pop(i)
popped = True
while popped:
try:
self.keyframes.pop(i)
except:
popped = False
delete_done = True
if delete_done:
break
elif data == "edit_brightness":
init_tool_for_clip(edit_data["clip"] , edit_data["track"], BRIGHTNESS_KF_EDIT)
elif data == "edit_volume":
init_tool_for_clip(edit_data["clip"] , edit_data["track"], VOLUME_KF_EDIT)
elif data == "exit":
_set_no_clip_edit_data()
elif data == "playhead_follows":
global _playhead_follow_kf
_playhead_follow_kf = widget.get_active()
updater.repaint_tline()
开发者ID:ptrg,项目名称:flowblade,代码行数:60,代码来源:kftoolmode.py
示例11: spin_value_changed
def spin_value_changed(self, spin):
if self.editable_property.clip.transition.info.name == "##auto_fade_in":
self.editable_property.clip.set_length_from_in(int(spin.get_value()))
else:
self.editable_property.clip.set_length_from_out(int(spin.get_value()))
updater.repaint_tline()
开发者ID:ptrg,项目名称:flowblade,代码行数:7,代码来源:propertyeditorbuilder.py
示例12: set_track_normal_height
def set_track_normal_height(track_index, is_retry=False):
track = get_track(track_index)
track.height = appconsts.TRACK_HEIGHT_NORMAL
# Check that new height tracks can be displayed and cancel if not.
new_h = current_sequence().get_tracks_height()
allocation = gui.tline_canvas.widget.get_allocation()
x, y, w, h = allocation.x, allocation.y, allocation.width, allocation.height
if new_h > h and is_retry == False:
current_paned_pos = gui.editor_window.app_v_paned.get_position()
new_paned_pos = current_paned_pos - (new_h - h) - 5
gui.editor_window.app_v_paned.set_position(new_paned_pos)
GObject.timeout_add(200, lambda: set_track_normal_height(track_index, True))
return False
allocation = gui.tline_canvas.widget.get_allocation()
x, y, w, h = allocation.x, allocation.y, allocation.width, allocation.height
if new_h > h:
track.height = appconsts.TRACK_HEIGHT_SMALL
dialogutils.warning_message(_("Not enough vertical space on Timeline to expand track"),
_("Maximize or resize application window to get more\nspace for tracks if possible."),
gui.editor_window.window,
True)
return False
tlinewidgets.set_ref_line_y(gui.tline_canvas.widget.get_allocation())
gui.tline_column.init_listeners()
updater.repaint_tline()
return False
开发者ID:jliljebl,项目名称:flowblade,代码行数:32,代码来源:trackaction.py
示例13: mouse_press
def mouse_press(event, frame):
track = current_sequence().tracks[compositor.transition.b_track - 1]
global edit_data, sub_mode
compositor_y = tlinewidgets._get_track_y(track.id) - tlinewidgets.COMPOSITOR_HEIGHT_OFF
if abs(event.x - tlinewidgets._get_frame_x(compositor.clip_in)) < TRIM_HANDLE_WIDTH:
edit_data = {"clip_in":compositor.clip_in,
"clip_out":compositor.clip_out,
"trim_is_clip_in":True,
"compositor_y": compositor_y,
"compositor": compositor}
tlinewidgets.set_edit_mode(edit_data, tlinewidgets.draw_compositor_trim)
sub_mode = TRIM_EDIT
elif abs(event.x - tlinewidgets._get_frame_x(compositor.clip_out + 1)) < TRIM_HANDLE_WIDTH:
edit_data = {"clip_in":compositor.clip_in,
"clip_out":compositor.clip_out,
"trim_is_clip_in":False,
"compositor_y": compositor_y,
"compositor": compositor}
tlinewidgets.set_edit_mode(edit_data, tlinewidgets.draw_compositor_trim)
sub_mode = TRIM_EDIT
else:
edit_data = {"press_frame":frame,
"current_frame":frame,
"clip_in":compositor.clip_in,
"clip_length":(compositor.clip_out - compositor.clip_in + 1),
"compositor_y": compositor_y,
"compositor": compositor}
tlinewidgets.set_edit_mode(edit_data, tlinewidgets.draw_compositor_move_overlay)
sub_mode = MOVE_EDIT
updater.repaint_tline()
开发者ID:Mermouy,项目名称:flowblade,代码行数:33,代码来源:compositormodes.py
示例14: _audio_levels_item_activated
def _audio_levels_item_activated(widget, msg):
if msg == "all":
editorstate.display_all_audio_levels = True
updater.repaint_tline()
else:
editorstate.display_all_audio_levels = False
current_sequence().drop_audio_levels()
updater.repaint_tline()
开发者ID:iloveooz,项目名称:flowblade,代码行数:8,代码来源:trackaction.py
示例15: mouse_move
def mouse_move(x, y, frame, state):
if mouse_disabled:
return
global edit_data
edit_data["current_frame"] = frame
updater.repaint_tline()
开发者ID:jliljebl,项目名称:flowblade,代码行数:8,代码来源:multimovemode.py
示例16: mouse_move
def mouse_move(x, y, frame, state):
global edit_data
if sub_mode == TRIM_EDIT:
_bounds_check_trim(frame, edit_data)
else:
edit_data["current_frame"] = frame
updater.repaint_tline()
开发者ID:Mermouy,项目名称:flowblade,代码行数:8,代码来源:compositormodes.py
示例17: _exit_clip_end_drag
def _exit_clip_end_drag():
# Go back to enter mode
editorstate.edit_mode = _enter_mode
tlinewidgets.set_edit_mode(None, _enter_draw_func)
tlinewidgets.pointer_context = appconsts.POINTER_CONTEXT_NONE
gui.editor_window.set_cursor_to_mode()
updater.repaint_tline()
开发者ID:dvdlvr,项目名称:flowblade,代码行数:8,代码来源:clipenddragmode.py
示例18: multi_mode_pressed
def multi_mode_pressed():
stop_looping()
current_sequence().clear_hidden_track()
editorstate.edit_mode = editorstate.MULTI_MOVE
tlinewidgets.set_edit_mode(None, tlinewidgets.draw_multi_overlay)
updater.set_move_mode_gui()
updater.repaint_tline()
开发者ID:Mermouy,项目名称:flowblade,代码行数:9,代码来源:editevent.py
示例19: 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()
开发者ID:Mermouy,项目名称:flowblade,代码行数:9,代码来源:syncsplitevent.py
示例20: resync_clip
def resync_clip(popup_data):
clip, track, item_id, x = popup_data
clip_list=[(clip, track)]
data = {"clips":clip_list}
action = edit.resync_some_clips_action(data)
action.do_edit()
updater.repaint_tline()
开发者ID:Mermouy,项目名称:flowblade,代码行数:9,代码来源:syncsplitevent.py
注:本文中的updater.repaint_tline函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论