Changeset View
Changeset View
Standalone View
Standalone View
source/blender/makesrna/intern/rna_workspace.c
| Show First 20 Lines • Show All 70 Lines • ▼ Show 20 Lines | |||||
| static void rna_workspace_object_mode_set(PointerRNA *ptr, int value) | static void rna_workspace_object_mode_set(PointerRNA *ptr, int value) | ||||
| { | { | ||||
| WorkSpace *workspace = ptr->data; | WorkSpace *workspace = ptr->data; | ||||
| BKE_workspace_object_mode_set(workspace, value); | BKE_workspace_object_mode_set(workspace, value); | ||||
| } | } | ||||
| #endif /* USE_WORKSPACE_MODE */ | #endif /* USE_WORKSPACE_MODE */ | ||||
| void rna_workspace_transform_orientations_begin(CollectionPropertyIterator *iter, PointerRNA *ptr) | |||||
| { | |||||
| WorkSpace *workspace = ptr->id.data; | |||||
| rna_iterator_listbase_begin(iter, BKE_workspace_transform_orientations_get(workspace), NULL); | |||||
| } | |||||
| static PointerRNA rna_workspace_transform_orientations_item_get(CollectionPropertyIterator *iter) | |||||
| { | |||||
| TransformOrientation *transform_orientation = rna_iterator_listbase_get(iter); | |||||
| return rna_pointer_inherit_refine(&iter->parent, &RNA_TransformOrientation, transform_orientation); | |||||
| } | |||||
| static PointerRNA rna_workspace_render_layer_get(PointerRNA *ptr) | static PointerRNA rna_workspace_render_layer_get(PointerRNA *ptr) | ||||
| { | { | ||||
| WorkSpace *workspace = ptr->data; | WorkSpace *workspace = ptr->data; | ||||
| SceneLayer *render_layer = BKE_workspace_render_layer_get(workspace); | SceneLayer *render_layer = BKE_workspace_render_layer_get(workspace); | ||||
| /* XXX hmrf... lookup in getter... but how could we avoid it? */ | /* XXX hmrf... lookup in getter... but how could we avoid it? */ | ||||
| for (Scene *scene = G.main->scene.first; scene; scene = scene->id.next) { | for (Scene *scene = G.main->scene.first; scene; scene = scene->id.next) { | ||||
| if (BLI_findindex(&scene->render_layers, render_layer) != -1) { | if (BLI_findindex(&scene->render_layers, render_layer) != -1) { | ||||
| Show All 35 Lines | |||||
| #ifdef USE_WORKSPACE_MODE | #ifdef USE_WORKSPACE_MODE | ||||
| prop = RNA_def_property(srna, "object_mode", PROP_ENUM, PROP_NONE); | prop = RNA_def_property(srna, "object_mode", PROP_ENUM, PROP_NONE); | ||||
| RNA_def_property_enum_items(prop, rna_enum_object_mode_items); | RNA_def_property_enum_items(prop, rna_enum_object_mode_items); | ||||
| RNA_def_property_enum_funcs(prop, "rna_workspace_object_mode_get", "rna_workspace_object_mode_set", NULL); | RNA_def_property_enum_funcs(prop, "rna_workspace_object_mode_get", "rna_workspace_object_mode_set", NULL); | ||||
| RNA_def_property_ui_text(prop, "Mode", "Object interaction mode"); | RNA_def_property_ui_text(prop, "Mode", "Object interaction mode"); | ||||
| #endif | #endif | ||||
| prop = RNA_def_property(srna, "orientations", PROP_COLLECTION, PROP_NONE); | |||||
| RNA_def_property_collection_sdna(prop, NULL, "transform_orientations", NULL); | |||||
| RNA_def_property_struct_type(prop, "TransformOrientation"); | |||||
| RNA_def_property_collection_funcs(prop, "rna_workspace_transform_orientations_begin", NULL, NULL, | |||||
| "rna_workspace_transform_orientations_item_get", NULL, NULL, NULL, NULL); | |||||
| RNA_def_property_ui_text(prop, "Transform Orientations", ""); | |||||
| prop = RNA_def_property(srna, "render_layer", PROP_POINTER, PROP_NONE); | prop = RNA_def_property(srna, "render_layer", PROP_POINTER, PROP_NONE); | ||||
| RNA_def_property_struct_type(prop, "SceneLayer"); | RNA_def_property_struct_type(prop, "SceneLayer"); | ||||
| RNA_def_property_pointer_funcs(prop, "rna_workspace_render_layer_get", "rna_workspace_render_layer_set", | RNA_def_property_pointer_funcs(prop, "rna_workspace_render_layer_get", "rna_workspace_render_layer_set", | ||||
| NULL, NULL); | NULL, NULL); | ||||
| RNA_def_property_ui_text(prop, "Active Render Layer", "The active render layer used in this workspace"); | RNA_def_property_ui_text(prop, "Active Render Layer", "The active render layer used in this workspace"); | ||||
| RNA_def_property_flag(prop, PROP_EDITABLE | PROP_NEVER_NULL); | RNA_def_property_flag(prop, PROP_EDITABLE | PROP_NEVER_NULL); | ||||
| RNA_def_property_update(prop, NC_SCREEN | ND_LAYER, NULL); | RNA_def_property_update(prop, NC_SCREEN | ND_LAYER, NULL); | ||||
| } | } | ||||
| static void rna_def_transform_orientation(BlenderRNA *brna) | |||||
| { | |||||
| StructRNA *srna; | |||||
| PropertyRNA *prop; | |||||
| srna = RNA_def_struct(brna, "TransformOrientation", NULL); | |||||
| prop = RNA_def_property(srna, "matrix", PROP_FLOAT, PROP_MATRIX); | |||||
| RNA_def_property_float_sdna(prop, NULL, "mat"); | |||||
| RNA_def_property_multi_array(prop, 2, rna_matrix_dimsize_3x3); | |||||
| RNA_def_property_update(prop, NC_SPACE | ND_SPACE_VIEW3D, NULL); | |||||
| prop = RNA_def_property(srna, "name", PROP_STRING, PROP_NONE); | |||||
| RNA_def_struct_name_property(srna, prop); | |||||
| RNA_def_property_ui_text(prop, "Name", "Name of the custom transform orientation"); | |||||
| RNA_def_property_update(prop, NC_SPACE | ND_SPACE_VIEW3D, NULL); | |||||
| } | |||||
| void RNA_def_workspace(BlenderRNA *brna) | void RNA_def_workspace(BlenderRNA *brna) | ||||
| { | { | ||||
| rna_def_workspace(brna); | rna_def_workspace(brna); | ||||
| rna_def_transform_orientation(brna); | |||||
| } | } | ||||
| #endif /* RNA_RUNTIME */ | #endif /* RNA_RUNTIME */ | ||||