10 #ifndef __VSDFIELDLIST_H__ 11 #define __VSDFIELDLIST_H__ 16 #include <librevenge/librevenge.h> 32 virtual librevenge::RVNGString
getString(
const std::map<unsigned, librevenge::RVNGString> &) = 0;
34 virtual void setFormat(
unsigned short) = 0;
42 VSDTextField(
unsigned id,
unsigned level,
int nameId,
int formatStringId)
46 m_formatStringId(formatStringId) {}
50 librevenge::RVNGString
getString(
const std::map<unsigned, librevenge::RVNGString> &strVec)
override;
63 VSDNumericField(
unsigned id,
unsigned level,
unsigned short format,
unsigned short cellType,
double number,
int formatStringId)
67 m_cell_type(cellType),
69 m_formatStringId(formatStringId) {}
73 librevenge::RVNGString
getString(
const std::map<unsigned, librevenge::RVNGString> &)
override;
75 void setFormat(
unsigned short format)
override;
77 void setValue(
double number)
override;
79 librevenge::RVNGString datetimeToString(
const char *format,
double datetime);
94 void setElementsOrder(
const std::vector<unsigned> &m_elementsOrder);
95 void addFieldList(
unsigned id,
unsigned level);
96 void addTextField(
unsigned id,
unsigned level,
int nameId,
int formatStringId);
97 void addNumericField(
unsigned id,
unsigned level,
unsigned short format,
unsigned short cellType,
double number,
int formatStringId);
98 void addClonedField(
unsigned id);
103 return (
unsigned long)m_elements.size();
107 return (m_elements.empty());
111 std::map<unsigned, std::unique_ptr<VSDFieldListElement>>
m_elements;
118 #endif // __VSDFIELDLIST_H__ void setNameId(int) override
Definition: VSDFieldList.h:74
unsigned m_level
Definition: VSDFieldList.h:56
~VSDNumericField() override
Definition: VSDFieldList.h:70
virtual void setValue(double)=0
virtual void setFormat(unsigned short)=0
VSDFieldListElement()
Definition: VSDFieldList.h:28
std::map< unsigned, std::unique_ptr< VSDFieldListElement > > m_elements
Definition: VSDFieldList.h:111
Definition: VSDFieldList.h:25
void setFormat(unsigned short) override
Definition: VSDFieldList.h:52
bool empty() const
Definition: VSDFieldList.h:105
VSDTextField(unsigned id, unsigned level, int nameId, int formatStringId)
Definition: VSDFieldList.h:42
VSDNumericField(unsigned id, unsigned level, unsigned short format, unsigned short cellType, double number, int formatStringId)
Definition: VSDFieldList.h:63
virtual librevenge::RVNGString getString(const std::map< unsigned, librevenge::RVNGString > &)=0
virtual void setCellType(unsigned short)=0
unsigned short m_format
Definition: VSDFieldList.h:81
int m_formatStringId
Definition: VSDFieldList.h:84
Definition: VSDCollector.h:20
Definition: VSDFieldList.h:87
virtual void setNameId(int)=0
virtual void handle(VSDCollector *collector) const =0
int m_nameId
Definition: VSDFieldList.h:57
Definition: VSDFieldList.h:39
double m_number
Definition: VSDFieldList.h:83
virtual VSDFieldListElement * clone()=0
unsigned m_level
Definition: VSDFieldList.h:80
Definition: libvisio_utils.h:48
~VSDTextField() override
Definition: VSDFieldList.h:47
Definition: VSDFieldList.h:60
unsigned long size() const
Definition: VSDFieldList.h:101
void setValue(double) override
Definition: VSDFieldList.h:54
virtual ~VSDFieldListElement()
Definition: VSDFieldList.h:29
void setCellType(unsigned short) override
Definition: VSDFieldList.h:53
unsigned short m_cell_type
Definition: VSDFieldList.h:82
unsigned m_level
Definition: VSDFieldList.h:113
std::vector< unsigned > m_elementsOrder
Definition: VSDFieldList.h:112