summaryrefslogtreecommitdiff
path: root/transex3/inc
diff options
context:
space:
mode:
authorNils Fuhrmann <nf@openoffice.org>2001-08-23 10:45:30 +0000
committerNils Fuhrmann <nf@openoffice.org>2001-08-23 10:45:30 +0000
commit025bbfbdf5de41bd1ed7c0655398622dbcb22024 (patch)
treea9c833fb47abd3f066118baa15e78b3eb827bbd0 /transex3/inc
parenta7d3fb1498cf9e657c1389516633be0cececb616 (diff)
Added new merger for ReadMes
Diffstat (limited to 'transex3/inc')
-rw-r--r--transex3/inc/tokens.h20
-rw-r--r--transex3/inc/xrmmerge.hxx185
2 files changed, 203 insertions, 2 deletions
diff --git a/transex3/inc/tokens.h b/transex3/inc/tokens.h
index 6e694e745ab1..797225bb31d2 100644
--- a/transex3/inc/tokens.h
+++ b/transex3/inc/tokens.h
@@ -2,9 +2,9 @@
*
* $RCSfile: tokens.h,v $
*
- * $Revision: 1.1 $
+ * $Revision: 1.2 $
*
- * last change: $Author: nf $ $Date: 2001-06-26 12:56:08 $
+ * last change: $Author: nf $ $Date: 2001-08-23 11:45:29 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
@@ -136,5 +136,21 @@
#define CFG_TOKEN_CONFIGNAME 602
#define CFG_TOKEN_TEMPLATE 603
+/*------------------------------------------------------ */
+/*------------------------------------------------------ */
+/* Tokens for parsing xrm files */
+/*------------------------------------------------------ */
+/*------------------------------------------------------ */
+#define XRM_README_START 501
+#define XRM_README_END 502
+#define XRM_SECTION_START 503
+#define XRM_SECTION_END 504
+#define XRM_PARAGRAPH_START 505
+#define XRM_PARAGRAPH_END 506
+#define XRM_TEXT_START 507
+#define XRM_TEXT_END 508
+#define XRM_LIST_START 509
+#define XRM_LIST_END 510
+
#endif
diff --git a/transex3/inc/xrmmerge.hxx b/transex3/inc/xrmmerge.hxx
new file mode 100644
index 000000000000..f25577b496e2
--- /dev/null
+++ b/transex3/inc/xrmmerge.hxx
@@ -0,0 +1,185 @@
+/*************************************************************************
+ *
+ * $RCSfile: xrmmerge.hxx,v $
+ *
+ * $Revision: 1.1 $
+ *
+ * last change: $Author: nf $ $Date: 2001-08-23 11:45:29 $
+ *
+ * The Contents of this file are made available subject to the terms of
+ * either of the following licenses
+ *
+ * - GNU Lesser General Public License Version 2.1
+ * - Sun Industry Standards Source License Version 1.1
+ *
+ * Sun Microsystems Inc., October, 2000
+ *
+ * GNU Lesser General Public License Version 2.1
+ * =============================================
+ * Copyright 2000 by Sun Microsystems, Inc.
+ * 901 San Antonio Road, Palo Alto, CA 94303, USA
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1, as published by the Free Software Foundation.
+ *
+ * This library 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 for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ * MA 02111-1307 USA
+ *
+ *
+ * Sun Industry Standards Source License Version 1.1
+ * =================================================
+ * The contents of this file are subject to the Sun Industry Standards
+ * Source License Version 1.1 (the "License"); You may not use this file
+ * except in compliance with the License. You may obtain a copy of the
+ * License at http://www.openoffice.org/license.html.
+ *
+ * Software provided under this License is provided on an "AS IS" basis,
+ * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING,
+ * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS,
+ * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING.
+ * See the License for the specific provisions governing your rights and
+ * obligations concerning the Software.
+ *
+ * The Initial Developer of the Original Code is: Sun Microsystems, Inc.
+ *
+ * Copyright: 2000 by Sun Microsystems, Inc.
+ *
+ * All Rights Reserved.
+ *
+ * Contributor(s): _______________________________________
+ *
+ *
+ ************************************************************************/
+
+// global includes
+#include <tools/string.hxx>
+
+//
+// XRMResParser
+//
+
+class XRMResParser
+{
+private:
+ ByteString sGID;
+ ByteString sLID;
+
+ BOOL bError;
+ BOOL bText;
+
+ ByteString sLocalized;
+
+ ByteString sCurrentOpenTag;
+ ByteString sCurrentCloseTag;
+ ByteString sCurrentText;
+
+protected:
+ ByteString GetAttribute( const ByteString &rToken, const ByteString &rAttribute );
+ void Error( const ByteString &rError );
+
+ virtual void Output( const ByteString& rOutput );
+ virtual void WorkOnText(
+ const ByteString &rOpenTag,
+ ByteString &rText
+ );
+ virtual void EndOfText(
+ const ByteString &rOpenTag,
+ const ByteString &rCloseTag
+ );
+
+ ByteString GetGID() { return sGID; }
+ ByteString GetLID() { return sLID; }
+
+ void ConvertStringToDBFormat( ByteString &rString );
+ void ConvertStringToXMLFormat( ByteString &rString );
+
+public:
+ XRMResParser();
+ virtual ~XRMResParser();
+
+ int Execute( int nToken, char * pToken );
+
+ void SetError( BOOL bErr = TRUE ) { bError = bErr; }
+ BOOL GetError() { return bError; }
+};
+
+//
+// class XRMResOutputParser
+//
+
+class XRMResOutputParser : public XRMResParser
+{
+protected:
+ SvFileStream *pOutputStream;
+public:
+ XRMResOutputParser ( const ByteString &rOutputFile );
+ virtual ~XRMResOutputParser();
+};
+
+//
+// XRMResExport
+//
+
+class XRMResExport : public XRMResOutputParser
+{
+private:
+ ResData *pResData;
+ ByteString sPrj;
+ ByteString sPath;
+
+protected:
+ virtual void WorkOnText(
+ const ByteString &rOpenTag,
+ ByteString &rText
+ );
+ virtual void EndOfText(
+ const ByteString &rOpenTag,
+ const ByteString &rCloseTag
+ );
+
+public:
+ XRMResExport(
+ const ByteString &rOutputFile,
+ const ByteString &rProject,
+ const ByteString &rFilePath
+ );
+ virtual ~XRMResExport();
+};
+
+//
+// class XRMResMerge
+//
+
+class XRMResMerge : public XRMResOutputParser
+{
+private:
+ MergeDataFile *pMergeDataFile;
+ ResData *pResData;
+
+protected:
+ virtual void WorkOnText(
+ const ByteString &rOpenTag,
+ ByteString &rText
+ );
+ virtual void EndOfText(
+ const ByteString &rOpenTag,
+ const ByteString &rCloseTag
+ );
+ virtual void Output( const ByteString& rOutput );
+public:
+ XRMResMerge(
+ const ByteString &rMergeSource,
+ const ByteString &rOutputFile,
+ BOOL bErrorLog
+ );
+ virtual ~XRMResMerge();
+};
+