Orb/Doxygen/src/memberdef.cpp
changeset 4 468f4c8d3d5b
parent 0 42188c7ea2d9
equal deleted inserted replaced
3:d8fccb2cd802 4:468f4c8d3d5b
     1 /******************************************************************************
     1 /******************************************************************************
     2  *
     2  *
     3  * 
     3  * 
     4  *
     4  *
     5  * Copyright (C) 1997-2008 by Dimitri van Heesch.
     5  * Copyright (C) 1997-2010 by Dimitri van Heesch.
     6  *
     6  *
     7  * Permission to use, copy, modify, and distribute this software and its
     7  * Permission to use, copy, modify, and distribute this software and its
     8  * documentation under the terms of the GNU General Public License is hereby 
     8  * documentation under the terms of the GNU General Public License is hereby 
     9  * granted. No representations are made about the suitability of this software 
     9  * granted. No representations are made about the suitability of this software 
    10  * for any purpose. It is provided "as is" without express or implied warranty.
    10  * for any purpose. It is provided "as is" without express or implied warranty.
   628                      const char *t,const char *na,const char *a,const char *e,
   628                      const char *t,const char *na,const char *a,const char *e,
   629                      Protection p,Specifier v,bool s,Relationship r,MemberType mt,
   629                      Protection p,Specifier v,bool s,Relationship r,MemberType mt,
   630                      const ArgumentList *tal,const ArgumentList *al
   630                      const ArgumentList *tal,const ArgumentList *al
   631                     ) : Definition(df,dl,removeRedundantWhiteSpace(na))
   631                     ) : Definition(df,dl,removeRedundantWhiteSpace(na))
   632 {
   632 {
       
   633   //printf("MemberDef::MemberDef(%s)\n",na);
   633   m_storagePos=-1;
   634   m_storagePos=-1;
   634   m_cacheHandle=-1;
   635   m_cacheHandle=-1;
   635   m_impl = new MemberDefImpl;
   636   m_impl = new MemberDefImpl;
   636   m_impl->init(this,t,a,e,p,v,s,r,mt,tal,al);
   637   m_impl->init(this,t,a,e,p,v,s,r,mt,tal,al);
   637   m_flushPending = FALSE;
   638   m_flushPending = FALSE;
  1978       ol.parseText(theTranslator->trInitialValue());
  1979       ol.parseText(theTranslator->trInitialValue());
  1979     ol.endBold();
  1980     ol.endBold();
  1980     ParserInterface *pIntf = Doxygen::parserManager->getParser(getDefFileExtension());
  1981     ParserInterface *pIntf = Doxygen::parserManager->getParser(getDefFileExtension());
  1981     pIntf->resetCodeParserState();
  1982     pIntf->resetCodeParserState();
  1982     ol.startCodeFragment();
  1983     ol.startCodeFragment();
  1983     pIntf->parseCode(ol,scopeName,m_impl->initializer,FALSE,0);
  1984     pIntf->parseCode(ol,scopeName,m_impl->initializer,FALSE,0,getFileDef(),
       
  1985                      -1,-1,TRUE,this,FALSE);
  1984     ol.endCodeFragment();
  1986     ol.endCodeFragment();
  1985   }
  1987   }
  1986 
  1988 
  1987   QCString brief           = briefDescription();
  1989   QCString brief           = briefDescription();
  1988   QCString detailed        = documentation();
  1990   QCString detailed        = documentation();
  2685     {
  2687     {
  2686       memName = "[" + pd->name() + " " + name() + "]";
  2688       memName = "[" + pd->name() + " " + name() + "]";
  2687     }
  2689     }
  2688     else if (optimizeOutputJava)
  2690     else if (optimizeOutputJava)
  2689     {
  2691     {
  2690       if (!hideScopeNames) memName.prepend(pd->name()+".");
  2692       if (!hideScopeNames && pd!=Doxygen::globalScope) memName.prepend(pd->name()+".");
  2691       memArgs = argsString();
  2693       memArgs = argsString();
  2692     }
  2694     }
  2693     else
  2695     else
  2694     {
  2696     {
  2695       if (!hideScopeNames) memName.prepend(pd->name()+"::");
  2697       if (!hideScopeNames && pd!=Doxygen::globalScope) memName.prepend(pd->name()+"::");
  2696       memArgs = argsString();
  2698       memArgs = argsString();
  2697     }
  2699     }
  2698   }
  2700   }
  2699   LockingPtr< QList<ListItemInfo> > xrefItems = xrefListItems();
  2701   LockingPtr< QList<ListItemInfo> > xrefItems = xrefListItems();
  2700   if (xrefItems!=0)
  2702   if (xrefItems!=0)
  2701   {
  2703   {
  2702     addRefItem(xrefItems.pointer(),
  2704     addRefItem(xrefItems.pointer(),
  2703         qualifiedName(),
  2705         qualifiedName()+argsString(), // argsString is needed for overloaded functions (see bug 609624)
  2704         memLabel,
  2706         memLabel,
  2705         getOutputFileBase()+"#"+anchor(),memName,memArgs);
  2707         getOutputFileBase()+"#"+anchor(),memName,memArgs);
  2706   }
  2708   }
  2707 }
  2709 }
  2708 
  2710