Reference

# Module `view.FilterManager`

Dialog that handles a list of filters. To store the filters and the relations, the following data structures are used:

- self.filters: array that contains the current filters (may have 'holes')
- self.model: list in the form (filtername, self.filters index)
- self.neurons_tab.model: list in the form (neuron identifier, self.filters index)

## Functions

FilterManager.new (parent) | Constructor.
FilterManager:run (project) | Runs the dialog.
(private) FilterManager:add_filter () |
(private) FilterManager:add_helper (filter) |
(private) FilterManager:build_filter_tab () | Builds the filter creation / edition / removal tab.
(private) FilterManager:build_gui (parent) | Builds the interface.
(private) FilterManager:build_neurons_tab () | Builds the neurons tab.
(private) FilterManager:cell_edited (path, data) |
(private) FilterManager:edit_filter () |
(private) FilterManager:has_selection () |
(private) FilterManager:neurons_filter_cell_data_func (iter) |
(private) FilterManager:neurons_filter_changed (path, iter) |
(private) FilterManager:neurons_filter_edited (path) |
(private) FilterManager:prepare (project) | Prepares the manager for an array of filters.
(private) FilterManager:remove_filter () |
(private) FilterManager:save_filters () | Saves the filters back to the project.
(private) FilterManager:selection_changed () |

## Functions

FilterManager.new (parent)
  Constructor.

  ### Parameters

  - parent: Parent window

  ### Return value:

  New instance of FilterManager
FilterManager:run (project)
  Runs the dialog.

  ### Parameters

  - project: Project that contains the filters

  ### Return value:

  true if the filters changed
(private) FilterManager:add_filter ()
(private) FilterManager:add_helper (filter)

  ### Parameters

  - filter:
(private) FilterManager:build_filter_tab ()
  Builds the filter creation / edition / removal tab.
(private) FilterManager:build_gui (parent)
  Builds the interface.

  ### Parameters

  - parent: Parent window
(private) FilterManager:build_neurons_tab ()
  Builds the neurons tab.
(private) FilterManager:cell_edited (path, data)

  ### Parameters

  - path:
  - data:
(private) FilterManager:edit_filter ()
(private) FilterManager:has_selection ()
(private) FilterManager:neurons_filter_cell_data_func (iter)

  ### Parameters

  - iter:
(private) FilterManager:neurons_filter_changed (path, iter)

  ### Parameters

  - path:
  - iter:
(private) FilterManager:neurons_filter_edited (path)

  ### Parameters

  - path:
(private) FilterManager:prepare (project)
  Prepares the manager for an array of filters.

  ### Parameters

  - project: Project that contains the filters
(private) FilterManager:remove_filter ()
(private) FilterManager:save_filters ()
  Saves the filters back to the project.
(private) FilterManager:selection_changed ()