Beispiel #1
0
void Home::setMostRecentBook(const BookInfo* book){
        qDebug() << Q_FUNC_INFO;

        currentBook = book;

        if(book->m_type == BookInfo::BOOKINFO_TYPE_DEMO)
            sampleTagLbl->show();
        else
            sampleTagLbl->hide();

        /*if(book->m_type == BookInfo::BOOKINFO_TYPE_SUBSCRIPTION)
            subscriptionTagLbl->show();
        else
            subscriptionTagLbl->hide();*/

        newTagLbl->hide();

        if(book->author == "---")
            authorLbl->setText(tr("Autor Desconocido"));
        else
            authorLbl->setText(book->author);


        int percent = book->readingProgress * 100;
        if (percent > 0)
            readingPercentLbl->setText(tr("%1 % leído").arg(percent));
        else
            readingPercentLbl->setText(tr("0 % leído"));
        bookTitleLbl->setText(resizeTextForLastBook(book->title));

        if (book->thumbnail == NO_COVER_RESOURCE || book->thumbnail.isEmpty())
        {
            // Title
            coverTitleLbl->setText(bqUtils::truncateStringToLength(book->title, ICON_HOME_STRING_MAX_LENGTH));
            coverTitleLbl->show();

            // Author
            if(book->author == "---")
                coverAuthorLbl->setText(tr("Autor Desconocido"));
            else
                coverAuthorLbl->setText(bqUtils::truncateStringToLength(book->author, ICON_HOME_STRING_MAX_LENGTH));
            coverAuthorLbl->show();

            // Cover
            currentBookCoverLbl->setPixmap(NULL);
            QString coverImage = QBookApp::instance()->getImageResource(book->path);
            currentBookCoverLbl->setStyleSheet("background-image:url(" + coverImage + ")");
        }
        else
        {
            coverTitleLbl->hide();
            coverAuthorLbl->hide();
            QPixmap pixmap(book->thumbnail);
            currentBookCoverLbl->setPixmap(pixmap.scaled(currentBookCoverLbl->size(),Qt::KeepAspectRatioByExpanding));
        }

        if(book == defaultHelpBook){
            readingPercentLbl->hide();
            readLbl->hide();
            readingPercentLbl->hide();
            percentLbl->hide();
        }
        else{
            readingPercentLbl->show();
            readLbl->show();
            readingPercentLbl->show();
            percentLbl->show();
        };

        if(currentBook != defaultHelpBook)
        {
            dateAccessLbl->setText(getDateStyled(book->lastTimeRead, true));
            lastAccessLbl->show();
            dateAccessLbl->show();
        }
        else
        {
            lastAccessLbl->hide();
            dateAccessLbl->hide();
        }
        percentLbl->hide();
        readLbl->hide();
}
void LibraryReadingLineGridViewer::paintBooks()
{
    const BookInfo* bookInfo = m_library->m_books.at(0);

    // Cover
    QString coverPath;
    if( !bookInfo->thumbnail.isEmpty())
    {
        QFileInfo fi(bookInfo->thumbnail);
        if(fi.exists())
            coverPath = bookInfo->thumbnail;
    }

    if(bookInfo->m_type == BookInfo::BOOKINFO_TYPE_DEMO)
    {
        sampleTagLbl->show();
    }
    else
    {
        sampleTagLbl->hide();

        /*if(bookInfo->m_type == BookInfo::BOOKINFO_TYPE_SUBSCRIPTION)
            subscriptionTagLbl->show();
        else
            subscriptionTagLbl->hide();*/
    }

    newTagLbl->hide();

    if (coverPath == NO_COVER_RESOURCE || coverPath.isEmpty())
    {
        // Cover
        coverLbl->setPixmap(NULL);
        QString imageCover = QBookApp::instance()->getImageResource(bookInfo->path);
        coverLbl->setStyleSheet("image:url(" + imageCover + "); background-color:#FFF");
        // Title
        titleLbl->setText(bqUtils::truncateStringToLength(bookInfo->title, COVER_STRING_MAX_LENGTH));
        titleLbl->show();
        // Author
        if(bookInfo->author == "---")
            authorLbl_2->setText(tr("Autor Desconocido"));
        else
            authorLbl_2->setText(bqUtils::truncateStringToLength(bookInfo->author, COVER_STRING_MAX_LENGTH));
        authorLbl_2->show();
    }
    else
    {
        QPixmap pixmap(bookInfo->thumbnail);
        coverLbl->setPixmap(pixmap.scaled(coverLbl->size(),Qt::KeepAspectRatioByExpanding));
        titleLbl->hide();
        authorLbl_2->hide();

        titleLbl->hide();
        authorLbl_2->hide();
    }


    // Title
    bookTitleLbl->setText(bqUtils::truncateStringToLength(bookInfo->title, STRING_MAX_LENGTH));

    // Author
    if(bookInfo->author == "--")
        authorLbl->setText(tr("Autor Desconocido"));
    else
        authorLbl->setText(bqUtils::truncateStringToLength(bookInfo->author, STRING_MAX_LENGTH));

    int percentage = bookInfo->readingProgress * 100;
    readingPercentLbl->setText(QString::number(percentage, 'g', 3));

    dateAccessLbl->setText(getDateStyled(bookInfo->lastTimeRead, true));
    lastAccessLbl->show();
    dateAccessLbl->show();

    LibraryGridViewer::paintBooks();
}