summaryrefslogtreecommitdiff
path: root/src/lib/VSDContentCollector.cpp
diff options
context:
space:
mode:
authorFridrich Štrba <fridrich.strba@bluewin.ch>2014-02-04 13:39:05 +0100
committerFridrich Štrba <fridrich.strba@bluewin.ch>2014-02-04 13:42:27 +0100
commit964e948d1cf5359ec30863fa77983a6ebe983ca2 (patch)
tree79a8168f0f664c9af30e7809df7571fd1af65f56 /src/lib/VSDContentCollector.cpp
parente6784950aa4ce27414de5fef419bdf5a4a9c4c14 (diff)
Some other ideas about handling the theminglibvisio-0.0
(cherry picked from commit 3e4d354f8fa163548d710fb87b5d8e18b531229c) Conflicts: src/lib/VSDContentCollector.cpp src/lib/VSDStyles.cpp Change-Id: Iec8c5f49827ee2b18ddf97d37077b2f0798a0685
Diffstat (limited to 'src/lib/VSDContentCollector.cpp')
-rw-r--r--src/lib/VSDContentCollector.cpp23
1 files changed, 20 insertions, 3 deletions
diff --git a/src/lib/VSDContentCollector.cpp b/src/lib/VSDContentCollector.cpp
index 09d6654..3fd5c26 100644
--- a/src/lib/VSDContentCollector.cpp
+++ b/src/lib/VSDContentCollector.cpp
@@ -96,8 +96,8 @@ libvisio::VSDContentCollector::VSDContentCollector(
m_pageOutputDrawing(), m_pageOutputText(), m_documentPageShapeOrders(documentPageShapeOrders),
m_pageShapeOrder(m_documentPageShapeOrders.begin()), m_isFirstGeometry(true), m_NURBSData(), m_polylineData(),
m_textStream(), m_names(), m_stencilNames(), m_fields(), m_stencilFields(), m_fieldIndex(0),
- m_textFormat(VSD_TEXT_ANSI), m_charFormats(), m_paraFormats(), m_lineStyle(), m_fillStyle(),
- m_textBlockStyle(), m_defaultCharStyle(), m_defaultParaStyle(), m_currentStyleSheet(0), m_styles(styles),
+ m_textFormat(VSD_TEXT_ANSI), m_charFormats(), m_paraFormats(), m_lineStyle(), m_fillStyle(), m_textBlockStyle(),
+ m_themeReference(), m_defaultCharStyle(), m_defaultParaStyle(), m_currentStyleSheet(0), m_styles(styles),
m_stencils(stencils), m_stencilShape(0), m_isStencilStarted(false), m_currentGeometryCount(0),
m_backgroundPageID(MINUS_ONE), m_currentPageID(0), m_currentPage(), m_pages(),
m_splineControlPoints(), m_splineKnotVector(), m_splineX(0.0), m_splineY(0.0),
@@ -1069,12 +1069,20 @@ void libvisio::VSDContentCollector::collectFillAndShadow(unsigned level, const b
}
void libvisio::VSDContentCollector::collectFillAndShadow(unsigned level, const boost::optional<Colour> &colourFG, const boost::optional<Colour> &colourBG,
- const boost::optional<unsigned char> &fillPattern, const boost::optional<double> &fillFGTransparency, const boost::optional<double> &fillBGTransparency,
+ const boost::optional<unsigned char> &fillPattern, const boost::optional<double> &fillFGTransparency,
+ const boost::optional<double> &fillBGTransparency,
const boost::optional<unsigned char> &shadowPattern, const boost::optional<Colour> &shfgc)
{
collectFillAndShadow(level, colourFG, colourBG, fillPattern, fillFGTransparency, fillBGTransparency, shadowPattern, shfgc, m_shadowOffsetX, m_shadowOffsetY);
}
+void libvisio::VSDContentCollector::collectThemeReference(unsigned level, const boost::optional<long> &lineColour, const boost::optional<long> &fillColour,
+ const boost::optional<long> &shadowColour, const boost::optional<long> &fontColour)
+{
+ _handleLevelChange(level);
+ m_themeReference.override(VSDOptionalThemeReference(lineColour, fillColour, shadowColour, fontColour));
+}
+
void libvisio::VSDContentCollector::collectForeignData(unsigned level, const WPXBinaryData &binaryData)
{
_handleLevelChange(level);
@@ -2627,6 +2635,15 @@ void libvisio::VSDContentCollector::_fillAndShadowProperties(const VSDFillStyle
}
}
+void libvisio::VSDContentCollector::collectStyleThemeReference(unsigned /* level */, const boost::optional<long> &lineColour,
+ const boost::optional<long> &fillColour, const boost::optional<long> &shadowColour,
+ const boost::optional<long> &fontColour)
+{
+ VSDOptionalThemeReference themeReference(lineColour, fillColour, shadowColour, fontColour);
+ m_styles.addStyleThemeReference(m_currentStyleSheet, themeReference);
+}
+
+
void libvisio::VSDContentCollector::collectFieldList(unsigned /* id */, unsigned level)
{
_handleLevelChange(level);