From a1f82f38bde7b01da2a7f8904d92674d6c820d50 Mon Sep 17 00:00:00 2001 From: Michael Zanetti Date: Tue, 17 Jul 2012 20:53:10 +0200 Subject: [PATCH 01/16] make the SourceTreeView DPI aware. This makes it usable on Retina screens --- src/sourcetree/SourceDelegate.cpp | 31 ++++++++++++++++++++----------- 1 file changed, 20 insertions(+), 11 deletions(-) diff --git a/src/sourcetree/SourceDelegate.cpp b/src/sourcetree/SourceDelegate.cpp index 5a0571a0b..91ce20044 100644 --- a/src/sourcetree/SourceDelegate.cpp +++ b/src/sourcetree/SourceDelegate.cpp @@ -89,15 +89,19 @@ SourceDelegate::sizeHint( const QStyleOptionViewItem& option, const QModelIndex& if ( type == SourcesModel::Collection ) { - return QSize( option.rect.width(), 40 ); +// return QSize( option.rect.width(), 40 ); + return QSize( option.rect.width(), option.fontMetrics.height() * 2.5 ); } else if ( type == SourcesModel::Divider ) { + // TODO: what is the divider? return QSize( option.rect.width(), 6 ); } - else if ( type == SourcesModel::Group && index.row() > 0 ) + else if ( type == SourcesModel::Group ) { - return QSize( option.rect.width(), 24 ); +// return QSize( option.rect.width(), 26 ); + int groupSpacer = index.row() > 0 ? option.fontMetrics.height() / 2 : 0; + return QSize( option.rect.width(), option.fontMetrics.height() + groupSpacer ); } else if ( m_expandedMap.contains( index ) ) { @@ -113,7 +117,7 @@ SourceDelegate::sizeHint( const QStyleOptionViewItem& option, const QModelIndex& return m_expandedMap.value( index )->size(); } else - return QStyledItemDelegate::sizeHint( option, index ); + return QSize( option.rect.width(), option.fontMetrics.height() * 1.2 ); //QStyledItemDelegate::sizeHint( option, index ) ); } @@ -143,7 +147,7 @@ SourceDelegate::paintDecorations( QPainter* painter, const QStyleOptionViewItem& iconW = ah->originalSize().height() - 4; } } - + QRect iconRect = QRect( 4, option.rect.y() + 2, iconW, iconW ); QPixmap speaker = option.state & QStyle::State_Selected ? m_nowPlayingSpeaker : m_nowPlayingSpeakerDark; speaker = speaker.scaledToHeight( iconW, Qt::SmoothTransformation ); @@ -162,7 +166,8 @@ SourceDelegate::paintCollection( QPainter* painter, const QStyleOptionViewItem& QFont figFont = bold; figFont.setFamily( "Arial Bold" ); figFont.setWeight( QFont::Black ); - figFont.setPixelSize( 10 ); + //figFont.setPixelSize( 10 ); + figFont.setPixelSize( option.fontMetrics.height() * 0.7 ); SourceTreeItem* item = index.data( SourcesModel::SourceTreeItemRole ).value< SourceTreeItem* >(); SourceItem* colItem = qobject_cast< SourceItem* >( item ); @@ -260,7 +265,7 @@ SourceDelegate::paintCollection( QPainter* painter, const QStyleOptionViewItem& { painter->setRenderHint( QPainter::Antialiasing ); - QRect figRect = option.rect.adjusted( option.rect.width() - figWidth - 13, 0, -14, -option.rect.height() + 16 ); + QRect figRect = option.rect.adjusted( option.rect.width() - figWidth - 13, 0, -14, -option.rect.height() + option.fontMetrics.height() * 1.1 ); int hd = ( option.rect.height() - figRect.height() ) / 2; figRect.adjust( 0, hd, 0, hd ); @@ -297,7 +302,8 @@ SourceDelegate::paintCategory( QPainter* painter, const QStyleOptionViewItem& op text = tr( "Hide" ); QFont font = painter->font(); - font.setPixelSize( 11 ); + //font.setPixelSize( 11 ); + font.setPixelSize( option.fontMetrics.height() * 0.7 ); font.setBold( true ); painter->setFont( font ); QTextOption to( Qt::AlignVCenter | Qt::AlignRight ); @@ -315,7 +321,8 @@ void SourceDelegate::paintGroup( QPainter* painter, const QStyleOptionViewItem& option, const QModelIndex& index ) const { QFont font = painter->font(); - font.setPixelSize( 12 ); +// font.setPixelSize( 12 ); + font.setPixelSize( option.fontMetrics.height() * 0.8 ); font.setBold( true ); painter->setFont( font ); @@ -359,7 +366,8 @@ SourceDelegate::paint( QPainter* painter, const QStyleOptionViewItem& option, co painter->save(); QFont font = painter->font(); - font.setPixelSize( 11 ); +// font.setPixelSize( 11 ); + font.setPixelSize( option.fontMetrics.height() * 0.75 ); painter->setFont( font ); o.font = font; o3.font = font; @@ -458,7 +466,8 @@ SourceDelegate::paint( QPainter* painter, const QStyleOptionViewItem& option, co painter->setPen( pen ); QFont font = painter->font(); - font.setPixelSize( 12 ); +// font.setPixelSize( 12 ); + font.setPixelSize( option.fontMetrics.height() * 0.8 ); painter->setFont( font ); QFont fontBold = painter->font(); fontBold.setBold( true ); From 2a7fabf633a23ff5425f0714a1edbaac52ceb45c Mon Sep 17 00:00:00 2001 From: Michael Zanetti Date: Tue, 17 Jul 2012 22:17:17 +0200 Subject: [PATCH 02/16] try with pointsizes instead of scaling pixelsizes --- src/sourcetree/SourceDelegate.cpp | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/src/sourcetree/SourceDelegate.cpp b/src/sourcetree/SourceDelegate.cpp index 91ce20044..833c2d273 100644 --- a/src/sourcetree/SourceDelegate.cpp +++ b/src/sourcetree/SourceDelegate.cpp @@ -90,7 +90,7 @@ SourceDelegate::sizeHint( const QStyleOptionViewItem& option, const QModelIndex& if ( type == SourcesModel::Collection ) { // return QSize( option.rect.width(), 40 ); - return QSize( option.rect.width(), option.fontMetrics.height() * 2.5 ); + return QSize( option.rect.width(), option.fontMetrics.height() * 2.6 ); } else if ( type == SourcesModel::Divider ) { @@ -100,7 +100,7 @@ SourceDelegate::sizeHint( const QStyleOptionViewItem& option, const QModelIndex& else if ( type == SourcesModel::Group ) { // return QSize( option.rect.width(), 26 ); - int groupSpacer = index.row() > 0 ? option.fontMetrics.height() / 2 : 0; + int groupSpacer = index.row() > 0 ? option.fontMetrics.height() * 0.6 : option.fontMetrics.height() * 0.2; return QSize( option.rect.width(), option.fontMetrics.height() + groupSpacer ); } else if ( m_expandedMap.contains( index ) ) @@ -167,7 +167,7 @@ SourceDelegate::paintCollection( QPainter* painter, const QStyleOptionViewItem& figFont.setFamily( "Arial Bold" ); figFont.setWeight( QFont::Black ); //figFont.setPixelSize( 10 ); - figFont.setPixelSize( option.fontMetrics.height() * 0.7 ); + figFont.setPointSize( 7 ); SourceTreeItem* item = index.data( SourcesModel::SourceTreeItemRole ).value< SourceTreeItem* >(); SourceItem* colItem = qobject_cast< SourceItem* >( item ); @@ -303,7 +303,7 @@ SourceDelegate::paintCategory( QPainter* painter, const QStyleOptionViewItem& op QFont font = painter->font(); //font.setPixelSize( 11 ); - font.setPixelSize( option.fontMetrics.height() * 0.7 ); + font.setPointSize( 8 ); font.setBold( true ); painter->setFont( font ); QTextOption to( Qt::AlignVCenter | Qt::AlignRight ); @@ -322,7 +322,7 @@ SourceDelegate::paintGroup( QPainter* painter, const QStyleOptionViewItem& optio { QFont font = painter->font(); // font.setPixelSize( 12 ); - font.setPixelSize( option.fontMetrics.height() * 0.8 ); + font.setPointSize( 9 ); font.setBold( true ); painter->setFont( font ); @@ -344,7 +344,8 @@ SourceDelegate::paintGroup( QPainter* painter, const QStyleOptionViewItem& optio if ( option.state & QStyle::State_Open ) text = tr( "Hide" ); - font.setPixelSize( font.pixelSize() - 1 ); + QFont tmpFont = font; + font.setPointSize( font.pointSize() - 1 ); painter->setFont( font ); QTextOption to( Qt::AlignBottom | Qt::AlignRight ); @@ -353,6 +354,7 @@ SourceDelegate::paintGroup( QPainter* painter, const QStyleOptionViewItem& optio painter->drawText( option.rect.translated( -4, 1 ), text, to ); painter->setPen( QColor( 99, 113, 128 ) ); painter->drawText( option.rect.translated( -4, 0 ), text, to ); + painter->setFont( tmpFont ); } } @@ -367,7 +369,7 @@ SourceDelegate::paint( QPainter* painter, const QStyleOptionViewItem& option, co QFont font = painter->font(); // font.setPixelSize( 11 ); - font.setPixelSize( option.fontMetrics.height() * 0.75 ); + font.setPointSize( 8 ); painter->setFont( font ); o.font = font; o3.font = font; @@ -467,7 +469,7 @@ SourceDelegate::paint( QPainter* painter, const QStyleOptionViewItem& option, co QFont font = painter->font(); // font.setPixelSize( 12 ); - font.setPixelSize( option.fontMetrics.height() * 0.8 ); + font.setPointSize( 9 ); painter->setFont( font ); QFont fontBold = painter->font(); fontBold.setBold( true ); From ea497de3c4a6e21dfacf4b671660e653e76877ac Mon Sep 17 00:00:00 2001 From: Michael Zanetti Date: Tue, 17 Jul 2012 23:10:43 +0200 Subject: [PATCH 03/16] also adjust the PlaylistDelegate --- src/libtomahawk/widgets/WelcomeWidget.cpp | 30 +++++++++++++++++------ 1 file changed, 22 insertions(+), 8 deletions(-) diff --git a/src/libtomahawk/widgets/WelcomeWidget.cpp b/src/libtomahawk/widgets/WelcomeWidget.cpp index 7456233d2..5538431e2 100644 --- a/src/libtomahawk/widgets/WelcomeWidget.cpp +++ b/src/libtomahawk/widgets/WelcomeWidget.cpp @@ -187,7 +187,18 @@ PlaylistDelegate::sizeHint( const QStyleOptionViewItem& option, const QModelInde { Q_UNUSED( option ); Q_UNUSED( index ); - return QSize( 0, 64 ); + + // Calculates the size for the bold line + 3 normal lines + margins + int height = 2 * 6; // margins + QFont font = option.font; + QFontMetrics fm1( font ); + font.setPointSize( 8 ); + height += fm1.height() * 3; + font.setPointSize( 9 ); + QFontMetrics fm2( font ); + height += fm2.height(); + + return QSize( 0, height ); } @@ -210,14 +221,17 @@ PlaylistDelegate::paint( QPainter* painter, const QStyleOptionViewItem& option, QTextOption to; to.setAlignment( Qt::AlignCenter ); QFont font = opt.font; - font.setPixelSize( 10 ); + font.setPointSize( 8 ); + QFontMetrics fontMetrics( font ); QFont boldFont = font; boldFont.setBold( true ); - boldFont.setPixelSize( 11 ); + boldFont.setPointSize( 9 ); + QFontMetrics boldFontMetrics( boldFont ); QFont figFont = boldFont; - figFont.setPixelSize( 10 ); + figFont.setPointSize( 8 ); + QFontMetrics figFontMetrics( figFont ); QPixmap icon; RecentlyPlayedPlaylistsModel::PlaylistTypes type = (RecentlyPlayedPlaylistsModel::PlaylistTypes)index.data( RecentlyPlayedPlaylistsModel::PlaylistTypeRole ).toInt(); @@ -228,7 +242,7 @@ PlaylistDelegate::paint( QPainter* painter, const QStyleOptionViewItem& option, else if( type == RecentlyPlayedPlaylistsModel::Station ) icon = m_stationIcon; - QRect pixmapRect = option.rect.adjusted( 10, 13, -option.rect.width() + 48, -13 ); + QRect pixmapRect = option.rect.adjusted( 10, 13, -option.rect.width() + option.rect.height() - 26, -13 ); icon = icon.scaled( pixmapRect.size(), Qt::KeepAspectRatio, Qt::SmoothTransformation ); painter->drawPixmap( pixmapRect, icon ); @@ -258,7 +272,7 @@ PlaylistDelegate::paint( QPainter* painter, const QStyleOptionViewItem& option, QPixmap avatar = index.data( RecentlyPlayedPlaylistsModel::PlaylistRole ).value< Tomahawk::playlist_ptr >()->author()->avatar( Source::FancyStyle ); if ( avatar.isNull() ) avatar = m_defaultAvatar; - QRect r( option.rect.width() - avatar.width() - 10, option.rect.top() + option.rect.height()/2 - avatar.height()/2, avatar.width(), avatar.height() ); + QRect r( option.rect.width() - option.fontMetrics.height() * 2.5 - 10, option.rect.top() + option.rect.height()/2.25 - option.fontMetrics.height(), option.fontMetrics.height() * 2.5, option.fontMetrics.height() * 2.2 ); painter->drawPixmap( r, avatar ); painter->setFont( font ); @@ -287,7 +301,7 @@ PlaylistDelegate::paint( QPainter* painter, const QStyleOptionViewItem& option, painter->setPen( QColor( Qt::gray ).darker() ); } - QRect rectText = option.rect.adjusted( 66, 20, -leftEdge - 10, -8 ); + QRect rectText = option.rect.adjusted( option.fontMetrics.height() * 4.5, boldFontMetrics.height() + 6, -leftEdge - 10, -8 ); #ifdef Q_WS_MAC rectText.adjust( 0, 1, 0, 0 ); #elif defined Q_WS_WIN @@ -299,7 +313,7 @@ PlaylistDelegate::paint( QPainter* painter, const QStyleOptionViewItem& option, painter->setFont( font ); painter->setFont( boldFont ); - painter->drawText( option.rect.adjusted( 56, 6, -100, -option.rect.height() + 20 ), index.data().toString() ); + painter->drawText( option.rect.adjusted( option.fontMetrics.height() * 4, 6, -100, -option.rect.height() + boldFontMetrics.height() + 6 ), index.data().toString() ); painter->restore(); } From d44eb51034edd9900851c6d268a18c91287db2af Mon Sep 17 00:00:00 2001 From: Michael Zanetti Date: Wed, 18 Jul 2012 19:28:19 +0200 Subject: [PATCH 04/16] and the InfoBar --- src/libtomahawk/infobar/InfoBar.cpp | 24 +++++++++++++++++++----- src/libtomahawk/infobar/InfoBar.ui | 19 +++++-------------- 2 files changed, 24 insertions(+), 19 deletions(-) diff --git a/src/libtomahawk/infobar/InfoBar.cpp b/src/libtomahawk/infobar/InfoBar.cpp index e69e45c59..f2cc48280 100644 --- a/src/libtomahawk/infobar/InfoBar.cpp +++ b/src/libtomahawk/infobar/InfoBar.cpp @@ -44,22 +44,32 @@ InfoBar::InfoBar( QWidget* parent ) , ui( new Ui::InfoBar ) , m_queryLabel( 0 ) { + int requiredHeight = 0; + ui->setupUi( this ); TomahawkUtils::unmarginLayout( layout() ); layout()->setContentsMargins( 8, 4, 8, 4 ); + requiredHeight += 8; // Top + bottom margins QFont boldFont = ui->captionLabel->font(); - boldFont.setPixelSize( 18 ); + //boldFont.setPixelSize( 18 ); + boldFont.setPointSize( 16 ); boldFont.setBold( true ); ui->captionLabel->setFont( boldFont ); ui->captionLabel->setElideMode( Qt::ElideRight ); - boldFont.setPixelSize( 12 ); + QFontMetrics boldFontMetrics( boldFont ); + requiredHeight += boldFontMetrics.height(); + + boldFont.setPointSize( 10 ); boldFont.setBold( false ); ui->descriptionLabel->setFont( boldFont ); + boldFontMetrics = QFontMetrics( boldFont ); + requiredHeight += boldFontMetrics.height(); + QFont regFont = ui->longDescriptionLabel->font(); - regFont.setPixelSize( 11 ); + regFont.setPointSize( 9 ); ui->longDescriptionLabel->setFont( regFont ); m_whitePal = ui->captionLabel->palette(); @@ -70,7 +80,11 @@ InfoBar::InfoBar( QWidget* parent ) ui->longDescriptionLabel->setPalette( m_whitePal ); ui->captionLabel->setMargin( 6 ); + requiredHeight += 2*6; + ui->descriptionLabel->setMargin( 6 ); + requiredHeight += 2*6; + ui->longDescriptionLabel->setMargin( 4 ); ui->captionLabel->setText( QString() ); @@ -95,8 +109,8 @@ InfoBar::InfoBar( QWidget* parent ) setAutoFillBackground( true ); - setMinimumHeight( geometry().height() ); - setMaximumHeight( geometry().height() ); + setMinimumHeight( requiredHeight ); + setMaximumHeight( requiredHeight ); createTile(); diff --git a/src/libtomahawk/infobar/InfoBar.ui b/src/libtomahawk/infobar/InfoBar.ui index de9a45c78..fc754132f 100644 --- a/src/libtomahawk/infobar/InfoBar.ui +++ b/src/libtomahawk/infobar/InfoBar.ui @@ -7,11 +7,11 @@ 0 0 774 - 80 + 72 - + 0 0 @@ -28,9 +28,6 @@ - - QLayout::SetDefaultConstraint - @@ -59,16 +56,13 @@ - - QLayout::SetDefaultConstraint - 0 - + 0 0 @@ -81,7 +75,7 @@ - + 0 0 @@ -104,16 +98,13 @@ 16 - 20 + 0 - - QLayout::SetMaximumSize - From 53863e91554aa7da5f25276cfca336c17721d004 Mon Sep 17 00:00:00 2001 From: Michael Zanetti Date: Wed, 18 Jul 2012 19:36:40 +0200 Subject: [PATCH 05/16] fixed font sizes in the context page --- src/libtomahawk/context/ContextPage.cpp | 11 ++++++++--- src/libtomahawk/context/ContextWidget.cpp | 9 +++++++-- src/libtomahawk/context/ContextWidget.ui | 2 +- 3 files changed, 16 insertions(+), 6 deletions(-) diff --git a/src/libtomahawk/context/ContextPage.cpp b/src/libtomahawk/context/ContextPage.cpp index cc1aca64d..6e34f277e 100644 --- a/src/libtomahawk/context/ContextPage.cpp +++ b/src/libtomahawk/context/ContextPage.cpp @@ -38,11 +38,12 @@ ContextProxyPage::paint( QPainter* painter, const QStyleOptionGraphicsItem* opti QFont f( font() ); f.setBold( true ); - f.setPixelSize( 14 ); + f.setPointSize( 8 ); painter->setFont( f ); painter->setPen( Qt::white ); - QRect r( 1, 1, option->rect.width(), 19 ); + QFontMetrics fm( f ); + QRect r( 1, 1, option->rect.width(), fm.height() * 1.1 ); QTextOption to( Qt::AlignCenter ); painter->drawText( r, m_page->title(), to ); @@ -65,8 +66,12 @@ ContextProxyPage::setPage( Tomahawk::ContextPage* page ) } #endif + QFont f( font() ); + f.setBold( true ); + f.setPointSize( 8 ); + QFontMetrics fm( f ); QGraphicsLinearLayout* layout = new QGraphicsLinearLayout(); - layout->setContentsMargins( 4, 20, 4, 4 ); + layout->setContentsMargins( 4, fm.height() * 1.1, 4, 4 ); layout->addItem( page->widget() ); setLayout( layout ); diff --git a/src/libtomahawk/context/ContextWidget.cpp b/src/libtomahawk/context/ContextWidget.cpp index bbf0e8334..a60223d88 100644 --- a/src/libtomahawk/context/ContextWidget.cpp +++ b/src/libtomahawk/context/ContextWidget.cpp @@ -43,7 +43,6 @@ using namespace Tomahawk; ContextWidget::ContextWidget( QWidget* parent ) : QWidget( parent ) , ui( new Ui::ContextWidget ) - , m_minHeight( 22 ) , m_currentView( 0 ) , m_visible( false ) { @@ -86,9 +85,15 @@ ContextWidget::ContextWidget( QWidget* parent ) ui->toggleButton->setPalette( whitePal ); QFont boldFont = ui->toggleButton->font(); - boldFont.setPixelSize( 12 ); + //boldFont.setPixelSize( 12 ); + boldFont.setPointSize( 10 ); boldFont.setBold( true ); ui->toggleButton->setFont( boldFont ); + QFontMetrics fm( boldFont ); + + m_minHeight = fm.height() * 1.1; + + ui->toggleButton->setMinimumHeight( fm.height() ); setAutoFillBackground( true ); setFixedHeight( m_minHeight ); diff --git a/src/libtomahawk/context/ContextWidget.ui b/src/libtomahawk/context/ContextWidget.ui index 77a9f2fe8..5282df4ad 100644 --- a/src/libtomahawk/context/ContextWidget.ui +++ b/src/libtomahawk/context/ContextWidget.ui @@ -7,7 +7,7 @@ 0 0 774 - 72 + 173 From a438e08080523975a7c3410e76bf1aa6acf0046b Mon Sep 17 00:00:00 2001 From: Michael Zanetti Date: Wed, 18 Jul 2012 19:37:26 +0200 Subject: [PATCH 06/16] increase font sizes by one point in the sourcetree and welcomewidget --- src/libtomahawk/widgets/WelcomeWidget.cpp | 12 +++++------- src/sourcetree/SourceDelegate.cpp | 10 +++++----- 2 files changed, 10 insertions(+), 12 deletions(-) diff --git a/src/libtomahawk/widgets/WelcomeWidget.cpp b/src/libtomahawk/widgets/WelcomeWidget.cpp index 5538431e2..f1cbaad53 100644 --- a/src/libtomahawk/widgets/WelcomeWidget.cpp +++ b/src/libtomahawk/widgets/WelcomeWidget.cpp @@ -192,9 +192,9 @@ PlaylistDelegate::sizeHint( const QStyleOptionViewItem& option, const QModelInde int height = 2 * 6; // margins QFont font = option.font; QFontMetrics fm1( font ); - font.setPointSize( 8 ); - height += fm1.height() * 3; font.setPointSize( 9 ); + height += fm1.height() * 3; + font.setPointSize( 12 ); QFontMetrics fm2( font ); height += fm2.height(); @@ -221,17 +221,15 @@ PlaylistDelegate::paint( QPainter* painter, const QStyleOptionViewItem& option, QTextOption to; to.setAlignment( Qt::AlignCenter ); QFont font = opt.font; - font.setPointSize( 8 ); - QFontMetrics fontMetrics( font ); + font.setPointSize( 9 ); QFont boldFont = font; boldFont.setBold( true ); - boldFont.setPointSize( 9 ); + boldFont.setPointSize( 10 ); QFontMetrics boldFontMetrics( boldFont ); QFont figFont = boldFont; - figFont.setPointSize( 8 ); - QFontMetrics figFontMetrics( figFont ); + figFont.setPointSize( 9 ); QPixmap icon; RecentlyPlayedPlaylistsModel::PlaylistTypes type = (RecentlyPlayedPlaylistsModel::PlaylistTypes)index.data( RecentlyPlayedPlaylistsModel::PlaylistTypeRole ).toInt(); diff --git a/src/sourcetree/SourceDelegate.cpp b/src/sourcetree/SourceDelegate.cpp index 833c2d273..fb6a4d232 100644 --- a/src/sourcetree/SourceDelegate.cpp +++ b/src/sourcetree/SourceDelegate.cpp @@ -167,7 +167,7 @@ SourceDelegate::paintCollection( QPainter* painter, const QStyleOptionViewItem& figFont.setFamily( "Arial Bold" ); figFont.setWeight( QFont::Black ); //figFont.setPixelSize( 10 ); - figFont.setPointSize( 7 ); + figFont.setPointSize( 8 ); SourceTreeItem* item = index.data( SourcesModel::SourceTreeItemRole ).value< SourceTreeItem* >(); SourceItem* colItem = qobject_cast< SourceItem* >( item ); @@ -303,7 +303,7 @@ SourceDelegate::paintCategory( QPainter* painter, const QStyleOptionViewItem& op QFont font = painter->font(); //font.setPixelSize( 11 ); - font.setPointSize( 8 ); + font.setPointSize( 9 ); font.setBold( true ); painter->setFont( font ); QTextOption to( Qt::AlignVCenter | Qt::AlignRight ); @@ -322,7 +322,7 @@ SourceDelegate::paintGroup( QPainter* painter, const QStyleOptionViewItem& optio { QFont font = painter->font(); // font.setPixelSize( 12 ); - font.setPointSize( 9 ); + font.setPointSize( 10 ); font.setBold( true ); painter->setFont( font ); @@ -369,7 +369,7 @@ SourceDelegate::paint( QPainter* painter, const QStyleOptionViewItem& option, co QFont font = painter->font(); // font.setPixelSize( 11 ); - font.setPointSize( 8 ); + font.setPointSize( 9 ); painter->setFont( font ); o.font = font; o3.font = font; @@ -469,7 +469,7 @@ SourceDelegate::paint( QPainter* painter, const QStyleOptionViewItem& option, co QFont font = painter->font(); // font.setPixelSize( 12 ); - font.setPointSize( 9 ); + font.setPointSize( 10 ); painter->setFont( font ); QFont fontBold = painter->font(); fontBold.setBold( true ); From a62b09076cc4498119e14fda23cb41c8e2ce7f6d Mon Sep 17 00:00:00 2001 From: Michael Zanetti Date: Wed, 18 Jul 2012 19:46:01 +0200 Subject: [PATCH 07/16] fix fonts in FlexibleHeader --- src/libtomahawk/playlist/FlexibleHeader.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/libtomahawk/playlist/FlexibleHeader.cpp b/src/libtomahawk/playlist/FlexibleHeader.cpp index e58a2ea02..7b9ab749a 100644 --- a/src/libtomahawk/playlist/FlexibleHeader.cpp +++ b/src/libtomahawk/playlist/FlexibleHeader.cpp @@ -51,11 +51,11 @@ FlexibleHeader::FlexibleHeader( FlexibleView* parent ) ui->descLabel->setPalette( pal ); QFont font = ui->captionLabel->font(); - font.setPixelSize( 16 ); + font.setPointSize( 14 ); font.setBold( true ); ui->captionLabel->setFont( font ); - font.setPixelSize( 11 ); + font.setPointSize( 9 ); ui->descLabel->setFont( font ); ui->radioNormal->setFocusPolicy( Qt::NoFocus ); From 33007cb05ef42a9b60ba4e474ea106dcd1f0fc46 Mon Sep 17 00:00:00 2001 From: Michael Zanetti Date: Wed, 18 Jul 2012 22:34:55 +0200 Subject: [PATCH 08/16] replaced most of the remaining pixelsizes with pointsizes --- .../playlist/PlaylistChartItemDelegate.cpp | 35 ++++++++++--------- .../playlist/PlaylistLargeItemDelegate.cpp | 12 ++++--- src/libtomahawk/widgets/HeaderLabel.cpp | 7 ++-- src/libtomahawk/widgets/OverlayButton.cpp | 2 +- .../widgets/infowidgets/ArtistInfoWidget.cpp | 2 +- src/sourcetree/SourceDelegate.cpp | 6 +--- 6 files changed, 32 insertions(+), 32 deletions(-) diff --git a/src/libtomahawk/playlist/PlaylistChartItemDelegate.cpp b/src/libtomahawk/playlist/PlaylistChartItemDelegate.cpp index b36058e94..b0300e2e0 100644 --- a/src/libtomahawk/playlist/PlaylistChartItemDelegate.cpp +++ b/src/libtomahawk/playlist/PlaylistChartItemDelegate.cpp @@ -157,43 +157,44 @@ PlaylistChartItemDelegate::paint( QPainter* painter, const QStyleOptionViewItem& } QFont figureFont = opt.font; - figureFont.setPixelSize( 18 ); + figureFont.setPointSize( 16 ); figureFont.setWeight( 99 ); QFont boldFont = opt.font; - boldFont.setPixelSize( 15 ); + boldFont.setPointSize( 13 ); boldFont.setWeight( 99 ); QFont smallBoldFont = opt.font; - smallBoldFont.setPixelSize( 12 ); + smallBoldFont.setPointSize( 10 ); smallBoldFont.setWeight( 60 ); QFont durationFont = opt.font; - durationFont.setPixelSize( 12 ); + durationFont.setPointSize( 10 ); durationFont.setWeight( 80 ); + QFontMetrics durationFontMetrics( durationFont ); if ( index.row() == 0 ) { - figureFont.setPixelSize( 36 ); - boldFont.setPixelSize( 26 ); - smallBoldFont.setPixelSize( 22 ); + figureFont.setPointSize( 34 ); + boldFont.setPointSize( 24 ); + smallBoldFont.setPointSize( 20 ); } else if ( index.row() == 1 ) { - figureFont.setPixelSize( 30 ); - boldFont.setPixelSize( 22 ); - smallBoldFont.setPixelSize( 18 ); + figureFont.setPointSize( 28 ); + boldFont.setPointSize( 20 ); + smallBoldFont.setPointSize( 16 ); } else if ( index.row() == 2 ) { - figureFont.setPixelSize( 24 ); - boldFont.setPixelSize( 18 ); - smallBoldFont.setPixelSize( 14 ); + figureFont.setPointSize( 20 ); + boldFont.setPointSize( 16 ); + smallBoldFont.setPointSize( 12 ); } else if ( index.row() >= 10 ) { - boldFont.setPixelSize( 12 ); - smallBoldFont.setPixelSize( 11 ); + boldFont.setPointSize( 10 ); + smallBoldFont.setPointSize( 9 ); } QRect figureRect = r.adjusted( 0, 0, -option.rect.width() + 60 - 6 + r.left(), 0 ); @@ -215,8 +216,7 @@ PlaylistChartItemDelegate::paint( QPainter* painter, const QStyleOptionViewItem& painter->drawPixmap( pixmapRect, pixmap ); r.adjust( pixmapRect.width() + figureRect.width() + 18, 1, -28, 0 ); - QRect leftRect = r.adjusted( 0, 0, -48, 0 ); - QRect rightRect = r.adjusted( r.width() - 40, 0, 0, 0 ); + QRect leftRect = r.adjusted( 0, 0, -durationFontMetrics.width( TomahawkUtils::timeToString( duration ) ) - 8, 0 ); painter->setFont( boldFont ); QString text = painter->fontMetrics().elidedText( track, Qt::ElideRight, leftRect.width() ); @@ -229,6 +229,7 @@ PlaylistChartItemDelegate::paint( QPainter* painter, const QStyleOptionViewItem& if ( duration > 0 ) { painter->setFont( durationFont ); + QRect rightRect = r.adjusted( r.width() - durationFontMetrics.width( TomahawkUtils::timeToString( duration ) ), 0, 0, 0 ); text = painter->fontMetrics().elidedText( TomahawkUtils::timeToString( duration ), Qt::ElideRight, rightRect.width() ); painter->drawText( rightRect, text, m_centerRightOption ); } diff --git a/src/libtomahawk/playlist/PlaylistLargeItemDelegate.cpp b/src/libtomahawk/playlist/PlaylistLargeItemDelegate.cpp index 6783a0d3e..fd5620954 100644 --- a/src/libtomahawk/playlist/PlaylistLargeItemDelegate.cpp +++ b/src/libtomahawk/playlist/PlaylistLargeItemDelegate.cpp @@ -205,20 +205,22 @@ PlaylistLargeItemDelegate::paint( QPainter* painter, const QStyleOptionViewItem& painter->drawPixmap( avatarRect, avatar ); QFont boldFont = opt.font; - boldFont.setPixelSize( 15 ); + boldFont.setPointSize( 12 ); boldFont.setWeight( 99 ); + QFontMetrics boldFontMetrics( boldFont ); QFont smallBoldFont = opt.font; - smallBoldFont.setPixelSize( 12 ); + smallBoldFont.setPointSize( 9 ); smallBoldFont.setBold( true ); smallBoldFont.setWeight( 60 ); + QFontMetrics smallBoldFontMetrics( smallBoldFont ); QFont smallFont = opt.font; - smallFont.setPixelSize( 10 ); + smallFont.setPointSize( 8 ); r.adjust( pixmapRect.width() + 12, 1, -28 - avatar.width(), 0 ); QRect leftRect = r.adjusted( 0, 0, -48, 0 ); - QRect rightRect = r.adjusted( r.width() - 40, 0, 0, 0 ); + QRect rightRect = r.adjusted( r.width() - smallBoldFontMetrics.width( TomahawkUtils::timeToString( duration ) ), 0, 0, 0 ); painter->setFont( boldFont ); QString text = painter->fontMetrics().elidedText( track, Qt::ElideRight, leftRect.width() ); @@ -226,7 +228,7 @@ PlaylistLargeItemDelegate::paint( QPainter* painter, const QStyleOptionViewItem& painter->setFont( smallBoldFont ); text = painter->fontMetrics().elidedText( artist, Qt::ElideRight, leftRect.width() ); - painter->drawText( leftRect.adjusted( 0, 19, 0, 0 ), text, m_topOption ); + painter->drawText( leftRect.adjusted( 0, boldFontMetrics.height(), 0, 0 ), text, m_topOption ); painter->setFont( smallFont ); painter->setPen( Qt::gray ); diff --git a/src/libtomahawk/widgets/HeaderLabel.cpp b/src/libtomahawk/widgets/HeaderLabel.cpp index edec62258..4f9ef3ca2 100644 --- a/src/libtomahawk/widgets/HeaderLabel.cpp +++ b/src/libtomahawk/widgets/HeaderLabel.cpp @@ -26,7 +26,7 @@ #include "utils/StyleHelper.h" #include "utils/TomahawkUtilsGui.h" -static const int s_defaultFontSize = 12; +static const int s_defaultFontSize = 10; HeaderLabel::HeaderLabel( QWidget* parent ) @@ -37,10 +37,11 @@ HeaderLabel::HeaderLabel( QWidget* parent ) { QFont f( font() ); f.setBold( true ); - f.setPixelSize( s_defaultFontSize ); + f.setPointSize( s_defaultFontSize ); + QFontMetrics fm( f ); setFont( f ); - setFixedHeight( TomahawkUtils::headerHeight() ); + setFixedHeight( fm.height() * 1.2 ); setMouseTracking( true ); } diff --git a/src/libtomahawk/widgets/OverlayButton.cpp b/src/libtomahawk/widgets/OverlayButton.cpp index fc0102bb9..3362143a2 100644 --- a/src/libtomahawk/widgets/OverlayButton.cpp +++ b/src/libtomahawk/widgets/OverlayButton.cpp @@ -81,7 +81,7 @@ OverlayButton::setText( const QString& text ) m_text = text; QFont f( font() ); - f.setPixelSize( FONT_SIZE ); + f.setPointSize( FONT_SIZE ); f.setBold( true ); QFontMetrics fm( f ); diff --git a/src/libtomahawk/widgets/infowidgets/ArtistInfoWidget.cpp b/src/libtomahawk/widgets/infowidgets/ArtistInfoWidget.cpp index 9227dbe13..62cdde014 100644 --- a/src/libtomahawk/widgets/infowidgets/ArtistInfoWidget.cpp +++ b/src/libtomahawk/widgets/infowidgets/ArtistInfoWidget.cpp @@ -104,7 +104,7 @@ ArtistInfoWidget::ArtistInfoWidget( const Tomahawk::artist_ptr& artist, QWidget* QFont f = font(); f.setBold( true ); - f.setPixelSize( 18 ); + f.setPointSize( 15 ); ui->artistLabel->setFont( f ); QPalette p = ui->biography->palette(); diff --git a/src/sourcetree/SourceDelegate.cpp b/src/sourcetree/SourceDelegate.cpp index fb6a4d232..c8981cf83 100644 --- a/src/sourcetree/SourceDelegate.cpp +++ b/src/sourcetree/SourceDelegate.cpp @@ -166,7 +166,6 @@ SourceDelegate::paintCollection( QPainter* painter, const QStyleOptionViewItem& QFont figFont = bold; figFont.setFamily( "Arial Bold" ); figFont.setWeight( QFont::Black ); - //figFont.setPixelSize( 10 ); figFont.setPointSize( 8 ); SourceTreeItem* item = index.data( SourcesModel::SourceTreeItemRole ).value< SourceTreeItem* >(); @@ -302,7 +301,6 @@ SourceDelegate::paintCategory( QPainter* painter, const QStyleOptionViewItem& op text = tr( "Hide" ); QFont font = painter->font(); - //font.setPixelSize( 11 ); font.setPointSize( 9 ); font.setBold( true ); painter->setFont( font ); @@ -321,7 +319,6 @@ void SourceDelegate::paintGroup( QPainter* painter, const QStyleOptionViewItem& option, const QModelIndex& index ) const { QFont font = painter->font(); -// font.setPixelSize( 12 ); font.setPointSize( 10 ); font.setBold( true ); painter->setFont( font ); @@ -368,7 +365,6 @@ SourceDelegate::paint( QPainter* painter, const QStyleOptionViewItem& option, co painter->save(); QFont font = painter->font(); -// font.setPixelSize( 11 ); font.setPointSize( 9 ); painter->setFont( font ); o.font = font; @@ -468,7 +464,7 @@ SourceDelegate::paint( QPainter* painter, const QStyleOptionViewItem& option, co painter->setPen( pen ); QFont font = painter->font(); -// font.setPixelSize( 12 ); + font.setPointSize( 10 ); painter->setFont( font ); QFont fontBold = painter->font(); From 6c11a62fa439cbe0087f3f22de2c15f412f266b4 Mon Sep 17 00:00:00 2001 From: Michael Zanetti Date: Wed, 18 Jul 2012 23:45:12 +0200 Subject: [PATCH 09/16] fix QueueView hidden height with new font sizes --- src/libtomahawk/playlist/QueueView.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/libtomahawk/playlist/QueueView.cpp b/src/libtomahawk/playlist/QueueView.cpp index df60a7705..534950f9d 100644 --- a/src/libtomahawk/playlist/QueueView.cpp +++ b/src/libtomahawk/playlist/QueueView.cpp @@ -41,7 +41,10 @@ QueueView::QueueView( AnimatedSplitter* parent ) TomahawkUtils::unmarginLayout( layout() ); setContentsMargins( 0, 0, 0, 0 ); - setHiddenSize( QSize( 0, 22 ) ); + QFont f; + f.setPointSize( 10 ); + QFontMetrics fm( f ); + setHiddenSize( QSize( 0, fm.height() * 1.1 ) ); ui->queue->setProxyModel( new QueueProxyModel( ui->queue ) ); ui->queue->setSizePolicy( QSizePolicy::Preferred, QSizePolicy::Ignored ); From 5738b4f75d61d5a840bb71cfab33c051d412d3b3 Mon Sep 17 00:00:00 2001 From: Michael Zanetti Date: Wed, 18 Jul 2012 23:45:34 +0200 Subject: [PATCH 10/16] remove some old setPixelSize comments --- src/libtomahawk/context/ContextWidget.cpp | 1 - src/libtomahawk/infobar/InfoBar.cpp | 1 - 2 files changed, 2 deletions(-) diff --git a/src/libtomahawk/context/ContextWidget.cpp b/src/libtomahawk/context/ContextWidget.cpp index a60223d88..1947fc70a 100644 --- a/src/libtomahawk/context/ContextWidget.cpp +++ b/src/libtomahawk/context/ContextWidget.cpp @@ -85,7 +85,6 @@ ContextWidget::ContextWidget( QWidget* parent ) ui->toggleButton->setPalette( whitePal ); QFont boldFont = ui->toggleButton->font(); - //boldFont.setPixelSize( 12 ); boldFont.setPointSize( 10 ); boldFont.setBold( true ); ui->toggleButton->setFont( boldFont ); diff --git a/src/libtomahawk/infobar/InfoBar.cpp b/src/libtomahawk/infobar/InfoBar.cpp index f2cc48280..d2498ba6a 100644 --- a/src/libtomahawk/infobar/InfoBar.cpp +++ b/src/libtomahawk/infobar/InfoBar.cpp @@ -52,7 +52,6 @@ InfoBar::InfoBar( QWidget* parent ) requiredHeight += 8; // Top + bottom margins QFont boldFont = ui->captionLabel->font(); - //boldFont.setPixelSize( 18 ); boldFont.setPointSize( 16 ); boldFont.setBold( true ); ui->captionLabel->setFont( boldFont ); From b903dca9cfcafe99c063dcc5cdee76d7e8023add Mon Sep 17 00:00:00 2001 From: Michael Zanetti Date: Thu, 19 Jul 2012 00:28:58 +0200 Subject: [PATCH 11/16] fix info icon with different DPIs --- src/libtomahawk/playlist/PlaylistItemDelegate.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/libtomahawk/playlist/PlaylistItemDelegate.cpp b/src/libtomahawk/playlist/PlaylistItemDelegate.cpp index 2ddf88f98..dbae0fd4b 100644 --- a/src/libtomahawk/playlist/PlaylistItemDelegate.cpp +++ b/src/libtomahawk/playlist/PlaylistItemDelegate.cpp @@ -72,6 +72,9 @@ PlaylistItemDelegate::sizeHint( const QStyleOptionViewItem& option, const QModel { int rowHeight = option.fontMetrics.height() + 8; size.setHeight( rowHeight * 2 ); + } else if ( style == PlayableProxyModel::Detailed ) { + int rowHeight = option.fontMetrics.height() * 1.4; + size.setHeight( rowHeight ); } } @@ -230,7 +233,7 @@ PlaylistItemDelegate::paintDetailed( QPainter* painter, const QStyleOptionViewIt if ( m_view->hoveredIndex().row() == index.row() && m_view->hoveredIndex().column() == index.column() && !index.data().toString().isEmpty() && ( index.column() == PlayableModel::Artist || index.column() == PlayableModel::Album || index.column() == PlayableModel::Track ) ) { - opt.rect.setWidth( opt.rect.width() - 16 ); + opt.rect.setWidth( opt.rect.width() - opt.rect.height() - 2 ); QRect arrowRect( opt.rect.x() + opt.rect.width(), opt.rect.y() + 1, opt.rect.height() - 2, opt.rect.height() - 2 ); QPixmap infoIcon = TomahawkUtils::defaultPixmap( TomahawkUtils::InfoIcon, TomahawkUtils::Original, arrowRect.size() ); From 990462ddaeb4d7fbb5e655dcd1d76f802f2263e9 Mon Sep 17 00:00:00 2001 From: Michael Zanetti Date: Thu, 19 Jul 2012 00:39:41 +0200 Subject: [PATCH 12/16] fix the drag'n drop menu for scaled dpis --- src/sourcetree/SourceDelegate.cpp | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/sourcetree/SourceDelegate.cpp b/src/sourcetree/SourceDelegate.cpp index c8981cf83..564c172ce 100644 --- a/src/sourcetree/SourceDelegate.cpp +++ b/src/sourcetree/SourceDelegate.cpp @@ -99,7 +99,6 @@ SourceDelegate::sizeHint( const QStyleOptionViewItem& option, const QModelIndex& } else if ( type == SourcesModel::Group ) { -// return QSize( option.rect.width(), 26 ); int groupSpacer = index.row() > 0 ? option.fontMetrics.height() * 0.6 : option.fontMetrics.height() * 0.2; return QSize( option.rect.width(), option.fontMetrics.height() + groupSpacer ); } @@ -108,8 +107,8 @@ SourceDelegate::sizeHint( const QStyleOptionViewItem& option, const QModelIndex& if ( !m_expandedMap.value( index )->initialized() ) { int dropTypes = dropTypeCount( item ); - QSize originalSize = QStyledItemDelegate::sizeHint( option, index ); - QSize targetSize = originalSize + QSize( 0, dropTypes == 0 ? 0 : 56 ); + QSize originalSize = QSize( option.rect.width(), option.fontMetrics.height() * 1.2 ); + QSize targetSize = originalSize + QSize( 0, dropTypes == 0 ? 0 : 38 + option.fontMetrics.height() * 1.2 ); m_expandedMap.value( index )->initialize( originalSize, targetSize, 300 ); m_expandedMap.value( index )->expand(); } From 05b4f38cb51326d37a6b2ae145885d45900c5236 Mon Sep 17 00:00:00 2001 From: Michael Zanetti Date: Thu, 19 Jul 2012 00:50:59 +0200 Subject: [PATCH 13/16] fix minimum column widths for dynamic DPIs --- src/libtomahawk/widgets/WelcomeWidget.cpp | 6 ++++++ src/libtomahawk/widgets/WelcomeWidget.ui | 9 +-------- src/sourcetree/SourceDelegate.cpp | 2 +- src/sourcetree/SourceTreeView.cpp | 8 +++++++- 4 files changed, 15 insertions(+), 10 deletions(-) diff --git a/src/libtomahawk/widgets/WelcomeWidget.cpp b/src/libtomahawk/widgets/WelcomeWidget.cpp index f1cbaad53..74e0b3779 100644 --- a/src/libtomahawk/widgets/WelcomeWidget.cpp +++ b/src/libtomahawk/widgets/WelcomeWidget.cpp @@ -74,6 +74,12 @@ WelcomeWidget::WelcomeWidget( QWidget* parent ) ui->tracksView->setPlaylistModel( m_tracksModel ); m_tracksModel->setSource( source_ptr() ); + QFont f; + f.setPointSize( 11 ); + f.setBold( true ); + QFontMetrics fm( f ); + ui->tracksView->setMinimumWidth( fm.width( tr("Recently played tracks") ) ); + m_recentAlbumsModel = new AlbumModel( ui->additionsView ); ui->additionsView->setPlayableModel( m_recentAlbumsModel ); ui->additionsView->proxyModel()->sort( -1 ); diff --git a/src/libtomahawk/widgets/WelcomeWidget.ui b/src/libtomahawk/widgets/WelcomeWidget.ui index e91e39612..f420a1a96 100644 --- a/src/libtomahawk/widgets/WelcomeWidget.ui +++ b/src/libtomahawk/widgets/WelcomeWidget.ui @@ -72,14 +72,7 @@ - - - - 320 - 0 - - - + diff --git a/src/sourcetree/SourceDelegate.cpp b/src/sourcetree/SourceDelegate.cpp index 564c172ce..c8f951e70 100644 --- a/src/sourcetree/SourceDelegate.cpp +++ b/src/sourcetree/SourceDelegate.cpp @@ -464,7 +464,7 @@ SourceDelegate::paint( QPainter* painter, const QStyleOptionViewItem& option, co QFont font = painter->font(); - font.setPointSize( 10 ); + font.setPointSize( 8 ); painter->setFont( font ); QFont fontBold = painter->font(); fontBold.setBold( true ); diff --git a/src/sourcetree/SourceTreeView.cpp b/src/sourcetree/SourceTreeView.cpp index 55a97a338..354a9885c 100644 --- a/src/sourcetree/SourceTreeView.cpp +++ b/src/sourcetree/SourceTreeView.cpp @@ -65,7 +65,13 @@ SourceTreeView::SourceTreeView( QWidget* parent ) setFrameShape( QFrame::NoFrame ); setAttribute( Qt::WA_MacShowFocusRect, 0 ); setContentsMargins( 0, 0, 0, 0 ); - setMinimumWidth( 220 ); + + QFont dummyFont; + dummyFont.setPointSize( 10 ); + QFontMetrics fm( dummyFont ); + // This is sort of the longest string in there. With translations + // we will never get it right so setting it to something reasonable for the average case + setMinimumWidth( fm.width( "Track Album Artist Local Top10") ); setHeaderHidden( true ); setRootIsDecorated( true ); From cbc9d48a730a964a9647aba67bedd30b9d8c40f0 Mon Sep 17 00:00:00 2001 From: Michael Zanetti Date: Thu, 19 Jul 2012 01:02:46 +0200 Subject: [PATCH 14/16] make the Recently played tracks list wider like it used to be --- src/libtomahawk/widgets/WelcomeWidget.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/libtomahawk/widgets/WelcomeWidget.cpp b/src/libtomahawk/widgets/WelcomeWidget.cpp index 74e0b3779..e51553585 100644 --- a/src/libtomahawk/widgets/WelcomeWidget.cpp +++ b/src/libtomahawk/widgets/WelcomeWidget.cpp @@ -75,10 +75,10 @@ WelcomeWidget::WelcomeWidget( QWidget* parent ) m_tracksModel->setSource( source_ptr() ); QFont f; - f.setPointSize( 11 ); + f.setPointSize( 10 ); f.setBold( true ); QFontMetrics fm( f ); - ui->tracksView->setMinimumWidth( fm.width( tr("Recently played tracks") ) ); + ui->tracksView->setMinimumWidth( fm.width( tr("Recently played tracks") ) * 2 ); m_recentAlbumsModel = new AlbumModel( ui->additionsView ); ui->additionsView->setPlayableModel( m_recentAlbumsModel ); From 76ccd71c51feeb49232021b260c76278bec468ff Mon Sep 17 00:00:00 2001 From: Michael Zanetti Date: Fri, 3 Aug 2012 19:10:06 +0200 Subject: [PATCH 15/16] decrease font sizes by 1 point --- src/libtomahawk/playlist/FlexibleHeader.cpp | 4 ++-- .../playlist/PlaylistChartItemDelegate.cpp | 18 +++++++++--------- .../playlist/PlaylistLargeItemDelegate.cpp | 6 +++--- src/libtomahawk/playlist/QueueView.cpp | 4 ++-- src/libtomahawk/widgets/HeaderLabel.cpp | 2 +- src/libtomahawk/widgets/WelcomeWidget.cpp | 12 ++++++------ .../widgets/infowidgets/ArtistInfoWidget.cpp | 2 +- src/sourcetree/SourceDelegate.cpp | 10 +++++----- src/sourcetree/SourceTreeView.cpp | 2 +- 9 files changed, 30 insertions(+), 30 deletions(-) diff --git a/src/libtomahawk/playlist/FlexibleHeader.cpp b/src/libtomahawk/playlist/FlexibleHeader.cpp index 7b9ab749a..c24c75d2c 100644 --- a/src/libtomahawk/playlist/FlexibleHeader.cpp +++ b/src/libtomahawk/playlist/FlexibleHeader.cpp @@ -51,11 +51,11 @@ FlexibleHeader::FlexibleHeader( FlexibleView* parent ) ui->descLabel->setPalette( pal ); QFont font = ui->captionLabel->font(); - font.setPointSize( 14 ); + font.setPointSize( 13 ); font.setBold( true ); ui->captionLabel->setFont( font ); - font.setPointSize( 9 ); + font.setPointSize( 8 ); ui->descLabel->setFont( font ); ui->radioNormal->setFocusPolicy( Qt::NoFocus ); diff --git a/src/libtomahawk/playlist/PlaylistChartItemDelegate.cpp b/src/libtomahawk/playlist/PlaylistChartItemDelegate.cpp index b0300e2e0..d97ff6fb4 100644 --- a/src/libtomahawk/playlist/PlaylistChartItemDelegate.cpp +++ b/src/libtomahawk/playlist/PlaylistChartItemDelegate.cpp @@ -157,19 +157,19 @@ PlaylistChartItemDelegate::paint( QPainter* painter, const QStyleOptionViewItem& } QFont figureFont = opt.font; - figureFont.setPointSize( 16 ); + figureFont.setPointSize( 17 ); figureFont.setWeight( 99 ); QFont boldFont = opt.font; - boldFont.setPointSize( 13 ); + boldFont.setPointSize( 12 ); boldFont.setWeight( 99 ); QFont smallBoldFont = opt.font; - smallBoldFont.setPointSize( 10 ); + smallBoldFont.setPointSize( 9 ); smallBoldFont.setWeight( 60 ); QFont durationFont = opt.font; - durationFont.setPointSize( 10 ); + durationFont.setPointSize( 9 ); durationFont.setWeight( 80 ); QFontMetrics durationFontMetrics( durationFont ); @@ -183,18 +183,18 @@ PlaylistChartItemDelegate::paint( QPainter* painter, const QStyleOptionViewItem& { figureFont.setPointSize( 28 ); boldFont.setPointSize( 20 ); - smallBoldFont.setPointSize( 16 ); + smallBoldFont.setPointSize( 15 ); } else if ( index.row() == 2 ) { figureFont.setPointSize( 20 ); - boldFont.setPointSize( 16 ); - smallBoldFont.setPointSize( 12 ); + boldFont.setPointSize( 15 ); + smallBoldFont.setPointSize( 11 ); } else if ( index.row() >= 10 ) { - boldFont.setPointSize( 10 ); - smallBoldFont.setPointSize( 9 ); + boldFont.setPointSize( 9 ); + smallBoldFont.setPointSize( 8 ); } QRect figureRect = r.adjusted( 0, 0, -option.rect.width() + 60 - 6 + r.left(), 0 ); diff --git a/src/libtomahawk/playlist/PlaylistLargeItemDelegate.cpp b/src/libtomahawk/playlist/PlaylistLargeItemDelegate.cpp index fd5620954..921091b2a 100644 --- a/src/libtomahawk/playlist/PlaylistLargeItemDelegate.cpp +++ b/src/libtomahawk/playlist/PlaylistLargeItemDelegate.cpp @@ -205,18 +205,18 @@ PlaylistLargeItemDelegate::paint( QPainter* painter, const QStyleOptionViewItem& painter->drawPixmap( avatarRect, avatar ); QFont boldFont = opt.font; - boldFont.setPointSize( 12 ); + boldFont.setPointSize( 11 ); boldFont.setWeight( 99 ); QFontMetrics boldFontMetrics( boldFont ); QFont smallBoldFont = opt.font; - smallBoldFont.setPointSize( 9 ); + smallBoldFont.setPointSize( 8 ); smallBoldFont.setBold( true ); smallBoldFont.setWeight( 60 ); QFontMetrics smallBoldFontMetrics( smallBoldFont ); QFont smallFont = opt.font; - smallFont.setPointSize( 8 ); + smallFont.setPointSize( 7 ); r.adjust( pixmapRect.width() + 12, 1, -28 - avatar.width(), 0 ); QRect leftRect = r.adjusted( 0, 0, -48, 0 ); diff --git a/src/libtomahawk/playlist/QueueView.cpp b/src/libtomahawk/playlist/QueueView.cpp index 534950f9d..88038e745 100644 --- a/src/libtomahawk/playlist/QueueView.cpp +++ b/src/libtomahawk/playlist/QueueView.cpp @@ -42,9 +42,9 @@ QueueView::QueueView( AnimatedSplitter* parent ) setContentsMargins( 0, 0, 0, 0 ); QFont f; - f.setPointSize( 10 ); + f.setPointSize( 9 ); QFontMetrics fm( f ); - setHiddenSize( QSize( 0, fm.height() * 1.1 ) ); + setHiddenSize( QSize( 0, fm.height() * 1.2 ) ); ui->queue->setProxyModel( new QueueProxyModel( ui->queue ) ); ui->queue->setSizePolicy( QSizePolicy::Preferred, QSizePolicy::Ignored ); diff --git a/src/libtomahawk/widgets/HeaderLabel.cpp b/src/libtomahawk/widgets/HeaderLabel.cpp index 4f9ef3ca2..355ece9d8 100644 --- a/src/libtomahawk/widgets/HeaderLabel.cpp +++ b/src/libtomahawk/widgets/HeaderLabel.cpp @@ -26,7 +26,7 @@ #include "utils/StyleHelper.h" #include "utils/TomahawkUtilsGui.h" -static const int s_defaultFontSize = 10; +static const int s_defaultFontSize = 9; HeaderLabel::HeaderLabel( QWidget* parent ) diff --git a/src/libtomahawk/widgets/WelcomeWidget.cpp b/src/libtomahawk/widgets/WelcomeWidget.cpp index 896cc3523..4b4c5679c 100644 --- a/src/libtomahawk/widgets/WelcomeWidget.cpp +++ b/src/libtomahawk/widgets/WelcomeWidget.cpp @@ -123,7 +123,7 @@ WelcomeWidget::WelcomeWidget( QWidget* parent ) m_tracksModel->setSource( source_ptr() ); QFont f; - f.setPointSize( 10 ); + f.setPointSize( 9 ); f.setBold( true ); QFontMetrics fm( f ); ui->tracksView->setMinimumWidth( fm.width( tr("Recently played tracks") ) * 2 ); @@ -257,9 +257,9 @@ PlaylistDelegate::sizeHint( const QStyleOptionViewItem& option, const QModelInde int height = 2 * 6; // margins QFont font = option.font; QFontMetrics fm1( font ); - font.setPointSize( 9 ); + font.setPointSize( 8 ); height += fm1.height() * 3; - font.setPointSize( 12 ); + font.setPointSize( 9 ); QFontMetrics fm2( font ); height += fm2.height(); @@ -286,15 +286,15 @@ PlaylistDelegate::paint( QPainter* painter, const QStyleOptionViewItem& option, QTextOption to; to.setAlignment( Qt::AlignCenter ); QFont font = opt.font; - font.setPointSize( 9 ); + font.setPointSize( 8 ); QFont boldFont = font; boldFont.setBold( true ); - boldFont.setPointSize( 10 ); + boldFont.setPointSize( 9 ); QFontMetrics boldFontMetrics( boldFont ); QFont figFont = boldFont; - figFont.setPointSize( 9 ); + figFont.setPointSize( 8 ); QPixmap icon; RecentlyPlayedPlaylistsModel::PlaylistTypes type = (RecentlyPlayedPlaylistsModel::PlaylistTypes)index.data( RecentlyPlayedPlaylistsModel::PlaylistTypeRole ).toInt(); diff --git a/src/libtomahawk/widgets/infowidgets/ArtistInfoWidget.cpp b/src/libtomahawk/widgets/infowidgets/ArtistInfoWidget.cpp index 0265b2c5a..b3096eff6 100644 --- a/src/libtomahawk/widgets/infowidgets/ArtistInfoWidget.cpp +++ b/src/libtomahawk/widgets/infowidgets/ArtistInfoWidget.cpp @@ -104,7 +104,7 @@ ArtistInfoWidget::ArtistInfoWidget( const Tomahawk::artist_ptr& artist, QWidget* QFont f = font(); f.setBold( true ); - f.setPointSize( 15 ); + f.setPointSize( 14 ); ui->artistLabel->setFont( f ); QPalette p = ui->biography->palette(); diff --git a/src/sourcetree/SourceDelegate.cpp b/src/sourcetree/SourceDelegate.cpp index e4c0cbb54..90d91aa15 100644 --- a/src/sourcetree/SourceDelegate.cpp +++ b/src/sourcetree/SourceDelegate.cpp @@ -165,7 +165,7 @@ SourceDelegate::paintCollection( QPainter* painter, const QStyleOptionViewItem& QFont figFont = bold; figFont.setFamily( "Arial Bold" ); figFont.setWeight( QFont::Black ); - figFont.setPointSize( 8 ); + figFont.setPointSize( 7 ); SourceTreeItem* item = index.data( SourcesModel::SourceTreeItemRole ).value< SourceTreeItem* >(); SourceItem* colItem = qobject_cast< SourceItem* >( item ); @@ -300,7 +300,7 @@ SourceDelegate::paintCategory( QPainter* painter, const QStyleOptionViewItem& op text = tr( "Hide" ); QFont font = painter->font(); - font.setPointSize( 9 ); + font.setPointSize( 8 ); font.setBold( true ); painter->setFont( font ); QTextOption to( Qt::AlignVCenter | Qt::AlignRight ); @@ -318,7 +318,7 @@ void SourceDelegate::paintGroup( QPainter* painter, const QStyleOptionViewItem& option, const QModelIndex& index ) const { QFont font = painter->font(); - font.setPointSize( 10 ); + font.setPointSize( 9 ); font.setBold( true ); painter->setFont( font ); @@ -364,7 +364,7 @@ SourceDelegate::paint( QPainter* painter, const QStyleOptionViewItem& option, co painter->save(); QFont font = painter->font(); - font.setPointSize( 9 ); + font.setPointSize( 8 ); painter->setFont( font ); o.font = font; o3.font = font; @@ -464,7 +464,7 @@ SourceDelegate::paint( QPainter* painter, const QStyleOptionViewItem& option, co QFont font = painter->font(); - font.setPointSize( 8 ); + font.setPointSize( 7 ); painter->setFont( font ); QFont fontBold = painter->font(); fontBold.setBold( true ); diff --git a/src/sourcetree/SourceTreeView.cpp b/src/sourcetree/SourceTreeView.cpp index 58b75f69b..deda27b5e 100644 --- a/src/sourcetree/SourceTreeView.cpp +++ b/src/sourcetree/SourceTreeView.cpp @@ -69,7 +69,7 @@ SourceTreeView::SourceTreeView( QWidget* parent ) setContentsMargins( 0, 0, 0, 0 ); QFont dummyFont; - dummyFont.setPointSize( 10 ); + dummyFont.setPointSize( 9 ); QFontMetrics fm( dummyFont ); // This is sort of the longest string in there. With translations // we will never get it right so setting it to something reasonable for the average case From c6101fb35bcee12ab6130607e00949ab1d0ec7e5 Mon Sep 17 00:00:00 2001 From: Michael Zanetti Date: Fri, 3 Aug 2012 22:08:15 +0200 Subject: [PATCH 16/16] increase space around the toggle button's text --- src/libtomahawk/context/ContextWidget.cpp | 4 ++-- src/libtomahawk/playlist/QueueView.cpp | 2 +- src/libtomahawk/widgets/HeaderLabel.cpp | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/libtomahawk/context/ContextWidget.cpp b/src/libtomahawk/context/ContextWidget.cpp index 1743af798..d1d6849e2 100644 --- a/src/libtomahawk/context/ContextWidget.cpp +++ b/src/libtomahawk/context/ContextWidget.cpp @@ -91,9 +91,9 @@ ContextWidget::ContextWidget( QWidget* parent ) ui->toggleButton->setFont( boldFont ); QFontMetrics fm( boldFont ); - m_minHeight = fm.height() * 1.1; + m_minHeight = fm.height() * 1.2; - ui->toggleButton->setMinimumHeight( fm.height() ); + ui->toggleButton->setMinimumHeight( fm.height() * 1.2 ); setAutoFillBackground( true ); setFixedHeight( m_minHeight ); diff --git a/src/libtomahawk/playlist/QueueView.cpp b/src/libtomahawk/playlist/QueueView.cpp index 88038e745..80fe8aaa5 100644 --- a/src/libtomahawk/playlist/QueueView.cpp +++ b/src/libtomahawk/playlist/QueueView.cpp @@ -42,7 +42,7 @@ QueueView::QueueView( AnimatedSplitter* parent ) setContentsMargins( 0, 0, 0, 0 ); QFont f; - f.setPointSize( 9 ); + f.setPointSize( 10 ); QFontMetrics fm( f ); setHiddenSize( QSize( 0, fm.height() * 1.2 ) ); diff --git a/src/libtomahawk/widgets/HeaderLabel.cpp b/src/libtomahawk/widgets/HeaderLabel.cpp index 355ece9d8..b620b0864 100644 --- a/src/libtomahawk/widgets/HeaderLabel.cpp +++ b/src/libtomahawk/widgets/HeaderLabel.cpp @@ -41,7 +41,7 @@ HeaderLabel::HeaderLabel( QWidget* parent ) QFontMetrics fm( f ); setFont( f ); - setFixedHeight( fm.height() * 1.2 ); + setFixedHeight( fm.height() * 1.4 ); setMouseTracking( true ); }