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:
authorBastien Montagne <montagne29@wanadoo.fr>2015-06-29 17:41:00 +0300
committerBastien Montagne <montagne29@wanadoo.fr>2015-06-29 18:18:11 +0300
commitd140e70c496122915eb5c05aba83153e2e0d7998 (patch)
tree1e589247d69da64aa7b0e7802319237ec050b5d6 /release/scripts/startup/bl_operators/presets.py
parent147bd16ed1bb3415b30408b0eab110d0854eadd2 (diff)
parent295d0c52a26730edc6d4ed1276e4051cce006be5 (diff)
Merge branch 'master' into temp-ghash-experimentstemp-ghash-experiments
Note that 'store hash' feature was removed for now - to complex to maintain (conflicts) and relatively easy to re-add if we ever really want this one day. Conflicts: source/blender/blenlib/BLI_ghash.h source/blender/blenlib/intern/BLI_ghash.c source/blender/blenlib/intern/hash_mm2a.c source/blender/bmesh/tools/bmesh_region_match.c tests/gtests/blenlib/BLI_ghash_performance_test.cc tests/gtests/blenlib/BLI_ghash_test.cc tests/gtests/blenlib/CMakeLists.txt
Diffstat (limited to 'release/scripts/startup/bl_operators/presets.py')
-rw-r--r--release/scripts/startup/bl_operators/presets.py23
1 files changed, 20 insertions, 3 deletions
diff --git a/release/scripts/startup/bl_operators/presets.py b/release/scripts/startup/bl_operators/presets.py
index 7195b7819d1..63c1945d2d2 100644
--- a/release/scripts/startup/bl_operators/presets.py
+++ b/release/scripts/startup/bl_operators/presets.py
@@ -45,11 +45,28 @@ class AddPresetBase:
options={'HIDDEN', 'SKIP_SAVE'},
)
+ # needed for mix-ins
+ order = [
+ "name",
+ "remove_active",
+ ]
+
@staticmethod
def as_filename(name): # could reuse for other presets
- for char in " !@#$%^&*(){}:\";'[]<>,.\\/?":
- name = name.replace(char, '_')
- return name.lower().strip()
+
+ # lazy init maketrans
+ def maketrans_init():
+ cls = AddPresetBase
+ attr = "_as_filename_trans"
+
+ trans = getattr(cls, attr, None)
+ if trans is None:
+ trans = str.maketrans({char: "_" for char in " !@#$%^&*(){}:\";'[]<>,.\\/?"})
+ setattr(cls, attr, trans)
+ return trans
+
+ trans = maketrans_init()
+ return name.lower().strip().translate(trans)
def execute(self, context):
import os