Пример #1
0
/**
 * @brief MainWindow::createDirectoryBoxes
 * Creates a group box widget containing a source directy widget.
 */
void MainWindow::createDirectoryBoxes()
{
   sourceDirectoryWidget = new SourceDirectoryWidget();
   QVBoxLayout* sourceDirectoryBoxLayout = new QVBoxLayout;
   sourceDirectoryBoxLayout->setContentsMargins(0, 0, 0, 0);
   sourceDirectoryBoxLayout->setSizeConstraint(QLayout::SetMinimumSize);
   sourceDirectoryBoxLayout->addWidget(sourceDirectoryWidget);
   sourceDirectoryBoxLayout->setAlignment(sourceDirectoryWidget, Qt::AlignTop);
   sourceDirectoryBox = new QGroupBox("Source directory");
   sourceDirectoryBox->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed);
   sourceDirectoryBox->setLayout(sourceDirectoryBoxLayout);

   verifyDirectoryWidget = new SourceDirectoryWidget();
   QVBoxLayout* verifyDirectoryBoxLayout = new QVBoxLayout;
   verifyDirectoryBoxLayout->setContentsMargins(0, 0, 0, 0);
   verifyDirectoryBoxLayout->setSizeConstraint(QLayout::SetMinimumSize);
   verifyDirectoryBoxLayout->addWidget(verifyDirectoryWidget);
   verifyDirectoryBoxLayout->setAlignment(verifyDirectoryWidget, Qt::AlignTop);
   verifyDirectoryBox = new QGroupBox("Verify directory");
   verifyDirectoryBox->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed);
   verifyDirectoryBox->setLayout(verifyDirectoryBoxLayout);

   sourceDirectoryWidget->setDirNode(mainproject->getSourceDirectory());
   verifyDirectoryWidget->setDirNode(mainproject->getVerifyDirectory());
   connect(sourceDirectoryWidget, SIGNAL(pathStatusSignal()), this, SLOT(pathStatusChanged()));
   connect(verifyDirectoryWidget, SIGNAL(pathStatusSignal()), this, SLOT(pathStatusChanged()));
}
Пример #2
0
/**
 * @brief SourceDirectoryWidget::pathStatusChanged
 * @param isValid
 * The path verifier has changed the path status.
 * Change the status indicator to either green, if valid, or red, if invalid path.
 */
void SourceDirectoryWidget::pathStatusChanged(bool isValid)
{
   if (isValid) {
      validpathlabel->setStyleSheet("border: 2px solid black; background-color: green;");
      openbutton->setEnabled(true);
   } else {
      validpathlabel->setStyleSheet("border: 2px solid black; background-color: red;");
      openbutton->setEnabled(false);
   }
   validpathlabel->repaint();
   emit pathStatusSignal();
}