Qt: use primary screen size divided by 8 for grid item size

This commit is contained in:
Brad Parker 2018-05-03 16:31:46 -04:00
parent 5fa0d75bd7
commit 758d484874
3 changed files with 14 additions and 1 deletions

View File

@ -2823,6 +2823,8 @@ GridItem* MainWindow::doDeferredImageLoad(GridItem *item, QString path)
void MainWindow::addPlaylistItemsToGrid(QString pathString)
{
QList<QHash<QString, QString> > items = getPlaylistItems(pathString);
QScreen *screen = qApp->primaryScreen();
QSize screenSize = screen->size();
settings_t *settings = config_get_ptr();
int i = 0;
@ -2833,12 +2835,14 @@ void MainWindow::addPlaylistItemsToGrid(QString pathString)
ThumbnailLabel *label = NULL;
QString thumbnailFileNameNoExt;
QLabel *newLabel = NULL;
QSize thumbnailWidgetSizeHint(screenSize.width() / 8, screenSize.height() / 8);
thumbnailFileNameNoExt = hash["label_noext"];
thumbnailFileNameNoExt.replace(m_fileSanitizerRegex, "_");
item->hash = hash;
item->widget = new ThumbnailWidget();
item->widget->setSizeHint(thumbnailWidgetSizeHint);
item->widget->setFixedSize(item->widget->sizeHint());
item->widget->setLayout(new QVBoxLayout());
item->widget->setStyleSheet("background-color: #555555");

View File

@ -57,6 +57,7 @@ typedef struct ui_companion_qt
ThumbnailWidget::ThumbnailWidget(QWidget *parent) :
QWidget(parent)
,m_sizeHint(QSize(256, 256))
{
}
@ -80,7 +81,12 @@ void ThumbnailWidget::resizeEvent(QResizeEvent *event)
QSize ThumbnailWidget::sizeHint() const
{
return QSize(256, 256);
return m_sizeHint;
}
void ThumbnailWidget::setSizeHint(QSize size)
{
m_sizeHint = size;
}
ThumbnailLabel::ThumbnailLabel(QWidget *parent) :

View File

@ -83,6 +83,9 @@ class ThumbnailWidget : public QWidget
public:
ThumbnailWidget(QWidget *parent = 0);
QSize sizeHint() const;
void setSizeHint(QSize size);
private:
QSize m_sizeHint;
protected:
void paintEvent(QPaintEvent *event);
void resizeEvent(QResizeEvent *event);