VirtualBox

Changeset 7763 in vbox for trunk/src/VBox


Ignore:
Timestamp:
Apr 7, 2008 9:48:29 AM (17 years ago)
Author:
vboxsync
Message:

FE/Qt4: Ported mostly of the VBoxGlobal related function to Qt4.

Location:
trunk/src/VBox/Frontends/VirtualBox4
Files:
7 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Frontends/VirtualBox4/include/VBoxGlobal.h

    r7678 r7763  
    2424#include "VBoxGlobalSettings.h"
    2525
    26 #include <qapplication.h>
    27 #include <qpixmap.h>
    28 #include <qicon.h>
    29 #include <qcolor.h>
    30 #include <quuid.h>
    31 #include <qthread.h>
    32 #include <q3popupmenu.h>
     26/* Qt includes */
     27#include <QApplication>
     28#include <QLayout>
     29#include <QHash>
     30#include <QPixmap>
    3331#include <QMenu>
    34 #include <qtooltip.h>
    35 
    36 #include <q3ptrvector.h>
    37 #include <q3valuevector.h>
    38 #include <q3valuelist.h>
    39 #include <q3dict.h>
    40 #include <q3intdict.h>
    41 //Added by qt3to4:
    42 #include <QLabel>
    43 #include <QEvent>
    44 #include <QLayout>
    4532
    4633class QAction;
     
    6653};
    6754
    68 typedef Q3ValueList <VBoxMedia> VBoxMediaList;
     55typedef QList <VBoxMedia> VBoxMediaList;
    6956
    7057// VirtualBox callback events
     
    196183    QPixmap toIcon (KMachineState s) const
    197184    {
    198         QPixmap *pm = mStateIcons [s];
     185        QPixmap *pm = mStateIcons.value (s);
    199186        AssertMsg (pm, ("Icon for VM state %d must be defined", s));
    200187        return pm ? *pm : QPixmap();
     
    204191    {
    205192        static const QColor none;
    206         AssertMsg (vm_state_color [s], ("No color for %d", s));
    207         return vm_state_color [s] ? *vm_state_color [s] : none;
     193        AssertMsg (vm_state_color.value (s), ("No color for %d", s));
     194        return vm_state_color.value (s) ? *vm_state_color.value(s) : none;
    208195    }
    209196
    210197    QString toString (KMachineState s) const
    211198    {
    212         AssertMsg (!machineStates [s].isNull(), ("No text for %d", s));
    213         return machineStates [s];
     199        AssertMsg (!machineStates.value (s).isNull(), ("No text for %d", s));
     200        return machineStates.value (s);
    214201    }
    215202
    216203    QString toString (KSessionState s) const
    217204    {
    218         AssertMsg (!sessionStates [s].isNull(), ("No text for %d", s));
    219         return sessionStates [s];
     205        AssertMsg (!sessionStates.value (s).isNull(), ("No text for %d", s));
     206        return sessionStates.value (s);
    220207    }
    221208
    222209    QString toString (KStorageBus t) const
    223210    {
    224         AssertMsg (!storageBuses [t].isNull(), ("No text for %d", t));
    225         return storageBuses [t];
     211        AssertMsg (!storageBuses.value (t).isNull(), ("No text for %d", t));
     212        return storageBuses.value (t);
    226213    }
    227214
     
    231218    QString toString (KHardDiskType t) const
    232219    {
    233         AssertMsg (!diskTypes [t].isNull(), ("No text for %d", t));
    234         return diskTypes [t];
     220        AssertMsg (!diskTypes.value (t).isNull(), ("No text for %d", t));
     221        return diskTypes.value (t);
    235222    }
    236223
    237224    QString toString (KHardDiskStorageType t) const
    238225    {
    239         AssertMsg (!diskStorageTypes [t].isNull(), ("No text for %d", t));
    240         return diskStorageTypes [t];
     226        AssertMsg (!diskStorageTypes.value (t).isNull(), ("No text for %d", t));
     227        return diskStorageTypes.value (t);
    241228    }
    242229
    243230    QString toString (KVRDPAuthType t) const
    244231    {
    245         AssertMsg (!vrdpAuthTypes [t].isNull(), ("No text for %d", t));
    246         return vrdpAuthTypes [t];
     232        AssertMsg (!vrdpAuthTypes.value (t).isNull(), ("No text for %d", t));
     233        return vrdpAuthTypes.value (t);
    247234    }
    248235
    249236    QString toString (KPortMode t) const
    250237    {
    251         AssertMsg (!portModeTypes [t].isNull(), ("No text for %d", t));
    252         return portModeTypes [t];
     238        AssertMsg (!portModeTypes.value (t).isNull(), ("No text for %d", t));
     239        return portModeTypes.value (t);
    253240    }
    254241
    255242    QString toString (KUSBDeviceFilterAction t) const
    256243    {
    257         AssertMsg (!usbFilterActionTypes [t].isNull(), ("No text for %d", t));
    258         return usbFilterActionTypes [t];
     244        AssertMsg (!usbFilterActionTypes.value (t).isNull(), ("No text for %d", t));
     245        return usbFilterActionTypes.value (t);
    259246    }
    260247
    261248    QString toString (KClipboardMode t) const
    262249    {
    263         AssertMsg (!clipboardTypes [t].isNull(), ("No text for %d", t));
    264         return clipboardTypes [t];
     250        AssertMsg (!clipboardTypes.value (t).isNull(), ("No text for %d", t));
     251        return clipboardTypes.value (t);
    265252    }
    266253
     
    275262    QString toString (KIDEControllerType t) const
    276263    {
    277         AssertMsg (!ideControllerTypes [t].isNull(), ("No text for %d", t));
    278         return ideControllerTypes [t];
     264        AssertMsg (!ideControllerTypes.value (t).isNull(), ("No text for %d", t));
     265        return ideControllerTypes.value (t);
    279266    }
    280267
     
    327314    QString toString (KDeviceType t) const
    328315    {
    329         AssertMsg (!deviceTypes [t].isNull(), ("No text for %d", t));
    330         return deviceTypes [t];
     316        AssertMsg (!deviceTypes.value (t).isNull(), ("No text for %d", t));
     317        return deviceTypes.value (t);
    331318    }
    332319
     
    343330    QString toString (KAudioDriverType t) const
    344331    {
    345         AssertMsg (!audioDriverTypes [t].isNull(), ("No text for %d", t));
    346         return audioDriverTypes [t];
     332        AssertMsg (!audioDriverTypes.value (t).isNull(), ("No text for %d", t));
     333        return audioDriverTypes.value (t);
    347334    }
    348335
     
    357344    QString toString (KAudioControllerType t) const
    358345    {
    359         AssertMsg (!audioControllerTypes [t].isNull(), ("No text for %d", t));
    360         return audioControllerTypes [t];
     346        AssertMsg (!audioControllerTypes.value (t).isNull(), ("No text for %d", t));
     347        return audioControllerTypes.value (t);
    361348    }
    362349
     
    371358    QString toString (KNetworkAdapterType t) const
    372359    {
    373         AssertMsg (!networkAdapterTypes [t].isNull(), ("No text for %d", t));
    374         return networkAdapterTypes [t];
     360        AssertMsg (!networkAdapterTypes.value (t).isNull(), ("No text for %d", t));
     361        return networkAdapterTypes.value (t);
    375362    }
    376363
     
    385372    QString toString (KNetworkAttachmentType t) const
    386373    {
    387         AssertMsg (!networkAttachmentTypes [t].isNull(), ("No text for %d", t));
    388         return networkAttachmentTypes [t];
     374        AssertMsg (!networkAttachmentTypes.value (t).isNull(), ("No text for %d", t));
     375        return networkAttachmentTypes.value (t);
    389376    }
    390377
     
    399386    QString toString (KUSBDeviceState aState) const
    400387    {
    401         AssertMsg (!USBDeviceStates [aState].isNull(), ("No text for %d", aState));
    402         return USBDeviceStates [aState];
     388        AssertMsg (!USBDeviceStates.value (aState).isNull(), ("No text for %d", aState));
     389        return USBDeviceStates.value (aState);
    403390    }
    404391
     
    513500
    514501    static QString getExistingDirectory (const QString &aDir, QWidget *aParent,
    515                                          const char *aName = 0,
    516502                                         const QString &aCaption = QString::null,
    517503                                         bool aDirOnly = TRUE,
     
    519505
    520506    static QString getOpenFileName (const QString &, const QString &, QWidget*,
    521                                     const char*, const QString &,
    522                                     QString *defaultFilter = 0,
     507                                    const QString &, QString *defaultFilter = 0,
    523508                                    bool resolveSymLinks = true);
    524509
     
    601586
    602587    VBoxGlobal();
    603     ~VBoxGlobal() {}
     588    ~VBoxGlobal();
    604589
    605590    void init();
     
    637622    CVirtualBoxCallback callback;
    638623
    639     typedef Q3ValueVector <QString> QStringVector;
     624    typedef QVector <QString> QStringVector;
    640625
    641626    QString verString;
    642627
    643     Q3ValueVector <CGuestOSType> vm_os_types;
    644     Q3Dict <QPixmap> vm_os_type_icons;
    645     Q3PtrVector <QColor> vm_state_color;
    646 
    647     Q3IntDict <QPixmap> mStateIcons;
     628    QVector <CGuestOSType> vm_os_types;
     629    QHash <QString, QPixmap *> vm_os_type_icons;
     630    QVector <QColor *> vm_state_color;
     631
     632    QHash <long int, QPixmap *> mStateIcons;
    648633    QPixmap mOfflineSnapshotIcon, mOnlineSnapshotIcon;
    649634
  • trunk/src/VBox/Frontends/VirtualBox4/src/VBoxDownloaderWgt.cpp

    r7722 r7763  
    270270                /// the title)
    271271                QString target = vboxGlobal().getExistingDirectory (
    272                     QFileInfo (mTarget).absolutePath(), this, "selectSaveDir",
     272                    QFileInfo (mTarget).absolutePath(), this,
    273273                    tr ("Select folder to save Guest Additions image to"), true);
    274274                if (target.isNull())
  • trunk/src/VBox/Frontends/VirtualBox4/src/VBoxGlobal.cpp

    r7678 r7763  
    2626#include "QIMessageBox.h"
    2727
    28 //Added by qt3to4:
    29 #include <QDesktopWidget>
    30 #include <QTranslator>
    31 #include <Q3VBoxLayout>
    32 #include <Q3Frame>
    33 #include <QEvent>
    34 #include <QShowEvent>
    35 #include <Q3PopupMenu>
    36 #include <Q3HBoxLayout>
    37 
    3828#ifdef VBOX_WITH_REGISTRATION
    3929#include "VBoxRegistrationDlg.h"
    4030#endif
    4131
    42 #include <qapplication.h>
    43 #include <qmessagebox.h>
    44 #include <qpixmap.h>
    45 #include <qicon.h>
    46 #include <qwidget.h>
    47 #include <q3filedialog.h>
    48 #include <qimage.h>
    49 #include <qlabel.h>
    50 #include <qtoolbutton.h>
    51 #include <qfileinfo.h>
    52 #include <qdir.h>
    53 #include <qmutex.h>
    54 #include <qregexp.h>
    55 #include <qlocale.h>
     32/* Qt includes */
     33#include <QLibraryInfo>
     34#include <QDialogButtonBox>
     35#include <QFileDialog>
     36#include <QToolTip>
     37#include <QTranslator>
     38#include <QDesktopWidget>
     39#include <QMutex>
     40#include <QToolButton>
    5641#include <QProcess>
    57 #include <QList>
    5842
    5943#ifdef Q_WS_X11
    60 #include <q3textbrowser.h>
    61 #include <qpushbutton.h>
    62 #include <qlayout.h>
     44#include <QTextBrowser>
     45#include <QScrollBar>
     46#include <QX11Info>
    6347#endif
    6448
     
    7054#if defined (Q_WS_WIN)
    7155#include "shlobj.h"
    72 #include <qeventloop.h>
     56#include <QEventLoop>
    7357#endif
    7458
     
    224208        {
    225209            /* it's a global extra data key someone wants to change */
    226             QString sKey = QString::fromUcs2 (key);
    227             QString sVal = QString::fromUcs2 (value);
     210            QString sKey = QString::fromUtf16 (key);
     211            QString sVal = QString::fromUtf16 (value);
    228212            if (sKey.startsWith ("GUI/"))
    229213            {
     
    252236                        /* disallow the change when there is an error*/
    253237                        *error = SysAllocString ((const OLECHAR *)
    254                                                  gs.lastError().ucs2());
     238                                                 gs.lastError().utf16());
    255239                        *allowChange = FALSE;
    256240                    }
     
    272256        if (COMBase::ToQUuid (id).isNull())
    273257        {
    274             QString sKey = QString::fromUcs2 (key);
    275             QString sVal = QString::fromUcs2 (value);
     258            QString sKey = QString::fromUtf16 (key);
     259            QString sVal = QString::fromUtf16 (value);
    276260            if (sKey.startsWith ("GUI/"))
    277261            {
     
    487471        if (!initDir->isEmpty())
    488472        {
    489             SendMessage (hwnd, BFFM_SETSELECTION, TRUE, Q_ULONG (initDir->ucs2()));
    490             //SendMessage (hwnd, BFFM_SETEXPANDED, TRUE, Q_ULONG (initDir->ucs2()));
     473            SendMessage (hwnd, BFFM_SETSELECTION, TRUE, Q_ULONG (initDir->utf16()));
     474            //SendMessage (hwnd, BFFM_SETEXPANDED, TRUE, Q_ULONG (initDir->utf16()));
    491475        }
    492476    }
     
    495479        TCHAR path [MAX_PATH];
    496480        SHGetPathFromIDList (LPITEMIDLIST (lParam), path);
    497         QString tmpStr = QString::fromUcs2 ((ushort*)path);
     481        QString tmpStr = QString::fromUtf16 ((ushort*)path);
    498482        if (!tmpStr.isEmpty())
    499483            SendMessage (hwnd, BFFM_ENABLEOK, 1, 1);
     
    565549
    566550    VBoxLicenseViewer (const QString &aFilePath)
    567         : QDialog (0, "VBoxLicenseViewerObject")
     551        : QDialog ()
    568552        , mFilePath (aFilePath)
    569553        , mLicenseText (0), mAgreeButton (0), mDisagreeButton (0)
    570554    {
    571         setCaption ("VirtualBox License");
    572         setIcon (QPixmap (":/ico40x01.png"));
    573 
    574         mLicenseText = new Q3TextBrowser (this);
     555        setWindowTitle ("VirtualBox License");
     556        setWindowIcon (QIcon (":/ico40x01.png"));
     557
     558        mLicenseText = new QTextBrowser (this);
    575559        mAgreeButton = new QPushButton (tr ("I &Agree"), this);
    576560        mDisagreeButton = new QPushButton (tr ("I &Disagree"), this);
    577 
    578         mLicenseText->setTextFormat (Qt::RichText);
     561        QDialogButtonBox *dbb = new QDialogButtonBox (this);
     562        dbb->addButton (mAgreeButton, QDialogButtonBox::AcceptRole);
     563        dbb->addButton (mDisagreeButton, QDialogButtonBox::RejectRole);
    579564
    580565        connect (mLicenseText->verticalScrollBar(), SIGNAL (valueChanged (int)),
     
    583568        connect (mDisagreeButton, SIGNAL (clicked()), SLOT (reject()));
    584569
    585         Q3VBoxLayout *mainLayout = new Q3VBoxLayout (this, 10, 10);
     570        QVBoxLayout *mainLayout = new QVBoxLayout (this);
     571        mainLayout->setSpacing (10);
     572        VBoxGlobal::setLayoutMargin (mainLayout, 10);
    586573        mainLayout->addWidget (mLicenseText);
    587 
    588         Q3HBoxLayout *buttonLayout = new Q3HBoxLayout (mainLayout, 10);
    589         buttonLayout->addItem (new QSpacerItem (0, 0, QSizePolicy::Expanding,
    590                                                       QSizePolicy::Preferred));
    591         buttonLayout->addWidget (mAgreeButton);
    592         buttonLayout->addWidget (mDisagreeButton);
     574        mainLayout->addWidget (dbb);
    593575
    594576        mLicenseText->verticalScrollBar()->installEventFilter (this);
     
    619601    void onScrollBarMoving (int aValue)
    620602    {
    621         if (aValue == mLicenseText->verticalScrollBar()->maxValue())
     603        if (aValue == mLicenseText->verticalScrollBar()->maximum())
    622604            unlockButtons();
    623605    }
     
    645627        {
    646628            case QEvent::Hide:
    647                 if (aObject == mLicenseText->verticalScrollBar() &&
    648                     (windowState() & Qt::WindowActive))
     629                if (aObject == mLicenseText->verticalScrollBar())
     630                    /* Doesn't work on wm's like ion3 where the window starts
     631                     * maximized: isActiveWindow() */
    649632                    unlockButtons();
    650633            default:
     
    655638
    656639    QString       mFilePath;
    657     Q3TextBrowser *mLicenseText;
     640    QTextBrowser *mLicenseText;
    658641    QPushButton  *mAgreeButton;
    659642    QPushButton  *mDisagreeButton;
     
    819802}
    820803
     804VBoxGlobal::~VBoxGlobal()
     805{
     806    qDeleteAll (vm_os_type_icons);
     807    qDeleteAll (mStateIcons);
     808    qDeleteAll (vm_state_color);
     809}
     810
    821811/**
    822812 *  Sets the new global settings and saves them to the VirtualBox server.
     
    927917    CGuestOSType type;
    928918    if (aIndex >= 0 && aIndex < (int) vm_os_types.count())
    929         type = vm_os_types [aIndex];
     919        type = vm_os_types.value (aIndex);
    930920    AssertMsg (!type.isNull(), ("Index for OS type must be valid: %d", aIndex));
    931921    return type;
     
    954944{
    955945    static const QPixmap none;
    956     QPixmap *p = vm_os_type_icons [aId];
    957     AssertMsg (p, ("Icon for type `%s' must be defined", aId.latin1()));
     946    QPixmap *p = vm_os_type_icons.value (aId);
     947    AssertMsg (p, ("Icon for type `%s' must be defined", aId.toLatin1().constData()));
    958948    return p ? *p : none;
    959949}
     
    11141104{
    11151105    for (size_t i = 0; i < ELEMENTS (comKnownPorts); ++ i)
    1116         if (strcmp (comKnownPorts [i].name, aName.utf8().data()) == 0)
     1106        if (strcmp (comKnownPorts [i].name, aName.toUtf8().data()) == 0)
    11171107        {
    11181108            aIRQ = comKnownPorts [i].IRQ;
     
    11331123{
    11341124    for (size_t i = 0; i < ELEMENTS (lptKnownPorts); ++ i)
    1135         if (strcmp (lptKnownPorts [i].name, aName.utf8().data()) == 0)
     1125        if (strcmp (lptKnownPorts [i].name, aName.toUtf8().data()) == 0)
    11361126        {
    11371127            aIRQ = lptKnownPorts [i].IRQ;
     
    12341224{
    12351225    QString details;
    1236     QString m = aDevice.GetManufacturer().stripWhiteSpace();
    1237     QString p = aDevice.GetProduct().stripWhiteSpace();
     1226    QString m = aDevice.GetManufacturer().trimmed();
     1227    QString p = aDevice.GetProduct().trimmed();
    12381228    if (m.isEmpty() && p.isEmpty())
    12391229    {
     
    12451235    else
    12461236    {
    1247         if (p.upper().startsWith (m.upper()))
     1237        if (p.toUpper().startsWith (m.toUpper()))
    12481238            details = p;
    12491239        else
     
    12541244        details += QString().sprintf (" [%04hX]", r);
    12551245
    1256     return details.stripWhiteSpace();
     1246    return details.trimmed();
    12571247}
    12581248
     
    18181808    QDir docDir (path);
    18191809    docDir.setFilter (QDir::Files);
    1820     docDir.setNameFilter ("License-*.html");
     1810    docDir.setNameFilters (QStringList ("License-*.html"));
    18211811
    18221812    /* get the license files list and search for the latest license */
     
    18261816    {
    18271817        QRegExp regExp ("License-([\\d\\.]+).html");
    1828         regExp.search (filesList [index]);
     1818        regExp.indexIn (filesList [index]);
    18291819        QString version = regExp.cap (1);
    18301820        if (maxVersionNumber < version.toDouble())
     
    18391829    /* compose the latest license file full path */
    18401830    QString latestVersion = QString::number (maxVersionNumber);
    1841     QString latestFilePath = docDir.absFilePath (
     1831    QString latestFilePath = docDir.absoluteFilePath (
    18421832        QString ("License-%1.html").arg (latestVersion));
    18431833
     
    24702460
    24712461    const QPixmap *pix = aLabel->pixmap();
    2472     QImage img = pix->convertToImage();
     2462    QImage img = pix->toImage();
    24732463    QRgb rgbBack = img.pixel (img.width() - 1, img.height() - 1);
    24742464    QRgb rgbFrame = img.pixel (img.width() - 1, 0);
     
    24912481
    24922482    VBoxTranslator (QObject *aParent = 0)
    2493         : QTranslator (aParent, "VBoxTranslatorObject") {}
     2483        : QTranslator (aParent) {}
    24942484
    24952485    bool loadFile (const QString &aFileName)
     
    25552545    {
    25562546        QRegExp regExp (gVBoxLangIDRegExp);
    2557         int pos = regExp.search (langId);
     2547        int pos = regExp.indexIn (langId);
    25582548        /* the language ID should match the regexp completely */
    25592549        AssertReturnVoid (pos == 0);
     
    25632553        if (nlsDir.exists (gVBoxLangFileBase + langId + gVBoxLangFileExt))
    25642554        {
    2565             languageFileName = nlsDir.absFilePath (gVBoxLangFileBase + langId +
    2566                                                    gVBoxLangFileExt);
     2555            languageFileName = nlsDir.absoluteFilePath (gVBoxLangFileBase + langId +
     2556                                                        gVBoxLangFileExt);
    25672557            selectedLangId = langId;
    25682558        }
    25692559        else if (nlsDir.exists (gVBoxLangFileBase + lang + gVBoxLangFileExt))
    25702560        {
    2571             languageFileName = nlsDir.absFilePath (gVBoxLangFileBase + lang +
    2572                                                    gVBoxLangFileExt);
     2561            languageFileName = nlsDir.absoluteFilePath (gVBoxLangFileBase + lang +
     2562                                                        gVBoxLangFileExt);
    25732563            selectedLangId = lang;
    25742564        }
     
    26272617        /* We use system installations of Qt on Linux systems, so first, try
    26282618         * to load the Qt translation from the system location. */
    2629         languageFileName = QString (qInstallPathTranslations()) + "/qt_" +
     2619        languageFileName = QLibraryInfo::location(QLibraryInfo::TranslationsPath) + "/qt_" +
    26302620                           sLoadedLangId + gVBoxLangFileExt;
    26312621        QTranslator *qtSysTr = new QTranslator (sTranslator);
     
    26422632         * innotek translation is always the best one. */
    26432633#endif
    2644         languageFileName =  nlsDir.absFilePath (QString ("qt_") +
    2645                                                 sLoadedLangId +
    2646                                                 gVBoxLangFileExt);
     2634        languageFileName =  nlsDir.absoluteFilePath (QString ("qt_") +
     2635                                                     sLoadedLangId +
     2636                                                     gVBoxLangFileExt);
    26472637        QTranslator *qtTr = new QTranslator (sTranslator);
    26482638        Assert (qtTr);
     
    26862676    QIcon iconSet;
    26872677
    2688     iconSet.setPixmap (QPixmap (aNormal),
    2689                        QIcon::Large, QIcon::Normal);
    2690     iconSet.setPixmap (QPixmap (aSmallNormal),
    2691                        QIcon::Small, QIcon::Normal);
     2678    iconSet.addFile (aNormal, QSize(), QIcon::Normal);
     2679    iconSet.addFile (aSmallNormal, QSize(), QIcon::Normal);
    26922680    if (aSmallDisabled != NULL)
    26932681    {
    2694         iconSet.setPixmap (QPixmap (aDisabled),
    2695                            QIcon::Large, QIcon::Disabled);
    2696         iconSet.setPixmap (QPixmap (aSmallDisabled),
    2697                            QIcon::Small, QIcon::Disabled);
     2682        iconSet.addFile (aDisabled, QSize(), QIcon::Disabled);
     2683        iconSet.addFile (aSmallDisabled, QSize(), QIcon::Disabled);
    26982684    }
    26992685    if (aSmallActive != NULL)
    27002686    {
    2701         iconSet.setPixmap (QPixmap (aActive),
    2702                            QIcon::Large, QIcon::Active);
    2703         iconSet.setPixmap (QPixmap (aSmallActive),
    2704                            QIcon::Small, QIcon::Active);
     2687        iconSet.addFile (aActive, QSize(), QIcon::Active);
     2688        iconSet.addFile (aSmallActive, QSize(), QIcon::Active);
    27052689    }
    27062690
     
    27272711
    27282712    /* remember the icon set as setText() will kill it */
    2729     QIcon iset = aToolButton->iconSet();
     2713    QIcon iset = aToolButton->icon();
    27302714    /* re-use the setText() method to detect and set the accelerator */
    27312715    aToolButton->setText (aTextLabel);
    2732     QKeySequence accel = aToolButton->accel();
    2733     aToolButton->setTextLabel (aTextLabel);
    2734     aToolButton->setIconSet (iset);
     2716    QKeySequence accel = aToolButton->shortcut();
     2717    aToolButton->setText (aTextLabel);
     2718    aToolButton->setIcon (iset);
    27352719    /* set the accel last as setIconSet() would kill it */
    2736     aToolButton->setAccel (accel);
     2720    aToolButton->setShortcut (accel);
    27372721}
    27382722
     
    27532737    int rd = aBoundRect.right() - fr.right();
    27542738    int bd = aBoundRect.bottom() - fr.bottom();
    2755     fr.moveBy (rd < 0 ? rd : 0, bd < 0 ? bd : 0);
     2739    fr.translate (rd < 0 ? rd : 0, bd < 0 ? bd : 0);
    27562740
    27572741    /* ensure the top left corner is visible */
    27582742    int ld = fr.left() - aBoundRect.left();
    27592743    int td = fr.top() - aBoundRect.top();
    2760     fr.moveBy (ld < 0 ? -ld : 0, td < 0 ? -td : 0);
     2744    fr.translate (ld < 0 ? -ld : 0, td < 0 ? -td : 0);
    27612745
    27622746    if (aCanResize)
     
    27662750        bd = aBoundRect.bottom() - fr.bottom();
    27672751        if (rd < 0)
    2768             fr.rRight() += rd;
     2752            fr.setRight (fr.right() + rd);
    27692753        if (bd < 0)
    2770             fr.rBottom() += bd;
     2754            fr.setBottom (fr.bottom() + bd);
    27712755    }
    27722756
     
    28742858QChar VBoxGlobal::decimalSep()
    28752859{
    2876     QString n = QLocale::system().toString (0.0, 'f', 1).stripWhiteSpace();
    2877     return n [1];
     2860    return QLocale::system().decimalPoint();
    28782861}
    28792862
     
    29092892{
    29102893    QRegExp regexp (sizeRegexp());
    2911     int pos = regexp.search (aText);
     2894    int pos = regexp.indexIn (aText);
    29122895    if (pos != -1)
    29132896    {
     
    29402923            return intg;
    29412924
    2942         Q_UINT64 hund = hundS.rightJustify (2, '0').toULongLong();
     2925        Q_UINT64 hund = hundS.rightJustified (2, '0').toULongLong();
    29432926        hund = hund * denom / 100;
    29442927        intg = intg * denom + hund;
     
    30433026        }
    30443027        number = QString ("%1%2%3").arg (intg).arg (decimalSep())
    3045                                    .arg (QString::number (hund).rightJustify (2, '0'));
     3028                                   .arg (QString::number (hund).rightJustified (2, '0'));
    30463029    }
    30473030    else
     
    31563139 */
    31573140QString VBoxGlobal::getExistingDirectory (const QString &aDir,
    3158                                           QWidget *aParent, const char *aName,
     3141                                          QWidget *aParent,
    31593142                                          const QString &aCaption,
    31603143                                          bool aDirOnly,
     
    32033186            bi.hwndOwner = topParent ? topParent->winId() : 0;
    32043187            bi.pidlRoot = NULL;
    3205             bi.lpszTitle = (TCHAR*)title.ucs2();
     3188            bi.lpszTitle = (TCHAR*)title.utf16();
    32063189            bi.pszDisplayName = initPath;
    32073190            bi.ulFlags = BIF_RETURNONLYFSDIRS | BIF_STATUSTEXT | BIF_NEWDIALOGSTYLE;
     
    32293212                    pMalloc->Free (itemIdList);
    32303213                    pMalloc->Release();
    3231                     result = QString::fromUcs2 ((ushort*)path);
     3214                    result = QString::fromUtf16 ((ushort*)path);
    32323215                }
    32333216            }
     
    32593242#else
    32603243
    3261     return Q3FileDialog::getExistingDirectory (aDir, aParent, aName, aCaption,
    3262                                               aDirOnly, aResolveSymlinks);
     3244    QFileDialog::Options o;
     3245    if (aDirOnly)
     3246        o = QFileDialog::ShowDirsOnly;
     3247    if (!aResolveSymlinks)
     3248        o |= QFileDialog::DontResolveSymlinks;
     3249    return QFileDialog::getExistingDirectory (aParent, aCaption, aDir, o);
    32633250
    32643251#endif
     
    32693256 *  oddities and limitations.
    32703257 *
    3271  *  On Win32, this funciton makes sure a file filter is applied automatically
     3258 *  On Win32, this function makes sure a file filter is applied automatically
    32723259 *  right after it is selected from the drop-down list, to conform to common
    32733260 *  experience in other applications. Note that currently, @a selectedFilter
     
    32813268                                     const QString &aFilters,
    32823269                                     QWidget       *aParent,
    3283                                      const char    *aName,
    32843270                                     const QString &aCaption,
    32853271                                     QString       *aSelectedFilter,
     
    33433329            TCHAR buf [1024];
    33443330            if (initSel.length() > 0 && initSel.length() < sizeof (buf))
    3345                 memcpy (buf, initSel.ucs2(), (initSel.length() + 1) * sizeof (TCHAR));
     3331                memcpy (buf, initSel.utf16(), (initSel.length() + 1) * sizeof (TCHAR));
    33463332            else
    33473333                buf [0] = 0;
     
    33523338            ofn.lStructSize = sizeof (OPENFILENAME);
    33533339            ofn.hwndOwner = topParent ? topParent->winId() : 0;
    3354             ofn.lpstrFilter = (TCHAR *) winFilters.ucs2();
     3340            ofn.lpstrFilter = (TCHAR *) winFilters.utf16();
    33553341            ofn.lpstrFile = buf;
    33563342            ofn.nMaxFile = sizeof (buf) - 1;
    3357             ofn.lpstrInitialDir = (TCHAR *) workDir.ucs2();
    3358             ofn.lpstrTitle = (TCHAR *) title.ucs2();
     3343            ofn.lpstrInitialDir = (TCHAR *) workDir.utf16();
     3344            ofn.lpstrTitle = (TCHAR *) title.utf16();
    33593345            ofn.Flags = (OFN_NOCHANGEDIR | OFN_HIDEREADONLY |
    33603346                          OFN_EXPLORER | OFN_ENABLEHOOK |
     
    33643350            if (GetOpenFileName (&ofn))
    33653351            {
    3366                 result = QString::fromUcs2 ((ushort *) ofn.lpstrFile);
     3352                result = QString::fromUtf16 ((ushort *) ofn.lpstrFile);
    33673353            }
    33683354
     
    34013387#else
    34023388
    3403     return Q3FileDialog::getOpenFileName (aStartWith, aFilters, aParent, aName,
    3404                                          aCaption, aSelectedFilter, aResolveSymlinks);
    3405 
     3389    QFileDialog::Options o;
     3390    if (!aResolveSymlinks)
     3391        o |= QFileDialog::DontResolveSymlinks;
     3392    return QFileDialog::getOpenFileName (aParent, aCaption, aStartWith,
     3393                                         aFilters, aSelectedFilter, o);
    34063394#endif
    34073395}
     
    34193407    while (!dir.exists() && !dir.isRoot())
    34203408    {
    3421         QFileInfo dirInfo (dir.absPath());
    3422         dir = dirInfo.dirPath (true);
     3409        QFileInfo dirInfo (dir.absolutePath());
     3410        dir = dirInfo.absolutePath();
    34233411    }
    34243412    if (dir.exists() && !dir.isRoot())
    3425         result = dir.absPath();
     3413        result = dir.absolutePath();
    34263414    return result;
    34273415}
     
    35133501#elif defined (Q_WS_X11)
    35143502
    3515     Display *dpy = QPaintDevice::x11AppDisplay();
     3503    Display *dpy = QX11Info::display();
    35163504
    35173505    if (aSwitchDesktop)
     
    35893577
    35903578    QRegExp accel ("\\(&[a-zA-Z]\\)");
    3591     int pos = accel.search (result);
     3579    int pos = accel.indexIn (result);
    35923580    if (pos >= 0)
    35933581        result.remove (pos, accel.cap().length());
    35943582    else
    35953583    {
    3596         pos = result.find ('&');
     3584        pos = result.indexOf ('&');
    35973585        if (pos >= 0)
    35983586            result.remove (pos, 1);
     
    36683656        void run()
    36693657        {
    3670             int rc = (int) ShellExecute (NULL, NULL, mURL.ucs2(), NULL, NULL, SW_SHOW);
     3658            int rc = (int) ShellExecute (NULL, NULL, mURL.utf16(), NULL, NULL, SW_SHOW);
    36713659            bool ok = rc > 32;
    36723660            QApplication::postEvent
     
    37523740        mRegDlg->setWindowState (mRegDlg->windowState() & ~Qt::WindowMinimized);
    37533741        mRegDlg->raise();
    3754         mRegDlg->setActiveWindow();
     3742        mRegDlg->activateWindow();
    37553743    }
    37563744    else
     
    39673955        {"l4",        ":/os_l4.png"},
    39683956    };
    3969     vm_os_type_icons.setAutoDelete (true); /* takes ownership of elements */
    39703957    for (uint n = 0; n < SIZEOF_ARRAY (kOSTypeIcons); n ++)
    39713958    {
     
    39953982        {KMachineState_Discarding, ":/state_discarding_16px.png"},
    39963983    };
    3997     mStateIcons.setAutoDelete (true); // takes ownership of elements
    39983984    for (uint n = 0; n < SIZEOF_ARRAY (vmStateIcons); n ++)
    39993985    {
     
    40073993
    40083994    /* initialize state colors vector */
    4009     vm_state_color.setAutoDelete (true); /* takes ownership of elements */
    40103995    vm_state_color.insert (KMachineState_Null,           new QColor(Qt::red));
    40113996    vm_state_color.insert (KMachineState_PoweredOff,     new QColor(Qt::gray));
  • trunk/src/VBox/Frontends/VirtualBox4/ui/VBoxDiskImageManagerDlg.ui.h

    r7447 r7763  
    1818#include <QMenuItem>
    1919#include <QDir>
     20#include <QToolTip>
    2021/**
    2122 *
     
    20152016    }
    20162017
    2017     QString src = VBoxGlobal::getOpenFileName (dir, filter, this,
    2018                                                "AddDiskImageDialog", title);
     2018    QString src = VBoxGlobal::getOpenFileName (dir, filter, this, title);
    20192019    src =  QDir::convertSeparators (src);
    20202020
  • trunk/src/VBox/Frontends/VirtualBox4/ui/VBoxGlobalSettingsDlg.ui.h

    r7678 r7763  
    843843
    844844    QString path = le == leVRDPLib ?
    845         VBoxGlobal::getOpenFileName (initDir, QString::null, this,
    846                                      "getFile", QString::null) :
     845        VBoxGlobal::getOpenFileName (initDir, QString::null, this, QString::null) :
    847846        VBoxGlobal::getExistingDirectory (initDir, this);
    848847    if (path.isNull())
  • trunk/src/VBox/Frontends/VirtualBox4/ui/VBoxVMLogViewer.ui.h

    r7250 r7763  
    1010#include <Q3VBoxLayout>
    1111#include <QShowEvent>
     12#include <QToolTip>
    1213/**
    1314 *
  • trunk/src/VBox/Frontends/VirtualBox4/ui/VBoxVMSettingsDlg.ui.h

    r7678 r7763  
    99#include <QEvent>
    1010#include <Q3VBoxLayout>
     11#include <QToolTip>
    1112/**
    1213 *
Note: See TracChangeset for help on using the changeset viewer.

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