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/.
10 #ifndef __SC_TYPEDSTRDATA_HXX__
11 #define __SC_TYPEDSTRDATA_HXX__
13 #include "rtl/ustring.hxx"
29 ScTypedStrData( const OUString
& rStr
, double nVal
= 0.0,
30 StringType eType
= Standard
);
32 ScTypedStrData( const ScTypedStrData
& rCpy
);
34 bool IsStrData() const;
35 SC_DLLPUBLIC
const OUString
& GetString() const;
36 StringType
GetStringType() const;
38 struct LessCaseSensitive
: std::binary_function
<ScTypedStrData
, ScTypedStrData
, bool>
40 bool operator() (const ScTypedStrData
& left
, const ScTypedStrData
& right
) const;
43 struct LessCaseInsensitive
: std::binary_function
<ScTypedStrData
, ScTypedStrData
, bool>
45 bool operator() (const ScTypedStrData
& left
, const ScTypedStrData
& right
) const;
48 struct EqualCaseSensitive
: std::binary_function
<ScTypedStrData
, ScTypedStrData
, bool>
50 bool operator() (const ScTypedStrData
& left
, const ScTypedStrData
& right
) const;
53 struct EqualCaseInsensitive
: std::binary_function
<ScTypedStrData
, ScTypedStrData
, bool>
55 bool operator() (const ScTypedStrData
& left
, const ScTypedStrData
& right
) const;
58 bool operator== (const ScTypedStrData
& r
) const;
59 bool operator< (const ScTypedStrData
& r
) const;
67 class FindTypedStrData
: std::unary_function
<ScTypedStrData
, bool>
72 FindTypedStrData(const ScTypedStrData
& rVal
, bool bCaseSens
);
73 bool operator() (const ScTypedStrData
& r
) const;
76 typedef std::set
<ScTypedStrData
, ScTypedStrData::LessCaseSensitive
> ScTypedCaseStrSet
;
80 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */