from IPython.display import display from IPython import get_ipython import ipywidgets as widgets snippets = { "📥 Start": ''' from build123d import * from jupyter_cadquery import show, show_all,open_viewer, show_clear from IPython.display import display import ipywidgets as widgets''', "🧲 Import STEP": '''from build123d import * model = import_step("element.step") show_object(model)''', "🧪 Cylinder": '''from build123d import * Cylinder(30, 80)''' } dropdown = widgets.Dropdown( options=["-- wybierz snippet --"] + list(snippets.keys()), description="Snippet:" ) def on_select(change): key = change["new"] if key != "-- wybierz snippet --": get_ipython().set_next_input(snippets[key], replace=False) dropdown.value = "-- wybierz snippet --" dropdown.observe(on_select, names="value") display(dropdown)