def METHOD_NAME(self, context):
    layout = self.layout
    row = layout.row(align=True)
    row.prop(context.scene.sv_add_node_panel_settings, "node_search", text="")
    if context.scene.sv_add_node_panel_settings.node_search:
        for cat, add_nodes in self.categories.items():
            icon_prop = sm.icon(cat.icon) if cat.icon else {}
            layout.label(text=cat.name, **icon_prop)
            self.draw_add_node(context, add_nodes)
    else:
        layout.prop(context.scene.sv_add_node_panel_settings, "selected_category", text="")
        self.draw_add_node(context, self.items)
    col = layout.column()
    col.use_property_split = True
    col.use_property_decorate = False
    col.prop(context.scene.sv_add_node_panel_settings, 'icons_only')
    if context.scene.sv_add_node_panel_settings.icons_only:
        col.prop(context.scene.sv_add_node_panel_settings, 'columns_number')