Exemplo n.º 1
0
void AddFilmWindow::InformationLoaded( const FilmItem& film, const QString& posterFileName )
{
    if( ePosterFileName->text().isEmpty() && !posterFileName.isEmpty() )
    {
        filmNewPosterName = film.GetColumnData( FilmItem::PosterColumn ).toString();
        ePosterFileName->setText( posterFileName );
        bOpenPoster->setText( tr("Clear") );
    }

    if( eTitle->text().isEmpty() )
    {
        eTitle->setText( film.GetTitle() );
    }

    eOriginalTitle->setText( film.GetColumnData( FilmItem::OriginalTitleColumn ).toString() );
    eTagline->setText( film.GetColumnData( FilmItem::TaglineColumn ).toString() );

    sbYear->setValue( film.GetColumnData( FilmItem::YearColumn ).toInt() );
    sbBudget->setValue( film.GetColumnData( FilmItem::BudgetColumn ).toDouble() );
    sbRating->setValue( film.GetColumnData( FilmItem::RatingColumn ).toDouble() );

    eCountry->setText( film.GetColumnData( FilmItem::CountryColumn ).toString() );
    eGenre->setText( film.GetColumnData( FilmItem::GenreColumn ).toString() );
    eDirector->setText( film.GetColumnData( FilmItem::DirectorColumn ).toString() );
    eProducer->setText( film.GetColumnData( FilmItem::ProducerColumn ).toString() );
    eScreenwriter->setText( film.GetColumnData( FilmItem::ScreenwriterColumn ).toString() );
    eComposer->setText( film.GetColumnData( FilmItem::ComposerColumn ).toString() );

    lStarringText->setText( film.GetColumnData( FilmItem::StarringColumn ).toString() );
    lDescriptionText->setText( film.GetColumnData( FilmItem::DescriptionColumn ).toString() );

    bLoad->setEnabled( true );
    bOk->setEnabled( true );
    bCancel->setEnabled( true );
    progressBar->hide();
}
Exemplo n.º 2
0
QVariant FilmsListModel::data( const QModelIndex& index, int role ) const
{
    if( index.isValid() )
    {
        FilmItem* item = static_cast<FilmItem*>( index.internalPointer() );
        int column = index.column();

        switch( role )
        {
            case Qt::DisplayRole :
            {
                return( item->GetColumnData( index.column() ) );
            }

            case Qt::TextAlignmentRole :
            {
                if( column == FilmItem::YearColumn ||
                    column == FilmItem::RatingColumn ||
                    column == FilmItem::IsViewedColumn ||
                    column == FilmItem::IsFavouriteColumn ||
                    column == FilmItem::ViewsCountColumn )
                {
                    return( Qt::AlignCenter );
                }
                else
                {
                    return( (int) Qt::AlignLeft | Qt::AlignVCenter );
                }
            }

            case Qt::BackgroundColorRole :
            {
                if( settings->GetCheckFilesOnStartup() && !item->GetIsFileExists() )
                {
                    return( QColor( settings->GetUnavailableFileColor() ) );
                }

                break;
            }

            case Qt::DecorationRole :
            {
                if( column == FilmItem::PosterColumn && item->GetIsPosterExists() )
                {
                    QPixmap pixmap;

                    if( pixmap.load( item->GetPosterFilePath() ) )
                    {
                        return( pixmap );
                    }
                }

                break;
            }

            case UserRoles::StringListRole :
            {
                if( column == FilmItem::GenreColumn ||
                    column == FilmItem::CountryColumn ||
                    column == FilmItem::DirectorColumn ||
                    column == FilmItem::ScreenwriterColumn ||
                    column == FilmItem::StarringColumn ||
                    column == FilmItem::TagsColumn )
                {
                    QString str = item->GetColumnData( column ).toString();

                    if( !str.isEmpty() )
                    {
                        QStringList strings = str.split( "," );

                        for( QString& s : strings )
                        {
                            s = s.trimmed();
                        }

                        return( strings );
                    }
                }
            }
        }
    }

    return( QVariant() );
}