LibreOffice Module sc (master)  1
typedstrdata.hxx
Go to the documentation of this file.
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*
3  * This file is part of the LibreOffice project.
4  *
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/.
8  */
9 
10 #pragma once
11 
12 #include <rtl/ustring.hxx>
13 
14 #include <set>
15 
17 {
18 public:
19  enum StringType {
20  Value = 0,
21  Standard = 1,
22  Name = 2,
23  DbName = 3,
24  Header = 4
25  };
26 
27  ScTypedStrData( const OUString& rStr, double fVal = 0.0, double fRVal = 0.0, StringType eType = Standard,
28  bool bDate = false );
29 
30  bool IsDate() const { return mbIsDate;}
31  const OUString& GetString() const { return maStrValue;}
32  StringType GetStringType() const { return meStrType;}
33  double GetValue() const { return mfValue; }
34  double GetRoundedValue() const { return mfRoundedValue; }
35 
37  {
38  bool operator() (const ScTypedStrData& left, const ScTypedStrData& right) const;
39  };
40 
42  {
43  bool operator() (const ScTypedStrData& left, const ScTypedStrData& right) const;
44  };
45 
47  {
48  bool operator() (const ScTypedStrData& left, const ScTypedStrData& right) const;
49  };
50 
52  {
53  bool operator() (const ScTypedStrData& left, const ScTypedStrData& right) const;
54  };
55 
56  bool operator< (const ScTypedStrData& r) const;
57 
58 private:
59  OUString maStrValue;
60  double mfValue;
61  double mfRoundedValue; // rounded value by format code
63  bool mbIsDate;
64 };
65 
67 {
69  bool mbCaseSens;
70 public:
71  FindTypedStrData(const ScTypedStrData& rVal, bool bCaseSens);
72  bool operator() (const ScTypedStrData& r) const;
73 };
74 
75 typedef std::set<ScTypedStrData, ScTypedStrData::LessCaseSensitive> ScTypedCaseStrSet;
76 
77 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
ScTypedStrData(const OUString &rStr, double fVal=0.0, double fRVal=0.0, StringType eType=Standard, bool bDate=false)
sal_uInt64 left
double mfRoundedValue
FindTypedStrData(const ScTypedStrData &rVal, bool bCaseSens)
bool operator()(const ScTypedStrData &left, const ScTypedStrData &right) const
OUString maStrValue
double GetValue() const
def right
double GetRoundedValue() const
ScTypedStrData maVal
bool operator<(const ScTypedStrData &r) const
std::set< ScTypedStrData, ScTypedStrData::LessCaseSensitive > ScTypedCaseStrSet
StringType GetStringType() const
StringType meStrType
bool operator()(const ScTypedStrData &left, const ScTypedStrData &right) const
bool IsDate() const
bool operator()(const ScTypedStrData &r) const
const OUString & GetString() const
bool operator()(const ScTypedStrData &left, const ScTypedStrData &right) const
bool operator()(const ScTypedStrData &left, const ScTypedStrData &right) const