I started to try doing custom extensions for tools. Is there a way to get the custom tool to merge in the gridplot() toolbar when merge_tool = True?
In this example I just extend the reset tool so it prints something in the console when clicked. It works fine when i show the figure alone or when the gridplot toolbar has merge_tool = False.
from bokeh.io import show
from bokeh.plotting import figure
from bokeh.models import Tool
from bokeh.layouts import gridplot
reset_code = “”"
import * as p from “core/properties”
import {ResetTool,ResetToolView} from “models/tools/actions/reset_tool”
export class NewResetView extends ResetToolView
NewResetView::doit = →
@plot_view.clear_state()
@plot_view.reset_range()
@plot_view.reset_selection()
console.log ‘TEST’
if @model.reset_size
return @plot_view.reset_dimensions()
return
export class NewReset extends ResetTool
default_view : NewResetView
type : “ResetTool”
tool_name : “NewReset”
icon : “bk-tool-icon-reset”
“”"
class NewReset(Tool):
implementation = reset_code
fig = figure()
fig.scatter(x=range(10),y=range(10))
fig.toolbar.tools += [NewReset()]
grid = gridplot([[fig]])
show(fig)
grid.children[0].merge_tools = False # if True, the new tool does not show up
#show(grid)
``
It seems like I needed to give the new tool a new type too. The new reset tool was actually merged with the default reset tool in a reset button with name “Reset”
If there is not default reset tool in the grid, the “NewReset” tools will be merged together in a reset button with name “NewReset”
If I just do
type:“NewResetTool”
``
then they will be merged as expected and there will be both a reset button with name “NewReset”, and a reset button with name “Reset” for the default tool
type
must be the same as model name. We would auto-generate this if only any languages we use supported macros.
···
On Sep 6, 2017 16:07, “Sébastien Roche” [email protected] wrote:
It seems like I needed to give the new tool a new type too. The new reset tool was actually merged with the default reset tool in a reset button with name “Reset”
If there is not default reset tool in the grid, the “NewReset” tools will be merged together in a reset button with name “NewReset”
If I just do
type:“NewResetTool”
``
then they will be merged as expected and there will be both a reset button with name “NewReset”, and a reset button with name “Reset” for the default tool
–
You received this message because you are subscribed to the Google Groups “Bokeh Discussion - Public” group.
To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit https://groups.google.com/a/continuum.io/d/msgid/bokeh/84fbe5f1-d962-4896-93aa-eac5bd47caa8%40continuum.io.
For more options, visit https://groups.google.com/a/continuum.io/d/optout.