diff options
Diffstat (limited to 'source/blender/makesdna/DNA_space_types.h')
-rw-r--r-- | source/blender/makesdna/DNA_space_types.h | 99 |
1 files changed, 79 insertions, 20 deletions
diff --git a/source/blender/makesdna/DNA_space_types.h b/source/blender/makesdna/DNA_space_types.h index 693917939ef..077ac4f7aa3 100644 --- a/source/blender/makesdna/DNA_space_types.h +++ b/source/blender/makesdna/DNA_space_types.h @@ -126,7 +126,9 @@ typedef struct SpaceButs { short preview; /* preview is signal to refresh */ /* texture context selector (material, lamp, particles, world, other) */ short texture_context, texture_context_prev; - char flag, pad[7]; + char flag; + char collection_context; + char pad[6]; void *path; /* runtime */ int pathflag, dataicon; /* runtime */ @@ -180,8 +182,10 @@ typedef enum eSpaceButtons_Context { BCONTEXT_MODIFIER = 10, BCONTEXT_CONSTRAINT = 11, BCONTEXT_BONE_CONSTRAINT = 12, - BCONTEXT_RENDER_LAYER = 13, - + BCONTEXT_VIEW_LAYER = 13, + BCONTEXT_COLLECTION = 14, + BCONTEXT_WORKSPACE = 15, + /* always as last... */ BCONTEXT_TOT } eSpaceButtons_Context; @@ -206,6 +210,12 @@ typedef enum eSpaceButtons_Texture_Context { SB_TEXC_LINESTYLE = 5, } eSpaceButtons_Texture_Context; +/* sbuts->collection_context */ +typedef enum eSpaceButtons_Collection_Context { + SB_COLLECTION_CTX_VIEW_LAYER = 0, + SB_COLLECTION_CTX_GROUP = 1, +} eSpaceButtons_Collection_Context; + /* sbuts->align */ typedef enum eSpaceButtons_Align { BUT_FREE = 0, @@ -256,6 +266,9 @@ typedef struct SpaceOops { struct TreeStoreElem search_tse; short flag, outlinevis, storeflag, search_flags; + int filter; + char filter_state; + char pad[3]; /* pointers to treestore elements, grouped by (id, type, nr) in hashtable for faster searching */ void *treehash; @@ -271,23 +284,69 @@ typedef enum eSpaceOutliner_Flag { SO_SKIP_SORT_ALPHA = (1 << 4), } eSpaceOutliner_Flag; +/* SpaceOops->filter */ +typedef enum eSpaceOutliner_Filter { + SO_FILTER_SEARCH = (1 << 0), + SO_FILTER_ENABLE = (1 << 1), + SO_FILTER_NO_OBJECT = (1 << 2), + SO_FILTER_NO_OB_CONTENT = (1 << 3), /* Not only mesh, but modifiers, constraints, ... */ + SO_FILTER_NO_CHILDREN = (1 << 4), + + SO_FILTER_OB_TYPE = (1 << 5), + SO_FILTER_NO_OB_MESH = (1 << 6), + SO_FILTER_NO_OB_ARMATURE = (1 << 7), + SO_FILTER_NO_OB_EMPTY = (1 << 8), + SO_FILTER_NO_OB_LAMP = (1 << 9), + SO_FILTER_NO_OB_CAMERA = (1 << 10), + SO_FILTER_NO_OB_OTHERS = (1 << 11), + + SO_FILTER_OB_STATE = (1 << 12), + SO_FILTER_OB_STATE_VISIBLE = (1 << 13), /* Not set via DNA. */ + SO_FILTER_OB_STATE_SELECTED= (1 << 14), /* Not set via DNA. */ + SO_FILTER_OB_STATE_ACTIVE = (1 << 15), /* Not set via DNA. */ + SO_FILTER_NO_COLLECTION = (1 << 16), +} eSpaceOutliner_Filter; + +#define SO_FILTER_NO_OB_ALL (SO_FILTER_NO_OB_MESH | \ + SO_FILTER_NO_OB_ARMATURE | \ + SO_FILTER_NO_OB_EMPTY | \ + SO_FILTER_NO_OB_LAMP | \ + SO_FILTER_NO_OB_CAMERA | \ + SO_FILTER_NO_OB_OTHERS) + +#define SO_FILTER_ANY (SO_FILTER_NO_OBJECT | \ + SO_FILTER_NO_OB_CONTENT | \ + SO_FILTER_NO_CHILDREN | \ + SO_FILTER_OB_TYPE | \ + SO_FILTER_OB_STATE | \ + SO_FILTER_NO_COLLECTION) + +/* SpaceOops->filter_state */ +typedef enum eSpaceOutliner_StateFilter { + SO_FILTER_OB_VISIBLE = 0, + SO_FILTER_OB_SELECTED = 1, + SO_FILTER_OB_ACTIVE = 2, +} eSpaceOutliner_StateFilter; + /* SpaceOops->outlinevis */ typedef enum eSpaceOutliner_Mode { - SO_ALL_SCENES = 0, - SO_CUR_SCENE = 1, - SO_VISIBLE = 2, - SO_SELECTED = 3, - SO_ACTIVE = 4, - SO_SAME_TYPE = 5, - SO_GROUPS = 6, - SO_LIBRARIES = 7, - /* SO_VERSE_SESSION = 8, */ /* deprecated! */ - /* SO_VERSE_MS = 9, */ /* deprecated! */ - SO_SEQUENCE = 10, - SO_DATABLOCKS = 11, - SO_USERDEF = 12, - /* SO_KEYMAP = 13, */ /* deprecated! */ - SO_ID_ORPHANS = 14, + SO_SCENES = 0, + /* SO_CUR_SCENE = 1, */ /* deprecated! */ + /* SO_VISIBLE = 2, */ /* deprecated! */ + /* SO_SELECTED = 3, */ /* deprecated! */ + /* SO_ACTIVE = 4, */ /* deprecated! */ + /* SO_SAME_TYPE = 5, */ /* deprecated! */ + SO_GROUPS = 6, + SO_LIBRARIES = 7, + /* SO_VERSE_SESSION = 8, */ /* deprecated! */ + /* SO_VERSE_MS = 9, */ /* deprecated! */ + SO_SEQUENCE = 10, + SO_DATABLOCKS = 11, + /* SO_USERDEF = 12, */ /* deprecated! */ + /* SO_KEYMAP = 13, */ /* deprecated! */ + SO_ID_ORPHANS = 14, + SO_VIEW_LAYER = 15, + SO_COLLECTIONS = 16, } eSpaceOutliner_Mode; /* SpaceOops->storeflag */ @@ -715,7 +774,7 @@ typedef enum eFileSel_Params_Flag { FILE_LINK = (1 << 2), FILE_HIDE_DOT = (1 << 3), FILE_AUTOSELECT = (1 << 4), - FILE_ACTIVELAY = (1 << 5), + FILE_ACTIVE_COLLECTION = (1 << 5), /* FILE_ATCURSOR = (1 << 6), */ /* deprecated */ FILE_DIRSEL_ONLY = (1 << 7), FILE_FILTER = (1 << 8), @@ -944,7 +1003,7 @@ typedef enum eSpaceImage_Sticky { /* SpaceImage->flag */ typedef enum eSpaceImage_Flag { /* SI_BE_SQUARE = (1 << 0), */ /* deprecated */ - SI_EDITTILE = (1 << 1), /* XXX - not used but should be? */ +/* SI_EDITTILE = (1 << 1), */ /* deprecated */ SI_CLIP_UV = (1 << 2), /* SI_DRAWTOOL = (1 << 3), */ /* deprecated */ SI_NO_DRAWFACES = (1 << 4), |