more updates
This commit is contained in:
50
tiercard.cpp
50
tiercard.cpp
@@ -2,40 +2,10 @@
|
||||
#include "fullsizelayout.hpp"
|
||||
#include "qmimedata.h"
|
||||
#include "utils.hpp"
|
||||
#include "settings.hpp"
|
||||
|
||||
#include <QVBoxLayout>
|
||||
|
||||
// TierCard::TierCard(QWidget *parent)
|
||||
// : QWidget{parent}
|
||||
// {
|
||||
// auto bg_layout= new QVBoxLayout(this);
|
||||
// bg_layout->setSpacing(0);
|
||||
// bg_layout->setContentsMargins(0, 0, 0, 0);
|
||||
// background = new QWidget();
|
||||
// bg_layout->addWidget(background);
|
||||
// auto img_layout = new QVBoxLayout(background);
|
||||
// img_layout->setSpacing(0);
|
||||
// img_layout->setContentsMargins(0, 0, 0, 0);
|
||||
// image = new AspectRatioPixmapLabel();
|
||||
// img_layout->addWidget(image, 0, Qt::AlignCenter);
|
||||
// image->setAttribute(Qt::WA_TranslucentBackground);
|
||||
// image->setAlignment(Qt::AlignCenter);
|
||||
// auto txt_layout = new QVBoxLayout(image);
|
||||
// txt_layout->setSpacing(0);
|
||||
// txt_layout->setContentsMargins(0, 0, 0, 0);
|
||||
// text_label = new QLabel();
|
||||
// id_label = new QLabel("4");
|
||||
// text_label->setWordWrap(true);
|
||||
// // text_label->setTextFormat(Qt::RichText);
|
||||
// text_label->setAlignment(Qt::AlignHCenter | Qt::AlignTop);
|
||||
// id_label->setAlignment(Qt::AlignLeft | Qt::AlignBottom);
|
||||
// text_label->setAttribute(Qt::WA_TranslucentBackground);
|
||||
// id_label->setAttribute(Qt::WA_TranslucentBackground);
|
||||
// txt_layout->addWidget(text_label, Qt::AlignTop | Qt::AlignHCenter);
|
||||
// txt_layout->addWidget(id_label, Qt::AlignBottom, Qt::AlignLeft);
|
||||
// text_label->setProperty("cssClass", "tierCardText");
|
||||
// id_label->setProperty("cssClass", "tierCardId");
|
||||
// }
|
||||
#include <QDrag>
|
||||
|
||||
TierCard::IdType TierCard::getAvailableId()
|
||||
{
|
||||
@@ -72,7 +42,8 @@ TierCard* TierCard::clone(TierCard *other, QWidget* parent)
|
||||
card = new TierCard(id, parent);
|
||||
card->setText(other->getText());
|
||||
auto img = other->getImage();
|
||||
card->setImage(img);
|
||||
if (!img.isNull())
|
||||
card->setImage(img);
|
||||
card->setBgColor(other->getBgColor());
|
||||
idMap[id] = card;
|
||||
return card;
|
||||
@@ -81,6 +52,9 @@ TierCard* TierCard::clone(TierCard *other, QWidget* parent)
|
||||
TierCard::TierCard(IdType id, QWidget* parent)
|
||||
: QWidget{parent}
|
||||
{
|
||||
auto settings = Settings::get();
|
||||
connect(settings, SIGNAL(cardSizeChange(QSize)),
|
||||
this, SLOT(cardResize(QSize)));
|
||||
background = new QWidget();
|
||||
image = new AspectRatioPixmapLabel();
|
||||
image->setAttribute(Qt::WA_TranslucentBackground);
|
||||
@@ -102,6 +76,7 @@ TierCard::TierCard(IdType id, QWidget* parent)
|
||||
layout->addWidget(textLabel);
|
||||
layout->addWidget(idLabel);
|
||||
this->setLayout(layout);
|
||||
cardResize(settings->cardSize());
|
||||
}
|
||||
|
||||
TierCard::~TierCard()
|
||||
@@ -158,9 +133,11 @@ void TierCard::mousePressEvent(QMouseEvent* event)
|
||||
render(&pix);
|
||||
QDrag drag(this);
|
||||
drag.setPixmap(pix);
|
||||
drag.setHotSpot(QPoint(pix.size().width() / 2,
|
||||
pix.size().height() / 2));
|
||||
QByteArray itemData;
|
||||
QDataStream dataStream(&itemData, QIODevice::WriteOnly);
|
||||
auto _id = getId();
|
||||
TierCard::IdType _id = getId();
|
||||
dataStream.writeRawData(reinterpret_cast<char*>(&_id), sizeof(_id));
|
||||
QMimeData *mimeData = new QMimeData;
|
||||
mimeData->setData(MimeType, itemData);
|
||||
@@ -183,3 +160,8 @@ TierCard* TierCard::getFromId(IdType id)
|
||||
return nullptr;
|
||||
return &(*iter->second);
|
||||
}
|
||||
|
||||
void TierCard::cardResize(QSize newSize)
|
||||
{
|
||||
setFixedSize(newSize);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user