void tst_QFormLayout::buddies() { QWidget *w = new QWidget; QFormLayout *fl = new QFormLayout(w); //normal buddy case QLineEdit *le = new QLineEdit; fl->addRow(tr("Label 1"), le); QLabel *label = qobject_cast<QLabel *>(fl->labelForField(le)); QVERIFY(label); QWidget *lew = le; QCOMPARE(label->buddy(), lew); //null label QLineEdit *le2 = new QLineEdit; fl->addRow(0, le2); QWidget *label2 = fl->labelForField(le2); QVERIFY(label2 == 0); //no label QLineEdit *le3 = new QLineEdit; fl->addRow(le3); QWidget *label3 = fl->labelForField(le3); QVERIFY(label3 == 0); //TODO: empty label? delete w; }
void OutgoingPage::updateWidgets() { QFormLayout *lay = formLayout; Q_ASSERT(lay); int smtpMethod = method->itemData(method->currentIndex()).toInt(); switch (smtpMethod) { case SMTP: case SSMTP: { smtpHost->setEnabled(true); lay->labelForField(smtpHost)->setEnabled(true); smtpPort->setEnabled(true); lay->labelForField(smtpPort)->setEnabled(true); smtpStartTls->setEnabled(smtpMethod == SMTP); lay->labelForField(smtpStartTls)->setEnabled(smtpMethod == SMTP); smtpAuth->setEnabled(true); lay->labelForField(smtpAuth)->setEnabled(true); bool authEnabled = smtpAuth->isChecked(); smtpUser->setEnabled(authEnabled); lay->labelForField(smtpUser)->setEnabled(authEnabled); smtpPass->setEnabled(authEnabled); lay->labelForField(smtpPass)->setEnabled(authEnabled); sendmail->setEnabled(false); lay->labelForField(sendmail)->setEnabled(false); saveToImap->setEnabled(true); lay->labelForField(saveToImap)->setEnabled(true); smtpBurl->setEnabled(saveToImap->isChecked()); lay->labelForField(smtpBurl)->setEnabled(saveToImap->isChecked()); // Toggle the default ports upon changing the delivery method if (smtpMethod == SMTP && (smtpPort->text().isEmpty() || smtpPort->text() == QString::number(Common::PORT_SMTP_SSL))) { smtpPort->setText(QString::number(Common::PORT_SMTP_SUBMISSION)); } else if (smtpMethod == SSMTP && (smtpPort->text().isEmpty() || smtpPort->text() == QString::number(Common::PORT_SMTP_OBSOLETE) || smtpPort->text() == QString::number(Common::PORT_SMTP_SUBMISSION))) { smtpPort->setText(QString::number(Common::PORT_SMTP_SSL)); } break; } case SENDMAIL: case IMAP_SENDMAIL: smtpHost->setEnabled(false); lay->labelForField(smtpHost)->setEnabled(false); smtpPort->setEnabled(false); lay->labelForField(smtpPort)->setEnabled(false); smtpStartTls->setEnabled(false); lay->labelForField(smtpStartTls)->setEnabled(false); smtpAuth->setEnabled(false); lay->labelForField(smtpAuth)->setEnabled(false); smtpUser->setEnabled(false); lay->labelForField(smtpUser)->setEnabled(false); smtpPass->setEnabled(false); lay->labelForField(smtpPass)->setEnabled(false); if (smtpMethod == SENDMAIL) { sendmail->setEnabled(true); lay->labelForField(sendmail)->setEnabled(true); if (sendmail->text().isEmpty()) sendmail->setText(Common::SettingsNames::sendmailDefaultCmd); saveToImap->setEnabled(true); lay->labelForField(saveToImap)->setEnabled(true); } else { sendmail->setEnabled(false); lay->labelForField(sendmail)->setEnabled(false); saveToImap->setChecked(true); saveToImap->setEnabled(false); lay->labelForField(saveToImap)->setEnabled(false); } smtpBurl->setEnabled(false); lay->labelForField(smtpBurl)->setEnabled(false); } saveFolderName->setEnabled(saveToImap->isChecked()); }
void ImapPage::updateWidgets() { QFormLayout *lay = formLayout; Q_ASSERT(lay); switch (method->itemData(method->currentIndex()).toInt()) { case TCP: imapHost->setEnabled(true); lay->labelForField(imapHost)->setEnabled(true); imapPort->setEnabled(true); if (imapPort->text().isEmpty() || imapPort->text() == QString::number(Common::PORT_IMAPS)) imapPort->setText(QString::number(Common::PORT_IMAP)); else imapPort->setText(QString::number(m_imapPort)); lay->labelForField(imapPort)->setEnabled(true); startTls->setEnabled(true); startTls->setChecked(m_imapStartTls); lay->labelForField(startTls)->setEnabled(true); processPath->setEnabled(false); lay->labelForField(processPath)->setEnabled(false); break; case SSL: imapHost->setEnabled(true); lay->labelForField(imapHost)->setEnabled(true); imapPort->setEnabled(true); if (imapPort->text().isEmpty() || imapPort->text() == QString::number(Common::PORT_IMAP)) imapPort->setText(QString::number(Common::PORT_IMAPS)); else imapPort->setText(QString::number(m_imapPort)); lay->labelForField(imapPort)->setEnabled(true); startTls->setEnabled(false); startTls->setChecked(true); lay->labelForField(startTls)->setEnabled(false); processPath->setEnabled(false); lay->labelForField(processPath)->setEnabled(false); break; default: imapHost->setEnabled(false); lay->labelForField(imapHost)->setEnabled(false); imapPort->setEnabled(false); lay->labelForField(imapPort)->setEnabled(false); startTls->setEnabled(false); lay->labelForField(startTls)->setEnabled(false); processPath->setEnabled(true); lay->labelForField(processPath)->setEnabled(true); } }
KIconEffectSetupDialog::KIconEffectSetupDialog(const Effect &effect, const Effect &defaultEffect, const QString &caption, const QImage &image, QWidget *parent, char *name) : KDialog( parent ), mEffect(effect), mDefaultEffect(defaultEffect), mExample(image) { setObjectName( name ); setModal( true ); setCaption( caption ); setButtons( Default|Ok|Cancel ); mpEffect = new KIconEffect; QLabel *lbl; QGroupBox *frame; QGridLayout *grid; QWidget *page = new QWidget(this); setMainWidget(page); QGridLayout *top = new QGridLayout(page); top->setMargin(0); top->setColumnStretch(0,1); top->setColumnStretch(1,2); top->setRowStretch(1,1); lbl = new QLabel(i18n("&Effect:"), page); top->addWidget(lbl, 0, 0, Qt::AlignLeft); mpEffectBox = new QListWidget(page); mpEffectBox->addItem(i18n("No Effect")); mpEffectBox->addItem(i18n("To Gray")); mpEffectBox->addItem(i18n("Colorize")); mpEffectBox->addItem(i18n("Gamma")); mpEffectBox->addItem(i18n("Desaturate")); mpEffectBox->addItem(i18n("To Monochrome")); connect(mpEffectBox, SIGNAL(currentRowChanged(int)), SLOT(slotEffectType(int))); top->addWidget(mpEffectBox, 1, 0, 2, 1, Qt::AlignLeft); lbl->setBuddy(mpEffectBox); mpSTCheck = new QCheckBox(i18n("&Semi-transparent"), page); connect(mpSTCheck, SIGNAL(toggled(bool)), SLOT(slotSTCheck(bool))); top->addWidget(mpSTCheck, 3, 0, Qt::AlignLeft); frame = new QGroupBox(i18n("Preview"), page); top->addWidget(frame, 0, 1, 2, 1); grid = new QGridLayout(frame); grid->addItem(new QSpacerItem(0, fontMetrics().lineSpacing()), 0, 0); grid->setRowStretch(1, 1); mpPreview = new QLabel(frame); mpPreview->setAlignment(Qt::AlignCenter); mpPreview->setMinimumSize(105, 105); grid->addWidget(mpPreview, 1, 0); mpEffectGroup = new QGroupBox(i18n("Effect Parameters"), page); top->addWidget(mpEffectGroup, 2, 1, 2, 1); QFormLayout *form = new QFormLayout(mpEffectGroup); mpEffectSlider = new QSlider(Qt::Horizontal, mpEffectGroup); mpEffectSlider->setMinimum(0); mpEffectSlider->setMaximum(100); mpEffectSlider->setPageStep(5); connect(mpEffectSlider, SIGNAL(valueChanged(int)), SLOT(slotEffectValue(int))); form->addRow(i18n("&Amount:"), mpEffectSlider); mpEffectLabel = static_cast<QLabel *>(form->labelForField(mpEffectSlider)); mpEColButton = new KColorButton(mpEffectGroup); connect(mpEColButton, SIGNAL(changed(const QColor &)), SLOT(slotEffectColor(const QColor &))); form->addRow(i18n("Co&lor:"), mpEColButton); mpEffectColor = static_cast<QLabel *>(form->labelForField(mpEColButton)); mpECol2Button = new KColorButton(mpEffectGroup); connect(mpECol2Button, SIGNAL(changed(const QColor &)), SLOT(slotEffectColor2(const QColor &))); form->addRow(i18n("&Second color:"), mpECol2Button); mpEffectColor2 = static_cast<QLabel *>(form->labelForField(mpECol2Button)); init(); preview(); }