[Bf-blender-cvs] [715faad] ui-preview-buttons: Avoid app._previews access via self.__class__._app
Campbell Barton
noreply at git.blender.org
Tue May 5 11:30:26 CEST 2015
Commit: 715faadf831cc669264062339b836561694ed522
Author: Campbell Barton
Date: Tue May 5 19:28:20 2015 +1000
Branches: ui-preview-buttons
https://developer.blender.org/rB715faadf831cc669264062339b836561694ed522
Avoid app._previews access via self.__class__._app
Instead import _previews globally
Also don't load bpy.utils.previews at start (now requires explicit import)
===================================================================
M release/scripts/modules/bpy/utils/__init__.py
M release/scripts/modules/bpy/utils/previews.py
===================================================================
diff --git a/release/scripts/modules/bpy/utils/__init__.py b/release/scripts/modules/bpy/utils/__init__.py
index 037531f..fa97714 100644
--- a/release/scripts/modules/bpy/utils/__init__.py
+++ b/release/scripts/modules/bpy/utils/__init__.py
@@ -62,8 +62,6 @@ from _bpy import script_paths as _bpy_script_paths
from _bpy import user_resource as _user_resource
from _bpy import _utils_units as units
-from . import previews
-
import bpy as _bpy
import os as _os
import sys as _sys
diff --git a/release/scripts/modules/bpy/utils/previews.py b/release/scripts/modules/bpy/utils/previews.py
index a5a25ac..6881456 100644
--- a/release/scripts/modules/bpy/utils/previews.py
+++ b/release/scripts/modules/bpy/utils/previews.py
@@ -33,53 +33,49 @@ __all__ = (
"clear",
)
+from bpy.app import _previews
+
# High-level previews manager.
class BPyPreviewsCollection(dict):
"""
Dict-like class of previews.
"""
- from _bpy import app as _app
def __init__(self, name):
super().__init__()
self._coll_name = name
def __del__(self):
- app = self.__class__._app
for name in self.keys():
- app._previews.release(self._gen_key(name))
+ _previews.release(self._gen_key(name))
def _gen_key(self, name):
return self._coll_name + name
def new(self, name):
- app = self.__class__._app
- return self.setdefault(name, app._previews.new(self._gen_key(name)))
- new.__doc__ = _app._previews.new.__doc__
+ return self.setdefault(name, _previews.new(self._gen_key(name)))
+ new.__doc__ = _previews.new.__doc__
def load(self, name, path, path_type, force_reload=False):
- app = self.__class__._app
pkey = self._gen_key(name)
if force_reload:
- self[name] = p = app._previews.load(pkey, path, path_type, True)
+ self[name] = p = _previews.load(pkey, path, path_type, True)
return p
else:
- return self.setdefault(name, app._previews.load(pkey, path, path_type, False))
- load.__doc__ = _app._previews.load.__doc__
+ return self.setdefault(name, _previews.load(pkey, path, path_type, False))
+ load.__doc__ = _previews.load.__doc__
def release(self, name):
- app = self.__class__._app
p = self.pop(name, None)
if p is not None:
del p
- app._previews.release(self._gen_key(name))
- release.__doc__ = _app._previews.release.__doc__
+ _previews.release(self._gen_key(name))
+ release.__doc__ = _previews.release.__doc__
def clear(self):
- app = self.__class__._app
for name in self.keys():
- app._previews.release(self._gen_key(name))
+ _previews.release(self._gen_key(name))
super().clear()
def __delitem__(self, key):
More information about the Bf-blender-cvs
mailing list