<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"> <title>WPSTable.h Source File documentation</title> <link href="doxygen.css" rel="stylesheet" type="text/css"> </head><body> <!-- Generated by Doxygen 1.8.5 --> <div id="navrow1" class="tabs"> <ul class="tablist"> <li><a href="index.html"><span>Main Page</span></a></li> <li><a href="namespaces.html"><span>Namespaces</span></a></li> <li><a href="annotated.html"><span>Classes</span></a></li> <li class="current"><a href="files.html"><span>Files</span></a></li> </ul> </div> <div id="navrow2" class="tabs2"> <ul class="tablist"> <li><a href="files.html"><span>File List</span></a></li> <li><a href="globals.html"><span>File Members</span></a></li> </ul> </div> </div><!-- top --> <div id="side-nav" class="ui-resizable side-nav-resizable"> <div id="nav-tree"> <div id="nav-tree-contents"> <div id="nav-sync" class="sync"></div> </div> </div> <div id="splitbar" style="-moz-user-select:none;" class="ui-resizable-handle"> </div> </div> <script type="text/javascript"> $(document).ready(function(){initNavTree('WPSTable_8h_source.html','');}); </script> <div id="doc-content"> <div class="header"> <div class="headertitle"> <div class="title">WPSTable.h</div> </div> </div><!--header--> <div class="contents"> <a href="WPSTable_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */</span></div> <div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment">/* libwps</span></div> <div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> * Version: MPL 2.0 / LGPLv2.1+</span></div> <div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> *</span></div> <div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * This Source Code Form is subject to the terms of the Mozilla Public</span></div> <div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * License, v. 2.0. If a copy of the MPL was not distributed with this</span></div> <div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * file, You can obtain one at http://mozilla.org/MPL/2.0/.</span></div> <div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div> <div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * Major Contributor(s):</span></div> <div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * Copyright (C) 2009, 2011 Alonso Laurent (alonso@loria.fr)</span></div> <div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * Copyright (C) 2006, 2007 Andrew Ziem</span></div> <div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * Copyright (C) 2004-2006 Fridrich Strba (fridrich.strba@bluewin.ch)</span></div> <div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> * Copyright (C) 2004 Marc Maurer (uwog@uwog.net)</span></div> <div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * Copyright (C) 2003-2005 William Lachance (william.lachance@sympatico.ca)</span></div> <div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> *</span></div> <div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * For minor contributions see the git repository.</span></div> <div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> *</span></div> <div class="line"><a name="l00018"></a><span class="lineno"> 18</span> <span class="comment"> * Alternatively, the contents of this file may be used under the terms</span></div> <div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment"> * of the GNU Lesser General Public License Version 2.1 or later</span></div> <div class="line"><a name="l00020"></a><span class="lineno"> 20</span> <span class="comment"> * (LGPLv2.1+), in which case the provisions of the LGPLv2.1+ are</span></div> <div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="comment"> * applicable instead of those above.</span></div> <div class="line"><a name="l00022"></a><span class="lineno"> 22</span> <span class="comment"> *</span></div> <div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="comment"> * For further information visit http://libwps.sourceforge.net</span></div> <div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="comment"> */</span></div> <div class="line"><a name="l00025"></a><span class="lineno"> 25</span> </div> <div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="preprocessor">#ifndef WPS_TABLE</span></div> <div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor"></span><span class="preprocessor"># define WPS_TABLE</span></div> <div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="preprocessor"></span></div> <div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor">#include <iostream></span></div> <div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor">#include <vector></span></div> <div class="line"><a name="l00031"></a><span class="lineno"> 31</span> </div> <div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="preprocessor">#include "<a class="code" href="libwps__internal_8h.html">libwps_internal.h</a>"</span></div> <div class="line"><a name="l00033"></a><span class="lineno"> 33</span> </div> <div class="line"><a name="l00034"></a><span class="lineno"><a class="line" href="WPSTable_8h.html#af41010eb8ca1568252e4bf972fd782c1"> 34</a></span> <span class="keyword">class </span><a class="code" href="classWPSContentListener.html">WPSContentListener</a>;</div> <div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="keyword">typedef</span> shared_ptr<WPSContentListener> <a class="code" href="WPSCell_8h.html#af41010eb8ca1568252e4bf972fd782c1">WPSContentListenerPtr</a>;</div> <div class="line"><a name="l00036"></a><span class="lineno"> 36</span> </div> <div class="line"><a name="l00037"></a><span class="lineno"><a class="line" href="WPSTable_8h.html#acb16aa768788620317ab55c75d8c0c18"> 37</a></span> <span class="keyword">class </span><a class="code" href="classWPSCell.html">WPSCell</a>;</div> <div class="line"><a name="l00038"></a><span class="lineno"> 38</span> <span class="keyword">typedef</span> shared_ptr<WPSCell> <a class="code" href="WPSCell_8h.html#acb16aa768788620317ab55c75d8c0c18">WPSCellPtr</a>;</div> <div class="line"><a name="l00039"></a><span class="lineno"> 39</span> </div> <div class="line"><a name="l00040"></a><span class="lineno"> 40</span> <span class="comment">/*</span></div> <div class="line"><a name="l00041"></a><span class="lineno"> 41</span> <span class="comment"> * Structure to store and construct a table from an unstructured list</span></div> <div class="line"><a name="l00042"></a><span class="lineno"> 42</span> <span class="comment"> * of cell</span></div> <div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <span class="comment"> *</span></div> <div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <span class="comment"> */</span></div> <div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="classWPSTable.html"> 45</a></span> <span class="keyword">class </span><a class="code" href="classWPSTable.html">WPSTable</a></div> <div class="line"><a name="l00046"></a><span class="lineno"> 46</span> {</div> <div class="line"><a name="l00047"></a><span class="lineno"> 47</span> <span class="keyword">public</span>:</div> <div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="classWPSTable.html#a07a91499100135f1675c2346552c773a"> 49</a></span>  <a class="code" href="classWPSTable.html#a07a91499100135f1675c2346552c773a">WPSTable</a>() : <a class="code" href="classWPSTable.html#ac86d8102ce9afd12ee69bcf2dc23bfd6">m_cellsList</a>(), <a class="code" href="classWPSTable.html#a75b488831a0b2ccaf516d1495861e5f2">m_rowsSize</a>(), <a class="code" href="classWPSTable.html#a73215e21df206af79a7eef179129f8e9">m_colsSize</a>() {}</div> <div class="line"><a name="l00050"></a><span class="lineno"> 50</span> </div> <div class="line"><a name="l00052"></a><span class="lineno"> 52</span>  <span class="keyword">virtual</span> <a class="code" href="classWPSTable.html#aeeb7c7ba80b4cc9958c91f2c47c4b820">~WPSTable</a>();</div> <div class="line"><a name="l00053"></a><span class="lineno"> 53</span> </div> <div class="line"><a name="l00055"></a><span class="lineno"> 55</span>  <span class="keywordtype">void</span> <a class="code" href="classWPSTable.html#a2db7efe308c146fdc4b8bd52ab1c9ec9">add</a>(<a class="code" href="WPSCell_8h.html#acb16aa768788620317ab55c75d8c0c18">WPSCellPtr</a> &cell);</div> <div class="line"><a name="l00056"></a><span class="lineno"> 56</span> </div> <div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="classWPSTable.html#a863e659cd88db9182abe84fbb520dc05"> 58</a></span>  <span class="keywordtype">int</span> <a class="code" href="classWPSTable.html#a863e659cd88db9182abe84fbb520dc05">numCells</a>()<span class="keyword"> const</span></div> <div class="line"><a name="l00059"></a><span class="lineno"> 59</span> <span class="keyword"> </span>{</div> <div class="line"><a name="l00060"></a><span class="lineno"> 60</span>  <span class="keywordflow">return</span> int(<a class="code" href="classWPSTable.html#ac86d8102ce9afd12ee69bcf2dc23bfd6">m_cellsList</a>.size());</div> <div class="line"><a name="l00061"></a><span class="lineno"> 61</span>  }</div> <div class="line"><a name="l00063"></a><span class="lineno"> 63</span>  <a class="code" href="WPSCell_8h.html#acb16aa768788620317ab55c75d8c0c18">WPSCellPtr</a> <a class="code" href="classWPSTable.html#a00330d41c9e32187bfdea4150915846d">getCell</a>(<span class="keywordtype">int</span> <span class="keywordtype">id</span>);</div> <div class="line"><a name="l00064"></a><span class="lineno"> 64</span> </div> <div class="line"><a name="l00069"></a><span class="lineno"> 69</span>  <span class="keywordtype">bool</span> <a class="code" href="classWPSTable.html#a34635099b7ae1c6a05213f1400808d16">sendTable</a>(<a class="code" href="WPSCell_8h.html#af41010eb8ca1568252e4bf972fd782c1">WPSContentListenerPtr</a> listener);</div> <div class="line"><a name="l00070"></a><span class="lineno"> 70</span> </div> <div class="line"><a name="l00072"></a><span class="lineno"> 72</span>  <span class="keywordtype">bool</span> <a class="code" href="classWPSTable.html#a071ac31ec121cbe1448ae48f70e6bd4e">sendAsText</a>(<a class="code" href="WPSCell_8h.html#af41010eb8ca1568252e4bf972fd782c1">WPSContentListenerPtr</a> listener);</div> <div class="line"><a name="l00073"></a><span class="lineno"> 73</span> </div> <div class="line"><a name="l00074"></a><span class="lineno"> 74</span> <span class="keyword">protected</span>:</div> <div class="line"><a name="l00076"></a><span class="lineno"> 76</span>  <span class="keywordtype">bool</span> <a class="code" href="classWPSTable.html#a6d865267dd169c8eb2d1cf281f78177c">buildStructures</a>();</div> <div class="line"><a name="l00077"></a><span class="lineno"> 77</span> </div> <div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="classWPSTable.html#ac86d8102ce9afd12ee69bcf2dc23bfd6"> 79</a></span>  std::vector<WPSCellPtr> <a class="code" href="classWPSTable.html#ac86d8102ce9afd12ee69bcf2dc23bfd6">m_cellsList</a>;</div> <div class="line"><a name="l00081"></a><span class="lineno"><a class="line" href="classWPSTable.html#a75b488831a0b2ccaf516d1495861e5f2"> 81</a></span>  std::vector<float> <a class="code" href="classWPSTable.html#a75b488831a0b2ccaf516d1495861e5f2">m_rowsSize</a>, <a class="code" href="classWPSTable.html#a73215e21df206af79a7eef179129f8e9">m_colsSize</a>;</div> <div class="line"><a name="l00082"></a><span class="lineno"> 82</span> };</div> <div class="line"><a name="l00083"></a><span class="lineno"> 83</span> </div> <div class="line"><a name="l00084"></a><span class="lineno"> 84</span> <span class="preprocessor">#endif</span></div> <div class="line"><a name="l00085"></a><span class="lineno"> 85</span> <span class="preprocessor"></span><span class="comment">/* vim:set shiftwidth=4 softtabstop=4 noexpandtab: */</span></div> <div class="ttc" id="classWPSTable_html_aeeb7c7ba80b4cc9958c91f2c47c4b820"><div class="ttname"><a href="classWPSTable.html#aeeb7c7ba80b4cc9958c91f2c47c4b820">WPSTable::~WPSTable</a></div><div class="ttdeci">virtual ~WPSTable()</div><div class="ttdoc">the destructor </div><div class="ttdef"><b>Definition:</b> WPSTable.cpp:42</div></div> <div class="ttc" id="WPSCell_8h_html_af41010eb8ca1568252e4bf972fd782c1"><div class="ttname"><a href="WPSCell_8h.html#af41010eb8ca1568252e4bf972fd782c1">WPSContentListenerPtr</a></div><div class="ttdeci">shared_ptr< WPSContentListener > WPSContentListenerPtr</div><div class="ttdef"><b>Definition:</b> WPSCell.h:38</div></div> <div class="ttc" id="classWPSTable_html_ac86d8102ce9afd12ee69bcf2dc23bfd6"><div class="ttname"><a href="classWPSTable.html#ac86d8102ce9afd12ee69bcf2dc23bfd6">WPSTable::m_cellsList</a></div><div class="ttdeci">std::vector< WPSCellPtr > m_cellsList</div><div class="ttdoc">the list of cells </div><div class="ttdef"><b>Definition:</b> WPSTable.h:79</div></div> <div class="ttc" id="classWPSTable_html_a6d865267dd169c8eb2d1cf281f78177c"><div class="ttname"><a href="classWPSTable.html#a6d865267dd169c8eb2d1cf281f78177c">WPSTable::buildStructures</a></div><div class="ttdeci">bool buildStructures()</div><div class="ttdoc">create the correspondance list, ... </div><div class="ttdef"><b>Definition:</b> WPSTable.cpp:63</div></div> <div class="ttc" id="classWPSContentListener_html"><div class="ttname"><a href="classWPSContentListener.html">WPSContentListener</a></div><div class="ttdef"><b>Definition:</b> WPSContentListener.h:168</div></div> <div class="ttc" id="classWPSCell_html"><div class="ttname"><a href="classWPSCell.html">WPSCell</a></div><div class="ttdoc">a structure used to defined the cell position, and a format </div><div class="ttdef"><b>Definition:</b> WPSCell.h:119</div></div> <div class="ttc" id="classWPSTable_html_a73215e21df206af79a7eef179129f8e9"><div class="ttname"><a href="classWPSTable.html#a73215e21df206af79a7eef179129f8e9">WPSTable::m_colsSize</a></div><div class="ttdeci">std::vector< float > m_colsSize</div><div class="ttdef"><b>Definition:</b> WPSTable.h:81</div></div> <div class="ttc" id="classWPSTable_html_a00330d41c9e32187bfdea4150915846d"><div class="ttname"><a href="classWPSTable.html#a00330d41c9e32187bfdea4150915846d">WPSTable::getCell</a></div><div class="ttdeci">WPSCellPtr getCell(int id)</div><div class="ttdoc">returns the i^th cell </div><div class="ttdef"><b>Definition:</b> WPSTable.cpp:51</div></div> <div class="ttc" id="classWPSTable_html_a75b488831a0b2ccaf516d1495861e5f2"><div class="ttname"><a href="classWPSTable.html#a75b488831a0b2ccaf516d1495861e5f2">WPSTable::m_rowsSize</a></div><div class="ttdeci">std::vector< float > m_rowsSize</div><div class="ttdoc">the final row and col size (in point) </div><div class="ttdef"><b>Definition:</b> WPSTable.h:81</div></div> <div class="ttc" id="libwps__internal_8h_html"><div class="ttname"><a href="libwps__internal_8h.html">libwps_internal.h</a></div></div> <div class="ttc" id="classWPSTable_html_a863e659cd88db9182abe84fbb520dc05"><div class="ttname"><a href="classWPSTable.html#a863e659cd88db9182abe84fbb520dc05">WPSTable::numCells</a></div><div class="ttdeci">int numCells() const </div><div class="ttdoc">returns the number of cell </div><div class="ttdef"><b>Definition:</b> WPSTable.h:58</div></div> <div class="ttc" id="classWPSTable_html_a071ac31ec121cbe1448ae48f70e6bd4e"><div class="ttname"><a href="classWPSTable.html#a071ac31ec121cbe1448ae48f70e6bd4e">WPSTable::sendAsText</a></div><div class="ttdeci">bool sendAsText(WPSContentListenerPtr listener)</div><div class="ttdoc">try to send the table as basic text </div><div class="ttdef"><b>Definition:</b> WPSTable.cpp:253</div></div> <div class="ttc" id="classWPSTable_html_a07a91499100135f1675c2346552c773a"><div class="ttname"><a href="classWPSTable.html#a07a91499100135f1675c2346552c773a">WPSTable::WPSTable</a></div><div class="ttdeci">WPSTable()</div><div class="ttdoc">the constructor </div><div class="ttdef"><b>Definition:</b> WPSTable.h:49</div></div> <div class="ttc" id="classWPSTable_html_a34635099b7ae1c6a05213f1400808d16"><div class="ttname"><a href="classWPSTable.html#a34635099b7ae1c6a05213f1400808d16">WPSTable::sendTable</a></div><div class="ttdeci">bool sendTable(WPSContentListenerPtr listener)</div><div class="ttdoc">try to send the table </div><div class="ttdef"><b>Definition:</b> WPSTable.cpp:181</div></div> <div class="ttc" id="classWPSTable_html"><div class="ttname"><a href="classWPSTable.html">WPSTable</a></div><div class="ttdef"><b>Definition:</b> WPSTable.h:45</div></div> <div class="ttc" id="classWPSTable_html_a2db7efe308c146fdc4b8bd52ab1c9ec9"><div class="ttname"><a href="classWPSTable.html#a2db7efe308c146fdc4b8bd52ab1c9ec9">WPSTable::add</a></div><div class="ttdeci">void add(WPSCellPtr &cell)</div><div class="ttdoc">add a new cells </div><div class="ttdef"><b>Definition:</b> WPSTable.cpp:46</div></div> <div class="ttc" id="WPSCell_8h_html_acb16aa768788620317ab55c75d8c0c18"><div class="ttname"><a href="WPSCell_8h.html#acb16aa768788620317ab55c75d8c0c18">WPSCellPtr</a></div><div class="ttdeci">shared_ptr< WPSCell > WPSCellPtr</div><div class="ttdef"><b>Definition:</b> WPSCell.h:235</div></div> </div><!-- fragment --></div><!-- contents --> </div><!-- doc-content --> <hr size="1"><address style="align: right;"><small> Generated on Sat Oct 19 2013 13:53:02 for libwps by <a href="http://www.doxygen.org/index.html"> doxygen</a> 1.8.5</small></address> </body> </html>