diff -r 6e4b586aa88a -r 25e634a7e1dc mapitem.cpp --- a/mapitem.cpp Wed Jun 03 20:37:17 2009 +0000 +++ b/mapitem.cpp Mon Jun 08 11:36:56 2009 +0000 @@ -5,9 +5,20 @@ #include using namespace std; +#include "misc.h" //cout << QPointF MapItem::MapItem() { + init(); +} + +MapItem::MapItem(const QList &data, TreeItem *parent):TreeItem (data,parent) +{ + init(); +} + +void MapItem::init() +{ lmo=NULL; posMode=Unused; } @@ -63,23 +74,33 @@ QString MapItem::getAttr() { + QString s; + if (parentItem==rootItem) + posMode=Absolute; + else + { + if (type==TreeItem::Image ||depth()==1) + posMode=Relative; + else + posMode=Unused; + } switch (posMode) { case Relative: if (lmo) pos=lmo->getRelPos(); - return - attribut("relPosX",QString().setNum(pos.x())) + - attribut("relPosY",QString().setNum(pos.y())); + s= attribut("relPosX",QString().setNum(pos.x())) + + attribut("relPosY",QString().setNum(pos.y())); break; case Absolute: if (lmo) pos=lmo->getAbsPos(); - return - attribut("absPosX",QString().setNum(pos.x())) + - attribut("absPosY",QString().setNum(pos.y())); + s=attribut("absPosX",QString().setNum(pos.x())) + + attribut("absPosY",QString().setNum(pos.y())); break; - default: - return QString(); - break; + default: break; } + if (hideExport) + return s+attribut("hideInExport","true"); + else + return s; }