My Project
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Classes | Public Member Functions | Private Member Functions | Private Attributes | Static Private Attributes | List of all members
ClassContext::Private Class Reference
Inheritance diagram for ClassContext::Private:
DefinitionContext< ClassContext::Private >

Classes

struct  Cachable
 

Public Member Functions

 Private (ClassDef *cd)
 
virtual ~Private ()
 
TemplateVariant get (const char *n) const
 
TemplateVariant title () const
 
TemplateVariant highlight () const
 
TemplateVariant subHighlight () const
 
TemplateVariant hasDetails () const
 
TemplateVariant generatedFromFiles () const
 
TemplateVariant usedFiles () const
 
DotClassGraphgetClassGraph () const
 
int numInheritanceNodes () const
 
TemplateVariant hasInheritanceDiagram () const
 
TemplateVariant inheritanceDiagram () const
 
DotClassGraphgetCollaborationGraph () const
 
TemplateVariant hasCollaborationDiagram () const
 
TemplateVariant collaborationDiagram () const
 
TemplateVariant includeInfo () const
 
TemplateVariant inherits () const
 
TemplateVariant inheritedBy () const
 
TemplateVariant getMemberList (SharedPtr< MemberListInfoContext > &list, MemberListType type, const char *title, bool detailed=FALSE) const
 
TemplateVariant unoIDLServices () const
 
TemplateVariant unoIDLInterfaces () const
 
TemplateVariant signals () const
 
TemplateVariant publicTypes () const
 
TemplateVariant publicMethods () const
 
TemplateVariant publicStaticMethods () const
 
TemplateVariant publicAttributes () const
 
TemplateVariant publicStaticAttributes () const
 
TemplateVariant publicSlots () const
 
TemplateVariant protectedTypes () const
 
TemplateVariant protectedMethods () const
 
TemplateVariant protectedStaticMethods () const
 
TemplateVariant protectedAttributes () const
 
TemplateVariant protectedStaticAttributes () const
 
TemplateVariant protectedSlots () const
 
TemplateVariant privateTypes () const
 
TemplateVariant privateSlots () const
 
TemplateVariant privateMethods () const
 
TemplateVariant privateStaticMethods () const
 
TemplateVariant privateAttributes () const
 
TemplateVariant privateStaticAttributes () const
 
TemplateVariant packageTypes () const
 
TemplateVariant packageMethods () const
 
TemplateVariant packageStaticMethods () const
 
TemplateVariant packageAttributes () const
 
TemplateVariant packageStaticAttributes () const
 
TemplateVariant properties () const
 
TemplateVariant events () const
 
TemplateVariant friends () const
 
TemplateVariant related () const
 
TemplateVariant detailedTypedefs () const
 
TemplateVariant detailedEnums () const
 
TemplateVariant detailedServices () const
 
TemplateVariant detailedInterfaces () const
 
TemplateVariant detailedConstructors () const
 
TemplateVariant detailedMethods () const
 
TemplateVariant detailedRelated () const
 
TemplateVariant detailedVariables () const
 
TemplateVariant detailedProperties () const
 
TemplateVariant detailedEvents () const
 
TemplateVariant classes () const
 
TemplateVariant innerClasses () const
 
TemplateVariant compoundType () const
 
void addTemplateDecls (Definition *d, TemplateList *tl) const
 
void addExamples (TemplateList *list) const
 
TemplateVariant templateDecls () const
 
TemplateVariant typeConstraints () const
 
TemplateVariant examples () const
 
void addMembers (ClassDef *cd, MemberListType lt) const
 
TemplateVariant members () const
 
TemplateVariant allMembersList () const
 
TemplateVariant allMembersFileName () const
 
TemplateVariant memberGroups () const
 
TemplateVariant additionalInheritedMembers () const
 
TemplateVariant isSimple () const
 
TemplateVariant categoryOf () const
 
- Public Member Functions inherited from DefinitionContext< ClassContext::Private >
 DefinitionContext (Definition *d)
 
void addBaseProperties (PropertyMapper< ClassContext::Private > &inst)
 
TemplateVariant fileName () const
 
TemplateVariant anchor () const
 
TemplateVariant sourceFileName () const
 
TemplateVariant isLinkable () const
 
TemplateVariant isLinkableInProject () const
 
TemplateVariant name () const
 
TemplateVariant bareName () const
 
QCString relPathAsString () const
 
virtual TemplateVariant relPath () const
 
TemplateVariant details () const
 
TemplateVariant brief () const
 
TemplateVariant inbodyDocs () const
 
TemplateVariant dynSectionId () const
 
TemplateVariant language () const
 
TemplateVariant compoundKind () const
 
TemplateVariant sourceDef () const
 
void fillPath (Definition *def, TemplateList *list) const
 
TemplateVariant navigationPath () const
 
TemplateVariant isReference () const
 
TemplateVariant externalReference () const
 

Private Member Functions

CachablegetCache () const
 

Private Attributes

ClassDefm_classDef
 

Static Private Attributes

static PropertyMapper
< ClassContext::Private
s_inst
 

Detailed Description

Definition at line 1793 of file context.cpp.

Constructor & Destructor Documentation

ClassContext::Private::Private ( ClassDef cd)
inline

Definition at line 1796 of file context.cpp.

References DefinitionContext< ClassContext::Private >::addBaseProperties(), additionalInheritedMembers(), allMembersFileName(), allMembersList(), categoryOf(), classes(), collaborationDiagram(), compoundType(), Definition::cookie(), detailedConstructors(), detailedEnums(), detailedEvents(), detailedInterfaces(), detailedMethods(), detailedProperties(), detailedRelated(), detailedServices(), detailedTypedefs(), detailedVariables(), events(), examples(), friends(), generatedFromFiles(), hasCollaborationDiagram(), hasDetails(), hasInheritanceDiagram(), highlight(), includeInfo(), inheritanceDiagram(), inheritedBy(), inherits(), Config::init(), innerClasses(), isSimple(), memberGroups(), members(), packageAttributes(), packageMethods(), packageStaticAttributes(), packageStaticMethods(), packageTypes(), privateAttributes(), privateMethods(), privateSlots(), privateStaticAttributes(), privateStaticMethods(), privateTypes(), properties(), protectedAttributes(), protectedMethods(), protectedSlots(), protectedStaticAttributes(), protectedStaticMethods(), protectedTypes(), publicAttributes(), publicMethods(), publicSlots(), publicStaticAttributes(), publicStaticMethods(), publicTypes(), related(), s_inst, Definition::setCookie(), signals(), subHighlight(), templateDecls(), title(), typeConstraints(), unoIDLInterfaces(), unoIDLServices(), and usedFiles().

{
static bool init=FALSE;
if (!init)
{
s_inst.addProperty("title", &Private::title);
s_inst.addProperty("highlight", &Private::highlight);
s_inst.addProperty("subhighlight", &Private::subHighlight);
s_inst.addProperty("hasDetails", &Private::hasDetails);
s_inst.addProperty("generatedFromFiles", &Private::generatedFromFiles);
s_inst.addProperty("usedFiles", &Private::usedFiles);
s_inst.addProperty("hasInheritanceDiagram", &Private::hasInheritanceDiagram);
s_inst.addProperty("inheritanceDiagram", &Private::inheritanceDiagram);
s_inst.addProperty("hasCollaborationDiagram", &Private::hasCollaborationDiagram);
s_inst.addProperty("collaborationDiagram", &Private::collaborationDiagram);
s_inst.addProperty("includeInfo", &Private::includeInfo);
s_inst.addProperty("inherits", &Private::inherits);
s_inst.addProperty("inheritedBy", &Private::inheritedBy);
s_inst.addProperty("unoIDLServices", &Private::unoIDLServices);
s_inst.addProperty("unoIDLInterfaces", &Private::unoIDLInterfaces);
s_inst.addProperty("signals", &Private::signals);
s_inst.addProperty("publicTypes", &Private::publicTypes);
s_inst.addProperty("publicMethods", &Private::publicMethods);
s_inst.addProperty("publicStaticMethods", &Private::publicStaticMethods);
s_inst.addProperty("publicAttributes", &Private::publicAttributes);
s_inst.addProperty("publicStaticAttributes", &Private::publicStaticAttributes);
s_inst.addProperty("publicSlots", &Private::publicSlots);
s_inst.addProperty("protectedTypes", &Private::protectedTypes);
s_inst.addProperty("protectedMethods", &Private::protectedMethods);
s_inst.addProperty("protectedStaticMethods", &Private::protectedStaticMethods);
s_inst.addProperty("protectedAttributes", &Private::protectedAttributes);
s_inst.addProperty("protectedStaticAttributes", &Private::protectedStaticAttributes);
s_inst.addProperty("protectedSlots", &Private::protectedSlots);
s_inst.addProperty("privateTypes", &Private::privateTypes);
s_inst.addProperty("privateMethods", &Private::privateMethods);
s_inst.addProperty("privateStaticMethods", &Private::privateStaticMethods);
s_inst.addProperty("privateAttributes", &Private::privateAttributes);
s_inst.addProperty("privateStaticAttributes", &Private::privateStaticAttributes);
s_inst.addProperty("privateSlots", &Private::privateSlots);
s_inst.addProperty("packageTypes", &Private::packageTypes);
s_inst.addProperty("packageMethods", &Private::packageMethods);
s_inst.addProperty("packageStaticMethods", &Private::packageStaticMethods);
s_inst.addProperty("packageAttributes", &Private::packageAttributes);
s_inst.addProperty("packageStaticAttributes", &Private::packageStaticAttributes);
s_inst.addProperty("properties", &Private::properties);
s_inst.addProperty("events", &Private::events);
s_inst.addProperty("friends", &Private::friends);
s_inst.addProperty("related", &Private::related);
s_inst.addProperty("detailedTypedefs", &Private::detailedTypedefs);
s_inst.addProperty("detailedEnums", &Private::detailedEnums);
s_inst.addProperty("detailedServices", &Private::detailedServices);
s_inst.addProperty("detailedInterfaces", &Private::detailedInterfaces);
s_inst.addProperty("detailedConstructors", &Private::detailedConstructors);
s_inst.addProperty("detailedMethods", &Private::detailedMethods);
s_inst.addProperty("detailedRelated", &Private::detailedRelated);
s_inst.addProperty("detailedVariables", &Private::detailedVariables);
s_inst.addProperty("detailedProperties", &Private::detailedProperties);
s_inst.addProperty("detailedEvents", &Private::detailedEvents);
s_inst.addProperty("classes", &Private::classes);
s_inst.addProperty("innerClasses", &Private::innerClasses);
s_inst.addProperty("compoundType", &Private::compoundType);
s_inst.addProperty("templateDecls", &Private::templateDecls);
s_inst.addProperty("typeConstraints", &Private::typeConstraints);
s_inst.addProperty("examples", &Private::examples);
s_inst.addProperty("members", &Private::members);
s_inst.addProperty("allMembersList", &Private::allMembersList);
s_inst.addProperty("allMembersFileName", &Private::allMembersFileName);
s_inst.addProperty("memberGroups", &Private::memberGroups);
s_inst.addProperty("additionalInheritedMembers",&Private::additionalInheritedMembers);
s_inst.addProperty("isSimple", &Private::isSimple);
s_inst.addProperty("categoryOf", &Private::categoryOf);
init=TRUE;
}
if (!cd->cookie()) { cd->setCookie(new ClassContext::Private::Cachable(cd)); }
}
virtual ClassContext::Private::~Private ( )
inlinevirtual

Definition at line 1873 of file context.cpp.

{}

Member Function Documentation

void ClassContext::Private::addExamples ( TemplateList list) const
inline

Definition at line 2354 of file context.cpp.

References TemplateStruct::alloc(), TemplateList::append(), ClassDef::exampleList(), ClassDef::hasExamples(), SDict< Example >::Iterator, m_classDef, and TemplateStruct::set().

Referenced by examples().

{
{
Example *ex;
for (it.toFirst();(ex=it.current());++it)
{
s->set("text",ex->name);
s->set("isLinkable",TRUE);
s->set("anchor",ex->anchor);
s->set("fileName",ex->file);
s->set("isReference",FALSE);
s->set("externalReference","");
list->append(s);
}
}
}
TemplateVariant ClassContext::Private::additionalInheritedMembers ( ) const
inline

Definition at line 2500 of file context.cpp.

References ClassContext::Private::Cachable::additionalInheritedMembers, InheritedMemberInfoListContext::addMemberList(), InheritedMemberInfoListContext::alloc(), SharedPtr< T >::get(), getCache(), Definition::getLanguage(), m_classDef, MemberListType_events, MemberListType_interfaces, MemberListType_pacAttribs, MemberListType_pacMethods, MemberListType_pacStaticAttribs, MemberListType_pacStaticMethods, MemberListType_pacTypes, MemberListType_priAttribs, MemberListType_priMethods, MemberListType_priSlots, MemberListType_priStaticAttribs, MemberListType_priStaticMethods, MemberListType_priTypes, MemberListType_proAttribs, MemberListType_proMethods, MemberListType_properties, MemberListType_proSlots, MemberListType_proStaticAttribs, MemberListType_proStaticMethods, MemberListType_proTypes, MemberListType_pubAttribs, MemberListType_pubMethods, MemberListType_pubSlots, MemberListType_pubStaticAttribs, MemberListType_pubStaticMethods, MemberListType_pubTypes, MemberListType_related, MemberListType_services, MemberListType_signals, SharedPtr< T >::reset(), SrcLangExt_ObjC, theTranslator, Translator::trClassMethods(), Translator::trEvents(), Translator::trInstanceMethods(), Translator::trInterfaces(), Translator::trPackageAttribs(), Translator::trPackageMembers(), Translator::trPackageTypes(), Translator::trPrivateAttribs(), Translator::trPrivateMembers(), Translator::trPrivateSlots(), Translator::trPrivateTypes(), Translator::trProperties(), Translator::trProtectedAttribs(), Translator::trProtectedMembers(), Translator::trProtectedSlots(), Translator::trProtectedTypes(), Translator::trPublicAttribs(), Translator::trPublicMembers(), Translator::trPublicSlots(), Translator::trPublicTypes(), Translator::trRelatedFunctions(), Translator::trServices(), Translator::trSignals(), Translator::trStaticPackageAttribs(), Translator::trStaticPackageMembers(), Translator::trStaticPrivateAttribs(), Translator::trStaticPrivateMembers(), Translator::trStaticProtectedAttribs(), Translator::trStaticProtectedMembers(), Translator::trStaticPublicAttribs(), and Translator::trStaticPublicMembers().

Referenced by Private().

{
Cachable &cache = getCache();
if (!cache.additionalInheritedMembers)
{
cache.additionalInheritedMembers.reset(ctx);
}
return cache.additionalInheritedMembers.get();
}
void ClassContext::Private::addMembers ( ClassDef cd,
MemberListType  lt 
) const
inline

Definition at line 2408 of file context.cpp.

References ClassContext::Private::Cachable::allMembers, MemberList::append(), getCache(), ClassDef::getMemberList(), and MemberDef::isBriefSectionVisible().

Referenced by members().

{
MemberList *ml = cd->getMemberList(lt);
if (ml)
{
Cachable &cache = getCache();
const MemberDef *md;
for (li.toFirst();(md=li.current());++li)
{
{
cache.allMembers.append(md);
}
}
}
}
void ClassContext::Private::addTemplateDecls ( Definition d,
TemplateList tl 
) const
inline

Definition at line 2335 of file context.cpp.

References ArgumentListContext::alloc(), TemplateList::append(), DefinitionIntf::definitionType(), Definition::getOuterScope(), DefinitionContext< ClassContext::Private >::relPathAsString(), ClassDef::templateArguments(), and DefinitionIntf::TypeClass.

Referenced by templateDecls().

{
{
Definition *parent = d->getOuterScope();
if (parent)
{
addTemplateDecls(parent,tl);
}
ClassDef *cd=(ClassDef *)d;
if (cd->templateArguments())
{
// since a TemplateVariant does take ownership of the object, we add it
// a separate list just to be able to delete it and avoid a memory leak
tl->append(al);
}
}
}
TemplateVariant ClassContext::Private::allMembersFileName ( ) const
inline

Definition at line 2480 of file context.cpp.

References ClassDef::getMemberListFileName(), and m_classDef.

Referenced by Private().

TemplateVariant ClassContext::Private::allMembersList ( ) const
inline

Definition at line 2463 of file context.cpp.

References ClassContext::Private::Cachable::allMembersList, AllMembersListContext::alloc(), SharedPtr< T >::get(), getCache(), m_classDef, ClassDef::memberNameInfoSDict(), and SharedPtr< T >::reset().

Referenced by Private().

{
Cachable &cache = getCache();
if (!cache.allMembersList)
{
{
cache.allMembersList.reset(ml);
}
else
{
cache.allMembersList.reset(AllMembersListContext::alloc());
}
}
return cache.allMembersList.get();
}
TemplateVariant ClassContext::Private::categoryOf ( ) const
inline

Definition at line 2547 of file context.cpp.

References ClassContext::alloc(), ClassDef::categoryOf(), ClassContext::Private::Cachable::categoryOf, SharedPtr< T >::get(), getCache(), m_classDef, and SharedPtr< T >::reset().

Referenced by Private().

{
Cachable &cache = getCache();
if (!cache.categoryOf && m_classDef->categoryOf())
{
cache.categoryOf.reset(ClassContext::alloc(m_classDef->categoryOf()));
}
if (cache.categoryOf)
{
return cache.categoryOf.get();
}
else
{
return TemplateVariant(FALSE);
}
}
TemplateVariant ClassContext::Private::classes ( ) const
inline

Definition at line 2283 of file context.cpp.

References ClassContext::alloc(), TemplateList::alloc(), TemplateList::append(), ClassContext::Private::Cachable::classes, SharedPtr< T >::get(), getCache(), ClassDef::getClassSDict(), SDict< ClassDef >::Iterator, m_classDef, and SharedPtr< T >::reset().

Referenced by Private().

{
Cachable &cache = getCache();
if (!cache.classes)
{
{
ClassDef *cd;
for (sdi.toFirst();(cd=sdi.current());++sdi)
{
if (cd->visibleInParentsDeclList())
{
classList->append(ClassContext::alloc(cd));
}
}
}
cache.classes.reset(classList);
}
return cache.classes.get();
}
TemplateVariant ClassContext::Private::collaborationDiagram ( ) const
inline
TemplateVariant ClassContext::Private::compoundType ( ) const
inline

Definition at line 2331 of file context.cpp.

References ClassDef::compoundTypeString(), and m_classDef.

Referenced by Private().

TemplateVariant ClassContext::Private::detailedConstructors ( ) const
inline
TemplateVariant ClassContext::Private::detailedEnums ( ) const
inline
TemplateVariant ClassContext::Private::detailedEvents ( ) const
inline
TemplateVariant ClassContext::Private::detailedInterfaces ( ) const
inline
TemplateVariant ClassContext::Private::detailedMethods ( ) const
inline
TemplateVariant ClassContext::Private::detailedProperties ( ) const
inline
TemplateVariant ClassContext::Private::detailedRelated ( ) const
inline
TemplateVariant ClassContext::Private::detailedServices ( ) const
inline
TemplateVariant ClassContext::Private::detailedTypedefs ( ) const
inline
TemplateVariant ClassContext::Private::detailedVariables ( ) const
inline
TemplateVariant ClassContext::Private::events ( ) const
inline
TemplateVariant ClassContext::Private::examples ( ) const
inline

Definition at line 2397 of file context.cpp.

References addExamples(), TemplateList::alloc(), ClassContext::Private::Cachable::examples, SharedPtr< T >::get(), getCache(), and SharedPtr< T >::reset().

Referenced by Private().

{
Cachable &cache = getCache();
if (!cache.examples)
{
addExamples(exampleList);
cache.examples.reset(exampleList);
}
return cache.examples.get();
}
TemplateVariant ClassContext::Private::friends ( ) const
inline
TemplateVariant ClassContext::Private::generatedFromFiles ( ) const
inline

Definition at line 1894 of file context.cpp.

References ClassDef::generatedFromFiles(), and m_classDef.

Referenced by Private().

TemplateVariant ClassContext::Private::get ( const char *  n) const
inline

Definition at line 1874 of file context.cpp.

References s_inst.

Referenced by ClassContext::get().

{
return s_inst.get(this,n);
}
Cachable& ClassContext::Private::getCache ( ) const
inlineprivate
DotClassGraph* ClassContext::Private::getClassGraph ( ) const
inline

Definition at line 1907 of file context.cpp.

References ClassContext::Private::Cachable::classGraph, ScopedPtr< T >::get(), getCache(), DotNode::Inheritance, m_classDef, and ScopedPtr< T >::reset().

Referenced by hasInheritanceDiagram(), and inheritanceDiagram().

{
Cachable &cache = getCache();
if (!cache.classGraph)
{
cache.classGraph.reset(new DotClassGraph(m_classDef,DotNode::Inheritance));
}
return cache.classGraph.get();
}
DotClassGraph* ClassContext::Private::getCollaborationGraph ( ) const
inline

Definition at line 2013 of file context.cpp.

References DotNode::Collaboration, ClassContext::Private::Cachable::collaborationGraph, ScopedPtr< T >::get(), getCache(), m_classDef, and ScopedPtr< T >::reset().

Referenced by collaborationDiagram(), and hasCollaborationDiagram().

{
Cachable &cache = getCache();
if (!cache.collaborationGraph)
{
cache.collaborationGraph.reset(new DotClassGraph(m_classDef,DotNode::Collaboration));
}
return cache.collaborationGraph.get();
}
TemplateVariant ClassContext::Private::getMemberList ( SharedPtr< MemberListInfoContext > &  list,
MemberListType  type,
const char *  title,
bool  detailed = FALSE 
) const
inline
TemplateVariant ClassContext::Private::hasCollaborationDiagram ( ) const
inline

Definition at line 2022 of file context.cpp.

References Config_getBool, getCollaborationGraph(), and DotClassGraph::isTrivial().

Referenced by Private().

{
static bool haveDot = Config_getBool(HAVE_DOT);
return haveDot && !getCollaborationGraph()->isTrivial();
}
TemplateVariant ClassContext::Private::hasDetails ( ) const
inline

Definition at line 1890 of file context.cpp.

References ClassDef::hasDetailedDescription(), and m_classDef.

Referenced by Private().

TemplateVariant ClassContext::Private::hasInheritanceDiagram ( ) const
inline

Definition at line 1925 of file context.cpp.

References Config_getBool, getClassGraph(), DotClassGraph::isTooBig(), DotClassGraph::isTrivial(), and numInheritanceNodes().

Referenced by Private().

{
bool result=FALSE;
static bool haveDot = Config_getBool(HAVE_DOT);
static bool classDiagrams = Config_getBool(CLASS_DIAGRAMS);
static bool classGraph = Config_getBool(CLASS_GRAPH);
if (haveDot && (classDiagrams || classGraph))
{
result = !cg->isTrivial() && !cg->isTooBig();
}
else if (classDiagrams)
{
result = numInheritanceNodes()>0;
}
return result;
}
TemplateVariant ClassContext::Private::highlight ( ) const
inline

Definition at line 1882 of file context.cpp.

Referenced by Private().

{
return TemplateVariant("classes");
}
TemplateVariant ClassContext::Private::includeInfo ( ) const
inline

Definition at line 2065 of file context.cpp.

References IncludeInfoContext::alloc(), SharedPtr< T >::get(), getCache(), Definition::getLanguage(), ClassDef::includeInfo(), ClassContext::Private::Cachable::includeInfo, m_classDef, and SharedPtr< T >::reset().

Referenced by Private().

{
Cachable &cache = getCache();
if (!cache.includeInfo && m_classDef->includeInfo())
{
}
if (cache.includeInfo)
{
return cache.includeInfo.get();
}
else
{
return TemplateVariant(FALSE);
}
}
TemplateVariant ClassContext::Private::inheritanceDiagram ( ) const
inline

Definition at line 1942 of file context.cpp.

References Config_getBool, ContextOutputFormat_Html, ContextOutputFormat_Latex, convertToHtml(), convertToId(), ClassDef::displayName(), ContextGlobals::dynSectionId, endl(), EOF_Html, EOF_LaTeX, err(), g_globals, getClassGraph(), ClassDef::getOutputFileBase(), GOF_BITMAP, GOF_EPS, Doxygen::htmlFileExtension, m_classDef, DefinitionContext< ClassContext::Private >::name(), ContextGlobals::outputDir, ContextGlobals::outputFormat, portable_pathSeparator(), DefinitionContext< ClassContext::Private >::relPathAsString(), ClassDiagram::writeFigure(), DotClassGraph::writeGraph(), and ClassDiagram::writeImage().

Referenced by Private().

{
QGString result;
static bool haveDot = Config_getBool(HAVE_DOT);
static bool classDiagrams = Config_getBool(CLASS_DIAGRAMS);
static bool classGraph = Config_getBool(CLASS_GRAPH);
if (haveDot && (classDiagrams || classGraph))
{
FTextStream t(&result);
{
{
);
}
break;
{
);
}
break;
// TODO: support other generators
default:
err("context.cpp: output format not yet supported");
break;
}
}
else if (classDiagrams)
{
FTextStream t(&result);
{
{
t << "<div class=\"center\">" << endl;
t << "<img src=\"";
t << ".png\" usemap=\"#" << convertToId(name) << "_map\" alt=\"\"/>" << endl;
t << "<map id=\"" << convertToId(name) << "_map\" name=\"" << name << "_map\">" << endl;
d.writeImage(t,g_globals.outputDir,
t << "</div>";
}
break;
{
}
break;
// TODO: support other generators
default:
err("context.cpp: output format not yet supported");
break;
}
}
return TemplateVariant(result.data(),TRUE);
}
TemplateVariant ClassContext::Private::inheritedBy ( ) const
inline

Definition at line 2090 of file context.cpp.

References InheritanceListContext::alloc(), SharedPtr< T >::get(), getCache(), ClassContext::Private::Cachable::inheritedByList, m_classDef, SharedPtr< T >::reset(), and ClassDef::subClasses().

Referenced by Private().

{
Cachable &cache = getCache();
if (!cache.inheritedByList)
{
cache.inheritedByList.reset(InheritanceListContext::alloc(m_classDef->subClasses(),FALSE));
}
return cache.inheritedByList.get();
}
TemplateVariant ClassContext::Private::inherits ( ) const
inline

Definition at line 2081 of file context.cpp.

References InheritanceListContext::alloc(), ClassDef::baseClasses(), SharedPtr< T >::get(), getCache(), ClassContext::Private::Cachable::inheritsList, m_classDef, and SharedPtr< T >::reset().

Referenced by Private().

{
Cachable &cache = getCache();
if (!cache.inheritsList)
{
cache.inheritsList.reset(InheritanceListContext::alloc(m_classDef->baseClasses(),TRUE));
}
return cache.inheritsList.get();
}
TemplateVariant ClassContext::Private::innerClasses ( ) const
inline

Definition at line 2305 of file context.cpp.

References ClassContext::alloc(), TemplateList::alloc(), TemplateList::append(), SharedPtr< T >::get(), getCache(), ClassDef::getClassSDict(), ClassContext::Private::Cachable::innerClasses, SDict< ClassDef >::Iterator, m_classDef, and SharedPtr< T >::reset().

Referenced by Private().

{
Cachable &cache = getCache();
if (!cache.innerClasses)
{
{
ClassDef *cd;
for (sdi.toFirst();(cd=sdi.current());++sdi)
{
if (cd->name().find('@')==-1 &&
cd->isLinkableInProject() &&
cd->isEmbeddedInOuterScope() &&
cd->partOfGroups()==0
)
{
classList->append(ClassContext::alloc(cd));
}
}
}
cache.innerClasses.reset(classList);
}
return cache.innerClasses.get();
}
TemplateVariant ClassContext::Private::isSimple ( ) const
inline

Definition at line 2543 of file context.cpp.

References ClassDef::isSimple(), and m_classDef.

Referenced by Private().

{
return m_classDef->isSimple();
}
TemplateVariant ClassContext::Private::memberGroups ( ) const
inline
TemplateVariant ClassContext::Private::members ( ) const
inline

Definition at line 2425 of file context.cpp.

References addMembers(), ClassContext::Private::Cachable::allMembers, MemberListContext::alloc(), SharedPtr< T >::get(), getCache(), m_classDef, MemberListType_events, MemberListType_interfaces, MemberListType_pacAttribs, MemberListType_pacMethods, MemberListType_pacStaticAttribs, MemberListType_pacStaticMethods, MemberListType_pacTypes, MemberListType_priAttribs, MemberListType_priMethods, MemberListType_priSlots, MemberListType_priStaticAttribs, MemberListType_priStaticMethods, MemberListType_priTypes, MemberListType_proAttribs, MemberListType_proMethods, MemberListType_properties, MemberListType_proSlots, MemberListType_proStaticAttribs, MemberListType_proStaticMethods, MemberListType_proTypes, MemberListType_pubAttribs, MemberListType_pubMethods, MemberListType_pubSlots, MemberListType_pubStaticAttribs, MemberListType_pubStaticMethods, MemberListType_pubTypes, MemberListType_related, MemberListType_services, MemberListType_signals, ClassContext::Private::Cachable::members, and SharedPtr< T >::reset().

Referenced by Private().

{
Cachable &cache = getCache();
if (!cache.members)
{
cache.members.reset(MemberListContext::alloc(&cache.allMembers));
}
return cache.members.get();
}
int ClassContext::Private::numInheritanceNodes ( ) const
inline

Definition at line 1916 of file context.cpp.

References ClassDef::countInheritanceNodes(), getCache(), ClassContext::Private::Cachable::inheritanceNodes, and m_classDef.

Referenced by hasInheritanceDiagram().

{
Cachable &cache = getCache();
if (cache.inheritanceNodes==-1)
{
cache.inheritanceNodes=m_classDef->countInheritanceNodes();
}
return cache.inheritanceNodes>0;
}
TemplateVariant ClassContext::Private::packageAttributes ( ) const
inline
TemplateVariant ClassContext::Private::packageMethods ( ) const
inline
TemplateVariant ClassContext::Private::packageStaticAttributes ( ) const
inline
TemplateVariant ClassContext::Private::packageStaticMethods ( ) const
inline
TemplateVariant ClassContext::Private::packageTypes ( ) const
inline
TemplateVariant ClassContext::Private::privateAttributes ( ) const
inline
TemplateVariant ClassContext::Private::privateMethods ( ) const
inline
TemplateVariant ClassContext::Private::privateSlots ( ) const
inline
TemplateVariant ClassContext::Private::privateStaticAttributes ( ) const
inline
TemplateVariant ClassContext::Private::privateStaticMethods ( ) const
inline
TemplateVariant ClassContext::Private::privateTypes ( ) const
inline
TemplateVariant ClassContext::Private::properties ( ) const
inline
TemplateVariant ClassContext::Private::protectedAttributes ( ) const
inline
TemplateVariant ClassContext::Private::protectedMethods ( ) const
inline
TemplateVariant ClassContext::Private::protectedSlots ( ) const
inline
TemplateVariant ClassContext::Private::protectedStaticAttributes ( ) const
inline
TemplateVariant ClassContext::Private::protectedStaticMethods ( ) const
inline
TemplateVariant ClassContext::Private::protectedTypes ( ) const
inline
TemplateVariant ClassContext::Private::publicAttributes ( ) const
inline
TemplateVariant ClassContext::Private::publicMethods ( ) const
inline
TemplateVariant ClassContext::Private::publicSlots ( ) const
inline
TemplateVariant ClassContext::Private::publicStaticAttributes ( ) const
inline
TemplateVariant ClassContext::Private::publicStaticMethods ( ) const
inline
TemplateVariant ClassContext::Private::publicTypes ( ) const
inline
TemplateVariant ClassContext::Private::related ( ) const
inline
TemplateVariant ClassContext::Private::signals ( ) const
inline
TemplateVariant ClassContext::Private::subHighlight ( ) const
inline

Definition at line 1886 of file context.cpp.

Referenced by Private().

{
return TemplateVariant("");
}
TemplateVariant ClassContext::Private::templateDecls ( ) const
inline

Definition at line 2373 of file context.cpp.

References addTemplateDecls(), TemplateList::alloc(), SharedPtr< T >::get(), getCache(), m_classDef, SharedPtr< T >::reset(), and ClassContext::Private::Cachable::templateDecls.

Referenced by Private().

{
Cachable &cache = getCache();
if (!cache.templateDecls)
{
cache.templateDecls.reset(tl);
}
return cache.templateDecls.get();
}
TemplateVariant ClassContext::Private::title ( ) const
inline

Definition at line 1878 of file context.cpp.

References m_classDef, and ClassDef::title().

Referenced by Private().

{
}
TemplateVariant ClassContext::Private::typeConstraints ( ) const
inline
TemplateVariant ClassContext::Private::unoIDLInterfaces ( ) const
inline
TemplateVariant ClassContext::Private::unoIDLServices ( ) const
inline
TemplateVariant ClassContext::Private::usedFiles ( ) const
inline

Definition at line 1898 of file context.cpp.

References UsedFilesContext::alloc(), SharedPtr< T >::get(), getCache(), m_classDef, SharedPtr< T >::reset(), and ClassContext::Private::Cachable::usedFiles.

Referenced by Private().

{
Cachable &cache = getCache();
if (!cache.usedFiles)
{
cache.usedFiles.reset(UsedFilesContext::alloc(m_classDef));
}
return cache.usedFiles.get();
}

Member Data Documentation

ClassDef* ClassContext::Private::m_classDef
private
PropertyMapper< ClassContext::Private > ClassContext::Private::s_inst
staticprivate

Definition at line 2636 of file context.cpp.

Referenced by get(), and Private().


The documentation for this class was generated from the following file: