I also encountered the same problem (with doxygen 1.4.4 and 1.3.9.1).
The attached is my quick hack for
tools/boostbook/xsl/doxygen/doxygen2boostbook.xsl, which should solve
the problem.

Best regards,
Synge


From: Freedamzk <[EMAIL PROTECTED]>
Date: Sun, 18 Sep 2005 12:18:41 +0200
> 
> > It's always a good idea to provide a (minimal) test case that
> > we can try. Otherwise, it will be difficult to find an answer.
> 
> Here I attach 3 files: a dummy.qbk file, a Jamfile.v2 to build the 
> documentation and a dummy_classes.hpp header file.
> 
> Copy 3 files to $(BOOST_ROOT)/libs/quickbook-doxygen-error/ and generate 
> documentation via:
> 
> $ quickbook dummy.qbk
> $ bjam --v2
> 
> It will create a html folder with index.html being the doxygen 
> reference. In the header file class dummy_class is declared inside 
> boost::dummy_namespace namespace and the class extern_dummy_class is 
> declared in the global scope. The reference will generate just one 
> description for extern_dummy_class but two for dummy_class (one inside 
> boost::dummy_namespace and another one in the global scope).
> 
> If you need more data, please let me know,
> 
> Cheers,
> 
> Ion
> 
*** doxygen2boostbook.xsl.orig  Wed Sep 21 18:15:45 2005
--- doxygen2boostbook.xsl       Wed Sep 21 18:16:56 2005
***************
*** 409,419 ****
      <xsl:param name="with-namespace-refs"/>
      <xsl:param name="in-file"/>
  
!     <xsl:apply-templates select="key('compounds-by-id', @refid)">
!       <xsl:with-param name="with-namespace-refs" 
!         select="$with-namespace-refs"/>
!       <xsl:with-param name="in-file" select="$in-file"/>
!     </xsl:apply-templates>
    </xsl:template>
  
    <xsl:template match="innerclass">
--- 409,424 ----
      <xsl:param name="with-namespace-refs"/>
      <xsl:param name="in-file"/>
  
!     <xsl:variable name="fullname" 
!       select="string(key('compounds-by-id', @refid)/compoundname)"/>
! 
!     <xsl:if test="not(contains($fullname, '::'))">
!       <xsl:apply-templates select="key('compounds-by-id', @refid)">
!         <xsl:with-param name="with-namespace-refs" 
!           select="$with-namespace-refs"/>
!         <xsl:with-param name="in-file" select="$in-file"/>
!       </xsl:apply-templates>
!     </xsl:if>
    </xsl:template>
  
    <xsl:template match="innerclass">

Reply via email to