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:
authorCampbell Barton <ideasman42@gmail.com>2018-11-13 00:58:53 +0300
committerCampbell Barton <ideasman42@gmail.com>2018-11-13 00:58:53 +0300
commite17843782cde144995f363f1d023ccacd7c49278 (patch)
treec107453e7e94acab16afe70da12b6b3ad63b68d6 /release
parent6844f7eb0cf5c7a5f83677ce92ca8f03b92c5b8a (diff)
Cleanup: use namedtuple for KeymapParams
Prefer immutable types where possible.
Diffstat (limited to 'release')
-rw-r--r--release/scripts/presets/keyconfig/keymap_data/blender_default.py41
1 files changed, 27 insertions, 14 deletions
diff --git a/release/scripts/presets/keyconfig/keymap_data/blender_default.py b/release/scripts/presets/keyconfig/keymap_data/blender_default.py
index b0d230a47ba..b4d0779e676 100644
--- a/release/scripts/presets/keyconfig/keymap_data/blender_default.py
+++ b/release/scripts/presets/keyconfig/keymap_data/blender_default.py
@@ -20,20 +20,33 @@
# ------------------------------------------------------------------------------
# Configurable Parameters
-class KeymapParams:
- __slots__ = (
- "apple",
- "legacy",
- "select_mouse",
- "action_mouse",
+from collections import namedtuple
+
+# TODO: remove when we drop Python 3.6
+import sys
+if sys.version_info >= (3, 7):
+ KeymapParams = namedtuple(
+ "KeymapParams",
+ ("apple", "legacy", "select_mouse", "action_mouse"),
+ defaults=(
+ sys.platform == "darwin",
+ False,
+ 'SELECTMOUSE',
+ 'ACTIONMOUSE',
+ ),
)
-
- def __init__(self, legacy=False):
- import platform
- self.apple = platform.system() == 'Darwin'
- self.legacy = legacy
- self.select_mouse = 'SELECTMOUSE'
- self.action_mouse = 'ACTIONMOUSE'
+else:
+ KeymapParams = namedtuple(
+ "KeymapParams",
+ ("apple", "legacy", "select_mouse", "action_mouse"),
+ )
+ KeymapParams.__new__.__defaults__ = (
+ sys.platform == "darwin",
+ False,
+ 'SELECTMOUSE',
+ 'ACTIONMOUSE',
+ )
+del namedtuple, sys
# ------------------------------------------------------------------------------
@@ -4921,5 +4934,5 @@ def generate_keymaps(params=None):
if __name__ == "__main__":
from bpy_extras.keyconfig_utils import keyconfig_import_from_data
- keyconfig_import_from_data("Blender", generate_keymaps(KeymapParams()))
+ keyconfig_import_from_data("Blender", generate_keymaps())
keyconfig_import_from_data("Blender 27X", generate_keymaps(KeymapParams(legacy=True)))