Node Wrangler: Add more specific poll methods
[blender-addons.git] / render_copy_settings / data.py
blob53477f01f37e0deb26f22cd037981d4d6f58ae00
1 # SPDX-FileCopyrightText: 2011-2022 Blender Foundation
3 # SPDX-License-Identifier: GPL-2.0-or-later
5 import bpy
6 from bpy.props import (
7 StringProperty,
8 BoolProperty,
9 IntProperty,
10 CollectionProperty,
13 ########################################################################################################################
14 # Global properties for the script, for UI (as there’s no way to let them in the operator…).
15 ########################################################################################################################
17 class RenderCopySettingsDataScene(bpy.types.PropertyGroup):
18 allowed: BoolProperty(default=True)
21 class RenderCopySettingsDataSetting(bpy.types.PropertyGroup):
22 strid: StringProperty(default="")
23 copy: BoolProperty(default=False)
26 class RenderCopySettingsData(bpy.types.PropertyGroup):
27 # XXX: The consistency of this collection is delegated to the UI code.
28 # It should only contain one element for each render setting.
29 affected_settings: CollectionProperty(type=RenderCopySettingsDataSetting,
30 name="Affected Settings",
31 description="The list of all available render settings")
32 # XXX Unused, but needed for template_list…
33 affected_settings_idx: IntProperty()
35 # XXX: The consistency of this collection is delegated to the UI code.
36 # It should only contain one element for each scene.
37 allowed_scenes: CollectionProperty(type=RenderCopySettingsDataScene,
38 name="Allowed Scenes",
39 description="The list all scenes in the file")
40 # XXX Unused, but needed for template_list…
41 allowed_scenes_idx: IntProperty()
43 filter_scene: StringProperty(name="Filter Scene",
44 description="Regex to only affect scenes which name matches it",
45 default="")
48 classes = (
49 RenderCopySettingsDataScene,
50 RenderCopySettingsDataSetting,
51 RenderCopySettingsData,