Open axil opened 2 years ago
Ok. Got it:
def f(event):
print('hi')
b = bm.Button()
w = BokehModel(b)
b.on_click(f)
w.render_bundle = w._model_to_traits(b)
b._update_event_callbacks()
w
Just noting that private APIs can change or be removed at any time so using those methods is purely at your own risk.
We could consider crafting a supported, public API for this, but I think we'd need to understand the use-case better. The intended usage of BokehModel
is to be a "last mile" bridge for certain jupyter integrations. I.e. the intent is to set up all your Bokeh models normally up front, then only use BokehModel
as the last step.
This makes the following layout impossible to implement:
Bokeh plot1
Ipywidget Slider
Bokeh plot2
(or rather a horizontal version of this widget sequence)
I realize that I could use the bokeh slider instead of the ipywidgets one. But not all ipywidget widgets have their counterparts in bokeh.
We need to let BokehModel
listen to the underlying model's changes and refresh its render_bundle
.
Hi,
The event callbacks registered before a call to
BokehModel
work fine:Is it possible to register the callbacks after
BokehModel
has been created?