void UmlActivityObject::setInState(QCString s) { if (FromBouml && (s.left(8) != "BOUML_0x")) set_InState(s); else { QMap<QCString, UmlItem *>::Iterator it = All.find(s); if (it != All.end()) { if ((*it)->kind() == aState) set_InState((*it)->name()); } else UnresolvedWithContext::add(this, s, 1); } }
void UmlActivityObject::solve(int context, WrapperStr idref) { switch (context) { case 0: // type { UmlTypeSpec ts; if (getType(idref, ts)) set_Type(ts); else if (!FileIn::isBypassedId(idref)) UmlCom::trace("activity object : unknown type reference '" + idref + "'<br>"); } break; case 1: // state { QMap<QString, UmlItem *>::Iterator it = All.find(idref); if (it != All.end()) { if ((*it)->kind() == aState) set_InState((*it)->name()); } else if (!FileIn::isBypassedId(idref)) UmlCom::trace("activity object : unknown state reference '" + idref + "'<br>"); } break; default: // selection { QMap<QString, WrapperStr>::Iterator it = OpaqueDefs.find(idref); if (it != OpaqueDefs.end()) set_Selection(*it); else if (!FileIn::isBypassedId(idref)) UmlCom::trace("activity object : unknown opaque definition reference '" + idref + "'<br>"); } break; } }