insilmaril@795: insilmaril@795: #include "attributeitem.h" insilmaril@795: insilmaril@795: #include insilmaril@795: using namespace std; insilmaril@795: insilmaril@795: extern bool debug; insilmaril@795: insilmaril@795: AttributeItem::AttributeItem(const QList &data, TreeItem *parent):TreeItem (data,parent) insilmaril@795: { insilmaril@795: TreeItem::setType (Attribute); insilmaril@795: //table=NULL; insilmaril@795: //definition=NULL; insilmaril@795: type=Attribute; insilmaril@795: insilmaril@795: internal=false; insilmaril@795: } insilmaril@795: insilmaril@795: AttributeItem::~AttributeItem() insilmaril@795: { insilmaril@795: } insilmaril@795: insilmaril@795: void AttributeItem::setKey (const QString &k, const Type &t) insilmaril@795: { insilmaril@795: /* insilmaril@795: if (!table) insilmaril@795: { insilmaril@795: qWarning (QString("AttributeItem::setKey (%1) No table defined!\n").arg(k).ascii()); insilmaril@795: return; insilmaril@795: } insilmaril@795: insilmaril@795: if (!definition) insilmaril@795: { insilmaril@795: definition=table->getDef(k); insilmaril@795: if (!definition) insilmaril@795: { insilmaril@795: table->addKey (k,t); insilmaril@795: return; insilmaril@795: } insilmaril@795: } insilmaril@795: qWarning (QString("AttributeItem::setKey (%1) attribute already defined!\n").arg(k).ascii()); insilmaril@795: */ insilmaril@795: } insilmaril@795: insilmaril@795: QString AttributeItem::getKey () insilmaril@795: { insilmaril@795: /* insilmaril@795: if (!table) insilmaril@795: { insilmaril@795: qWarning ("AttributeItem::getKey () No table defined!"); insilmaril@795: return QString(); insilmaril@795: } insilmaril@795: if (!definition) insilmaril@795: { insilmaril@795: qWarning ("AttributeItem::getKey () No attribute defined!"); insilmaril@795: return QString (); insilmaril@795: } insilmaril@795: return definition->getKey(); insilmaril@795: */ insilmaril@795: } insilmaril@795: insilmaril@795: void AttributeItem::setValue(const QString &v) insilmaril@795: { insilmaril@795: /* insilmaril@795: if (!table) insilmaril@795: { insilmaril@795: qWarning (QString ("AttributeItem::setValue (%1) No table defined!").arg(v)); insilmaril@795: return; insilmaril@795: } insilmaril@795: if (!definition) insilmaril@795: { insilmaril@795: qWarning (QString ("AttributeItem::setValue (%1) No attribute defined!").arg(v)); insilmaril@795: return; insilmaril@795: } insilmaril@795: definition->setValue (v); insilmaril@795: */ insilmaril@795: } insilmaril@795: insilmaril@795: QVariant AttributeItem::getValue() insilmaril@795: { insilmaril@795: /* insilmaril@795: if (!table) insilmaril@795: { insilmaril@795: qWarning ("AttributeItem::getValue No table defined!"); insilmaril@795: return QString(); insilmaril@795: } insilmaril@795: if (!definition) insilmaril@795: { insilmaril@795: qWarning ("AttributeItem::getValue No attribute defined!"); insilmaril@795: return QString(); insilmaril@795: } insilmaril@795: QVariant v= definition->getValue(); insilmaril@795: return v; insilmaril@795: */ insilmaril@795: } insilmaril@795: insilmaril@795: void AttributeItem::setType (const Type &t) insilmaril@795: { insilmaril@795: /* insilmaril@795: if (!table) insilmaril@795: { insilmaril@795: qWarning ("AttributeItem::setType No table defined!"); insilmaril@795: return; insilmaril@795: } insilmaril@795: if (!definition) insilmaril@795: { insilmaril@795: qWarning ("Attribute::setType No attribute defined!"); insilmaril@795: return; insilmaril@795: } insilmaril@795: definition->setType (t); insilmaril@795: */ insilmaril@795: } insilmaril@795: insilmaril@795: AttributeItem::Type AttributeItem::getAttributeType() insilmaril@795: { insilmaril@795: /* insilmaril@795: if (!table) insilmaril@795: { insilmaril@795: qWarning ("AttributeItem::getType No table defined!"); insilmaril@795: return Undefined; insilmaril@795: } insilmaril@795: if (!definition) insilmaril@795: { insilmaril@795: qWarning ("AttributeItem::getType No attribute defined!"); insilmaril@795: return Undefined; insilmaril@795: } insilmaril@795: return definition->getType(); insilmaril@795: */ insilmaril@795: } insilmaril@795: insilmaril@795: QString AttributeItem::getTypeString() insilmaril@795: { insilmaril@795: /* insilmaril@795: if (!table) insilmaril@795: { insilmaril@795: qWarning ("AttributeItem::getTypeString No table defined!"); insilmaril@795: return "Undefined"; insilmaril@795: } insilmaril@795: if (!definition) insilmaril@795: { insilmaril@795: qWarning ("Attribute::getTypeString No AttributeItem defined!"); insilmaril@795: return "Undefined"; insilmaril@795: } insilmaril@795: return definition->getTypeString(); insilmaril@795: */ insilmaril@795: } insilmaril@795: insilmaril@795: QString AttributeItem::getDataXML() insilmaril@795: { insilmaril@795: QString a=beginElement ("attribute"); insilmaril@795: a+=attribut ("key",getKey()); insilmaril@795: a+=attribut ("value",getValue().toString() ); insilmaril@795: a+=attribut ("type",getTypeString () ); insilmaril@795: return a; insilmaril@795: } insilmaril@795: