.. _secbrows: SectionBrowser -------------- .. class:: SectionBrowser Syntax: ``sb = h.SectionBrowser()`` ``sb = h.SectionBrowser(SectionList)`` Description: Class that makes a visible list of all section names. If the optional SectionList arg is present then only those section names are shown in the browser. Example: .. code-block:: python from neuron import h, gui soma = h.Section(name='soma') sl = h.SectionList() sl.append() sb = h.SectionBrowser(sl) .. image:: ../../images/secbrows-sectionList.png :align: center .. seealso:: :class:`SectionList`, :ref:`stdrun_shape` ---- .. method:: SectionBrowser.select Syntax: ``.select()`` Description: currently accessed section is highlighted. Example: .. code-block:: python from neuron import h, gui soma = h.Section(name='soma') axon = h.Section(name='axon') sb = h.SectionBrowser() sb.select() .. image:: ../../images/secbrows-select.png :align: center ---- .. method:: SectionBrowser.select_action Syntax: ``sb.select_action(python_func)`` Description: A Python function is executed when an item is selected (single click or dragging) by the mouse. Before execution, the selected section is pushed. (and popped after the function completes.) A Python function is executed in the object context in which \ ``select_action`` registered it. Example: .. code-block:: python from neuron import h, gui soma = h.Section(name='soma') axon = h.Section(name='axon') def select(sec): print 'select:', sec, type(sec) def accept(sec): print 'accept:', sec sb = h.SectionBrowser() sb.select_action(select) sb.accept_action(select) .. note:: Python support for :meth:`select_action` was added in NEURON 7.5. ---- .. method:: SectionBrowser.accept_action Syntax: ``sb.accept_action(python_func)`` Description: A Python function is executed when an item is accepted (double click) by the mouse. Before execution, the selected section is pushed. (and popped after the function completes.) A Python function is executed in the object context in which the ``accept_action`` registered it. Example: .. code-block:: python from neuron import h, gui soma = h.Section(name='soma') axon = h.Section(name='axon') def select(sec): print 'select:', sec, type(sec) def accept(sec): print 'accept:', sec sb = h.SectionBrowser() sb.select_action(select) sb.accept_action(accept) .. note:: Python support for :meth:`accept_action` was added in NEURON 7.5.