Blender  V3.3
Macros | Functions | Variables
screen.c File Reference
#include <math.h>
#include <stdio.h>
#include <string.h>
#include "MEM_guardedalloc.h"
#include "DNA_collection_types.h"
#include "DNA_defaults.h"
#include "DNA_gpencil_types.h"
#include "DNA_mask_types.h"
#include "DNA_scene_types.h"
#include "DNA_screen_types.h"
#include "DNA_space_types.h"
#include "DNA_text_types.h"
#include "DNA_view3d_types.h"
#include "DNA_workspace_types.h"
#include "BLI_ghash.h"
#include "BLI_listbase.h"
#include "BLI_math_vector.h"
#include "BLI_mempool.h"
#include "BLI_rect.h"
#include "BLI_utildefines.h"
#include "BLT_translation.h"
#include "BKE_gpencil.h"
#include "BKE_icons.h"
#include "BKE_idprop.h"
#include "BKE_idtype.h"
#include "BKE_lib_id.h"
#include "BKE_lib_query.h"
#include "BKE_node.h"
#include "BKE_screen.h"
#include "BKE_workspace.h"
#include "BLO_read_write.h"

Go to the source code of this file.

Macros

#define DNA_DEPRECATED_ALLOW
 

Functions

static void screen_free_data (ID *id)
 
static void screen_foreach_id_dopesheet (LibraryForeachIDData *data, bDopeSheet *ads)
 
void BKE_screen_foreach_id_screen_area (LibraryForeachIDData *data, ScrArea *area)
 
static void screen_foreach_id (ID *id, LibraryForeachIDData *data)
 
static void screen_blend_write (BlendWriter *writer, ID *id, const void *id_address)
 
bool BKE_screen_blend_read_data (BlendDataReader *reader, bScreen *screen)
 
static void screen_blend_read_lib (BlendLibReader *reader, ID *id)
 
static void spacetype_free (SpaceType *st)
 
void BKE_spacetypes_free (void)
 
SpaceTypeBKE_spacetype_from_id (int spaceid)
 
ARegionTypeBKE_regiontype_from_id_or_first (const SpaceType *st, int regionid)
 
ARegionTypeBKE_regiontype_from_id (const SpaceType *st, int regionid)
 
const ListBaseBKE_spacetypes_list (void)
 
void BKE_spacetype_register (SpaceType *st)
 
bool BKE_spacetype_exists (int spaceid)
 
void BKE_spacedata_freelist (ListBase *lb)
 
static void panel_list_copy (ListBase *newlb, const ListBase *lb)
 
ARegionBKE_area_region_copy (const SpaceType *st, const ARegion *region)
 
static void region_copylist (SpaceType *st, ListBase *lb_dst, ListBase *lb_src)
 
void BKE_spacedata_copylist (ListBase *lb_dst, ListBase *lb_src)
 
void BKE_spacedata_draw_locks (bool set)
 
ARegionBKE_spacedata_find_region_type (const SpaceLink *slink, const ScrArea *area, int region_type)
 
void BKE_spacedata_callback_id_remap_set (void(*func)(ScrArea *area, SpaceLink *sl, ID *, ID *))
 
void BKE_spacedata_id_unref (struct ScrArea *area, struct SpaceLink *sl, struct ID *id)
 
void BKE_region_callback_refresh_tag_gizmomap_set (void(*callback)(struct wmGizmoMap *))
 
void BKE_screen_gizmo_tag_refresh (struct bScreen *screen)
 
void BKE_region_callback_free_gizmomap_set (void(*callback)(struct wmGizmoMap *))
 
static void area_region_panels_free_recursive (Panel *panel)
 
void BKE_area_region_panels_free (ListBase *panels)
 
void BKE_area_region_free (SpaceType *st, ARegion *region)
 
void BKE_screen_area_free (ScrArea *area)
 
void BKE_screen_area_map_free (ScrAreaMap *area_map)
 
void BKE_screen_free_data (bScreen *screen)
 
ScrEdgeBKE_screen_find_edge (const bScreen *screen, ScrVert *v1, ScrVert *v2)
 
void BKE_screen_sort_scrvert (ScrVert **v1, ScrVert **v2)
 
void BKE_screen_remove_double_scrverts (bScreen *screen)
 
void BKE_screen_remove_double_scredges (bScreen *screen)
 
void BKE_screen_remove_unused_scredges (bScreen *screen)
 
void BKE_screen_remove_unused_scrverts (bScreen *screen)
 
ARegionBKE_region_find_in_listbase_by_type (const ListBase *regionbase, const int region_type)
 
ARegionBKE_area_find_region_type (const ScrArea *area, int region_type)
 
ARegionBKE_area_find_region_active_win (ScrArea *area)
 
ARegionBKE_area_find_region_xy (ScrArea *area, const int regiontype, const int xy[2])
 
ARegionBKE_screen_find_region_xy (bScreen *screen, const int regiontype, const int xy[2])
 
ScrAreaBKE_screen_find_area_from_space (struct bScreen *screen, SpaceLink *sl)
 
ScrAreaBKE_screen_find_big_area (bScreen *screen, const int spacetype, const short min)
 
ScrAreaBKE_screen_area_map_find_area_xy (const ScrAreaMap *areamap, const int spacetype, const int xy[2])
 
ScrAreaBKE_screen_find_area_xy (bScreen *screen, const int spacetype, const int xy[2])
 
void BKE_screen_view3d_sync (View3D *v3d, struct Scene *scene)
 
void BKE_screen_view3d_scene_sync (bScreen *screen, Scene *scene)
 
void BKE_screen_view3d_shading_init (View3DShading *shading)
 
ARegionBKE_screen_find_main_region_at_xy (bScreen *screen, const int space_type, const int xy[2])
 
float BKE_screen_view3d_zoom_to_fac (float camzoom)
 
float BKE_screen_view3d_zoom_from_fac (float zoomfac)
 
bool BKE_screen_is_fullscreen_area (const bScreen *screen)
 
bool BKE_screen_is_used (const bScreen *screen)
 
void BKE_screen_header_alignment_reset (bScreen *screen)
 
void BKE_screen_view3d_shading_blend_write (BlendWriter *writer, View3DShading *shading)
 
void BKE_screen_view3d_shading_blend_read_data (BlendDataReader *reader, View3DShading *shading)
 
static void write_region (BlendWriter *writer, ARegion *region, int spacetype)
 
static void write_uilist (BlendWriter *writer, uiList *ui_list)
 
static void write_space_outliner (BlendWriter *writer, SpaceOutliner *space_outliner)
 
static void write_panel_list (BlendWriter *writer, ListBase *lb)
 
static void write_area (BlendWriter *writer, ScrArea *area)
 
void BKE_screen_area_map_blend_write (BlendWriter *writer, ScrAreaMap *area_map)
 
static void direct_link_panel_list (BlendDataReader *reader, ListBase *lb)
 
static void direct_link_region (BlendDataReader *reader, ARegion *region, int spacetype)
 
void BKE_screen_view3d_do_versions_250 (View3D *v3d, ListBase *regions)
 
static void direct_link_area (BlendDataReader *reader, ScrArea *area)
 
bool BKE_screen_area_map_blend_read_data (BlendDataReader *reader, ScrAreaMap *area_map)
 
void BKE_screen_area_blend_read_lib (BlendLibReader *reader, ID *parent_id, ScrArea *area)
 

Variables

IDTypeInfo IDType_ID_SCR
 
static ListBase spacetypes = {NULL, NULL}
 
static void(* spacedata_id_remap_cb )(struct ScrArea *area, struct SpaceLink *sl, ID *old_id, ID *new_id) = NULL
 
static void(* region_refresh_tag_gizmomap_callback )(struct wmGizmoMap *) = NULL
 
static void(* region_free_gizmomap_callback )(struct wmGizmoMap *) = NULL
 

Macro Definition Documentation

◆ DNA_DEPRECATED_ALLOW

#define DNA_DEPRECATED_ALLOW

Definition at line 9 of file screen.c.

Function Documentation

◆ area_region_panels_free_recursive()

static void area_region_panels_free_recursive ( Panel panel)
static

◆ BKE_area_find_region_active_win()

ARegion* BKE_area_find_region_active_win ( ScrArea area)

◆ BKE_area_find_region_type()

ARegion* BKE_area_find_region_type ( const ScrArea area,
int  region_type 
)

◆ BKE_area_find_region_xy()

ARegion* BKE_area_find_region_xy ( ScrArea area,
const int  regiontype,
const int  xy[2] 
)

◆ BKE_area_region_copy()

ARegion* BKE_area_region_copy ( const SpaceType st,
const ARegion region 
)

◆ BKE_area_region_free()

void BKE_area_region_free ( struct SpaceType st,
struct ARegion region 
)

◆ BKE_area_region_panels_free()

void BKE_area_region_panels_free ( ListBase panels)

◆ BKE_region_callback_free_gizmomap_set()

void BKE_region_callback_free_gizmomap_set ( void(*)(struct wmGizmoMap *)  callback)

Gizmo-maps of a region need to be freed with the region. Uses callback to avoid low-level call.

Definition at line 600 of file screen.c.

References callback, and region_free_gizmomap_callback.

Referenced by WM_init().

◆ BKE_region_callback_refresh_tag_gizmomap_set()

void BKE_region_callback_refresh_tag_gizmomap_set ( void(*)(struct wmGizmoMap *)  callback)

Definition at line 575 of file screen.c.

References callback, and region_refresh_tag_gizmomap_callback.

Referenced by WM_init().

◆ BKE_region_find_in_listbase_by_type()

ARegion* BKE_region_find_in_listbase_by_type ( const ListBase regionbase,
const int  region_type 
)

Definition at line 859 of file screen.c.

References LISTBASE_FOREACH, and NULL.

◆ BKE_regiontype_from_id()

ARegionType* BKE_regiontype_from_id ( const SpaceType st,
int  regionid 
)

Definition at line 376 of file screen.c.

References LISTBASE_FOREACH, NULL, and usdtokens::st().

Referenced by BKE_area_region_copy(), and BKE_area_region_free().

◆ BKE_regiontype_from_id_or_first()

ARegionType* BKE_regiontype_from_id_or_first ( const SpaceType st,
int  regionid 
)

Definition at line 363 of file screen.c.

References LISTBASE_FOREACH, and usdtokens::st().

◆ BKE_screen_area_blend_read_lib()

void BKE_screen_area_blend_read_lib ( BlendLibReader reader,
ID parent_id,
ScrArea area 
)

◆ BKE_screen_area_free()

void BKE_screen_area_free ( struct ScrArea area)

◆ BKE_screen_area_map_blend_read_data()

bool BKE_screen_area_map_blend_read_data ( struct BlendDataReader reader,
struct ScrAreaMap area_map 
)

◆ BKE_screen_area_map_blend_write()

void BKE_screen_area_map_blend_write ( BlendWriter writer,
ScrAreaMap area_map 
)

◆ BKE_screen_area_map_find_area_xy()

ScrArea* BKE_screen_area_map_find_area_xy ( const ScrAreaMap areamap,
const int  spacetype,
const int  xy[2] 
)

◆ BKE_screen_area_map_free()

void BKE_screen_area_map_free ( ScrAreaMap area_map)

◆ BKE_screen_blend_read_data()

bool BKE_screen_blend_read_data ( struct BlendDataReader reader,
struct bScreen screen 
)

◆ BKE_screen_find_area_from_space()

ScrArea* BKE_screen_find_area_from_space ( struct bScreen screen,
SpaceLink sl 
)

◆ BKE_screen_find_area_xy()

ScrArea* BKE_screen_find_area_xy ( bScreen screen,
const int  spacetype,
const int  xy[2] 
)

Definition at line 971 of file screen.c.

References AREAMAP_FROM_SCREEN, BKE_screen_area_map_find_area_xy(), and xy.

Referenced by BKE_screen_find_main_region_at_xy().

◆ BKE_screen_find_big_area()

ScrArea* BKE_screen_find_big_area ( struct bScreen screen,
int  spacetype,
short  min 
)
Note
Using this function is generally a last resort, you really want to be using the context when you can - campbell

Definition at line 937 of file screen.c.

References blender::compositor::area(), bScreen::areabase, ELEM, LISTBASE_FOREACH, NULL, size(), and SPACE_TYPE_ANY.

Referenced by bake_init_api_data(), blend_file_thumb_from_camera(), ED_view3d_context_activate(), render_view_open(), texture_paint_image_from_view_exec(), texture_paint_image_from_view_poll(), wm_file_write(), and wm_window_new_exec().

◆ BKE_screen_find_edge()

ScrEdge* BKE_screen_find_edge ( const bScreen screen,
ScrVert v1,
ScrVert v2 
)

◆ BKE_screen_find_main_region_at_xy()

ARegion* BKE_screen_find_main_region_at_xy ( bScreen screen,
const int  space_type,
const int  xy[2] 
)

◆ BKE_screen_find_region_xy()

ARegion* BKE_screen_find_region_xy ( bScreen screen,
const int  regiontype,
const int  xy[2] 
)

Definition at line 914 of file screen.c.

References BLI_rcti_isect_pt_v(), ELEM, LISTBASE_FOREACH, NULL, bScreen::regionbase, RGN_TYPE_ANY, and xy.

◆ BKE_screen_foreach_id_screen_area()

void BKE_screen_foreach_id_screen_area ( struct LibraryForeachIDData data,
struct ScrArea area 
)

◆ BKE_screen_free_data()

void BKE_screen_free_data ( struct bScreen screen)

Free (or release) any data used by this screen (does not free the screen itself).

Definition at line 697 of file screen.c.

References bScreen::id, and screen_free_data().

Referenced by screen_data_copy().

◆ BKE_screen_gizmo_tag_refresh()

void BKE_screen_gizmo_tag_refresh ( struct bScreen screen)

◆ BKE_screen_header_alignment_reset()

void BKE_screen_header_alignment_reset ( bScreen screen)

◆ BKE_screen_is_fullscreen_area()

bool BKE_screen_is_fullscreen_area ( const bScreen screen)

Definition at line 1037 of file screen.c.

References ELEM, SCREENFULL, SCREENMAXIMIZED, and bScreen::state.

◆ BKE_screen_is_used()

bool BKE_screen_is_used ( const bScreen screen)

Definition at line 1042 of file screen.c.

References bScreen::winid.

◆ BKE_screen_remove_double_scredges()

void BKE_screen_remove_double_scredges ( bScreen screen)

◆ BKE_screen_remove_double_scrverts()

void BKE_screen_remove_double_scrverts ( bScreen screen)

◆ BKE_screen_remove_unused_scredges()

void BKE_screen_remove_unused_scredges ( bScreen screen)

◆ BKE_screen_remove_unused_scrverts()

void BKE_screen_remove_unused_scrverts ( bScreen screen)

◆ BKE_screen_sort_scrvert()

void BKE_screen_sort_scrvert ( ScrVert **  v1,
ScrVert **  v2 
)

◆ BKE_screen_view3d_do_versions_250()

void BKE_screen_view3d_do_versions_250 ( struct View3D v3d,
ListBase regions 
)

◆ BKE_screen_view3d_scene_sync()

void BKE_screen_view3d_scene_sync ( bScreen screen,
Scene scene 
)

◆ BKE_screen_view3d_shading_blend_read_data()

void BKE_screen_view3d_shading_blend_read_data ( BlendDataReader reader,
View3DShading shading 
)

◆ BKE_screen_view3d_shading_blend_write()

void BKE_screen_view3d_shading_blend_write ( BlendWriter writer,
View3DShading shading 
)

Definition at line 1071 of file screen.c.

References IDP_BlendWrite(), and View3DShading::prop.

Referenced by scene_blend_write(), write_area(), and write_wm_xr_data().

◆ BKE_screen_view3d_shading_init()

void BKE_screen_view3d_shading_init ( View3DShading shading)

Definition at line 1007 of file screen.c.

References DNA_struct_default_get.

Referenced by blo_do_versions_280(), and object_preview_render().

◆ BKE_screen_view3d_sync()

void BKE_screen_view3d_sync ( View3D v3d,
struct Scene scene 
)

◆ BKE_screen_view3d_zoom_from_fac()

float BKE_screen_view3d_zoom_from_fac ( float  zoomfac)

◆ BKE_screen_view3d_zoom_to_fac()

float BKE_screen_view3d_zoom_to_fac ( float  camzoom)

◆ BKE_spacedata_callback_id_remap_set()

void BKE_spacedata_callback_id_remap_set ( void(*)(ScrArea *area, SpaceLink *sl, ID *, ID *)  func)

Definition at line 558 of file screen.c.

References spacedata_id_remap_cb.

◆ BKE_spacedata_copylist()

void BKE_spacedata_copylist ( ListBase lb_dst,
ListBase lb_src 
)
Parameters
lb_dstshould be empty (will be cleared).

Definition at line 499 of file screen.c.

References BKE_spacetype_from_id(), BLI_addtail(), BLI_listbase_clear(), LISTBASE_FOREACH, region_copylist(), SpaceLink::regionbase, and usdtokens::st().

Referenced by ED_area_data_copy().

◆ BKE_spacedata_draw_locks()

void BKE_spacedata_draw_locks ( bool  set)

Facility to set locks for drawing to survive (render) threads accessing drawing data.

Note
Lock can become bit-flag too.
Should be replaced in future by better local data handling for threads.

Definition at line 516 of file screen.c.

References LISTBASE_FOREACH, spacetypes, and usdtokens::st().

Referenced by dpaint_bake_endjob(), dpaint_bake_startjob(), fluid_bake_endjob(), fluid_bake_startjob(), fluid_free_endjob(), fluid_free_startjob(), render_drawlock(), and WM_set_locked_interface().

◆ BKE_spacedata_find_region_type()

ARegion* BKE_spacedata_find_region_type ( const SpaceLink slink,
const ScrArea area,
int  region_type 
)

◆ BKE_spacedata_freelist()

void BKE_spacedata_freelist ( ListBase lb)

◆ BKE_spacedata_id_unref()

void BKE_spacedata_id_unref ( struct ScrArea area,
struct SpaceLink sl,
struct ID id 
)

Currently unused!

Definition at line 563 of file screen.c.

References blender::compositor::area(), NULL, and spacedata_id_remap_cb.

◆ BKE_spacetype_exists()

bool BKE_spacetype_exists ( int  spaceid)

Definition at line 404 of file screen.c.

References BKE_spacetype_from_id(), and NULL.

Referenced by direct_link_area().

◆ BKE_spacetype_from_id()

SpaceType* BKE_spacetype_from_id ( int  spaceid)

◆ BKE_spacetype_register()

void BKE_spacetype_register ( SpaceType st)

◆ BKE_spacetypes_free()

void BKE_spacetypes_free ( void  )

Definition at line 344 of file screen.c.

References BLI_freelistN(), LISTBASE_FOREACH, spacetype_free(), spacetypes, and usdtokens::st().

Referenced by BKE_blender_free().

◆ BKE_spacetypes_list()

const ListBase* BKE_spacetypes_list ( void  )

Definition at line 386 of file screen.c.

References spacetypes.

Referenced by ED_spacemacros_init(), ED_spacetypes_init(), and ED_spacetypes_keymap().

◆ direct_link_area()

static void direct_link_area ( BlendDataReader reader,
ScrArea area 
)
static

Definition at line 1462 of file screen.c.

References SpaceGraph::ads, SpaceNla::ads, blender::compositor::area(), AREA_FLAG_ACTIVE_TOOL_UPDATE, SpaceFile::asset_params, FileAssetSelectParams::base_params, BKE_gpencil_blend_read_data(), BKE_screen_view3d_do_versions_250(), BKE_screen_view3d_shading_blend_read_data(), BKE_spacetype_exists(), BLI_addtail(), BLI_listbase_clear(), BLI_mempool_alloc(), BLI_MEMPOOL_ALLOW_ITER, BLI_mempool_create(), BLI_remlink(), BLO_read_data_address, BLO_read_get_new_data_address_no_us(), BLO_read_list(), SpaceSpreadsheet::columns, blender::compositor::context, SpaceSpreadsheet::context_path, TreeStore::data, direct_link_region(), SpaceNode::edittree, SpaceFile::files, ListBase::first, SpaceFile::folder_histories, SpaceFile::folders_next, SpaceFile::folders_prev, SpaceSeq::gpd, SpaceImage::gpd, SpaceNode::gpd, SequencerScopes::histogram_ibuf, SpaceConsole::history, SpaceImage::iuser, ListBase::last, SpaceFile::layout, LISTBASE_FOREACH, LISTBASE_FOREACH_MUTABLE, View3D::localvd, SpaceProperties::mainb, SpaceProperties::mainbo, SpaceProperties::mainbuser, MEM_callocN, MEM_freeN, SpreadsheetContextModifier::modifier_name, newdataadr(), blender::ed::space_node::node_context(), NULL, OB_RENDER, OB_SOLID, Scopes::ok, MovieClipScopes::ok, SpaceFile::op, SpaceFile::params, SpaceProperties::path, View3DShading::prev_type, SpaceFile::previews_timer, SequencerScopes::reference_ibuf, SpaceLink::regionbase, FileSelectParams::rename_id, SpaceSpreadsheet::row_filters, SpaceAction::runtime, SpaceProperties::runtime, SpaceOutliner::runtime, SpaceGraph::runtime, SpaceSeq::runtime, SpaceFile::runtime, SpaceNode::runtime, SpaceSpreadsheet::runtime, View3D::runtime, ImageUser::scene, SpaceSeq::scopes, SpaceImage::scopes, SpaceClip::scopes, SpaceConsole::scrollback, SequencerScopes::sep_waveform_ibuf, View3D::shading, SO_TREESTORE_CLEANUP, SPACE_ACTION, SPACE_CLIP, SPACE_CONSOLE, SPACE_EMPTY, SPACE_FILE, SPACE_GRAPH, SPACE_IMAGE, SPACE_INFO, SPACE_NLA, SPACE_NODE, SPACE_OUTLINER, SPACE_PROPERTIES, SPACE_SEQ, SPACE_SPREADSHEET, SPACE_TEXT, SPACE_VIEW3D, SpaceLink::spacetype, SpaceInfo::spacetype, SPREADSHEET_CONTEXT_MODIFIER, SPREADSHEET_CONTEXT_NODE, SPREADSHEET_CONTEXT_OBJECT, usdtokens::st(), SpaceOutliner::storeflag, SpaceFile::tags, SpaceProperties::texuser, MovieClipScopes::track_preview, MovieClipScopes::track_search, SpaceOutliner::tree, SpaceNode::treepath, SpaceOutliner::treestore, View3DShading::type, TreeStore::usedelem, Scopes::vecscope, SequencerScopes::vector_ibuf, Scopes::waveform_1, Scopes::waveform_2, Scopes::waveform_3, SequencerScopes::waveform_ibuf, and SequencerScopes::zebra_ibuf.

Referenced by BKE_screen_area_map_blend_read_data().

◆ direct_link_panel_list()

static void direct_link_panel_list ( BlendDataReader reader,
ListBase lb 
)
static

Definition at line 1363 of file screen.c.

References BLO_read_list(), LISTBASE_FOREACH, and NULL.

Referenced by direct_link_region().

◆ direct_link_region()

static void direct_link_region ( BlendDataReader reader,
ARegion region,
int  spacetype 
)
static

◆ panel_list_copy()

static void panel_list_copy ( ListBase newlb,
const ListBase lb 
)
static

◆ region_copylist()

static void region_copylist ( SpaceType st,
ListBase lb_dst,
ListBase lb_src 
)
static

◆ screen_blend_read_lib()

static void screen_blend_read_lib ( BlendLibReader reader,
ID id 
)
static

◆ screen_blend_write()

static void screen_blend_write ( BlendWriter writer,
ID id,
const void id_address 
)
static

◆ screen_foreach_id()

static void screen_foreach_id ( ID id,
LibraryForeachIDData data 
)
static

◆ screen_foreach_id_dopesheet()

static void screen_foreach_id_dopesheet ( LibraryForeachIDData data,
bDopeSheet ads 
)
static

◆ screen_free_data()

static void screen_free_data ( ID id)
static

◆ spacetype_free()

static void spacetype_free ( SpaceType st)
static

◆ write_area()

static void write_area ( BlendWriter writer,
ScrArea area 
)
static

◆ write_panel_list()

static void write_panel_list ( BlendWriter writer,
ListBase lb 
)
static

Definition at line 1170 of file screen.c.

References BLO_write_struct, and LISTBASE_FOREACH.

Referenced by write_area().

◆ write_region()

static void write_region ( BlendWriter writer,
ARegion region,
int  spacetype 
)
static

◆ write_space_outliner()

static void write_space_outliner ( BlendWriter writer,
SpaceOutliner space_outliner 
)
static

◆ write_uilist()

static void write_uilist ( BlendWriter writer,
uiList ui_list 
)
static

Definition at line 1118 of file screen.c.

References BLO_write_struct, IDP_BlendWrite(), and uiList::properties.

Referenced by write_area().

Variable Documentation

◆ IDType_ID_SCR

IDTypeInfo IDType_ID_SCR
Initial value:
= {
.id_code = ID_SCR,
.id_filter = FILTER_ID_SCR,
.main_listbase_index = INDEX_ID_SCR,
.struct_size = sizeof(bScreen),
.name = "Screen",
.name_plural = "screens",
.translation_context = BLT_I18NCONTEXT_ID_SCREEN,
.asset_type_info = NULL,
.copy_data = NULL,
.free_data = screen_free_data,
.make_local = NULL,
.foreach_id = screen_foreach_id,
.foreach_cache = NULL,
.foreach_path = NULL,
.owner_get = NULL,
.blend_write = screen_blend_write,
.blend_read_data = NULL,
.blend_read_lib = screen_blend_read_lib,
.blend_read_expand = NULL,
.blend_read_undo_preserve = NULL,
.lib_override_apply_post = NULL,
}
@ IDTYPE_FLAGS_NO_ANIMDATA
Definition: BKE_idtype.h:41
@ IDTYPE_FLAGS_ONLY_APPEND
Definition: BKE_idtype.h:36
@ IDTYPE_FLAGS_NO_COPY
Definition: BKE_idtype.h:30
#define BLT_I18NCONTEXT_ID_SCREEN
#define FILTER_ID_SCR
Definition: DNA_ID.h:935
@ INDEX_ID_SCR
Definition: DNA_ID.h:1052
@ ID_SCR
Definition: DNA_ID_enums.h:60
struct bScreen bScreen
static void init_data(ModifierData *md)
static void screen_blend_write(BlendWriter *writer, ID *id, const void *id_address)
Definition: screen.c:227
static void screen_blend_read_lib(BlendLibReader *reader, ID *id)
Definition: screen.c:263
static void screen_foreach_id(ID *id, LibraryForeachIDData *data)
Definition: screen.c:215
static void screen_free_data(ID *id)
Definition: screen.c:57

Definition at line 278 of file screen.c.

◆ region_free_gizmomap_callback

void(* region_free_gizmomap_callback) (struct wmGizmoMap *) ( struct wmGizmoMap ) = NULL
static

Avoid bad-level calls to #WM_gizmomap_delete.

Definition at line 598 of file screen.c.

Referenced by BKE_area_region_free(), and BKE_region_callback_free_gizmomap_set().

◆ region_refresh_tag_gizmomap_callback

void(* region_refresh_tag_gizmomap_callback) (struct wmGizmoMap *) ( struct wmGizmoMap ) = NULL
static

Avoid bad-level calls to WM_gizmomap_tag_refresh.

Definition at line 573 of file screen.c.

Referenced by BKE_region_callback_refresh_tag_gizmomap_set(), and BKE_screen_gizmo_tag_refresh().

◆ spacedata_id_remap_cb

void(* spacedata_id_remap_cb) (struct ScrArea *area, struct SpaceLink *sl, ID *old_id, ID *new_id) ( struct ScrArea area,
struct SpaceLink sl,
ID old_id,
ID new_id 
) = NULL
static

Definition at line 553 of file screen.c.

Referenced by BKE_spacedata_callback_id_remap_set(), and BKE_spacedata_id_unref().

◆ spacetypes

ListBase spacetypes = {NULL, NULL}
static