diff options
-rw-r--r-- | release/scripts/modules/bpy/path.py | 11 | ||||
-rw-r--r-- | release/scripts/modules/bpy/utils/__init__.py | 2 | ||||
-rw-r--r-- | release/scripts/modules/bpy_types.py | 1 | ||||
-rw-r--r-- | release/scripts/startup/bl_operators/presets.py | 4 |
4 files changed, 10 insertions, 8 deletions
diff --git a/release/scripts/modules/bpy/path.py b/release/scripts/modules/bpy/path.py index 3860445233d..fad52eae84a 100644 --- a/release/scripts/modules/bpy/path.py +++ b/release/scripts/modules/bpy/path.py @@ -201,12 +201,13 @@ _display_name_literals = { } -def display_name(name, *, has_ext=True): +def display_name(name, *, has_ext=True, title_case=True): """ Creates a display string from name to be used menus and the user interface. - Capitalize the first letter in all lowercase names, - mixed case names are kept as is. Intended for use with - filenames and module names. + Intended for use with filenames and module names. + + :arg has_ext: Remove file extension from name + :arg title_case: Convert lowercase names to title case """ if has_ext: @@ -220,7 +221,7 @@ def display_name(name, *, has_ext=True): # (when paths can't start with numbers for eg). name = name.replace("_", " ").lstrip(" ") - if name.islower(): + if title_case and name.islower(): name = name.lower().title() name = _clean_utf8(name) diff --git a/release/scripts/modules/bpy/utils/__init__.py b/release/scripts/modules/bpy/utils/__init__.py index c81aac8fdeb..7f39cc5d422 100644 --- a/release/scripts/modules/bpy/utils/__init__.py +++ b/release/scripts/modules/bpy/utils/__init__.py @@ -606,7 +606,7 @@ def preset_find(name, preset_path, display_name=False, ext=".py"): if display_name: filename = "" for fn in _os.listdir(directory): - if fn.endswith(ext) and name == _bpy.path.display_name(fn): + if fn.endswith(ext) and name == _bpy.path.display_name(fn, title_case=False): filename = fn break else: diff --git a/release/scripts/modules/bpy_types.py b/release/scripts/modules/bpy_types.py index d863778a9c2..5d89763f34b 100644 --- a/release/scripts/modules/bpy_types.py +++ b/release/scripts/modules/bpy_types.py @@ -982,6 +982,7 @@ class Menu(StructRNA, _GenericUI, metaclass=RNAMeta): props_default=props_default, filter_ext=lambda ext: ext.lower() in ext_valid, add_operator=add_operator, + display_name=lambda name: bpy.path.display_name(name, title_case=False) ) @classmethod diff --git a/release/scripts/startup/bl_operators/presets.py b/release/scripts/startup/bl_operators/presets.py index 793a8648ee4..5132b358f5e 100644 --- a/release/scripts/startup/bl_operators/presets.py +++ b/release/scripts/startup/bl_operators/presets.py @@ -77,7 +77,7 @@ class AddPresetBase: setattr(cls, attr, trans) return trans - name = name.lower().strip() + name = name.strip() name = bpy.path.display_name_to_filepath(name) trans = maketrans_init() # Strip surrounding "_" as they are displayed as spaces. @@ -249,7 +249,7 @@ class ExecutePreset(Operator): # change the menu title to the most recently chosen option preset_class = getattr(bpy.types, self.menu_idname) - preset_class.bl_label = bpy.path.display_name(basename(filepath)) + preset_class.bl_label = bpy.path.display_name(basename(filepath), title_case=False) ext = splitext(filepath)[1].lower() |