From 0c1c957ddc2e51b005065f7aaf56460274a782c8 Mon Sep 17 00:00:00 2001 From: Diane Trout Date: Wed, 18 Nov 2009 14:11:30 -0800 Subject: [PATCH] Fix the new analysis dialog so it starts at a good size on os x the previous default ended up with UI elements that were too squished. this now allows the scroll area to resize the interior widget. --- qui/mussa_setup_dialog/SequenceSetupFrame.cpp | 23 ++++++++------- qui/mussa_setup_dialog/SequenceSetupFrame.hpp | 2 +- .../SequenceSetupWidget.cpp | 28 +++++++++---------- 3 files changed, 26 insertions(+), 27 deletions(-) diff --git a/qui/mussa_setup_dialog/SequenceSetupFrame.cpp b/qui/mussa_setup_dialog/SequenceSetupFrame.cpp index 4e1fb07..0e12da4 100644 --- a/qui/mussa_setup_dialog/SequenceSetupFrame.cpp +++ b/qui/mussa_setup_dialog/SequenceSetupFrame.cpp @@ -24,7 +24,6 @@ SequenceSetupFrame::SequenceSetupFrame(QWidget *parent) sequenceLayout = new QVBoxLayout; sequenceFrame->setLayout(sequenceLayout); - sequenceFrame->resize(500,500); //scroll area scrollArea = new QScrollArea; @@ -35,9 +34,14 @@ SequenceSetupFrame::SequenceSetupFrame(QWidget *parent) setLayout(mainLayout); //Initialize to one sequence - changeSequenceCount(1); + changeSequenceCount(2); + //scrollArea->resize(sequenceFrame->sizeHint()); + //sequenceFrame->resize(500,500); + //sequenceFrame->resize(scrollArea->size()); + scrollArea->setWidgetResizable(TRUE); scrollArea->show(); + } QDir SequenceSetupFrame::get_default_dir() const @@ -54,19 +58,14 @@ void SequenceSetupFrame::changeSequenceCount(int newSeqCount) { seqCount = newSeqCount; setupSequences(seqCount); - resizeInnerFrame(seqCount); + resizeInnerFrame(); } -void SequenceSetupFrame::resizeInnerFrame(int seqCount) +void SequenceSetupFrame::resizeInnerFrame() { - if (seqCount >= 1) - { - sequenceFrame->resize(565, 125 * seqCount + 30); - } - else - { - sequenceFrame->resize(565, 125 + 30); - } + QSize box(seqList.front()->sizeHint()); + + sequenceFrame->resize(box.width(), box.height() * seqList.size() + 30); } void SequenceSetupFrame::setupSequences(int newSeqCount) diff --git a/qui/mussa_setup_dialog/SequenceSetupFrame.hpp b/qui/mussa_setup_dialog/SequenceSetupFrame.hpp index bfc07c0..d9bd37e 100644 --- a/qui/mussa_setup_dialog/SequenceSetupFrame.hpp +++ b/qui/mussa_setup_dialog/SequenceSetupFrame.hpp @@ -28,7 +28,7 @@ public slots: protected: void setupSequences(int seqCount); - void resizeInnerFrame(int seqCount); + void resizeInnerFrame(); int seqCount; std::list seqList; diff --git a/qui/mussa_setup_dialog/SequenceSetupWidget.cpp b/qui/mussa_setup_dialog/SequenceSetupWidget.cpp index d1464dd..464cc61 100644 --- a/qui/mussa_setup_dialog/SequenceSetupWidget.cpp +++ b/qui/mussa_setup_dialog/SequenceSetupWidget.cpp @@ -21,63 +21,63 @@ SequenceSetupWidget::SequenceSetupWidget(SequenceSetupFrame *setupFrame_, seqStopLineEdit(0), setupFrame(setupFrame_) { - // we really need the setupFrame, so lets declair that requirement + // we really need the setupFrame, so lets declare that requirement assert(setupFrame != 0); // Name line - sequenceNameEdit = new QLineEdit(this); + sequenceNameEdit = new QLineEdit(); sequenceNameEdit->setWhatsThis(tr("Name of input sequence")); - QLabel *sequenceNameLabel = new QLabel(tr("Sequence name:"), this); + QLabel *sequenceNameLabel = new QLabel(tr("Sequence name:")); sequenceNameLabel->setBuddy(sequenceNameEdit); sequenceNameLabel->setWhatsThis(tr("Name of input sequence")); // Sequence file location line - sequenceLineEdit = new QLineEdit(this); + sequenceLineEdit = new QLineEdit(); sequenceLineEdit->setWhatsThis(tr("File path to input sequence")); //const IsFileValidator *fileValidator = new IsFileValidator(this); //sequenceLineEdit->setValidator(fileValidator); - QLabel *sequenceLabel = new QLabel("Sequence Filename:", this); + QLabel *sequenceLabel = new QLabel("Sequence Filename:"); sequenceLabel->setBuddy(sequenceLineEdit); sequenceLabel->setWhatsThis(tr("File path to input sequence")); - QPushButton *sequenceButton = new QPushButton(tr("Browse..."), this); + QPushButton *sequenceButton = new QPushButton(tr("Browse...")); sequenceButton->setWhatsThis(tr("Browse for input sequence")); connect(sequenceButton, SIGNAL(clicked()), this, SLOT(promptForFastaFile())); // Annotation row - annotLineEdit = new QLineEdit(this); + annotLineEdit = new QLineEdit(); annotLineEdit->setWhatsThis(tr("Annotation file path for above input sequence")); //const IsFileValidator *fileValidator2 = new IsFileValidator(this); //annotLineEdit->setValidator(fileValidator2); - QLabel *annotLabel = new QLabel(tr("Annotation Filename:"), this); + QLabel *annotLabel = new QLabel(tr("Annotation Filename:")); annotLabel->setBuddy(annotLineEdit); annotLabel->setWhatsThis(tr("Annotation file path for above input sequence")); - QPushButton *annotButton = new QPushButton(tr("Browse..."), this); + QPushButton *annotButton = new QPushButton(tr("Browse...")); annotButton->setWhatsThis(tr("Browse for annotation file for above input sequence")); connect(annotButton, SIGNAL(clicked()), this, SLOT(promptForAnnotFile())); // Index row - fastaIndexLineEdit = new QLineEdit(this); + fastaIndexLineEdit = new QLineEdit(); fastaIndexLineEdit->setWhatsThis(tr("When a FASTA file contains more then one FASTA record, provide a 1 based index (first record is index 1) to select which one to use.")); //fastaIndexLineEdit->setMaximumWidth(100); - QLabel *fastaIndexLabel = new QLabel(tr("Fasta Index:"), this); + QLabel *fastaIndexLabel = new QLabel(tr("Fasta Index:")); fastaIndexLabel->setBuddy(fastaIndexLineEdit); fastaIndexLabel->setWhatsThis(tr("When a FASTA file contains more then one FASTA record, provide a 1 based index (first record is index 1) to select which one to use.")); - seqStartLineEdit = new QLineEdit(this); + seqStartLineEdit = new QLineEdit(); seqStartLineEdit->setWhatsThis(tr("Start base pair in input sequence (0 based: 1st base pair is 0)")); //seqStartLineEdit->setMinimumWidth(60); //seqStartLineEdit->setMaximumWidth(80); - QLabel *seqStartLabel = new QLabel(tr("Sequence Start:"), this); + QLabel *seqStartLabel = new QLabel(tr("Sequence Start:")); seqStartLabel->setWhatsThis(tr("Start base pair in input sequence (0 based: 1st base pair is 0)")); seqStartLabel->setBuddy(seqStartLineEdit); - seqStopLineEdit = new QLineEdit(this); + seqStopLineEdit = new QLineEdit(); seqStopLineEdit->setWhatsThis(tr("Stop base pair in input sequence (0 based: 1st base pair is 0) 0 means all of remaining sequence.")); //seqStopLineEdit->setMinimumWidth(40); //seqStopLineEdit->setMaximumWidth(60); -- 2.30.2