Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010 #ifndef IWATEXT_H_INCLUDED
00011 #define IWATEXT_H_INCLUDED
00012
00013 #include <map>
00014 #include <string>
00015
00016 #include <librevenge/librevenge.h>
00017
00018 #include "IWORKStyle_fwd.h"
00019
00020 namespace libetonyek
00021 {
00022
00023 class IWORKLanguageManager;
00024 class IWORKText;
00025
00026 class IWAText
00027 {
00028 public:
00029 IWAText(const std::string text, IWORKLanguageManager &langManager);
00030
00031 void setParagraphs(const std::map<unsigned, IWORKStylePtr_t> ¶s);
00032 void setSpans(const std::map<unsigned, IWORKStylePtr_t> &spans);
00033 void setLanguages(const std::map<unsigned, std::string> &langs);
00034 void setLinks(const std::map<unsigned, std::string> &links);
00035 void setListLevels(const std::map<unsigned, unsigned> &levels);
00036 void setLists(const std::map<unsigned, IWORKStylePtr_t> &lists);
00037
00038 void parse(IWORKText &collector);
00039
00040 private:
00041 const librevenge::RVNGString m_text;
00042 IWORKLanguageManager &m_langManager;
00043
00044 std::map<unsigned, IWORKStylePtr_t> m_paras;
00045 std::map<unsigned, IWORKStylePtr_t> m_spans;
00046 std::map<unsigned, std::string> m_langs;
00047 std::map<unsigned, std::string> m_links;
00048 std::map<unsigned, IWORKStylePtr_t> m_lists;
00049 std::map<unsigned, unsigned> m_listLevels;
00050 };
00051
00052 }
00053
00054 #endif
00055
00056