25 #define DNA_DEPRECATED_ALLOW
107 switch (sl->spacetype) {
191 const bool is_private_nodetree = snode->
id !=
NULL &&
212 if (path->nodetree ==
NULL) {
285 printf(
"Error reading Screen %s... removing it.\n", screen->
id.
name + 2);
313 .struct_size =
sizeof(
bScreen),
315 .name_plural =
"screens",
324 .foreach_cache =
NULL,
329 .blend_read_data =
NULL,
331 .blend_read_expand =
NULL,
333 .blend_read_undo_preserve =
NULL,
335 .lib_override_apply_post =
NULL,
353 if (pt->rna_ext.free) {
354 pt->rna_ext.free(pt->rna_ext.data);
361 if (ht->rna_ext.free) {
362 ht->rna_ext.free(ht->rna_ext.data);
385 if (st->spaceid == spaceid) {
395 if (art->regionid == regionid) {
401 "Error, region type %d missing in - name:\"%s\", id:%d\n", regionid, st->
name, st->
spaceid);
408 if (art->regionid == regionid) {
425 printf(
"error: redefinition of spacetype %s\n", stype->
name);
452 if (st && st->
free) {
468 for (; new_panel; new_panel = new_panel->
next, panel = panel->
next) {
552 art->do_lock = art->lock;
555 art->do_lock =
false;
569 const bool is_slink_active = slink ==
area->spacedata.first;
576 if (region_iter->regiontype == region_type) {
577 region = region_iter;
624 if (region->gizmo_map !=
NULL) {
668 if (art && art->
free) {
673 printf(
"regiondata free error\n");
683 if (uilst->dyn_data) {
693 if (uilst->properties) {
748 if (se->v1 ==
v1 && se->v2 ==
v2) {
768 if (verg->newv ==
NULL) {
772 if (
v1->vec.x == verg->vec.x &&
v1->vec.y == verg->vec.y) {
785 se->v1 = se->v1->newv;
788 se->v2 = se->v2->newv;
794 if (
area->v1->newv) {
797 if (
area->v2->newv) {
800 if (
area->v3->newv) {
803 if (
area->v4->newv) {
824 if (verg->v1 == se->
v1 && verg->v2 == se->
v2) {
840 printf(
"error: area %d edge 1 doesn't exist\n",
a);
847 printf(
"error: area %d edge 2 doesn't exist\n",
a);
854 printf(
"error: area %d edge 3 doesn't exist\n",
a);
861 printf(
"error: area %d edge 4 doesn't exist\n",
a);
909 if (region->regiontype == region_type) {
990 if (min <= area->winx && min <= area->winy) {
992 if (
size > maxsize) {
1004 const int spacetype,
1057 memcpy(shading, shading_default,
sizeof(*shading));
1061 const int space_type,
1082 return powf(((
float)
M_SQRT2 + camzoom / 50.0f), 2.0f) / 4.0f;
1087 return ((
sqrtf(4.0f * zoomfac) - (
float)
M_SQRT2) * 50.0f);
1097 return (screen->
winid != 0);
1110 region->alignment = alignment;
1126 if (shading->
prop) {
1133 if (shading->
prop) {
1148 switch (spacetype) {
1162 printf(
"regiondata write missing!\n");
1166 printf(
"regiondata write missing!\n");
1203 ts_flat.totelem = elems;
1204 ts_flat.
data = data_addr;
1395 area->butspacetype =
area->spacetype;
1412 panel->runtime_flag = 0;
1413 panel->activedata =
NULL;
1415 panel->runtime.custom_data_ptr =
NULL;
1432 ui_list->type =
NULL;
1433 ui_list->dyn_data =
NULL;
1492 rv3d->
persp = (char)v3d->persp;
1493 rv3d->
view = (
char)v3d->view;
1494 rv3d->
dist = v3d->dist;
1517 area->region_active_win = -1;
1527 area->butspacetype =
area->spacetype;
1538 if (
area->spacedata.first ==
NULL) {
1609 for (
int i = 0; i < ts->
usedelem; i++) {
1611 *new_elem = elems[i];
1702 cl->len_alloc = cl->len + 1;
1792 if (se->v1 ==
NULL) {
1806 memset(&
area->runtime, 0x0,
sizeof(
area->runtime));
1953 for (; path; path = path_next) {
1954 path_next = path->
next;
void BKE_gpencil_blend_read_data(struct BlendDataReader *reader, struct bGPdata *gpd)
void BKE_previewimg_free(struct PreviewImage **prv)
void BKE_previewimg_blend_read(struct BlendDataReader *reader, struct PreviewImage *prv)
void BKE_previewimg_blend_write(struct BlendWriter *writer, const struct PreviewImage *prv)
void IDP_BlendWrite(struct BlendWriter *writer, const struct IDProperty *prop)
#define IDP_BlendDataRead(reader, prop)
void IDP_FreeProperty(struct IDProperty *prop)
@ IDTYPE_FLAGS_NO_MAKELOCAL
@ IDTYPE_FLAGS_NO_ANIMDATA
void BKE_id_blend_write(struct BlendWriter *writer, struct ID *id)
#define BKE_LIB_FOREACHID_PROCESS(_data, _id_super, _cb_flag)
int BKE_lib_query_foreachid_process_flags_get(struct LibraryForeachIDData *data)
#define BKE_LIB_FOREACHID_PROCESS_ID(_data, _id, _cb_flag)
struct bNodeTree * ntreeFromID(struct ID *id)
#define LISTBASE_FOREACH(type, var, list)
void void void void void BLI_duplicatelist(struct ListBase *dst, const struct ListBase *src) ATTR_NONNULL(1
#define LISTBASE_FOREACH_MUTABLE(type, var, list)
BLI_INLINE void BLI_listbase_clear(struct ListBase *lb)
#define LISTBASE_FOREACH_INDEX(type, var, list, index_var)
void void BLI_freelistN(struct ListBase *listbase) ATTR_NONNULL(1)
void BLI_addtail(struct ListBase *listbase, void *vlink) ATTR_NONNULL(1)
void BLI_remlink(struct ListBase *listbase, void *vlink) ATTR_NONNULL(1)
int BLI_findindex(const struct ListBase *listbase, const void *vlink) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(1)
void * BLI_findlink(const struct ListBase *listbase, int number) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(1)
void copy_qt_qt(float q[4], const float a[4])
MINLINE void copy_v3_v3(float r[3], const float a[3])
void BLI_mempool_iternew(BLI_mempool *pool, BLI_mempool_iter *iter) ATTR_NONNULL()
void * BLI_mempool_iterstep(BLI_mempool_iter *iter) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL()
void void void void * BLI_mempool_as_arrayN(BLI_mempool *pool, const char *allocstr) ATTR_MALLOC ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(1
BLI_mempool * BLI_mempool_create(unsigned int esize, unsigned int totelem, unsigned int pchunk, unsigned int flag) ATTR_MALLOC ATTR_WARN_UNUSED_RESULT
void * BLI_mempool_alloc(BLI_mempool *pool) ATTR_MALLOC ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(1)
int BLI_mempool_len(BLI_mempool *pool) ATTR_NONNULL(1)
bool BLI_rcti_isect_pt(const struct rcti *rect, const int x, const int y)
#define POINTER_OFFSET(v, ofs)
Compatibility-like things for windows.
#define BLO_read_data_address(reader, ptr_p)
void * BLO_read_get_new_data_address_no_us(BlendDataReader *reader, const void *old_address)
#define BLO_write_struct_array_at_address(writer, struct_name, array_size, address, data_ptr)
#define BLO_write_struct_at_address_with_filecode(writer, filecode, struct_name, address, data_ptr)
#define BLO_write_struct(writer, struct_name, data_ptr)
void BLO_read_list(BlendDataReader *reader, struct ListBase *list)
void BLO_write_string(BlendWriter *writer, const char *data_ptr)
#define BLO_read_id_address(reader, lib, id_ptr_p)
#define BLO_write_struct_list(writer, struct_name, list_ptr)
void BLO_write_raw(BlendWriter *writer, size_t size_in_bytes, const void *data_ptr)
bool BLO_write_is_undo(BlendWriter *writer)
#define BLO_write_struct_at_address(writer, struct_name, address, data_ptr)
#define BLT_I18NCONTEXT_ID_SCREEN
void BPY_callback_screen_free(struct ARegionType *art)
Object groups, one object can be in many groups at once.
#define DNA_struct_default_get(struct_name)
#define AREAMAP_FROM_SCREEN(screen)
@ AREA_FLAG_ACTIVE_TOOL_UPDATE
@ RGN_FLAG_TEMP_REGIONDATA
@ RGN_FLAG_SEARCH_FILTER_ACTIVE
@ SPREADSHEET_CONTEXT_OBJECT
@ SPREADSHEET_CONTEXT_MODIFIER
@ SPREADSHEET_CONTEXT_NODE
#define SCRIPT_SET_NULL(_script)
@ FILE_TAG_REBUILD_MAIN_FILES
_GL_VOID GLfloat value _GL_VOID_RET _GL_VOID const GLuint GLboolean *residences _GL_BOOL_RET _GL_VOID GLsizei GLfloat GLfloat GLfloat GLfloat const GLubyte *bitmap _GL_VOID_RET _GL_VOID GLenum const void *lists _GL_VOID_RET _GL_VOID const GLdouble *equation _GL_VOID_RET _GL_VOID GLdouble GLdouble blue _GL_VOID_RET _GL_VOID GLfloat GLfloat blue _GL_VOID_RET _GL_VOID GLint GLint blue _GL_VOID_RET _GL_VOID GLshort GLshort blue _GL_VOID_RET _GL_VOID GLubyte GLubyte blue _GL_VOID_RET _GL_VOID GLuint GLuint blue _GL_VOID_RET _GL_VOID GLushort GLushort blue _GL_VOID_RET _GL_VOID GLbyte GLbyte GLbyte alpha _GL_VOID_RET _GL_VOID GLdouble GLdouble GLdouble alpha _GL_VOID_RET _GL_VOID GLfloat GLfloat GLfloat alpha _GL_VOID_RET _GL_VOID GLint GLint GLint alpha _GL_VOID_RET _GL_VOID GLshort GLshort GLshort alpha _GL_VOID_RET _GL_VOID GLubyte GLubyte GLubyte alpha _GL_VOID_RET _GL_VOID GLuint GLuint GLuint alpha _GL_VOID_RET _GL_VOID GLushort GLushort GLushort alpha _GL_VOID_RET _GL_VOID GLenum mode _GL_VOID_RET _GL_VOID GLint y
_GL_VOID GLfloat value _GL_VOID_RET _GL_VOID const GLuint GLboolean *residences _GL_BOOL_RET _GL_VOID GLsizei GLfloat GLfloat GLfloat GLfloat const GLubyte *bitmap _GL_VOID_RET _GL_VOID GLenum const void *lists _GL_VOID_RET _GL_VOID const GLdouble *equation _GL_VOID_RET _GL_VOID GLdouble GLdouble blue _GL_VOID_RET _GL_VOID GLfloat GLfloat blue _GL_VOID_RET _GL_VOID GLint GLint blue _GL_VOID_RET _GL_VOID GLshort GLshort blue _GL_VOID_RET _GL_VOID GLubyte GLubyte blue _GL_VOID_RET _GL_VOID GLuint GLuint blue _GL_VOID_RET _GL_VOID GLushort GLushort blue _GL_VOID_RET _GL_VOID GLbyte GLbyte GLbyte alpha _GL_VOID_RET _GL_VOID GLdouble GLdouble GLdouble alpha _GL_VOID_RET _GL_VOID GLfloat GLfloat GLfloat alpha _GL_VOID_RET _GL_VOID GLint GLint GLint alpha _GL_VOID_RET _GL_VOID GLshort GLshort GLshort alpha _GL_VOID_RET _GL_VOID GLubyte GLubyte GLubyte alpha _GL_VOID_RET _GL_VOID GLuint GLuint GLuint alpha _GL_VOID_RET _GL_VOID GLushort GLushort GLushort alpha _GL_VOID_RET _GL_VOID GLenum mode _GL_VOID_RET _GL_VOID GLint GLsizei GLsizei GLenum type _GL_VOID_RET _GL_VOID GLsizei GLenum GLenum const void *pixels _GL_VOID_RET _GL_VOID const void *pointer _GL_VOID_RET _GL_VOID GLdouble v _GL_VOID_RET _GL_VOID GLfloat v _GL_VOID_RET _GL_VOID GLint GLint i2 _GL_VOID_RET _GL_VOID GLint j _GL_VOID_RET _GL_VOID GLfloat param _GL_VOID_RET _GL_VOID GLint param _GL_VOID_RET _GL_VOID GLdouble GLdouble GLdouble GLdouble GLdouble zFar _GL_VOID_RET _GL_UINT GLdouble *equation _GL_VOID_RET _GL_VOID GLenum GLint *params _GL_VOID_RET _GL_VOID GLenum GLfloat *v _GL_VOID_RET _GL_VOID GLenum GLfloat *params _GL_VOID_RET _GL_VOID GLfloat *values _GL_VOID_RET _GL_VOID GLushort *values _GL_VOID_RET _GL_VOID GLenum GLfloat *params _GL_VOID_RET _GL_VOID GLenum GLdouble *params _GL_VOID_RET _GL_VOID GLenum GLint *params _GL_VOID_RET _GL_VOID GLsizei const void *pointer _GL_VOID_RET _GL_VOID GLsizei const void *pointer _GL_VOID_RET _GL_BOOL GLfloat param _GL_VOID_RET _GL_VOID GLint param _GL_VOID_RET _GL_VOID GLenum GLfloat param _GL_VOID_RET _GL_VOID GLenum GLint param _GL_VOID_RET _GL_VOID GLushort pattern _GL_VOID_RET _GL_VOID GLdouble GLdouble GLint GLint const GLdouble *points _GL_VOID_RET _GL_VOID GLdouble GLdouble GLint GLint GLdouble v1
Read Guarded memory(de)allocation.
static void init_data(ModifierData *md)
ATTR_WARN_UNUSED_RESULT const BMVert * v2
static DBVT_INLINE btScalar size(const btDbvtVolume &a)
DEGForeachIDComponentCallback callback
void(* MEM_freeN)(void *vmemh)
void *(* MEM_dupallocN)(const void *vmemh)
void *(* MEM_callocN)(size_t len, const char *str)
static void area(int d1, int d2, int e1, int e2, float weights[2])
static void * newdataadr(FileData *fd, const void *adr)
void BKE_spacetype_register(SpaceType *st)
ScrArea * BKE_screen_find_area_from_space(struct bScreen *screen, SpaceLink *sl)
ScrArea * BKE_screen_find_area_xy(bScreen *screen, const int spacetype, int x, int y)
static void area_region_panels_free_recursive(Panel *panel)
void BKE_screen_remove_unused_scrverts(bScreen *screen)
void BKE_screen_view3d_shading_blend_read_data(BlendDataReader *reader, View3DShading *shading)
void BKE_spacedata_id_unref(struct ScrArea *area, struct SpaceLink *sl, struct ID *id)
static void write_space_outliner(BlendWriter *writer, SpaceOutliner *space_outliner)
bool BKE_screen_is_used(const bScreen *screen)
void BKE_region_callback_refresh_tag_gizmomap_set(void(*callback)(struct wmGizmoMap *))
void BKE_screen_view3d_sync(View3D *v3d, struct Scene *scene)
void BKE_screen_area_map_blend_write(BlendWriter *writer, ScrAreaMap *area_map)
ARegionType * BKE_regiontype_from_id_or_first(const SpaceType *st, int regionid)
void BKE_spacedata_draw_locks(bool set)
void BKE_screen_remove_unused_scredges(bScreen *screen)
static void screen_blend_write(BlendWriter *writer, ID *id, const void *id_address)
ScrEdge * BKE_screen_find_edge(const bScreen *screen, ScrVert *v1, ScrVert *v2)
static void screen_foreach_id_dopesheet(LibraryForeachIDData *data, bDopeSheet *ads)
static void spacetype_free(SpaceType *st)
float BKE_screen_view3d_zoom_from_fac(float zoomfac)
void BKE_spacedata_callback_id_remap_set(void(*func)(ScrArea *area, SpaceLink *sl, ID *, ID *))
static ListBase spacetypes
void BKE_screen_remove_double_scrverts(bScreen *screen)
bool BKE_screen_blend_read_data(BlendDataReader *reader, bScreen *screen)
void BKE_spacetypes_free(void)
void BKE_spacedata_copylist(ListBase *lb1, ListBase *lb2)
ARegion * BKE_spacedata_find_region_type(const SpaceLink *slink, const ScrArea *area, int region_type)
void BKE_spacedata_freelist(ListBase *lb)
ARegionType * BKE_regiontype_from_id(const SpaceType *st, int regionid)
static void write_area(BlendWriter *writer, ScrArea *area)
SpaceType * BKE_spacetype_from_id(int spaceid)
void BKE_screen_view3d_shading_blend_write(BlendWriter *writer, View3DShading *shading)
static void screen_blend_read_lib(BlendLibReader *reader, ID *id)
void BKE_screen_sort_scrvert(ScrVert **v1, ScrVert **v2)
static void direct_link_panel_list(BlendDataReader *reader, ListBase *lb)
void BKE_screen_area_blend_read_lib(BlendLibReader *reader, ID *parent_id, ScrArea *area)
static void write_region(BlendWriter *writer, ARegion *region, int spacetype)
void BKE_screen_area_free(ScrArea *area)
static void region_copylist(SpaceType *st, ListBase *lb1, ListBase *lb2)
bool BKE_spacetype_exists(int spaceid)
void BKE_screen_gizmo_tag_refresh(struct bScreen *screen)
static void write_panel_list(BlendWriter *writer, ListBase *lb)
void BKE_screen_header_alignment_reset(bScreen *screen)
const ListBase * BKE_spacetypes_list(void)
void BKE_screen_area_map_free(ScrAreaMap *area_map)
void BKE_area_region_free(SpaceType *st, ARegion *region)
void BKE_screen_free(bScreen *screen)
void BKE_region_callback_free_gizmomap_set(void(*callback)(struct wmGizmoMap *))
ARegion * BKE_area_find_region_active_win(ScrArea *area)
ARegion * BKE_area_find_region_xy(ScrArea *area, const int regiontype, int x, int y)
bool BKE_screen_is_fullscreen_area(const bScreen *screen)
bool BKE_screen_area_map_blend_read_data(BlendDataReader *reader, ScrAreaMap *area_map)
static void(* region_free_gizmomap_callback)(struct wmGizmoMap *)
void BKE_screen_view3d_scene_sync(bScreen *screen, Scene *scene)
ARegion * BKE_screen_find_region_xy(bScreen *screen, const int regiontype, int x, int y)
static void(* region_refresh_tag_gizmomap_callback)(struct wmGizmoMap *)
void BKE_screen_remove_double_scredges(bScreen *screen)
float BKE_screen_view3d_zoom_to_fac(float camzoom)
ScrArea * BKE_screen_find_big_area(bScreen *screen, const int spacetype, const short min)
void BKE_screen_view3d_shading_init(View3DShading *shading)
ARegion * BKE_screen_find_main_region_at_xy(bScreen *screen, const int space_type, const int x, const int y)
static void(* spacedata_id_remap_cb)(struct ScrArea *area, struct SpaceLink *sl, ID *old_id, ID *new_id)
ARegion * BKE_area_find_region_type(const ScrArea *area, int region_type)
static void direct_link_area(BlendDataReader *reader, ScrArea *area)
static void write_uilist(BlendWriter *writer, uiList *ui_list)
void BKE_area_region_panels_free(ListBase *panels)
static void screen_foreach_id(ID *id, LibraryForeachIDData *data)
ScrArea * BKE_screen_area_map_find_area_xy(const ScrAreaMap *areamap, const int spacetype, int x, int y)
void BKE_screen_view3d_do_versions_250(View3D *v3d, ListBase *regions)
static void direct_link_region(BlendDataReader *reader, ARegion *region, int spacetype)
ARegion * BKE_area_region_copy(const SpaceType *st, const ARegion *region)
void BKE_screen_foreach_id_screen_area(LibraryForeachIDData *data, ScrArea *area)
static void panel_list_copy(ListBase *newlb, const ListBase *lb)
static void screen_free_data(ID *id)
struct SELECTID_Context context
static int node_context(const bContext *C, const char *member, bContextDataResult *result)
void(* free)(struct ARegion *)
void *(* duplicate)(void *poin)
struct wmTimer * regiontimer
ListBase panels_category_active
struct wmDrawBuffer * draw_buffer
struct wmGizmoMap * gizmo_map
struct ARegionType * type
struct ImBuf * track_preview
struct ImBuf * track_search
struct PointerRNA * custom_data_ptr
struct RenderEngine * render_engine
struct SmoothView3DStore * sms
struct RegionView3D * localvd
struct ViewDepths * depths
struct wmTimer * smooth_timer
struct ImBuf * reference_ibuf
struct ImBuf * waveform_ibuf
struct ImBuf * sep_waveform_ibuf
struct ImBuf * zebra_ibuf
struct ImBuf * histogram_ibuf
struct ImBuf * vector_ibuf
struct MovieClipScopes scopes
struct FileLayout * layout
FileSelectParams * params
struct wmTimer * previews_timer
FileAssetSelectParams * asset_params
ListBase folder_histories
SpaceFile_Runtime * runtime
SpaceGraph_Runtime runtime
SpaceNode_Runtime * runtime
struct bNodeTree * edittree
struct bNodeTree * nodetree
struct TreeStoreElem search_tse
SpaceOutliner_Runtime * runtime
struct BLI_mempool * treestore
struct SpaceProperties_Runtime * runtime
struct SequencerScopes scopes
SpaceSpreadsheet_Runtime * runtime
SpaceText_Runtime runtime
struct SpaceLink *(* duplicate)(struct SpaceLink *sl)
void(* free)(struct SpaceLink *sl)
char name[BKE_ST_MAXNAME]
struct SmoothView2DStore * sms
void * properties_storage
struct Object * ob_center
struct Collection * filter_grp
struct bNodeTree * nodetree
struct bNodeTreePath * next
struct wmTooltipState * tool_tip
struct wmTimer * animtimer
struct ARegion * active_region
int * items_filter_neworder