summaryrefslogtreecommitdiffstats
path: root/sigmodr/models/CoinListModel.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'sigmodr/models/CoinListModel.cpp')
-rw-r--r--sigmodr/models/CoinListModel.cpp10
1 files changed, 6 insertions, 4 deletions
diff --git a/sigmodr/models/CoinListModel.cpp b/sigmodr/models/CoinListModel.cpp
index 8729e652..96117d25 100644
--- a/sigmodr/models/CoinListModel.cpp
+++ b/sigmodr/models/CoinListModel.cpp
@@ -20,6 +20,7 @@
// Model includes
#include "CoinListObjectModel.h"
+#include "GroupModel.h"
// Sigmodr includes
#include "../CoinListUI.h"
@@ -105,28 +106,29 @@ void Sigmodr::CoinListModel::addObject(Sigmod::Object* object)
if (!object)
object = qobject_cast<Sigmod::CoinList*>(m_object)->newObject();
if (object->className() == "CoinListObject")
- m_objects.append(new CoinListObjectModel(this, qobject_cast<Sigmod::CoinListObject*>(object)));
+ addChild(new CoinListObjectModel(this, qobject_cast<Sigmod::CoinListObject*>(object)));
}
void Sigmodr::CoinListModel::deleteObject(BaseModel* model)
{
- const int index = m_objects.indexOf(model);
+ const int index = find(model);
if (0 <= index)
{
qobject_cast<Sigmod::CoinList*>(m_object)->deleteObject(index);
m_objects[index]->deleteLater();
m_objects.removeAt(index);
+ childRowChanged(index);
}
}
void Sigmodr::CoinListModel::deleteSelf()
{
-// qobject_cast<GroupModel*>(m_parent)->deleteObject(this);
+ qobject_cast<GroupModel*>(m_parent)->deleteObject(this);
}
void Sigmodr::CoinListModel::setupData()
{
Sigmod::CoinList* coinList = qobject_cast<Sigmod::CoinList*>(m_object);
for (int i = 0; i < coinList->objectCount(); ++i)
- m_objects.append(new CoinListObjectModel(this, coinList->object(i)));
+ addChild(new CoinListObjectModel(this, coinList->object(i)));
}