diff options
Diffstat (limited to 'source/blender/makesrna/intern/rna_wm.c')
-rw-r--r-- | source/blender/makesrna/intern/rna_wm.c | 25 |
1 files changed, 4 insertions, 21 deletions
diff --git a/source/blender/makesrna/intern/rna_wm.c b/source/blender/makesrna/intern/rna_wm.c index 5110f4cc27a..1d4652b0212 100644 --- a/source/blender/makesrna/intern/rna_wm.c +++ b/source/blender/makesrna/intern/rna_wm.c @@ -473,7 +473,6 @@ const EnumPropertyItem rna_enum_wm_report_items[] = { #include "DNA_workspace_types.h" #include "ED_screen.h" -#include "ED_object.h" #include "UI_interface.h" @@ -761,9 +760,8 @@ static void rna_workspace_screen_update(bContext *C, PointerRNA *ptr) static PointerRNA rna_Window_view_layer_get(PointerRNA *ptr) { wmWindow *win = ptr->data; - Scene *scene = WM_window_get_active_scene(win); - WorkSpace *workspace = WM_window_get_active_workspace(win); - ViewLayer *view_layer = BKE_workspace_view_layer_get(workspace, scene); + Scene *scene; + ViewLayer *view_layer = WM_window_get_active_view_layer_ex(win, &scene); PointerRNA scene_ptr; RNA_id_pointer_create(&scene->id, &scene_ptr); @@ -779,21 +777,6 @@ static void rna_Window_view_layer_set(PointerRNA *ptr, PointerRNA value) BKE_workspace_view_layer_set(workspace, value.data, scene); } -static void rna_Window_view_layer_update(struct bContext *C, PointerRNA *ptr) -{ - wmWindow *win = ptr->data; - Scene *scene = WM_window_get_active_scene(win); - WorkSpace *workspace = WM_window_get_active_workspace(win); - ViewLayer *view_layer = BKE_workspace_view_layer_get(workspace, scene); - Object *obact = OBACT(view_layer); - eObjectMode object_mode = workspace->object_mode; - if (obact && (object_mode & OB_MODE_EDIT)) { - ED_object_editmode_exit_ex(NULL, workspace, scene, obact, EM_FREEDATA); - } - workspace->object_mode = object_mode; - ED_object_base_activate(C, view_layer->basact); -} - static PointerRNA rna_KeyMapItem_properties_get(PointerRNA *ptr) { wmKeyMapItem *kmi = ptr->data; @@ -2077,8 +2060,8 @@ static void rna_def_window(BlenderRNA *brna) RNA_def_property_struct_type(prop, "ViewLayer"); RNA_def_property_pointer_funcs(prop, "rna_Window_view_layer_get", "rna_Window_view_layer_set", NULL, NULL); RNA_def_property_ui_text(prop, "Active View Layer", "The active workspace view layer showing in the window"); - RNA_def_property_flag(prop, PROP_EDITABLE | PROP_NEVER_NULL | PROP_CONTEXT_UPDATE); - RNA_def_property_update(prop, NC_SCREEN | ND_LAYER, "rna_Window_view_layer_update"); + RNA_def_property_flag(prop, PROP_EDITABLE | PROP_NEVER_NULL); + RNA_def_property_update(prop, NC_SCREEN | ND_LAYER, NULL); prop = RNA_def_property(srna, "x", PROP_INT, PROP_NONE); RNA_def_property_int_sdna(prop, NULL, "posx"); |