1 # SPDX-FileCopyrightText: 2017-2022 Blender Foundation
3 # SPDX-License-Identifier: GPL-2.0-or-later
5 # authors: nfloyd, Francesco Siddi
7 from bpy
.types
import PropertyGroup
8 from bpy
.props
import (
22 class POVData(PropertyGroup
):
23 distance
: FloatProperty()
24 location
: FloatVectorProperty(
27 rotation
: FloatVectorProperty(
31 name
: StringProperty()
32 perspective
: EnumProperty(
33 items
=[('PERSP', '', ''),
37 lens
: FloatProperty()
38 clip_start
: FloatProperty()
39 clip_end
: FloatProperty()
40 lock_cursor
: BoolProperty()
41 cursor_location
: FloatVectorProperty()
42 perspective_matrix_md5
= StringProperty()
43 camera_name
: StringProperty()
44 camera_type
: StringProperty()
45 lock_object_name
: StringProperty()
48 class LayersData(PropertyGroup
):
49 view_layers
: BoolVectorProperty(size
=20)
50 scene_layers
: BoolVectorProperty(size
=20)
51 lock_camera_and_layers
: BoolProperty()
52 name
: StringProperty()
55 class DisplayData(PropertyGroup
):
56 name
= StringProperty()
57 viewport_shade
= EnumProperty(
58 items
=[('BOUNDBOX', 'BOUNDBOX', 'BOUNDBOX'),
59 ('WIREFRAME', 'WIREFRAME', 'WIREFRAME'),
60 ('SOLID', 'SOLID', 'SOLID'),
61 ('TEXTURED', 'TEXTURED', 'TEXTURED'),
62 ('MATERIAL', 'MATERIAL', 'MATERIAL'),
63 ('RENDERED', 'RENDERED', 'RENDERED')]
65 show_only_render
: BoolProperty()
66 show_outline_selected
: BoolProperty()
67 show_all_objects_origin
: BoolProperty()
68 show_relationship_lines
: BoolProperty()
69 show_floor
: BoolProperty()
70 show_axis_x
: BoolProperty()
71 show_axis_y
: BoolProperty()
72 show_axis_z
: BoolProperty()
73 grid_lines
: IntProperty()
74 grid_scale
: FloatProperty()
75 grid_subdivisions
: IntProperty()
76 material_mode
: StringProperty()
77 show_textured_solid
: BoolProperty()
78 quad_view
: BoolProperty()
79 lock_rotation
: BoolProperty()
80 show_sync_view
: BoolProperty()
81 use_box_clip
: BoolProperty()
84 class ViewData(PropertyGroup
):
85 pov
: PointerProperty(
88 layers
: PointerProperty(
91 display
: PointerProperty(
94 name
: StringProperty()
97 class StoredViewsData(PropertyGroup
):
98 pov_list
: CollectionProperty(
101 layers_list
: CollectionProperty(
104 display_list
: CollectionProperty(
107 view_list
: CollectionProperty(
112 items
=[('VIEW', "View", "3D View settings"),
113 ('POV', "POV", "POV settings"),
114 ('LAYERS', "Layers", "Layers settings"),
115 ('DISPLAY', "Display", "Display settings")],
118 current_indices
: IntVectorProperty(
120 default
=[-1, -1, -1, -1]
122 view_modified
: BoolProperty(
137 bpy
.utils
.register_class(cls
)
141 bpy
.utils
.unregister_class(cls
)