Changeset View
Changeset View
Standalone View
Standalone View
source/blender/editors/screen/screen_context.c
| Show First 20 Lines • Show All 59 Lines • ▼ Show 20 Lines | |||||
| #include "ED_anim_api.h" | #include "ED_anim_api.h" | ||||
| #include "WM_api.h" | #include "WM_api.h" | ||||
| #include "UI_interface.h" | #include "UI_interface.h" | ||||
| #include "screen_intern.h" | #include "screen_intern.h" | ||||
| const char *screen_context_dir[] = { | const char *screen_context_dir[] = { | ||||
| "scene", "render_layer", "visible_objects", "visible_bases", "selectable_objects", "selectable_bases", | "scene", "view_layer", "visible_objects", "visible_bases", "selectable_objects", "selectable_bases", | ||||
| "selected_objects", "selected_bases", | "selected_objects", "selected_bases", | ||||
| "editable_objects", "editable_bases", | "editable_objects", "editable_bases", | ||||
| "selected_editable_objects", "selected_editable_bases", | "selected_editable_objects", "selected_editable_bases", | ||||
| "visible_bones", "editable_bones", "selected_bones", "selected_editable_bones", | "visible_bones", "editable_bones", "selected_bones", "selected_editable_bones", | ||||
| "visible_pose_bones", "selected_pose_bones", "active_bone", "active_pose_bone", | "visible_pose_bones", "selected_pose_bones", "active_bone", "active_pose_bone", | ||||
| "active_base", "active_object", "object", "edit_object", | "active_base", "active_object", "object", "edit_object", | ||||
| "sculpt_object", "vertex_paint_object", "weight_paint_object", | "sculpt_object", "vertex_paint_object", "weight_paint_object", | ||||
| "image_paint_object", "particle_edit_object", | "image_paint_object", "particle_edit_object", | ||||
| "sequences", "selected_sequences", "selected_editable_sequences", /* sequencer */ | "sequences", "selected_sequences", "selected_editable_sequences", /* sequencer */ | ||||
| "gpencil_data", "gpencil_data_owner", /* grease pencil data */ | "gpencil_data", "gpencil_data_owner", /* grease pencil data */ | ||||
| "visible_gpencil_layers", "editable_gpencil_layers", "editable_gpencil_strokes", | "visible_gpencil_layers", "editable_gpencil_layers", "editable_gpencil_strokes", | ||||
| "active_gpencil_layer", "active_gpencil_frame", "active_gpencil_palette", | "active_gpencil_layer", "active_gpencil_frame", "active_gpencil_palette", | ||||
| "active_gpencil_palettecolor", "active_gpencil_brush", | "active_gpencil_palettecolor", "active_gpencil_brush", | ||||
| "active_operator", "selected_editable_fcurves", | "active_operator", "selected_editable_fcurves", | ||||
| NULL}; | NULL}; | ||||
| int ed_screen_context(const bContext *C, const char *member, bContextDataResult *result) | int ed_screen_context(const bContext *C, const char *member, bContextDataResult *result) | ||||
| { | { | ||||
| wmWindow *win = CTX_wm_window(C); | wmWindow *win = CTX_wm_window(C); | ||||
| bScreen *sc = CTX_wm_screen(C); | bScreen *sc = CTX_wm_screen(C); | ||||
| ScrArea *sa = CTX_wm_area(C); | ScrArea *sa = CTX_wm_area(C); | ||||
| Scene *scene = WM_window_get_active_scene(win); | Scene *scene = WM_window_get_active_scene(win); | ||||
| WorkSpace *workspace = BKE_workspace_active_get(win->workspace_hook); | WorkSpace *workspace = BKE_workspace_active_get(win->workspace_hook); | ||||
| SceneLayer *sl = BKE_scene_layer_from_workspace_get(scene, workspace); | ViewLayer *sl = BKE_view_layer_from_workspace_get(scene, workspace); | ||||
| Object *obedit = scene->obedit; | Object *obedit = scene->obedit; | ||||
| Object *obact = sl->basact ? sl->basact->object : NULL; | Object *obact = sl->basact ? sl->basact->object : NULL; | ||||
| if (CTX_data_dir(member)) { | if (CTX_data_dir(member)) { | ||||
| CTX_data_dir_set(result, screen_context_dir); | CTX_data_dir_set(result, screen_context_dir); | ||||
| return 1; | return 1; | ||||
| } | } | ||||
| else if (CTX_data_equals(member, "scene")) { | else if (CTX_data_equals(member, "scene")) { | ||||
| ▲ Show 20 Lines • Show All 542 Lines • Show Last 20 Lines | |||||