diff options
| author | Ben Boeckel <MathStuf@gmail.com> | 2008-04-25 19:06:47 +0000 |
|---|---|---|
| committer | Ben Boeckel <MathStuf@gmail.com> | 2008-04-25 19:06:47 +0000 |
| commit | 74c06767a1a698705e8c486d77ccf11838c87a4d (patch) | |
| tree | 34519f082aac35aef9321756e0a3dce0a87c5419 /pokemodr/models/StoreModel.cpp | |
| parent | dd643ee61d9166761c50803cd379c9343099385c (diff) | |
| download | sigen-74c06767a1a698705e8c486d77ccf11838c87a4d.tar.gz sigen-74c06767a1a698705e8c486d77ccf11838c87a4d.tar.xz sigen-74c06767a1a698705e8c486d77ccf11838c87a4d.zip | |
[FIX] Cleaner setting of model data
[FIX] Fleshed out the GroupModel classes for Pokemod
[FIX] Tree for pokemod is now draggable
git-svn-id: https://pokegen.svn.sourceforge.net/svnroot/pokegen/trunk@108 6ecfd1a5-f3ed-3746-8530-beee90d26b22
Diffstat (limited to 'pokemodr/models/StoreModel.cpp')
| -rw-r--r-- | pokemodr/models/StoreModel.cpp | 22 |
1 files changed, 3 insertions, 19 deletions
diff --git a/pokemodr/models/StoreModel.cpp b/pokemodr/models/StoreModel.cpp index f1064541..37dd199e 100644 --- a/pokemodr/models/StoreModel.cpp +++ b/pokemodr/models/StoreModel.cpp @@ -54,34 +54,18 @@ bool StoreModel::setData(const QVariant& value, int role) { if (role == Qt::UserRole) { - if (value.canConvert<void*>()) - { - *static_cast<Store*>(m_object) = *static_cast<Store*>(value.value<void*>()); - return true; - } - else if (value.canConvert<QString>()) + if (value.canConvert<QString>()) { QFile file(value.toString()); QDomDocument xml; - if (file.open(QIODevice::ReadOnly)) - { - if (xml.setContent(&file)) - { - if (xml.doctype().name() == m_object->className()) - { - m_object->load(xml.documentElement()); - return true; - } - } - file.close(); - } - else if (xml.setContent(value.toString())) + if ((file.open(QIODevice::ReadOnly) && xml.setContent(&file)) || xml.setContent(value.toString())) { if (xml.doctype().name() == m_object->className()) { m_object->load(xml.documentElement()); return true; } + file.close(); } } } |
