VirtualBox

Changeset 79957 in vbox


Ignore:
Timestamp:
Jul 24, 2019 1:42:49 PM (6 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
132388
Message:

FE/Qt: bugref:7720: QIDialogContainer: Extending with possibility to enable/disable Ok button according to connected validity change signals.

Location:
trunk/src/VBox/Frontends/VirtualBox/src/extensions
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Frontends/VirtualBox/src/extensions/QIDialogContainer.cpp

    r79900 r79957  
    1818/* Qt includes: */
    1919#include <QGridLayout>
     20#include <QPushButton>
    2021
    2122/* GUI includes: */
     
    2728    , m_pLayout(0)
    2829    , m_pWidget(0)
     30    , m_pButtonBox(0)
    2931{
    3032    prepare();
     
    3941}
    4042
     43void QIDialogContainer::setOkButtonEnabled(bool fEnabled)
     44{
     45    m_pButtonBox->button(QDialogButtonBox::Ok)->setEnabled(fEnabled);
     46}
     47
    4148void QIDialogContainer::prepare()
    4249{
     
    4653    {
    4754        /* Prepare dialog button-box: */
    48         QIDialogButtonBox *pButtonBox = new QIDialogButtonBox(this);
    49         if (pButtonBox)
     55        m_pButtonBox = new QIDialogButtonBox(this);
     56        if (m_pButtonBox)
    5057        {
    51             pButtonBox->setStandardButtons(QDialogButtonBox::Ok);
    52             connect(pButtonBox, &QIDialogButtonBox::accepted,
     58            m_pButtonBox->setStandardButtons(QDialogButtonBox::Ok);
     59            connect(m_pButtonBox, &QIDialogButtonBox::accepted,
    5360                    this, &QDialog::accept);
    54             connect(pButtonBox, &QIDialogButtonBox::rejected,
     61            connect(m_pButtonBox, &QIDialogButtonBox::rejected,
    5562                    this, &QDialog::reject);
    5663
    57             m_pLayout->addWidget(pButtonBox, 1, 0);
     64            m_pLayout->addWidget(m_pButtonBox, 1, 0);
    5865        }
    5966    }
  • trunk/src/VBox/Frontends/VirtualBox/src/extensions/QIDialogContainer.h

    r79939 r79957  
    3131class QGridLayout;
    3232class QWidget;
     33class QIDialogButtonBox;
    3334
    3435/** QDialog sub-class used as executable input container for passed widget.
     
    5152    void sltActivateWindow() { activateWindow(); }
    5253
     54    /** Sets Ok button to be @a fEnabled. */
     55    void setOkButtonEnabled(bool fEnabled);
     56
    5357private:
    5458
     
    5761
    5862    /** Holds the layout instance. */
    59     QGridLayout *m_pLayout;
     63    QGridLayout       *m_pLayout;
    6064    /** Holds the widget reference. */
    61     QWidget     *m_pWidget;
     65    QWidget           *m_pWidget;
     66    /** Holds the button-box instance. */
     67    QIDialogButtonBox *m_pButtonBox;
    6268};
    6369
Note: See TracChangeset for help on using the changeset viewer.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette