Changeset View
Changeset View
Standalone View
Standalone View
source/blender/makesdna/DNA_workspace_types.h
| Show First 20 Lines • Show All 120 Lines • ▼ Show 20 Lines | |||||
| typedef struct WorkSpace { | typedef struct WorkSpace { | ||||
| ID id; | ID id; | ||||
| ListBase layouts DNA_PRIVATE_WORKSPACE; /* WorkSpaceLayout */ | ListBase layouts DNA_PRIVATE_WORKSPACE; /* WorkSpaceLayout */ | ||||
| /* Store for each hook (so for each window) which layout has | /* Store for each hook (so for each window) which layout has | ||||
| * been activated the last time this workspace was visible. */ | * been activated the last time this workspace was visible. */ | ||||
| ListBase hook_layout_relations DNA_PRIVATE_WORKSPACE_READ_WRITE; /* WorkSpaceDataRelation */ | ListBase hook_layout_relations DNA_PRIVATE_WORKSPACE_READ_WRITE; /* WorkSpaceDataRelation */ | ||||
| ListBase scene_viewlayer_relations DNA_PRIVATE_WORKSPACE_READ_WRITE; /* WorkSpaceDataRelation */ | ListBase scene_relations; /* WorkSpaceSceneRelation */ | ||||
| /* Feature tagging (use for addons) */ | /* Feature tagging (use for addons) */ | ||||
| ListBase owner_ids DNA_PRIVATE_WORKSPACE_READ_WRITE; /* wmOwnerID */ | ListBase owner_ids DNA_PRIVATE_WORKSPACE_READ_WRITE; /* wmOwnerID */ | ||||
| /* should be: '#ifdef USE_WORKSPACE_TOOL'. */ | /* should be: '#ifdef USE_WORKSPACE_TOOL'. */ | ||||
| /** List of #bToolRef */ | /** List of #bToolRef */ | ||||
| ListBase tools; | ListBase tools; | ||||
| Show All 37 Lines | |||||
| */ | */ | ||||
| typedef struct WorkSpaceDataRelation { | typedef struct WorkSpaceDataRelation { | ||||
| struct WorkSpaceDataRelation *next, *prev; | struct WorkSpaceDataRelation *next, *prev; | ||||
| /* the data used to identify the relation (e.g. to find screen-layout (= value) from/for a hook) */ | /* the data used to identify the relation (e.g. to find screen-layout (= value) from/for a hook) */ | ||||
| void *parent; | void *parent; | ||||
| /* The value for this parent-data/workspace relation */ | /* The value for this parent-data/workspace relation */ | ||||
| void *value; | void *value; | ||||
| /** Use when we reference non-ID data, this allows use to look it up when linking in a workspace. */ | |||||
| char value_name[64]; /* MAX_NAME. */ | |||||
| } WorkSpaceDataRelation; | } WorkSpaceDataRelation; | ||||
| #endif /* DNA_PRIVATE_WORKSPACE_READ_WRITE */ | #endif /* DNA_PRIVATE_WORKSPACE_READ_WRITE */ | ||||
| typedef struct WorkSpaceSceneRelation { | |||||
| struct WorkSpaceSceneRelation *next, *prev; | |||||
| struct Scene *scene; | |||||
| char view_layer[64]; /* MAX_NAME */ | |||||
| } WorkSpaceSceneRelation; | |||||
| /** | /** | ||||
| * Little wrapper to store data that is going to be per window, but comming from the workspace. | * Little wrapper to store data that is going to be per window, but comming from the workspace. | ||||
| * It allows us to keep workspace and window data completely separate. | * It allows us to keep workspace and window data completely separate. | ||||
| */ | */ | ||||
| typedef struct WorkSpaceInstanceHook { | typedef struct WorkSpaceInstanceHook { | ||||
| WorkSpace *active DNA_PRIVATE_WORKSPACE; | WorkSpace *active DNA_PRIVATE_WORKSPACE; | ||||
| struct WorkSpaceLayout *act_layout DNA_PRIVATE_WORKSPACE; | struct WorkSpaceLayout *act_layout DNA_PRIVATE_WORKSPACE; | ||||
| Show All 10 Lines | |||||