diff options
author | David Ostrovsky <David.Ostrovsky@gmx.de> | 2012-05-02 20:16:10 +0200 |
---|---|---|
committer | David Tardon <dtardon@redhat.com> | 2012-05-04 09:42:22 +0200 |
commit | 3e0b2299ecbd7e532771a32af55a8f7910ba6688 (patch) | |
tree | c74cb23d854fccc3f9acf3b556a6b31247382551 /l10ntools/inc/l10ntools | |
parent | b71589aab00f2d0c23063d4638510161244e4f80 (diff) |
gbuild conversion l10ntools module
Change-Id: I Iea9a77f19856dd870eb72fa57249f959cdd7000c
Diffstat (limited to 'l10ntools/inc/l10ntools')
-rw-r--r-- | l10ntools/inc/l10ntools/HelpLinker.hxx | 107 |
1 files changed, 107 insertions, 0 deletions
diff --git a/l10ntools/inc/l10ntools/HelpLinker.hxx b/l10ntools/inc/l10ntools/HelpLinker.hxx new file mode 100644 index 000000000000..b718623154c3 --- /dev/null +++ b/l10ntools/inc/l10ntools/HelpLinker.hxx @@ -0,0 +1,107 @@ +/* -*- 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. + * + ************************************************************************/ + +#ifndef HELPLINKER_HXX +#define HELPLINKER_HXX + +#include <l10ntools/dllapi.h> +#include <libxslt/transform.h> + +#ifdef AIX +# undef _THREAD_SAFE +#endif + +#define DBHELP_ONLY + +class L10N_DLLPUBLIC IndexerPreProcessor +{ +private: + std::string m_aModuleName; + fs::path m_fsIndexBaseDir; + fs::path m_fsCaptionFilesDirName; + fs::path m_fsContentFilesDirName; + + xsltStylesheetPtr m_xsltStylesheetPtrCaption; + xsltStylesheetPtr m_xsltStylesheetPtrContent; + +public: + IndexerPreProcessor( const std::string& aModuleName, const fs::path& fsIndexBaseDir, + const fs::path& idxCaptionStylesheet, const fs::path& idxContentStylesheet ); + ~IndexerPreProcessor(); + + void processDocument( xmlDocPtr doc, const std::string& EncodedDocPath ); +}; + +class L10N_DLLPUBLIC HelpLinker +{ +public: + void main(std::vector<std::string> &args, + std::string* pExtensionPath = NULL, + std::string* pDestination = NULL, + const rtl::OUString* pOfficeHelpPath = NULL ) + + throw( HelpProcessingException ); + + HelpLinker() + : init(true) + , m_pIndexerPreProcessor(NULL) + {} + ~HelpLinker() + { delete m_pIndexerPreProcessor; } + +private: + int locCount, totCount; + Stringtable additionalFiles; + HashSet helpFiles; + fs::path sourceRoot; + fs::path embeddStylesheet; + fs::path idxCaptionStylesheet; + fs::path idxContentStylesheet; + fs::path zipdir; + fs::path outputFile; + std::string extsource; + std::string extdestination; + std::string module; + std::string lang; + std::string extensionPath; + std::string extensionDestination; + bool bExtensionMode; + fs::path indexDirName; + fs::path indexDirParentName; + bool init; + IndexerPreProcessor* m_pIndexerPreProcessor; + void initIndexerPreProcessor(); + void link() throw( HelpProcessingException ); + void addBookmark( DB* dbBase, FILE* pFile_DBHelp, std::string thishid, + const std::string& fileB, const std::string& anchorB, + const std::string& jarfileB, const std::string& titleB ); +}; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ |