diff options
Diffstat (limited to 'source/blender/editors/space_outliner/outliner_intern.h')
-rw-r--r-- | source/blender/editors/space_outliner/outliner_intern.h | 22 |
1 files changed, 19 insertions, 3 deletions
diff --git a/source/blender/editors/space_outliner/outliner_intern.h b/source/blender/editors/space_outliner/outliner_intern.h index 015d8d64627..34d7f87e44d 100644 --- a/source/blender/editors/space_outliner/outliner_intern.h +++ b/source/blender/editors/space_outliner/outliner_intern.h @@ -108,6 +108,18 @@ typedef struct TreeElement { /* button events */ #define OL_NAMEBUTTON 1 +typedef enum { + OL_DRAWSEL_NONE = 0, /* inactive (regular black text) */ + OL_DRAWSEL_NORMAL = 1, /* active object (draws white text) */ + OL_DRAWSEL_ACTIVE = 2, /* active obdata (draws a circle around the icon) */ +} eOLDrawState; + +typedef enum { + OL_SETSEL_NONE = 0, /* don't change the selection state */ + OL_SETSEL_NORMAL = 1, /* select the item */ + OL_SETSEL_EXTEND = 2, /* select the item and extend (also toggles selection) */ +} eOLSetState; + /* get TreeStoreElem associated with a TreeElement * < a: (TreeElement) tree element to find stored element for */ @@ -166,8 +178,12 @@ void draw_outliner(const struct bContext *C); void restrictbutton_gr_restrict_flag(void *poin, void *poin2, int flag); /* outliner_select.c -------------------------------------------- */ -int tree_element_type_active(struct bContext *C, struct Scene *scene, struct SpaceOops *soops, TreeElement *te, TreeStoreElem *tselem, int set, bool recursive); -int tree_element_active(struct bContext *C, struct Scene *scene, SpaceOops *soops, TreeElement *te, int set); +eOLDrawState tree_element_type_active( + struct bContext *C, struct Scene *scene, struct SpaceOops *soops, + TreeElement *te, TreeStoreElem *tselem, const eOLSetState set, bool recursive); +eOLDrawState tree_element_active( + struct bContext *C, struct Scene *scene, SpaceOops *soops, + TreeElement *te, const eOLSetState set); int outliner_item_do_activate(struct bContext *C, int x, int y, bool extend, bool recursive); /* outliner_edit.c ---------------------------------------------- */ @@ -177,7 +193,7 @@ void outliner_do_object_operation(struct bContext *C, struct Scene *scene, struc int common_restrict_check(struct bContext *C, struct Object *ob); -bool outliner_has_one_flag(struct SpaceOops *soops, ListBase *lb, short flag, const int curlevel); +int outliner_has_one_flag(struct SpaceOops *soops, ListBase *lb, short flag, const int curlevel); void outliner_set_flag(struct SpaceOops *soops, ListBase *lb, short flag, short set); void object_toggle_visibility_cb(struct bContext *C, struct Scene *scene, TreeElement *te, struct TreeStoreElem *tsep, struct TreeStoreElem *tselem); |