VirtualBox

Changeset 23734 in vbox


Ignore:
Timestamp:
Oct 13, 2009 2:49:07 PM (16 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
53454
Message:

FE/Qt4: Enable validation for runtime Storage Settings.

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

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Frontends/VirtualBox/include/VBoxConsoleWnd.h

    r23723 r23734  
    5353class QLabel;
    5454class QSpacerItem;
     55class QIWidgetValidator;
    5556
    5657/* Local forwards */
     
    394395    virtual void accept();
    395396
     397    void revalidate (QIWidgetValidator *aValidator);
     398    void enableOk (const QIWidgetValidator *aValidator);
     399
    396400protected:
    397401
     
    401405
    402406    VBoxSettingsPage *mSettings;
     407    QIDialogButtonBox *mButtonBox;
    403408    CSession &mSession;
    404409};
  • trunk/src/VBox/Frontends/VirtualBox/src/VBoxConsoleWnd.cpp

    r23723 r23734  
    4343#include "QIStateIndicator.h"
    4444#include "QIStatusBar.h"
     45#include "QIWidgetValidator.h"
    4546#include "VBoxConsoleWnd.h"
    4647#include "VBoxConsoleView.h"
     
    34133414    : QIWithRetranslateUI <QDialog> (aParent)
    34143415    , mSettings (0)
     3416    , mButtonBox (0)
    34153417    , mSession (aSession)
    34163418{
     
    34313433    mSettings->getFrom (aSession.GetMachine());
    34323434
     3435    /* Setup validation */
     3436    QIWidgetValidator *validator = new QIWidgetValidator (mSettings, this);
     3437    mSettings->setValidator (validator);
     3438
    34333439    /* Setup button's layout */
    3434     QIDialogButtonBox *buttonBox = new QIDialogButtonBox (QDialogButtonBox::Ok | QDialogButtonBox::Cancel | QDialogButtonBox::Help);
    3435 
    3436     connect (buttonBox, SIGNAL (helpRequested()), &vboxProblem(), SLOT (showHelpHelpDialog()));
    3437     connect (buttonBox, SIGNAL (accepted()), this, SLOT (accept()));
    3438     connect (buttonBox, SIGNAL (rejected()), this, SLOT (reject()));
    3439     mainLayout->addWidget (buttonBox);
     3440    mButtonBox = new QIDialogButtonBox (QDialogButtonBox::Ok | QDialogButtonBox::Cancel | QDialogButtonBox::Help);
     3441    mainLayout->addWidget (mButtonBox);
     3442
     3443    connect (mButtonBox, SIGNAL (helpRequested()), &vboxProblem(), SLOT (showHelpHelpDialog()));
     3444    connect (mButtonBox, SIGNAL (accepted()), this, SLOT (accept()));
     3445    connect (mButtonBox, SIGNAL (rejected()), this, SLOT (reject()));
     3446    connect (validator, SIGNAL (isValidRequested (QIWidgetValidator*)),
     3447             this, SLOT (revalidate (QIWidgetValidator*)));
     3448    connect (validator, SIGNAL (validityChanged (const QIWidgetValidator*)),
     3449             this, SLOT (enableOk (const QIWidgetValidator*)));
    34403450
    34413451    retranslateUi();
     
    34553465        vboxProblem().cannotSaveMachineSettings (machine);
    34563466    QDialog::accept();
     3467}
     3468
     3469void VBoxStorageDialog::revalidate (QIWidgetValidator *aValidator)
     3470{
     3471    QString warning, title;
     3472    bool valid = mSettings->revalidate (warning, title);
     3473    aValidator->setOtherValid (valid);
     3474}
     3475
     3476void VBoxStorageDialog::enableOk (const QIWidgetValidator *aValidator)
     3477{
     3478    mButtonBox->button (QDialogButtonBox::Ok)->setEnabled (aValidator->isValid());
    34573479}
    34583480
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