blob: 447411342ae3cb4a79a0d237f783b25461f27bbf (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
|
/******************************************************************************
*
* $Id$
*
* Copyright (C) 1997-1999 by Dimitri van Heesch.
*
* Permission to use, copy, modify, and distribute this software and its
* documentation under the terms of the GNU General Public License is hereby
* granted. No representations are made about the suitability of this software
* for any purpose. It is provided "as is" without express or implied warranty.
* See the GNU General Public License for more details.
*
* All output generated with Doxygen is not covered by this license.
*
*/
#include "qtbc.h"
#include <ctype.h>
#include "definition.h"
#include "doxygen.h"
Definition::Definition(const char *name,const char *b,const char *d)
{
n=name; brief=b; doc=d; sectionList=0;
}
Definition::~Definition()
{
delete sectionList;
}
QCString Definition::nameToFile(const char *name)
{
QCString result;
char c;
const char *p=name;
while ((c=*p++)!=0)
{
switch(c)
{
case ':': result+="_"; break;
case '<': result+="_lt"; break;
case '>': result+="_gt"; break;
case '*': result+="_ast"; break;
case '&': result+="_amp"; break;
case ' ': break;
default:
if (Config::caseSensitiveNames)
result+=c;
else
result+=tolower(c);
break;
}
}
return result;
}
void Definition::addSectionsToDefinition(QList<QCString> *anchorList)
{
if (!anchorList) return;
QCString *s=anchorList->first();
while (s)
{
SectionInfo *si=0;
if (!s->isEmpty() && (si=sectionDict[*s]))
{
//printf("Add section `%s' to definition `%s'\n",
// si->label.data(),n.data());
if (sectionList==0) sectionList = new SectionList;
sectionList->append(si);
si->definition = this;
}
s=anchorList->next();
}
}
|