diff options
Diffstat (limited to 'source/blender/makesrna/intern/rna_context.c')
-rw-r--r-- | source/blender/makesrna/intern/rna_context.c | 42 |
1 files changed, 24 insertions, 18 deletions
diff --git a/source/blender/makesrna/intern/rna_context.c b/source/blender/makesrna/intern/rna_context.c index 9ee2ca1a322..6cc93d088ad 100644 --- a/source/blender/makesrna/intern/rna_context.c +++ b/source/blender/makesrna/intern/rna_context.c @@ -76,13 +76,19 @@ static PointerRNA rna_Context_region_get(PointerRNA *ptr) return newptr; } -/*static PointerRNA rna_Context_region_data_get(PointerRNA *ptr) +static PointerRNA rna_Context_region_data_get(PointerRNA *ptr) { bContext *C= (bContext*)ptr->data; - PointerRNA newptr; - RNA_pointer_create((ID*)CTX_wm_screen(C), &RNA_RegionData, CTX_wm_region_data(C), &newptr); - return newptr; -}*/ + + /* only exists for one space still, no generic system yet */ + if(CTX_wm_view3d(C)) { + PointerRNA newptr; + RNA_pointer_create((ID*)CTX_wm_screen(C), &RNA_RegionView3D, CTX_wm_region_data(C), &newptr); + return newptr; + } + + return PointerRNA_NULL; +} static PointerRNA rna_Context_main_get(PointerRNA *ptr) { @@ -148,58 +154,58 @@ void RNA_def_context(BlenderRNA *brna) prop= RNA_def_property(srna, "manager", PROP_POINTER, PROP_NONE); RNA_def_property_clear_flag(prop, PROP_EDITABLE); RNA_def_property_struct_type(prop, "WindowManager"); - RNA_def_property_pointer_funcs(prop, "rna_Context_manager_get", NULL, NULL); + RNA_def_property_pointer_funcs(prop, "rna_Context_manager_get", NULL, NULL, NULL); prop= RNA_def_property(srna, "window", PROP_POINTER, PROP_NONE); RNA_def_property_clear_flag(prop, PROP_EDITABLE); RNA_def_property_struct_type(prop, "Window"); - RNA_def_property_pointer_funcs(prop, "rna_Context_window_get", NULL, NULL); + RNA_def_property_pointer_funcs(prop, "rna_Context_window_get", NULL, NULL, NULL); prop= RNA_def_property(srna, "screen", PROP_POINTER, PROP_NONE); RNA_def_property_clear_flag(prop, PROP_EDITABLE); RNA_def_property_struct_type(prop, "Screen"); - RNA_def_property_pointer_funcs(prop, "rna_Context_screen_get", NULL, NULL); + RNA_def_property_pointer_funcs(prop, "rna_Context_screen_get", NULL, NULL, NULL); prop= RNA_def_property(srna, "area", PROP_POINTER, PROP_NONE); RNA_def_property_clear_flag(prop, PROP_EDITABLE); RNA_def_property_struct_type(prop, "Area"); - RNA_def_property_pointer_funcs(prop, "rna_Context_area_get", NULL, NULL); + RNA_def_property_pointer_funcs(prop, "rna_Context_area_get", NULL, NULL, NULL); prop= RNA_def_property(srna, "space_data", PROP_POINTER, PROP_NONE); RNA_def_property_clear_flag(prop, PROP_EDITABLE); RNA_def_property_struct_type(prop, "Space"); - RNA_def_property_pointer_funcs(prop, "rna_Context_space_data_get", NULL, NULL); + RNA_def_property_pointer_funcs(prop, "rna_Context_space_data_get", NULL, NULL, NULL); prop= RNA_def_property(srna, "region", PROP_POINTER, PROP_NONE); RNA_def_property_clear_flag(prop, PROP_EDITABLE); RNA_def_property_struct_type(prop, "Region"); - RNA_def_property_pointer_funcs(prop, "rna_Context_region_get", NULL, NULL); + RNA_def_property_pointer_funcs(prop, "rna_Context_region_get", NULL, NULL, NULL); - /*prop= RNA_def_property(srna, "region_data", PROP_POINTER, PROP_NONE); + prop= RNA_def_property(srna, "region_data", PROP_POINTER, PROP_NONE); RNA_def_property_clear_flag(prop, PROP_EDITABLE); - RNA_def_property_struct_type(prop, "RegionData"); - RNA_def_property_pointer_funcs(prop, "rna_Context_region_data_get", NULL, NULL);*/ + RNA_def_property_struct_type(prop, "RegionView3D"); + RNA_def_property_pointer_funcs(prop, "rna_Context_region_data_get", NULL, NULL, NULL); /* Data */ prop= RNA_def_property(srna, "main", PROP_POINTER, PROP_NONE); RNA_def_property_clear_flag(prop, PROP_EDITABLE); RNA_def_property_struct_type(prop, "Main"); - RNA_def_property_pointer_funcs(prop, "rna_Context_main_get", NULL, NULL); + RNA_def_property_pointer_funcs(prop, "rna_Context_main_get", NULL, NULL, NULL); prop= RNA_def_property(srna, "scene", PROP_POINTER, PROP_NONE); RNA_def_property_clear_flag(prop, PROP_EDITABLE); RNA_def_property_struct_type(prop, "Scene"); - RNA_def_property_pointer_funcs(prop, "rna_Context_scene_get", NULL, NULL); + RNA_def_property_pointer_funcs(prop, "rna_Context_scene_get", NULL, NULL, NULL); prop= RNA_def_property(srna, "tool_settings", PROP_POINTER, PROP_NONE); RNA_def_property_clear_flag(prop, PROP_EDITABLE); RNA_def_property_struct_type(prop, "ToolSettings"); - RNA_def_property_pointer_funcs(prop, "rna_Context_tool_settings_get", NULL, NULL); + RNA_def_property_pointer_funcs(prop, "rna_Context_tool_settings_get", NULL, NULL, NULL); prop= RNA_def_property(srna, "user_preferences", PROP_POINTER, PROP_NONE); RNA_def_property_clear_flag(prop, PROP_EDITABLE); RNA_def_property_struct_type(prop, "UserPreferences"); - RNA_def_property_pointer_funcs(prop, "rna_Context_user_preferences_get", NULL, NULL); + RNA_def_property_pointer_funcs(prop, "rna_Context_user_preferences_get", NULL, NULL, NULL); prop= RNA_def_property(srna, "mode", PROP_ENUM, PROP_NONE); RNA_def_property_enum_items(prop, mode_items); |