10#ifndef INCLUDED_EPUBLISTSTYLEMANAGER_H
11#define INCLUDED_EPUBLISTSTYLEMANAGER_H
15#include <unordered_map>
18#include <boost/functional/hash.hpp>
20#include <librevenge/librevenge.h>
36 typedef std::unordered_map<EPUBCSSProperties, std::string, boost::hash<EPUBCSSProperties>>
ContentNameMap_t;
47 void setLevel(
int lvl, librevenge::RVNGPropertyList
const &property,
bool ordered);
80 void defineLevel(librevenge::RVNGPropertyList
const &property,
bool ordered);
82 std::string
openLevel(librevenge::RVNGPropertyList
const &pList,
bool ordered);
86 std::string
getClass(librevenge::RVNGPropertyList
const &pList);
Definition: EPUBCSSContent.h:24
Small class to manage the list style.
Definition: EPUBListStyleManager.h:32
std::string openLevel(librevenge::RVNGPropertyList const &pList, bool ordered)
returns the class name corresponding to a propertylist
Definition: EPUBListStyleManager.cpp:118
void closeLevel()
close a level
Definition: EPUBListStyleManager.cpp:145
EPUBListStyleManager operator=(EPUBListStyleManager const &orig)
EPUBListStyleManager(EPUBListStyleManager const &orig)
void defineLevel(librevenge::RVNGPropertyList const &property, bool ordered)
add a level to the corresponding list
Definition: EPUBListStyleManager.cpp:103
std::vector< int > m_actualIdStack
the actual list id
Definition: EPUBListStyleManager.h:96
~EPUBListStyleManager() override
destructor
Definition: EPUBListStyleManager.h:76
std::string getClass(librevenge::RVNGPropertyList const &pList)
returns the classname corresponding to a list element
Definition: EPUBListStyleManager.cpp:90
std::map< int, List > m_idListMap
a map listId -> list
Definition: EPUBListStyleManager.h:94
List::ContentNameMap_t m_levelNameMap
a map content -> list level name
Definition: EPUBListStyleManager.h:92
void send(EPUBCSSContent &out)
send the data to the sink
Definition: EPUBListStyleManager.cpp:78
EPUBListStyleManager()
constructor
Definition: EPUBListStyleManager.h:71
Small class to manage the paragraph style.
Definition: EPUBParagraphStyleManager.h:30
Definition: EPUBBinaryContent.cpp:15
std::map< std::string, std::string > EPUBCSSProperties
Definition: EPUBCSSProperties.h:21
Definition: EPUBListStyleManager.h:35
std::unordered_map< EPUBCSSProperties, std::string, boost::hash< EPUBCSSProperties > > ContentNameMap_t
Definition: EPUBListStyleManager.h:36
void closeLevel() const
open a new level
Definition: EPUBListStyleManager.h:54
int m_level
the actual list level
Definition: EPUBListStyleManager.h:68
void openLevel() const
open a new level
Definition: EPUBListStyleManager.h:49
void setLevel(int lvl, librevenge::RVNGPropertyList const &property, bool ordered)
set the property correspond to a level
Definition: EPUBListStyleManager.cpp:25
std::vector< EPUBCSSProperties > m_contentsList
the properties
Definition: EPUBListStyleManager.h:66
List()
constructor
Definition: EPUBListStyleManager.h:39
~List()
destructor
Definition: EPUBListStyleManager.h:43
const EPUBCSSProperties & getCurrentProperties() const
return the properties of the current level
Definition: EPUBListStyleManager.cpp:67