Skip to content

Commit

Permalink
Fixed and improved DynamicMap.opts and .options
Browse files Browse the repository at this point in the history
  • Loading branch information
philippjfr committed Dec 11, 2018
1 parent 601ba0d commit 08ab4b5
Showing 1 changed file with 4 additions and 17 deletions.
21 changes: 4 additions & 17 deletions holoviews/core/spaces.py
Expand Up @@ -1181,9 +1181,8 @@ def opts(self, *args, **kwargs):
streams=self.streams, link_inputs=True)
if not clone:
with util.disable_constant(self):
obj.callback = self.callback
self.callback = dmap.callback
self.callback.inputs[:] = [obj]
obj.callback.inputs[:] = []
dmap = self
dmap.data = OrderedDict([(k, v.opts(*args, **kwargs))
for k, v in self.data.items()])
Expand Down Expand Up @@ -1225,21 +1224,9 @@ def options(self, *args, **kwargs):
Returns:
Returns the cloned object with the options applied
"""
from ..util import Dynamic
clone = kwargs.get('clone', True)

obj = self if clone else self.clone()
dmap = Dynamic(obj, operation=lambda obj, **dynkwargs: obj.options(*args, **kwargs),
streams=self.streams, link_inputs=True)
if not clone:
with util.disable_constant(self):
self.callback = dmap.callback
self.callback.inputs[:] = [obj]
obj.callback.inputs[:] = []
dmap = self
dmap.data = OrderedDict([(k, v.options(*args, **kwargs))
for k, v in self.data.items()])
return dmap
if 'clone' not in kwargs:
kwargs['clone'] = True
return self.opts(*args, **kwargs)


def clone(self, data=None, shared_data=True, new_type=None, link=True,
Expand Down

0 comments on commit 08ab4b5

Please sign in to comment.