TOPPASEdge::~TOPPASEdge()
  {
    // notify our childs that we are dying ;)
    emit somethingHasChanged();

    if (from_)
    {
      from_->removeOutEdge(this);
      disconnect(from_, SIGNAL(somethingHasChanged()), this, SLOT(sourceHasChanged()));
    }
    if (to_)
    {
      to_->removeInEdge(this);
      disconnect(this, SIGNAL(somethingHasChanged()), to_, SLOT(inEdgeHasChanged()));
    }
  }
 void TOPPASEdge::showIOMappingDialog()
 {
   TOPPASIOMappingDialog dialog(this);
   if (dialog.exec())
   {
     emit somethingHasChanged();
   }
 }
 void TOPPASInputFileListVertex::showFilesDialog()
 {
   TOPPASInputFilesDialog tifd(this->getFileNames());
   if (tifd.exec())
   {
     QStringList updated_filelist;
     tifd.getFilenames(updated_filelist);
     this->setFilenames(updated_filelist); // to correct filenames (separators etc)
     qobject_cast<TOPPASScene *>(scene())->setChanged(true);
     qobject_cast<TOPPASScene *>(scene())->updateEdgeColors();
     emit somethingHasChanged();
   }
 }