Example #1
0
bool WizAttachmentListView::itemExtraImage(const QModelIndex& index, const QRect& itemBound, QRect& rcImage, QPixmap& extraPix) const
{
    if (const WizAttachmentListViewItem* item = attachmentItemFromIndex(index))
    {
        QString strIconPath;
        WizDatabase& db = m_dbMgr.db(item->attachment().strKbGUID);
        WizMainWindow* mainWindow = WizGlobal::mainWindow();
        bool isRetina = WizIsHighPixel();
        strIconPath = ::WizGetSkinResourcePath(mainWindow->userSettings().skin());
        if (!db.isAttachmentDownloaded(item->attachment().strGUID))
        {
            strIconPath += isRetina ? "*****@*****.**" : "document_needDownload.png";
        }
        else if (db.isAttachmentModified(item->attachment().strGUID))
        {
            strIconPath += isRetina ? "*****@*****.**" : "document_needUpload.png";
        }
        else
            return false;

        extraPix = QPixmap(strIconPath);
        QSize szImage = extraPix.size();
        WizScaleIconSizeForRetina(szImage);
        int nMargin = -1;
        rcImage.setLeft(itemBound.right() - szImage.width() - nMargin);
        rcImage.setTop(itemBound.bottom() - szImage.height() - nMargin);
        rcImage.setSize(szImage);

        return true;
    }

    return false;
}
QPixmap CWizAttachmentListView::itemImage(const QModelIndex& index) const
{
    if (const CWizAttachmentListViewItem* item = attachmentItemFromIndex(index))
    {
        QString name = item->attachment().strName;
        return m_iconProvider.icon(name).pixmap(32, 32);
    }
    //
    return QPixmap();
}
Example #3
0
QPixmap WizAttachmentListView::itemImage(const QModelIndex& index) const
{
    if (const WizAttachmentListViewItem* item = attachmentItemFromIndex(index))
    {
        QString path = m_dbMgr.db(item->attachment().strKbGUID).getAttachmentFileName(item->attachment().strGUID);
        int nIconSize = WizIsHighPixel() ? 64 : 32;
        return m_iconProvider.icon(path).pixmap(nIconSize, nIconSize);
    }
    //
    return QPixmap();
}
QString CWizAttachmentListView::itemText(const QModelIndex& index, int line) const
{
    if (const CWizAttachmentListViewItem* item = attachmentItemFromIndex(index))
    {
        if (0 == line)
        {
           return item->attachment().strName;
        }
        else
        {
            return item->detailText(this);
        }
    }
    //
    return QString("Error");
}