Update ooo320-m1
[ooovba.git] / sc / source / filter / inc / expbase.hxx
blob4241c513c831f52c0a2439dc2ddd0b569676f335
1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * Copyright 2008 by Sun Microsystems, Inc.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * $RCSfile: expbase.hxx,v $
10 * $Revision: 1.5 $
12 * This file is part of OpenOffice.org.
14 * OpenOffice.org is free software: you can redistribute it and/or modify
15 * it under the terms of the GNU Lesser General Public License version 3
16 * only, as published by the Free Software Foundation.
18 * OpenOffice.org is distributed in the hope that it will be useful,
19 * but WITHOUT ANY WARRANTY; without even the implied warranty of
20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 * GNU Lesser General Public License version 3 for more details
22 * (a copy is included in the LICENSE file that accompanied this code).
24 * You should have received a copy of the GNU Lesser General Public License
25 * version 3 along with OpenOffice.org. If not, see
26 * <http://www.openoffice.org/license.html>
27 * for a copy of the LGPLv3 License.
29 ************************************************************************/
31 #ifndef SC_EXPBASE_HXX
32 #define SC_EXPBASE_HXX
34 #include <tools/solar.h>
35 #include "global.hxx"
36 #include "address.hxx"
39 class SvStream;
40 class ScFieldEditEngine;
42 class ScExportBase
44 public:
45 #if defined UNX
46 static const sal_Char __FAR_DATA sNewLine;
47 #else
48 static const sal_Char __FAR_DATA sNewLine[];
49 #endif
51 protected:
53 SvStream& rStrm;
54 ScRange aRange;
55 ScDocument* pDoc;
56 SvNumberFormatter* pFormatter;
57 ScFieldEditEngine* pEditEngine;
59 public:
61 ScExportBase( SvStream&, ScDocument*, const ScRange& );
62 virtual ~ScExportBase();
64 // Hidden Cols/Rows an den Raendern trimmen,
65 // return: TRUE wenn Bereich vorhanden
66 // Start/End/Col/Row muessen gueltige Ausgangswerte sein
67 BOOL TrimDataArea( SCTAB nTab, SCCOL& nStartCol,
68 SCROW& nStartRow, SCCOL& nEndCol, SCROW& nEndRow ) const;
70 // Ausgabebereich einer Tabelle ermitteln,
71 // Hidden Cols/Rows an den Raendern beruecksichtigt,
72 // return: TRUE wenn Bereich vorhanden
73 BOOL GetDataArea( SCTAB nTab, SCCOL& nStartCol,
74 SCROW& nStartRow, SCCOL& nEndCol, SCROW& nEndRow ) const;
76 // Tabelle nicht vorhanden oder leer
77 BOOL IsEmptyTable( SCTAB nTab ) const;
79 ScFieldEditEngine& GetEditEngine() const;
84 #endif // SC_EXPBASE_HXX