From db722f5b79ef1517f0b6e9a96968ad257dffc6f9 Mon Sep 17 00:00:00 2001 From: Martin Owens Date: Mon, 12 Nov 2018 19:25:05 -0500 Subject: Add capability to get style rulesets as SPStyle objects --- src/object/sp-style-elem.cpp | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) (limited to 'src/object/sp-style-elem.cpp') diff --git a/src/object/sp-style-elem.cpp b/src/object/sp-style-elem.cpp index 14e4a8d90..de2041764 100644 --- a/src/object/sp-style-elem.cpp +++ b/src/object/sp-style-elem.cpp @@ -450,6 +450,23 @@ void update_style_recursively( SPObject *object ) { } } +/* + * Returns each statement as an SPStyle + */ +std::vector SPStyleElem::getStyles() { + std::vector ret; + gint count = cr_stylesheet_nr_rules(style_sheet); + + for (gint x = 0; x < count; x++) { + SPStyle *item = new SPStyle(nullptr, nullptr); + CRStatement *statement = cr_stylesheet_statement_get_from_list(style_sheet, x); + item->mergeStatement(statement); + ret.push_back(item); + } + + return ret; +} + void SPStyleElem::read_content() { // First, create the style-sheet object and track it in this -- cgit v1.2.3