docs: def makeLogic(self):
          # *** When camera list has been closed, re-create the cameralist tree and update filterchains ***
          # self.manage_cameras_win.signals.close.connect(self.updateCameraTree) # now put into save_camera_config_slot
          
          # self.manage_cameras_win.signals.close.connect(self.filterchain_group.update) # TODO: use this once fixed
          # self.manage_cameras_win.signals.close.connect(self.filterchain_group.read) # TODO: eh.. lets be sure of this .. (are we releasing slots in the LiveThread etc.)
          
          # self.manage_cameras_win.signals.close.connect(self.save_camera_config_slot)
          # self.manage_memory_container.signals.save.connect(self.save_memory_conf_slot)
  
          # *** Menu bar connections ***
          # the self.filemenu.exit attribute was autogenerated
          self.filemenu.exit.               triggered.connect(self.exit_slot)
          self.filemenu.save_window_layout. triggered.connect(
              self.save_window_layout_slot)
          self.filemenu.load_window_layout. triggered.connect(
              self.load_window_layout_slot)
  
          """
          self.configmenu.manage_cameras.   triggered.connect(
              self.manage_cameras_slot)
          self.configmenu.memory_usage.     triggered.connect(
              self.memory_usage_slot)
          """
          
          self.configmenu.configuration_dialog.triggered.connect(self.config_dialog_slot)
          
          self.viewmenu.camera_list.        triggered.connect(self.camera_list_slot)
          self.aboutmenu.about_valkka_live. triggered.connect(self.about_slot)
  
          # *** Connect autogenerated menu calls into autogenerated slot functions ***
          for i in range(1, 5):
              # gets member function grid_ixi_slot
              slot_func = getattr(self, "grid_%ix%i_slot" % (i, i))
              # gets member function grid_ixi from self.viewmenu.video_grid
              menu_func = getattr(self.viewmenu.video_grid,
                                  "grid_%ix%i" % (i, i))
              menu_func.triggered.connect(slot_func)
              # i.e., like this : self.viewmenu.video_grid.grid_1x1.triggered.connect(slot_func)
  
  
          # *** autogenerated machine vision menu and slots ***
          for cl in self.mvision_classes:
              getattr(self.mvisionmenu,cl.name).triggered.connect(getattr(self,cl.name+"_slot"))