tint non-active mask layers grey
[blender.git] / source / blender / blenkernel / BKE_context.h
index 3f9edf41e3c0306174ffc19536b799e89a069a93..7a1172335d8188fee5cb58864ad84eb3923687f0 100644 (file)
@@ -23,8 +23,8 @@
  * ***** END GPL LICENSE BLOCK *****
  */
 
-#ifndef BKE_CONTEXT_H
-#define BKE_CONTEXT_H
+#ifndef __BKE_CONTEXT_H__
+#define __BKE_CONTEXT_H__
 
 /** \file BKE_context.h
  *  \ingroup bke
@@ -39,7 +39,6 @@ extern "C" {
 
 struct ARegion;
 struct bScreen;
-struct EditMesh;
 struct ListBase;
 struct Main;
 struct Object;
@@ -61,6 +60,7 @@ struct wmWindow;
 struct wmWindowManager;
 struct SpaceText;
 struct SpaceImage;
+struct SpaceClip;
 struct ID;
 
 /* Structs */
@@ -72,7 +72,7 @@ struct bContextDataResult;
 typedef struct bContextDataResult bContextDataResult;
 
 typedef int (*bContextDataCallback)(const bContext *C,
-       const char *member, bContextDataResult *result);
+                                    const char *member, bContextDataResult *result);
 
 typedef struct bContextStoreEntry {
        struct bContextStoreEntry *next, *prev;
@@ -117,6 +117,7 @@ bContext *CTX_copy(const bContext *C);
 /* Stored Context */
 
 bContextStore *CTX_store_add(ListBase *contexts, const char *name, PointerRNA *ptr);
+bContextStore *CTX_store_add_all(ListBase *contexts, bContextStore *context);
 void CTX_store_set(bContext *C, bContextStore *store);
 bContextStore *CTX_store_copy(bContextStore *store);
 void CTX_store_free(bContextStore *store);
@@ -158,6 +159,7 @@ struct SpaceIpo *CTX_wm_space_graph(const bContext *C);
 struct SpaceAction *CTX_wm_space_action(const bContext *C);
 struct SpaceInfo *CTX_wm_space_info(const bContext *C);
 struct SpaceUserPref *CTX_wm_space_userpref(const bContext *C);
+struct SpaceClip *CTX_wm_space_clip(const bContext *C);
 
 void CTX_wm_manager_set(bContext *C, struct wmWindowManager *wm);
 void CTX_wm_window_set(bContext *C, struct wmWindow *win);
@@ -169,10 +171,10 @@ const char *CTX_wm_operator_poll_msg_get(struct bContext *C);
 void CTX_wm_operator_poll_msg_set(struct bContext *C, const char *msg);
 
 /* Data Context
-
  - listbases consist of CollectionPointerLink items and must be
       freed with BLI_freelistN!
  - the dir listbase consits of LinkData items */
+ *
* - listbases consist of CollectionPointerLink items and must be
*   freed with BLI_freelistN!
* - the dir listbase consits of LinkData items */
 
 /* data type, needed so we can tell between a NULL pointer and an empty list */
 enum {
@@ -200,23 +202,28 @@ short CTX_data_type_get(struct bContextDataResult *result);
 int CTX_data_equals(const char *member, const char *str);
 int CTX_data_dir(const char *member);
 
-/*void CTX_data_pointer_set(bContextDataResult *result, void *data);
-void CTX_data_list_add(bContextDataResult *result, void *data);*/
-
-#define CTX_DATA_BEGIN(C, Type, instance, member) \
-       { \
-               ListBase ctx_data_list; \
-               CollectionPointerLink *ctx_link; \
-               CTX_data_##member(C, &ctx_data_list); \
-               for(ctx_link=ctx_data_list.first; ctx_link; ctx_link=ctx_link->next) { \
-                       Type instance= ctx_link->ptr.data;
+#if 0
+void CTX_data_pointer_set(bContextDataResult *result, void *data);
+void CTX_data_list_add(bContextDataResult *result, void *data);
+#endif
 
-#define CTX_DATA_END \
-               } \
-               BLI_freelistN(&ctx_data_list); \
+#define CTX_DATA_BEGIN(C, Type, instance, member)                             \
+       {                                                                         \
+               ListBase ctx_data_list;                                               \
+               CollectionPointerLink *ctx_link;                                      \
+               CTX_data_##member(C, &ctx_data_list);                                 \
+               for (ctx_link = ctx_data_list.first;                                  \
+                    ctx_link;                                                        \
+                    ctx_link = ctx_link->next)                                       \
+               {                                                                     \
+                       Type instance = ctx_link->ptr.data;
+
+#define CTX_DATA_END                                                          \
+               }                                                                     \
+               BLI_freelistN(&ctx_data_list);                                        \
        }
 
-int ctx_data_list_count(const bContext *C, int (*func)(const bContext*, ListBase*));
+int ctx_data_list_count(const bContext *C, int (*func)(const bContext *, ListBase *));
 
 #define CTX_DATA_COUNT(C, member) \
        ctx_data_list_count(C, CTX_data_##member)
@@ -252,6 +259,8 @@ struct Object *CTX_data_edit_object(const bContext *C);
 struct Image *CTX_data_edit_image(const bContext *C);
 
 struct Text *CTX_data_edit_text(const bContext *C);
+struct MovieClip *CTX_data_edit_movieclip(const bContext *C);
+struct Mask *CTX_data_edit_mask(const bContext *C);
 
 int CTX_data_selected_nodes(const bContext *C, ListBase *list);