summaryrefslogtreecommitdiffstats
path: root/src/memberdef.cpp
diff options
context:
space:
mode:
authorDimitri van Heesch <doxygen@gmail.com>2019-01-12 13:58:16 (GMT)
committerDimitri van Heesch <doxygen@gmail.com>2019-01-12 13:58:16 (GMT)
commit7f40e488e27bcea4bb15045df05479dc5fbd9d6d (patch)
tree9497084f8c326623c0ed92e0f6974f845ad0fa8a /src/memberdef.cpp
parent121ec253945f6563ac6731e3596cd9beaa39cb72 (diff)
downloadDoxygen-7f40e488e27bcea4bb15045df05479dc5fbd9d6d.zip
Doxygen-7f40e488e27bcea4bb15045df05479dc5fbd9d6d.tar.gz
Doxygen-7f40e488e27bcea4bb15045df05479dc5fbd9d6d.tar.bz2
Added declfile, declline, and declcolumn attributes to the location element in the XML output
Diffstat (limited to 'src/memberdef.cpp')
-rw-r--r--src/memberdef.cpp61
1 files changed, 54 insertions, 7 deletions
diff --git a/src/memberdef.cpp b/src/memberdef.cpp
index bcef5ac..29ae057 100644
--- a/src/memberdef.cpp
+++ b/src/memberdef.cpp
@@ -596,6 +596,9 @@ class MemberDefImpl
// FALSE => block is put before declaration.
ClassDef *category;
MemberDef *categoryRelation;
+ QCString declFileName;
+ int declLine;
+ int declColumn;
};
MemberDefImpl::MemberDefImpl() :
@@ -609,7 +612,9 @@ MemberDefImpl::MemberDefImpl() :
defTmpArgLists(0),
classSectionSDict(0),
category(0),
- categoryRelation(0)
+ categoryRelation(0),
+ declLine(-1),
+ declColumn(-1)
{
}
@@ -4740,6 +4745,24 @@ MemberDef *MemberDef::getGroupAlias() const
return m_impl->groupAlias;
}
+QCString MemberDef::getDeclFileName() const
+{
+ return m_impl->declFileName;
+}
+
+int MemberDef::getDeclLine() const
+{
+ return m_impl->declLine;
+}
+
+int MemberDef::getDeclColumn() const
+{
+ return m_impl->declColumn;
+}
+
+
+//----------------------------------------------
+
void MemberDef::setMemberType(MemberType t)
{
m_impl->mtype=t;
@@ -4788,11 +4811,6 @@ void MemberDef::setMaxInitLines(int lines)
}
}
-void MemberDef::setExplicitExternal(bool b)
-{
- m_impl->explExt=b;
-}
-
void MemberDef::setReadAccessor(const char *r)
{
m_impl->read=r;
@@ -4862,9 +4880,38 @@ void MemberDef::setAnonymousEnumType(MemberDef *md)
m_impl->annEnumType = md;
}
-void MemberDef::setPrototype(bool p)
+void MemberDef::setPrototype(bool p,const QCString &df,int line,int column)
{
m_impl->proto=p;
+ if (p)
+ {
+ setDeclFile(df,line,column);
+ }
+ else
+ {
+ setDefFile(df,line,column);
+ }
+}
+
+void MemberDef::setExplicitExternal(bool b,const QCString &df,int line,int column)
+{
+ m_impl->explExt=b;
+ if (b)
+ {
+ setDeclFile(df,line,column);
+ }
+ else
+ {
+ setDefFile(df,line,column);
+ }
+}
+
+
+void MemberDef::setDeclFile(const QCString &df,int line,int column)
+{
+ m_impl->declFileName = df;
+ m_impl->declLine = line;
+ m_impl->declColumn = column;
}
void MemberDef::setMemberGroupId(int id)