Replace CardInfo* and Carset* with smart pointers (#3053)

* Replace CardInfo* and Carset* with smart pointers

* fixes to help memory & c++11 stuff
This commit is contained in:
ctrlaltca 2018-02-02 18:52:47 +01:00 committed by Zach H
parent 3e418ba3c6
commit 517420cccb
37 changed files with 409 additions and 342 deletions

View file

@ -1,5 +1,4 @@
#include "cardinfowidget.h"
#include "carddatabase.h"
#include "cardinfopicture.h"
#include "cardinfotext.h"
#include "carditem.h"
@ -38,13 +37,13 @@ CardInfoWidget::CardInfoWidget(const QString &cardName, QWidget *parent, Qt::Win
resize(width(), sizeHint().height());
}
void CardInfoWidget::setCard(CardInfo *card)
void CardInfoWidget::setCard(CardInfoPtr card)
{
if (info)
disconnect(info, nullptr, this, nullptr);
disconnect(info.data(), nullptr, this, nullptr);
info = card;
if (info)
connect(info, SIGNAL(destroyed()), this, SLOT(clear()));
connect(info.data(), SIGNAL(destroyed()), this, SLOT(clear()));
text->setCard(info);
pic->setCard(info);
@ -62,5 +61,5 @@ void CardInfoWidget::setCard(AbstractCardItem *card)
void CardInfoWidget::clear()
{
setCard((CardInfo *)nullptr);
setCard((CardInfoPtr) nullptr);
}