1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
3 * This file is part of the LibreOffice project.
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
9 * This file incorporates work covered by the following license notice:
11 * Licensed to the Apache Software Foundation (ASF) under one or more
12 * contributor license agreements. See the NOTICE file distributed
13 * with this work for additional information regarding copyright
14 * ownership. The ASF licenses this file to you under the Apache
15 * License, Version 2.0 (the "License"); you may not use this file
16 * except in compliance with the License. You may obtain a copy of
17 * the License at http://www.apache.org/licenses/LICENSE-2.0 .
19 #ifndef INCLUDED_RSC_INC_RSCRSC_HXX
20 #define INCLUDED_RSC_INC_RSCRSC_HXX
24 #include <rsctools.hxx>
31 /****************** R s c C m d L i n e **********************************/
38 RscStrList aInputList
; // Liste der Quelldateien
39 OString aPath
; // Liste der Pfade
40 RSCBYTEORDER_TYPE nByteOrder
;
41 unsigned short nCommands
; // Steuerbits
42 OString aOutputSrs
; // Name der Srs-Ausgabedatei
47 OString aLangName
; // language name
48 OString aOutputRc
; // target file
49 OString aLangSearchPath
; // language specific search path
50 ::std::list
< OString
> aSysSearchDirs
; // paths to search for images
55 std::list
<OutputFile
> m_aOutputFiles
;
56 std::list
< std::pair
< OString
, OString
> > m_aReplacements
;
58 RscCmdLine( int argc
, char ** argv
, RscError
* pEH
);
61 OString
substitutePaths( const OString
& rIn
);
63 /****************** R s c ************************************************/
65 struct WriteRcContext
;
70 void CreateResFile( const char * pRc
);
72 static bool GetImageFilePath( const RscCmdLine::OutputFile
& rOutputFile
,
73 const WriteRcContext
& rContext
,
74 const OString
& rBaseFileName
,
77 void PreprocessSrsFile( const RscCmdLine::OutputFile
& rOutputFile
,
78 const WriteRcContext
& rContext
,
79 const OUString
& rSrsInPath
,
80 const OUString
& rSrsOutPath
);
83 RscTypCont
* pTC
; // String und Id-Verwalter
84 RscCmdLine
* pCL
; // Kommandozeile
85 FILE * fListing
; // Ausgabedatei fuer Listings
86 FILE * fExitFile
; // bei Abbruch muss diese Datei geschlossen werden
88 RscCompiler( RscCmdLine
*, RscTypCont
* );
93 // Include Statements lesen
94 ERRTYPE
IncludeParser( sal_uLong lFileKey
);
95 ERRTYPE
ParseOneFile( sal_uLong lFileKey
, const RscCmdLine::OutputFile
* pOutputFile
, const WriteRcContext
* pContext
);
100 #endif // INCLUDED_RSC_INC_RSCRSC_HXX
102 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */