VirtualBox

Changeset 51277 in vbox


Ignore:
Timestamp:
May 16, 2014 2:47:34 PM (10 years ago)
Author:
vboxsync
Message:

FE/Qt: Mac OS X: HiDPI: Integrate storage settings page icons.

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

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsStorage.cpp

    r51198 r51277  
    5050
    5151
    52 /* Pixmap Storage */
    53 QPointer <PixmapPool> PixmapPool::mThis = 0;
    54 
    55 PixmapPool* PixmapPool::pool (QObject *aParent)
    56 {
    57     if (!mThis)
    58     {
    59         AssertMsg (aParent, ("This object must have parent!\n"));
    60         mThis = new PixmapPool (aParent);
    61     }
    62     else
    63     {
    64         AssertMsg (!aParent, ("Parent already set!\n"));
    65     }
    66     return mThis;
    67 }
    68 
    69 PixmapPool::PixmapPool (QObject *aParent)
    70     : QObject (aParent)
    71     , mPool(MaxIndex)
    72 {
    73     mPool [ControllerAddEn]          = QPixmap (":/controller_add_16px.png");
    74     mPool [ControllerAddDis]         = QPixmap (":/controller_add_disabled_16px.png");
    75     mPool [ControllerDelEn]          = QPixmap (":/controller_remove_16px.png");
    76     mPool [ControllerDelDis]         = QPixmap (":/controller_remove_disabled_16px.png");
    77 
    78     mPool [AttachmentAddEn]          = QPixmap (":/attachment_add_16px.png");
    79     mPool [AttachmentAddDis]         = QPixmap (":/attachment_add_disabled_16px.png");
    80     mPool [AttachmentDelEn]          = QPixmap (":/attachment_remove_16px.png");
    81     mPool [AttachmentDelDis]         = QPixmap (":/attachment_remove_disabled_16px.png");
    82 
    83     mPool [IDEControllerNormal]      = QPixmap (":/ide_16px.png");
    84     mPool [IDEControllerExpand]      = QPixmap (":/ide_expand_16px.png");
    85     mPool [IDEControllerCollapse]    = QPixmap (":/ide_collapse_16px.png");
    86     mPool [SATAControllerNormal]     = QPixmap (":/sata_16px.png");
    87     mPool [SATAControllerExpand]     = QPixmap (":/sata_expand_16px.png");
    88     mPool [SATAControllerCollapse]   = QPixmap (":/sata_collapse_16px.png");
    89     mPool [SCSIControllerNormal]     = QPixmap (":/scsi_16px.png");
    90     mPool [SCSIControllerExpand]     = QPixmap (":/scsi_expand_16px.png");
    91     mPool [SCSIControllerCollapse]   = QPixmap (":/scsi_collapse_16px.png");
    92     mPool [USBControllerNormal]      = QPixmap (":/usb_16px.png");
    93     mPool [USBControllerExpand]      = QPixmap (":/usb_expand_16px.png");
    94     mPool [USBControllerCollapse]    = QPixmap (":/usb_collapse_16px.png");
    95     mPool [FloppyControllerNormal]   = QPixmap (":/floppy_16px.png");
    96     mPool [FloppyControllerExpand]   = QPixmap (":/floppy_expand_16px.png");
    97     mPool [FloppyControllerCollapse] = QPixmap (":/floppy_collapse_16px.png");
    98 
    99     mPool [IDEControllerAddEn]       = QPixmap (":/ide_add_16px.png");
    100     mPool [IDEControllerAddDis]      = QPixmap (":/ide_add_disabled_16px.png");
    101     mPool [SATAControllerAddEn]      = QPixmap (":/sata_add_16px.png");
    102     mPool [SATAControllerAddDis]     = QPixmap (":/sata_add_disabled_16px.png");
    103     mPool [SCSIControllerAddEn]      = QPixmap (":/scsi_add_16px.png");
    104     mPool [SCSIControllerAddDis]     = QPixmap (":/scsi_add_disabled_16px.png");
    105     mPool [USBControllerAddEn]       = QPixmap (":/usb_add_16px.png");
    106     mPool [USBControllerAddDis]      = QPixmap (":/usb_add_disabled_16px.png");
    107     mPool [FloppyControllerAddEn]    = QPixmap (":/floppy_add_16px.png");
    108     mPool [FloppyControllerAddDis]   = QPixmap (":/floppy_add_disabled_16px.png");
    109 
    110     mPool [HDAttachmentNormal]       = QPixmap (":/hd_16px.png");
    111     mPool [CDAttachmentNormal]       = QPixmap (":/cd_16px.png");
    112     mPool [FDAttachmentNormal]       = QPixmap (":/fd_16px.png");
    113 
    114     mPool [HDAttachmentAddEn]        = QPixmap (":/hd_add_16px.png");
    115     mPool [HDAttachmentAddDis]       = QPixmap (":/hd_add_disabled_16px.png");
    116     mPool [CDAttachmentAddEn]        = QPixmap (":/cd_add_16px.png");
    117     mPool [CDAttachmentAddDis]       = QPixmap (":/cd_add_disabled_16px.png");
    118     mPool [FDAttachmentAddEn]        = QPixmap (":/fd_add_16px.png");
    119     mPool [FDAttachmentAddDis]       = QPixmap (":/fd_add_disabled_16px.png");
    120 
    121     mPool [ChooseExistingEn]         = QPixmap (":/select_file_16px.png");
    122     mPool [ChooseExistingDis]        = QPixmap (":/select_file_disabled_16px.png");
    123     mPool [HDNewEn]                  = QPixmap (":/hd_new_16px.png");
    124     mPool [HDNewDis]                 = QPixmap (":/hd_new_disabled_16px.png");
    125     mPool [CDUnmountEnabled]         = QPixmap (":/cd_unmount_16px.png");
    126     mPool [CDUnmountDisabled]        = QPixmap (":/cd_unmount_disabled_16px.png");
    127     mPool [FDUnmountEnabled]         = QPixmap (":/fd_unmount_16px.png");
    128     mPool [FDUnmountDisabled]        = QPixmap (":/fd_unmount_disabled_16px.png");
    129 }
    130 
    131 QPixmap PixmapPool::pixmap (PixmapType aType) const
    132 {
    133     return aType > InvalidPixmap && aType < MaxIndex ? mPool [aType] : 0;
    134 }
     52/** UIIconPool interface extension used as Storage Settings page icon-pool. */
     53class UIIconPoolStorageSettings : public UIIconPool
     54{
     55public:
     56
     57    /** Icon-pool instance access method. */
     58    static UIIconPoolStorageSettings* instance();
     59    /** Create icon-pool instance. */
     60    static void create();
     61    /** Destroy icon-pool instance. */
     62    static void destroy();
     63
     64    /** Returns pixmap corresponding to passed @a pixmapType. */
     65    QPixmap pixmap(PixmapType pixmapType) const;
     66    /** Returns icon (probably merged) corresponding to passed @a pixmapType and @a pixmapDisabledType. */
     67    QIcon icon(PixmapType pixmapType, PixmapType pixmapDisabledType = InvalidPixmap) const;
     68
     69private:
     70
     71    /** Icon-pool constructor. */
     72    UIIconPoolStorageSettings();
     73    /** Icon-pool destructor. */
     74    ~UIIconPoolStorageSettings();
     75
     76    /** Icon-pool instance. */
     77    static UIIconPoolStorageSettings *m_spInstance;
     78    /** Icon-pool names cache. */
     79    QMap<PixmapType, QString> m_names;
     80    /** Icon-pool icons cache. */
     81    mutable QMap<PixmapType, QIcon> m_icons;
     82};
     83UIIconPoolStorageSettings* iconPool() { return UIIconPoolStorageSettings::instance(); }
     84
     85/* static */
     86UIIconPoolStorageSettings* UIIconPoolStorageSettings::m_spInstance = 0;
     87UIIconPoolStorageSettings* UIIconPoolStorageSettings::instance() { return m_spInstance; }
     88void UIIconPoolStorageSettings::create() { new UIIconPoolStorageSettings; }
     89void UIIconPoolStorageSettings::destroy() { delete m_spInstance; }
     90
     91QPixmap UIIconPoolStorageSettings::pixmap(PixmapType pixmapType) const
     92{
     93    /* Prepare fallback pixmap: */
     94    static QPixmap nullPixmap;
     95
     96    /* If we do NOT have that 'pixmap type' icon cached already: */
     97    if (!m_icons.contains(pixmapType))
     98    {
     99        /* Compose proper icon if we have that 'pixmap type' known: */
     100        if (m_names.contains(pixmapType))
     101            m_icons[pixmapType] = iconSet(m_names[pixmapType]);
     102        /* Assign fallback icon if we do NOT have that 'pixmap type' known: */
     103        else
     104            m_icons[pixmapType] = iconSet(nullPixmap);
     105    }
     106
     107    /* Retrieve corresponding icon: */
     108    const QIcon &icon = m_icons[pixmapType];
     109    AssertMsgReturn(!icon.isNull(),
     110                    ("Undefined icon for type '%d'.", (int)pixmapType),
     111                    nullPixmap);
     112
     113    /* Retrieve available sizes for that icon: */
     114    const QList<QSize> availableSizes = icon.availableSizes();
     115    AssertMsgReturn(!availableSizes.isEmpty(),
     116                    ("Undefined icon for type '%s'.", (int)pixmapType),
     117                    nullPixmap);
     118
     119    /* Return pixmap of first available size: */
     120    return icon.pixmap(availableSizes.first());
     121}
     122
     123QIcon UIIconPoolStorageSettings::icon(PixmapType pixmapType,
     124                                      PixmapType pixmapDisabledType /* = InvalidPixmap */) const
     125{
     126    /* Prepare fallback pixmap: */
     127    static QPixmap nullPixmap;
     128    /* Prepare fallback icon: */
     129    static QIcon nullIcon;
     130
     131    /* If we do NOT have that 'pixmap type' icon cached already: */
     132    if (!m_icons.contains(pixmapType))
     133    {
     134        /* Compose proper icon if we have that 'pixmap type' known: */
     135        if (m_names.contains(pixmapType))
     136            m_icons[pixmapType] = iconSet(m_names[pixmapType]);
     137        /* Assign fallback icon if we do NOT have that 'pixmap type' known: */
     138        else
     139            m_icons[pixmapType] = iconSet(nullPixmap);
     140    }
     141
     142    /* Retrieve normal icon: */
     143    const QIcon &icon = m_icons[pixmapType];
     144    AssertMsgReturn(!icon.isNull(),
     145                    ("Undefined icon for type '%d'.", (int)pixmapType),
     146                    nullIcon);
     147
     148    /* If 'disabled' icon is invalid => just return 'normal' icon: */
     149    if (pixmapDisabledType == InvalidPixmap)
     150        return icon;
     151
     152    /* If we do NOT have that 'pixmap disabled type' icon cached already: */
     153    if (!m_icons.contains(pixmapDisabledType))
     154    {
     155        /* Compose proper icon if we have that 'pixmap disabled type' known: */
     156        if (m_names.contains(pixmapDisabledType))
     157            m_icons[pixmapDisabledType] = iconSet(m_names[pixmapDisabledType]);
     158        /* Assign fallback icon if we do NOT have that 'pixmap disabled type' known: */
     159        else
     160            m_icons[pixmapDisabledType] = iconSet(nullPixmap);
     161    }
     162
     163    /* Retrieve disabled icon: */
     164    const QIcon &iconDisabled = m_icons[pixmapDisabledType];
     165    AssertMsgReturn(!iconDisabled.isNull(),
     166                    ("Undefined icon for type '%d'.", (int)pixmapDisabledType),
     167                    nullIcon);
     168
     169    /* Return icon composed on the basis of two above: */
     170    QIcon resultIcon = icon;
     171    foreach (const QSize &size, iconDisabled.availableSizes())
     172        resultIcon.addPixmap(iconDisabled.pixmap(size), QIcon::Disabled);
     173    return resultIcon;
     174}
     175
     176UIIconPoolStorageSettings::UIIconPoolStorageSettings()
     177{
     178    /* Connect instance: */
     179    m_spInstance = this;
     180
     181    /* Controller file-names: */
     182    m_names.insert(ControllerAddEn,          ":/controller_add_16px.png");
     183    m_names.insert(ControllerAddDis,         ":/controller_add_disabled_16px.png");
     184    m_names.insert(ControllerDelEn,          ":/controller_remove_16px.png");
     185    m_names.insert(ControllerDelDis,         ":/controller_remove_disabled_16px.png");
     186    /* Attachment file-names: */
     187    m_names.insert(AttachmentAddEn,          ":/attachment_add_16px.png");
     188    m_names.insert(AttachmentAddDis,         ":/attachment_add_disabled_16px.png");
     189    m_names.insert(AttachmentDelEn,          ":/attachment_remove_16px.png");
     190    m_names.insert(AttachmentDelDis,         ":/attachment_remove_disabled_16px.png");
     191    /* Specific controller default/expand/collapse file-names: */
     192    m_names.insert(IDEControllerNormal,      ":/ide_16px.png");
     193    m_names.insert(IDEControllerExpand,      ":/ide_expand_16px.png");
     194    m_names.insert(IDEControllerCollapse,    ":/ide_collapse_16px.png");
     195    m_names.insert(SATAControllerNormal,     ":/sata_16px.png");
     196    m_names.insert(SATAControllerExpand,     ":/sata_expand_16px.png");
     197    m_names.insert(SATAControllerCollapse,   ":/sata_collapse_16px.png");
     198    m_names.insert(SCSIControllerNormal,     ":/scsi_16px.png");
     199    m_names.insert(SCSIControllerExpand,     ":/scsi_expand_16px.png");
     200    m_names.insert(SCSIControllerCollapse,   ":/scsi_collapse_16px.png");
     201    m_names.insert(USBControllerNormal,      ":/usb_16px.png");
     202    m_names.insert(USBControllerExpand,      ":/usb_expand_16px.png");
     203    m_names.insert(USBControllerCollapse,    ":/usb_collapse_16px.png");
     204    m_names.insert(FloppyControllerNormal,   ":/floppy_16px.png");
     205    m_names.insert(FloppyControllerExpand,   ":/floppy_expand_16px.png");
     206    m_names.insert(FloppyControllerCollapse, ":/floppy_collapse_16px.png");
     207    /* Specific controller add file-names: */
     208    m_names.insert(IDEControllerAddEn,       ":/ide_add_16px.png");
     209    m_names.insert(IDEControllerAddDis,      ":/ide_add_disabled_16px.png");
     210    m_names.insert(SATAControllerAddEn,      ":/sata_add_16px.png");
     211    m_names.insert(SATAControllerAddDis,     ":/sata_add_disabled_16px.png");
     212    m_names.insert(SCSIControllerAddEn,      ":/scsi_add_16px.png");
     213    m_names.insert(SCSIControllerAddDis,     ":/scsi_add_disabled_16px.png");
     214    m_names.insert(USBControllerAddEn,       ":/usb_add_16px.png");
     215    m_names.insert(USBControllerAddDis,      ":/usb_add_disabled_16px.png");
     216    m_names.insert(FloppyControllerAddEn,    ":/floppy_add_16px.png");
     217    m_names.insert(FloppyControllerAddDis,   ":/floppy_add_disabled_16px.png");
     218    /* Specific attachment file-names: */
     219    m_names.insert(HDAttachmentNormal,       ":/hd_16px.png");
     220    m_names.insert(CDAttachmentNormal,       ":/cd_16px.png");
     221    m_names.insert(FDAttachmentNormal,       ":/fd_16px.png");
     222    /* Specific attachment add file-names: */
     223    m_names.insert(HDAttachmentAddEn,        ":/hd_add_16px.png");
     224    m_names.insert(HDAttachmentAddDis,       ":/hd_add_disabled_16px.png");
     225    m_names.insert(CDAttachmentAddEn,        ":/cd_add_16px.png");
     226    m_names.insert(CDAttachmentAddDis,       ":/cd_add_disabled_16px.png");
     227    m_names.insert(FDAttachmentAddEn,        ":/fd_add_16px.png");
     228    m_names.insert(FDAttachmentAddDis,       ":/fd_add_disabled_16px.png");
     229    /* Specific attachment custom file-names: */
     230    m_names.insert(ChooseExistingEn,         ":/select_file_16px.png");
     231    m_names.insert(ChooseExistingDis,        ":/select_file_disabled_16px.png");
     232    m_names.insert(HDNewEn,                  ":/hd_new_16px.png");
     233    m_names.insert(HDNewDis,                 ":/hd_new_disabled_16px.png");
     234    m_names.insert(CDUnmountEnabled,         ":/cd_unmount_16px.png");
     235    m_names.insert(CDUnmountDisabled,        ":/cd_unmount_disabled_16px.png");
     236    m_names.insert(FDUnmountEnabled,         ":/fd_unmount_16px.png");
     237    m_names.insert(FDUnmountDisabled,        ":/fd_unmount_disabled_16px.png");
     238}
     239
     240UIIconPoolStorageSettings::~UIIconPoolStorageSettings()
     241{
     242    /* Disconnect instance: */
     243    m_spInstance = 0;
     244}
     245
    135246
    136247/* Abstract Controller Type */
     
    144255    for (int i = 0; i < State_MAX; ++ i)
    145256    {
    146         mPixmaps << PixmapPool::InvalidPixmap;
     257        mPixmaps << InvalidPixmap;
    147258        switch (mBusType)
    148259        {
    149260            case KStorageBus_IDE:
    150                 mPixmaps [i] = (PixmapPool::PixmapType) (PixmapPool::IDEControllerNormal + i);
     261                mPixmaps [i] = (PixmapType)(IDEControllerNormal + i);
    151262                break;
    152263            case KStorageBus_SATA:
    153                 mPixmaps [i] = (PixmapPool::PixmapType) (PixmapPool::SATAControllerNormal + i);
     264                mPixmaps [i] = (PixmapType)(SATAControllerNormal + i);
    154265                break;
    155266            case KStorageBus_SCSI:
    156                 mPixmaps [i] = (PixmapPool::PixmapType) (PixmapPool::SCSIControllerNormal + i);
     267                mPixmaps [i] = (PixmapType)(SCSIControllerNormal + i);
    157268                break;
    158269            case KStorageBus_Floppy:
    159                 mPixmaps [i] = (PixmapPool::PixmapType) (PixmapPool::FloppyControllerNormal + i);
     270                mPixmaps [i] = (PixmapType)(FloppyControllerNormal + i);
    160271                break;
    161272            case KStorageBus_SAS:
    162                 mPixmaps [i] = (PixmapPool::PixmapType) (PixmapPool::SATAControllerNormal + i);
     273                mPixmaps [i] = (PixmapType)(SATAControllerNormal + i);
    163274                break;
    164275            case KStorageBus_USB:
    165                 mPixmaps [i] = (PixmapPool::PixmapType) (PixmapPool::USBControllerNormal + i);
     276                mPixmaps [i] = (PixmapType)(USBControllerNormal + i);
    166277                break;
    167278            default:
    168279                break;
    169280        }
    170         AssertMsg (mPixmaps [i] != PixmapPool::InvalidPixmap, ("Item state pixmap was not set!\n"));
     281        AssertMsg (mPixmaps [i] != InvalidPixmap, ("Item state pixmap was not set!\n"));
    171282    }
    172283}
     
    190301}
    191302
    192 PixmapPool::PixmapType AbstractControllerType::pixmap (ItemState aState) const
     303PixmapType AbstractControllerType::pixmap(ItemState aState) const
    193304{
    194305    return mPixmaps [aState];
     
    592703QPixmap ControllerItem::pixmap (ItemState aState)
    593704{
    594     return PixmapPool::pool()->pixmap (mCtrType->pixmap (aState));
     705    return iconPool()->pixmap(mCtrType->pixmap(aState));
    595706}
    596707
     
    836947        {
    837948            case KDeviceType_HardDisk:
    838                 mAttPixmap = PixmapPool::pool()->pixmap (PixmapPool::HDAttachmentNormal);
     949                mAttPixmap = iconPool()->pixmap(HDAttachmentNormal);
    839950                break;
    840951            case KDeviceType_DVD:
    841                 mAttPixmap = PixmapPool::pool()->pixmap (PixmapPool::CDAttachmentNormal);
     952                mAttPixmap = iconPool()->pixmap(CDAttachmentNormal);
    842953                break;
    843954            case KDeviceType_Floppy:
    844                 mAttPixmap = PixmapPool::pool()->pixmap (PixmapPool::FDAttachmentNormal);
     955                mAttPixmap = iconPool()->pixmap(FDAttachmentNormal);
    845956                break;
    846957            default:
     
    12751386        case R_HDPixmapEn:
    12761387        {
    1277             return PixmapPool::pool()->pixmap (PixmapPool::HDAttachmentNormal);
     1388            return iconPool()->pixmap(HDAttachmentNormal);
    12781389        }
    12791390        case R_CDPixmapEn:
    12801391        {
    1281             return PixmapPool::pool()->pixmap (PixmapPool::CDAttachmentNormal);
     1392            return iconPool()->pixmap(CDAttachmentNormal);
    12821393        }
    12831394        case R_FDPixmapEn:
    12841395        {
    1285             return PixmapPool::pool()->pixmap (PixmapPool::FDAttachmentNormal);
     1396            return iconPool()->pixmap(FDAttachmentNormal);
    12861397        }
    12871398
    12881399        case R_HDPixmapAddEn:
    12891400        {
    1290             return PixmapPool::pool()->pixmap (PixmapPool::HDAttachmentAddEn);
     1401            return iconPool()->pixmap(HDAttachmentAddEn);
    12911402        }
    12921403        case R_HDPixmapAddDis:
    12931404        {
    1294             return PixmapPool::pool()->pixmap (PixmapPool::HDAttachmentAddDis);
     1405            return iconPool()->pixmap(HDAttachmentAddDis);
    12951406        }
    12961407        case R_CDPixmapAddEn:
    12971408        {
    1298             return PixmapPool::pool()->pixmap (PixmapPool::CDAttachmentAddEn);
     1409            return iconPool()->pixmap(CDAttachmentAddEn);
    12991410        }
    13001411        case R_CDPixmapAddDis:
    13011412        {
    1302             return PixmapPool::pool()->pixmap (PixmapPool::CDAttachmentAddDis);
     1413            return iconPool()->pixmap(CDAttachmentAddDis);
    13031414        }
    13041415        case R_FDPixmapAddEn:
    13051416        {
    1306             return PixmapPool::pool()->pixmap (PixmapPool::FDAttachmentAddEn);
     1417            return iconPool()->pixmap(FDAttachmentAddEn);
    13071418        }
    13081419        case R_FDPixmapAddDis:
    13091420        {
    1310             return PixmapPool::pool()->pixmap (PixmapPool::FDAttachmentAddDis);
     1421            return iconPool()->pixmap(FDAttachmentAddDis);
    13111422        }
    13121423        case R_HDPixmapRect:
     
    18221933    vboxGlobal().startMediumEnumeration();
    18231934
    1824     /* Initialize pixmap pool */
    1825     PixmapPool::pool (this);
     1935    /* Create icon-pool: */
     1936    UIIconPoolStorageSettings::create();
    18261937
    18271938    /* Controller Actions */
    18281939    mAddCtrAction = new QAction (this);
    1829     mAddCtrAction->setIcon(UIIconPool::iconSet(PixmapPool::pool()->pixmap (PixmapPool::ControllerAddEn),
    1830                                                PixmapPool::pool()->pixmap (PixmapPool::ControllerAddDis)));
     1940    mAddCtrAction->setIcon(iconPool()->icon(ControllerAddEn, ControllerAddDis));
    18311941
    18321942    mAddIDECtrAction = new QAction (this);
    1833     mAddIDECtrAction->setIcon(UIIconPool::iconSet(PixmapPool::pool()->pixmap (PixmapPool::IDEControllerAddEn),
    1834                                                   PixmapPool::pool()->pixmap (PixmapPool::IDEControllerAddDis)));
     1943    mAddIDECtrAction->setIcon(iconPool()->icon(IDEControllerAddEn, IDEControllerAddDis));
    18351944
    18361945    mAddSATACtrAction = new QAction (this);
    1837     mAddSATACtrAction->setIcon(UIIconPool::iconSet(PixmapPool::pool()->pixmap (PixmapPool::SATAControllerAddEn),
    1838                                                    PixmapPool::pool()->pixmap (PixmapPool::SATAControllerAddDis)));
     1946    mAddSATACtrAction->setIcon(iconPool()->icon(SATAControllerAddEn, SATAControllerAddDis));
    18391947
    18401948    mAddSCSICtrAction = new QAction (this);
    1841     mAddSCSICtrAction->setIcon(UIIconPool::iconSet(PixmapPool::pool()->pixmap (PixmapPool::SCSIControllerAddEn),
    1842                                                    PixmapPool::pool()->pixmap (PixmapPool::SCSIControllerAddDis)));
     1949    mAddSCSICtrAction->setIcon(iconPool()->icon(SCSIControllerAddEn, SCSIControllerAddDis));
    18431950
    18441951    mAddFloppyCtrAction = new QAction (this);
    1845     mAddFloppyCtrAction->setIcon(UIIconPool::iconSet(PixmapPool::pool()->pixmap (PixmapPool::FloppyControllerAddEn),
    1846                                                      PixmapPool::pool()->pixmap (PixmapPool::FloppyControllerAddDis)));
     1952    mAddFloppyCtrAction->setIcon(iconPool()->icon(FloppyControllerAddEn, FloppyControllerAddDis));
    18471953
    18481954    mAddSASCtrAction = new QAction (this);
    1849     mAddSASCtrAction->setIcon(UIIconPool::iconSet(PixmapPool::pool()->pixmap (PixmapPool::SATAControllerAddEn),
    1850                                                   PixmapPool::pool()->pixmap (PixmapPool::SATAControllerAddDis)));
     1955    mAddSASCtrAction->setIcon(iconPool()->icon(SATAControllerAddEn, SATAControllerAddDis));
    18511956
    18521957    mAddUSBCtrAction = new QAction (this);
    1853     mAddUSBCtrAction->setIcon(UIIconPool::iconSet(PixmapPool::pool()->pixmap (PixmapPool::USBControllerAddEn),
    1854                                                   PixmapPool::pool()->pixmap (PixmapPool::USBControllerAddDis)));
     1958    mAddUSBCtrAction->setIcon(iconPool()->icon(USBControllerAddEn, USBControllerAddDis));
    18551959
    18561960    mDelCtrAction = new QAction (this);
    1857     mDelCtrAction->setIcon(UIIconPool::iconSet(PixmapPool::pool()->pixmap (PixmapPool::ControllerDelEn),
    1858                                                PixmapPool::pool()->pixmap (PixmapPool::ControllerDelDis)));
     1961    mDelCtrAction->setIcon(iconPool()->icon(ControllerDelEn, ControllerDelDis));
    18591962
    18601963    /* Attachment Actions */
    18611964    mAddAttAction = new QAction (this);
    1862     mAddAttAction->setIcon(UIIconPool::iconSet(PixmapPool::pool()->pixmap (PixmapPool::AttachmentAddEn),
    1863                                                PixmapPool::pool()->pixmap (PixmapPool::AttachmentAddDis)));
     1965    mAddAttAction->setIcon(iconPool()->icon(AttachmentAddEn, AttachmentAddDis));
    18641966
    18651967    mAddHDAttAction = new QAction (this);
    1866     mAddHDAttAction->setIcon(UIIconPool::iconSet(PixmapPool::pool()->pixmap (PixmapPool::HDAttachmentAddEn),
    1867                                                  PixmapPool::pool()->pixmap (PixmapPool::HDAttachmentAddDis)));
     1968    mAddHDAttAction->setIcon(iconPool()->icon(HDAttachmentAddEn, HDAttachmentAddDis));
    18681969
    18691970    mAddCDAttAction = new QAction (this);
    1870     mAddCDAttAction->setIcon(UIIconPool::iconSet(PixmapPool::pool()->pixmap (PixmapPool::CDAttachmentAddEn),
    1871                                                  PixmapPool::pool()->pixmap (PixmapPool::CDAttachmentAddDis)));
     1971    mAddCDAttAction->setIcon(iconPool()->icon(CDAttachmentAddEn, CDAttachmentAddDis));
    18721972
    18731973    mAddFDAttAction = new QAction (this);
    1874     mAddFDAttAction->setIcon(UIIconPool::iconSet(PixmapPool::pool()->pixmap (PixmapPool::FDAttachmentAddEn),
    1875                                                  PixmapPool::pool()->pixmap (PixmapPool::FDAttachmentAddDis)));
     1974    mAddFDAttAction->setIcon(iconPool()->icon(FDAttachmentAddEn, FDAttachmentAddDis));
    18761975
    18771976    mDelAttAction = new QAction (this);
    1878     mDelAttAction->setIcon(UIIconPool::iconSet(PixmapPool::pool()->pixmap (PixmapPool::AttachmentDelEn),
    1879                                                PixmapPool::pool()->pixmap (PixmapPool::AttachmentDelDis)));
     1977    mDelAttAction->setIcon(iconPool()->icon(AttachmentDelEn, AttachmentDelDis));
    18801978
    18811979    /* Storage Model/View */
     
    19742072}
    19752073
     2074UIMachineSettingsStorage::~UIMachineSettingsStorage()
     2075{
     2076    /* Destroy icon-pool: */
     2077    UIIconPoolStorageSettings::destroy();
     2078}
     2079
    19762080void UIMachineSettingsStorage::setChipsetType(KChipsetType type)
    19772081{
     
    26032707                    case KDeviceType_HardDisk:
    26042708                        mLbMedium->setText(tr("Hard &Disk:"));
    2605                         mTbOpen->setIcon(UIIconPool::iconSet(PixmapPool::pool()->pixmap(PixmapPool::HDAttachmentNormal)));
     2709                        mTbOpen->setIcon(iconPool()->icon(HDAttachmentNormal));
    26062710                        mTbOpen->setWhatsThis(tr("Choose or create a virtual hard disk file. The virtual machine will see "
    26072711                                                 "the data in the file as the contents of the virtual hard disk."));
     
    26102714                    case KDeviceType_DVD:
    26112715                        mLbMedium->setText(tr("CD/DVD &Drive:"));
    2612                         mTbOpen->setIcon(UIIconPool::iconSet(PixmapPool::pool()->pixmap(PixmapPool::CDAttachmentNormal)));
     2716                        mTbOpen->setIcon(iconPool()->icon(CDAttachmentNormal));
    26132717                        mTbOpen->setWhatsThis(tr("Choose a virtual CD/DVD disk or a physical drive to use with the virtual drive. "
    26142718                                                 "The virtual machine will see a disk inserted into the drive with the data "
     
    26182722                    case KDeviceType_Floppy:
    26192723                        mLbMedium->setText(tr("Floppy &Drive:"));
    2620                         mTbOpen->setIcon(UIIconPool::iconSet(PixmapPool::pool()->pixmap(PixmapPool::FDAttachmentNormal)));
     2724                        mTbOpen->setIcon(iconPool()->icon(FDAttachmentNormal));
    26212725                        mTbOpen->setWhatsThis(tr("Choose a virtual floppy disk or a physical drive to use with the virtual drive. "
    26222726                                                 "The virtual machine will see a disk inserted into the drive with the data "
     
    27692873                /* Add "Create a new virtual hard disk" action: */
    27702874                QAction *pCreateNewHardDisk = pOpenMediumMenu->addAction(tr("Create a new hard disk..."));
    2771                 pCreateNewHardDisk->setIcon(UIIconPool::iconSet(PixmapPool::pool()->pixmap(PixmapPool::HDNewEn),
    2772                                                                 PixmapPool::pool()->pixmap(PixmapPool::HDNewDis)));
     2875                pCreateNewHardDisk->setIcon(iconPool()->icon(HDNewEn, HDNewDis));
    27732876                connect(pCreateNewHardDisk, SIGNAL(triggered(bool)), this, SLOT(sltCreateNewHardDisk()));
    27742877                /* Add "Choose a virtual hard disk file" action: */
     
    27902893                QAction *pEjectCurrentMedium = pOpenMediumMenu->addAction(tr("Remove disk from virtual drive"));
    27912894                pEjectCurrentMedium->setEnabled(!m_pMediumIdHolder->isNull());
    2792                 pEjectCurrentMedium->setIcon(UIIconPool::iconSet(PixmapPool::pool()->pixmap(PixmapPool::CDUnmountEnabled),
    2793                                                                  PixmapPool::pool()->pixmap(PixmapPool::CDUnmountDisabled)));
     2895                pEjectCurrentMedium->setIcon(iconPool()->icon(CDUnmountEnabled, CDUnmountDisabled));
    27942896                connect(pEjectCurrentMedium, SIGNAL(triggered(bool)), this, SLOT(sltUnmountDevice()));
    27952897                break;
     
    28072909                QAction *pEjectCurrentMedium = pOpenMediumMenu->addAction(tr("Remove disk from virtual drive"));
    28082910                pEjectCurrentMedium->setEnabled(!m_pMediumIdHolder->isNull());
    2809                 pEjectCurrentMedium->setIcon(UIIconPool::iconSet(PixmapPool::pool()->pixmap(PixmapPool::FDUnmountEnabled),
    2810                                                                  PixmapPool::pool()->pixmap(PixmapPool::FDUnmountDisabled)));
     2911                pEjectCurrentMedium->setIcon(iconPool()->icon(FDUnmountEnabled, FDUnmountDisabled));
    28112912                connect(pEjectCurrentMedium, SIGNAL(triggered(bool)), this, SLOT(sltUnmountDevice()));
    28122913                break;
     
    33173418{
    33183419    QAction *pChooseExistingMedium = pOpenMediumMenu->addAction(strActionName);
    3319     pChooseExistingMedium->setIcon(UIIconPool::iconSet(PixmapPool::pool()->pixmap(PixmapPool::ChooseExistingEn),
    3320                                                        PixmapPool::pool()->pixmap(PixmapPool::ChooseExistingDis)));
     3420    pChooseExistingMedium->setIcon(iconPool()->icon(ChooseExistingEn, ChooseExistingDis));
    33213421    connect(pChooseExistingMedium, SIGNAL(triggered(bool)), this, SLOT(sltChooseExistingMedium()));
    33223422}
  • trunk/src/VBox/Frontends/VirtualBox/src/settings/machine/UIMachineSettingsStorage.h

    r50906 r51277  
    4848Q_DECLARE_METATYPE (ControllerTypeList);
    4949
     50/** Known item states. */
    5051enum ItemState
    5152{
    52     State_DefaultItem   = 0,
    53     State_CollapsedItem = 1,
    54     State_ExpandedItem  = 2,
     53    State_DefaultItem,
     54    State_CollapsedItem,
     55    State_ExpandedItem,
    5556    State_MAX
    5657};
    5758
    58 /* Pixmap Storage Pool */
    59 class PixmapPool : public QObject
    60 {
    61     Q_OBJECT;
    62 
    63 public:
    64 
    65     enum PixmapType
    66     {
    67         InvalidPixmap            = -1,
    68 
    69         ControllerAddEn          =  0,
    70         ControllerAddDis         =  1,
    71         ControllerDelEn          =  2,
    72         ControllerDelDis         =  3,
    73 
    74         AttachmentAddEn          =  4,
    75         AttachmentAddDis         =  5,
    76         AttachmentDelEn          =  6,
    77         AttachmentDelDis         =  7,
    78 
    79         IDEControllerNormal      =  8,
    80         IDEControllerExpand      =  9,
    81         IDEControllerCollapse    = 10,
    82         SATAControllerNormal     = 11,
    83         SATAControllerExpand     = 12,
    84         SATAControllerCollapse   = 13,
    85         SCSIControllerNormal     = 14,
    86         SCSIControllerExpand     = 15,
    87         SCSIControllerCollapse   = 16,
    88         USBControllerNormal      = 17,
    89         USBControllerExpand      = 18,
    90         USBControllerCollapse    = 19,
    91         FloppyControllerNormal   = 20,
    92         FloppyControllerExpand   = 21,
    93         FloppyControllerCollapse = 22,
    94 
    95         IDEControllerAddEn       = 23,
    96         IDEControllerAddDis      = 24,
    97         SATAControllerAddEn      = 25,
    98         SATAControllerAddDis     = 26,
    99         SCSIControllerAddEn      = 27,
    100         SCSIControllerAddDis     = 28,
    101         USBControllerAddEn       = 29,
    102         USBControllerAddDis      = 30,
    103         FloppyControllerAddEn    = 31,
    104         FloppyControllerAddDis   = 32,
    105 
    106         HDAttachmentNormal       = 33,
    107         CDAttachmentNormal       = 34,
    108         FDAttachmentNormal       = 35,
    109 
    110         HDAttachmentAddEn        = 36,
    111         HDAttachmentAddDis       = 37,
    112         CDAttachmentAddEn        = 38,
    113         CDAttachmentAddDis       = 39,
    114         FDAttachmentAddEn        = 40,
    115         FDAttachmentAddDis       = 41,
    116 
    117         ChooseExistingEn         = 42,
    118         ChooseExistingDis        = 43,
    119         HDNewEn                  = 44,
    120         HDNewDis                 = 45,
    121         CDUnmountEnabled         = 46,
    122         CDUnmountDisabled        = 47,
    123         FDUnmountEnabled         = 48,
    124         FDUnmountDisabled        = 49,
    125 
    126         MaxIndex
    127     };
    128 
    129     static PixmapPool* pool (QObject *aParent = 0);
    130 
    131     QPixmap pixmap (PixmapType aType) const;
    132 
    133 protected:
    134 
    135     PixmapPool (QObject *aParent);
    136 
    137     static QPointer <PixmapPool> mThis;
    138 
    139 private:
    140 
    141     QVector <QPixmap> mPool;
     59/** Known pixmap types. */
     60enum PixmapType
     61{
     62    InvalidPixmap,
     63
     64    ControllerAddEn,
     65    ControllerAddDis,
     66    ControllerDelEn,
     67    ControllerDelDis,
     68
     69    AttachmentAddEn,
     70    AttachmentAddDis,
     71    AttachmentDelEn,
     72    AttachmentDelDis,
     73
     74    IDEControllerNormal,
     75    IDEControllerExpand,
     76    IDEControllerCollapse,
     77    SATAControllerNormal,
     78    SATAControllerExpand,
     79    SATAControllerCollapse,
     80    SCSIControllerNormal,
     81    SCSIControllerExpand,
     82    SCSIControllerCollapse,
     83    USBControllerNormal,
     84    USBControllerExpand,
     85    USBControllerCollapse,
     86    FloppyControllerNormal,
     87    FloppyControllerExpand,
     88    FloppyControllerCollapse,
     89
     90    IDEControllerAddEn,
     91    IDEControllerAddDis,
     92    SATAControllerAddEn,
     93    SATAControllerAddDis,
     94    SCSIControllerAddEn,
     95    SCSIControllerAddDis,
     96    USBControllerAddEn,
     97    USBControllerAddDis,
     98    FloppyControllerAddEn,
     99    FloppyControllerAddDis,
     100
     101    HDAttachmentNormal,
     102    CDAttachmentNormal,
     103    FDAttachmentNormal,
     104
     105    HDAttachmentAddEn,
     106    HDAttachmentAddDis,
     107    CDAttachmentAddEn,
     108    CDAttachmentAddDis,
     109    FDAttachmentAddEn,
     110    FDAttachmentAddDis,
     111
     112    ChooseExistingEn,
     113    ChooseExistingDis,
     114    HDNewEn,
     115    HDNewDis,
     116    CDUnmountEnabled,
     117    CDUnmountDisabled,
     118    FDUnmountEnabled,
     119    FDUnmountDisabled,
     120
     121    MaxIndex
    142122};
    143123
     
    153133    KStorageControllerType ctrType() const;
    154134    ControllerTypeList ctrTypes() const;
    155     PixmapPool::PixmapType pixmap (ItemState aState) const;
     135    PixmapType pixmap(ItemState aState) const;
    156136
    157137    void setCtrType (KStorageControllerType aCtrType);
     
    166146    KStorageBus mBusType;
    167147    KStorageControllerType mCtrType;
    168     QList <PixmapPool::PixmapType> mPixmaps;
     148    QList<PixmapType> mPixmaps;
    169149};
    170150
     
    679659
    680660    UIMachineSettingsStorage();
     661    ~UIMachineSettingsStorage();
    681662
    682663    void setChipsetType(KChipsetType type);
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