static void writeLineNumber(CodeOutputInterface &ol,FileDef *fd,uint line) { Definition *d = fd ? fd->getSourceDefinition(line) : 0; if (d && d->isLinkable()) { g_currentDefinition=d; g_currentLine=line; MemberDef *md = fd->getSourceMember(line); if (md && md->isLinkable()) // link to member { if (g_currentMemberDef!=md) // new member, start search for body { g_searchForBody=TRUE; g_insideBody=FALSE; g_bracketCount=0; } g_currentMemberDef=md; ol.writeLineNumber(md->getReference(), md->getOutputFileBase(), md->anchor(), line); } else // link to compound { g_currentMemberDef=0; ol.writeLineNumber(d->getReference(), d->getOutputFileBase(), d->anchor(), line); } } else // no link { ol.writeLineNumber(0,0,0,line); } // set search page target if (Doxygen::searchIndex) { QCString lineAnchor; lineAnchor.sprintf("l%05d",line); ol.setCurrentDoc(fd,lineAnchor,TRUE); } //printf("writeLineNumber(%d) g_searchForBody=%d\n",line,g_searchForBody); }
static void writeLineNumber(CodeOutputInterface &ol, QSharedPointer<FileDef> fd, uint line) { QSharedPointer<Definition> d; if (fd) { d = fd->getSourceDefinition(line); } if (d && d->isLinkable()) { g_currentDefinition = d; g_currentLine = line; QSharedPointer<MemberDef> md = fd->getSourceMember(line); if (md && md->isLinkable()) { // link to member if (g_currentMemberDef != md) { // new member, start search for body g_searchForBody = true; g_insideBody = false; g_bracketCount = 0; } g_currentMemberDef = md; ol.writeLineNumber(md->getReference(), md->getOutputFileBase(), md->anchor(), line); } else { // link to compound g_currentMemberDef = QSharedPointer<MemberDef>(); ol.writeLineNumber(d->getReference(), d->getOutputFileBase(), d->anchor(), line); } } else { // no link ol.writeLineNumber(0, 0, 0, line); } // set search page target if (Doxy_Globals::searchIndex) { QString lineAnchor = QString("l%1").arg(line, 5, 10, QChar('0')); ol.setCurrentDoc(fd, lineAnchor, true); } }