Skip to content

Commit 8fd7ef2

Browse files
authored
Merge pull request #627 from gamingrobot/5.0-get-set-fix
Use set_transform and get_transform to fix compatibility with 5.0.
2 parents 5704db8 + ae0456c commit 8fd7ef2

File tree

5 files changed

+16
-20
lines changed

5 files changed

+16
-20
lines changed

BlenderMalt/MaltMaterial.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import os
22
import bpy
3-
from BlenderMalt.MaltUtils import malt_path_getter, malt_path_setter
3+
from BlenderMalt.MaltUtils import malt_path_set_transform, malt_path_get_transform
44
from . MaltProperties import MaltPropertyGroup
55

66
_MATERIALS = {}
@@ -28,7 +28,7 @@ def poll_tree(self, object):
2828
options={'LIBRARY_EDITABLE'}, override={'LIBRARY_OVERRIDABLE'})
2929

3030
shader_source : bpy.props.StringProperty(name="Shader Source", subtype='FILE_PATH', update=update_source,
31-
set=malt_path_setter('shader_source'), get=malt_path_getter('shader_source'),
31+
set_transform=malt_path_set_transform, get_transform=malt_path_get_transform,
3232
options={'LIBRARY_EDITABLE'}, override={'LIBRARY_OVERRIDABLE'})
3333

3434
shader_nodes : bpy.props.PointerProperty(name="Node Tree", type=bpy.types.NodeTree, update=update_nodes, poll=poll_tree,

BlenderMalt/MaltNodes/MaltNodeTree.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
import bpy
44
from BlenderMalt.MaltProperties import MaltPropertyGroup
55
from BlenderMalt import MaltPipeline
6-
from BlenderMalt.MaltUtils import malt_path_setter, malt_path_getter
6+
from BlenderMalt.MaltUtils import malt_path_set_transform, malt_path_get_transform
77

88
from BlenderMalt.MaltNodes.MaltNode import MaltNode
99

@@ -67,7 +67,7 @@ def update_graph_type(self, context):
6767
library_source : bpy.props.StringProperty(name="Local Library", subtype='FILE_PATH',
6868
options={'LIBRARY_EDITABLE'},
6969
override={'LIBRARY_OVERRIDABLE'},
70-
set=malt_path_setter('library_source'), get=malt_path_getter('library_source'))
70+
set_transform=malt_path_set_transform, get_transform=malt_path_get_transform)
7171

7272
disable_updates : bpy.props.BoolProperty(name="Disable Updates", default=False,
7373
options={'LIBRARY_EDITABLE'}, override={'LIBRARY_OVERRIDABLE'})

BlenderMalt/MaltPipeline.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import os, platform, time
22
import bpy
3-
from BlenderMalt.MaltUtils import malt_path_getter, malt_path_setter
3+
from BlenderMalt.MaltUtils import malt_path_set_transform, malt_path_get_transform
44
from . import MaltMaterial, MaltMeshes, MaltTextures
55

66
_BRIDGE = None
@@ -105,11 +105,11 @@ def update_pipeline_settings(self, context):
105105
self.update_pipeline(context)
106106

107107
pipeline : bpy.props.StringProperty(name="Malt Pipeline", subtype='FILE_PATH', update=update_pipeline_settings,
108-
set=malt_path_setter('pipeline'), get=malt_path_getter('pipeline'),
108+
set_transform=malt_path_set_transform, get_transform=malt_path_get_transform,
109109
options={'LIBRARY_EDITABLE'}, override={'LIBRARY_OVERRIDABLE'})
110110

111111
plugins_dir : bpy.props.StringProperty(name="Local Plugins", subtype='DIR_PATH', update=update_pipeline_settings,
112-
set=malt_path_setter('plugins_dir'), get=malt_path_getter('plugins_dir'),
112+
set_transform=malt_path_set_transform, get_transform=malt_path_get_transform,
113113
options={'LIBRARY_EDITABLE'}, override={'LIBRARY_OVERRIDABLE'})
114114

115115
viewport_bit_depth : bpy.props.EnumProperty(items=[('8', '8', ''),('16', '16', ''),('32', '32', '')],

BlenderMalt/MaltUtils.py

Lines changed: 5 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -25,15 +25,11 @@ def invoke(self, context, event):
2525
return {'RUNNING_MODAL'}
2626

2727
# Always store paths in UNIX format so saved files work across OSs
28-
def malt_path_setter(property_name):
29-
def setter(self, value):
30-
self[property_name] = value.replace('\\','/')
31-
return setter
32-
33-
def malt_path_getter(property_name):
34-
def getter(self):
35-
return self.get(property_name,'').replace('\\','/')
36-
return getter
28+
def malt_path_set_transform(self, new_value, curr_value, is_set):
29+
return new_value.replace('\\','/')
30+
31+
def malt_path_get_transform(self, curr_value, is_set):
32+
return curr_value.replace('\\','/')
3733

3834
# Operator buttons are generated every time the UI is redrawn.
3935
# The UI is redrawn for every frame the cursor hovers over it

BlenderMalt/__init__.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
__MALT_DEPENDENCIES_PATH = path.join(__MALT_PATH,'Malt','.Dependencies-{}'.format(_PY_VERSION))
2222
if __MALT_DEPENDENCIES_PATH not in sys.path: sys.path.append(__MALT_DEPENDENCIES_PATH)
2323

24-
from BlenderMalt.MaltUtils import malt_path_getter, malt_path_setter
24+
from BlenderMalt.MaltUtils import malt_path_set_transform, malt_path_get_transform
2525

2626
class Preferences(bpy.types.AddonPreferences):
2727
# this must match the addon name
@@ -31,13 +31,13 @@ class Preferences(bpy.types.AddonPreferences):
3131
description="Setups a VSCode project on your .blend file folder")
3232

3333
renderdoc_path : bpy.props.StringProperty(name="RenderDoc Path", subtype='FILE_PATH',
34-
set=malt_path_setter('renderdoc_path'), get=malt_path_getter('renderdoc_path'))
34+
set_transform=malt_path_set_transform, get_transform=malt_path_get_transform)
3535

3636
plugins_dir : bpy.props.StringProperty(name="Global Plugins", subtype='DIR_PATH',
37-
set=malt_path_setter('plugins_dir'), get=malt_path_getter('plugins_dir'))
37+
set_transform=malt_path_set_transform, get_transform=malt_path_get_transform)
3838

3939
docs_path : bpy.props.StringProperty(name="Docs Path", subtype='DIR_PATH',
40-
set=malt_path_setter('docs_path'), get=malt_path_getter('docs_path'))
40+
set_transform=malt_path_set_transform, get_transform=malt_path_get_transform)
4141

4242
render_fps_cap : bpy.props.IntProperty(name="Max Viewport Render Framerate", default=30)
4343

0 commit comments

Comments
 (0)