added handling for tag ref in Java
This commit is contained in:
parent
00ff8886c6
commit
4e2c1e3ac3
5 changed files with 71 additions and 9 deletions
|
|
@ -269,12 +269,16 @@ int func07(int a)
|
||||||
*
|
*
|
||||||
* \protectedsection
|
* \protectedsection
|
||||||
*
|
*
|
||||||
|
* \anchor someAnchor
|
||||||
|
* Text after anchor.
|
||||||
* \protocol someProtocol header.h "Header name"
|
* \protocol someProtocol header.h "Header name"
|
||||||
*
|
*
|
||||||
* \public
|
* \public
|
||||||
*
|
*
|
||||||
* \publicsection
|
* \publicsection
|
||||||
*
|
*
|
||||||
|
* \ref someAnchor Anchor description
|
||||||
|
*
|
||||||
* \ref someAnchor
|
* \ref someAnchor
|
||||||
*
|
*
|
||||||
* \related toSomething
|
* \related toSomething
|
||||||
|
|
|
||||||
|
|
@ -111,11 +111,15 @@ public class doxygen_translate_all_tags_runme {
|
||||||
" @param a the first param\n");
|
" @param a the first param\n");
|
||||||
|
|
||||||
wantedComments.put("doxygen_translate_all_tags.doxygen_translate_all_tags.func08(int)",
|
wantedComments.put("doxygen_translate_all_tags.doxygen_translate_all_tags.func08(int)",
|
||||||
" Remarks: Some remark text \n" +
|
"<a id=\"#someAnchor\"></a>\n" +
|
||||||
" Remarks: Another remarks section \n" +
|
"Text after anchor.\n" +
|
||||||
" @return Whatever \n" +
|
"<i>Anchor description</i>\n" +
|
||||||
" @return it \n" +
|
"<i>someAnchor</i>\n" +
|
||||||
" @return may return \n");
|
" Remarks: Some remark text \n" +
|
||||||
|
" Remarks: Another remarks section \n" +
|
||||||
|
" @return Whatever \n" +
|
||||||
|
" @return it \n" +
|
||||||
|
" @return may return \n");
|
||||||
|
|
||||||
wantedComments.put("doxygen_translate_all_tags.doxygen_translate_all_tags.func09(int)",
|
wantedComments.put("doxygen_translate_all_tags.doxygen_translate_all_tags.func09(int)",
|
||||||
" This will only appear in RTF \n" +
|
" This will only appear in RTF \n" +
|
||||||
|
|
|
||||||
|
|
@ -692,10 +692,12 @@ int DoxygenParser::addCommandUnique(const std::string &theCommand,
|
||||||
"No key followed " + theCommand + " command. Not added");
|
"No key followed " + theCommand + " command. Not added");
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
std::string text = getNextWord();
|
DoxygenEntityList aNewList;
|
||||||
aNewList.push_back(DoxygenEntity("plainstd::string", name));
|
TokenListCIt endOfLine = getOneLine(tokList);
|
||||||
if (!text.empty())
|
if (endOfLine != m_tokenListIt) {
|
||||||
aNewList.push_back(DoxygenEntity("plainstd::string", text));
|
aNewList = parse(endOfLine, tokList);
|
||||||
|
}
|
||||||
|
aNewList.push_front(DoxygenEntity("plainstd::string", name));
|
||||||
doxyList.push_back(DoxygenEntity(theCommand, aNewList));
|
doxyList.push_back(DoxygenEntity(theCommand, aNewList));
|
||||||
}
|
}
|
||||||
// \subpage <name> ["(text)"]
|
// \subpage <name> ["(text)"]
|
||||||
|
|
|
||||||
|
|
@ -88,6 +88,7 @@ void JavaDocConverter::fillStaticTables()
|
||||||
tagHandlers["::"] = make_pair(&JavaDocConverter::handleTagChar, "");
|
tagHandlers["::"] = make_pair(&JavaDocConverter::handleTagChar, "");
|
||||||
// these commands are stripped out
|
// these commands are stripped out
|
||||||
tagHandlers["attention"] = make_pair(&JavaDocConverter::handleParagraph, "");
|
tagHandlers["attention"] = make_pair(&JavaDocConverter::handleParagraph, "");
|
||||||
|
tagHandlers["anchor"] = make_pair(&JavaDocConverter::handleTagAnchor, "");
|
||||||
tagHandlers["brief"] = make_pair(&JavaDocConverter::handleParagraph, "");
|
tagHandlers["brief"] = make_pair(&JavaDocConverter::handleParagraph, "");
|
||||||
tagHandlers["bug"] = make_pair(&JavaDocConverter::handleParagraph, "");
|
tagHandlers["bug"] = make_pair(&JavaDocConverter::handleParagraph, "");
|
||||||
tagHandlers["date"] = make_pair(&JavaDocConverter::handleParagraph, "");
|
tagHandlers["date"] = make_pair(&JavaDocConverter::handleParagraph, "");
|
||||||
|
|
@ -112,6 +113,7 @@ void JavaDocConverter::fillStaticTables()
|
||||||
tagHandlers["package"] = make_pair(&JavaDocConverter::handleTagSame, "");
|
tagHandlers["package"] = make_pair(&JavaDocConverter::handleTagSame, "");
|
||||||
tagHandlers["param"] = make_pair(&JavaDocConverter::handleTagParam, "");
|
tagHandlers["param"] = make_pair(&JavaDocConverter::handleTagParam, "");
|
||||||
tagHandlers["tparam"] = make_pair(&JavaDocConverter::handleTagParam, "");
|
tagHandlers["tparam"] = make_pair(&JavaDocConverter::handleTagParam, "");
|
||||||
|
tagHandlers["ref"] = make_pair(&JavaDocConverter::handleTagRef, "");
|
||||||
tagHandlers["result"] = make_pair(&JavaDocConverter::handleTagSame, "return");
|
tagHandlers["result"] = make_pair(&JavaDocConverter::handleTagSame, "return");
|
||||||
tagHandlers["return"] = make_pair(&JavaDocConverter::handleTagSame, "");
|
tagHandlers["return"] = make_pair(&JavaDocConverter::handleTagSame, "");
|
||||||
tagHandlers["returns"] = make_pair(&JavaDocConverter::handleTagSame,
|
tagHandlers["returns"] = make_pair(&JavaDocConverter::handleTagSame,
|
||||||
|
|
@ -402,6 +404,15 @@ void JavaDocConverter::translateEntity(DoxygenEntity &tag,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void JavaDocConverter::handleTagAnchor(DoxygenEntity& tag,
|
||||||
|
std::string& translatedComment,
|
||||||
|
std::string &)
|
||||||
|
{
|
||||||
|
translatedComment += "<a id=\"#" + translateSubtree(tag) + "\"></a>";
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
void JavaDocConverter::handleTagHtml(DoxygenEntity& tag,
|
void JavaDocConverter::handleTagHtml(DoxygenEntity& tag,
|
||||||
std::string& translatedComment,
|
std::string& translatedComment,
|
||||||
std::string &arg)
|
std::string &arg)
|
||||||
|
|
@ -573,6 +584,7 @@ void JavaDocConverter::handleTagPar(DoxygenEntity& tag,
|
||||||
translatedComment += "</p>";
|
translatedComment += "</p>";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void JavaDocConverter::handleTagParam(DoxygenEntity& tag,
|
void JavaDocConverter::handleTagParam(DoxygenEntity& tag,
|
||||||
std::string& translatedComment,
|
std::string& translatedComment,
|
||||||
std::string&)
|
std::string&)
|
||||||
|
|
@ -590,6 +602,35 @@ void JavaDocConverter::handleTagParam(DoxygenEntity& tag,
|
||||||
handleParagraph(tag, translatedComment, dummy);
|
handleParagraph(tag, translatedComment, dummy);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void JavaDocConverter::handleTagRef(DoxygenEntity& tag,
|
||||||
|
std::string& translatedComment,
|
||||||
|
std::string&)
|
||||||
|
{
|
||||||
|
std::string dummy;
|
||||||
|
// translatedComment += "1111";
|
||||||
|
if (!tag.entityList.size())
|
||||||
|
return;
|
||||||
|
// translatedComment += "2222";
|
||||||
|
//if (!paramExists(tag.entityList.begin()->data))
|
||||||
|
// return;
|
||||||
|
|
||||||
|
// we don't translate to link, since \page is not supported in Java, but we
|
||||||
|
// make text in italic, so that reader at least knows what to look at.
|
||||||
|
// translatedComment += "<i>";
|
||||||
|
// tag.entityList.pop_front();
|
||||||
|
// translatedComment += translateSubtree(tag);
|
||||||
|
// translatedComment += "</i>";
|
||||||
|
string anchor = tag.entityList.begin()->data;
|
||||||
|
tag.entityList.pop_front();
|
||||||
|
string anchorText = translateSubtree(tag);
|
||||||
|
if (anchorText.find_first_not_of(" \t") == string::npos) {
|
||||||
|
anchorText = anchor;
|
||||||
|
}
|
||||||
|
translatedComment += "<a href=\"#" + anchor + "\">" + anchorText + "</a>";
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
string JavaDocConverter::convertLink(string linkObject)
|
string JavaDocConverter::convertLink(string linkObject)
|
||||||
{
|
{
|
||||||
if (GetFlag(currentNode, "feature:doxygen:nolinktranslate"))
|
if (GetFlag(currentNode, "feature:doxygen:nolinktranslate"))
|
||||||
|
|
|
||||||
|
|
@ -61,6 +61,11 @@ protected:
|
||||||
*/
|
*/
|
||||||
void handleTagVerbatim(DoxygenEntity& tag, std::string& translatedComment, std::string &arg);
|
void handleTagVerbatim(DoxygenEntity& tag, std::string& translatedComment, std::string &arg);
|
||||||
|
|
||||||
|
/** Creates anchor link. */
|
||||||
|
void handleTagAnchor(DoxygenEntity& tag,
|
||||||
|
std::string& translatedComment,
|
||||||
|
std::string &arg);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Wrap the command data with the html tag
|
* Wrap the command data with the html tag
|
||||||
* arg - html tag, with no braces
|
* arg - html tag, with no braces
|
||||||
|
|
@ -125,6 +130,12 @@ protected:
|
||||||
* Insert \@param command, if it is really a function param
|
* Insert \@param command, if it is really a function param
|
||||||
*/
|
*/
|
||||||
void handleTagParam(DoxygenEntity &tag, std::string &translatedComment, std::string &arg);
|
void handleTagParam(DoxygenEntity &tag, std::string &translatedComment, std::string &arg);
|
||||||
|
/*
|
||||||
|
* Writes text of \ref tag in italic. Does not produce link, because javadoc
|
||||||
|
* does not support page and section tags.
|
||||||
|
*/
|
||||||
|
void handleTagRef(DoxygenEntity& tag, std::string& translatedComment,
|
||||||
|
std::string&);
|
||||||
/*
|
/*
|
||||||
* Insert {@link...} command, and handle all the <link-object>s correctly
|
* Insert {@link...} command, and handle all the <link-object>s correctly
|
||||||
* (like converting types of params, etc)
|
* (like converting types of params, etc)
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue