34 #ifndef LIBMWAW_INTERNAL_H 35 #define LIBMWAW_INTERNAL_H 49 #define M_PI 3.14159265358979323846 52 #include <librevenge-stream/librevenge-stream.h> 53 #include <librevenge/librevenge.h> 55 #if defined(_MSC_VER) || defined(__DJGPP__) 57 typedef signed char int8_t;
58 typedef unsigned char uint8_t;
59 typedef signed short int16_t;
60 typedef unsigned short uint16_t;
61 typedef signed int int32_t;
62 typedef unsigned int uint32_t;
63 typedef unsigned __int64 uint64_t;
64 typedef __int64 int64_t;
74 # ifdef HAVE_INTTYPES_H 75 # include <inttypes.h> 82 # include <inttypes.h> 91 # define gmtime_r(tp,tmp) (gmtime(tp)?(*(tmp)=*gmtime(tp),(tmp)):0) 92 # define localtime_r(tp,tmp) (localtime(tp)?(*(tmp)=*localtime(tp),(tmp)):0) 96 #if defined(SHAREDPTR_TR1) 98 using std::tr1::shared_ptr;
99 #elif defined(SHAREDPTR_STD) 101 using std::shared_ptr;
103 #include <boost/shared_ptr.hpp> 104 using boost::shared_ptr;
113 #if defined(__clang__) || defined(__GNUC__) 114 # define LIBMWAW_ATTRIBUTE_PRINTF(fmt, arg) __attribute__((__format__(__printf__, fmt, arg))) 116 # define LIBMWAW_ATTRIBUTE_PRINTF(fmt, arg) 120 #define MWAW_FALLTHROUGH 121 #if defined(__clang__) 122 # if defined(__has_cpp_attribute) && __has_cpp_attribute(clang::fallthrough) 123 # undef MWAW_FALLTHROUGH 124 # define MWAW_FALLTHROUGH [[clang::fallthrough]] 126 #elif defined(__GNUC__) 128 # undef MWAW_FALLTHROUGH 129 # define MWAW_FALLTHROUGH __attribute__ ((fallthrough)) 139 #define MWAW_DEBUG_MSG(M) libmwaw::printDebugMsg M 141 #define MWAW_DEBUG_MSG(M) 171 uint8_t
readU8(librevenge::RVNGInputStream *input);
173 void appendUnicode(uint32_t val, librevenge::RVNGString &buffer);
202 MWAWColor(
unsigned char r,
unsigned char g,
unsigned char b,
unsigned char a=255) :
203 m_value(uint32_t((a<<24)+(r<<16)+(g<<8)+b))
215 double w=1.-
static_cast<double>(k)/255.;
217 (static_cast<unsigned char>(255 * (1-static_cast<double>(c)/255) * w),
218 static_cast<unsigned char>(255 * (1-static_cast<double>(m)/255) * w),
219 static_cast<unsigned char>(255 * (1-static_cast<double>(y)/255) * w)
225 double c=(1-((L>=128) ? (2*static_cast<double>(L)-255) : (255-2*static_cast<double>(L)))/255)*
226 static_cast<double>(S)/255;
227 double tmp=std::fmod((static_cast<double>(H)*6/255),2)-1;
228 double x=c*(1-(tmp>0 ? tmp : -tmp));
229 unsigned char C=
static_cast<unsigned char>(255*c);
230 unsigned char M=
static_cast<unsigned char>(
static_cast<double>(L)-255*c/2);
231 unsigned char X=
static_cast<unsigned char>(255*x);
232 if (H<=42)
return MWAWColor(static_cast<unsigned char>(M+C),static_cast<unsigned char>(M+X),static_cast<unsigned char>(M));
233 if (H<=85)
return MWAWColor(static_cast<unsigned char>(M+X),static_cast<unsigned char>(M+C),static_cast<unsigned char>(M));
234 if (H<=127)
return MWAWColor(static_cast<unsigned char>(M),static_cast<unsigned char>(M+C),static_cast<unsigned char>(M+X));
235 if (H<=170)
return MWAWColor(static_cast<unsigned char>(M),static_cast<unsigned char>(M+X),static_cast<unsigned char>(M+C));
236 if (H<=212)
return MWAWColor(static_cast<unsigned char>(M+X),static_cast<unsigned char>(M),static_cast<unsigned char>(M+C));
237 return MWAWColor(static_cast<unsigned char>(M+C),static_cast<unsigned char>(M),static_cast<unsigned char>(M+X));
261 return static_cast<unsigned char>((m_value>>24)&0xFF);
266 return static_cast<unsigned char>(m_value&0xFF);
271 return static_cast<unsigned char>((m_value>>16)&0xFF);
276 return static_cast<unsigned char>((m_value>>8)&0xFF);
281 return (m_value&0xFFFFFF)==0;
286 return (m_value&0xFFFFFF)==0xFFFFFF;
291 return (c.
m_value&0xFFFFFF)==(m_value&0xFFFFFF);
296 return !operator==(c);
301 return (c.
m_value&0xFFFFFF)<(m_value&0xFFFFFF);
306 return (c.
m_value&0xFFFFFF)<=(m_value&0xFFFFFF);
311 return !operator<=(c);
316 return !operator<(c);
321 std::string str()
const;
330 enum Style { None, Simple, Dot, LargeDot, Dash };
332 enum Type { Single, Double, Triple };
335 MWAWBorder() : m_style(Simple), m_type(Single), m_width(1), m_widthsList(), m_color(
MWAWColor::black()), m_extra(
"") { }
339 bool addTo(librevenge::RVNGPropertyList &propList, std::string which=
"")
const;
343 return m_style==None || m_width <= 0;
348 return !operator!=(orig);
385 enum Type { None, PageCount, PageNumber, Date, Time, Title, Database };
392 bool addTo(librevenge::RVNGPropertyList &propList)
const;
394 librevenge::RVNGString getString()
const;
413 bool addTo(librevenge::RVNGPropertyList &propList)
const;
422 enum Type { FootNote, EndNote };
446 std::string type=
"image/pict") : m_dataList(), m_typeList()
448 add(binaryData, type);
455 for (
size_t i=0; i<m_dataList.size(); ++i) {
456 if (!m_dataList[i].empty())
462 void add(librevenge::RVNGBinaryData
const &binaryData, std::string type=
"image/pict")
464 size_t pos=m_dataList.size();
465 if (pos<m_typeList.size()) pos=m_typeList.size();
466 m_dataList.resize(pos+1);
467 m_dataList[pos]=binaryData;
468 m_typeList.resize(pos+1);
469 m_typeList[pos]=type;
472 bool addTo(librevenge::RVNGPropertyList &propList)
const;
624 explicit MWAWVec2(T xx=0,T yy=0) : m_x(xx), m_y(yy) { }
642 return (c==0) ? m_x : m_y;
648 return (c==0) ? m_x : m_y;
729 bool operator<(MWAWVec2<T>
const &p)
const 736 if (m_x < p.
m_x)
return -1;
737 if (m_x > p.
m_x)
return 1;
738 if (m_y < p.
m_y)
return -1;
739 if (m_y > p.
m_y)
return 1;
745 if (m_y < p.
m_y)
return -1;
746 if (m_y > p.
m_y)
return 1;
747 if (m_x < p.
m_x)
return -1;
748 if (m_x > p.
m_x)
return 1;
753 friend std::ostream &operator<< (std::ostream &o, MWAWVec2<T>
const &f)
755 o << f.m_x <<
"x" << f.m_y;
766 return s1.
cmp(s2) < 0;
772 typedef std::map<MWAWVec2<T>, T,
struct PosSizeLtX>
MapX;
781 return s1.
cmpY(s2) < 0;
787 typedef std::map<MWAWVec2<T>, T,
struct PosSizeLtY>
MapY;
817 for (
int c = 0; c < 3; c++) m_val[c] = T(p[c]);
849 void set(T xx, T yy, T zz)
872 void add(T dx, T dy, T dz)
882 for (
int c = 0; c < 3; c++) m_val[c] = T(m_val[c]+p.
m_val[c]);
888 for (
int c = 0; c < 3; c++) m_val[c] = T(m_val[c]-p.
m_val[c]);
895 for (
int c = 0; c < 3; c++) m_val[c] = T(m_val[c]*scale);
930 bool operator<(MWAWVec3<T>
const &p)
const 937 for (
int c = 0; c < 3; c++) {
938 if (m_val[c]<p.
m_val[c])
return -1;
939 if (m_val[c]>p.
m_val[c])
return 1;
945 friend std::ostream &operator<< (std::ostream &o, MWAWVec3<T>
const &f)
947 o << f.m_val[0] <<
"x" << f.m_val[1] <<
"x" << f.m_val[2];
958 return s1.
cmp(s2) < 0;
964 typedef std::map<MWAWVec3<T>, T,
struct PosSizeLt>
Map;
1001 return m_data.second;
1006 return m_data.first;
1011 return m_data.second;
1019 return c==0 ? m_data.first : m_data.second;
1024 return m_data.second-m_data.first;
1029 return MWAWVec2<T>((m_data.first.x()+m_data.second.x())/2,
1030 (m_data.first.y()+m_data.second.y())/2);
1053 m_data.second = m_data.first+sz;
1058 m_data.first = m_data.second-sz;
1065 m_data.first = centerPt - decal;
1066 m_data.second = centerPt + (sz - decal);
1072 m_data.first *= factor;
1073 m_data.second *= factor;
1080 m_data.second +=
MWAWVec2<T>(val-(val/2),val-(val/2));
1088 m_data.first[1]<box.
m_data.first[1]?m_data.first[1] : box.
m_data.first[1]);
1090 m_data.second[1]>box.
m_data.second[1]?m_data.second[1] : box.
m_data.second[1]);
1098 m_data.first[1]>box.
m_data.first[1]?m_data.first[1] : box.
m_data.first[1]);
1100 m_data.second[1]<box.
m_data.second[1]?m_data.second[1] : box.
m_data.second[1]);
1106 return m_data==mat.
m_data;
1111 return m_data!=mat.
m_data;
1114 bool operator<(MWAWBox2<T>
const &mat)
const 1116 return m_data<mat.m_data;
1119 bool operator<=(MWAWBox2<T>
const &mat)
const 1121 return m_data<=mat.m_data;
1126 return m_data>mat.
m_data;
1131 return m_data>=mat.
m_data;
1134 friend std::ostream &operator<< (std::ostream &o, MWAWBox2<T>
const &f)
1136 o <<
"(" << f.min() <<
"<->" << f.max() <<
")";
1164 return m_isIdentity;
1177 return c==0 ? m_data.first : m_data.second;
1182 if (m_isIdentity)
return pt;
1183 return multiplyDirection(pt)+
MWAWVec2f(m_data.first[2],m_data.second[2]);
1188 if (m_isIdentity)
return dir;
1190 for (
int coord=0; coord<2; ++coord) {
1191 MWAWVec3f const &row=coord==0 ? m_data.first : m_data.second;
1193 for (
int i=0; i<2; ++i)
1194 value+=row[i]*dir[i];
1202 if (m_isIdentity)
return box;
1210 for (
int row=0; row<2; ++row) {
1212 for (
int col=0; col<3; ++col) {
1214 for (
int i=0; i<3; ++i)
1215 value+=(*
this)[row][i]*(i==2 ? (col==2 ? 1.f : 0.f) : mat[i][col]);
1232 return m_data==mat.
m_data;
1237 return m_data!=mat.
m_data;
1242 return m_data<mat.
m_data;
1247 return m_data<=mat.
m_data;
1252 return m_data>mat.
m_data;
1257 return m_data>=mat.
m_data;
1296 bool convertDTFormat(std::string
const &dtFormat, librevenge::RVNGPropertyListVector &propVect);
T z() const
third element
Definition: libmwaw_internal.hxx:831
shared_ptr< MWAWListener > MWAWListenerPtr
a smart pointer of MWAWListener
Definition: libmwaw_internal.hxx:519
void setY(T yy)
resets the second element
Definition: libmwaw_internal.hxx:663
int m_number
the note number if defined
Definition: libmwaw_internal.hxx:432
shared_ptr< MWAWFontManager > MWAWFontManagerPtr
a smart pointer of MWAWFontManager
Definition: libmwaw_internal.hxx:513
MWAWVec3< T > & operator*=(U scale)
generic operator*=
Definition: libmwaw_internal.hxx:893
NumberingType
Definition: libmwaw_internal.hxx:184
bool operator<(MWAWColor const &c) const
operator<
Definition: libmwaw_internal.hxx:299
MWAWVec2< T > & operator-=(MWAWVec2< T > const &p)
operator-=
Definition: libmwaw_internal.hxx:683
void appendUnicode(uint32_t val, librevenge::RVNGString &buffer)
adds an unicode character to a string
Definition: libmwaw_internal.cxx:63
Definition: libmwaw_internal.hxx:192
MWAWColor & operator=(uint32_t argb)
operator=
Definition: libmwaw_internal.hxx:207
Definition: libmwaw_internal.hxx:184
Definition: libmwaw_internal.hxx:184
MWAWVec3< int > MWAWVec3i
MWAWVec3 of int.
Definition: libmwaw_internal.hxx:974
std::map< MWAWVec2< bool >, bool, struct PosSizeLtX > MapX
map of MWAWVec2
Definition: libmwaw_internal.hxx:772
T y() const
second element
Definition: libmwaw_internal.hxx:634
Definition: libmwaw_internal.hxx:192
Definition: libmwaw_internal.hxx:184
std::string m_data
the database/link field ( if defined )
Definition: libmwaw_internal.hxx:402
a font manager which can be used to store fonts, ...
Definition: MWAWFont.hxx:561
unsigned char getRed() const
returns the red value
Definition: libmwaw_internal.hxx:269
This class contains code needed to write a presention document.
Definition: MWAWPresentationListener.hxx:59
Type m_type
the border repetition
Definition: libmwaw_internal.hxx:369
Definition: libmwaw_internal.hxx:182
std::ostream & operator<<(std::ostream &o, Shape const &shape)
Definition: BeagleWksDRParser.cxx:98
A class which defines the page properties.
Definition: MWAWPageSpan.hxx:95
bool isEmpty() const
returns true if the border is empty
Definition: libmwaw_internal.hxx:341
MWAWBox2f rotateBoxFromCenter(MWAWBox2f const &box, float angle)
rotate a bdox and returns the final bdbox, angle is given in degree
Definition: libmwaw_internal.cxx:700
T & operator*()
operator*
Definition: libmwaw_internal.hxx:589
std::vector< librevenge::RVNGBinaryData > m_dataList
the picture content: one data by representation
Definition: libmwaw_internal.hxx:479
bool isWhite() const
return true if the color is white
Definition: libmwaw_internal.hxx:284
Definition: libmwaw_internal.hxx:192
This class contents the main functions needed to create a Word processing Document.
Definition: MWAWTextListener.hxx:64
bool isBlack() const
return true if the color is black
Definition: libmwaw_internal.hxx:279
static MWAWColor white()
return the white color
Definition: libmwaw_internal.hxx:245
MWAWNote(Type type)
constructor
Definition: libmwaw_internal.hxx:424
MWAWVec2(T xx=0, T yy=0)
constructor
Definition: libmwaw_internal.hxx:624
Definition: libmwaw_internal.hxx:192
std::string numberingValueToString(NumberingType type, int value)
Definition: libmwaw_internal.cxx:129
a link
Definition: libmwaw_internal.hxx:406
T m_data
the value
Definition: libmwaw_internal.hxx:611
bool operator!=(MWAWVec3< T > const &p) const
comparison!=
Definition: libmwaw_internal.hxx:925
shared_ptr< MWAWPresentationListener > MWAWPresentationListenerPtr
a smart pointer of MWAWPresentationListener
Definition: libmwaw_internal.hxx:525
bool convertDTFormat(std::string const &dtFormat, librevenge::RVNGPropertyListVector &propVect)
convert a DTFormat in a propertyList
Definition: libmwaw_internal.cxx:315
Definition: libmwaw_internal.hxx:182
void extend(T val)
extends the bdbox by (val, val) keeping the center
Definition: libmwaw_internal.hxx:1077
T * operator->()
operator*
Definition: libmwaw_internal.hxx:578
MWAWColor(unsigned char r, unsigned char g, unsigned char b, unsigned char a=255)
constructor from color
Definition: libmwaw_internal.hxx:202
void add(T dx, T dy, T dz)
increases the actuals values by dx, dy, dz
Definition: libmwaw_internal.hxx:872
Definition: libmwaw_internal.hxx:192
MWAWVariable(T const &def)
constructor with a default value
Definition: libmwaw_internal.hxx:545
void add(librevenge::RVNGBinaryData const &binaryData, std::string type="image/pict")
add a picture
Definition: libmwaw_internal.hxx:462
void resizeFromMax(MWAWVec2< T > const &sz)
resize the box keeping the maximum
Definition: libmwaw_internal.hxx:1056
static MWAWColor black()
return the back color
Definition: libmwaw_internal.hxx:240
std::map< MWAWVec3< int >, int, struct PosSizeLt > Map
map of MWAWVec3
Definition: libmwaw_internal.hxx:964
a structure used to define a picture style
Definition: MWAWGraphicStyle.hxx:47
bool operator==(MWAWBox2< T > const &mat) const
operator==
Definition: libmwaw_internal.hxx:1104
MWAWVec2< T > center() const
the box center
Definition: libmwaw_internal.hxx:1027
MWAWVec3< T > & operator-=(MWAWVec3< T > const &p)
operator-=
Definition: libmwaw_internal.hxx:886
void insert(MWAWVariable const &orig)
update the current value if orig is set
Definition: libmwaw_internal.hxx:565
This class contains the code needed to create Graphic document.
Definition: MWAWGraphicListener.hxx:59
SubDocumentType
Definition: libmwaw_internal.hxx:192
friend MWAWVec3< T > operator*(U scale, MWAWVec3< T > const &p1)
generic operator*
Definition: libmwaw_internal.hxx:913
std::string numberingTypeToString(NumberingType type)
Definition: libmwaw_internal.cxx:105
T y() const
second element
Definition: libmwaw_internal.hxx:826
Definition: libmwaw_internal.hxx:180
MWAWVec2< T > size() const
the box size
Definition: libmwaw_internal.hxx:1022
MWAWVec2< int > MWAWVec2i
MWAWVec2 of int.
Definition: libmwaw_internal.hxx:795
double m_width
the border total width in point
Definition: libmwaw_internal.hxx:371
Definition: libmwaw_internal.hxx:180
MWAWVec2(MWAWVec2< U > const &p)
generic copy constructor
Definition: libmwaw_internal.hxx:626
T x() const
first element
Definition: libmwaw_internal.hxx:821
friend MWAWVec2< T > operator-(MWAWVec2< T > const &p1, MWAWVec2< T > const &p2)
operator-
Definition: libmwaw_internal.hxx:705
Position
basic position enum
Definition: libmwaw_internal.hxx:180
Definition: libmwaw_internal.hxx:180
MWAWVec2< T > & operator*=(U scale)
generic operator*=
Definition: libmwaw_internal.hxx:691
MWAWBox2< int > MWAWBox2i
MWAWBox2 of int.
Definition: libmwaw_internal.hxx:1146
Type m_type
the note type
Definition: libmwaw_internal.hxx:428
void add(T dx, T dy)
increases the actuals values by dx and dy
Definition: libmwaw_internal.hxx:669
bool operator>(MWAWBox2< T > const &mat) const
operator>
Definition: libmwaw_internal.hxx:1124
Definition: libmwaw_internal.hxx:180
T & operator[](int c)
operator[]
Definition: libmwaw_internal.hxx:645
MWAWVec2< T > const & min() const
the minimum 2D point (in x and in y)
Definition: libmwaw_internal.hxx:994
small class which defines a vector with 3 elements
Definition: libmwaw_internal.hxx:804
bool isSet() const
return true if the variable is set
Definition: libmwaw_internal.hxx:600
namespace used to regroup all libwpd functions, enumerations which we have redefined for internal usa...
Definition: libmwaw_internal.cxx:50
Type
the line repetition
Definition: libmwaw_internal.hxx:332
int cmp(MWAWVec2< T > const &p) const
a comparison function: which first compares x then y
Definition: libmwaw_internal.hxx:734
Definition: libmwaw_internal.hxx:189
static MWAWColor colorFromCMYK(unsigned char c, unsigned char m, unsigned char y, unsigned char k)
return a color from a cmyk color ( basic)
Definition: libmwaw_internal.hxx:213
the class to store a color
Definition: libmwaw_internal.hxx:196
Definition: libmwaw_internal.hxx:192
Definition: libmwaw_internal.hxx:163
shared_ptr< MWAWSubDocument > MWAWSubDocumentPtr
a smart pointer of MWAWSubDocument
Definition: libmwaw_internal.hxx:531
friend MWAWVec3< T > operator-(MWAWVec3< T > const &p1, MWAWVec3< T > const &p2)
operator-
Definition: libmwaw_internal.hxx:906
MWAWField(Type type)
basic constructor
Definition: libmwaw_internal.hxx:388
T & operator[](int c)
operator[]
Definition: libmwaw_internal.hxx:842
Definition: libmwaw_internal.hxx:180
Definition: libmwaw_internal.hxx:189
librevenge::RVNGString m_label
the note label
Definition: libmwaw_internal.hxx:430
Style
the line style
Definition: libmwaw_internal.hxx:330
Definition: libmwaw_internal.hxx:184
T x() const
first element
Definition: libmwaw_internal.hxx:629
Type
enum to define note type
Definition: libmwaw_internal.hxx:422
MWAWLink()
basic constructor
Definition: libmwaw_internal.hxx:408
T m_y
second element
Definition: libmwaw_internal.hxx:789
bool operator()(MWAWVec3< T > const &s1, MWAWVec3< T > const &s2) const
comparaison function
Definition: libmwaw_internal.hxx:956
std::vector< double > m_widthsList
the different length used for each line/sep (if defined)
Definition: libmwaw_internal.hxx:375
MWAWVec2f rotatePointAroundCenter(MWAWVec2f const &point, MWAWVec2f const ¢er, float angle)
rotate a point around center, angle is given in degree
Definition: libmwaw_internal.cxx:692
Class to store font.
Definition: MWAWFont.hxx:43
a border
Definition: libmwaw_internal.hxx:328
small class which defines a 2D Box
Definition: libmwaw_internal.hxx:981
Definition: libmwaw_internal.hxx:189
MWAWVariable & operator=(T const &val)
set a value
Definition: libmwaw_internal.hxx:558
MWAWVec2< T > & min()
the minimum 2D point (in x and in y)
Definition: libmwaw_internal.hxx:1004
T m_val[3]
the values
Definition: libmwaw_internal.hxx:968
a class to define the parser state
Definition: MWAWParser.hxx:49
shared_ptr< MWAWRSRCParser > MWAWRSRCParserPtr
a smart pointer of MWAWRSRCParser
Definition: libmwaw_internal.hxx:527
bool m_set
a flag to know if the variable is set or not
Definition: libmwaw_internal.hxx:613
Definition: libmwaw_internal.hxx:192
bool operator==(MWAWVec3< T > const &p) const
comparison==
Definition: libmwaw_internal.hxx:920
void setX(T xx)
resets the first element
Definition: libmwaw_internal.hxx:658
MWAWEmbeddedObject(librevenge::RVNGBinaryData const &binaryData, std::string type="image/pict")
constructor
Definition: libmwaw_internal.hxx:445
bool operator>=(MWAWBox2< T > const &mat) const
operator>=
Definition: libmwaw_internal.hxx:1129
Definition: libmwaw_internal.hxx:159
This class contents the main functions needed to create a spreadsheet processing Document.
Definition: MWAWSpreadsheetListener.hxx:65
Type m_type
the type
Definition: libmwaw_internal.hxx:396
MWAWVec2< float > MWAWVec2f
MWAWVec2 of float.
Definition: libmwaw_internal.hxx:799
shared_ptr< MWAWSpreadsheetListener > MWAWSpreadsheetListenerPtr
a smart pointer of MWAWSpreadsheetListener
Definition: libmwaw_internal.hxx:529
Definition: libmwaw_internal.hxx:184
bool operator==(MWAWColor const &c) const
operator==
Definition: libmwaw_internal.hxx:289
MWAWVariable & operator=(MWAWVariable const &orig)
copy operator
Definition: libmwaw_internal.hxx:549
MWAWVec3< float > MWAWVec3f
MWAWVec3 of float.
Definition: libmwaw_internal.hxx:976
MWAWVec2< T > & operator+=(MWAWVec2< T > const &p)
operator+=
Definition: libmwaw_internal.hxx:676
MWAWBox2(MWAWBox2< U > const &p)
generic constructor
Definition: libmwaw_internal.hxx:989
MWAWVec2< bool > MWAWVec2b
MWAWVec2 of bool.
Definition: libmwaw_internal.hxx:793
Definition: libmwaw_internal.hxx:184
bool operator>(MWAWColor const &c) const
operator>
Definition: libmwaw_internal.hxx:309
int cmp(MWAWVec3< T > const &p) const
a comparison function: which first compares x values, then y values then z values.
Definition: libmwaw_internal.hxx:935
bool operator!=(MWAWBox2< T > const &mat) const
operator!=
Definition: libmwaw_internal.hxx:1109
abstract class used to store a subdocument (with a comparison function)
Definition: MWAWSubDocument.hxx:41
bool operator==(MWAWVec2< T > const &p) const
comparison==
Definition: libmwaw_internal.hxx:719
a manager which manages the lists, keeps the different kind of lists, to assure the unicity of each l...
Definition: MWAWList.hxx:197
Definition: libmwaw_internal.hxx:182
internal struct used to create sorted map, sorted by X, Y, Z
Definition: libmwaw_internal.hxx:954
uint32_t value() const
return the rgba value
Definition: libmwaw_internal.hxx:254
std::vector< std::string > m_typeList
the picture type: one type by representation
Definition: libmwaw_internal.hxx:481
void setX(T xx)
resets the first element
Definition: libmwaw_internal.hxx:856
Definition: libmwaw_internal.hxx:155
MWAWColor(uint32_t argb=0)
constructor
Definition: libmwaw_internal.hxx:198
small class use to define a embedded object
Definition: libmwaw_internal.hxx:439
void resizeFromCenter(MWAWVec2< T > const &sz)
resize the box keeping the center
Definition: libmwaw_internal.hxx:1061
#define LIBMWAW_ATTRIBUTE_PRINTF(fmt, arg)
Definition: libmwaw_internal.hxx:116
Definition: libmwaw_internal.hxx:151
Definition: libmwaw_internal.hxx:192
Definition: libmwaw_internal.hxx:189
unsigned char getGreen() const
returns the green value
Definition: libmwaw_internal.hxx:274
MWAWVec2< T > const & operator[](int c) const
the two extremum points which defined the box
Definition: libmwaw_internal.hxx:1016
a class which stores section properties
Definition: MWAWSection.hxx:45
MWAWBox2< T > getUnion(MWAWBox2< T > const &box) const
returns the union between this and box
Definition: libmwaw_internal.hxx:1084
MWAWVec3(MWAWVec3< U > const &p)
generic copy constructor
Definition: libmwaw_internal.hxx:815
bool operator>=(MWAWColor const &c) const
operator>=
Definition: libmwaw_internal.hxx:314
shared_ptr< MWAWInputStream > MWAWInputStreamPtr
a smart pointer of MWAWInputStream
Definition: libmwaw_internal.hxx:517
MWAWEmbeddedObject()
empty constructor
Definition: libmwaw_internal.hxx:441
MWAWBox2(MWAWVec2< T > minPt=MWAWVec2< T >(), MWAWVec2< T > maxPt=MWAWVec2< T >())
constructor
Definition: libmwaw_internal.hxx:985
friend MWAWVec2< T > operator+(MWAWVec2< T > const &p1, MWAWVec2< T > const &p2)
operator+
Definition: libmwaw_internal.hxx:699
bool operator!=(MWAWColor const &c) const
operator!=
Definition: libmwaw_internal.hxx:294
std::string writingModeToString(WritingMode mode)
a function to convert a writing mode in string lt-rb, ...
Definition: libmwaw_internal.cxx:183
Definition: libmwaw_internal.hxx:182
Style m_style
the border style
Definition: libmwaw_internal.hxx:364
friend MWAWVec3< T > operator+(MWAWVec3< T > const &p1, MWAWVec3< T > const &p2)
operator+
Definition: libmwaw_internal.hxx:900
a namespace used to convert Mac font characters in unicode
Definition: MWAWFontConverter.hxx:62
shared_ptr< MWAWGraphicListener > MWAWGraphicListenerPtr
a smart pointer of MWAWGraphicListener
Definition: libmwaw_internal.hxx:515
void setZ(T zz)
resets the third element
Definition: libmwaw_internal.hxx:866
MWAWVec3< unsigned char > MWAWVec3uc
MWAWVec3 of unsigned char.
Definition: libmwaw_internal.hxx:972
MWAWVec2< T > & max()
the maximum 2D point (in x and in y)
Definition: libmwaw_internal.hxx:1009
T operator[](int c) const
operator[]
Definition: libmwaw_internal.hxx:836
MWAWVec2< T > const & max() const
the maximum 2D point (in x and in y)
Definition: libmwaw_internal.hxx:999
an noop deleter used to transform a libwpd pointer in a false shared_ptr
Definition: libmwaw_internal.hxx:109
Definition: libmwaw_internal.hxx:182
a structure used to define a picture shape
Definition: MWAWGraphicShape.hxx:45
MWAWVec3(T xx=0, T yy=0, T zz=0)
constructor
Definition: libmwaw_internal.hxx:808
shared_ptr< MWAWFontConverter > MWAWFontConverterPtr
a smart pointer of MWAWFontConverter
Definition: libmwaw_internal.hxx:509
Definition: libmwaw_internal.hxx:184
bool operator()(MWAWVec2< T > const &s1, MWAWVec2< T > const &s2) const
comparaison function
Definition: libmwaw_internal.hxx:779
std::pair< MWAWVec2< T >, MWAWVec2< T > > m_data
the data
Definition: libmwaw_internal.hxx:1142
internal struct used to create sorted map, sorted by Y
Definition: libmwaw_internal.hxx:777
MWAWBox2< float > MWAWBox2f
MWAWBox2 of float.
Definition: libmwaw_internal.hxx:1148
unsigned char getBlue() const
returns the green value
Definition: libmwaw_internal.hxx:264
bool operator!=(MWAWVec2< T > const &p) const
comparison!=
Definition: libmwaw_internal.hxx:724
MWAWBox2< T > getIntersection(MWAWBox2< T > const &box) const
returns the intersection between this and box
Definition: libmwaw_internal.hxx:1094
bool isEmpty() const
return true if the picture contains no data
Definition: libmwaw_internal.hxx:453
class to store the paragraph properties
Definition: MWAWParagraph.hxx:81
std::string m_HRef
the href field
Definition: libmwaw_internal.hxx:416
void setMax(MWAWVec2< T > const &y)
resets the maximum point
Definition: libmwaw_internal.hxx:1045
void setSet(bool newVal)
define if the variable is set
Definition: libmwaw_internal.hxx:605
a field
Definition: libmwaw_internal.hxx:383
static MWAWColor colorFromHSL(unsigned char H, unsigned char S, unsigned char L)
return a color from a hsl color (basic)
Definition: libmwaw_internal.hxx:223
std::map< MWAWVec2< bool >, bool, struct PosSizeLtY > MapY
map of MWAWVec2
Definition: libmwaw_internal.hxx:787
bool operator==(MWAWBorder const &orig) const
operator==
Definition: libmwaw_internal.hxx:346
std::string m_DTFormat
the date/time format using strftime format if defined
Definition: libmwaw_internal.hxx:400
MWAWVariable(MWAWVariable const &orig)
copy constructor
Definition: libmwaw_internal.hxx:547
unsigned char getAlpha() const
returns the alpha value
Definition: libmwaw_internal.hxx:259
Definition: libmwaw_internal.hxx:192
shared_ptr< MWAWParserState > MWAWParserStatePtr
a smart pointer of MWAWParserState
Definition: libmwaw_internal.hxx:523
uint8_t readU8(librevenge::RVNGInputStream *input)
Definition: libmwaw_internal.cxx:52
std::string m_extra
extra data ( if needed)
Definition: libmwaw_internal.hxx:379
WritingMode
the different writing mode
Definition: libmwaw_internal.hxx:189
int cmpY(MWAWVec2< T > const &p) const
a comparison function: which first compares y then x
Definition: libmwaw_internal.hxx:743
a note
Definition: libmwaw_internal.hxx:420
virtual class which defines the ancestor of all main zone parser
Definition: MWAWParser.hxx:99
T const * operator->() const
operator*
Definition: libmwaw_internal.hxx:573
Class to define the position of an object (textbox, picture, ..) in the document. ...
Definition: MWAWPosition.hxx:47
Type
Defines some basic type for field.
Definition: libmwaw_internal.hxx:385
This class contains a virtual interface to all listener.
Definition: MWAWListener.hxx:49
MWAWVec2< long > MWAWVec2l
MWAWVec2 of long.
Definition: libmwaw_internal.hxx:797
MWAWBorder()
constructor
Definition: libmwaw_internal.hxx:335
basic class to store an entry in a file This contained :
Definition: MWAWEntry.hxx:46
T operator[](int c) const
operator[]
Definition: libmwaw_internal.hxx:639
void operator()(T *)
Definition: libmwaw_internal.hxx:110
T m_x
first element
Definition: libmwaw_internal.hxx:789
void scale(U factor)
scales all points of the box by factor
Definition: libmwaw_internal.hxx:1070
MWAWBox2< long > MWAWBox2l
MWAWBox2 of long.
Definition: libmwaw_internal.hxx:1150
Definition: libmwaw_internal.hxx:189
a small structure used to store the informations about a list
Definition: MWAWList.hxx:107
the main class to read a Mac resource fork
Definition: MWAWRSRCParser.hxx:46
Definition: libmwaw_internal.hxx:182
MWAWColor m_color
the border color
Definition: libmwaw_internal.hxx:377
bool operator<=(MWAWColor const &c) const
operator<=
Definition: libmwaw_internal.hxx:304
MWAWVec3< T > & operator+=(MWAWVec3< T > const &p)
operator+=
Definition: libmwaw_internal.hxx:880
libmwaw::NumberingType m_numberingType
the number type ( for number field )
Definition: libmwaw_internal.hxx:398
Definition: libmwaw_internal.hxx:192
MWAWVariable()
constructor
Definition: libmwaw_internal.hxx:543
main class used to define store librevenge::RVNGDrawingInterface lists of command in a librevenge::RV...
Definition: MWAWGraphicEncoder.hxx:55
friend MWAWVec2< T > operator*(U scale, MWAWVec2< T > const &p1)
generic operator*
Definition: libmwaw_internal.hxx:712
internal struct used to create sorted map, sorted by X
Definition: libmwaw_internal.hxx:762
a generic variable template: value + flag to know if the variable is set
Definition: libmwaw_internal.hxx:541
bool operator!=(MWAWBorder const &orig) const
operator!=
Definition: libmwaw_internal.hxx:351
Definition: libmwaw_internal.hxx:180
void resizeFromMin(MWAWVec2< T > const &sz)
resize the box keeping the minimum
Definition: libmwaw_internal.hxx:1051
shared_ptr< MWAWTextListener > MWAWTextListenerPtr
a smart pointer of MWAWTextListener
Definition: libmwaw_internal.hxx:533
uint32_t m_value
the argb color
Definition: libmwaw_internal.hxx:324
T const & operator*() const
operator*
Definition: libmwaw_internal.hxx:584
Definition: libmwaw_internal.hxx:147
small class which defines a vector with 2 elements
Definition: libmwaw_internal.hxx:620
shared_ptr< MWAWListManager > MWAWListManagerPtr
a smart pointer of MWAWListManager
Definition: libmwaw_internal.hxx:521
void setY(T yy)
resets the second element
Definition: libmwaw_internal.hxx:861
bool operator()(MWAWVec2< T > const &s1, MWAWVec2< T > const &s2) const
comparaison function
Definition: libmwaw_internal.hxx:764
void setMin(MWAWVec2< T > const &x)
resets the minimum point
Definition: libmwaw_internal.hxx:1040