void dibSHP::readPoint(DBFHandle dh, int i){ Plug_Entity *ent =NULL; QHash<int, QVariant> data; if (pointF < 0) { ent = currDoc->newEntity(DPI::POINT); ent->getData(&data); } else { ent = currDoc->newEntity(DPI::TEXT); ent->getData(&data); data.insert(DPI::TEXTCONTENT, DBFReadStringAttribute( dh, i, pointF ) ); } data.insert(DPI::STARTX, *(sobject->padfX)); data.insert(DPI::STARTY, *(sobject->padfY)); readAttributes(dh, i); data.insert(DPI::LAYER, attdata.layer); ent->updateData(&data); currDoc->addEntity(ent); }
QString CAD::getData(int eid, QString entityData) { enum DPI::EDATA edata = QStringToPluginEntityData(entityData); if (edata == DPI::ETYPE) return ""; Plug_Entity *pe = entityMap.value(eid); QHash<int,QVariant> data; pe->getData(&data); QString val = (data.value(edata)).toString(); return val; }
int CAD::newEntity(QString entityType) { enum DPI::ETYPE type = QStringToPluginEntityType(entityType); if (type == DPI::UNKNOWN) return 0; Plug_Entity *pe = _doc->newEntity(type); QHash<int,QVariant> data; pe->getData(&data); int eid = (data.take(DPI::EID)).toInt(); entityMap.insert(eid,pe); return eid; }