MWAWCell.hxx
Go to the documentation of this file.
1 /* -*- Mode: C++; c-default-style: "k&r"; indent-tabs-mode: nil; tab-width: 2; c-basic-offset: 2 -*- */
2 
3 /* libmwaw
4 * Version: MPL 2.0 / LGPLv2+
5 *
6 * The contents of this file are subject to the Mozilla Public License Version
7 * 2.0 (the "License"); you may not use this file except in compliance with
8 * the License or as specified alternatively below. You may obtain a copy of
9 * the License at http://www.mozilla.org/MPL/
10 *
11 * Software distributed under the License is distributed on an "AS IS" basis,
12 * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
13 * for the specific language governing rights and limitations under the
14 * License.
15 *
16 * Major Contributor(s):
17 * Copyright (C) 2002 William Lachance (wrlach@gmail.com)
18 * Copyright (C) 2002,2004 Marc Maurer (uwog@uwog.net)
19 * Copyright (C) 2004-2006 Fridrich Strba (fridrich.strba@bluewin.ch)
20 * Copyright (C) 2006, 2007 Andrew Ziem
21 * Copyright (C) 2011, 2012 Alonso Laurent (alonso@loria.fr)
22 *
23 *
24 * All Rights Reserved.
25 *
26 * For minor contributions see the git repository.
27 *
28 * Alternatively, the contents of this file may be used under the terms of
29 * the GNU Lesser General Public License Version 2 or later (the "LGPLv2+"),
30 * in which case the provisions of the LGPLv2+ are applicable
31 * instead of those above.
32 */
33 
38 #ifndef MWAW_CELL_H
39 # define MWAW_CELL_H
40 
41 #include <string>
42 #include <vector>
43 
44 #include "libmwaw_internal.hxx"
45 
46 #include "MWAWEntry.hxx"
47 #include "MWAWFont.hxx"
48 
49 class MWAWTable;
50 
52 class MWAWCell
53 {
54 public:
60  struct Format {
65  , m_digits(-1)
66  , m_integerDigits(-1)
67  , m_numeratorDigits(-1)
69  , m_thousandHasSeparator(false)
71  , m_currencySymbol("$")
72  , m_DTFormat("")
73  {
74  }
75  Format(Format const &)=default;
76  Format &operator=(Format const &)=default;
78  virtual ~Format();
80  bool hasBasicFormat() const
81  {
82  return m_format==F_TEXT || m_format==F_UNKNOWN;
83  }
85  std::string getValueType() const;
87  bool getNumberingProperties(librevenge::RVNGPropertyList &propList) const;
89  friend std::ostream &operator<<(std::ostream &o, Format const &format);
91  int compare(Format const &format) const;
92 
98  int m_digits;
110  std::string m_currencySymbol;
112  std::string m_DTFormat;
113  };
115  struct CompareFormat {
119  bool operator()(Format const &c1, Format const &c2) const
120  {
121  return c1.compare(c2) < 0;
122  }
123  };
129  };
130 
134 
137 
140  : m_position(0,0)
141  , m_numberCellSpanned(1,1)
142  , m_bdBox()
143  , m_bdSize()
144  , m_format()
145  , m_font(3,12)
146  , m_fontSet(false)
149  , m_backgroundColor(MWAWColor::white())
150  , m_protected(false)
151  , m_bordersList()
153  , m_extraLineType() { }
154  MWAWCell(MWAWCell const &)=default;
155  MWAWCell &operator=(MWAWCell const &)=default;
157  virtual ~MWAWCell() {}
158 
160  void addTo(librevenge::RVNGPropertyList &propList, std::shared_ptr<MWAWFontConverter> fontConverter) const;
161 
163  friend std::ostream &operator<<(std::ostream &o, MWAWCell const &cell);
164 
165  // interface with MWAWTable:
166 
171  virtual bool send(MWAWListenerPtr listener, MWAWTable &table);
176  virtual bool sendContent(MWAWListenerPtr listener, MWAWTable &table);
177 
178  // position
179 
181  MWAWVec2i const &position() const
182  {
183  return m_position;
184  }
187  {
188  m_position = posi;
189  }
190 
192  MWAWVec2i const &numSpannedCells() const
193  {
194  return m_numberCellSpanned;
195  }
197  void setNumSpannedCells(MWAWVec2i numSpanned)
198  {
199  m_numberCellSpanned=numSpanned;
200  }
201 
203  MWAWBox2f const &bdBox() const
204  {
205  return m_bdBox;
206  }
208  void setBdBox(MWAWBox2f box)
209  {
210  m_bdBox = box;
211  }
212 
214  MWAWVec2f const &bdSize() const
215  {
216  return m_bdSize;
217  }
220  {
221  m_bdSize = sz;
222  }
224  static std::string getBasicCellName(MWAWVec2i const &pos);
226  static std::string getCellName(MWAWVec2i const &pos, MWAWVec2b const &absolute);
227 
229  static std::string getColumnName(int col);
230 
231  // format
232 
234  Format const &getFormat() const
235  {
236  return m_format;
237  }
239  void setFormat(Format const &format)
240  {
241  m_format=format;
242  }
243 
245  bool isFontSet() const
246  {
247  return m_fontSet;
248  }
251  {
252  return m_font;
253  }
255  void setFont(MWAWFont const &font, bool isDefault=false)
256  {
257  m_font=font;
258  m_fontSet=!isDefault;
259  }
260 
262  bool isProtected() const
263  {
264  return m_protected;
265  }
267  void setProtected(bool fl)
268  {
269  m_protected = fl;
270  }
271 
274  {
275  return m_hAlign;
276  }
279  {
280  m_hAlign = align;
281  }
282 
285  {
286  return m_vAlign;
287  }
290  {
291  m_vAlign = align;
292  }
293 
295  bool hasBorders() const
296  {
297  return m_bordersList.size() != 0;
298  }
300  std::vector<MWAWBorder> const &borders() const
301  {
302  return m_bordersList;
303  }
304 
307  {
308  m_bordersList.resize(0);
309  }
311  void setBorders(int wh, MWAWBorder const &border);
312 
315  {
316  return m_backgroundColor;
317  }
320  {
321  m_backgroundColor = color;
322  }
324  bool hasExtraLine() const
325  {
327  }
330  {
331  return m_extraLine;
332  }
334  MWAWBorder const &extraLineType() const
335  {
336  return m_extraLineType;
337  }
339  void setExtraLine(ExtraLine extrLine, MWAWBorder const &type=MWAWBorder())
340  {
341  m_extraLine = extrLine;
342  m_extraLineType=type;
343  }
344 protected:
353 
359  bool m_fontSet;
368 
370  std::vector<MWAWBorder> m_bordersList;
375 };
376 
379 {
380 public:
386  : m_type(F_Text)
387  , m_content("")
388  , m_longValue(0)
389  , m_doubleValue(0)
390  , m_sheet()
391  , m_fileName()
392  {
393  for (auto &pos : m_position) pos=MWAWVec2i(0,0);
394  for (auto &rel : m_positionRelative) rel=MWAWVec2b(false,false);
395  }
397  librevenge::RVNGPropertyList getPropertyList(MWAWFontConverter &fontConverter, int fontId) const;
399  friend std::ostream &operator<<(std::ostream &o, FormulaInstruction const &inst);
403  std::string m_content;
405  double m_longValue;
413  std::string m_sheet;
415  std::string m_fileName;
416  };
417 
423  , m_value(0.0)
424  , m_valueSet(false)
425  , m_textEntry()
426  , m_formula() { }
427  MWAWCellContent(MWAWCellContent const &)=default;
428  MWAWCellContent &operator=(MWAWCellContent const &)=default;
432  friend std::ostream &operator<<(std::ostream &o, MWAWCellContent const &cell);
433 
435  bool empty() const
436  {
437  if (m_contentType == C_NUMBER) return false;
438  if (m_contentType == C_TEXT && m_textEntry.valid()) return false;
439  if (m_contentType == C_FORMULA && (m_formula.size() || isValueSet())) return false;
440  return true;
441  }
443  void setValue(double value)
444  {
445  m_value = value;
446  m_valueSet = true;
447  }
449  bool isValueSet() const
450  {
451  return m_valueSet;
452  }
454  bool hasText() const
455  {
456  return m_textEntry.valid();
457  }
460  static bool double2Date(double val, int &Y, int &M, int &D);
462  static bool double2Time(double val, int &H, int &M, int &S);
464  static bool double2String(double val, MWAWCell::Format const &format, std::string &str);
466  static bool date2Double(int Y, int M, int D, double &val);
470  double m_value;
476  std::vector<FormulaInstruction> m_formula;
477 };
478 
479 #endif
480 // vim: set filetype=cpp tabstop=2 shiftwidth=2 cindent autoindent smartindent noexpandtab:
MWAWCellContent::FormulaInstruction::F_CellList
Definition: MWAWCell.hxx:383
MWAWEntry
basic class to store an entry in a file This contained :
Definition: MWAWEntry.hxx:46
MWAWCellContent::operator<<
friend std::ostream & operator<<(std::ostream &o, MWAWCellContent const &cell)
operator<<
Definition: MWAWCell.cxx:686
MWAWCell::F_BOOLEAN
Definition: MWAWCell.hxx:56
MWAWCell::m_hAlign
HorizontalAlignment m_hAlign
the cell alignment : by default nothing
Definition: MWAWCell.hxx:361
MWAWCellContent::Type
Type
the different types of cell's field
Definition: MWAWCell.hxx:419
MWAWCell::m_bordersList
std::vector< MWAWBorder > m_bordersList
the cell border MWAWBorder::Pos
Definition: MWAWCell.hxx:370
MWAWCellContent::m_textEntry
MWAWEntry m_textEntry
the cell string
Definition: MWAWCell.hxx:474
MWAWCell::CompareFormat::operator()
bool operator()(Format const &c1, Format const &c2) const
comparaison function
Definition: MWAWCell.hxx:119
MWAW_DEBUG_MSG
#define MWAW_DEBUG_MSG(M)
Definition: libmwaw_internal.hxx:129
MWAWCell::F_NUMBER_UNKNOWN
Definition: MWAWCell.hxx:58
MWAWCell::m_backgroundColor
MWAWColor m_backgroundColor
the backgroung color
Definition: MWAWCell.hxx:365
MWAWCellContent::~MWAWCellContent
~MWAWCellContent()
destructor
Definition: MWAWCell.hxx:430
MWAWCellContent::setValue
void setValue(double value)
sets the double value
Definition: MWAWCell.hxx:443
MWAWCell::setBdBox
void setBdBox(MWAWBox2f box)
set the bdbox (unit point)
Definition: MWAWCell.hxx:208
MWAWCell::isProtected
bool isProtected() const
returns true if the cell is protected
Definition: MWAWCell.hxx:262
MWAWCell::F_DATE
Definition: MWAWCell.hxx:56
MWAWBorder::isEmpty
bool isEmpty() const
returns true if the border is empty
Definition: libmwaw_internal.hxx:356
MWAWCell::Format::m_numeratorDigits
int m_numeratorDigits
the number of numerator digits
Definition: MWAWCell.hxx:102
MWAWCellContent::MWAWCellContent
MWAWCellContent()
constructor
Definition: MWAWCell.hxx:421
MWAWCell::setPosition
void setPosition(MWAWVec2i posi)
set the cell positions : 0,0 -> A1, 0,1 -> A2
Definition: MWAWCell.hxx:186
MWAWCell::F_NUMBER_DECIMAL
Definition: MWAWCell.hxx:58
MWAWCell::setHAlignment
void setHAlignment(HorizontalAlignment align)
sets the horizontal alignment
Definition: MWAWCell.hxx:278
MWAWCell::numSpannedCells
const MWAWVec2i & numSpannedCells() const
returns the number of spanned cells
Definition: MWAWCell.hxx:192
MWAWCellContent::FormulaInstruction::F_Operator
Definition: MWAWCell.hxx:383
MWAWCell::F_NUMBER_PERCENT
Definition: MWAWCell.hxx:58
MWAWCellContent::isValueSet
bool isValueSet() const
returns true if the value has been setted
Definition: MWAWCell.hxx:449
MWAWCell::resetBorders
void resetBorders()
reset the border
Definition: MWAWCell.hxx:306
libmwaw::BottomBit
Definition: libmwaw_internal.hxx:178
MWAWCell::F_UNKNOWN
Definition: MWAWCell.hxx:56
MWAWCellContent::date2Double
static bool date2Double(int Y, int M, int D, double &val)
conversion beetween date and double days since 1900 date
Definition: MWAWCell.cxx:555
MWAWCellContent::FormulaInstruction
small class use to define a formula instruction
Definition: MWAWCell.hxx:382
MWAWEntry.hxx
MWAWCell::FormatType
FormatType
the different format of a cell's content
Definition: MWAWCell.hxx:56
MWAWCellContent::C_NONE
Definition: MWAWCell.hxx:419
MWAWFontConverter.hxx
MWAWColor
the class to store a color
Definition: libmwaw_internal.hxx:192
MWAWCell::getBasicCellName
static std::string getBasicCellName(MWAWVec2i const &pos)
return the name of a cell (given row and column) : 0,0 -> A1, 0,1 -> A2...
Definition: MWAWCell.cxx:342
libmwaw::appendUnicode
void appendUnicode(uint32_t val, librevenge::RVNGString &buffer)
adds an unicode character to a string
Definition: libmwaw_internal.cxx:63
MWAWCell::ExtraLine
ExtraLine
an enum to defined potential internal line: E_Line1=TL to RB, E_Line2=BL to RT
Definition: MWAWCell.hxx:136
MWAWCell::F_NUMBER_SCIENTIFIC
Definition: MWAWCell.hxx:58
libmwaw::convertDTFormat
bool convertDTFormat(std::string const &dtFormat, librevenge::RVNGPropertyListVector &propVect)
convert a DTFormat in a propertyList
Definition: libmwaw_internal.cxx:316
MWAWCell::m_extraLine
ExtraLine m_extraLine
extra line
Definition: MWAWCell.hxx:372
MWAWCellContent::double2Time
static bool double2Time(double val, int &H, int &M, int &S)
conversion beetween double: second since 0:00 and time
Definition: MWAWCell.cxx:585
MWAWCellContent::FormulaInstruction::F_Function
Definition: MWAWCell.hxx:383
MWAWCell::m_fontSet
bool m_fontSet
a flag to know if the font has been set
Definition: MWAWCell.hxx:359
MWAWCell::setFormat
void setFormat(Format const &format)
set the cell format
Definition: MWAWCell.hxx:239
MWAWBorder::None
Definition: libmwaw_internal.hxx:335
MWAWCell::VALIGN_TOP
Definition: MWAWCell.hxx:133
libmwaw::HMiddle
Definition: libmwaw_internal.hxx:176
MWAWCell::hAlignment
HorizontalAlignment hAlignment() const
returns the horizontal alignment
Definition: MWAWCell.hxx:273
MWAWCell::F_NUMBER_GENERIC
Definition: MWAWCell.hxx:58
MWAWCell::setBackgroundColor
void setBackgroundColor(MWAWColor color)
sets the background color
Definition: MWAWCell.hxx:319
MWAWCellContent::FormulaInstruction::FormulaInstruction
FormulaInstruction()
constructor
Definition: MWAWCell.hxx:385
MWAWCell::CompareFormat::CompareFormat
CompareFormat()
constructor
Definition: MWAWCell.hxx:117
MWAWCell::m_format
Format m_format
the cell format
Definition: MWAWCell.hxx:355
MWAWCellContent::FormulaInstruction::m_content
std::string m_content
the content ( if type == F_Operator or type = F_Function or type==F_Text)
Definition: MWAWCell.hxx:403
MWAWCell::Format::m_DTFormat
std::string m_DTFormat
a date/time format ( using a subset of strftime format )
Definition: MWAWCell.hxx:112
MWAWCell::setFont
void setFont(MWAWFont const &font, bool isDefault=false)
sets the fonts
Definition: MWAWCell.hxx:255
MWAWCellContent::FormulaInstruction::m_fileName
std::string m_fileName
the file name (if not empty)
Definition: MWAWCell.hxx:415
MWAWCell::setVAlignment
void setVAlignment(VerticalAlignment align)
sets the vertical alignment
Definition: MWAWCell.hxx:289
MWAWCell::hasExtraLine
bool hasExtraLine() const
returns true if we have some extra lines
Definition: MWAWCell.hxx:324
MWAWCell::setExtraLine
void setExtraLine(ExtraLine extrLine, MWAWBorder const &type=MWAWBorder())
sets the extraline
Definition: MWAWCell.hxx:339
MWAWCellContent::FormulaInstruction::operator<<
friend std::ostream & operator<<(std::ostream &o, FormulaInstruction const &inst)
operator<<
Definition: MWAWCell.cxx:797
MWAWCell::extraLine
ExtraLine extraLine() const
returns the extra lines
Definition: MWAWCell.hxx:329
MWAWCellContent::double2Date
static bool double2Date(double val, int &Y, int &M, int &D)
conversion beetween double days since 1900 and a date, ie val=0 corresponds to 1/1/1900,...
Definition: MWAWCell.cxx:505
MWAWCell.hxx
MWAWCell::addTo
void addTo(librevenge::RVNGPropertyList &propList, std::shared_ptr< MWAWFontConverter > fontConverter) const
adds to the propList
Definition: MWAWCell.cxx:255
MWAWCell::getFormat
const Format & getFormat() const
returns the cell format
Definition: MWAWCell.hxx:234
MWAWCell::VerticalAlignment
VerticalAlignment
the default vertical alignment.
Definition: MWAWCell.hxx:133
MWAWCell::Format::m_digits
int m_digits
the number of digits
Definition: MWAWCell.hxx:98
MWAWCellContent::FormulaInstruction::F_Text
Definition: MWAWCell.hxx:383
MWAWCell::Format::~Format
virtual ~Format()
destructor
Definition: MWAWCell.cxx:54
MWAWCell::Format::m_numberFormat
NumberType m_numberFormat
the numeric format
Definition: MWAWCell.hxx:96
MWAWCell::position
const MWAWVec2i & position() const
position accessor
Definition: MWAWCell.hxx:181
MWAWCell::setProtected
void setProtected(bool fl)
sets the cell's protected flag
Definition: MWAWCell.hxx:267
MWAWCell::setNumSpannedCells
void setNumSpannedCells(MWAWVec2i numSpanned)
sets the number of spanned cells : MWAWVec2i(1,1) means 1 cellule
Definition: MWAWCell.hxx:197
MWAWCellContent::m_formula
std::vector< FormulaInstruction > m_formula
the formula list of instruction
Definition: MWAWCell.hxx:476
MWAWCell::Format::m_denominatorDigits
int m_denominatorDigits
the number of denominator digits
Definition: MWAWCell.hxx:104
MWAWCell::E_None
Definition: MWAWCell.hxx:136
MWAWFontConverter::unicode
int unicode(int macId, unsigned char c) const
converts a character in unicode
Definition: MWAWFontConverter.cxx:1316
libmwaw::Bottom
Definition: libmwaw_internal.hxx:176
libmwaw_internal.hxx
MWAWCellContent::FormulaInstruction::m_type
Type m_type
the type
Definition: MWAWCell.hxx:401
MWAWCell::Format::operator=
Format & operator=(Format const &)=default
MWAWCell::NumberType
NumberType
the different number format of a cell's content
Definition: MWAWCell.hxx:58
MWAWCell::Format::operator<<
friend std::ostream & operator<<(std::ostream &o, Format const &format)
operator<<
Definition: MWAWCell.cxx:167
MWAWFont::addTo
void addTo(librevenge::RVNGPropertyList &propList, std::shared_ptr< MWAWFontConverter > fontConverter) const
add to the propList
Definition: MWAWFont.cxx:245
MWAWCell::Format
a structure uses to define the format of a cell content
Definition: MWAWCell.hxx:60
libmwaw::VMiddleBit
Definition: libmwaw_internal.hxx:178
MWAWBorder
a border
Definition: libmwaw_internal.hxx:333
MWAWCell::VALIGN_BOTTOM
Definition: MWAWCell.hxx:133
libmwaw::VMiddle
Definition: libmwaw_internal.hxx:176
MWAWCellContent::m_value
double m_value
the cell value
Definition: MWAWCell.hxx:470
MWAWCell::Format::getNumberingProperties
bool getNumberingProperties(librevenge::RVNGPropertyList &propList) const
get the numbering style
Definition: MWAWCell.cxx:82
MWAWCell::m_font
MWAWFont m_font
the cell font
Definition: MWAWCell.hxx:357
MWAWTable
a class used to recreate the table structure using cell informations, ....
Definition: MWAWTable.hxx:51
MWAWCell::HALIGN_FULL
Definition: MWAWCell.hxx:128
libmwaw::RightBit
Definition: libmwaw_internal.hxx:178
MWAWCell::operator<<
friend std::ostream & operator<<(std::ostream &o, MWAWCell const &cell)
operator<<
Definition: MWAWCell.cxx:402
MWAWVec2< int >
MWAWCell::Format::compare
int compare(Format const &format) const
a comparison function
Definition: MWAWCell.cxx:230
MWAWCell::F_NUMBER_FRACTION
Definition: MWAWCell.hxx:58
MWAWCellContent
small class use to define a sheet cell content
Definition: MWAWCell.hxx:378
MWAWCell::m_numberCellSpanned
MWAWVec2i m_numberCellSpanned
the cell spanned : by default (1,1)
Definition: MWAWCell.hxx:348
MWAWCell::Format::getValueType
std::string getValueType() const
returns a value type
Definition: MWAWCell.cxx:58
MWAWCell::Format::Format
Format()
constructor
Definition: MWAWCell.hxx:62
MWAWCell::MWAWCell
MWAWCell()
constructor
Definition: MWAWCell.hxx:139
MWAWCell::bdSize
const MWAWVec2f & bdSize() const
bdbox size accessor
Definition: MWAWCell.hxx:214
MWAWCell::isFontSet
bool isFontSet() const
returns true if the font has been set
Definition: MWAWCell.hxx:245
MWAWCell::vAlignment
VerticalAlignment vAlignment() const
returns the vertical alignment
Definition: MWAWCell.hxx:284
MWAWCellContent::FormulaInstruction::m_longValue
double m_longValue
value ( if type==F_Long )
Definition: MWAWCell.hxx:405
MWAWCell::m_protected
bool m_protected
cell protected
Definition: MWAWCell.hxx:367
libmwaw::HMiddleBit
Definition: libmwaw_internal.hxx:178
MWAWCellContent::FormulaInstruction::m_doubleValue
double m_doubleValue
value ( if type==F_Double )
Definition: MWAWCell.hxx:407
MWAWCellContent::double2String
static bool double2String(double val, MWAWCell::Format const &format, std::string &str)
conversion of the value in string knowing the cell format
Definition: MWAWCell.cxx:597
MWAWCellContent::C_FORMULA
Definition: MWAWCell.hxx:419
MWAWCell::m_bdBox
MWAWBox2f m_bdBox
the cell bounding box (unit in point)
Definition: MWAWCell.hxx:350
MWAWCellContent::m_valueSet
bool m_valueSet
true if the value has been set
Definition: MWAWCell.hxx:472
MWAWCellContent::FormulaInstruction::F_Cell
Definition: MWAWCell.hxx:383
libmwaw::Top
Definition: libmwaw_internal.hxx:176
MWAWBorder::m_style
Style m_style
the border style
Definition: libmwaw_internal.hxx:380
MWAWCell::sendContent
virtual bool sendContent(MWAWListenerPtr listener, MWAWTable &table)
function called when the content of a cell must be send to the listener, ie.
Definition: MWAWCell.cxx:496
MWAWCell::VALIGN_CENTER
Definition: MWAWCell.hxx:133
MWAWCellContent::FormulaInstruction::F_Long
Definition: MWAWCell.hxx:383
MWAWCell::F_NUMBER
Definition: MWAWCell.hxx:56
MWAWCell::F_TIME
Definition: MWAWCell.hxx:56
MWAWCell::m_extraLineType
MWAWBorder m_extraLineType
extra line type
Definition: MWAWCell.hxx:374
MWAWCell::E_Cross
Definition: MWAWCell.hxx:136
libmwaw::LeftBit
Definition: libmwaw_internal.hxx:178
MWAWCell::getCellName
static std::string getCellName(MWAWVec2i const &pos, MWAWVec2b const &absolute)
return the name of a cell (given row and column) : 0,0 -> [.A1], 0,1 -> [.A2]
Definition: MWAWCell.cxx:359
MWAWCell::HALIGN_DEFAULT
Definition: MWAWCell.hxx:128
MWAWCell::F_NUMBER_CURRENCY
Definition: MWAWCell.hxx:58
MWAWCell::m_bdSize
MWAWVec2f m_bdSize
the cell bounding size : unit point
Definition: MWAWCell.hxx:352
MWAWCell::bdBox
const MWAWBox2f & bdBox() const
bdbox accessor
Definition: MWAWCell.hxx:203
MWAWCell::Format::hasBasicFormat
bool hasBasicFormat() const
returns true if this is a basic format style
Definition: MWAWCell.hxx:80
MWAWCellContent::C_TEXT
Definition: MWAWCell.hxx:419
MWAWCellContent::hasText
bool hasText() const
returns true if the text is set
Definition: MWAWCell.hxx:454
MWAWCellContent::FormulaInstruction::m_sheet
std::string m_sheet
the sheet name (if not empty)
Definition: MWAWCell.hxx:413
MWAWCell::Format::m_format
FormatType m_format
the cell format : by default unknown
Definition: MWAWCell.hxx:94
libmwaw::Right
Definition: libmwaw_internal.hxx:176
MWAWCell::E_Line1
Definition: MWAWCell.hxx:136
MWAWCell::borders
const std::vector< MWAWBorder > & borders() const
return the cell border: libmwaw::Left | ...
Definition: MWAWCell.hxx:300
MWAWCell::m_position
MWAWVec2i m_position
the cell row and column : 0,0 -> A1, 0,1 -> A2
Definition: MWAWCell.hxx:346
MWAWCellContent::FormulaInstruction::F_Double
Definition: MWAWCell.hxx:383
MWAWCell::m_vAlign
VerticalAlignment m_vAlign
the vertical cell alignment : by default nothing
Definition: MWAWCell.hxx:363
MWAWCell::Format::m_parenthesesForNegative
bool m_parenthesesForNegative
true if we use parenthese to print negative number
Definition: MWAWCell.hxx:108
MWAWCell::HorizontalAlignment
HorizontalAlignment
the default horizontal alignment.
Definition: MWAWCell.hxx:127
libmwaw::TopBit
Definition: libmwaw_internal.hxx:178
MWAWCellContent::FormulaInstruction::m_position
MWAWVec2i m_position[2]
cell position ( if type==F_Cell or F_CellList )
Definition: MWAWCell.hxx:409
MWAWCell::hasBorders
bool hasBorders() const
return true if the cell has some border
Definition: MWAWCell.hxx:295
MWAWCell::setBorders
void setBorders(int wh, MWAWBorder const &border)
sets the cell border: wh=libmwaw::LeftBit|...
Definition: MWAWCell.cxx:379
MWAWEntry::valid
bool valid() const
returns true if the zone length is positive
Definition: MWAWEntry.hxx:98
MWAWFontConverter
a namespace used to convert Mac font characters in unicode
Definition: MWAWFontConverter.hxx:62
MWAWListener.hxx
libmwaw::Left
Definition: libmwaw_internal.hxx:176
MWAWBox2::size
MWAWVec2< T > size() const
the box size
Definition: libmwaw_internal.hxx:1065
MWAWCell::~MWAWCell
virtual ~MWAWCell()
destructor
Definition: MWAWCell.hxx:157
MWAWCell::getColumnName
static std::string getColumnName(int col)
return the column name
Definition: MWAWCell.cxx:332
MWAWCellContent::FormulaInstruction::m_positionRelative
MWAWVec2b m_positionRelative[2]
relative cell position ( if type==F_Cell or F_CellList )
Definition: MWAWCell.hxx:411
MWAWCellContent::empty
bool empty() const
returns true if the cell has no content
Definition: MWAWCell.hxx:435
MWAWCellContent::FormulaInstruction::Type
Type
Definition: MWAWCell.hxx:383
MWAWCell::CompareFormat
a comparaison structure used to store data
Definition: MWAWCell.hxx:115
MWAWCell::backgroundColor
MWAWColor backgroundColor() const
returns the background color
Definition: MWAWCell.hxx:314
MWAWColor::isWhite
bool isWhite() const
return true if the color is white
Definition: libmwaw_internal.hxx:289
MWAWListenerPtr
std::shared_ptr< MWAWListener > MWAWListenerPtr
a smart pointer of MWAWListener
Definition: libmwaw_internal.hxx:551
MWAWFont.hxx
MWAWCell::E_Line2
Definition: MWAWCell.hxx:136
MWAWCell::VALIGN_DEFAULT
Definition: MWAWCell.hxx:133
MWAWCell::HALIGN_LEFT
Definition: MWAWCell.hxx:127
MWAWBox2< float >
MWAWFont
Class to store font.
Definition: MWAWFont.hxx:43
MWAWCell
a structure used to define a cell and its format
Definition: MWAWCell.hxx:52
MWAWCell::Format::m_currencySymbol
std::string m_currencySymbol
the currency symbol ( default '$')
Definition: MWAWCell.hxx:110
MWAWCellContent::FormulaInstruction::getPropertyList
librevenge::RVNGPropertyList getPropertyList(MWAWFontConverter &fontConverter, int fontId) const
returns a proplist corresponding to a instruction using a font converter to send the text
Definition: MWAWCell.cxx:724
MWAWCellContent::m_contentType
Type m_contentType
the content type ( by default unknown )
Definition: MWAWCell.hxx:468
MWAWCellContent::C_NUMBER
Definition: MWAWCell.hxx:419
MWAWCell::send
virtual bool send(MWAWListenerPtr listener, MWAWTable &table)
function called when a cell is send by MWAWTable to send a cell to a listener.
Definition: MWAWCell.cxx:487
MWAWVec2b
MWAWVec2< bool > MWAWVec2b
MWAWVec2 of bool.
Definition: libmwaw_internal.hxx:834
MWAWCell::extraLineType
const MWAWBorder & extraLineType() const
returns the extra line border
Definition: MWAWCell.hxx:334
MWAWCellContent::operator=
MWAWCellContent & operator=(MWAWCellContent const &)=default
MWAWCell::HALIGN_RIGHT
Definition: MWAWCell.hxx:127
MWAWVec2i
MWAWVec2< int > MWAWVec2i
MWAWVec2 of int.
Definition: libmwaw_internal.hxx:836
MWAWCell::operator=
MWAWCell & operator=(MWAWCell const &)=default
MWAWCellContent::C_UNKNOWN
Definition: MWAWCell.hxx:419
MWAWCell::setBdSize
void setBdSize(MWAWVec2f sz)
set the bdbox size(unit point)
Definition: MWAWCell.hxx:219
MWAWCell::Format::m_thousandHasSeparator
bool m_thousandHasSeparator
true if we must separate the thousand
Definition: MWAWCell.hxx:106
MWAWCell::Format::m_integerDigits
int m_integerDigits
the number of main digits
Definition: MWAWCell.hxx:100
MWAWCell::HALIGN_CENTER
Definition: MWAWCell.hxx:127
MWAWCell::F_TEXT
Definition: MWAWCell.hxx:56
MWAWCell::getFont
MWAWFont getFont() const
returns the font
Definition: MWAWCell.hxx:250

Generated on Wed Jul 24 2024 02:19:07 for libmwaw by doxygen 1.8.16