Merge branch 'develop' of https://github.com/PrismLauncher/PrismLauncher into catpacks
Signed-off-by: Trial97 <alexandru.tripon97@gmail.com>
This commit is contained in:
commit
6d758795af
File diff suppressed because it is too large
Load Diff
@ -73,6 +73,7 @@ InstanceView::InstanceView(QWidget *parent)
|
|||||||
setVerticalScrollBarPolicy(Qt::ScrollBarAsNeeded);
|
setVerticalScrollBarPolicy(Qt::ScrollBarAsNeeded);
|
||||||
setAcceptDrops(true);
|
setAcceptDrops(true);
|
||||||
setAutoScroll(true);
|
setAutoScroll(true);
|
||||||
|
setPaintCat(APPLICATION->settings()->get("TheCat").toBool());
|
||||||
}
|
}
|
||||||
|
|
||||||
InstanceView::~InstanceView()
|
InstanceView::~InstanceView()
|
||||||
@ -498,12 +499,34 @@ void InstanceView::mouseDoubleClickEvent(QMouseEvent *event)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void InstanceView::paintEvent(QPaintEvent *event)
|
void InstanceView::setPaintCat(bool visible)
|
||||||
|
{
|
||||||
|
m_catVisible = visible;
|
||||||
|
if (visible)
|
||||||
|
m_catPixmap.load(APPLICATION->getCatPack());
|
||||||
|
else
|
||||||
|
m_catPixmap = QPixmap();
|
||||||
|
}
|
||||||
|
|
||||||
|
void InstanceView::paintEvent(QPaintEvent* event)
|
||||||
{
|
{
|
||||||
executeDelayedItemsLayout();
|
executeDelayedItemsLayout();
|
||||||
|
|
||||||
QPainter painter(this->viewport());
|
QPainter painter(this->viewport());
|
||||||
|
|
||||||
|
if (m_catVisible) {
|
||||||
|
int widWidth = this->viewport()->width();
|
||||||
|
int widHeight = this->viewport()->height();
|
||||||
|
if (m_catPixmap.width() < widWidth)
|
||||||
|
widWidth = m_catPixmap.width();
|
||||||
|
if (m_catPixmap.height() < widHeight)
|
||||||
|
widHeight = m_catPixmap.height();
|
||||||
|
auto pixmap = m_catPixmap.scaled(widWidth, widHeight, Qt::KeepAspectRatio);
|
||||||
|
QRect rectOfPixmap = pixmap.rect();
|
||||||
|
rectOfPixmap.moveBottomRight(this->viewport()->rect().bottomRight());
|
||||||
|
painter.drawPixmap(rectOfPixmap.topLeft(), pixmap);
|
||||||
|
}
|
||||||
|
|
||||||
#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0)
|
#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0)
|
||||||
QStyleOptionViewItem option;
|
QStyleOptionViewItem option;
|
||||||
initViewItemOption(&option);
|
initViewItemOption(&option);
|
||||||
|
@ -85,10 +85,8 @@ public:
|
|||||||
|
|
||||||
virtual QRegion visualRegionForSelection(const QItemSelection &selection) const override;
|
virtual QRegion visualRegionForSelection(const QItemSelection &selection) const override;
|
||||||
|
|
||||||
int spacing() const
|
int spacing() const { return m_spacing; };
|
||||||
{
|
void setPaintCat(bool visible);
|
||||||
return m_spacing;
|
|
||||||
};
|
|
||||||
|
|
||||||
public slots:
|
public slots:
|
||||||
virtual void updateGeometries() override;
|
virtual void updateGeometries() override;
|
||||||
@ -139,6 +137,8 @@ private:
|
|||||||
int m_currentItemsPerRow = -1;
|
int m_currentItemsPerRow = -1;
|
||||||
int m_currentCursorColumn= -1;
|
int m_currentCursorColumn= -1;
|
||||||
mutable QCache<int, QRect> geometryCache;
|
mutable QCache<int, QRect> geometryCache;
|
||||||
|
bool m_catVisible = false;
|
||||||
|
QPixmap m_catPixmap;
|
||||||
|
|
||||||
// point where the currently active mouse action started in geometry coordinates
|
// point where the currently active mouse action started in geometry coordinates
|
||||||
QPoint m_pressedPosition;
|
QPoint m_pressedPosition;
|
||||||
|
Loading…
Reference in New Issue
Block a user