static void codifyLines(CodeOutputInterface &ol,FileDef *fd,const char *text, uint &line,uint &column,const char *fontClass=0) { if (fontClass) ol.startFontClass(fontClass); const char *p=text,*sp=p; char c; bool done=FALSE; while (!done) { sp=p; while ((c=*p++) && c!='\n') { column++; } if (c=='\n') { line++; int l = (int)(p-sp-1); column=l+1; char *tmp = (char*)malloc(l+1); memcpy(tmp,sp,l); tmp[l]='\0'; ol.codify(tmp); free(tmp); if (fontClass) ol.endFontClass(); ol.endCodeLine(); ol.startCodeLine(TRUE); writeLineNumber(ol,fd,line); if (fontClass) ol.startFontClass(fontClass); } else { ol.codify(sp); done=TRUE; } } if (fontClass) ol.endFontClass(); }
static void codifyLines(CodeOutputInterface &ol, QSharedPointer<FileDef> fd, const QString &text, uint &line, uint &column, const QString &fontClass) { if (! fontClass.isEmpty()) { ol.startFontClass(fontClass); } const QChar *p = text.constData(); const QChar *sp = p; const QChar *ptr = p; QChar c; bool done = false; while (! done) { sp = p; while ((c = *p++) != 0 && c != '\n') { column++; } if (c == '\n') { line++; int l = (int)(p - sp - 1); column = l + 1; char *tmp = (char *)malloc(l + 1); memcpy(tmp, sp, l); tmp[l] = '\0'; ol.codify(tmp); free(tmp); if (! fontClass.isEmpty()) { ol.endFontClass(); } ol.endCodeLine(); ol.startCodeLine(true); writeLineNumber(ol, fd, line); if (! fontClass.isEmpty()) { ol.startFontClass(fontClass.toUtf8()); } } else { ol.codify(text.mid(sp - ptr) ); done = true; } } if (! fontClass.isEmpty()) { ol.endFontClass(); } }