update dev300-m58
[ooovba.git] / sc / inc / sortparam.hxx
blobbc0f863248b906c288089c9944251c218ddbfa91
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: sortparam.hxx,v $
10 * $Revision: 1.6 $
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_SORTPARAM_HXX
32 #define SC_SORTPARAM_HXX
34 #include "address.hxx"
35 #include <tools/string.hxx>
36 #include <tools/solar.h>
37 #include <com/sun/star/lang/Locale.hpp>
38 #include "scdllapi.h"
40 #define MAXSORT 3
43 struct ScSubTotalParam;
44 struct ScQueryParam;
46 struct SC_DLLPUBLIC ScSortParam
48 SCCOL nCol1;
49 SCROW nRow1;
50 SCCOL nCol2;
51 SCROW nRow2;
52 BOOL bHasHeader;
53 BOOL bByRow;
54 BOOL bCaseSens;
55 BOOL bNaturalSort;
56 BOOL bUserDef;
57 USHORT nUserIndex;
58 BOOL bIncludePattern;
59 BOOL bInplace;
60 SCTAB nDestTab;
61 SCCOL nDestCol;
62 SCROW nDestRow;
63 BOOL bDoSort[MAXSORT];
64 SCCOLROW nField[MAXSORT];
65 BOOL bAscending[MAXSORT];
66 ::com::sun::star::lang::Locale aCollatorLocale;
67 String aCollatorAlgorithm;
68 USHORT nCompatHeader;
70 ScSortParam();
71 ScSortParam( const ScSortParam& r );
72 /// SubTotals sort
73 ScSortParam( const ScSubTotalParam& rSub, const ScSortParam& rOld );
74 /// TopTen sort
75 ScSortParam( const ScQueryParam&, SCCOL nCol );
77 ScSortParam& operator= ( const ScSortParam& r );
78 BOOL operator== ( const ScSortParam& rOther ) const;
79 void Clear ();
81 void MoveToDest();
85 #endif // SC_SORTPARAM_HXX