From 72b7577583c0bdcc3b2b78687092b448e73a2e98 Mon Sep 17 00:00:00 2001 From: deva Date: Tue, 14 Jun 2011 12:59:50 +0000 Subject: Create screenshots from xml code in the annotations. --- client/docgen/parse.cc | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) (limited to 'client/docgen/parse.cc') diff --git a/client/docgen/parse.cc b/client/docgen/parse.cc index 6303eae..64c2aa7 100644 --- a/client/docgen/parse.cc +++ b/client/docgen/parse.cc @@ -40,6 +40,7 @@ typedef enum { inmethex, inpar, inret, + inscrsht } state_t; static QString convert(QString in) @@ -87,7 +88,6 @@ static QString convert(QString in) Doc parse(QString filename) { Doc doc; - doc.screenshot = false; doc.container = false; QFileInfo fi(filename); @@ -116,6 +116,7 @@ Doc parse(QString filename) line.remove(QRegExp("^[ \t]*[*][ \t]")); if(state == indesc && line.left(1) == "@") state = none; + if(state == inscrsht && line.left(1) == "@") state = none; if(state == indescex && line.left(1) == "@") state = none; if(state == inatt && line.left(1) == "@") state = none; if(state == inpar && line.left(1) == "@") state = inmeth; @@ -139,7 +140,10 @@ Doc parse(QString filename) } if(state == none && line.left(11) == "@screenshot") { - doc.screenshot = true; + Screenshot s; + s.caption = line.right(line.length() - 11); + doc.screenshots.push_back(s); + state = inscrsht; continue; } @@ -157,6 +161,12 @@ Doc parse(QString filename) continue; } + if(state == inscrsht) { + Screenshot &s = doc.screenshots[doc.screenshots.size() - 1]; + s.xml += line + "\n"; + continue; + } + if((state == none || state == indesc || state == inmeth) && line.left(8) == "@example") { -- cgit v1.2.3