34 #ifndef RAG_TIME_5_STYLE_MANAGER 35 # define RAG_TIME_5_STYLE_MANAGER 82 bool updateSurfaceStyle(
int graphicId,
MWAWGraphicStyle &surfaceStyle)
const;
84 bool updateBorderStyle(
int graphicId,
MWAWGraphicStyle &borderStyle,
bool isLine)
const;
86 bool getLineColor(
int graphicId,
MWAWColor &color)
const;
90 bool getCellBorder(
int graphicId,
MWAWBorder &border)
const;
92 bool getCellBackgroundColor(
int graphicId,
MWAWColor &color)
const;
94 bool updateCellFormat(
int formatId,
MWAWCell &cell)
const;
99 std::vector<RagTime5StyleManager::TextStyle>
const &listReadStyles,
100 std::multimap<size_t, size_t>
const &idToChildIpMap,
101 std::set<size_t> &seens);
104 std::vector<RagTime5StyleManager::GraphicStyle>
const &listReadStyles,
105 std::multimap<size_t, size_t>
const &idToChildIpMap,
106 std::set<size_t> &seens);
118 , m_gradientRotation(-1000)
129 for (
auto &alpha : m_colorsAlpha) alpha=-1;
136 return m_parentId<=-1000 && m_width<0 && !m_dash.isSet() && !m_pattern &&
137 m_gradient<0 && m_gradientRotation<=-1000 && !m_gradientCenter.isSet() &&
138 m_position<0 && m_cap<0 && m_mitter<0 &&
139 !m_colors[0].isSet() && !m_colors[1].isSet() && m_colorsAlpha[0]<0 && m_colorsAlpha[1]<0 &&
140 m_limitPercent<0 && !m_hidden.isSet() && m_extra.empty();
155 float m_colorsAlpha[2];
191 , m_graphLineStyleId(-1)
192 , m_keepWithNext(false)
199 , m_scriptPosition(0)
204 , m_widthStreching(-1)
209 for (
auto &parentId : m_parentId) parentId=-1;
210 for (
auto &fontFlag : m_fontFlags) fontFlag=0;
211 for (
auto &margin : m_margins) margin=-1;
212 for (
auto &spacing : m_spacings) spacing=-1;
213 for (
auto &spacingUnit : m_spacingUnits) spacingUnit=-1;
214 for (
auto &letterSpacing : m_letterSpacings) letterSpacing=0;
221 if (m_parentId[0]>=0 || m_parentId[1]>=0 || !m_linkIdList.empty() ||
222 m_dateStyleId>=0 || m_graphStyleId>=0 || m_graphLineStyleId>=0 ||
223 m_keepWithNext.isSet() || m_justify>=0 || m_breakMethod>=0 || !m_tabList.empty() ||
224 !m_fontName.empty() || m_fontId>=0 || m_fontSize>=0 || m_fontFlags[0] || m_fontFlags[1] || m_scriptPosition.isSet() ||
225 m_fontScaling>=0 || m_underline>=0 || m_caps>=0 || m_language>=0 || m_widthStreching>=0 ||
226 m_numColumns>=0 || m_columnGap>=0 || !m_extra.empty())
228 for (
int i=0; i<3; ++i) {
229 if (m_margins[i]>=0 || m_spacings[i]>=0 || m_spacingUnits[i]>=0)
232 for (
auto spacing : m_letterSpacings) {
233 if (spacing>0 || spacing<0)
239 static std::string getLanguageLocale(
int id);
244 void insert(
TextStyle const &childStyle);
265 double m_spacings[3];
267 int m_spacingUnits[3];
284 uint32_t m_fontFlags[2];
296 double m_letterSpacings[4];
327 std::shared_ptr<RagTime5StyleManagerInternal::State>
m_state;
MWAWVariable< bool > m_hidden
flag to know if we need to print the shape
Definition: RagTime5StyleManager.hxx:175
int m_fontId
the font id
Definition: RagTime5StyleManager.hxx:280
int m_caps
caps : none, all caps, lower caps, inital caps + other lowers
Definition: RagTime5StyleManager.hxx:292
std::shared_ptr< MWAWParserState > MWAWParserStatePtr
a smart pointer of MWAWParserState
Definition: libmwaw_internal.hxx:553
int m_gradient
the gradient 0: none, normal, radial
Definition: RagTime5StyleManager.hxx:161
std::string m_extra
extra data
Definition: RagTime5StyleManager.hxx:177
std::ostream & operator<<(std::ostream &o, Shape const &shape)
Definition: BeagleWksDRParser.cxx:107
MWAWVariable< std::vector< long > > m_dash
the line dash/...
Definition: RagTime5StyleManager.hxx:157
static MWAWColor white()
return the white color
Definition: libmwaw_internal.hxx:250
MWAWVariable< MWAWVec2f > m_gradientCenter
the rotation center(checkme)
Definition: RagTime5StyleManager.hxx:165
int m_graphLineStyleId
the graphic line style id
Definition: RagTime5StyleManager.hxx:256
static MWAWColor black()
return the back color
Definition: libmwaw_internal.hxx:245
a structure used to define a picture style
Definition: MWAWGraphicStyle.hxx:47
int m_numColumns
the number of columns
Definition: RagTime5StyleManager.hxx:303
librevenge::RVNGString m_fontName
the font name
Definition: RagTime5StyleManager.hxx:278
basic class used to read/store RagTime 5/6 styles
Definition: RagTime5StyleManager.hxx:60
int m_breakMethod
the break method 0: asIs, next container, next page, next even page, next odd page ...
Definition: RagTime5StyleManager.hxx:269
a structure used to define a cell and its format
Definition: MWAWCell.hxx:52
the class to store a color
Definition: libmwaw_internal.hxx:192
int m_dateStyleId
the date style id
Definition: RagTime5StyleManager.hxx:252
int m_language
the language
Definition: RagTime5StyleManager.hxx:294
int m_graphStyleId
the graphic style id
Definition: RagTime5StyleManager.hxx:254
bool isDefault() const
returns true if the line style is default
Definition: RagTime5StyleManager.hxx:219
MWAWParserStatePtr m_parserState
the parser state
Definition: RagTime5StyleManager.hxx:324
MWAWVariable< bool > m_keepWithNext
the keep with next flag
Definition: RagTime5StyleManager.hxx:261
Class to store font.
Definition: MWAWFont.hxx:43
a border
Definition: libmwaw_internal.hxx:333
float m_width
the line width (in point)
Definition: RagTime5StyleManager.hxx:151
int m_cap
the line caps ( normal=1, round, square)
Definition: RagTime5StyleManager.hxx:169
double m_widthStreching
the width streching
Definition: RagTime5StyleManager.hxx:298
std::string m_extra
extra data
Definition: RagTime5StyleManager.hxx:308
int m_justify
justify 0: left, 1:center, 2:right, 3:full, 4:full all
Definition: RagTime5StyleManager.hxx:263
std::shared_ptr< RagTime5StyleManagerInternal::State > m_state
the state
Definition: RagTime5StyleManager.hxx:327
float m_limitPercent
the line limit
Definition: RagTime5StyleManager.hxx:173
the main class to read a RagTime v5 file
Definition: RagTime5Parser.hxx:73
a field of RagTime 5/6 structures
Definition: RagTime5StructManager.hxx:235
double m_columnGap
the gap between columns
Definition: RagTime5StyleManager.hxx:305
friend class RagTime5StyleManager
Definition: RagTime5Parser.hxx:83
std::vector< RagTime5StructManager::TabStop > m_tabList
the tabulations
Definition: RagTime5StyleManager.hxx:273
MWAWVariable< float > m_scriptPosition
the font script position ( in percent)
Definition: RagTime5StyleManager.hxx:286
TextStyle()
constructor
Definition: RagTime5StyleManager.hxx:187
std::shared_ptr< MWAWInputStream > MWAWInputStreamPtr
a smart pointer of MWAWInputStream
Definition: libmwaw_internal.hxx:547
int m_mitter
the line mitter ( triangle=1, round, out)
Definition: RagTime5StyleManager.hxx:171
float m_fontScaling
the font script position ( in percent)
Definition: RagTime5StyleManager.hxx:288
class to store the paragraph properties
Definition: MWAWParagraph.hxx:84
GraphicStyle()
constructor
Definition: RagTime5StyleManager.hxx:112
RagTime5Parser & m_mainParser
the parser
Definition: RagTime5StyleManager.hxx:322
bool isDefault() const
returns true if the line style is default
Definition: RagTime5StyleManager.hxx:134
the graphic style of a RagTime v5-v6 document
Definition: RagTime5StyleManager.hxx:110
int m_parentId
the parent id
Definition: RagTime5StyleManager.hxx:149
std::shared_ptr< MWAWGraphicStyle::Pattern > m_pattern
the line pattern
Definition: RagTime5StyleManager.hxx:159
the text style of a RagTime v5-v6 document
Definition: RagTime5StyleManager.hxx:185
Internal: the structures of a RagTime5Style.
Definition: RagTime5StyleManager.cxx:51
float m_fontSize
the font size
Definition: RagTime5StyleManager.hxx:282
std::vector< int > m_linkIdList
the link id list
Definition: RagTime5StyleManager.hxx:250
int m_underline
underline : none, single, double
Definition: RagTime5StyleManager.hxx:290
small class which defines a vector with 2 elements
Definition: libmwaw_internal.hxx:651
float m_gradientRotation
the gradient rotation(checkme)
Definition: RagTime5StyleManager.hxx:163
int m_position
the line position inside=1/normal/outside/round
Definition: RagTime5StyleManager.hxx:167
the cluster data
Definition: RagTime5ClusterManager.hxx:221