Blender V4.3
space_sequencer.cc File Reference
#include <cmath>
#include <cstdio>
#include <cstring>
#include "DNA_gpencil_legacy_types.h"
#include "DNA_mask_types.h"
#include "DNA_scene_types.h"
#include "MEM_guardedalloc.h"
#include "BLI_blenlib.h"
#include "BLI_math_base.h"
#include "BLF_api.hh"
#include "BKE_global.hh"
#include "BKE_lib_query.hh"
#include "BKE_lib_remap.hh"
#include "BKE_screen.hh"
#include "BKE_sequencer_offscreen.h"
#include "GPU_state.hh"
#include "ED_markers.hh"
#include "ED_screen.hh"
#include "ED_sequencer.hh"
#include "ED_space_api.hh"
#include "ED_time_scrub_ui.hh"
#include "ED_transform.hh"
#include "ED_view3d.hh"
#include "ED_view3d_offscreen.hh"
#include "WM_api.hh"
#include "WM_message.hh"
#include "SEQ_retiming.hh"
#include "SEQ_sequencer.hh"
#include "SEQ_time.hh"
#include "SEQ_transform.hh"
#include "SEQ_utils.hh"
#include "UI_interface.hh"
#include "UI_view2d.hh"
#include "BLO_read_write.hh"
#include "DRW_engine.hh"
#include "sequencer_intern.hh"

Go to the source code of this file.

Functions

static void sequencer_scopes_tag_refresh (ScrArea *area)
 
static ARegionsequencer_find_region (ScrArea *area, short type)
 
static SpaceLinksequencer_create (const ScrArea *, const Scene *scene)
 
static void sequencer_free (SpaceLink *sl)
 
static void sequencer_init (wmWindowManager *, ScrArea *area)
 
static void sequencer_refresh (const bContext *C, ScrArea *area)
 
static SpaceLinksequencer_duplicate (SpaceLink *sl)
 
static void sequencer_listener (const wmSpaceTypeListenerParams *params)
 
static int sequencer_context (const bContext *C, const char *member, bContextDataResult *result)
 
static void SEQUENCER_GGT_navigate (wmGizmoGroupType *gzgt)
 
static void SEQUENCER_GGT_gizmo2d (wmGizmoGroupType *gzgt)
 
static void SEQUENCER_GGT_gizmo2d_translate (wmGizmoGroupType *gzgt)
 
static void SEQUENCER_GGT_gizmo2d_resize (wmGizmoGroupType *gzgt)
 
static void SEQUENCER_GGT_gizmo2d_rotate (wmGizmoGroupType *gzgt)
 
static void sequencer_gizmos ()
 
static bool sequencer_main_region_poll (const RegionPollParams *params)
 
static void sequencer_main_region_init (wmWindowManager *wm, ARegion *region)
 
static void sequencer_main_region_draw (const bContext *C, ARegion *region)
 
static void sequencer_main_region_draw_overlay (const bContext *C, ARegion *region)
 
static void sequencer_main_clamp_view (const bContext *C, ARegion *region)
 
static void sequencer_main_region_clamp_custom_set (const bContext *C, ARegion *region)
 
static void sequencer_main_region_layout (const bContext *C, ARegion *region)
 
static void sequencer_main_region_view2d_changed (const bContext *C, ARegion *region)
 
static void sequencer_main_region_listener (const wmRegionListenerParams *params)
 
static void sequencer_main_region_message_subscribe (const wmRegionMessageSubscribeParams *params)
 
static bool is_mouse_over_retiming_key (const Scene *scene, const Sequence *seq, const View2D *v2d, const ScrArea *area, float mouse_co_region[2])
 
static void sequencer_main_cursor (wmWindow *win, ScrArea *area, ARegion *region)
 
static void sequencer_header_region_init (wmWindowManager *, ARegion *region)
 
static void sequencer_header_region_draw (const bContext *C, ARegion *region)
 
static void sequencer_tools_region_init (wmWindowManager *wm, ARegion *region)
 
static void sequencer_tools_region_draw (const bContext *C, ARegion *region)
 
static bool sequencer_preview_region_poll (const RegionPollParams *params)
 
static void sequencer_preview_region_init (wmWindowManager *wm, ARegion *region)
 
static void sequencer_preview_region_layout (const bContext *C, ARegion *region)
 
static void sequencer_preview_region_view2d_changed (const bContext *C, ARegion *)
 
static bool is_cursor_visible (const SpaceSeq *sseq)
 
static void sequencer_preview_region_draw (const bContext *C, ARegion *region)
 
static void sequencer_preview_region_listener (const wmRegionListenerParams *params)
 
static void sequencer_buttons_region_init (wmWindowManager *wm, ARegion *region)
 
static void sequencer_buttons_region_draw (const bContext *C, ARegion *region)
 
static void sequencer_buttons_region_listener (const wmRegionListenerParams *params)
 
static void sequencer_id_remap (ScrArea *, SpaceLink *slink, const blender::bke::id::IDRemapper &mappings)
 
static void sequencer_foreach_id (SpaceLink *space_link, LibraryForeachIDData *data)
 
static bool sequencer_channel_region_poll (const RegionPollParams *params)
 
static void sequencer_channel_region_init (wmWindowManager *wm, ARegion *region)
 
static void sequencer_channel_region_draw (const bContext *C, ARegion *region)
 
static void sequencer_space_blend_read_data (BlendDataReader *, SpaceLink *sl)
 
static void sequencer_space_blend_write (BlendWriter *writer, SpaceLink *sl)
 
void ED_spacetype_sequencer ()
 

Variables

const char * sequencer_context_dir [] = {"edit_mask", nullptr}
 

Function Documentation

◆ ED_spacetype_sequencer()

void ED_spacetype_sequencer ( )

Definition at line 1071 of file space_sequencer.cc.

References BKE_spacetype_register(), BLI_addhead(), ARegionType::clip_gizmo_events_by_ui, ARegionType::cursor, 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(), ARegionType::event_cursor, G, HEADERY, ARegionType::init, int, ARegionType::keymapflag, ARegionType::layout, ARegionType::listener, ARegionType::message_subscribe, ARegionType::on_view2d_changed, ARegionType::poll, 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_channel_region_poll(), sequencer_context(), sequencer_create(), sequencer_dropboxes(), sequencer_duplicate(), sequencer_foreach_id(), sequencer_free(), sequencer_gizmos(), sequencer_header_region_draw(), sequencer_header_region_init(), sequencer_id_remap(), sequencer_init(), sequencer_keymap(), sequencer_listener(), sequencer_main_cursor(), 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_poll(), 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_poll(), sequencer_preview_region_view2d_changed(), sequencer_refresh(), sequencer_space_blend_read_data(), sequencer_space_blend_write(), sequencer_tools_region_draw(), sequencer_tools_region_init(), sequencer_view3d_fn, ARegionType::snap_size, SPACE_SEQ, STRNCPY, UI_COMPACT_PANEL_WIDTH, UI_SIDEBAR_PANEL_WIDTH, and UI_TOOLBAR_WIDTH.

Referenced by ED_spacetypes_init().

◆ is_cursor_visible()

static bool is_cursor_visible ( const SpaceSeq * sseq)
static

◆ is_mouse_over_retiming_key()

static bool is_mouse_over_retiming_key ( const Scene * scene,
const Sequence * seq,
const View2D * v2d,
const ScrArea * area,
float mouse_co_region[2] )
static

◆ sequencer_buttons_region_draw()

static void sequencer_buttons_region_draw ( const bContext * C,
ARegion * region )
static

Definition at line 967 of file space_sequencer.cc.

References ED_region_panels().

Referenced by ED_spacetype_sequencer().

◆ sequencer_buttons_region_init()

◆ sequencer_buttons_region_listener()

◆ sequencer_channel_region_draw()

static void sequencer_channel_region_draw ( const bContext * C,
ARegion * region )
static

Definition at line 1040 of file space_sequencer.cc.

References draw_channels().

Referenced by ED_spacetype_sequencer().

◆ sequencer_channel_region_init()

◆ sequencer_channel_region_poll()

static bool sequencer_channel_region_poll ( const RegionPollParams * params)
static

Definition at line 1021 of file space_sequencer.cc.

References ELEM, params, SEQ_VIEW_SEQUENCE, and SpaceSeq::view.

Referenced by ED_spacetype_sequencer().

◆ sequencer_context()

◆ sequencer_create()

static SpaceLink * sequencer_create ( const ScrArea * ,
const Scene * scene )
static

◆ sequencer_duplicate()

static SpaceLink * sequencer_duplicate ( SpaceLink * sl)
static

Definition at line 280 of file space_sequencer.cc.

References MEM_dupallocN, and SpaceSeq::runtime.

Referenced by ED_spacetype_sequencer().

◆ sequencer_find_region()

static ARegion * sequencer_find_region ( ScrArea * area,
short type )
static

Definition at line 73 of file space_sequencer.cc.

References LISTBASE_FOREACH.

Referenced by sequencer_refresh().

◆ sequencer_foreach_id()

static void sequencer_foreach_id ( SpaceLink * space_link,
LibraryForeachIDData * data )
static

◆ sequencer_free()

static void sequencer_free ( SpaceLink * sl)
static

Definition at line 200 of file space_sequencer.cc.

References BKE_gpencil_free_data(), SpaceSeq::gpd, and SpaceSeq::runtime.

Referenced by ED_spacetype_sequencer().

◆ SEQUENCER_GGT_gizmo2d()

◆ SEQUENCER_GGT_gizmo2d_resize()

◆ SEQUENCER_GGT_gizmo2d_rotate()

◆ SEQUENCER_GGT_gizmo2d_translate()

◆ SEQUENCER_GGT_navigate()

static void SEQUENCER_GGT_navigate ( wmGizmoGroupType * gzgt)
static

Definition at line 346 of file space_sequencer.cc.

References VIEW2D_GGT_navigate_impl().

Referenced by sequencer_gizmos().

◆ sequencer_gizmos()

◆ sequencer_header_region_draw()

static void sequencer_header_region_draw ( const bContext * C,
ARegion * region )
static

Definition at line 735 of file space_sequencer.cc.

References ED_region_header().

Referenced by ED_spacetype_sequencer().

◆ sequencer_header_region_init()

static void sequencer_header_region_init ( wmWindowManager * ,
ARegion * region )
static

Definition at line 730 of file space_sequencer.cc.

References ED_region_header_init().

Referenced by ED_spacetype_sequencer().

◆ sequencer_id_remap()

static void sequencer_id_remap ( ScrArea * ,
SpaceLink * slink,
const blender::bke::id::IDRemapper & mappings )
static

◆ sequencer_init()

static void sequencer_init ( wmWindowManager * ,
ScrArea * area )
static

Definition at line 213 of file space_sequencer.cc.

References SpaceSeq::runtime.

Referenced by ED_spacetype_sequencer().

◆ sequencer_listener()

◆ sequencer_main_clamp_view()

◆ sequencer_main_cursor()

◆ sequencer_main_region_clamp_custom_set()

◆ sequencer_main_region_draw()

static void sequencer_main_region_draw ( const bContext * C,
ARegion * region )
static

Definition at line 454 of file space_sequencer.cc.

References draw_timeline_seq().

Referenced by ED_spacetype_sequencer().

◆ sequencer_main_region_draw_overlay()

static void sequencer_main_region_draw_overlay ( const bContext * C,
ARegion * region )
static

Definition at line 460 of file space_sequencer.cc.

References draw_timeline_seq_display().

Referenced by ED_spacetype_sequencer().

◆ sequencer_main_region_init()

◆ sequencer_main_region_layout()

static void sequencer_main_region_layout ( const bContext * C,
ARegion * region )
static

◆ sequencer_main_region_listener()

◆ sequencer_main_region_message_subscribe()

◆ sequencer_main_region_poll()

static bool sequencer_main_region_poll ( const RegionPollParams * params)
static

◆ sequencer_main_region_view2d_changed()

static void sequencer_main_region_view2d_changed ( const bContext * C,
ARegion * region )
static

◆ sequencer_preview_region_draw()

◆ sequencer_preview_region_init()

◆ sequencer_preview_region_layout()

static void sequencer_preview_region_layout ( const bContext * C,
ARegion * region )
static

◆ sequencer_preview_region_listener()

◆ sequencer_preview_region_poll()

static bool sequencer_preview_region_poll ( const RegionPollParams * params)
static

◆ sequencer_preview_region_view2d_changed()

static void sequencer_preview_region_view2d_changed ( const bContext * C,
ARegion *  )
static

Definition at line 811 of file space_sequencer.cc.

References CTX_wm_space_seq(), and SpaceSeq::flag.

Referenced by ED_spacetype_sequencer().

◆ sequencer_refresh()

◆ sequencer_scopes_tag_refresh()

static void sequencer_scopes_tag_refresh ( ScrArea * area)
static

Definition at line 63 of file space_sequencer.cc.

References SpaceSeq::runtime.

Referenced by sequencer_listener().

◆ sequencer_space_blend_read_data()

static void sequencer_space_blend_read_data ( BlendDataReader * ,
SpaceLink * sl )
static

◆ sequencer_space_blend_write()

static void sequencer_space_blend_write ( BlendWriter * writer,
SpaceLink * sl )
static

Definition at line 1066 of file space_sequencer.cc.

References BLO_write_struct.

Referenced by ED_spacetype_sequencer().

◆ sequencer_tools_region_draw()

◆ sequencer_tools_region_init()

Variable Documentation

◆ sequencer_context_dir

const char * sequencer_context_dir = {"edit_mask", nullptr}

Definition at line 321 of file space_sequencer.cc.

Referenced by sequencer_context().