mirror of
https://github.com/tomahawk-player/tomahawk.git
synced 2025-08-06 22:26:32 +02:00
* New style & layout for artist-page.
This commit is contained in:
@@ -1,6 +1,6 @@
|
|||||||
/* === This file is part of Tomahawk Player - <http://tomahawk-player.org> ===
|
/* === This file is part of Tomahawk Player - <http://tomahawk-player.org> ===
|
||||||
*
|
*
|
||||||
* Copyright 2010-2011, Christian Muehlhaeuser <muesli@tomahawk-player.org>
|
* Copyright 2010-2014, Christian Muehlhaeuser <muesli@tomahawk-player.org>
|
||||||
* Copyright 2010-2011, Jeff Mitchell <jeff@tomahawk-player.org>
|
* Copyright 2010-2011, Jeff Mitchell <jeff@tomahawk-player.org>
|
||||||
*
|
*
|
||||||
* Tomahawk is free software: you can redistribute it and/or modify
|
* Tomahawk is free software: you can redistribute it and/or modify
|
||||||
@@ -19,10 +19,12 @@
|
|||||||
|
|
||||||
#include "ArtistInfoWidget.h"
|
#include "ArtistInfoWidget.h"
|
||||||
#include "ui_ArtistInfoWidget.h"
|
#include "ui_ArtistInfoWidget.h"
|
||||||
|
#include "ui_HeaderWidget.h"
|
||||||
|
|
||||||
#include <QDesktopServices>
|
#include <QDesktopServices>
|
||||||
#include <QScrollArea>
|
#include <QScrollArea>
|
||||||
#include <QScrollBar>
|
#include <QScrollBar>
|
||||||
|
#include <QStackedWidget>
|
||||||
|
|
||||||
#include "audio/AudioEngine.h"
|
#include "audio/AudioEngine.h"
|
||||||
#include "playlist/GridItemDelegate.h"
|
#include "playlist/GridItemDelegate.h"
|
||||||
@@ -31,6 +33,7 @@
|
|||||||
#include "playlist/TreeModel.h"
|
#include "playlist/TreeModel.h"
|
||||||
#include "playlist/PlaylistModel.h"
|
#include "playlist/PlaylistModel.h"
|
||||||
#include "playlist/TreeProxyModel.h"
|
#include "playlist/TreeProxyModel.h"
|
||||||
|
#include "playlist/ContextView.h"
|
||||||
#include "database/DatabaseCommand_AllTracks.h"
|
#include "database/DatabaseCommand_AllTracks.h"
|
||||||
#include "database/DatabaseCommand_AllAlbums.h"
|
#include "database/DatabaseCommand_AllAlbums.h"
|
||||||
#include "Source.h"
|
#include "Source.h"
|
||||||
@@ -49,45 +52,32 @@ using namespace Tomahawk;
|
|||||||
ArtistInfoWidget::ArtistInfoWidget( const Tomahawk::artist_ptr& artist, QWidget* parent )
|
ArtistInfoWidget::ArtistInfoWidget( const Tomahawk::artist_ptr& artist, QWidget* parent )
|
||||||
: QWidget( parent )
|
: QWidget( parent )
|
||||||
, ui( new Ui::ArtistInfoWidget )
|
, ui( new Ui::ArtistInfoWidget )
|
||||||
|
, uiHeader( new Ui::HeaderWidget )
|
||||||
, m_artist( artist )
|
, m_artist( artist )
|
||||||
{
|
{
|
||||||
QWidget* widget = new QWidget;
|
QWidget* widget = new QWidget;
|
||||||
|
QWidget* headerWidget = new QWidget;
|
||||||
ui->setupUi( widget );
|
ui->setupUi( widget );
|
||||||
|
uiHeader->setupUi( headerWidget );
|
||||||
|
headerWidget->setFixedHeight( 160 );
|
||||||
|
|
||||||
artist->loadStats();
|
artist->loadStats();
|
||||||
connect( artist.data(), SIGNAL( statsLoaded() ), SLOT( onArtistStatsLoaded() ) );
|
connect( artist.data(), SIGNAL( statsLoaded() ), SLOT( onArtistStatsLoaded() ) );
|
||||||
|
|
||||||
ui->lineAbove->setStyleSheet( QString( "QFrame { border: 1px solid %1; }" ).arg( TomahawkStyle::HEADER_BACKGROUND.name() ) );
|
|
||||||
ui->lineBelow->setStyleSheet( QString( "QFrame { border: 1px solid black; }" ) );
|
|
||||||
ui->lineAbove2->setStyleSheet( QString( "QFrame { border: 1px solid black; }" ) );
|
|
||||||
ui->lineBelow2->setStyleSheet( QString( "QFrame { border: 1px solid %1; }" ).arg( TomahawkStyle::HEADER_BACKGROUND.name() ) );
|
|
||||||
|
|
||||||
QHBoxLayout* l = new QHBoxLayout( ui->statsWidget );
|
|
||||||
m_playStatsGauge = new StatsGauge( ui->statsWidget );
|
|
||||||
m_playStatsGauge->setText( tr( "YOUR ARTIST RANK" ) );
|
|
||||||
m_playStatsGauge->setInvertedAppearance( true );
|
|
||||||
|
|
||||||
l->addSpacerItem( new QSpacerItem( 0, 1, QSizePolicy::Minimum, QSizePolicy::MinimumExpanding ) );
|
|
||||||
l->addWidget( m_playStatsGauge );
|
|
||||||
l->addSpacerItem( new QSpacerItem( 0, 1, QSizePolicy::Minimum, QSizePolicy::MinimumExpanding ) );
|
|
||||||
ui->statsWidget->setLayout( l );
|
|
||||||
TomahawkUtils::unmarginLayout( l );
|
|
||||||
|
|
||||||
m_pixmap = TomahawkUtils::defaultPixmap( TomahawkUtils::DefaultArtistImage, TomahawkUtils::Original, QSize( 48, 48 ) );
|
m_pixmap = TomahawkUtils::defaultPixmap( TomahawkUtils::DefaultArtistImage, TomahawkUtils::Original, QSize( 48, 48 ) );
|
||||||
ui->cover->setPixmap( TomahawkUtils::defaultPixmap( TomahawkUtils::DefaultArtistImage, TomahawkUtils::Grid, ui->cover->size() ) );
|
ui->cover->setPixmap( TomahawkUtils::defaultPixmap( TomahawkUtils::DefaultArtistImage, TomahawkUtils::Grid, ui->cover->size() ) );
|
||||||
ui->cover->setShowText( false );
|
|
||||||
|
|
||||||
{
|
{
|
||||||
|
ui->relatedArtists->setAutoResize( true );
|
||||||
|
ui->relatedArtists->setAutoFitItems( true );
|
||||||
|
ui->relatedArtists->setVerticalScrollBarPolicy( Qt::ScrollBarAlwaysOff );
|
||||||
|
ui->relatedArtists->setItemSize( QSize( 170, 170 + 32 ) );
|
||||||
|
|
||||||
m_relatedModel = new PlayableModel( ui->relatedArtists );
|
m_relatedModel = new PlayableModel( ui->relatedArtists );
|
||||||
ui->relatedArtists->setPlayableModel( m_relatedModel );
|
ui->relatedArtists->setPlayableModel( m_relatedModel );
|
||||||
ui->relatedArtists->proxyModel()->sort( -1 );
|
ui->relatedArtists->proxyModel()->sort( -1 );
|
||||||
ui->relatedArtists->setEmptyTip( tr( "Sorry, we could not find any related artists!" ) );
|
ui->relatedArtists->setEmptyTip( tr( "Sorry, we could not find any related artists!" ) );
|
||||||
|
ui->relatedArtists->setHorizontalScrollBarPolicy( Qt::ScrollBarAlwaysOff );
|
||||||
ui->relatedArtists->setAutoFitItems( true );
|
|
||||||
/* ui->relatedArtists->setWrapping( false );
|
|
||||||
ui->relatedArtists->setVerticalScrollBarPolicy( Qt::ScrollBarAlwaysOff );
|
|
||||||
ui->relatedArtists->setHorizontalScrollBarPolicy( Qt::ScrollBarAsNeeded );*/
|
|
||||||
ui->relatedArtists->delegate()->setItemSize( QSize( 170, 170 ) );
|
|
||||||
|
|
||||||
TomahawkStyle::stylePageFrame( ui->relatedArtists );
|
TomahawkStyle::stylePageFrame( ui->relatedArtists );
|
||||||
TomahawkStyle::stylePageFrame( ui->artistFrame );
|
TomahawkStyle::stylePageFrame( ui->artistFrame );
|
||||||
@@ -96,98 +86,78 @@ ArtistInfoWidget::ArtistInfoWidget( const Tomahawk::artist_ptr& artist, QWidget*
|
|||||||
|
|
||||||
{
|
{
|
||||||
ui->albums->setAutoResize( true );
|
ui->albums->setAutoResize( true );
|
||||||
|
ui->albums->setAutoFitItems( false );
|
||||||
ui->albums->setVerticalScrollBarPolicy( Qt::ScrollBarAlwaysOff );
|
ui->albums->setVerticalScrollBarPolicy( Qt::ScrollBarAlwaysOff );
|
||||||
/* ui->albums->setWrapping( false );
|
ui->albums->setHorizontalScrollBarPolicy( Qt::ScrollBarAlwaysOff );
|
||||||
ui->albums->setHorizontalScrollBarPolicy( Qt::ScrollBarAsNeeded );*/
|
ui->albums->setWrapping( false );
|
||||||
ui->albums->delegate()->setItemSize( QSize( 170, 170 ) );
|
ui->albums->setItemSize( QSize( 190, 190 + 56 ) );
|
||||||
ui->albums->proxyModel()->setHideDupeItems( true );
|
ui->albums->proxyModel()->setHideDupeItems( true );
|
||||||
|
ui->albums->setFixedHeight( 190 + 56 + 32 );
|
||||||
|
|
||||||
m_albumsModel = new PlayableModel( ui->albums );
|
m_albumsModel = new PlayableModel( ui->albums );
|
||||||
ui->albums->setPlayableModel( m_albumsModel );
|
ui->albums->setPlayableModel( m_albumsModel );
|
||||||
ui->albums->proxyModel()->sort( -1 );
|
ui->albums->proxyModel()->sort( -1 );
|
||||||
ui->albums->setEmptyTip( tr( "Sorry, we could not find any albums for this artist!" ) );
|
ui->albums->setEmptyTip( tr( "Sorry, we could not find any albums for this artist!" ) );
|
||||||
|
|
||||||
ui->albums->setStyleSheet( QString( "QListView { background-color: %1; }" ).arg( TomahawkStyle::HEADER_BACKGROUND.name() ) );
|
ui->albums->setStyleSheet( QString( "QListView { background-color: white; }" ) );
|
||||||
TomahawkStyle::stylePageFrame( ui->albumFrame );
|
TomahawkStyle::stylePageFrame( ui->albumFrame );
|
||||||
TomahawkStyle::styleScrollBar( ui->albums->verticalScrollBar() );
|
TomahawkStyle::styleScrollBar( ui->albums->verticalScrollBar() );
|
||||||
|
TomahawkStyle::styleScrollBar( ui->albums->horizontalScrollBar() );
|
||||||
}
|
}
|
||||||
|
|
||||||
{
|
{
|
||||||
m_topHitsModel = new PlaylistModel( ui->topHits );
|
|
||||||
AlbumItemDelegate* del = new AlbumItemDelegate( ui->topHits, ui->topHits->proxyModel() );
|
|
||||||
ui->topHits->setPlaylistItemDelegate( del );
|
|
||||||
ui->topHits->proxyModel()->setStyle( PlayableProxyModel::Short );
|
|
||||||
ui->topHits->setPlayableModel( m_topHitsModel );
|
|
||||||
ui->topHits->setSortingEnabled( false );
|
|
||||||
ui->topHits->setEmptyTip( tr( "Sorry, we could not find any top hits for this artist!" ) );
|
|
||||||
ui->topHits->setAutoResize( true );
|
ui->topHits->setAutoResize( true );
|
||||||
ui->topHits->setAlternatingRowColors( false );
|
ui->topHits->setAutoFitItems( false );
|
||||||
|
ui->topHits->setVerticalScrollBarPolicy( Qt::ScrollBarAlwaysOff );
|
||||||
|
ui->topHits->setHorizontalScrollBarPolicy( Qt::ScrollBarAlwaysOff );
|
||||||
|
ui->topHits->setWrapping( false );
|
||||||
|
ui->topHits->setItemSize( QSize( 140, 140 + 56 ) );
|
||||||
|
ui->topHits->proxyModel()->setHideDupeItems( true );
|
||||||
|
ui->topHits->setFixedHeight( 140 + 56 + 32 );
|
||||||
|
|
||||||
QPalette p = ui->topHits->palette();
|
m_topHitsModel = new PlayableModel( ui->topHits );
|
||||||
p.setColor( QPalette::Text, TomahawkStyle::PAGE_TRACKLIST_TRACK_SOLVED );
|
ui->topHits->setPlayableModel( m_topHitsModel );
|
||||||
p.setColor( QPalette::BrightText, TomahawkStyle::PAGE_TRACKLIST_TRACK_UNRESOLVED );
|
ui->topHits->proxyModel()->sort( -1 );
|
||||||
p.setColor( QPalette::Foreground, TomahawkStyle::PAGE_TRACKLIST_NUMBER );
|
ui->topHits->setEmptyTip( tr( "Sorry, we could not find any top hits for this artist!" ) );
|
||||||
p.setColor( QPalette::Highlight, TomahawkStyle::PAGE_TRACKLIST_HIGHLIGHT );
|
|
||||||
p.setColor( QPalette::HighlightedText, TomahawkStyle::PAGE_TRACKLIST_HIGHLIGHT_TEXT );
|
|
||||||
|
|
||||||
ui->topHits->setPalette( p );
|
ui->topHits->setStyleSheet( QString( "QListView { background-color: white; }" ) );
|
||||||
TomahawkStyle::stylePageFrame( ui->topHits );
|
|
||||||
TomahawkStyle::stylePageFrame( ui->trackFrame );
|
TomahawkStyle::stylePageFrame( ui->trackFrame );
|
||||||
}
|
}
|
||||||
|
|
||||||
{
|
{
|
||||||
QFont f = ui->biography->font();
|
QFont f = ui->biography->font();
|
||||||
f.setFamily( "Titillium Web" );
|
f.setPointSize( 14 );
|
||||||
|
|
||||||
QPalette p = ui->biography->palette();
|
|
||||||
p.setColor( QPalette::Text, TomahawkStyle::HEADER_TEXT );
|
|
||||||
|
|
||||||
ui->biography->setFont( f );
|
ui->biography->setFont( f );
|
||||||
ui->biography->setPalette( p );
|
|
||||||
ui->biography->setOpenLinks( false );
|
ui->biography->setOpenLinks( false );
|
||||||
ui->biography->setOpenExternalLinks( true );
|
ui->biography->setOpenExternalLinks( true );
|
||||||
|
|
||||||
ui->biography->document()->setDefaultStyleSheet( QString( "a { text-decoration: none; font-weight: bold; color: %1; }" ).arg( TomahawkStyle::HEADER_LINK.name() ) );
|
ui->biography->document()->setDefaultStyleSheet( QString( "a { text-decoration: none; font-weight: bold; color: %1; }" ).arg( TomahawkStyle::HEADER_LINK.name() ) );
|
||||||
TomahawkStyle::stylePageFrame( ui->biography );
|
TomahawkStyle::stylePageFrame( ui->biography );
|
||||||
|
TomahawkStyle::stylePageFrame( ui->bioFrame );
|
||||||
TomahawkStyle::styleScrollBar( ui->biography->verticalScrollBar() );
|
TomahawkStyle::styleScrollBar( ui->biography->verticalScrollBar() );
|
||||||
|
|
||||||
connect( ui->biography, SIGNAL( anchorClicked( QUrl ) ), SLOT( onBiographyLinkClicked( QUrl ) ) );
|
connect( ui->biography, SIGNAL( anchorClicked( QUrl ) ), SLOT( onBiographyLinkClicked( QUrl ) ) );
|
||||||
|
|
||||||
|
f.setPointSize( 11 );
|
||||||
|
ui->topHitsMoreLabel->setFont( f );
|
||||||
|
|
||||||
|
connect( ui->topHitsMoreLabel, SIGNAL( clicked() ), SLOT( onTopHitsMoreClicked() ) );
|
||||||
}
|
}
|
||||||
|
|
||||||
{
|
{
|
||||||
QFont f = ui->artistLabel->font();
|
QFont f = uiHeader->artistLabel->font();
|
||||||
f.setFamily( "Titillium Web" );
|
f.setBold( true );
|
||||||
|
f.setPointSize( 16 );
|
||||||
|
|
||||||
QPalette p = ui->artistLabel->palette();
|
QPalette p = uiHeader->artistLabel->palette();
|
||||||
p.setColor( QPalette::Foreground, TomahawkStyle::HEADER_LABEL );
|
p.setColor( QPalette::Foreground, Qt::white );
|
||||||
|
|
||||||
ui->artistLabel->setFont( f );
|
uiHeader->artistLabel->setFont( f );
|
||||||
ui->artistLabel->setPalette( p );
|
uiHeader->artistLabel->setPalette( p );
|
||||||
}
|
}
|
||||||
|
|
||||||
{
|
m_stackedWidget = new QStackedWidget();
|
||||||
QFont f = ui->label->font();
|
|
||||||
f.setFamily( "Pathway Gothic One" );
|
|
||||||
|
|
||||||
QPalette p = ui->label->palette();
|
|
||||||
p.setColor( QPalette::Foreground, TomahawkStyle::PAGE_CAPTION );
|
|
||||||
|
|
||||||
ui->label->setFont( f );
|
|
||||||
ui->label_2->setFont( f );
|
|
||||||
ui->label->setPalette( p );
|
|
||||||
ui->label_2->setPalette( p );
|
|
||||||
}
|
|
||||||
|
|
||||||
{
|
|
||||||
QFont f = ui->albumLabel->font();
|
|
||||||
f.setFamily( "Pathway Gothic One" );
|
|
||||||
|
|
||||||
QPalette p = ui->albumLabel->palette();
|
|
||||||
p.setColor( QPalette::Foreground, TomahawkStyle::HEADER_TEXT );
|
|
||||||
|
|
||||||
ui->albumLabel->setFont( f );
|
|
||||||
ui->albumLabel->setPalette( p );
|
|
||||||
}
|
|
||||||
|
|
||||||
{
|
{
|
||||||
QScrollArea* area = new QScrollArea();
|
QScrollArea* area = new QScrollArea();
|
||||||
@@ -196,23 +166,30 @@ ArtistInfoWidget::ArtistInfoWidget( const Tomahawk::artist_ptr& artist, QWidget*
|
|||||||
area->setWidget( widget );
|
area->setWidget( widget );
|
||||||
|
|
||||||
QPalette pal = palette();
|
QPalette pal = palette();
|
||||||
pal.setBrush( backgroundRole(), TomahawkStyle::HEADER_BACKGROUND );
|
pal.setBrush( backgroundRole(), Qt::white );
|
||||||
area->setPalette( pal );
|
area->setPalette( pal );
|
||||||
area->setAutoFillBackground( true );
|
area->setAutoFillBackground( true );
|
||||||
area->setFrameShape( QFrame::NoFrame );
|
area->setFrameShape( QFrame::NoFrame );
|
||||||
area->setAttribute( Qt::WA_MacShowFocusRect, 0 );
|
area->setAttribute( Qt::WA_MacShowFocusRect, 0 );
|
||||||
|
|
||||||
QVBoxLayout* layout = new QVBoxLayout();
|
m_stackedWidget->addWidget( area );
|
||||||
layout->addWidget( area );
|
}
|
||||||
setLayout( layout );
|
{
|
||||||
TomahawkUtils::unmarginLayout( layout );
|
ContextView* topHitsFullView = new ContextView( m_stackedWidget );
|
||||||
|
topHitsFullView->setCaption( tr( "Songs" ) );
|
||||||
|
topHitsFullView->setShowCloseButton( true );
|
||||||
|
topHitsFullView->setPlayableModel( m_topHitsModel );
|
||||||
|
m_stackedWidget->addWidget( topHitsFullView );
|
||||||
|
|
||||||
|
connect( topHitsFullView, SIGNAL( closeClicked() ), SLOT( onTopHitsMoreClosed() ) );
|
||||||
}
|
}
|
||||||
|
|
||||||
{
|
{
|
||||||
QPalette pal = palette();
|
QVBoxLayout* layout = new QVBoxLayout();
|
||||||
pal.setBrush( backgroundRole(), TomahawkStyle::PAGE_BACKGROUND );
|
layout->addWidget( headerWidget );
|
||||||
ui->widget->setPalette( pal );
|
layout->addWidget( m_stackedWidget );
|
||||||
ui->widget->setAutoFillBackground( true );
|
setLayout( layout );
|
||||||
|
TomahawkUtils::unmarginLayout( layout );
|
||||||
}
|
}
|
||||||
|
|
||||||
MetaPlaylistInterface* mpl = new MetaPlaylistInterface();
|
MetaPlaylistInterface* mpl = new MetaPlaylistInterface();
|
||||||
@@ -299,7 +276,7 @@ ArtistInfoWidget::load( const artist_ptr& artist )
|
|||||||
|
|
||||||
m_artist = artist;
|
m_artist = artist;
|
||||||
m_title = artist->name();
|
m_title = artist->name();
|
||||||
ui->artistLabel->setText( artist->name() );
|
uiHeader->artistLabel->setText( artist->name().toUpper() );
|
||||||
|
|
||||||
connect( m_artist.data(), SIGNAL( biographyLoaded() ), SLOT( onBiographyLoaded() ) );
|
connect( m_artist.data(), SIGNAL( biographyLoaded() ), SLOT( onBiographyLoaded() ) );
|
||||||
connect( m_artist.data(), SIGNAL( similarArtistsLoaded() ), SLOT( onSimilarArtistsLoaded() ) );
|
connect( m_artist.data(), SIGNAL( similarArtistsLoaded() ), SLOT( onSimilarArtistsLoaded() ) );
|
||||||
@@ -309,8 +286,6 @@ ArtistInfoWidget::load( const artist_ptr& artist )
|
|||||||
connect( m_artist.data(), SIGNAL( tracksAdded( QList<Tomahawk::query_ptr>, Tomahawk::ModelMode, Tomahawk::collection_ptr ) ),
|
connect( m_artist.data(), SIGNAL( tracksAdded( QList<Tomahawk::query_ptr>, Tomahawk::ModelMode, Tomahawk::collection_ptr ) ),
|
||||||
SLOT( onTracksFound( QList<Tomahawk::query_ptr>, Tomahawk::ModelMode ) ) );
|
SLOT( onTracksFound( QList<Tomahawk::query_ptr>, Tomahawk::ModelMode ) ) );
|
||||||
|
|
||||||
ui->cover->setArtist( artist );
|
|
||||||
|
|
||||||
m_topHitsModel->startLoading();
|
m_topHitsModel->startLoading();
|
||||||
|
|
||||||
if ( !m_artist->albums( Mixed ).isEmpty() )
|
if ( !m_artist->albums( Mixed ).isEmpty() )
|
||||||
@@ -345,13 +320,14 @@ ArtistInfoWidget::onTracksFound( const QList<Tomahawk::query_ptr>& queries, Mode
|
|||||||
|
|
||||||
m_topHitsModel->finishLoading();
|
m_topHitsModel->finishLoading();
|
||||||
m_topHitsModel->appendQueries( queries.mid( 0, 20 ) );
|
m_topHitsModel->appendQueries( queries.mid( 0, 20 ) );
|
||||||
|
m_topHitsModel->ensureResolved();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void
|
void
|
||||||
ArtistInfoWidget::onSimilarArtistsLoaded()
|
ArtistInfoWidget::onSimilarArtistsLoaded()
|
||||||
{
|
{
|
||||||
m_relatedModel->appendArtists( m_artist->similarArtists() );
|
m_relatedModel->appendArtists( m_artist->similarArtists().mid( 0, 20 ) );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -371,8 +347,8 @@ ArtistInfoWidget::onArtistStatsLoaded()
|
|||||||
/* m_playStatsGauge->setValue( m_artist->playbackCount( SourceList::instance()->getLocal() ) );
|
/* m_playStatsGauge->setValue( m_artist->playbackCount( SourceList::instance()->getLocal() ) );
|
||||||
m_playStatsGauge->setMaximum( SourceList::instance()->getLocal()->playbackCount() ); */
|
m_playStatsGauge->setMaximum( SourceList::instance()->getLocal()->playbackCount() ); */
|
||||||
|
|
||||||
m_playStatsGauge->setMaximum( m_artist->chartCount() );
|
/* m_playStatsGauge->setMaximum( m_artist->chartCount() );
|
||||||
m_playStatsGauge->setValue( m_artist->chartPosition() );
|
m_playStatsGauge->setValue( m_artist->chartPosition() );*/
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -385,7 +361,8 @@ ArtistInfoWidget::onArtistImageUpdated()
|
|||||||
m_pixmap = m_artist->cover( QSize( 0, 0 ) );
|
m_pixmap = m_artist->cover( QSize( 0, 0 ) );
|
||||||
emit pixmapChanged( m_pixmap );
|
emit pixmapChanged( m_pixmap );
|
||||||
|
|
||||||
ui->cover->setPixmap( m_artist->cover( QSize( 0, 0 ) ) );
|
uiHeader->headerWidget->setBackground( m_pixmap, true, false );
|
||||||
|
ui->cover->setPixmap( m_artist->cover( QSize( ui->cover->width(), ui->cover->width() ) ) );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -429,3 +406,17 @@ ArtistInfoWidget::pixmap() const
|
|||||||
else
|
else
|
||||||
return m_pixmap;
|
return m_pixmap;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void
|
||||||
|
ArtistInfoWidget::onTopHitsMoreClicked()
|
||||||
|
{
|
||||||
|
m_stackedWidget->setCurrentIndex( 1 );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void
|
||||||
|
ArtistInfoWidget::onTopHitsMoreClosed()
|
||||||
|
{
|
||||||
|
m_stackedWidget->setCurrentIndex( 0 );
|
||||||
|
}
|
||||||
|
@@ -1,6 +1,6 @@
|
|||||||
/* === This file is part of Tomahawk Player - <http://tomahawk-player.org> ===
|
/* === This file is part of Tomahawk Player - <http://tomahawk-player.org> ===
|
||||||
*
|
*
|
||||||
* Copyright 2010-2011, Christian Muehlhaeuser <muesli@tomahawk-player.org>
|
* Copyright 2010-2014, Christian Muehlhaeuser <muesli@tomahawk-player.org>
|
||||||
* Copyright 2010-2011, Jeff Mitchell <jeff@tomahawk-player.org>
|
* Copyright 2010-2011, Jeff Mitchell <jeff@tomahawk-player.org>
|
||||||
*
|
*
|
||||||
* Tomahawk is free software: you can redistribute it and/or modify
|
* Tomahawk is free software: you can redistribute it and/or modify
|
||||||
@@ -38,6 +38,7 @@
|
|||||||
|
|
||||||
#include "DllMacro.h"
|
#include "DllMacro.h"
|
||||||
|
|
||||||
|
class QStackedWidget;
|
||||||
class PlayableModel;
|
class PlayableModel;
|
||||||
class PlaylistModel;
|
class PlaylistModel;
|
||||||
class StatsGauge;
|
class StatsGauge;
|
||||||
@@ -45,6 +46,7 @@ class StatsGauge;
|
|||||||
namespace Ui
|
namespace Ui
|
||||||
{
|
{
|
||||||
class ArtistInfoWidget;
|
class ArtistInfoWidget;
|
||||||
|
class HeaderWidget;
|
||||||
}
|
}
|
||||||
|
|
||||||
class MetaArtistInfoInterface;
|
class MetaArtistInfoInterface;
|
||||||
@@ -101,17 +103,21 @@ private slots:
|
|||||||
void onSimilarArtistsLoaded();
|
void onSimilarArtistsLoaded();
|
||||||
|
|
||||||
void onBiographyLinkClicked( const QUrl& url );
|
void onBiographyLinkClicked( const QUrl& url );
|
||||||
|
void onTopHitsMoreClicked();
|
||||||
|
void onTopHitsMoreClosed();
|
||||||
|
|
||||||
private:
|
private:
|
||||||
Ui::ArtistInfoWidget *ui;
|
Ui::ArtistInfoWidget *ui;
|
||||||
|
Ui::HeaderWidget* uiHeader;
|
||||||
|
|
||||||
Tomahawk::artist_ptr m_artist;
|
Tomahawk::artist_ptr m_artist;
|
||||||
|
|
||||||
PlayableModel* m_relatedModel;
|
PlayableModel* m_relatedModel;
|
||||||
PlayableModel* m_albumsModel;
|
PlayableModel* m_albumsModel;
|
||||||
PlaylistModel* m_topHitsModel;
|
PlayableModel* m_topHitsModel;
|
||||||
Tomahawk::playlistinterface_ptr m_plInterface;
|
Tomahawk::playlistinterface_ptr m_plInterface;
|
||||||
|
|
||||||
|
QStackedWidget* m_stackedWidget;
|
||||||
StatsGauge* m_playStatsGauge;
|
StatsGauge* m_playStatsGauge;
|
||||||
|
|
||||||
QString m_title;
|
QString m_title;
|
||||||
|
@@ -6,14 +6,14 @@
|
|||||||
<rect>
|
<rect>
|
||||||
<x>0</x>
|
<x>0</x>
|
||||||
<y>0</y>
|
<y>0</y>
|
||||||
<width>965</width>
|
<width>796</width>
|
||||||
<height>831</height>
|
<height>1132</height>
|
||||||
</rect>
|
</rect>
|
||||||
</property>
|
</property>
|
||||||
<property name="windowTitle">
|
<property name="windowTitle">
|
||||||
<string notr="true" extracomment="not translatable because not shown to the user">Form</string>
|
<string>Form</string>
|
||||||
</property>
|
</property>
|
||||||
<layout class="QVBoxLayout" name="verticalLayout_7" stretch="0,0,0,0,0,0,1">
|
<layout class="QVBoxLayout" name="verticalLayout_2">
|
||||||
<property name="spacing">
|
<property name="spacing">
|
||||||
<number>0</number>
|
<number>0</number>
|
||||||
</property>
|
</property>
|
||||||
@@ -21,286 +21,209 @@
|
|||||||
<number>0</number>
|
<number>0</number>
|
||||||
</property>
|
</property>
|
||||||
<item>
|
<item>
|
||||||
<layout class="QHBoxLayout" name="horizontalLayout">
|
<widget class="QFrame" name="albumFrame">
|
||||||
<property name="spacing">
|
<property name="frameShape">
|
||||||
<number>16</number>
|
<enum>QFrame::StyledPanel</enum>
|
||||||
</property>
|
|
||||||
<property name="margin">
|
|
||||||
<number>12</number>
|
|
||||||
</property>
|
|
||||||
<item>
|
|
||||||
<widget class="PlayableCover" name="cover">
|
|
||||||
<property name="sizePolicy">
|
|
||||||
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
|
||||||
<horstretch>0</horstretch>
|
|
||||||
<verstretch>0</verstretch>
|
|
||||||
</sizepolicy>
|
|
||||||
</property>
|
|
||||||
<property name="minimumSize">
|
|
||||||
<size>
|
|
||||||
<width>260</width>
|
|
||||||
<height>260</height>
|
|
||||||
</size>
|
|
||||||
</property>
|
|
||||||
<property name="text">
|
|
||||||
<string notr="true" extracomment="not translatable because is placeholder text">Cover</string>
|
|
||||||
</property>
|
|
||||||
<property name="alignment">
|
|
||||||
<set>Qt::AlignCenter</set>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item>
|
|
||||||
<layout class="QVBoxLayout" name="verticalLayout_3">
|
|
||||||
<property name="spacing">
|
|
||||||
<number>8</number>
|
|
||||||
</property>
|
|
||||||
<property name="margin">
|
|
||||||
<number>0</number>
|
|
||||||
</property>
|
|
||||||
<item>
|
|
||||||
<widget class="ScrollingLabel" name="artistLabel">
|
|
||||||
<property name="sizePolicy">
|
|
||||||
<sizepolicy hsizetype="Ignored" vsizetype="Preferred">
|
|
||||||
<horstretch>0</horstretch>
|
|
||||||
<verstretch>0</verstretch>
|
|
||||||
</sizepolicy>
|
|
||||||
</property>
|
|
||||||
<property name="font">
|
|
||||||
<font>
|
|
||||||
<pointsize>26</pointsize>
|
|
||||||
<weight>75</weight>
|
|
||||||
<bold>true</bold>
|
|
||||||
</font>
|
|
||||||
</property>
|
|
||||||
<property name="text">
|
|
||||||
<string notr="true" extracomment="not translatable because not shown to the user">ArtistName</string>
|
|
||||||
</property>
|
|
||||||
<property name="indent">
|
|
||||||
<number>2</number>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item>
|
|
||||||
<widget class="QTextBrowser" name="biography">
|
|
||||||
<property name="sizePolicy">
|
|
||||||
<sizepolicy hsizetype="MinimumExpanding" vsizetype="MinimumExpanding">
|
|
||||||
<horstretch>0</horstretch>
|
|
||||||
<verstretch>0</verstretch>
|
|
||||||
</sizepolicy>
|
|
||||||
</property>
|
|
||||||
<property name="minimumSize">
|
|
||||||
<size>
|
|
||||||
<width>0</width>
|
|
||||||
<height>190</height>
|
|
||||||
</size>
|
|
||||||
</property>
|
|
||||||
<property name="font">
|
|
||||||
<font>
|
|
||||||
<pointsize>13</pointsize>
|
|
||||||
</font>
|
|
||||||
</property>
|
|
||||||
<property name="horizontalScrollBarPolicy">
|
|
||||||
<enum>Qt::ScrollBarAlwaysOff</enum>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
</layout>
|
|
||||||
</item>
|
|
||||||
<item>
|
|
||||||
<widget class="QWidget" name="statsWidget" native="true">
|
|
||||||
<property name="minimumSize">
|
|
||||||
<size>
|
|
||||||
<width>220</width>
|
|
||||||
<height>240</height>
|
|
||||||
</size>
|
|
||||||
</property>
|
|
||||||
<property name="maximumSize">
|
|
||||||
<size>
|
|
||||||
<width>220</width>
|
|
||||||
<height>16777215</height>
|
|
||||||
</size>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
</layout>
|
|
||||||
</item>
|
|
||||||
<item>
|
|
||||||
<widget class="Line" name="lineAbove">
|
|
||||||
<property name="maximumSize">
|
|
||||||
<size>
|
|
||||||
<width>16777215</width>
|
|
||||||
<height>1</height>
|
|
||||||
</size>
|
|
||||||
</property>
|
</property>
|
||||||
<property name="frameShadow">
|
<property name="frameShadow">
|
||||||
<enum>QFrame::Sunken</enum>
|
<enum>QFrame::Raised</enum>
|
||||||
</property>
|
</property>
|
||||||
<property name="orientation">
|
<layout class="QVBoxLayout" name="verticalLayout_4">
|
||||||
<enum>Qt::Horizontal</enum>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item>
|
|
||||||
<widget class="Line" name="lineBelow">
|
|
||||||
<property name="maximumSize">
|
|
||||||
<size>
|
|
||||||
<width>16777215</width>
|
|
||||||
<height>1</height>
|
|
||||||
</size>
|
|
||||||
</property>
|
|
||||||
<property name="orientation">
|
|
||||||
<enum>Qt::Horizontal</enum>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item>
|
|
||||||
<widget class="QWidget" name="widget" native="true">
|
|
||||||
<layout class="QVBoxLayout" name="verticalLayout">
|
|
||||||
<property name="spacing">
|
<property name="spacing">
|
||||||
<number>0</number>
|
<number>4</number>
|
||||||
</property>
|
</property>
|
||||||
<property name="leftMargin">
|
<property name="leftMargin">
|
||||||
<number>0</number>
|
<number>32</number>
|
||||||
</property>
|
</property>
|
||||||
<property name="topMargin">
|
<property name="topMargin">
|
||||||
<number>16</number>
|
<number>32</number>
|
||||||
</property>
|
</property>
|
||||||
<property name="rightMargin">
|
<property name="rightMargin">
|
||||||
<number>0</number>
|
<number>32</number>
|
||||||
|
</property>
|
||||||
|
<property name="bottomMargin">
|
||||||
|
<number>8</number>
|
||||||
|
</property>
|
||||||
|
<item>
|
||||||
|
<widget class="CaptionLabel" name="albumLabel">
|
||||||
|
<property name="text">
|
||||||
|
<string>Top Albums</string>
|
||||||
|
</property>
|
||||||
|
<property name="margin">
|
||||||
|
<number>0</number>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="GridView" name="albums">
|
||||||
|
<property name="sizePolicy">
|
||||||
|
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
|
||||||
|
<horstretch>0</horstretch>
|
||||||
|
<verstretch>0</verstretch>
|
||||||
|
</sizepolicy>
|
||||||
|
</property>
|
||||||
|
<property name="minimumSize">
|
||||||
|
<size>
|
||||||
|
<width>0</width>
|
||||||
|
<height>190</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<spacer name="verticalSpacer_2">
|
||||||
|
<property name="orientation">
|
||||||
|
<enum>Qt::Vertical</enum>
|
||||||
|
</property>
|
||||||
|
<property name="sizeHint" stdset="0">
|
||||||
|
<size>
|
||||||
|
<width>20</width>
|
||||||
|
<height>0</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
</spacer>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QFrame" name="trackFrame">
|
||||||
|
<property name="frameShape">
|
||||||
|
<enum>QFrame::StyledPanel</enum>
|
||||||
|
</property>
|
||||||
|
<property name="frameShadow">
|
||||||
|
<enum>QFrame::Raised</enum>
|
||||||
|
</property>
|
||||||
|
<layout class="QVBoxLayout" name="verticalLayout_6">
|
||||||
|
<property name="spacing">
|
||||||
|
<number>4</number>
|
||||||
|
</property>
|
||||||
|
<property name="leftMargin">
|
||||||
|
<number>32</number>
|
||||||
|
</property>
|
||||||
|
<property name="topMargin">
|
||||||
|
<number>4</number>
|
||||||
|
</property>
|
||||||
|
<property name="rightMargin">
|
||||||
|
<number>32</number>
|
||||||
</property>
|
</property>
|
||||||
<property name="bottomMargin">
|
<property name="bottomMargin">
|
||||||
<number>16</number>
|
<number>16</number>
|
||||||
</property>
|
</property>
|
||||||
<item>
|
<item>
|
||||||
<layout class="QHBoxLayout" name="horizontalLayout_2">
|
<widget class="CaptionLabel" name="label_2">
|
||||||
<property name="leftMargin">
|
<property name="text">
|
||||||
<number>12</number>
|
<string>Top Hits</string>
|
||||||
</property>
|
</property>
|
||||||
<property name="topMargin">
|
<property name="margin">
|
||||||
<number>0</number>
|
<number>0</number>
|
||||||
</property>
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="GridView" name="topHits">
|
||||||
|
<property name="sizePolicy">
|
||||||
|
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
|
||||||
|
<horstretch>0</horstretch>
|
||||||
|
<verstretch>0</verstretch>
|
||||||
|
</sizepolicy>
|
||||||
|
</property>
|
||||||
|
<property name="minimumSize">
|
||||||
|
<size>
|
||||||
|
<width>0</width>
|
||||||
|
<height>190</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="ClickableLabel" name="topHitsMoreLabel">
|
||||||
|
<property name="text">
|
||||||
|
<string>Show More</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QFrame" name="bioFrame">
|
||||||
|
<property name="sizePolicy">
|
||||||
|
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
|
||||||
|
<horstretch>0</horstretch>
|
||||||
|
<verstretch>0</verstretch>
|
||||||
|
</sizepolicy>
|
||||||
|
</property>
|
||||||
|
<property name="frameShape">
|
||||||
|
<enum>QFrame::StyledPanel</enum>
|
||||||
|
</property>
|
||||||
|
<property name="frameShadow">
|
||||||
|
<enum>QFrame::Raised</enum>
|
||||||
|
</property>
|
||||||
|
<layout class="QVBoxLayout" name="verticalLayout_3">
|
||||||
|
<property name="leftMargin">
|
||||||
|
<number>32</number>
|
||||||
|
</property>
|
||||||
|
<property name="topMargin">
|
||||||
|
<number>16</number>
|
||||||
|
</property>
|
||||||
|
<property name="rightMargin">
|
||||||
|
<number>32</number>
|
||||||
|
</property>
|
||||||
|
<property name="bottomMargin">
|
||||||
|
<number>32</number>
|
||||||
|
</property>
|
||||||
|
<item>
|
||||||
|
<widget class="CaptionLabel" name="label_4">
|
||||||
|
<property name="text">
|
||||||
|
<string>Biography</string>
|
||||||
|
</property>
|
||||||
|
<property name="margin">
|
||||||
|
<number>0</number>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<layout class="QHBoxLayout" name="horizontalLayout" stretch="2,1">
|
||||||
|
<property name="spacing">
|
||||||
|
<number>32</number>
|
||||||
|
</property>
|
||||||
|
<property name="sizeConstraint">
|
||||||
|
<enum>QLayout::SetMaximumSize</enum>
|
||||||
|
</property>
|
||||||
|
<property name="leftMargin">
|
||||||
|
<number>0</number>
|
||||||
|
</property>
|
||||||
|
<property name="topMargin">
|
||||||
|
<number>16</number>
|
||||||
|
</property>
|
||||||
<property name="rightMargin">
|
<property name="rightMargin">
|
||||||
<number>12</number>
|
<number>0</number>
|
||||||
</property>
|
</property>
|
||||||
<property name="bottomMargin">
|
<property name="bottomMargin">
|
||||||
<number>0</number>
|
<number>0</number>
|
||||||
</property>
|
</property>
|
||||||
<item>
|
<item>
|
||||||
<widget class="QFrame" name="trackFrame">
|
<widget class="QTextBrowser" name="biography">
|
||||||
<property name="frameShape">
|
<property name="sizePolicy">
|
||||||
<enum>QFrame::StyledPanel</enum>
|
<sizepolicy hsizetype="MinimumExpanding" vsizetype="MinimumExpanding">
|
||||||
|
<horstretch>0</horstretch>
|
||||||
|
<verstretch>0</verstretch>
|
||||||
|
</sizepolicy>
|
||||||
</property>
|
</property>
|
||||||
<property name="frameShadow">
|
|
||||||
<enum>QFrame::Raised</enum>
|
|
||||||
</property>
|
|
||||||
<layout class="QVBoxLayout" name="verticalLayout_6">
|
|
||||||
<property name="spacing">
|
|
||||||
<number>4</number>
|
|
||||||
</property>
|
|
||||||
<property name="leftMargin">
|
|
||||||
<number>8</number>
|
|
||||||
</property>
|
|
||||||
<property name="topMargin">
|
|
||||||
<number>4</number>
|
|
||||||
</property>
|
|
||||||
<property name="rightMargin">
|
|
||||||
<number>8</number>
|
|
||||||
</property>
|
|
||||||
<property name="bottomMargin">
|
|
||||||
<number>8</number>
|
|
||||||
</property>
|
|
||||||
<item>
|
|
||||||
<widget class="QLabel" name="label">
|
|
||||||
<property name="font">
|
|
||||||
<font>
|
|
||||||
<pointsize>20</pointsize>
|
|
||||||
<weight>50</weight>
|
|
||||||
<bold>false</bold>
|
|
||||||
</font>
|
|
||||||
</property>
|
|
||||||
<property name="text">
|
|
||||||
<string>Top Hits</string>
|
|
||||||
</property>
|
|
||||||
<property name="margin">
|
|
||||||
<number>0</number>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item>
|
|
||||||
<widget class="PlaylistView" name="topHits">
|
|
||||||
<property name="sizePolicy">
|
|
||||||
<sizepolicy hsizetype="Expanding" vsizetype="MinimumExpanding">
|
|
||||||
<horstretch>0</horstretch>
|
|
||||||
<verstretch>0</verstretch>
|
|
||||||
</sizepolicy>
|
|
||||||
</property>
|
|
||||||
<property name="headerHidden">
|
|
||||||
<bool>true</bool>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
</layout>
|
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item>
|
<item>
|
||||||
<widget class="QFrame" name="artistFrame">
|
<widget class="QLabel" name="cover">
|
||||||
<property name="frameShape">
|
<property name="sizePolicy">
|
||||||
<enum>QFrame::StyledPanel</enum>
|
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
|
||||||
|
<horstretch>0</horstretch>
|
||||||
|
<verstretch>0</verstretch>
|
||||||
|
</sizepolicy>
|
||||||
</property>
|
</property>
|
||||||
<property name="frameShadow">
|
<property name="text">
|
||||||
<enum>QFrame::Raised</enum>
|
<string>TextLabel</string>
|
||||||
</property>
|
</property>
|
||||||
<layout class="QVBoxLayout" name="verticalLayout_5">
|
|
||||||
<property name="spacing">
|
|
||||||
<number>4</number>
|
|
||||||
</property>
|
|
||||||
<property name="leftMargin">
|
|
||||||
<number>8</number>
|
|
||||||
</property>
|
|
||||||
<property name="topMargin">
|
|
||||||
<number>4</number>
|
|
||||||
</property>
|
|
||||||
<property name="rightMargin">
|
|
||||||
<number>8</number>
|
|
||||||
</property>
|
|
||||||
<property name="bottomMargin">
|
|
||||||
<number>4</number>
|
|
||||||
</property>
|
|
||||||
<item>
|
|
||||||
<widget class="QLabel" name="label_2">
|
|
||||||
<property name="font">
|
|
||||||
<font>
|
|
||||||
<pointsize>20</pointsize>
|
|
||||||
<weight>50</weight>
|
|
||||||
<bold>false</bold>
|
|
||||||
</font>
|
|
||||||
</property>
|
|
||||||
<property name="text">
|
|
||||||
<string>Related Artists</string>
|
|
||||||
</property>
|
|
||||||
<property name="margin">
|
|
||||||
<number>0</number>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item>
|
|
||||||
<widget class="GridView" name="relatedArtists">
|
|
||||||
<property name="sizePolicy">
|
|
||||||
<sizepolicy hsizetype="Expanding" vsizetype="MinimumExpanding">
|
|
||||||
<horstretch>0</horstretch>
|
|
||||||
<verstretch>0</verstretch>
|
|
||||||
</sizepolicy>
|
|
||||||
</property>
|
|
||||||
<property name="minimumSize">
|
|
||||||
<size>
|
|
||||||
<width>0</width>
|
|
||||||
<height>190</height>
|
|
||||||
</size>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
</layout>
|
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
@@ -309,120 +232,53 @@
|
|||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item>
|
<item>
|
||||||
<widget class="Line" name="lineAbove2">
|
<widget class="QFrame" name="artistFrame">
|
||||||
<property name="maximumSize">
|
<property name="frameShape">
|
||||||
<size>
|
<enum>QFrame::StyledPanel</enum>
|
||||||
<width>16777215</width>
|
|
||||||
<height>1</height>
|
|
||||||
</size>
|
|
||||||
</property>
|
</property>
|
||||||
<property name="orientation">
|
<property name="frameShadow">
|
||||||
<enum>Qt::Horizontal</enum>
|
<enum>QFrame::Raised</enum>
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
<layout class="QVBoxLayout" name="verticalLayout_5">
|
||||||
</item>
|
|
||||||
<item>
|
|
||||||
<widget class="Line" name="lineBelow2">
|
|
||||||
<property name="maximumSize">
|
|
||||||
<size>
|
|
||||||
<width>16777215</width>
|
|
||||||
<height>1</height>
|
|
||||||
</size>
|
|
||||||
</property>
|
|
||||||
<property name="orientation">
|
|
||||||
<enum>Qt::Horizontal</enum>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item>
|
|
||||||
<widget class="QWidget" name="albumWidget" native="true">
|
|
||||||
<layout class="QVBoxLayout" name="verticalLayout_2">
|
|
||||||
<property name="spacing">
|
<property name="spacing">
|
||||||
<number>0</number>
|
<number>4</number>
|
||||||
</property>
|
</property>
|
||||||
<property name="leftMargin">
|
<property name="leftMargin">
|
||||||
<number>0</number>
|
<number>32</number>
|
||||||
</property>
|
</property>
|
||||||
<property name="topMargin">
|
<property name="topMargin">
|
||||||
<number>16</number>
|
<number>4</number>
|
||||||
</property>
|
</property>
|
||||||
<property name="rightMargin">
|
<property name="rightMargin">
|
||||||
<number>0</number>
|
<number>32</number>
|
||||||
</property>
|
</property>
|
||||||
<property name="bottomMargin">
|
<property name="bottomMargin">
|
||||||
<number>16</number>
|
<number>4</number>
|
||||||
</property>
|
</property>
|
||||||
<item>
|
<item>
|
||||||
<widget class="QFrame" name="albumFrame">
|
<widget class="CaptionLabel" name="label_3">
|
||||||
<property name="frameShape">
|
<property name="text">
|
||||||
<enum>QFrame::StyledPanel</enum>
|
<string>Related Artists</string>
|
||||||
</property>
|
</property>
|
||||||
<property name="frameShadow">
|
<property name="margin">
|
||||||
<enum>QFrame::Raised</enum>
|
<number>0</number>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="GridView" name="relatedArtists">
|
||||||
|
<property name="sizePolicy">
|
||||||
|
<sizepolicy hsizetype="Expanding" vsizetype="MinimumExpanding">
|
||||||
|
<horstretch>0</horstretch>
|
||||||
|
<verstretch>0</verstretch>
|
||||||
|
</sizepolicy>
|
||||||
|
</property>
|
||||||
|
<property name="minimumSize">
|
||||||
|
<size>
|
||||||
|
<width>0</width>
|
||||||
|
<height>190</height>
|
||||||
|
</size>
|
||||||
</property>
|
</property>
|
||||||
<layout class="QVBoxLayout" name="verticalLayout_4">
|
|
||||||
<property name="spacing">
|
|
||||||
<number>4</number>
|
|
||||||
</property>
|
|
||||||
<property name="leftMargin">
|
|
||||||
<number>28</number>
|
|
||||||
</property>
|
|
||||||
<property name="topMargin">
|
|
||||||
<number>4</number>
|
|
||||||
</property>
|
|
||||||
<property name="rightMargin">
|
|
||||||
<number>8</number>
|
|
||||||
</property>
|
|
||||||
<property name="bottomMargin">
|
|
||||||
<number>4</number>
|
|
||||||
</property>
|
|
||||||
<item>
|
|
||||||
<widget class="QLabel" name="albumLabel">
|
|
||||||
<property name="font">
|
|
||||||
<font>
|
|
||||||
<pointsize>20</pointsize>
|
|
||||||
<weight>50</weight>
|
|
||||||
<bold>false</bold>
|
|
||||||
</font>
|
|
||||||
</property>
|
|
||||||
<property name="text">
|
|
||||||
<string>Albums</string>
|
|
||||||
</property>
|
|
||||||
<property name="margin">
|
|
||||||
<number>0</number>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item>
|
|
||||||
<widget class="GridView" name="albums">
|
|
||||||
<property name="sizePolicy">
|
|
||||||
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
|
|
||||||
<horstretch>0</horstretch>
|
|
||||||
<verstretch>0</verstretch>
|
|
||||||
</sizepolicy>
|
|
||||||
</property>
|
|
||||||
<property name="minimumSize">
|
|
||||||
<size>
|
|
||||||
<width>0</width>
|
|
||||||
<height>190</height>
|
|
||||||
</size>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item>
|
|
||||||
<spacer name="verticalSpacer">
|
|
||||||
<property name="orientation">
|
|
||||||
<enum>Qt::Vertical</enum>
|
|
||||||
</property>
|
|
||||||
<property name="sizeHint" stdset="0">
|
|
||||||
<size>
|
|
||||||
<width>20</width>
|
|
||||||
<height>0</height>
|
|
||||||
</size>
|
|
||||||
</property>
|
|
||||||
</spacer>
|
|
||||||
</item>
|
|
||||||
</layout>
|
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
@@ -437,19 +293,14 @@
|
|||||||
<header>playlist/GridView.h</header>
|
<header>playlist/GridView.h</header>
|
||||||
</customwidget>
|
</customwidget>
|
||||||
<customwidget>
|
<customwidget>
|
||||||
<class>PlayableCover</class>
|
<class>CaptionLabel</class>
|
||||||
<extends>QLabel</extends>
|
<extends>QLabel</extends>
|
||||||
<header>widgets/PlayableCover.h</header>
|
<header>widgets/CaptionLabel.h</header>
|
||||||
</customwidget>
|
</customwidget>
|
||||||
<customwidget>
|
<customwidget>
|
||||||
<class>ScrollingLabel</class>
|
<class>ClickableLabel</class>
|
||||||
<extends>QLabel</extends>
|
<extends>QLabel</extends>
|
||||||
<header location="global">widgets/ScrollingLabel.h</header>
|
<header>widgets/ClickableLabel.h</header>
|
||||||
</customwidget>
|
|
||||||
<customwidget>
|
|
||||||
<class>PlaylistView</class>
|
|
||||||
<extends>QTreeView</extends>
|
|
||||||
<header location="global">playlist/PlaylistView.h</header>
|
|
||||||
</customwidget>
|
</customwidget>
|
||||||
</customwidgets>
|
</customwidgets>
|
||||||
<resources/>
|
<resources/>
|
||||||
|
Reference in New Issue
Block a user