Skip to content
Snippets Groups Projects
Commit 6cd7247c authored by Langella Olivier's avatar Langella Olivier
Browse files

export fasta now works the same way as old Java version : all, one by subgroup, one by group

parent f707d4dc
No related branches found
No related tags found
No related merge requests found
......@@ -65,7 +65,15 @@
<property name="title">
<string>&amp;Export files</string>
</property>
<addaction name="actionFasta"/>
<widget class="QMenu" name="menu_Fasta">
<property name="title">
<string>&amp;Fasta</string>
</property>
<addaction name="actionAll_grouped_proteins"/>
<addaction name="actionOnly_one_by_subgroup"/>
<addaction name="actionOnly_one_by_group"/>
</widget>
<addaction name="menu_Fasta"/>
<addaction name="actionMassChroQ"/>
<addaction name="actionMassChroqPRM"/>
<addaction name="actionSpreadsheet"/>
......@@ -112,11 +120,6 @@
<string>Load &amp;results</string>
</property>
</action>
<action name="actionFasta">
<property name="text">
<string>&amp;Fasta</string>
</property>
</action>
<action name="actionMassChroQ">
<property name="text">
<string>&amp;MassChroQ</string>
......@@ -169,7 +172,22 @@
</action>
<action name="actionMassChroqPRM">
<property name="text">
<string>MassChroqPRM</string>
<string>MassC&amp;hroqPRM</string>
</property>
</action>
<action name="actionAll_grouped_proteins">
<property name="text">
<string>all grouped proteins</string>
</property>
</action>
<action name="actionOnly_one_by_subgroup">
<property name="text">
<string>only one by subgroup</string>
</property>
</action>
<action name="actionOnly_one_by_group">
<property name="text">
<string>only one by group</string>
</property>
</action>
</widget>
......@@ -290,7 +308,7 @@
</hints>
</connection>
<connection>
<sender>actionFasta</sender>
<sender>actionAll_grouped_proteins</sender>
<signal>triggered()</signal>
<receiver>Main</receiver>
<slot>doActionFasta()</slot>
......@@ -449,6 +467,38 @@
</hint>
</hints>
</connection>
<connection>
<sender>actionOnly_one_by_group</sender>
<signal>triggered()</signal>
<receiver>Main</receiver>
<slot>doActionFastaOneByGroup()</slot>
<hints>
<hint type="sourcelabel">
<x>-1</x>
<y>-1</y>
</hint>
<hint type="destinationlabel">
<x>231</x>
<y>191</y>
</hint>
</hints>
</connection>
<connection>
<sender>actionOnly_one_by_subgroup</sender>
<signal>triggered()</signal>
<receiver>Main</receiver>
<slot>doActionFastaOneBySubgroup()</slot>
<hints>
<hint type="sourcelabel">
<x>-1</x>
<y>-1</y>
</hint>
<hint type="destinationlabel">
<x>231</x>
<y>191</y>
</hint>
</hints>
</connection>
</connections>
<slots>
<slot>selectXpipFile()</slot>
......@@ -465,5 +515,7 @@
<slot>doActionTandemRun()</slot>
<slot>doActionSaveProject()</slot>
<slot>doActionMassChroqPRM()</slot>
<slot>doActionFastaOneBySubgroup()</slot>
<slot>doActionFastaOneByGroup()</slot>
</slots>
</ui>
......@@ -500,40 +500,78 @@ MainWindow::doActionSpectralCountingMcq()
void
MainWindow::doActionFasta()
{
try
QSettings settings;
QString default_location = settings.value("path/fastafile", "").toString();
QString filename = QFileDialog::getSaveFileName(
this,
tr("Save FASTA file"),
QString("%1/untitled.fasta").arg(default_location),
tr("FASTA (*.fasta)"));
if(filename.isEmpty())
{
// export all grouped proteins
// or only one protein by sub grouped
// or only one protein by group
return;
}
QSettings settings;
QString default_location =
settings.value("path/fastafile", "").toString();
settings.setValue("path/fastafile", QFileInfo(filename).absolutePath());
QString filename = QFileDialog::getSaveFileName(
this,
tr("Save FASTA file"),
QString("%1/untitled.fasta").arg(default_location),
tr("FASTA (*.fasta)"));
showWaitingMessage(
tr("Writing %1 FASTA file").arg(QFileInfo(filename).fileName()));
emit operateWritingFastaFile(filename, _project_sp, ExportFastaType::all);
}
if(filename.isEmpty())
{
return;
}
settings.setValue("path/fastafile", QFileInfo(filename).absolutePath());
void
MainWindow::doActionFastaOneBySubgroup()
{
QSettings settings;
QString default_location = settings.value("path/fastafile", "").toString();
showWaitingMessage(
tr("Writing %1 FASTA file").arg(QFileInfo(filename).fileName()));
emit operateWritingFastaFile(filename, _project_sp, ExportFastaType::all);
QString filename = QFileDialog::getSaveFileName(
this,
tr("Save FASTA file"),
QString("%1/untitled.fasta").arg(default_location),
tr("FASTA (*.fasta)"));
if(filename.isEmpty())
{
return;
}
catch(pappso::PappsoException &error)
settings.setValue("path/fastafile", QFileInfo(filename).absolutePath());
showWaitingMessage(
tr("Writing %1 FASTA file").arg(QFileInfo(filename).fileName()));
emit operateWritingFastaFile(
filename, _project_sp, ExportFastaType::oneBySubgroup);
}
void
MainWindow::doActionFastaOneByGroup()
{
QSettings settings;
QString default_location = settings.value("path/fastafile", "").toString();
QString filename = QFileDialog::getSaveFileName(
this,
tr("Save FASTA file"),
QString("%1/untitled.fasta").arg(default_location),
tr("FASTA (*.fasta)"));
if(filename.isEmpty())
{
viewError(
tr("Error while writing MassChroqML file :\n%1").arg(error.qwhat()));
return;
}
settings.setValue("path/fastafile", QFileInfo(filename).absolutePath());
showWaitingMessage(
tr("Writing %1 FASTA file").arg(QFileInfo(filename).fileName()));
emit operateWritingFastaFile(
filename, _project_sp, ExportFastaType::oneByGroup);
}
void
MainWindow::doActionMassChroQ()
{
......
......@@ -68,6 +68,8 @@ class MainWindow : public QMainWindow
void doActionAbout();
void doActionQuit();
void doActionFasta();
void doActionFastaOneBySubgroup();
void doActionFastaOneByGroup();
void doActionMassChroQ();
void doActionMassChroqPRM();
void doActionProticDb();
......
......@@ -102,7 +102,7 @@ ExportFastaFile::writeIdentificationGroup(
continue;
if((m_exportType == ExportFastaType::oneByGroup) &&
(group_number == old_group_number) && (subgroup_number > 1))
(group_number == old_group_number))
continue;
old_group_number = group_number;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment