Blender
V3.3
|
#include <math.h>
#include <stdio.h>
#include <string.h>
#include "DNA_mask_types.h"
#include "DNA_scene_types.h"
#include "MEM_guardedalloc.h"
#include "BLI_blenlib.h"
#include "BLI_ghash.h"
#include "BLI_math_base.h"
#include "BKE_global.h"
#include "BKE_lib_remap.h"
#include "BKE_screen.h"
#include "BKE_sequencer_offscreen.h"
#include "GPU_state.h"
#include "ED_markers.h"
#include "ED_screen.h"
#include "ED_space_api.h"
#include "ED_time_scrub_ui.h"
#include "ED_transform.h"
#include "ED_view3d.h"
#include "ED_view3d_offscreen.h"
#include "WM_api.h"
#include "WM_message.h"
#include "SEQ_sequencer.h"
#include "SEQ_time.h"
#include "SEQ_transform.h"
#include "SEQ_utils.h"
#include "UI_interface.h"
#include "UI_view2d.h"
#include "IMB_imbuf.h"
#include "DRW_engine.h"
#include "sequencer_intern.h"
Go to the source code of this file.
Variables | |
const char * | sequencer_context_dir [] = {"edit_mask", NULL} |
Definition at line 994 of file space_sequencer.c.
References BKE_spacetype_register(), BKE_ST_MAXNAME, BLI_addhead(), ARegionType::draw, ARegionType::draw_overlay, ED_area_do_mgs_subscribe_for_tool_header(), ED_area_do_mgs_subscribe_for_tool_ui(), ED_area_type_hud(), ED_KEYMAP_ANIMATION, ED_KEYMAP_FRAMES, ED_KEYMAP_GIZMO, ED_KEYMAP_GPENCIL, ED_KEYMAP_HEADER, ED_KEYMAP_TOOL, ED_KEYMAP_UI, ED_KEYMAP_VIEW2D, ED_region_generic_tools_region_message_subscribe(), ED_region_generic_tools_region_snap_size(), ED_view3d_draw_offscreen_imbuf_simple(), G, HEADERY, ARegionType::init, ARegionType::keymapflag, ARegionType::layout, ARegionType::listener, MEM_callocN, ARegionType::message_subscribe, ARegionType::on_view2d_changed, ARegionType::prefsizex, ARegionType::prefsizey, ARegionType::regionid, RGN_TYPE_CHANNELS, RGN_TYPE_HEADER, RGN_TYPE_PREVIEW, RGN_TYPE_TOOL_HEADER, RGN_TYPE_TOOLS, RGN_TYPE_UI, RGN_TYPE_WINDOW, sequencer_buttons_region_draw(), sequencer_buttons_region_init(), sequencer_buttons_region_listener(), sequencer_buttons_register(), sequencer_channel_region_draw(), sequencer_channel_region_init(), sequencer_context(), sequencer_create(), sequencer_dropboxes(), sequencer_duplicate(), sequencer_free(), sequencer_gizmos(), sequencer_header_region_draw(), sequencer_header_region_init(), sequencer_id_remap(), sequencer_init(), sequencer_keymap(), sequencer_listener(), sequencer_main_region_draw(), sequencer_main_region_draw_overlay(), sequencer_main_region_init(), sequencer_main_region_layout(), sequencer_main_region_listener(), sequencer_main_region_message_subscribe(), sequencer_main_region_view2d_changed(), sequencer_operatortypes(), sequencer_preview_region_draw(), sequencer_preview_region_init(), sequencer_preview_region_layout(), sequencer_preview_region_listener(), sequencer_preview_region_view2d_changed(), sequencer_refresh(), sequencer_tools_region_draw(), sequencer_tools_region_init(), sequencer_view3d_fn, ARegionType::snap_size, SPACE_SEQ, usdtokens::st(), UI_COMPACT_PANEL_WIDTH, and UI_SIDEBAR_PANEL_WIDTH.
Referenced by ED_spacetypes_init().
Definition at line 792 of file space_sequencer.c.
References SequencerPreviewOverlay::flag, SpaceSeq::flag, G, G_TRANSFORM_CURSOR, SpaceSeq::preview_overlay, SEQ_PREVIEW_SHOW_2D_CURSOR, and SEQ_SHOW_OVERLAY.
Referenced by sequencer_preview_region_draw().
Definition at line 928 of file space_sequencer.c.
References C, and ED_region_panels().
Referenced by ED_spacetype_sequencer().
|
static |
Definition at line 917 of file space_sequencer.c.
References wmWindowManager::defaultconf, ED_region_panels_init(), ARegion::handlers, SPACE_SEQ, UI_panel_category_active_set_default(), WM_event_add_keymap_handler_v2d_mask(), and WM_keymap_ensure().
Referenced by ED_spacetype_sequencer().
|
static |
Definition at line 933 of file space_sequencer.c.
References wmNotifier::action, wmNotifier::category, wmNotifier::data, ED_region_tag_redraw(), ELEM, NA_EDITED, NA_RENAME, NA_SELECTED, NC_GPENCIL, NC_ID, NC_SCENE, NC_SPACE, ND_FRAME, ND_SEQUENCER, ND_SPACE_SEQUENCER, and params.
Referenced by ED_spacetype_sequencer().
Definition at line 989 of file space_sequencer.c.
References C, and draw_channels().
Referenced by ED_spacetype_sequencer().
|
static |
Definition at line 977 of file space_sequencer.c.
References ARegion::alignment, wmWindowManager::defaultconf, ARegion::handlers, RGN_ALIGN_LEFT, SPACE_SEQ, UI_view2d_region_reinit(), ARegion::v2d, V2D_COMMONVIEW_LIST, ARegion::winx, ARegion::winy, WM_event_add_keymap_handler_v2d_mask(), and WM_keymap_ensure().
Referenced by ED_spacetype_sequencer().
|
static |
Definition at line 407 of file space_sequencer.c.
References C, CTX_data_dir(), CTX_data_dir_set(), CTX_data_equals(), CTX_data_id_pointer_set(), CTX_data_scene(), CTX_RESULT_MEMBER_NOT_FOUND, CTX_RESULT_OK, mask(), result, scene, SEQ_active_mask_get(), and sequencer_context_dir.
Referenced by ED_spacetype_sequencer().
Definition at line 81 of file space_sequencer.c.
References View2D::align, ARegion::alignment, BLI_addtail(), BLI_rctf_init(), SpaceSeq::chanshown, View2D::cur, RenderData::efra, ARegion::flag, SequencerPreviewOverlay::flag, SequencerTimelineOverlay::flag, SpaceSeq::flag, View2D::flag, View2D::keeptot, View2D::keepzoom, SpaceSeqRuntime::last_displayed_thumbnails, SpaceSeqRuntime::last_thumbnail_area, SpaceSeq::mainb, View2D::max, MAXFRAMEF, MAXSEQ, View2D::maxzoom, MEM_callocN, View2D::min, View2D::minzoom, NULL, SpaceSeq::preview_overlay, Scene::r, SpaceSeq::regionbase, ARegion::regiontype, RGN_ALIGN_BOTTOM, RGN_ALIGN_LEFT, RGN_ALIGN_RIGHT, RGN_ALIGN_TOP, RGN_FLAG_HIDDEN, RGN_FLAG_HIDDEN_BY_USER, RGN_TYPE_CHANNELS, RGN_TYPE_HEADER, RGN_TYPE_PREVIEW, RGN_TYPE_TOOL_HEADER, RGN_TYPE_TOOLS, RGN_TYPE_UI, RGN_TYPE_WINDOW, SpaceSeq::runtime, scene, View2D::scroll, SEQ_DRAW_IMG_IMBUF, SEQ_PREVIEW_SHOW_GPENCIL, SEQ_PREVIEW_SHOW_OUTLINE_SELECTED, SEQ_SHOW_MARKERS, SEQ_SHOW_OVERLAY, SEQ_TIMELINE_SHOW_FCURVES, SEQ_TIMELINE_SHOW_GRID, SEQ_TIMELINE_SHOW_STRIP_COLOR_TAG, SEQ_TIMELINE_SHOW_STRIP_DURATION, SEQ_TIMELINE_SHOW_STRIP_NAME, SEQ_TIMELINE_SHOW_STRIP_SOURCE, SEQ_USE_ALPHA, SEQ_VIEW_SEQUENCE, SEQ_ZOOM_TO_FIT, SPACE_SEQ, SpaceSeq::spacetype, SpaceSeq::timeline_overlay, View2D::tot, USER_HEADER_BOTTOM, ARegion::v2d, V2D_ALIGN_FREE, V2D_ALIGN_NO_NEG_Y, V2D_KEEPASPECT, V2D_KEEPTOT_FREE, V2D_KEEPZOOM, V2D_LIMITZOOM, V2D_SCROLL_BOTTOM, V2D_SCROLL_HORIZONTAL_HANDLES, V2D_SCROLL_RIGHT, V2D_SCROLL_VERTICAL_HANDLES, V2D_VIEWSYNC_AREA_VERTICAL, SpaceSeq::view, rctf::xmax, rctf::xmin, rctf::ymax, and rctf::ymin.
Referenced by ED_spacetype_sequencer().
Definition at line 361 of file space_sequencer.c.
References MEM_dupallocN, SpaceSeq::runtime, and SpaceSeq::scopes.
Referenced by ED_spacetype_sequencer().
Definition at line 66 of file space_sequencer.c.
References blender::compositor::area(), ARegion::next, NULL, ARegion::regiontype, and type.
Referenced by sequencer_refresh().
Definition at line 198 of file space_sequencer.c.
References BLI_ghash_free(), SequencerScopes::histogram_ibuf, IMB_freeImBuf(), SpaceSeqRuntime::last_displayed_thumbnails, last_displayed_thumbnails_list_free(), NULL, SpaceSeq::runtime, SpaceSeq::scopes, SequencerScopes::sep_waveform_ibuf, SequencerScopes::vector_ibuf, SequencerScopes::waveform_ibuf, and SequencerScopes::zebra_ibuf.
Referenced by ED_spacetype_sequencer().
|
static |
Definition at line 434 of file space_sequencer.c.
References ED_widgetgroup_gizmo2d_xform_callbacks_set(), wmGizmoGroupType::flag, wmGizmoGroupType::gzmap_params, wmGizmoGroupType::idname, wmGizmoGroupType::name, wmGizmoMapType_Params::regionid, RGN_TYPE_PREVIEW, SPACE_SEQ, wmGizmoMapType_Params::spaceid, WM_GIZMOGROUPTYPE_DELAY_REFRESH_FOR_TWEAK, and WM_GIZMOGROUPTYPE_TOOL_FALLBACK_KEYMAP.
Referenced by sequencer_gizmos().
|
static |
Definition at line 462 of file space_sequencer.c.
References ED_widgetgroup_gizmo2d_resize_callbacks_set(), wmGizmoGroupType::flag, wmGizmoGroupType::gzmap_params, wmGizmoGroupType::idname, wmGizmoGroupType::name, wmGizmoMapType_Params::regionid, RGN_TYPE_PREVIEW, SPACE_SEQ, wmGizmoMapType_Params::spaceid, WM_GIZMOGROUPTYPE_DELAY_REFRESH_FOR_TWEAK, and WM_GIZMOGROUPTYPE_TOOL_FALLBACK_KEYMAP.
Referenced by sequencer_gizmos().
|
static |
Definition at line 476 of file space_sequencer.c.
References ED_widgetgroup_gizmo2d_rotate_callbacks_set(), wmGizmoGroupType::flag, wmGizmoGroupType::gzmap_params, wmGizmoGroupType::idname, wmGizmoGroupType::name, wmGizmoMapType_Params::regionid, RGN_TYPE_PREVIEW, SPACE_SEQ, wmGizmoMapType_Params::spaceid, WM_GIZMOGROUPTYPE_DELAY_REFRESH_FOR_TWEAK, and WM_GIZMOGROUPTYPE_TOOL_FALLBACK_KEYMAP.
Referenced by sequencer_gizmos().
|
static |
Definition at line 448 of file space_sequencer.c.
References ED_widgetgroup_gizmo2d_xform_no_cage_callbacks_set(), wmGizmoGroupType::flag, wmGizmoGroupType::gzmap_params, wmGizmoGroupType::idname, wmGizmoGroupType::name, wmGizmoMapType_Params::regionid, RGN_TYPE_PREVIEW, SPACE_SEQ, wmGizmoMapType_Params::spaceid, WM_GIZMOGROUPTYPE_DELAY_REFRESH_FOR_TWEAK, and WM_GIZMOGROUPTYPE_TOOL_FALLBACK_KEYMAP.
Referenced by sequencer_gizmos().
|
static |
Definition at line 429 of file space_sequencer.c.
References VIEW2D_GGT_navigate_impl().
Referenced by sequencer_gizmos().
Definition at line 490 of file space_sequencer.c.
References RGN_TYPE_PREVIEW, SEQUENCER_GGT_gizmo2d(), SEQUENCER_GGT_gizmo2d_resize(), SEQUENCER_GGT_gizmo2d_rotate(), SEQUENCER_GGT_gizmo2d_translate(), SEQUENCER_GGT_navigate(), SPACE_SEQ, WM_gizmogrouptype_append(), WM_gizmogrouptype_append_and_link(), and WM_gizmomaptype_ensure().
Referenced by ED_spacetype_sequencer().
Definition at line 731 of file space_sequencer.c.
References C, and ED_region_header().
Referenced by ED_spacetype_sequencer().
|
static |
Definition at line 726 of file space_sequencer.c.
References ED_region_header_init().
Referenced by ED_spacetype_sequencer().
|
static |
Definition at line 966 of file space_sequencer.c.
References BKE_id_remapper_apply(), SpaceSeq::gpd, and ID_REMAP_APPLY_DEFAULT.
Referenced by ED_spacetype_sequencer().
|
static |
Definition at line 233 of file space_sequencer.c.
Referenced by ED_spacetype_sequencer().
|
static |
Definition at line 374 of file space_sequencer.c.
References blender::compositor::area(), wmNotifier::category, wmNotifier::data, ED_area_tag_redraw(), NC_GPENCIL, NC_SCENE, NC_SPACE, NC_WINDOW, ND_FRAME, ND_GPENCIL_EDITMODE, ND_SEQUENCER, ND_SPACE_SEQUENCER, params, and sequencer_scopes_tag_refresh().
Referenced by ED_spacetype_sequencer().
Definition at line 542 of file space_sequencer.c.
References BLI_listbase_is_empty(), BLI_rctf_init(), BLI_rctf_size_y(), BLI_rcti_size_y(), C, CTX_data_scene(), CTX_wm_space_seq(), View2D::cur, ED_context_get_markers(), ED_time_scrub_region_rect_get(), SpaceSeq::flag, G, View2D::hor, markers, View2D::mask, max_ff(), min_ff(), NULL, SpaceSeq::runtime, scene, SEQ_CLAMP_VIEW, SEQ_editing_get(), SEQ_timeline_expand_boundbox(), Editing::seqbasep, View2D::smooth_timer, SpaceSeqRuntime::timeline_clamp_custom_range, UI_MARKER_MARGIN_Y, ARegion::v2d, rcti::ymax, rctf::ymax, and rctf::ymin.
Referenced by sequencer_main_region_layout(), and sequencer_main_region_view2d_changed().
Definition at line 608 of file space_sequencer.c.
References C, CTX_wm_space_seq(), View2D::cur, View2D::flag, SpaceSeq::runtime, SpaceSeqRuntime::timeline_clamp_custom_range, ARegion::v2d, V2D_IS_NAVIGATING, and rctf::ymax.
Referenced by sequencer_main_region_layout(), and sequencer_main_region_view2d_changed().
Definition at line 531 of file space_sequencer.c.
References C, and draw_timeline_seq().
Referenced by ED_spacetype_sequencer().
Definition at line 537 of file space_sequencer.c.
References C, and draw_timeline_seq_display().
Referenced by ED_spacetype_sequencer().
|
static |
Definition at line 505 of file space_sequencer.c.
References wmWindowManager::defaultconf, ARegion::handlers, RGN_TYPE_WINDOW, SPACE_SEQ, UI_view2d_region_reinit(), ARegion::v2d, V2D_COMMONVIEW_CUSTOM, ARegion::winx, ARegion::winy, WM_dropboxmap_find(), WM_event_add_dropbox_handler(), WM_event_add_keymap_handler_v2d_mask(), and WM_keymap_ensure().
Referenced by ED_spacetype_sequencer().
Definition at line 618 of file space_sequencer.c.
References C, sequencer_main_clamp_view(), and sequencer_main_region_clamp_custom_set().
Referenced by ED_spacetype_sequencer().
|
static |
Definition at line 630 of file space_sequencer.c.
References wmNotifier::action, wmNotifier::category, wmNotifier::data, ED_region_tag_redraw(), ELEM, NA_RENAME, NC_ANIMATION, NC_ID, NC_SCENE, NC_SCREEN, NC_SPACE, ND_ANIMPLAY, ND_FRAME, ND_FRAME_RANGE, ND_KEYFRAME, ND_MARKERS, ND_RENDER_OPTIONS, ND_RENDER_RESULT, ND_SEQUENCER, ND_SPACE_SEQUENCER, and params.
Referenced by ED_spacetype_sequencer().
|
static |
Definition at line 674 of file space_sequencer.c.
References ARRAY_SIZE, ED_region_do_msg_notify_tag_redraw(), RenderData::flag, Scene::id, wmMsgSubscribeValue::owner, params, wmMsgParams_RNA::ptr, Scene::r, RNA_id_pointer_create(), scene, SCER_PRV_RANGE, PointerRNA::type, WM_msg_subscribe_rna(), and WM_msg_subscribe_rna_params().
Referenced by ED_spacetype_sequencer().
Definition at line 624 of file space_sequencer.c.
References C, sequencer_main_clamp_view(), and sequencer_main_region_clamp_custom_set().
Referenced by ED_spacetype_sequencer().
Definition at line 805 of file space_sequencer.c.
References blender::compositor::area(), C, RenderData::cfra, CTX_data_scene(), CTX_wm_area(), CTX_wm_manager(), SpaceSeq::cursor, DRW_draw_cursor_2d_ex(), Scene::ed, ED_region_visible_rect(), ED_scene_draw_fps(), ED_screen_animation_no_scrub(), ED_screen_animation_playing(), SpaceSeq::flag, SpaceSeq::gizmo_flag, ARegion::gizmo_map, GPU_color_mask(), GPU_depth_mask(), GPU_DEPTH_NONE, GPU_depth_test(), is_cursor_visible(), SpaceSeq::mainb, Editing::overlay_frame_abs, Editing::overlay_frame_flag, Editing::overlay_frame_ofs, SpaceSeq::overlay_frame_type, Scene::r, scene, SEQ_DRAW_IMG_IMBUF, SEQ_EDIT_OVERLAY_FRAME_ABS, SEQ_EDIT_OVERLAY_FRAME_SHOW, SEQ_GIZMO_HIDE, SEQ_image_preview_unit_to_px(), SEQ_OVERLAY_FRAME_TYPE_CURRENT, SEQ_OVERLAY_FRAME_TYPE_RECT, SEQ_OVERLAY_FRAME_TYPE_REFERENCE, SEQ_SHOW_OVERLAY, sequencer_draw_preview(), USER_SHOW_FPS, WM_gizmomap_draw(), WM_GIZMOMAP_DRAWSTEP_2D, rcti::xmin, and rcti::ymax.
Referenced by ED_spacetype_sequencer().
|
static |
Definition at line 754 of file space_sequencer.c.
References wmWindowManager::defaultconf, ARegion::handlers, RGN_TYPE_PREVIEW, SPACE_SEQ, UI_view2d_region_reinit(), ARegion::v2d, V2D_COMMONVIEW_CUSTOM, ARegion::winx, ARegion::winy, WM_dropboxmap_find(), WM_event_add_dropbox_handler(), WM_event_add_keymap_handler_v2d_mask(), and WM_keymap_ensure().
Referenced by ED_spacetype_sequencer().
Definition at line 776 of file space_sequencer.c.
References C, CTX_wm_space_seq(), View2D::cur, SpaceSeq::flag, SEQ_ZOOM_TO_FIT, View2D::tot, and ARegion::v2d.
Referenced by ED_spacetype_sequencer().
|
static |
Definition at line 862 of file space_sequencer.c.
References wmNotifier::action, wmNotifier::category, wmNotifier::data, ED_region_tag_redraw(), ELEM, ARegion::gizmo_map, NA_EDITED, NA_RENAME, NA_SELECTED, NC_ANIMATION, NC_GPENCIL, NC_ID, NC_MASK, NC_SCENE, NC_SPACE, ND_DRAW_RENDER_VIEWPORT, ND_FRAME, ND_KEYFRAME, ND_MARKERS, ND_RENDER_OPTIONS, ND_SEQUENCER, ND_SPACE_SEQUENCER, params, and WM_gizmomap_tag_refresh().
Referenced by ED_spacetype_sequencer().
|
static |
Definition at line 786 of file space_sequencer.c.
References C, CTX_wm_space_seq(), SpaceSeq::flag, and SEQ_ZOOM_TO_FIT.
Referenced by ED_spacetype_sequencer().
Definition at line 237 of file space_sequencer.c.
References ARegion::alignment, blender::compositor::area(), C, CTX_wm_manager(), CTX_wm_window(), View2D::cur, ED_area_headersize(), ED_area_init(), ED_area_tag_redraw(), ARegion::flag, View2D::flag, ARegion::handlers, height, RGN_ALIGN_LEFT, RGN_ALIGN_NONE, RGN_ALIGN_TOP, RGN_FLAG_HIDDEN, RGN_TYPE_CHANNELS, RGN_TYPE_PREVIEW, RGN_TYPE_WINDOW, SEQ_VIEW_PREVIEW, SEQ_VIEW_SEQUENCE, SEQ_VIEW_SEQUENCE_PREVIEW, sequencer_find_region(), ARegion::sizey, View2D::tot, UI_DPI_FAC, ARegion::v2d, V2D_IS_INIT, SpaceSeq::view, and WM_event_remove_handlers().
Referenced by ED_spacetype_sequencer().
Definition at line 57 of file space_sequencer.c.
References blender::compositor::area(), NULL, SequencerScopes::reference_ibuf, and SpaceSeq::scopes.
Referenced by sequencer_listener().
Definition at line 749 of file space_sequencer.c.
References C, and ED_region_panels().
Referenced by ED_spacetype_sequencer().
|
static |
Definition at line 738 of file space_sequencer.c.
References wmWindowManager::defaultconf, ED_region_panels_init(), ARegion::handlers, View2D::scroll, SPACE_SEQ, ARegion::v2d, V2D_SCROLL_RIGHT, V2D_SCROLL_VERTICAL_HIDE, WM_event_add_keymap_handler_v2d_mask(), and WM_keymap_ensure().
Referenced by ED_spacetype_sequencer().
const char * sequencer_context_dir = {"edit_mask", NULL} |
Definition at line 405 of file space_sequencer.c.
Referenced by bpy_context_members(), and sequencer_context().