I18n: make add-ons' info translatable
The info provided by add-ons is very valuable to users, yet it wasn’t translatable yet. Reviewed By: mont29 Differential Revision: https://developer.blender.org/D15747
This commit is contained in:
parent
9823a8f72b
commit
73bfd8058f
|
@ -907,6 +907,11 @@ def dump_template_messages(msgs, reports, settings):
|
|||
reports, None, settings)
|
||||
|
||||
|
||||
def dump_addon_bl_info(msgs, reports, module, settings):
|
||||
for prop in ('name', 'location', 'description'):
|
||||
process_msg(msgs, settings.DEFAULT_CONTEXT, module.bl_info[prop], "Add-on " + module.bl_info['name'] + " info: " + prop, reports, None, settings)
|
||||
|
||||
|
||||
##### Main functions! #####
|
||||
def dump_messages(do_messages, do_checks, settings):
|
||||
bl_ver = "Blender " + bpy.app.version_string
|
||||
|
@ -945,6 +950,13 @@ def dump_messages(do_messages, do_checks, settings):
|
|||
# Get strings from startup templates.
|
||||
dump_template_messages(msgs, reports, settings)
|
||||
|
||||
# Get strings from addons' bl_info.
|
||||
import addon_utils
|
||||
for module in addon_utils.modules():
|
||||
if module.bl_info['support'] != 'OFFICIAL':
|
||||
continue
|
||||
dump_addon_bl_info(msgs, reports, module, settings)
|
||||
|
||||
# Get strings from addons' categories.
|
||||
for uid, label, tip in bpy.types.WindowManager.addon_filter.keywords['items'](
|
||||
bpy.context.window_manager,
|
||||
|
@ -1041,6 +1053,9 @@ def dump_addon_messages(module_name, do_checks, settings):
|
|||
reports["check_ctxt"] = check_ctxt
|
||||
dump_py_messages(msgs, reports, {addon}, settings, addons_only=True)
|
||||
|
||||
# Get strings from the addon's bl_info
|
||||
dump_addon_bl_info(msgs, reports, addon, settings)
|
||||
|
||||
pot.unescape() # Strings gathered in py/C source code may contain escaped chars...
|
||||
print_info(reports, pot)
|
||||
|
||||
|
|
|
@ -1928,10 +1928,12 @@ class USERPREF_PT_addons(AddOnPanel, Panel):
|
|||
|
||||
if is_visible:
|
||||
if search and not (
|
||||
(search in info["name"].lower()) or
|
||||
(search in info["name"].lower() or
|
||||
search in iface_(info["name"]).lower()) or
|
||||
(info["author"] and (search in info["author"].lower())) or
|
||||
((filter == "All") and (search in info["category"].lower()))
|
||||
):
|
||||
((filter == "All") and (search in info["category"].lower() or
|
||||
search in iface_(info["category"]).lower()))
|
||||
):
|
||||
continue
|
||||
|
||||
# Addon UI Code
|
||||
|
@ -1954,7 +1956,7 @@ class USERPREF_PT_addons(AddOnPanel, Panel):
|
|||
|
||||
sub = row.row()
|
||||
sub.active = is_enabled
|
||||
sub.label(text="%s: %s" % (info["category"], info["name"]))
|
||||
sub.label(text=iface_("%s: %s") % (iface_(info["category"]), iface_(info["name"])))
|
||||
|
||||
if info["warning"]:
|
||||
sub.label(icon='ERROR')
|
||||
|
@ -1967,11 +1969,11 @@ class USERPREF_PT_addons(AddOnPanel, Panel):
|
|||
if info["description"]:
|
||||
split = colsub.row().split(factor=0.15)
|
||||
split.label(text="Description:")
|
||||
split.label(text=info["description"])
|
||||
split.label(text=tip_(info["description"]))
|
||||
if info["location"]:
|
||||
split = colsub.row().split(factor=0.15)
|
||||
split.label(text="Location:")
|
||||
split.label(text=info["location"])
|
||||
split.label(text=tip_(info["location"]))
|
||||
if mod:
|
||||
split = colsub.row().split(factor=0.15)
|
||||
split.label(text="File:")
|
||||
|
|
Loading…
Reference in New Issue