diff options
Diffstat (limited to 'source')
-rw-r--r-- | source/blender/makesrna/intern/rna_context.c | 22 |
1 files changed, 14 insertions, 8 deletions
diff --git a/source/blender/makesrna/intern/rna_context.c b/source/blender/makesrna/intern/rna_context.c index bb886f39f1c..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) { @@ -175,10 +181,10 @@ void RNA_def_context(BlenderRNA *brna) RNA_def_property_struct_type(prop, "Region"); 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, 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); |