Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrecht Van Lommel <brecht@blender.org>2021-10-20 14:16:12 +0300
committerBrecht Van Lommel <brecht@blender.org>2021-10-20 14:34:17 +0300
commit4f15c247052b6db49b5226b6c473bdb7b2be6293 (patch)
tree616ce52d24d12e1664b61c64dacd1ed419ff27b5 /intern/cycles/blender/addon/ui.py
parent9001dd7f29a2f22534cf5549bc500422b1243c97 (diff)
Fix T62325, T91990: changing Cycles presets does not update the Blender UI
Diffstat (limited to 'intern/cycles/blender/addon/ui.py')
-rw-r--r--intern/cycles/blender/addon/ui.py22
1 files changed, 13 insertions, 9 deletions
diff --git a/intern/cycles/blender/addon/ui.py b/intern/cycles/blender/addon/ui.py
index 598f6f083ac..0ed2dd24f2e 100644
--- a/intern/cycles/blender/addon/ui.py
+++ b/intern/cycles/blender/addon/ui.py
@@ -26,27 +26,31 @@ from bpy.types import Panel
from bl_ui.properties_grease_pencil_common import GreasePencilSimplifyPanel
from bl_ui.properties_view_layer import ViewLayerCryptomattePanel, ViewLayerAOVPanel
+class CyclesPresetPanel(PresetPanel, Panel):
+ COMPAT_ENGINES = {'CYCLES'}
+ preset_operator = "script.execute_preset"
-class CYCLES_PT_sampling_presets(PresetPanel, Panel):
+ @staticmethod
+ def post_cb(context):
+ # Modify an arbitrary built-in scene property to force a depsgraph
+ # update, because add-on properties don't. (see T62325)
+ render = context.scene.render
+ render.filter_size = render.filter_size
+
+class CYCLES_PT_sampling_presets(CyclesPresetPanel):
bl_label = "Sampling Presets"
preset_subdir = "cycles/sampling"
- preset_operator = "script.execute_preset"
preset_add_operator = "render.cycles_sampling_preset_add"
- COMPAT_ENGINES = {'CYCLES'}
-class CYCLES_PT_viewport_sampling_presets(PresetPanel, Panel):
+class CYCLES_PT_viewport_sampling_presets(CyclesPresetPanel):
bl_label = "Viewport Sampling Presets"
preset_subdir = "cycles/viewport_sampling"
- preset_operator = "script.execute_preset"
preset_add_operator = "render.cycles_viewport_sampling_preset_add"
- COMPAT_ENGINES = {'CYCLES'}
-class CYCLES_PT_integrator_presets(PresetPanel, Panel):
+class CYCLES_PT_integrator_presets(CyclesPresetPanel):
bl_label = "Integrator Presets"
preset_subdir = "cycles/integrator"
- preset_operator = "script.execute_preset"
preset_add_operator = "render.cycles_integrator_preset_add"
- COMPAT_ENGINES = {'CYCLES'}
class CyclesButtonsPanel: