Reference

# Module `core.MainController`

Provides the logic that unites the different objects. Objects (listeners) can be registered to the event_source object, that's used to notify the listeners about events. Holds the current project info, in the format described by Project.loaded in the field 'project'. Event list:

name | param_a
project-selected | Project
project-will-save | Project
project-maps-changed | Project
project-data-changed | Project
network-changed | Project
network-weights-changed | Project

## Functions

MainController.new () | Constructor.
MainController:about () | Opens the about dialog.
MainController:addon_view () | Opens the addon viewer dialog.
MainController:graph_view () | Runs the graph view dialog.
MainController:main_quit () | Quits from the application.
MainController:network_changed () | Emits an "network-changed" event for the current network.
MainController:network_configure_activation () | Runs the activation function configurator dialog.
MainController:network_configure_params () | Runs the param configurator dialog.
MainController:network_initialize_weights () | Runs the weight initializer dialog.
MainController:network_run (data) | Runs the network run dialog.
MainController:network_test () | Runs the network test dialog.
MainController:network_train () | Runs the network trainer dialog.
MainController:network_weights_changed () | Emits an "network-weight-changed" event for the current network.
MainController:project_close () | Closes the current opened project.
MainController:project_data_changed () | Emits an "project-data-changed" event for the current network.
MainController:project_edit_data () | Runs the data manager.
MainController:project_edit_maps () | Runs the map manager.
MainController:project_edit_topology () | Runs the dialog to edit the network topology (mantaining the current parameters other project info).
MainController:project_maps_changed () | Emits an "project-maps-changed" event for the current network.
MainController:project_new () | Runs the network creation dialog to create a new project.
MainController:project_open () | Runs the project open dialog.
MainController:project_save () | Runs the project save dialog.
MainController:project_select (project) | Changes the current project.
MainController:run () | Runs the application.
MainController:weight_view () | Runs the weight view dialog.
(private) MainController:load_addons () | Loads the addons.

## Functions

MainController.new ()
  Constructor.

  ### Return value:

  New MainController instance
MainController:about ()
  Opens the about dialog.
MainController:addon_view ()
  Opens the addon viewer dialog.
MainController:graph_view ()
  Runs the graph view dialog.
MainController:main_quit ()
  Quits from the application.
MainController:network_changed ()
  Emits an "network-changed" event for the current network.
MainController:network_configure_activation ()
  Runs the activation function configurator dialog.
MainController:network_configure_params ()
  Runs the param configurator dialog.
MainController:network_initialize_weights ()
  Runs the weight initializer dialog.
MainController:network_run (data)
  Runs the network run dialog.

  ### Parameters

  - data:
MainController:network_test ()
  Runs the network test dialog.
MainController:network_train ()
  Runs the network trainer dialog.
MainController:network_weights_changed ()
  Emits an "network-weight-changed" event for the current network.
MainController:project_close ()
  Closes the current opened project.
MainController:project_data_changed ()
  Emits an "project-data-changed" event for the current network.
MainController:project_edit_data ()
  Runs the data manager.
MainController:project_edit_maps ()
  Runs the map manager.
MainController:project_edit_topology ()
  Runs the dialog to edit the network topology (mantaining the current parameters other project info).
MainController:project_maps_changed ()
  Emits an "project-maps-changed" event for the current network.
MainController:project_new ()
  Runs the network creation dialog to create a new project.
MainController:project_open ()
  Runs the project open dialog.
MainController:project_save ()
  Runs the project save dialog.
MainController:project_select (project)
  Changes the current project. If the current project "changed" flag is on, then the user will be asked if he really wants to change projects.

  ### Parameters

  - project: Project to select (can be nil to just close)

  ### Return value:

  true if the new project was selected
MainController:run ()
  Runs the application.
MainController:weight_view ()
  Runs the weight view dialog.
(private) MainController:load_addons ()
  Loads the addons.