void MussaSetupDialog::accept()
{
- std::cout << "Accepted\n";
done(1);
}
sequenceFrame(0),
scrollArea(0),
seqCount(1),
+ default_directory(QDir::current()),
sequenceLayout(0)
{
scrollArea->show();
}
+QDir SequenceSetupFrame::get_default_dir() const
+{
+ return default_directory;
+}
-//SequenceSetupFrame::SequenceSetupFrame(const SequenceSetupFrame &ssf)
-// : sequenceFrame(ssf.sequenceFrame),
-// sequenceLayout(ssf.sequenceLayout),
-// seqCount(ssf.seqCount)//,
-// //seqList(0)
-//{
-//}
+void SequenceSetupFrame::set_default_dir(const QDir& d)
+{
+ default_directory = d;
+}
void SequenceSetupFrame::changeSequenceCount(int newSeqCount)
{
SequenceSetupWidget *seq = 0;
for (int i = 1; i <= numSeqsToAdd; i++)
{
- seq = new SequenceSetupWidget;
+ seq = new SequenceSetupWidget(this);
seqList.push_back(seq);
sequenceLayout->addWidget(seq);
}
#include <list>
-//#include <QList>
+#include <QDir>
#include <QWidget>
#include "qui/mussa_setup_dialog/SequenceSetupWidget.hpp"
#include "qui/mussa_setup_dialog/SetupInfo.hpp"
public:
SequenceSetupFrame(QWidget *parent = 0);
- //SequenceSetupFrame(const SequenceSetupFrame&);
-
std::list<SetupInfo *> getSetupInfo();
+
+ QDir get_default_dir() const;
+ void set_default_dir(const QDir& d);
public slots:
void changeSequenceCount(int seqCount);
-signals:
-
-
protected:
void setupSequences(int seqCount);
void resizeInnerFrame(int seqCount);
int seqCount;
-
- //QList<SequenceSetupWidget> *seqList;
std::list<SequenceSetupWidget*> seqList;
+ QDir default_directory;
QFrame *sequenceFrame;
QScrollArea *scrollArea;
QVBoxLayout *sequenceLayout;
-
};
#endif
#include <QPushButton>
#include "qui/mussa_setup_dialog/SequenceSetupWidget.hpp"
+#include "qui/mussa_setup_dialog/SequenceSetupFrame.hpp"
-
-SequenceSetupWidget::SequenceSetupWidget(QWidget *parent) :
- QWidget(parent),
+SequenceSetupWidget::SequenceSetupWidget(SequenceSetupFrame *setupFrame_,
+ QWidget *parent) :
+ QWidget(parent),
sequenceNameEdit(0),
sequenceLineEdit(0),
annotLineEdit(0),
fastaIndexLineEdit(0),
seqStartLineEdit(0),
- seqStopLineEdit(0)
+ seqStopLineEdit(0),
+ setupFrame(setupFrame_)
{
+ // we really need the setupFrame, so lets declair that requirement
+ assert(setupFrame != 0);
sequenceNameEdit = new QLineEdit;
QLabel *sequenceNameLabel = new QLabel(tr("Sequence name:"));
void SequenceSetupWidget::promptForFastaFile()
{
+ QString default_dir = setupFrame->get_default_dir().absolutePath();
QString fastaFilePath = QFileDialog::getOpenFileName(this,
"Choose a fasta file",
- ".",
+ default_dir,
"Fasta (*.fa *.fasta *.fsa *.txt)");
if (fastaFilePath.isEmpty())
return;
sequenceLineEdit->setText(fastaFilePath);
+ setupFrame->set_default_dir(QDir(fastaFilePath));
return;
}
void SequenceSetupWidget::promptForAnnotFile()
{
+ QString default_dir = setupFrame->get_default_dir().absolutePath();
QString annotFilePath = QFileDialog::getOpenFileName(this,
"Choose a annotation file",
- ".",
+ default_dir,
"Annot (*.txt *.annot)");
if (annotFilePath.isEmpty())
return;
annotLineEdit->setText(annotFilePath);
+ setupFrame->set_default_dir(QDir(annotFilePath));
return;
}
#include <QString>
#include <QLineEdit>
+class SequenceSetupFrame;
+
class SequenceSetupWidget : public QWidget
{
Q_OBJECT
public:
- SequenceSetupWidget(QWidget *parent = 0);
- // SequenceSetupWidget(const SequenceSetupWidget&);
+ SequenceSetupWidget(SequenceSetupFrame *setupFrame_, QWidget *parent=0);
QString getName() const { return sequenceNameEdit->text(); }
QString getSeqFile() const { return sequenceLineEdit->text(); }
QLineEdit *fastaIndexLineEdit;
QLineEdit *seqStartLineEdit;
QLineEdit *seqStopLineEdit;
-
+ SequenceSetupFrame *setupFrame;
};
#endif