34 #ifndef LIBSTAROFFICE_INTERNAL_H 35 #define LIBSTAROFFICE_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;
114 #define STOFF_FALLTHROUGH 115 #if defined(__clang__) 116 # if defined(__has_cpp_attribute) && __has_cpp_attribute(clang::fallthrough) 117 # undef STOFF_FALLTHROUGH 118 # define STOFF_FALLTHROUGH [[clang::fallthrough]] 120 #elif defined(__GNUC__) 122 # undef STOFF_FALLTHROUGH 123 # define STOFF_FALLTHROUGH __attribute__ ((fallthrough)) 127 #if defined(__clang__) || defined(__GNUC__) 128 # define LIBSTOFF_ATTRIBUTE_PRINTF(fmt, arg) __attribute__((__format__(__printf__, fmt, arg))) 130 # define LIBSTOFF_ATTRIBUTE_PRINTF(fmt, arg) 139 #define STOFF_DEBUG_MSG(M) libstoff::printDebugMsg M 141 #define STOFF_DEBUG_MSG(M) 171 uint8_t
readU8(librevenge::RVNGInputStream *input);
173 void appendUnicode(uint32_t val, librevenge::RVNGString &buffer);
175 librevenge::RVNGString
getString(std::vector<uint32_t>
const &unicode);
199 STOFFColor(
unsigned char r,
unsigned char g,
unsigned char b,
unsigned char a=255) :
200 m_value(uint32_t((a<<24)+(r<<16)+(g<<8)+b))
212 double w=1.-double(k)/255.;
214 (static_cast<unsigned char>(255 * (1-
double(c)/255) * w),
215 static_cast<unsigned char>(255 * (1-
double(m)/255) * w),
216 static_cast<unsigned char>(255 * (1-
double(y)/255) * w)
222 double c=(1-((L>=128) ? (2*
double(L)-255) : (255-2*
double(L)))/255)*
224 double tmp=std::fmod((
double(H)*6/255),2)-1;
225 double x=c*(1-(tmp>0 ? tmp : -tmp));
226 unsigned char C=
static_cast<unsigned char>(255*c);
227 unsigned char M=
static_cast<unsigned char>(double(L)-255*c/2);
228 unsigned char X=
static_cast<unsigned char>(255*x);
229 if (H<=42)
return STOFFColor(static_cast<unsigned char>(M+C),static_cast<unsigned char>(M+X),static_cast<unsigned char>(M));
230 if (H<=85)
return STOFFColor(static_cast<unsigned char>(M+X),static_cast<unsigned char>(M+C),static_cast<unsigned char>(M));
231 if (H<=127)
return STOFFColor(static_cast<unsigned char>(M),static_cast<unsigned char>(M+C),static_cast<unsigned char>(M+X));
232 if (H<=170)
return STOFFColor(static_cast<unsigned char>(M),static_cast<unsigned char>(M+X),static_cast<unsigned char>(M+C));
233 if (H<=212)
return STOFFColor(static_cast<unsigned char>(M+X),static_cast<unsigned char>(M),static_cast<unsigned char>(M+C));
234 return STOFFColor(static_cast<unsigned char>(M+C),static_cast<unsigned char>(M),static_cast<unsigned char>(M+X));
258 return static_cast<unsigned char>((m_value>>24)&0xFF);
263 m_value=(m_value&0xFFFFFF)|uint32_t(alpha<<24);
268 return static_cast<unsigned char>(m_value&0xFF);
273 return static_cast<unsigned char>((m_value>>16)&0xFF);
278 return static_cast<unsigned char>((m_value>>8)&0xFF);
283 return (m_value&0xFFFFFF)==0;
288 return (m_value&0xFFFFFF)==0xFFFFFF;
293 return (c.
m_value&0xFFFFFF)==(m_value&0xFFFFFF);
298 return !operator==(c);
303 return (c.
m_value&0xFFFFFF)<(m_value&0xFFFFFF);
308 return (c.
m_value&0xFFFFFF)<=(m_value&0xFFFFFF);
313 return !operator<=(c);
318 return !operator<(c);
323 std::string str()
const;
336 bool addTo(librevenge::RVNGPropertyList &propList, std::string which=
"")
const;
340 return m_outWidth==0 && m_inWidth==0;
345 return !operator!=(orig);
373 void addTo(librevenge::RVNGPropertyList &propList)
const;
386 bool addTo(librevenge::RVNGPropertyList &propList)
const;
395 enum Type { FootNote, EndNote };
419 std::string type=
"image/pict") : m_dataList(), m_typeList(), m_filenameLink(
"")
421 add(binaryData, type);
428 if (!m_filenameLink.empty())
430 for (
size_t i=0; i<m_dataList.size(); ++i) {
431 if (!m_dataList[i].empty())
437 void add(librevenge::RVNGBinaryData
const &binaryData, std::string type=
"image/pict")
439 size_t pos=m_dataList.size();
440 if (pos<m_typeList.size()) pos=m_typeList.size();
441 m_dataList.resize(pos+1);
442 m_dataList[pos]=binaryData;
443 m_typeList.resize(pos+1);
444 m_typeList[pos]=type;
447 bool addTo(librevenge::RVNGPropertyList &propList)
const;
449 bool addAsFillImageTo(librevenge::RVNGPropertyList &propList)
const;
609 return (c==0) ? m_x : m_y;
615 return (c==0) ? m_x : m_y;
696 bool operator<(STOFFVec2<T>
const &p)
const 703 if (m_x < p.
m_x)
return -1;
704 if (m_x > p.
m_x)
return 1;
705 if (m_y < p.
m_y)
return -1;
706 if (m_y > p.
m_y)
return 1;
712 if (m_y < p.
m_y)
return -1;
713 if (m_y > p.
m_y)
return 1;
714 if (m_x < p.
m_x)
return -1;
715 if (m_x > p.
m_x)
return 1;
720 friend std::ostream &operator<< (std::ostream &o, STOFFVec2<T>
const &f)
722 o << f.m_x <<
"x" << f.m_y;
733 return s1.
cmp(s2) < 0;
739 typedef std::map<STOFFVec2<T>, T,
struct PosSizeLtX>
MapX;
748 return s1.
cmpY(s2) < 0;
754 typedef std::map<STOFFVec2<T>, T,
struct PosSizeLtY>
MapY;
784 for (
int c = 0; c < 3; c++) m_val[c] = T(p[c]);
816 void set(T xx, T yy, T zz)
839 void add(T dx, T dy, T dz)
849 for (
int c = 0; c < 3; c++) m_val[c] = T(m_val[c]+p.
m_val[c]);
855 for (
int c = 0; c < 3; c++) m_val[c] = T(m_val[c]-p.
m_val[c]);
862 for (
int c = 0; c < 3; c++) m_val[c] = T(m_val[c]*scale);
897 bool operator<(STOFFVec3<T>
const &p)
const 904 for (
int c = 0; c < 3; c++) {
905 if (m_val[c]<p.
m_val[c])
return -1;
906 if (m_val[c]>p.
m_val[c])
return 1;
912 friend std::ostream &operator<< (std::ostream &o, STOFFVec3<T>
const &f)
914 o << f.m_val[0] <<
"x" << f.m_val[1] <<
"x" << f.m_val[2];
925 return s1.
cmp(s2) < 0;
931 typedef std::map<STOFFVec3<T>, T,
struct PosSizeLt>
Map;
962 for (
int c=0; c < 2; c++) m_pt[c] = p[c];
996 return m_pt[1]-m_pt[0];
1002 (m_pt[0].y()+m_pt[1].y())/2);
1025 m_pt[1] = m_pt[0]+sz;
1030 m_pt[0] = m_pt[1]-sz;
1036 m_pt[0] = centerPt - 0.5*sz;
1037 m_pt[1] = centerPt + (sz - 0.5*sz);
1059 m_pt[0][1]<box.
m_pt[0][1]?m_pt[0][1] : box.
m_pt[0][1]);
1061 m_pt[1][1]>box.
m_pt[1][1]?m_pt[1][1] : box.
m_pt[1][1]);
1069 m_pt[0][1]>box.
m_pt[0][1]?m_pt[0][1] : box.
m_pt[0][1]);
1071 m_pt[1][1]<box.
m_pt[1][1]?m_pt[1][1] : box.
m_pt[1][1]);
1085 bool operator<(STOFFBox2<T>
const &p)
const 1093 int diff = m_pt[0].cmpY(p.
m_pt[0]);
1094 if (diff)
return diff;
1095 diff = m_pt[1].cmpY(p.
m_pt[1]);
1096 if (diff)
return diff;
1101 friend std::ostream &operator<< (std::ostream &o, STOFFBox2<T>
const &f)
1103 o <<
"(" << f.m_pt[0] <<
"<->" << f.m_pt[1] <<
")";
1114 return s1.
cmp(s2) < 0;
1120 typedef std::map<STOFFBox2<T>, T,
struct PosSizeLt>
Map;
1141 return 0.028346457*double(value);
1152 void splitString(librevenge::RVNGString
const &
string, librevenge::RVNGString
const &delim,
1153 librevenge::RVNGString &string1, librevenge::RVNGString &string2);
1157 librevenge::RVNGString
simplifyString(librevenge::RVNGString
const &s);
1160 float getScaleFactor(librevenge::RVNGUnit orig, librevenge::RVNGUnit dest);
Definition: libstaroffice_internal.hxx:182
STOFFVec3< float > STOFFVec3f
STOFFVec3 of float.
Definition: libstaroffice_internal.hxx:945
std::vector< std::string > m_typeList
the picture type: one type by representation
Definition: libstaroffice_internal.hxx:458
friend STOFFVec2< T > operator*(U scale, STOFFVec2< T > const &p1)
generic operator*
Definition: libstaroffice_internal.hxx:679
void extend(T val)
extends the bdbox by (val, val) keeping the center
Definition: libstaroffice_internal.hxx:1048
an noop deleter used to transform a libwpd pointer in a false shared_ptr
Definition: libstaroffice_internal.hxx:109
bool isEmpty() const
returns true if the border is empty
Definition: libstaroffice_internal.hxx:338
bool isBlack() const
return true if the color is black
Definition: libstaroffice_internal.hxx:281
void setZ(T zz)
resets the third element
Definition: libstaroffice_internal.hxx:833
Type m_type
the note type
Definition: libstaroffice_internal.hxx:401
std::map< STOFFVec3< bool >, bool, struct PosSizeLt > Map
Definition: libstaroffice_internal.hxx:931
STOFFVec3< T > & operator+=(STOFFVec3< T > const &p)
operator+=
Definition: libstaroffice_internal.hxx:847
Definition: libstaroffice_internal.hxx:184
internal struct used to create sorted map, sorted by X
Definition: libstaroffice_internal.hxx:729
Definition: libstaroffice_internal.hxx:182
static STOFFColor black()
return the back color
Definition: libstaroffice_internal.hxx:237
shared_ptr< STOFFInputStream > STOFFInputStreamPtr
a smart pointer of STOFFInputStream
Definition: libstaroffice_internal.hxx:488
bool isEmpty() const
return true if the picture contains no data
Definition: libstaroffice_internal.hxx:426
void setX(T xx)
resets the first element
Definition: libstaroffice_internal.hxx:625
friend STOFFVec2< T > operator+(STOFFVec2< T > const &p1, STOFFVec2< T > const &p2)
operator+
Definition: libstaroffice_internal.hxx:666
T & operator[](int c)
operator[]
Definition: libstaroffice_internal.hxx:612
STOFFVec2< long > STOFFVec2l
STOFFVec2 of long.
Definition: libstaroffice_internal.hxx:764
STOFFVec2f rotatePointAroundCenter(STOFFVec2f const &point, STOFFVec2f const ¢er, float angle)
rotate a point around center, angle is given in degree
Definition: libstaroffice_internal.cxx:455
a border line
Definition: libstaroffice_internal.hxx:330
friend STOFFVec2< T > operator-(STOFFVec2< T > const &p1, STOFFVec2< T > const &p2)
operator-
Definition: libstaroffice_internal.hxx:672
STOFFBox2< T > getUnion(STOFFBox2< T > const &box) const
returns the union between this and box
Definition: libstaroffice_internal.hxx:1055
STOFFBorderLine()
constructor
Definition: libstaroffice_internal.hxx:332
Definition: libstaroffice_internal.hxx:186
Definition: libstaroffice_internal.hxx:184
STOFFVec2< T > & max()
the maximum 2D point (in x and in y)
Definition: libstaroffice_internal.hxx:981
Definition: libstaroffice_internal.hxx:155
bool operator!=(STOFFVec3< T > const &p) const
comparison!=
Definition: libstaroffice_internal.hxx:892
librevenge::RVNGString m_filenameLink
a picture link
Definition: libstaroffice_internal.hxx:460
bool operator()(STOFFVec2< T > const &s1, STOFFVec2< T > const &s2) const
comparaison function
Definition: libstaroffice_internal.hxx:731
std::string numberingValueToString(NumberingType type, int value)
Definition: libstaroffice_internal.cxx:145
STOFFVec2f convertMiniMToPointVect(T const &value)
convert 1/100th millimeter vector to point
Definition: libstaroffice_internal.hxx:1145
void insert(STOFFVariable const &orig)
update the current value if orig is set
Definition: libstaroffice_internal.hxx:532
Definition: libstaroffice_internal.hxx:184
Definition: libstaroffice_internal.hxx:189
a generic variable template: value + flag to know if the variable is set
Definition: libstaroffice_internal.hxx:508
double convertMiniMToPoint(T const &value)
convert 1/100th millimeter to point
Definition: libstaroffice_internal.hxx:1139
Definition: libstaroffice_internal.hxx:186
unsigned char getGreen() const
returns the green value
Definition: libstaroffice_internal.hxx:276
small class which defines a 2D Box
Definition: libstaroffice_internal.hxx:950
std::map< STOFFVec2< bool >, bool, struct PosSizeLtX > MapX
Definition: libstaroffice_internal.hxx:739
small class which defines a vector with 2 elements
Definition: libstaroffice_internal.hxx:587
STOFFVec3< bool > STOFFVec3b
STOFFVec3 of bool.
Definition: libstaroffice_internal.hxx:939
shared_ptr< STOFFTextListener > STOFFTextListenerPtr
a smart pointer of STOFFTextListener
Definition: libstaroffice_internal.hxx:500
Definition: libstaroffice_internal.hxx:182
int cmp(STOFFVec2< T > const &p) const
a comparison function: which first compares x then y
Definition: libstaroffice_internal.hxx:701
int m_outWidth
the outline width in TWIP
Definition: libstaroffice_internal.hxx:357
void resizeFromCenter(STOFFVec2< T > const &sz)
resize the box keeping the center
Definition: libstaroffice_internal.hxx:1033
STOFFVec2< T > m_pt[2]
the two extremities
Definition: libstaroffice_internal.hxx:1124
T m_x
first element
Definition: libstaroffice_internal.hxx:756
shared_ptr< STOFFSpreadsheetListener > STOFFSpreadsheetListenerPtr
a smart pointer of STOFFSpreadsheetListener
Definition: libstaroffice_internal.hxx:496
T x() const
first element
Definition: libstaroffice_internal.hxx:788
STOFFColor & operator=(uint32_t argb)
operator=
Definition: libstaroffice_internal.hxx:204
Definition: libstaroffice_internal.hxx:189
int cmp(STOFFBox2< T > const &p) const
comparison function : fist sorts min by Y,X values then max extremity
Definition: libstaroffice_internal.hxx:1091
bool operator!=(STOFFBorderLine const &orig) const
operator!=
Definition: libstaroffice_internal.hxx:348
bool isWhite() const
return true if the color is white
Definition: libstaroffice_internal.hxx:286
STOFFVariable()
constructor
Definition: libstaroffice_internal.hxx:510
STOFFColor m_color
the border color
Definition: libstaroffice_internal.hxx:361
int m_inWidth
the inline width in TWIP
Definition: libstaroffice_internal.hxx:359
STOFFBox2< long > STOFFBox2l
STOFFBox2 of long.
Definition: libstaroffice_internal.hxx:1132
Definition: libstaroffice_internal.hxx:189
unsigned char getAlpha() const
returns the alpha value
Definition: libstaroffice_internal.hxx:256
a link
Definition: libstaroffice_internal.hxx:379
uint32_t m_value
the argb color
Definition: libstaroffice_internal.hxx:326
Definition: libstaroffice_internal.hxx:186
T m_val[3]
the values
Definition: libstaroffice_internal.hxx:935
librevenge::RVNGPropertyList m_propertyList
the property list
Definition: libstaroffice_internal.hxx:375
bool operator==(STOFFColor const &c) const
operator==
Definition: libstaroffice_internal.hxx:291
Definition: libstaroffice_internal.hxx:186
std::ostream & operator<<(std::ostream &o, STOFFColor const &c)
Definition: libstaroffice_internal.cxx:213
unsigned char getBlue() const
returns the green value
Definition: libstaroffice_internal.hxx:266
Definition: libstaroffice_internal.hxx:184
STOFFBox2(STOFFBox2< U > const &p)
generic constructor
Definition: libstaroffice_internal.hxx:960
a class to define the parser state
Definition: STOFFParser.hxx:49
void splitString(librevenge::RVNGString const &string, librevenge::RVNGString const &delim, librevenge::RVNGString &string1, librevenge::RVNGString &string2)
split a string in two. If the delimiter is not present, string1=string
Definition: libstaroffice_internal.cxx:413
STOFFVariable & operator=(STOFFVariable const &orig)
copy operator
Definition: libstaroffice_internal.hxx:516
STOFFVec2< T > center() const
the box center
Definition: libstaroffice_internal.hxx:999
NumberingType
Definition: libstaroffice_internal.hxx:186
void scale(U factor)
scales all points of the box by factor
Definition: libstaroffice_internal.hxx:1041
friend STOFFVec3< T > operator+(STOFFVec3< T > const &p1, STOFFVec3< T > const &p2)
operator+
Definition: libstaroffice_internal.hxx:867
STOFFVec2< T > const & min() const
the minimum 2D point (in x and in y)
Definition: libstaroffice_internal.hxx:966
T const & operator*() const
operator*
Definition: libstaroffice_internal.hxx:551
STOFFBox2< T > getIntersection(STOFFBox2< T > const &box) const
returns the intersection between this and box
Definition: libstaroffice_internal.hxx:1065
internal struct used to create sorted map, sorted by X, Y, Z
Definition: libstaroffice_internal.hxx:921
uint32_t value() const
return the rgba value
Definition: libstaroffice_internal.hxx:251
void add(librevenge::RVNGBinaryData const &binaryData, std::string type="image/pict")
add a picture
Definition: libstaroffice_internal.hxx:437
Definition: libstaroffice_internal.hxx:186
void appendUnicode(uint32_t val, librevenge::RVNGString &buffer)
adds an unicode character to a string
Definition: libstaroffice_internal.cxx:81
STOFFVec2(T xx=0, T yy=0)
constructor
Definition: libstaroffice_internal.hxx:591
bool operator==(STOFFVec3< T > const &p) const
comparison==
Definition: libstaroffice_internal.hxx:887
STOFFVariable & operator=(T const &val)
set a value
Definition: libstaroffice_internal.hxx:525
STOFFVec2< T > size() const
the box size
Definition: libstaroffice_internal.hxx:994
bool operator>=(STOFFColor const &c) const
operator>=
Definition: libstaroffice_internal.hxx:316
T m_data
the value
Definition: libstaroffice_internal.hxx:578
STOFFBox2< int > STOFFBox2i
STOFFBox2 of int.
Definition: libstaroffice_internal.hxx:1128
void setMax(STOFFVec2< T > const &y)
resets the maximum point
Definition: libstaroffice_internal.hxx:1017
a note
Definition: libstaroffice_internal.hxx:393
shared_ptr< STOFFListener > STOFFListenerPtr
a smart pointer of STOFFListener
Definition: libstaroffice_internal.hxx:490
STOFFVec2< T > const & operator[](int c) const
the two extremum points which defined the box
Definition: libstaroffice_internal.hxx:988
STOFFVec3< unsigned char > STOFFVec3uc
STOFFVec3 of unsigned char.
Definition: libstaroffice_internal.hxx:941
STOFFBox2(STOFFVec2< T > minPt=STOFFVec2< T >(), STOFFVec2< T > maxPt=STOFFVec2< T >())
constructor
Definition: libstaroffice_internal.hxx:954
Definition: libstaroffice_internal.hxx:189
unsigned char getRed() const
returns the red value
Definition: libstaroffice_internal.hxx:271
STOFFVec3< int > STOFFVec3i
STOFFVec3 of int.
Definition: libstaroffice_internal.hxx:943
class to store the paragraph properties
Definition: STOFFParagraph.hxx:47
Definition: libstaroffice_internal.hxx:159
STOFFVec2< T > & operator-=(STOFFVec2< T > const &p)
operator-=
Definition: libstaroffice_internal.hxx:650
Definition: libstaroffice_internal.hxx:189
Definition: libstaroffice_internal.hxx:147
void resizeFromMax(STOFFVec2< T > const &sz)
resize the box keeping the maximum
Definition: libstaroffice_internal.hxx:1028
bool operator()(STOFFVec3< T > const &s1, STOFFVec3< T > const &s2) const
comparaison function
Definition: libstaroffice_internal.hxx:923
friend STOFFVec3< T > operator*(U scale, STOFFVec3< T > const &p1)
generic operator*
Definition: libstaroffice_internal.hxx:880
std::string m_HRef
the href field
Definition: libstaroffice_internal.hxx:389
This class contents the main functions needed to create a spreadsheet processing Document.
Definition: STOFFSpreadsheetListener.hxx:64
STOFFColor(uint32_t argb=0)
constructor
Definition: libstaroffice_internal.hxx:195
std::string numberingTypeToString(NumberingType type)
Definition: libstaroffice_internal.cxx:123
bool operator==(STOFFBorderLine const &orig) const
operator==
Definition: libstaroffice_internal.hxx:343
uint8_t readU8(librevenge::RVNGInputStream *input)
Definition: libstaroffice_internal.cxx:52
void setAlpha(unsigned char alpha)
reset the alpha value
Definition: libstaroffice_internal.hxx:261
STOFFVariable(STOFFVariable const &orig)
copy constructor
Definition: libstaroffice_internal.hxx:514
bool operator!=(STOFFBox2< T > const &p) const
comparison operator!=
Definition: libstaroffice_internal.hxx:1080
int cmpY(STOFFVec2< T > const &p) const
a comparison function: which first compares y then x
Definition: libstaroffice_internal.hxx:710
std::map< STOFFVec2< bool >, bool, struct PosSizeLtY > MapY
Definition: libstaroffice_internal.hxx:754
#define LIBSTOFF_ATTRIBUTE_PRINTF(fmt, arg)
Definition: libstaroffice_internal.hxx:130
shared_ptr< STOFFListManager > STOFFListManagerPtr
a smart pointer of STOFFListManager
Definition: libstaroffice_internal.hxx:492
Definition: libstaroffice_internal.hxx:189
STOFFColor(unsigned char r, unsigned char g, unsigned char b, unsigned char a=255)
constructor from color
Definition: libstaroffice_internal.hxx:199
small class which defines a vector with 3 elements
Definition: libstaroffice_internal.hxx:771
void setMin(STOFFVec2< T > const &x)
resets the minimum point
Definition: libstaroffice_internal.hxx:1012
void setY(T yy)
resets the second element
Definition: libstaroffice_internal.hxx:828
bool operator()(STOFFBox2< T > const &s1, STOFFBox2< T > const &s2) const
comparaison function
Definition: libstaroffice_internal.hxx:1112
STOFFVec2< bool > STOFFVec2b
STOFFVec2 of bool.
Definition: libstaroffice_internal.hxx:760
void setY(T yy)
resets the second element
Definition: libstaroffice_internal.hxx:630
T y() const
second element
Definition: libstaroffice_internal.hxx:601
T y() const
second element
Definition: libstaroffice_internal.hxx:793
T x() const
first element
Definition: libstaroffice_internal.hxx:596
Definition: libstaroffice_internal.hxx:184
STOFFVec2< T > & operator+=(STOFFVec2< T > const &p)
operator+=
Definition: libstaroffice_internal.hxx:643
SubDocumentType
Definition: libstaroffice_internal.hxx:189
shared_ptr< STOFFSubDocument > STOFFSubDocumentPtr
a smart pointer of STOFFSubDocument
Definition: libstaroffice_internal.hxx:498
void resizeFromMin(STOFFVec2< T > const &sz)
resize the box keeping the minimum
Definition: libstaroffice_internal.hxx:1023
Definition: libstaroffice_internal.hxx:182
Type
enum to define note type
Definition: libstaroffice_internal.hxx:395
STOFFField()
basic constructor
Definition: libstaroffice_internal.hxx:369
This class contains the code needed to create Graphic document.
Definition: STOFFGraphicListener.hxx:59
a class which stores section properties
Definition: STOFFSection.hxx:45
librevenge::RVNGString getString(std::vector< uint32_t > const &unicode)
transform a unicode string in a RNVGString
Definition: libstaroffice_internal.cxx:63
bool operator!=(STOFFVec2< T > const &p) const
comparison!=
Definition: libstaroffice_internal.hxx:691
std::vector< librevenge::RVNGBinaryData > m_dataList
the picture content: one data by representation
Definition: libstaroffice_internal.hxx:456
Definition: libstaroffice_internal.hxx:182
a small structure used to store the informations about a list
Definition: STOFFList.hxx:102
bool operator!=(STOFFColor const &c) const
operator!=
Definition: libstaroffice_internal.hxx:296
a field
Definition: libstaroffice_internal.hxx:367
a structure used to define a picture shape
Definition: STOFFGraphicShape.hxx:45
namespace used to regroup all libwpd functions, enumerations which we have redefined for internal usa...
Definition: libstaroffice_internal.cxx:50
small class use to define a embedded object
Definition: libstaroffice_internal.hxx:412
librevenge::RVNGString simplifyString(librevenge::RVNGString const &s)
returns a simplify version of a string.
Definition: libstaroffice_internal.cxx:429
T & operator[](int c)
operator[]
Definition: libstaroffice_internal.hxx:809
STOFFVec3(STOFFVec3< U > const &p)
generic copy constructor
Definition: libstaroffice_internal.hxx:782
T operator[](int c) const
operator[]
Definition: libstaroffice_internal.hxx:803
STOFFBox2f rotateBoxFromCenter(STOFFBox2f const &box, float angle)
rotate a bdox and returns the final bdbox, angle is given in degree
Definition: libstaroffice_internal.cxx:463
T & operator*()
operator*
Definition: libstaroffice_internal.hxx:556
internal struct used to create sorted map, sorted by Y
Definition: libstaroffice_internal.hxx:744
friend STOFFVec3< T > operator-(STOFFVec3< T > const &p1, STOFFVec3< T > const &p2)
operator-
Definition: libstaroffice_internal.hxx:873
This class contains the code needed to create Text document.
Definition: STOFFTextListener.hxx:59
Definition: libstaroffice_internal.hxx:163
STOFFVec2< int > STOFFVec2i
STOFFVec2 of int.
Definition: libstaroffice_internal.hxx:762
STOFFLink()
basic constructor
Definition: libstaroffice_internal.hxx:381
bool operator<=(STOFFColor const &c) const
operator<=
Definition: libstaroffice_internal.hxx:306
STOFFVec3< T > & operator*=(U scale)
generic operator*=
Definition: libstaroffice_internal.hxx:860
int cmp(STOFFVec3< T > const &p) const
a comparison function: which first compares x values, then y values then z values.
Definition: libstaroffice_internal.hxx:902
int m_number
the note number if defined
Definition: libstaroffice_internal.hxx:405
Definition: libstaroffice_internal.hxx:189
void add(T dx, T dy)
increases the actuals values by dx and dy
Definition: libstaroffice_internal.hxx:636
int m_distance
the border distance
Definition: libstaroffice_internal.hxx:363
STOFFVec2(STOFFVec2< U > const &p)
generic copy constructor
Definition: libstaroffice_internal.hxx:593
Definition: libstaroffice_internal.hxx:189
the class to store a color
Definition: libstaroffice_internal.hxx:193
Class to store font.
Definition: STOFFFont.hxx:43
Position
basic position enum
Definition: libstaroffice_internal.hxx:182
std::map< STOFFBox2< int >, int, struct PosSizeLt > Map
Definition: libstaroffice_internal.hxx:1120
void setSet(bool newVal)
define if the variable is set
Definition: libstaroffice_internal.hxx:572
bool operator==(STOFFBox2< T > const &p) const
comparison operator==
Definition: libstaroffice_internal.hxx:1075
abstract class used to store a subdocument (with a comparison function)
Definition: STOFFSubDocument.hxx:41
STOFFVariable(T const &def)
constructor with a default value
Definition: libstaroffice_internal.hxx:512
shared_ptr< STOFFParserState > STOFFParserStatePtr
a smart pointer of STOFFParserState
Definition: libstaroffice_internal.hxx:494
internal struct used to create sorted map, sorted first min then max
Definition: libstaroffice_internal.hxx:1110
STOFFVec3< T > & operator-=(STOFFVec3< T > const &p)
operator-=
Definition: libstaroffice_internal.hxx:853
Definition: libstaroffice_internal.hxx:189
Definition: libstaroffice_internal.hxx:151
bool operator==(STOFFVec2< T > const &p) const
comparison==
Definition: libstaroffice_internal.hxx:686
librevenge::RVNGString m_label
the note label
Definition: libstaroffice_internal.hxx:403
Definition: libstaroffice_internal.hxx:186
STOFFVec3(T xx=0, T yy=0, T zz=0)
constructor
Definition: libstaroffice_internal.hxx:775
STOFFVec2< T > & min()
the minimum 2D point (in x and in y)
Definition: libstaroffice_internal.hxx:976
shared_ptr< STOFFGraphicListener > STOFFGraphicListenerPtr
a smart pointer of STOFFGraphicListener
Definition: libstaroffice_internal.hxx:484
T m_y
second element
Definition: libstaroffice_internal.hxx:756
void setX(T xx)
resets the first element
Definition: libstaroffice_internal.hxx:823
A class which defines the page properties.
Definition: STOFFPageSpan.hxx:75
bool isSet() const
return true if the variable is set
Definition: libstaroffice_internal.hxx:567
Definition: libstaroffice_internal.hxx:184
STOFFVec2< T > & operator*=(U scale)
generic operator*=
Definition: libstaroffice_internal.hxx:658
bool operator>(STOFFColor const &c) const
operator>
Definition: libstaroffice_internal.hxx:311
bool convertToDateTime(uint32_t date, uint32_t time, std::string &dateTime)
convert a date/time in a date time format
Definition: libstaroffice_internal.cxx:388
void operator()(T *)
Definition: libstaroffice_internal.hxx:110
basic class to store an entry in a file This contained :
Definition: STOFFEntry.hxx:46
Definition: libstaroffice_internal.hxx:182
static STOFFColor colorFromHSL(unsigned char H, unsigned char S, unsigned char L)
return a color from a hsl color (basic)
Definition: libstaroffice_internal.hxx:220
STOFFVec2< float > STOFFVec2f
STOFFVec2 of float.
Definition: libstaroffice_internal.hxx:766
static STOFFColor colorFromCMYK(unsigned char c, unsigned char m, unsigned char y, unsigned char k)
return a color from a cmyk color ( basic)
Definition: libstaroffice_internal.hxx:210
bool operator()(STOFFVec2< T > const &s1, STOFFVec2< T > const &s2) const
comparaison function
Definition: libstaroffice_internal.hxx:746
STOFFVec2< T > const & max() const
the maximum 2D point (in x and in y)
Definition: libstaroffice_internal.hxx:971
T const * operator->() const
operator*
Definition: libstaroffice_internal.hxx:540
virtual class which defines the ancestor of all main zone parser
Definition: STOFFParser.hxx:89
bool operator<(STOFFColor const &c) const
operator<
Definition: libstaroffice_internal.hxx:301
T * operator->()
operator*
Definition: libstaroffice_internal.hxx:545
This class contains a virtual interface to all listener.
Definition: STOFFListener.hxx:50
Class to store a graphic style.
Definition: STOFFGraphicStyle.hxx:44
STOFFEmbeddedObject(librevenge::RVNGBinaryData const &binaryData, std::string type="image/pict")
constructor
Definition: libstaroffice_internal.hxx:418
STOFFBox2< float > STOFFBox2f
STOFFBox2 of float.
Definition: libstaroffice_internal.hxx:1130
Class to define the position of an object (textbox, picture, ..) in the document. ...
Definition: STOFFPosition.hxx:47
T operator[](int c) const
operator[]
Definition: libstaroffice_internal.hxx:606
Definition: libstaroffice_internal.hxx:186
Definition: libstaroffice_internal.hxx:189
STOFFNote(Type type)
constructor
Definition: libstaroffice_internal.hxx:397
static STOFFColor white()
return the white color
Definition: libstaroffice_internal.hxx:242
bool m_set
a flag to know if the variable is set or not
Definition: libstaroffice_internal.hxx:580
a manager which manages the lists, keeps the different kind of lists, to assure the unicity of each l...
Definition: STOFFList.hxx:196
T z() const
third element
Definition: libstaroffice_internal.hxx:798
float getScaleFactor(librevenge::RVNGUnit orig, librevenge::RVNGUnit dest)
factor to convert from one unit to other
Definition: libstaroffice_internal.cxx:483
STOFFEmbeddedObject()
empty constructor
Definition: libstaroffice_internal.hxx:414
void add(T dx, T dy, T dz)
increases the actuals values by dx, dy, dz
Definition: libstaroffice_internal.hxx:839