void CfgExternalToolModel::initFormats() { QList<DocumentFormatId> ids = AppContext::getDocumentFormatRegistry()->getRegisteredFormats(); DocumentFormatConstraints commonConstraints; commonConstraints.addFlagToSupport(DocumentFormatFlag_SupportWriting); commonConstraints.addFlagToExclude(DocumentFormatFlag_SingleObjectFormat); commonConstraints.addFlagToExclude(DocumentFormatFlag_CannotBeCreated); DocumentFormatConstraints seqWrite(commonConstraints); seqWrite.supportedObjectTypes += GObjectTypes::SEQUENCE; DocumentFormatConstraints seqRead(commonConstraints); seqRead.supportedObjectTypes += GObjectTypes::SEQUENCE; DocumentFormatConstraints msaWrite(commonConstraints); msaWrite.supportedObjectTypes += GObjectTypes::MULTIPLE_SEQUENCE_ALIGNMENT; DocumentFormatConstraints msaRead(commonConstraints); msaRead.supportedObjectTypes += GObjectTypes::MULTIPLE_SEQUENCE_ALIGNMENT; DocumentFormatConstraints annWrite(commonConstraints); annWrite.supportedObjectTypes += GObjectTypes::ANNOTATION_TABLE; DocumentFormatConstraints annRead(commonConstraints); annRead.supportedObjectTypes += GObjectTypes::ANNOTATION_TABLE; foreach(const DocumentFormatId& id, ids) { DocumentFormat* df = AppContext::getDocumentFormatRegistry()->getFormatById(id); if (df->checkConstraints(seqWrite)) { seqFormatsW[df->getFormatName()] = df->getFormatId(); } if (df->checkConstraints(seqRead)) { seqFormatsR[df->getFormatName()] = df->getFormatId(); } if (df->checkConstraints(msaWrite)) { msaFormatsW[df->getFormatName()] = df->getFormatId(); } if (df->checkConstraints(msaRead)) { msaFormatsR[df->getFormatName()] = df->getFormatId(); } if (df->checkConstraints(annWrite)) { annFormatsW[df->getFormatName()] = df->getFormatId(); } if (df->checkConstraints(annRead)) { annFormatsR[df->getFormatName()] = df->getFormatId(); } }
void SaveSelectedSequenceFromMSADialogController::initSaveController() { SaveDocumentControllerConfig config; config.defaultFormatId = BaseDocumentFormats::FASTA; config.fileDialogButton = fileButton; config.fileNameEdit = fileNameEdit; config.formatCombo = formatCombo; config.parentWidget = this; DocumentFormatConstraints formatConstraints; formatConstraints.supportedObjectTypes << GObjectTypes::SEQUENCE; formatConstraints.addFlagToExclude(DocumentFormatFlag_SingleObjectFormat); formatConstraints.addFlagToSupport(DocumentFormatFlag_SupportWriting); saveController = new SaveDocumentController(config, formatConstraints, this); }
void ExportMSA2SequencesDialog::initSaveController() { SaveDocumentControllerConfig config; config.defaultFormatId = BaseDocumentFormats::FASTA; config.fileDialogButton = fileButton; config.fileNameEdit = fileNameEdit; config.formatCombo = formatCombo; config.parentWidget = this; config.defaultFileName = defaultDir + "/" + defaultFileName + "." +AppContext::getDocumentFormatRegistry()->getFormatById(config.defaultFormatId)->getSupportedDocumentFileExtensions().first(); DocumentFormatConstraints formatConstraints; formatConstraints.supportedObjectTypes << GObjectTypes::SEQUENCE; formatConstraints.addFlagToExclude(DocumentFormatFlag_SingleObjectFormat); formatConstraints.addFlagToSupport(DocumentFormatFlag_SupportWriting); saveController = new SaveDocumentController(config, formatConstraints, this); }