summaryrefslogtreecommitdiff
path: root/autodoc/source/display/html/hdimpl.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'autodoc/source/display/html/hdimpl.cxx')
-rw-r--r--autodoc/source/display/html/hdimpl.cxx548
1 files changed, 0 insertions, 548 deletions
diff --git a/autodoc/source/display/html/hdimpl.cxx b/autodoc/source/display/html/hdimpl.cxx
deleted file mode 100644
index c3d5bd84afbd..000000000000
--- a/autodoc/source/display/html/hdimpl.cxx
+++ /dev/null
@@ -1,548 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#include <precomp.h>
-#include "hdimpl.hxx"
-
-
-// NOT FULLY DEFINED SERVICES
-#include <stdlib.h>
-#include <stdio.h>
-#include <ary/ceslot.hxx>
-#include <ary/qualiname.hxx>
-#include <ary/cpp/c_class.hxx>
-#include <ary/cpp/c_de.hxx>
-#include <ary/cpp/c_enum.hxx>
-#include <ary/cpp/c_funct.hxx>
-#include <ary/cpp/c_gate.hxx>
-#include <ary/cpp/cp_ce.hxx>
-#include <udm/html/htmlitem.hxx>
-#include "cre_link.hxx"
-#include "hd_docu.hxx"
-#include "html_kit.hxx"
-#include "opageenv.hxx"
-#include "pagemake.hxx"
-#include "strconst.hxx"
-
-
-using namespace csi;
-
-
-//******************** HtmlDisplay_Impl *********************//
-
-HtmlDisplay_Impl::~HtmlDisplay_Impl()
-{
-}
-
-HtmlDisplay_Impl::HtmlDisplay_Impl( OuputPage_Environment & io_rEnv )
- : pEnv(&io_rEnv)
- // aWriteHelper
-{
-}
-
-
-//******************** Free Functions *********************//
-
-
-
-namespace dshelp
-{
-
-void
-DisplaySlot( ary::Display & o_rDisplay,
- const ary::AryGroup & i_rGroup,
- ary::SlotAccessId i_nSlot )
-{
- ary::Slot_AutoPtr pSlot( i_rGroup.Create_Slot(i_nSlot) );
- pSlot->StoreAt( o_rDisplay );
-}
-
-
-const char *
-PathUp( uintt i_nLevels )
-{
- static char sResult[300];
-
- sResult[0] = NULCH;
- for ( uintt lev = 0; lev < i_nLevels; ++lev )
- {
- strcat( sResult, "../"); // SAFE STRCAT (#100211# - checked)
- }
- return sResult;
-}
-
-const char *
-PathPerLevelsUp( uintt i_nLevels,
- const char * i_nPathBelowDestinationLevel )
-{
- static char sResult[500];
- strcpy( sResult, PathUp(i_nLevels) ); // SAFE STRCPY (#100211# - checked)
- // KORR_FUTURE: Make it still safer here:
- strcat( sResult, i_nPathBelowDestinationLevel ); // SAFE STRCAT (#100211# - checked)
- return sResult;
-}
-
-
-const char *
-PathPerRoot( const OuputPage_Environment & i_rEnv,
- const char * i_sPathFromRootDir )
-{
- return PathPerLevelsUp( i_rEnv.Depth(), i_sPathFromRootDir );
-}
-
-const char *
-PathPerNamespace( const OuputPage_Environment & i_rEnv,
- const char * i_sPathFromNamespaceDir )
-{
- const ary::cpp::Namespace * pNsp = i_rEnv.CurNamespace();
- if ( pNsp == 0 )
- return "";
-
- uintt nCount = i_rEnv.Depth() - (pNsp->Depth() + 1) ;
- csv_assert( nCount < 100 );
- return PathPerLevelsUp( nCount, i_sPathFromNamespaceDir );
-}
-
-const char *
-HtmlFileName( const char * i_sPrefix,
- const char * i_sEntityName )
-{
- // KORR_FUTURE: Make it still safer here:
- static char sResult[300];
- strcpy( sResult, i_sPrefix ); // SAFE STRCPY (#100211# - checked)
- strcat( sResult, i_sEntityName ); // SAFE STRCAT (#100211# - checked)
- strcat( sResult, ".html" ); // SAFE STRCAT (#100211# - checked)
- return sResult;
-}
-
-const char *
-Path2Class( uintt i_nLevelsUp,
- const char * i_sClassLocalName )
-{
- return PathPerLevelsUp( i_nLevelsUp, ClassFileName(i_sClassLocalName) );
-}
-
-const char *
-Path2Child( const char * i_sFileName,
- const char * i_sSubDir )
-{
- static char sResult[400];
- if ( i_sSubDir != 0 )
- {
- // KORR_FUTURE: Make it still safer here:
- strcpy( sResult, i_sSubDir ); // SAFE STRCPY (#100211# - checked)
- strcat( sResult, "/" ); // SAFE STRCAT (#100211# - checked)
- }
- else
- {
- sResult[0] = NULCH;
- }
-
- strcat( sResult, i_sFileName ); // SAFE STRCAT (#100211# - checked)
- return sResult;
-}
-
-const char *
-Path2ChildNamespace( const char * i_sLocalName )
-{
- return Path2Child( C_sHFN_Namespace, i_sLocalName );
-}
-
-String
-OperationLink( const ary::cpp::Gate & ,
- const String & i_sOpName,
- ary::cpp::Ce_id i_nOpId,
- const char * i_sPrePath )
-{
- StreamLock
- slResult(3000);
- StreamStr &
- sResult = slResult();
-
- sResult
- << i_sPrePath
- << "#"
- << i_sOpName
- << "-"
- << i_nOpId.Value();
-
-
-
- return sResult.c_str();
-}
-
-const char *
-DataLink( const String & i_sLocalName,
- const char * i_sPrePath )
-{
- StreamLock
- slResult(3000);
- StreamStr &
- sResult = slResult();
-
- sResult
- << i_sPrePath
- << "#"
- << i_sLocalName;
-
- return sResult.c_str();
-}
-
-void
-Get_LinkedTypeText( csi::xml::Element & o_rOut,
- const OuputPage_Environment & i_rEnv,
- ary::cpp::Type_id i_nId,
- bool i_bWithAbsolutifier )
-{
- if (NOT i_nId.IsValid())
- return;
-
- const char * sPreName = "";
- const char * sName = "";
- const char * sPostName = "";
-
- if ( NOT Get_TypeText( sPreName,
- sName,
- sPostName,
- i_nId,
- i_rEnv.Gate() ) )
- return;
-
- if ( NOT i_bWithAbsolutifier AND strncmp(sPreName,"::",2) == 0 )
- sPreName+=2;
-
- const ary::cpp::CodeEntity *
- pCe = i_rEnv.Gate().Search_RelatedCe(i_nId);
-
- String sLink;
- if ( pCe != 0 )
- {
- sLink = Link2Ce(i_rEnv,*pCe);
- }
- else
- {
- if ( strstr(sPreName,"com::sun::star") != 0 )
- {
- static StreamStr aLink(400);
- aLink.seekp(0);
- aLink << PathPerRoot(i_rEnv, "../../common/ref");
- if ( *sPreName != ':' )
- aLink << '/';
- for ( const char * s = sPreName;
- *s != 0;
- ++s )
- {
- if ( *s == ':' )
- {
- aLink << '/';
- ++s;
- }
- else
- {
- aLink << *s;
- }
- } // end for
- aLink << sName
- << ".html";
- sLink = aLink.c_str();
- }
- } // endif( pCe != 0 )
-
- o_rOut
- << sPreName;
- csi::xml::Element &
- o_Goon = sLink.length() > 0
- ? o_rOut >> * new html::Link( sLink.c_str() )
- : o_rOut;
- o_Goon
- << sName;
- o_rOut
- << sPostName;
-}
-
-void
-Create_ChildListLabel( csi::xml::Element & o_rParentElement,
- const char * i_sLabel )
-{
- if ( NOT csv::no_str(i_sLabel) )
- {
- o_rParentElement
- >> *new html::Label(i_sLabel)
- << " ";
- }
-}
-
-DYN csi::html::Table &
-Create_ChildListTable( const char * i_sTitle )
-{
- html::Table *
- dpTable = new html::Table;
- *dpTable
- << new html::ClassAttr( "childlist")
- << new xml::AnAttribute( "border", "1" )
- << new xml::AnAttribute( "cellpadding", "5" )
- << new xml::AnAttribute( "cellspacing", "0" )
- << new html::WidthAttr( "100%" );
-
- html::TableRow &
- rRow = dpTable->AddRow();
- rRow
- << new html::ClassAttr("subtitle")
- >> *new html::TableCell
- << new xml::AnAttribute( "colspan","2" )
- >> *new html::Headline(4)
- << i_sTitle;
- return *dpTable;
-}
-
-const char *
-Link2Ce( const OuputPage_Environment & i_rEnv,
- const ary::cpp::CodeEntity & i_rCe )
-{
- const uintt nMaxSize
- = 3000;
- static char sLink[nMaxSize];
- static LinkCreator aLinkCreator( &sLink[0], nMaxSize );
- sLink[0] = NULCH;
-
- aLinkCreator.SetEnv(i_rEnv);
- i_rCe.Accept(aLinkCreator);
-
- return sLink;
-}
-
-const char *
-Link2CppDefinition( const OuputPage_Environment & i_rEnv,
- const ary::cpp::DefineEntity & i_rDef )
-{
- const uintt nMaxSize
- = 1000;
- static char sLink[nMaxSize];
- static LinkCreator aLinkCreator( &sLink[0], nMaxSize );
- sLink[0] = NULCH;
-
- aLinkCreator.SetEnv(i_rEnv);
- i_rDef.Accept(aLinkCreator);
-
- return sLink;
-}
-
-const ary::cpp::CodeEntity *
-FindUnambiguousCe( const OuputPage_Environment & i_rEnv,
- const ary::QualifiedName & i_rQuName,
- const ary::cpp::Class * i_pJustDocumentedClass )
-{
- if ( i_rEnv.CurNamespace() == 0 )
- return 0;
-
- const ary::cpp::CodeEntity * ret = 0;
-
- if ( NOT i_rQuName.IsQualified() )
- {
- if ( i_pJustDocumentedClass != 0 )
- ret = i_rEnv.Gate().Ces().Search_CeLocal( i_rQuName.LocalName(),
- i_rQuName.IsFunction(),
- *i_rEnv.CurNamespace(),
- i_pJustDocumentedClass );
- if (ret != 0)
- return ret;
-
- ret = i_rEnv.Gate().Ces().Search_CeLocal( i_rQuName.LocalName(),
- i_rQuName.IsFunction(),
- *i_rEnv.CurNamespace(),
- i_rEnv.CurClass() );
- }
- if (ret != 0)
- return ret;
-
- return i_rEnv.Gate().Ces().Search_CeAbsolute( *i_rEnv.CurNamespace(),
- i_rQuName );
-}
-
-void
-ShowDocu_On( csi::xml::Element & o_rOut,
- Docu_Display & io_rDisplay,
- const ary::cpp::CppEntity & i_rRE )
-{
- if (i_rRE.Docu().Data() != 0)
- {
- io_rDisplay.Assign_Out( o_rOut );
- io_rDisplay.Process(i_rRE.Docu());
- io_rDisplay.Unassign_Out();
- }
-}
-
-void
-WriteOut_TokenList( csi::xml::Element & o_rOut,
- const StringVector & i_rTokens,
- const char * i_sSeparator )
-{
- if ( i_rTokens.size() > 0 )
- {
- StringVector::const_iterator
- it = i_rTokens.begin();
- StringVector::const_iterator
- itEnd = i_rTokens.end();
-
- o_rOut << *it;
- for ( ++it; it != itEnd; ++it )
- {
- o_rOut << i_sSeparator << *it;
- }
- };
-
-}
-
-void
-EraseLeadingSpace( String & io_rStr )
-{
- if ( *io_rStr.c_str() < 33 AND io_rStr.length() > 0 )
- {
- const unsigned char * pNew;
- for ( pNew = (const unsigned char * ) io_rStr.c_str();
- *pNew < 33 AND *pNew != 0;
- ++pNew ) {}
- String sNew( (const char*)pNew );
- io_rStr = sNew;
- }
-}
-
-void
-WriteOut_LinkedFunctionText( csi::xml::Element & o_rTitleOut,
- adcdisp::ParameterTable & o_rParameters,
- const ary::cpp::Function & i_rFunction,
- const OuputPage_Environment & i_rEnv,
- bool * o_bIsConst,
- bool * o_bIsVirtual )
-{
- // write pre-name:
- const ary::cpp::FunctionFlags & rFlags = i_rFunction.Flags();
- if ( rFlags.IsStaticLocal() OR rFlags.IsStaticMember() )
- o_rTitleOut << "static ";
- if ( rFlags.IsExplicit() )
- o_rTitleOut << "explicit ";
- if ( rFlags.IsMutable() )
- o_rTitleOut << "mutable ";
- if ( i_rFunction.Virtuality() != ary::cpp::VIRTUAL_none )
- o_rTitleOut << "virtual ";
-// o_rTitleOut << new html::LineBreak;
-
- Get_LinkedTypeText( o_rTitleOut, i_rEnv, i_rFunction.ReturnType() );
-
- // write name:
- o_rTitleOut
- << " "
- >> *new html::Strong
- << i_rFunction.LocalName();
- o_rTitleOut
- << "(";
-
-
- csi::xml::Element * pOutLast = &o_rTitleOut;
-
- // write post-name:
- FunctionParam_Iterator fit;
- fit.Assign(i_rFunction);
-
- if (fit)
- {
- o_rParameters.AddEntry();
- Get_LinkedTypeText( o_rParameters.Type(), i_rEnv, fit.CurType() );
- o_rParameters.Type() << " ";
- o_rParameters.Name() << " " << fit.CurName();
-
- for ( ++fit; fit; ++fit )
- {
- o_rParameters.Name() << ",";
- o_rParameters.AddEntry();
- Get_LinkedTypeText( o_rParameters.Type(), i_rEnv, fit.CurType() );
- o_rParameters.Name() << fit.CurName();
- }
-
- pOutLast = &o_rParameters.Name();
- o_rParameters.Name() << " ";
- }
-
- *pOutLast << ")";
- if ( fit.IsFunctionConst() )
- {
- *pOutLast << " const";
- if ( o_bIsConst != 0 )
- *o_bIsConst = true;
- }
- if ( fit.IsFunctionVolatile() )
- {
- *pOutLast << " volatile";
- if ( o_bIsVirtual != 0 )
- *o_bIsVirtual = true;
- }
-
- // write Exceptions:
- const std::vector< ary::cpp::Type_id > *
- pThrow = i_rFunction.Exceptions();
- if ( pThrow)
- {
- std::vector< ary::cpp::Type_id >::const_iterator
- it = pThrow->begin();
- std::vector< ary::cpp::Type_id >::const_iterator
- it_end = pThrow->end();
-
- if (it != it_end)
- {
- o_rParameters.AddEntry();
- pOutLast = &o_rParameters.Name();
-
- o_rParameters.Name() << " throw( ";
- Get_LinkedTypeText(o_rParameters.Name(), i_rEnv, *it);
-
- for ( ++it; it != it_end; ++it )
- {
- o_rParameters.Name() << ", ";
- Get_LinkedTypeText(o_rParameters.Name(), i_rEnv, *it);
- }
- o_rParameters.Name() << " )";
- }
- else
- {
- *pOutLast << " throw()";
- }
- } // endif // pThrow
-
- // abstractness:
- if ( i_rFunction.Virtuality() == ary::cpp::VIRTUAL_abstract )
- *pOutLast << " = 0";
-
- // finish:
- *pOutLast << ";";
-}
-
-
-
-} // namespace dshelp
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */