diff options
author | Fridrich Štrba <fridrich.strba@bluewin.ch> | 2014-02-04 13:39:05 +0100 |
---|---|---|
committer | Fridrich Štrba <fridrich.strba@bluewin.ch> | 2014-02-04 13:42:27 +0100 |
commit | 964e948d1cf5359ec30863fa77983a6ebe983ca2 (patch) | |
tree | 79a8168f0f664c9af30e7809df7571fd1af65f56 /src/lib/VSDContentCollector.cpp | |
parent | e6784950aa4ce27414de5fef419bdf5a4a9c4c14 (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.cpp | 23 |
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); |