From 9d371e16ae41c1280940e68d204f069c9870a149 Mon Sep 17 00:00:00 2001 From: Pardhav Maradani <66913993+PardhavMaradani@users.noreply.github.com> Date: Sun, 23 Feb 2025 18:31:17 +0530 Subject: [PATCH] Fixes BradyAJohnston/MolecularNodes#746 (#747) - Add checks for presence of addon preferences --- molecularnodes/entities/molecule/ui.py | 12 ++++++++++-- molecularnodes/pref.py | 8 ++++---- 2 files changed, 14 insertions(+), 6 deletions(-) diff --git a/molecularnodes/entities/molecule/ui.py b/molecularnodes/entities/molecule/ui.py index 42f6cb37..8fde2c75 100644 --- a/molecularnodes/entities/molecule/ui.py +++ b/molecularnodes/entities/molecule/ui.py @@ -491,7 +491,11 @@ def panel_wwpdb(layout, scene): op.style = scene.mn.import_style op.centre = scene.mn.import_centre op.centre_type = scene.mn.import_centre_type - op.cache_dir = str(addon_preferences().cache_dir) + prefs = addon_preferences() + if prefs is not None: + op.cache_dir = str(prefs.cache_dir) + else: + op.cache_dir = str(bpy.app.tempdir) layout.separator(factor=0.4) layout.separator() @@ -537,7 +541,11 @@ def panel_alphafold(layout, scene): op.style = scene.mn.import_style op.centre = scene.mn.import_centre op.centre_type = scene.mn.import_centre_type - op.cache_dir = str(addon_preferences().cache_dir) + prefs = addon_preferences() + if prefs is not None: + op.cache_dir = str(prefs.cache_dir) + else: + op.cache_dir = str(bpy.app.tempdir) layout.separator(factor=0.4) diff --git a/molecularnodes/pref.py b/molecularnodes/pref.py index 6cec3c1a..51cd2ea2 100644 --- a/molecularnodes/pref.py +++ b/molecularnodes/pref.py @@ -14,10 +14,10 @@ def addon_preferences( try: return context.preferences.addons[__package__].preferences except KeyError: - return context.preferences.addons[ - "bl_ext.vscode_development.molecularnodes" - ].preferences - + key = "bl_ext.vscode_development.molecularnodes" + if key in context.preferences.addons: + return context.preferences.addons[key].preferences + return None class MN_OT_Template_Install(bpy.types.Operator): bl_idname = "mn.template_install"