blob: 85b6ef0fd7aa5f87583083cfc746ca814e895f71 [file] [log] [blame]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<title>Coverage Report</title>
<link title="Style" type="text/css" rel="stylesheet" href="css/main.css"/>
<script type="text/javascript" src="js/popup.js"></script>
</head>
<body>
<h5>Coverage Report - org.odftoolkit.odfdom.doc.table.OdfTableRow</h5>
<div class="separator">&nbsp;</div>
<table class="report">
<thead><tr> <td class="heading">Classes in this File</td> <td class="heading"><a class="dfn" href="help.html" onclick="popupwindow('help.html'); return false;">Line Coverage</a></td> <td class="heading"><a class="dfn" href="help.html" onclick="popupwindow('help.html'); return false;">Branch Coverage</a></td> <td class="heading"><a class="dfn" href="help.html" onclick="popupwindow('help.html'); return false;">Complexity</a></td></tr></thead>
<tr><td><a href="org.odftoolkit.odfdom.doc.table.OdfTableRow.html">OdfTableRow</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">69%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:69px"><span class="text">284/409</span></div></div></td></tr></table></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">57%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:57px"><span class="text">132/228</span></div></div></td></tr></table></td><td class="value"><span class="hidden">5.821428571428571;</span>5,821</td></tr>
</table>
<div class="separator">&nbsp;</div>
<table cellspacing="0" cellpadding="0" class="src">
<tr> <td class="numLine">&nbsp;1</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment">/************************************************************************</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;2</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment">* </span></pre></td></tr>
<tr> <td class="numLine">&nbsp;3</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment">* Licensed to the Apache Software Foundation (ASF) under one</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;4</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment">* or more contributor license agreements. See the NOTICE file</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;5</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment">* distributed with this work for additional information</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;6</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment">* regarding copyright ownership. The ASF licenses this file</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;7</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment">* to you under the Apache License, Version 2.0 (the</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;8</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment">* "License"); you may not use this file except in compliance</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;9</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment">* with the License. You may obtain a copy of the License at</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;10</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment">*</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;11</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment">* http://www.apache.org/licenses/LICENSE-2.0</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;12</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment">*</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;13</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment">* Unless required by applicable law or agreed to in writing,</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;14</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment">* software distributed under the License is distributed on an</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;15</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment">* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;16</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment">* KIND, either express or implied. See the License for the</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;17</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment">* specific language governing permissions and limitations</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;18</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment">* under the License.</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;19</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment">*</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;20</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment">************************************************************************/</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;21</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="keyword">package</span> org.odftoolkit.odfdom.doc.table;</pre></td></tr>
<tr> <td class="numLine">&nbsp;22</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;</pre></td></tr>
<tr> <td class="numLine">&nbsp;23</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="keyword">import</span> java.util.HashSet;</pre></td></tr>
<tr> <td class="numLine">&nbsp;24</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="keyword">import</span> java.util.List;</pre></td></tr>
<tr> <td class="numLine">&nbsp;25</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="keyword">import</span> java.util.Set;</pre></td></tr>
<tr> <td class="numLine">&nbsp;26</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="keyword">import</span> java.util.logging.Level;</pre></td></tr>
<tr> <td class="numLine">&nbsp;27</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="keyword">import</span> java.util.logging.Logger;</pre></td></tr>
<tr> <td class="numLine">&nbsp;28</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="keyword">import</span> javax.xml.xpath.XPath;</pre></td></tr>
<tr> <td class="numLine">&nbsp;29</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;</pre></td></tr>
<tr> <td class="numLine">&nbsp;30</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="keyword">import</span> javax.xml.xpath.XPathConstants;</pre></td></tr>
<tr> <td class="numLine">&nbsp;31</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="keyword">import</span> javax.xml.xpath.XPathExpressionException;</pre></td></tr>
<tr> <td class="numLine">&nbsp;32</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;</pre></td></tr>
<tr> <td class="numLine">&nbsp;33</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="keyword">import</span> org.odftoolkit.odfdom.pkg.OdfElement;</pre></td></tr>
<tr> <td class="numLine">&nbsp;34</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="keyword">import</span> org.odftoolkit.odfdom.pkg.OdfFileDom;</pre></td></tr>
<tr> <td class="numLine">&nbsp;35</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="keyword">import</span> org.odftoolkit.odfdom.pkg.OdfName;</pre></td></tr>
<tr> <td class="numLine">&nbsp;36</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="keyword">import</span> org.odftoolkit.odfdom.pkg.OdfXMLFactory;</pre></td></tr>
<tr> <td class="numLine">&nbsp;37</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="keyword">import</span> org.odftoolkit.odfdom.doc.OdfDocument;</pre></td></tr>
<tr> <td class="numLine">&nbsp;38</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="keyword">import</span> org.odftoolkit.odfdom.dom.OdfContentDom;</pre></td></tr>
<tr> <td class="numLine">&nbsp;39</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="keyword">import</span> org.odftoolkit.odfdom.dom.OdfDocumentNamespace;</pre></td></tr>
<tr> <td class="numLine">&nbsp;40</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="keyword">import</span> org.odftoolkit.odfdom.dom.element.table.TableCoveredTableCellElement;</pre></td></tr>
<tr> <td class="numLine">&nbsp;41</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="keyword">import</span> org.odftoolkit.odfdom.dom.element.table.TableTableCellElement;</pre></td></tr>
<tr> <td class="numLine">&nbsp;42</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="keyword">import</span> org.odftoolkit.odfdom.dom.element.table.TableTableCellElementBase;</pre></td></tr>
<tr> <td class="numLine">&nbsp;43</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="keyword">import</span> org.odftoolkit.odfdom.dom.element.table.TableTableElement;</pre></td></tr>
<tr> <td class="numLine">&nbsp;44</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="keyword">import</span> org.odftoolkit.odfdom.dom.element.table.TableTableHeaderRowsElement;</pre></td></tr>
<tr> <td class="numLine">&nbsp;45</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="keyword">import</span> org.odftoolkit.odfdom.dom.element.table.TableTableRowElement;</pre></td></tr>
<tr> <td class="numLine">&nbsp;46</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="keyword">import</span> org.odftoolkit.odfdom.dom.element.table.TableTableRowGroupElement;</pre></td></tr>
<tr> <td class="numLine">&nbsp;47</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="keyword">import</span> org.odftoolkit.odfdom.dom.element.table.TableTableRowsElement;</pre></td></tr>
<tr> <td class="numLine">&nbsp;48</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="keyword">import</span> org.odftoolkit.odfdom.dom.element.text.TextHElement;</pre></td></tr>
<tr> <td class="numLine">&nbsp;49</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="keyword">import</span> org.odftoolkit.odfdom.dom.element.text.TextListElement;</pre></td></tr>
<tr> <td class="numLine">&nbsp;50</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="keyword">import</span> org.odftoolkit.odfdom.dom.element.text.TextPElement;</pre></td></tr>
<tr> <td class="numLine">&nbsp;51</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="keyword">import</span> org.odftoolkit.odfdom.dom.style.OdfStyleFamily;</pre></td></tr>
<tr> <td class="numLine">&nbsp;52</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="keyword">import</span> org.odftoolkit.odfdom.dom.style.props.OdfTableRowProperties;</pre></td></tr>
<tr> <td class="numLine">&nbsp;53</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="keyword">import</span> org.odftoolkit.odfdom.incubator.doc.style.OdfStyle;</pre></td></tr>
<tr> <td class="numLine">&nbsp;54</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="keyword">import</span> org.odftoolkit.odfdom.type.PositiveLength;</pre></td></tr>
<tr> <td class="numLine">&nbsp;55</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="keyword">import</span> org.odftoolkit.odfdom.type.Length.Unit;</pre></td></tr>
<tr> <td class="numLine">&nbsp;56</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="keyword">import</span> org.w3c.dom.Node;</pre></td></tr>
<tr> <td class="numLine">&nbsp;57</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;</pre></td></tr>
<tr> <td class="numLine">&nbsp;58</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment">/**</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;59</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * OdfTableRow represents table row feature in ODF document.</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;60</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * &lt;p&gt;</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;61</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * OdfTableRow provides methods to get table cells that belong to this table row.</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;62</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * </span></pre></td></tr>
<tr> <td class="numLine">&nbsp;63</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * @deprecated As of release 0.8.8, replaced by {@link org.odftoolkit.simple.table.Row} in Simple API.</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;64</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> */</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;65</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="keyword">public</span> <span class="keyword">class</span> OdfTableRow {</pre></td></tr>
<tr> <td class="numLine">&nbsp;66</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;</pre></td></tr>
<tr> <td class="numLine">&nbsp;67</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="comment">//boolean mbVisible;</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;68</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; TableTableRowElement maRowElement;</pre></td></tr>
<tr> <td class="numLine">&nbsp;69</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="keyword">int</span> mnRepeatedIndex;</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;70</td> <td class="nbHitsCovered">&nbsp;786</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">int</span> mRowsRepeatedNumber = -1;</pre></td></tr>
<tr> <td class="numLine">&nbsp;71</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="keyword">private</span> <span class="keyword">static</span> <span class="keyword">final</span> String DEFAULT_HEIGHT = <span class="string">"0.30in"</span>;</pre></td></tr>
<tr> <td class="numLine">&nbsp;72</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="keyword">private</span> OdfDocument mDocument;</pre></td></tr>
<tr> <td class="numLine">&nbsp;73</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;</pre></td></tr>
<tr> <td class="numLine">&nbsp;74</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="comment">/**</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;75</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * Construct the &lt;code&gt;OdfTableRow&lt;/code&gt; feature.</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;76</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * @param rowElement the row element represent this row</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;77</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * @param repeatedIndex the index in the repeated rows</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;78</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> */</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;79</td> <td class="nbHitsCovered">&nbsp;786</td> <td class="src"><pre class="src">&nbsp; OdfTableRow(TableTableRowElement rowElement, <span class="keyword">int</span> repeatedIndex) {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;80</td> <td class="nbHitsCovered">&nbsp;786</td> <td class="src"><pre class="src">&nbsp; maRowElement = rowElement;</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;81</td> <td class="nbHitsCovered">&nbsp;786</td> <td class="src"><pre class="src">&nbsp; mnRepeatedIndex = repeatedIndex;</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;82</td> <td class="nbHitsCovered">&nbsp;786</td> <td class="src"><pre class="src">&nbsp; mDocument = (OdfDocument) ((OdfFileDom) maRowElement.getOwnerDocument()).getDocument();</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;83</td> <td class="nbHitsCovered">&nbsp;786</td> <td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;84</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;</pre></td></tr>
<tr> <td class="numLine">&nbsp;85</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="comment">/**</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;86</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * Get the &lt;code&gt;OdfTableRow&lt;/code&gt; instance from the &lt;code&gt;TableTableRowElement&lt;/code&gt; instance.</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;87</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * &lt;p&gt;</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;88</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * Each &lt;code&gt;TableTableRowElement&lt;/code&gt; instance has a one-to-one relationship to a &lt;code&gt;OdfTableRow&lt;/code&gt; instance.</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;89</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * </span></pre></td></tr>
<tr> <td class="numLine">&nbsp;90</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * @param rowElement the row element that need to get the corresponding &lt;code&gt;OdfTableRow&lt;/code&gt; instance</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;91</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * @return the &lt;code&gt;OdfTableRow&lt;/code&gt; instance represent the specified row element</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;92</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> */</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;93</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="keyword">public</span> <span class="keyword">static</span> OdfTableRow getInstance(TableTableRowElement rowElement) {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;94</td> <td class="nbHitsCovered">&nbsp;17</td> <td class="src"><pre class="src">&nbsp; TableTableElement tableElement = <span class="keyword">null</span>;</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;95</td> <td class="nbHitsCovered">&nbsp;17</td> <td class="src"><pre class="src">&nbsp; Node node = rowElement.getParentNode();</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;96</td> <td class="nbHitsCovered"><a title="Line 96: Conditional coverage 100% (2/2).">&nbsp;108</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 96: Conditional coverage 100% (2/2)."> <span class="keyword">while</span> (node != <span class="keyword">null</span>) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;97</td> <td class="nbHitsCovered"><a title="Line 97: Conditional coverage 100% (2/2).">&nbsp;91</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 97: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (node <span class="keyword">instanceof</span> TableTableElement) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;98</td> <td class="nbHitsCovered">&nbsp;19</td> <td class="src"><pre class="src">&nbsp; tableElement = (TableTableElement) node;</pre></td></tr>
<tr> <td class="numLine">&nbsp;99</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;100</td> <td class="nbHitsCovered">&nbsp;91</td> <td class="src"><pre class="src">&nbsp; node = node.getParentNode();</pre></td></tr>
<tr> <td class="numLine">&nbsp;101</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;102</td> <td class="nbHitsCovered">&nbsp;17</td> <td class="src"><pre class="src">&nbsp; OdfTable table = <span class="keyword">null</span>;</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;103</td> <td class="nbHitsUncovered"><a title="Line 103: Conditional coverage 50% (1/2).">&nbsp;17</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 103: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (tableElement != <span class="keyword">null</span>) {</a></span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;104</td> <td class="nbHitsCovered">&nbsp;17</td> <td class="src"><pre class="src">&nbsp; table = OdfTable.getInstance(tableElement);</pre></td></tr>
<tr> <td class="numLine">&nbsp;105</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; } <span class="keyword">else</span> {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;106</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; <span class="keyword">throw</span> <span class="keyword">new</span> IllegalArgumentException(<span class="string">"the rowElement is not in the table dom tree"</span>);</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;107</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;108</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;109</td> <td class="nbHitsCovered">&nbsp;17</td> <td class="src"><pre class="src">&nbsp; OdfTableRow row = table.getRowInstance(rowElement, 0);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;110</td> <td class="nbHitsUncovered"><a title="Line 110: Conditional coverage 50% (1/2).">&nbsp;17</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 110: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (row.getRowsRepeatedNumber() &gt; 1) {</a></span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;111</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; Logger.getLogger(OdfTableRow.<span class="keyword">class</span>.getName()).log(Level.WARNING, <span class="string">"the row has the repeated row number, and puzzled about get which repeated index of the row,"</span></span></pre></td></tr>
<tr> <td class="numLine">&nbsp;112</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; + <span class="string">"here just return the first row of the repeated rows."</span>);</pre></td></tr>
<tr> <td class="numLine">&nbsp;113</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;114</td> <td class="nbHitsCovered">&nbsp;17</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> row;</pre></td></tr>
<tr> <td class="numLine">&nbsp;115</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;116</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;</pre></td></tr>
<tr> <td class="numLine">&nbsp;117</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="comment">/**</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;118</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * Get the &lt;code&gt;TableTableElement&lt;/code&gt; who contains this row.</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;119</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * </span></pre></td></tr>
<tr> <td class="numLine">&nbsp;120</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * @return the table element that contains the row.</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;121</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> */</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;122</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="keyword">private</span> TableTableElement getTableElement() {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;123</td> <td class="nbHitsCovered">&nbsp;115529</td> <td class="src"><pre class="src">&nbsp; Node node = maRowElement.getParentNode();</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;124</td> <td class="nbHitsUncovered"><a title="Line 124: Conditional coverage 50% (1/2).">&nbsp;116328</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 124: Conditional coverage 50% (1/2)."> <span class="keyword">while</span> (node != <span class="keyword">null</span>) {</a></span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;125</td> <td class="nbHitsCovered"><a title="Line 125: Conditional coverage 100% (2/2).">&nbsp;116328</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 125: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (node <span class="keyword">instanceof</span> TableTableElement) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;126</td> <td class="nbHitsCovered">&nbsp;115529</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> (TableTableElement) node;</pre></td></tr>
<tr> <td class="numLine">&nbsp;127</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;128</td> <td class="nbHitsCovered">&nbsp;799</td> <td class="src"><pre class="src">&nbsp; node = node.getParentNode();</pre></td></tr>
<tr> <td class="numLine">&nbsp;129</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;130</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; <span class="keyword">return</span> <span class="keyword">null</span>;</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;131</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;132</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;</pre></td></tr>
<tr> <td class="numLine">&nbsp;133</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="comment">/**</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;134</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * Get owner table of the current row.</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;135</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * @return the parent table of this row</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;136</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> */</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;137</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="keyword">public</span> OdfTable getTable() {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;138</td> <td class="nbHitsCovered">&nbsp;115201</td> <td class="src"><pre class="src">&nbsp; TableTableElement tableElement = getTableElement();</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;139</td> <td class="nbHitsUncovered"><a title="Line 139: Conditional coverage 50% (1/2).">&nbsp;115201</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 139: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (tableElement != <span class="keyword">null</span>) {</a></span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;140</td> <td class="nbHitsCovered">&nbsp;115201</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> OdfTable.getInstance(tableElement);</pre></td></tr>
<tr> <td class="numLine">&nbsp;141</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;142</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; <span class="keyword">return</span> <span class="keyword">null</span>;</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;143</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;144</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;</pre></td></tr>
<tr> <td class="numLine">&nbsp;145</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="comment">/**</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;146</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * Return the height of the row (in Millimeter).</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;147</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * &lt;p&gt;</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;148</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * Return the minimal height, if the row height is not set, </span></pre></td></tr>
<tr> <td class="numLine">&nbsp;149</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * @return the height of the current row (in Millimeter).</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;150</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> */</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;151</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="keyword">public</span> <span class="keyword">long</span> getHeight() {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;152</td> <td class="nbHitsCovered">&nbsp;8</td> <td class="src"><pre class="src">&nbsp; String sHeight = maRowElement.getProperty(OdfTableRowProperties.RowHeight);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;153</td> <td class="nbHitsCovered"><a title="Line 153: Conditional coverage 100% (2/2).">&nbsp;8</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 153: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (sHeight == <span class="keyword">null</span>) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;154</td> <td class="nbHitsCovered">&nbsp;4</td> <td class="src"><pre class="src">&nbsp; sHeight = maRowElement.getProperty(OdfTableRowProperties.MinRowHeight);</pre></td></tr>
<tr> <td class="numLine">&nbsp;155</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;156</td> <td class="nbHitsCovered"><a title="Line 156: Conditional coverage 100% (2/2).">&nbsp;8</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 156: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (sHeight == <span class="keyword">null</span>) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;157</td> <td class="nbHitsCovered">&nbsp;4</td> <td class="src"><pre class="src">&nbsp; sHeight = DEFAULT_HEIGHT;</pre></td></tr>
<tr> <td class="numLine">&nbsp;158</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;159</td> <td class="nbHitsCovered">&nbsp;8</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> PositiveLength.parseLong(sHeight, Unit.MILLIMETER);</pre></td></tr>
<tr> <td class="numLine">&nbsp;160</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;161</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;</pre></td></tr>
<tr> <td class="numLine">&nbsp;162</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="comment">/**</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;163</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * Set the height/minimal height of the row (in Millimeter) according to the second parameter.</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;164</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * @param height</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;165</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * the height/minimal height that will be set to the row (in Millimeter).</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;166</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * @param isMinHeight</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;167</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * if it is true, the row can fit the height to the text, vice versa.</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;168</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> */</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;169</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="keyword">public</span> <span class="keyword">void</span> setHeight(<span class="keyword">long</span> height, <span class="keyword">boolean</span> isMinHeight) {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;170</td> <td class="nbHitsCovered">&nbsp;4</td> <td class="src"><pre class="src">&nbsp; String sHeightMM = String.valueOf(height) + Unit.MILLIMETER.abbr();</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;171</td> <td class="nbHitsCovered">&nbsp;4</td> <td class="src"><pre class="src">&nbsp; String sHeightIN = PositiveLength.mapToUnit(sHeightMM, Unit.INCH);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;172</td> <td class="nbHitsCovered">&nbsp;4</td> <td class="src"><pre class="src">&nbsp; splitRepeatedRows();</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;173</td> <td class="nbHitsCovered">&nbsp;4</td> <td class="src"><pre class="src">&nbsp; maRowElement.removeAttributeNS(OdfDocumentNamespace.TABLE.getUri(), <span class="string">"style-name"</span>);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;174</td> <td class="nbHitsCovered">&nbsp;4</td> <td class="src"><pre class="src">&nbsp; maRowElement.setProperty(OdfTableRowProperties.RowHeight, sHeightIN);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;175</td> <td class="nbHitsCovered">&nbsp;4</td> <td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;176</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;</pre></td></tr>
<tr> <td class="numLine">&nbsp;177</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="comment">//if one of the repeated row want to change something</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;178</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="comment">//then this repeated row have to split to repeated number rows</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;179</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="comment">//the maRowElement/mnRepeatedIndex should also be updated according to the original index in the repeated column</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;180</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="keyword">void</span> splitRepeatedRows() {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;181</td> <td class="nbHitsCovered">&nbsp;263</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">int</span> repeateNum = getRowsRepeatedNumber();</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;182</td> <td class="nbHitsCovered"><a title="Line 182: Conditional coverage 100% (2/2).">&nbsp;263</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 182: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (repeateNum &gt; 1) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;183</td> <td class="nbHitsCovered">&nbsp;5</td> <td class="src"><pre class="src">&nbsp; OdfTable table = getTable();</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;184</td> <td class="nbHitsCovered">&nbsp;5</td> <td class="src"><pre class="src">&nbsp; TableTableElement tableEle = table.getOdfElement();</pre></td></tr>
<tr> <td class="numLine">&nbsp;185</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="comment">//change this repeated row to several single rows</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;186</td> <td class="nbHitsCovered">&nbsp;5</td> <td class="src"><pre class="src">&nbsp; TableTableRowElement ownerRowElement = <span class="keyword">null</span>;</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;187</td> <td class="nbHitsCovered">&nbsp;5</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">int</span> repeatedRowIndex = mnRepeatedIndex;</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;188</td> <td class="nbHitsCovered">&nbsp;5</td> <td class="src"><pre class="src">&nbsp; Node refElement = maRowElement;</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;189</td> <td class="nbHitsCovered">&nbsp;5</td> <td class="src"><pre class="src">&nbsp; Node oldRowElement = maRowElement;</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;190</td> <td class="nbHitsCovered"><a title="Line 190: Conditional coverage 100% (2/2).">&nbsp;17</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 190: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (<span class="keyword">int</span> i = repeateNum - 1; i &gt;= 0; i--) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;191</td> <td class="nbHitsCovered">&nbsp;12</td> <td class="src"><pre class="src">&nbsp; TableTableRowElement newRow = (TableTableRowElement) maRowElement.cloneNode(<span class="keyword">true</span>);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;192</td> <td class="nbHitsCovered">&nbsp;12</td> <td class="src"><pre class="src">&nbsp; newRow.removeAttributeNS(OdfDocumentNamespace.TABLE.getUri(), <span class="string">"number-rows-repeated"</span>);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;193</td> <td class="nbHitsCovered">&nbsp;12</td> <td class="src"><pre class="src">&nbsp; tableEle.insertBefore(newRow, refElement);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;194</td> <td class="nbHitsCovered">&nbsp;12</td> <td class="src"><pre class="src">&nbsp; refElement = newRow;</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;195</td> <td class="nbHitsCovered"><a title="Line 195: Conditional coverage 100% (2/2).">&nbsp;12</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 195: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (repeatedRowIndex == i) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;196</td> <td class="nbHitsCovered">&nbsp;5</td> <td class="src"><pre class="src">&nbsp; ownerRowElement = newRow;</pre></td></tr>
<tr> <td class="numLine">&nbsp;197</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; } <span class="keyword">else</span> {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;198</td> <td class="nbHitsCovered">&nbsp;7</td> <td class="src"><pre class="src">&nbsp; table.updateRowRepository(maRowElement, i, newRow, 0);</pre></td></tr>
<tr> <td class="numLine">&nbsp;199</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;200</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;201</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;202</td> <td class="nbHitsUncovered"><a title="Line 202: Conditional coverage 50% (1/2).">&nbsp;5</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 202: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (ownerRowElement != <span class="keyword">null</span>) {</a></span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;203</td> <td class="nbHitsCovered">&nbsp;5</td> <td class="src"><pre class="src">&nbsp; table.updateRowRepository(maRowElement, mnRepeatedIndex, ownerRowElement, 0);</pre></td></tr>
<tr> <td class="numLine">&nbsp;204</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;205</td> <td class="nbHitsCovered">&nbsp;5</td> <td class="src"><pre class="src">&nbsp; tableEle.removeChild(oldRowElement);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;206</td> <td class="nbHitsCovered">&nbsp;5</td> <td class="src"><pre class="src">&nbsp; mRowsRepeatedNumber = -1;</pre></td></tr>
<tr> <td class="numLine">&nbsp;207</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;208</td> <td class="nbHitsCovered">&nbsp;263</td> <td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;209</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;</pre></td></tr>
<tr> <td class="numLine">&nbsp;210</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="comment">/**</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;211</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * Return if the row always keeps its optimal height.</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;212</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * @return </span></pre></td></tr>
<tr> <td class="numLine">&nbsp;213</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * true if the row always keeps its optimal height;</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;214</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * vice versa</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;215</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> */</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;216</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="keyword">public</span> <span class="keyword">boolean</span> isOptimalHeight() {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;217</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; <span class="keyword">return</span> Boolean.parseBoolean(maRowElement.getProperty(OdfTableRowProperties.UseOptimalRowHeight));</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;218</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;219</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;</pre></td></tr>
<tr> <td class="numLine">&nbsp;220</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="comment">/**</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;221</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * Set if the row always keeps its optimal height.</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;222</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * @param isUseOptimalHeight</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;223</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * the flag that indicate row should keep its optimal height or not</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;224</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> */</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;225</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="keyword">public</span> <span class="keyword">void</span> setUseOptimalHeight(<span class="keyword">boolean</span> isUseOptimalHeight) {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;226</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; maRowElement.setProperty(OdfTableRowProperties.UseOptimalRowHeight, String.valueOf(isUseOptimalHeight));</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;227</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; }</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;228</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;</pre></td></tr>
<tr> <td class="numLine">&nbsp;229</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="comment">/**</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;230</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * Return an instance of &lt;code&gt;TableTableRowElement&lt;/code&gt; which represents this feature.</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;231</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * @return an instance of &lt;code&gt;TableTableRowElement&lt;/code&gt;</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;232</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> */</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;233</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="keyword">public</span> TableTableRowElement getOdfElement() {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;234</td> <td class="nbHitsCovered">&nbsp;118414</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> maRowElement;</pre></td></tr>
<tr> <td class="numLine">&nbsp;235</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;236</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;</pre></td></tr>
<tr> <td class="numLine">&nbsp;237</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="comment">/**</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;238</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * Get a cell with a specific index. The table will be automatically</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;239</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * expanded, when the given index is outside of the original table.</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;240</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * </span></pre></td></tr>
<tr> <td class="numLine">&nbsp;241</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * @param index</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;242</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * the cell index in this row</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;243</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * @return the cell object in the given cell index</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;244</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> */</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;245</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="keyword">public</span> OdfTableCell getCellByIndex(<span class="keyword">int</span> index) {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;246</td> <td class="nbHitsCovered">&nbsp;114236</td> <td class="src"><pre class="src">&nbsp; OdfTable table = getTable();</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;247</td> <td class="nbHitsUncovered"><a title="Line 247: Conditional coverage 50% (1/2).">&nbsp;114236</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 247: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (index &lt; 0) {</a></span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;248</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; <span class="keyword">throw</span> <span class="keyword">new</span> IllegalArgumentException(<span class="string">"index should be nonnegative integer."</span>);</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;249</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;250</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="comment">// expand column as needed.</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;251</td> <td class="nbHitsCovered">&nbsp;114236</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">int</span> lastColumnIndex = table.getColumnCount() - 1;</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;252</td> <td class="nbHitsCovered"><a title="Line 252: Conditional coverage 100% (2/2).">&nbsp;114236</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 252: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (index &gt; lastColumnIndex) {</a></pre></td></tr>
<tr> <td class="numLine">&nbsp;253</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="comment">//need clean cell style.</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;254</td> <td class="nbHitsCovered">&nbsp;1</td> <td class="src"><pre class="src">&nbsp; table.appendColumns((index - lastColumnIndex), <span class="keyword">true</span>);</pre></td></tr>
<tr> <td class="numLine">&nbsp;255</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;256</td> <td class="nbHitsUncovered"><a title="Line 256: Conditional coverage 50% (1/2).">&nbsp;114236</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 256: Conditional coverage 50% (1/2)."> <span class="keyword">for</span> (Node n : <span class="keyword">new</span> DomNodeList(maRowElement.getChildNodes())) {</a></span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;257</td> <td class="nbHitsUncovered"><a title="Line 257: Conditional coverage 50% (1/2).">&nbsp;671783</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 257: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (n <span class="keyword">instanceof</span> TableTableCellElementBase) {</a></span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;258</td> <td class="nbHitsCovered"><a title="Line 258: Conditional coverage 100% (2/2).">&nbsp;671783</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 258: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (index == 0) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;259</td> <td class="nbHitsCovered">&nbsp;37152</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> table.getCellInstance((TableTableCellElementBase) n,</pre></td></tr>
<tr> <td class="numLine">&nbsp;260</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; 0, mnRepeatedIndex);</pre></td></tr>
<tr> <td class="numLine">&nbsp;261</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; } <span class="keyword">else</span> {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;262</td> <td class="nbHitsCovered">&nbsp;634631</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">int</span> nextIndex = index</pre></td></tr>
<tr> <td class="numLine">&nbsp;263</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; - ((TableTableCellElementBase) n).getTableNumberColumnsRepeatedAttribute().intValue();</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;264</td> <td class="nbHitsCovered"><a title="Line 264: Conditional coverage 100% (2/2).">&nbsp;634631</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 264: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (nextIndex &lt; 0) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;265</td> <td class="nbHitsCovered">&nbsp;77084</td> <td class="src"><pre class="src">&nbsp; OdfTableCell cell = table.getCellInstance(</pre></td></tr>
<tr> <td class="numLine">&nbsp;266</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; (TableTableCellElementBase) n, index,</pre></td></tr>
<tr> <td class="numLine">&nbsp;267</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; mnRepeatedIndex);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;268</td> <td class="nbHitsCovered">&nbsp;77084</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> cell;</pre></td></tr>
<tr> <td class="numLine">&nbsp;269</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; } <span class="keyword">else</span> {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;270</td> <td class="nbHitsCovered">&nbsp;557547</td> <td class="src"><pre class="src">&nbsp; index = nextIndex;</pre></td></tr>
<tr> <td class="numLine">&nbsp;271</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;272</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;273</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;274</td> <td class="nbHitsCovered">&nbsp;557547</td> <td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;275</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; <span class="keyword">return</span> <span class="keyword">null</span>;</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;276</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;277</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;</pre></td></tr>
<tr> <td class="numLine">&nbsp;278</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="comment">/**</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;279</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * Return the count of real cells in this row.</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;280</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * The cells covered by top cells are not counted.</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;281</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * &lt;p&gt;</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;282</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * Please note it might not equal to the column count of the owner table,</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;283</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * because some of them are the covered cells.</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;284</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * @return the cell count</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;285</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> */</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;286</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="keyword">public</span> <span class="keyword">int</span> getCellCount() {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;287</td> <td class="nbHitsCovered">&nbsp;318</td> <td class="src"><pre class="src">&nbsp; OdfTable table = getTable();</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;288</td> <td class="nbHitsCovered">&nbsp;318</td> <td class="src"><pre class="src">&nbsp; Set&lt;OdfTableCell&gt; realCells = <span class="keyword">new</span> HashSet&lt;OdfTableCell&gt;();</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;289</td> <td class="nbHitsCovered">&nbsp;318</td> <td class="src"><pre class="src">&nbsp; List&lt;CellCoverInfo&gt; coverList = table.getCellCoverInfos(0, 0, table.getColumnCount() - 1, table.getRowCount() - 1);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;290</td> <td class="nbHitsCovered">&nbsp;318</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">int</span> rowIndex = getRowIndex();</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;291</td> <td class="nbHitsCovered"><a title="Line 291: Conditional coverage 100% (2/2).">&nbsp;7760</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 291: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (<span class="keyword">int</span> i = 0; i &lt; table.getColumnCount(); i++) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;292</td> <td class="nbHitsCovered">&nbsp;7442</td> <td class="src"><pre class="src">&nbsp; OdfTableCell cell = table.getOwnerCellByPosition(coverList, i, rowIndex);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;293</td> <td class="nbHitsCovered">&nbsp;7442</td> <td class="src"><pre class="src">&nbsp; realCells.add(cell);</pre></td></tr>
<tr> <td class="numLine">&nbsp;294</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;295</td> <td class="nbHitsCovered">&nbsp;318</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> realCells.size();</pre></td></tr>
<tr> <td class="numLine">&nbsp;296</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;297</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;</pre></td></tr>
<tr> <td class="numLine">&nbsp;298</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="comment">/**</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;299</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * Return the previous row of the current row.</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;300</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> *</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;301</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * @return the previous row before this row in the owner table</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;302</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> */</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;303</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="keyword">public</span> OdfTableRow getPreviousRow() {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;304</td> <td class="nbHitsCovered">&nbsp;4</td> <td class="src"><pre class="src">&nbsp; OdfTable table = getTable();</pre></td></tr>
<tr> <td class="numLine">&nbsp;305</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="comment">//the row has repeated row number &gt; 1</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;306</td> <td class="nbHitsUncovered"><a title="Line 306: Conditional coverage 50% (1/2).">&nbsp;4</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 306: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (getRowsRepeatedNumber() &gt; 1) {</a></span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;307</td> <td class="nbHitsUncovered"><a title="Line 307: Conditional coverage 0% (0/2).">&nbsp;0</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 307: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (mnRepeatedIndex &gt; 0) {</a></span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;308</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; <span class="keyword">return</span> table.getRowInstance(maRowElement, mnRepeatedIndex - 1);</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;309</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;310</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;311</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="comment">//the row has repeated row number &gt; 1 &amp;&amp; the index is 0</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;312</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="comment">//or the row has repeated row num = 1</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;313</td> <td class="nbHitsCovered">&nbsp;4</td> <td class="src"><pre class="src">&nbsp; Node aPrevNode = maRowElement.getPreviousSibling();</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;314</td> <td class="nbHitsCovered">&nbsp;4</td> <td class="src"><pre class="src">&nbsp; Node aCurNode = maRowElement;</pre></td></tr>
<tr> <td class="numLine">&nbsp;315</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; TableTableRowElement lastRow;</pre></td></tr>
<tr> <td class="numLine">&nbsp;316</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="keyword">while</span> (<span class="keyword">true</span>) {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;317</td> <td class="nbHitsCovered"><a title="Line 317: Conditional coverage 100% (2/2).">&nbsp;5</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 317: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (aPrevNode == <span class="keyword">null</span>) {</a></pre></td></tr>
<tr> <td class="numLine">&nbsp;318</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="comment">//does not have previous sibling, then get the parent</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;319</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="comment">//because aCurNode might be the child element of table-header-rows, table-rows, table-row-group</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;320</td> <td class="nbHitsCovered">&nbsp;1</td> <td class="src"><pre class="src">&nbsp; Node parentNode = aCurNode.getParentNode();</pre></td></tr>
<tr> <td class="numLine">&nbsp;321</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="comment">//if the parent is table, then it means that this row is the first row in this table</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;322</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="comment">//it has no previous row</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;323</td> <td class="nbHitsUncovered"><a title="Line 323: Conditional coverage 50% (1/2).">&nbsp;1</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 323: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (parentNode <span class="keyword">instanceof</span> TableTableElement) {</a></span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;324</td> <td class="nbHitsCovered">&nbsp;1</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> <span class="keyword">null</span>;</pre></td></tr>
<tr> <td class="numLine">&nbsp;325</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;326</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; aPrevNode = parentNode.getPreviousSibling();</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;327</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;328</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="comment">//else the previous node might be table-header-rows, table-rows, table-row-group</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;329</td> <td class="nbHitsUncovered"><a title="Line 329: Conditional coverage 50% (1/2).">&nbsp;4</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 329: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (aPrevNode != <span class="keyword">null</span>) {</a></span></pre></td></tr>
<tr> <td class="numLine">&nbsp;330</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="keyword">try</span> {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;331</td> <td class="nbHitsCovered"><a title="Line 331: Conditional coverage 100% (2/2).">&nbsp;4</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 331: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (aPrevNode <span class="keyword">instanceof</span> TableTableRowElement) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;332</td> <td class="nbHitsCovered">&nbsp;3</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> table.getRowInstance((TableTableRowElement) aPrevNode,</pre></td></tr>
<tr> <td class="numLine">&nbsp;333</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; ((TableTableRowElement) aPrevNode).getTableNumberRowsRepeatedAttribute().intValue() - 1);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;334</td> <td class="nbHitsUncovered"><a title="Line 334: Conditional coverage 50% (3/6) [each condition: 50%, 50%, 50%].">&nbsp;1</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 334: Conditional coverage 50% (3/6) [each condition: 50%, 50%, 50%]."> } <span class="keyword">else</span> <span class="keyword">if</span> (aPrevNode <span class="keyword">instanceof</span> TableTableRowsElement</a></span></pre></td></tr>
<tr> <td class="numLine">&nbsp;335</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; || aPrevNode <span class="keyword">instanceof</span> TableTableHeaderRowsElement</pre></td></tr>
<tr> <td class="numLine">&nbsp;336</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; || aPrevNode <span class="keyword">instanceof</span> TableTableRowGroupElement) {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;337</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; XPath xpath = ((OdfContentDom) aPrevNode.getOwnerDocument()).getXPath();</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;338</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; <span class="keyword">synchronized</span> (mDocument) {</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;339</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; lastRow = (TableTableRowElement) xpath.evaluate(<span class="string">".//table:table-row[last()]"</span>, aPrevNode, XPathConstants.NODE);</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;340</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; }</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;341</td> <td class="nbHitsUncovered"><a title="Line 341: Conditional coverage 0% (0/2).">&nbsp;0</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 341: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (lastRow != <span class="keyword">null</span>) {</a></span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;342</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; <span class="keyword">return</span> table.getRowInstance(lastRow, lastRow.getTableNumberRowsRepeatedAttribute().intValue() - 1);</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;343</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;344</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; } <span class="keyword">else</span> {</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;345</td> <td class="nbHitsCovered">&nbsp;1</td> <td class="src"><pre class="src">&nbsp; aCurNode = aPrevNode;</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;346</td> <td class="nbHitsCovered">&nbsp;1</td> <td class="src"><pre class="src">&nbsp; aPrevNode = aPrevNode.getPreviousSibling();</pre></td></tr>
<tr> <td class="numLine">&nbsp;347</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;348</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; } <span class="keyword">catch</span> (XPathExpressionException e) {</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;349</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; Logger.getLogger(OdfTableRow.<span class="keyword">class</span>.getName()).log(Level.SEVERE, e.getMessage(), e);</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;350</td> <td class="nbHitsCovered">&nbsp;1</td> <td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;351</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;352</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;353</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;354</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;</pre></td></tr>
<tr> <td class="numLine">&nbsp;355</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="comment">/**</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;356</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * Return the next row of the current row.</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;357</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> *</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;358</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * @return the next row after this row in the owner table</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;359</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> */</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;360</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="keyword">public</span> OdfTableRow getNextRow() {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;361</td> <td class="nbHitsCovered">&nbsp;2</td> <td class="src"><pre class="src">&nbsp; OdfTable table = getTable();</pre></td></tr>
<tr> <td class="numLine">&nbsp;362</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="comment">//the row has repeated row number &gt; 1</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;363</td> <td class="nbHitsUncovered"><a title="Line 363: Conditional coverage 50% (1/2).">&nbsp;2</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 363: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (getRowsRepeatedNumber() &gt; 1) {</a></span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;364</td> <td class="nbHitsUncovered"><a title="Line 364: Conditional coverage 0% (0/2).">&nbsp;0</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 364: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (mnRepeatedIndex &lt; (getRowsRepeatedNumber() - 1)) {</a></span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;365</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; <span class="keyword">return</span> table.getRowInstance(maRowElement, mnRepeatedIndex + 1);</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;366</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;367</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;368</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;369</td> <td class="nbHitsCovered">&nbsp;2</td> <td class="src"><pre class="src">&nbsp; Node aNextNode = maRowElement.getNextSibling();</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;370</td> <td class="nbHitsCovered">&nbsp;2</td> <td class="src"><pre class="src">&nbsp; Node aCurNode = maRowElement; </pre></td></tr>
<tr> <td class="numLine">&nbsp;371</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; TableTableRowElement firstRow;</pre></td></tr>
<tr> <td class="numLine">&nbsp;372</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="keyword">while</span> (<span class="keyword">true</span>) {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;373</td> <td class="nbHitsCovered"><a title="Line 373: Conditional coverage 100% (2/2).">&nbsp;2</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 373: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (aNextNode == <span class="keyword">null</span>) {</a></pre></td></tr>
<tr> <td class="numLine">&nbsp;374</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="comment">//does not have next sibling, then get the parent</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;375</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="comment">//because aCurNode might be the child element of table-header-rows, table-rows, table-row-group</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;376</td> <td class="nbHitsCovered">&nbsp;1</td> <td class="src"><pre class="src">&nbsp; Node parentNode = aCurNode.getParentNode();</pre></td></tr>
<tr> <td class="numLine">&nbsp;377</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="comment">//if the parent is table, then it means that this row is the last row in this table</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;378</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="comment">//it has no next row</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;379</td> <td class="nbHitsUncovered"><a title="Line 379: Conditional coverage 50% (1/2).">&nbsp;1</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 379: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (parentNode <span class="keyword">instanceof</span> TableTableElement) {</a></span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;380</td> <td class="nbHitsCovered">&nbsp;1</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> <span class="keyword">null</span>;</pre></td></tr>
<tr> <td class="numLine">&nbsp;381</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;382</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; aNextNode = parentNode.getNextSibling();</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;383</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;384</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="comment">//else the next node might be table-header-rows, table-rows, table-row-group</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;385</td> <td class="nbHitsUncovered"><a title="Line 385: Conditional coverage 50% (1/2).">&nbsp;1</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 385: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (aNextNode != <span class="keyword">null</span>) {</a></span></pre></td></tr>
<tr> <td class="numLine">&nbsp;386</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="keyword">try</span> {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;387</td> <td class="nbHitsUncovered"><a title="Line 387: Conditional coverage 50% (1/2).">&nbsp;1</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 387: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (aNextNode <span class="keyword">instanceof</span> TableTableRowElement) {</a></span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;388</td> <td class="nbHitsCovered">&nbsp;1</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> table.getRowInstance((TableTableRowElement) aNextNode, 0);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;389</td> <td class="nbHitsUncovered"><a title="Line 389: Conditional coverage 0% (0/6) [each condition: 0%, 0%, 0%].">&nbsp;0</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 389: Conditional coverage 0% (0/6) [each condition: 0%, 0%, 0%]."> } <span class="keyword">else</span> <span class="keyword">if</span> (aNextNode <span class="keyword">instanceof</span> TableTableRowsElement</a></span></pre></td></tr>
<tr> <td class="numLine">&nbsp;390</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; || aNextNode <span class="keyword">instanceof</span> TableTableHeaderRowsElement</pre></td></tr>
<tr> <td class="numLine">&nbsp;391</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; || aNextNode <span class="keyword">instanceof</span> TableTableRowGroupElement) {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;392</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; XPath xpath = ((OdfContentDom) aNextNode.getOwnerDocument()).getXPath();</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;393</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; <span class="keyword">synchronized</span> (mDocument) {</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;394</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; firstRow = (TableTableRowElement) xpath.evaluate(<span class="string">".//table:table-row[first()]"</span>, aNextNode, XPathConstants.NODE);</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;395</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; }</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;396</td> <td class="nbHitsUncovered"><a title="Line 396: Conditional coverage 0% (0/2).">&nbsp;0</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 396: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (firstRow != <span class="keyword">null</span>) {</a></span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;397</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; <span class="keyword">return</span> table.getRowInstance(firstRow, 0);</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;398</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;399</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; } <span class="keyword">else</span> {</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;400</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; aCurNode = aNextNode;</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;401</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; aNextNode = aNextNode.getNextSibling();</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;402</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;403</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; } <span class="keyword">catch</span> (XPathExpressionException e) {</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;404</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; Logger.getLogger(OdfTableRow.<span class="keyword">class</span>.getName()).log(Level.SEVERE, e.getMessage(), e);</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;405</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; }</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;406</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;407</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;408</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;409</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="comment">/**</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;410</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * Set the default cell style to this row.</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;411</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * &lt;p&gt;</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;412</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * The style should already exist in this document.</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;413</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * @param style</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;414</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * the cell style of the document</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;415</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> */</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;416</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="keyword">public</span> <span class="keyword">void</span> setDefaultCellStyle(OdfStyle style) {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;417</td> <td class="nbHitsCovered">&nbsp;1</td> <td class="src"><pre class="src">&nbsp; splitRepeatedRows();</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;418</td> <td class="nbHitsCovered">&nbsp;1</td> <td class="src"><pre class="src">&nbsp; OdfStyle defaultStyle = getDefaultCellStyle();</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;419</td> <td class="nbHitsUncovered"><a title="Line 419: Conditional coverage 50% (1/2).">&nbsp;1</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 419: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (defaultStyle != <span class="keyword">null</span>) {</a></span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;420</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; defaultStyle.removeStyleUser(maRowElement);</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;421</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;422</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;423</td> <td class="nbHitsUncovered"><a title="Line 423: Conditional coverage 50% (1/2).">&nbsp;1</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 423: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (style != <span class="keyword">null</span>) {</a></span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;424</td> <td class="nbHitsCovered">&nbsp;1</td> <td class="src"><pre class="src">&nbsp; style.addStyleUser(maRowElement);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;425</td> <td class="nbHitsCovered">&nbsp;1</td> <td class="src"><pre class="src">&nbsp; maRowElement.setTableDefaultCellStyleNameAttribute(</pre></td></tr>
<tr> <td class="numLine">&nbsp;426</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; style.getStyleNameAttribute());</pre></td></tr>
<tr> <td class="numLine">&nbsp;427</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;428</td> <td class="nbHitsCovered">&nbsp;1</td> <td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;429</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;</pre></td></tr>
<tr> <td class="numLine">&nbsp;430</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="comment">/**</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;431</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * Get the default cell style of this row.</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;432</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> *</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;433</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * @return the default cell style of this row</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;434</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> */</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;435</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="keyword">public</span> OdfStyle getDefaultCellStyle() {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;436</td> <td class="nbHitsCovered">&nbsp;1</td> <td class="src"><pre class="src">&nbsp; String styleName = maRowElement.getTableDefaultCellStyleNameAttribute();</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;437</td> <td class="nbHitsCovered">&nbsp;1</td> <td class="src"><pre class="src">&nbsp; OdfStyle style = maRowElement.getAutomaticStyles().getStyle(</pre></td></tr>
<tr> <td class="numLine">&nbsp;438</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; styleName, OdfStyleFamily.TableCell);</pre></td></tr>
<tr> <td class="numLine">&nbsp;439</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;440</td> <td class="nbHitsUncovered"><a title="Line 440: Conditional coverage 50% (1/2).">&nbsp;1</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 440: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (style == <span class="keyword">null</span>) {</a></span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;441</td> <td class="nbHitsCovered">&nbsp;1</td> <td class="src"><pre class="src">&nbsp; style = mDocument.getDocumentStyles().getStyle(styleName, OdfStyleFamily.TableCell);</pre></td></tr>
<tr> <td class="numLine">&nbsp;442</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;443</td> <td class="nbHitsCovered">&nbsp;1</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> style;</pre></td></tr>
<tr> <td class="numLine">&nbsp;444</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;445</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;</pre></td></tr>
<tr> <td class="numLine">&nbsp;446</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="comment">/**</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;447</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * Return the index of this row in the owner table.</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;448</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * </span></pre></td></tr>
<tr> <td class="numLine">&nbsp;449</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * @return the index of the row</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;450</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> */</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;451</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="keyword">public</span> <span class="keyword">int</span> getRowIndex() {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;452</td> <td class="nbHitsCovered">&nbsp;328</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">int</span> result = 0;</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;453</td> <td class="nbHitsCovered">&nbsp;328</td> <td class="src"><pre class="src">&nbsp; TableTableElement mTableElement = getTableElement();</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;454</td> <td class="nbHitsCovered">&nbsp;328</td> <td class="src"><pre class="src">&nbsp; TableTableRowElement rowEle = <span class="keyword">null</span>;</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;455</td> <td class="nbHitsUncovered"><a title="Line 455: Conditional coverage 50% (1/2).">&nbsp;328</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 455: Conditional coverage 50% (1/2)."> <span class="keyword">for</span> (Node n : <span class="keyword">new</span> DomNodeList(mTableElement.getChildNodes())) {</a></span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;456</td> <td class="nbHitsCovered"><a title="Line 456: Conditional coverage 100% (2/2).">&nbsp;3433</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 456: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (n <span class="keyword">instanceof</span> TableTableHeaderRowsElement) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;457</td> <td class="nbHitsCovered">&nbsp;41</td> <td class="src"><pre class="src">&nbsp; TableTableHeaderRowsElement headers = (TableTableHeaderRowsElement) n;</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;458</td> <td class="nbHitsCovered"><a title="Line 458: Conditional coverage 100% (2/2).">&nbsp;41</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 458: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (Node m : <span class="keyword">new</span> DomNodeList(headers.getChildNodes())) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;459</td> <td class="nbHitsUncovered"><a title="Line 459: Conditional coverage 50% (1/2).">&nbsp;42</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 459: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (m <span class="keyword">instanceof</span> TableTableRowElement) {</a></span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;460</td> <td class="nbHitsCovered">&nbsp;42</td> <td class="src"><pre class="src">&nbsp; rowEle = (TableTableRowElement) m;</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;461</td> <td class="nbHitsUncovered"><a title="Line 461: Conditional coverage 50% (1/2).">&nbsp;42</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 461: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (rowEle == getOdfElement()) {</a></span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;462</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; <span class="keyword">return</span> result + mnRepeatedIndex;</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;463</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;464</td> <td class="nbHitsCovered">&nbsp;42</td> <td class="src"><pre class="src">&nbsp; result += rowEle.getTableNumberRowsRepeatedAttribute();</pre></td></tr>
<tr> <td class="numLine">&nbsp;465</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;466</td> <td class="nbHitsCovered">&nbsp;42</td> <td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;467</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;468</td> <td class="nbHitsCovered"><a title="Line 468: Conditional coverage 100% (2/2).">&nbsp;3433</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 468: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (n <span class="keyword">instanceof</span> TableTableRowElement) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;469</td> <td class="nbHitsCovered">&nbsp;2892</td> <td class="src"><pre class="src">&nbsp; rowEle = (TableTableRowElement) n;</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;470</td> <td class="nbHitsCovered"><a title="Line 470: Conditional coverage 100% (2/2).">&nbsp;2892</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 470: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (rowEle == getOdfElement()) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;471</td> <td class="nbHitsCovered">&nbsp;328</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">break</span>;</pre></td></tr>
<tr> <td class="numLine">&nbsp;472</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;473</td> <td class="nbHitsCovered">&nbsp;2564</td> <td class="src"><pre class="src">&nbsp; result += ((TableTableRowElement) n).getTableNumberRowsRepeatedAttribute();</pre></td></tr>
<tr> <td class="numLine">&nbsp;474</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;475</td> <td class="nbHitsCovered">&nbsp;3105</td> <td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;476</td> <td class="nbHitsCovered">&nbsp;328</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> result + mnRepeatedIndex;</pre></td></tr>
<tr> <td class="numLine">&nbsp;477</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;</pre></td></tr>
<tr> <td class="numLine">&nbsp;478</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;479</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;</pre></td></tr>
<tr> <td class="numLine">&nbsp;480</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="comment">//insert count number of cell from index</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;481</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="comment">//this is called after insertColumn has been called by OdfTable</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;482</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="keyword">void</span> insertCellByIndex(<span class="keyword">int</span> index, <span class="keyword">int</span> count) {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;483</td> <td class="nbHitsCovered">&nbsp;7</td> <td class="src"><pre class="src">&nbsp; splitRepeatedRows();</pre></td></tr>
<tr> <td class="numLine">&nbsp;484</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="comment">//all insert the real cell</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;485</td> <td class="nbHitsCovered">&nbsp;7</td> <td class="src"><pre class="src">&nbsp; OdfTable table = getTable();</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;486</td> <td class="nbHitsCovered">&nbsp;7</td> <td class="src"><pre class="src">&nbsp; List&lt;CellCoverInfo&gt; coverList = table.getCellCoverInfos(0, 0, table.getColumnCount() - 1, table.getRowCount() - 1);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;487</td> <td class="nbHitsCovered">&nbsp;7</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">int</span> rowIndex = getRowIndex();</pre></td></tr>
<tr> <td class="numLine">&nbsp;488</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; OdfTableCell preCell;</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;489</td> <td class="nbHitsUncovered"><a title="Line 489: Conditional coverage 50% (1/2).">&nbsp;7</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 489: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (index == 0) {</a></span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;490</td> <td class="nbHitsCovered">&nbsp;7</td> <td class="src"><pre class="src">&nbsp; preCell = table.getOwnerCellByPosition(coverList, 0, rowIndex);</pre></td></tr>
<tr> <td class="numLine">&nbsp;491</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; } <span class="keyword">else</span> {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;492</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; preCell = table.getOwnerCellByPosition(coverList, index - 1, rowIndex);</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;493</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;494</td> <td class="nbHitsCovered">&nbsp;7</td> <td class="src"><pre class="src">&nbsp; OdfTableCell nextCell = getCellByIndex(index);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;495</td> <td class="nbHitsUncovered"><a title="Line 495: Conditional coverage 50% (1/2).">&nbsp;7</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 495: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (nextCell == <span class="keyword">null</span>) {</a></span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;496</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; nextCell = getCellByIndex(getCellCount() - 1);</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;497</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;498</td> <td class="nbHitsCovered"><a title="Line 498: Conditional coverage 100% (2/2).">&nbsp;23</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 498: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (<span class="keyword">int</span> i = index + count; i &gt; index; i--) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;499</td> <td class="nbHitsCovered">&nbsp;16</td> <td class="src"><pre class="src">&nbsp; TableTableCellElement newCell = (TableTableCellElement) OdfXMLFactory.newOdfElement((OdfFileDom) maRowElement.getOwnerDocument() ,</pre></td></tr>
<tr> <td class="numLine">&nbsp;500</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; OdfName.newName(OdfDocumentNamespace.TABLE, <span class="string">"table-cell"</span>));</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;501</td> <td class="nbHitsCovered">&nbsp;16</td> <td class="src"><pre class="src">&nbsp; newCell.setTableStyleNameAttribute(preCell.getStyleName());</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;502</td> <td class="nbHitsCovered">&nbsp;16</td> <td class="src"><pre class="src">&nbsp; maRowElement.insertBefore(newCell, nextCell.getOdfElement());</pre></td></tr>
<tr> <td class="numLine">&nbsp;503</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;504</td> <td class="nbHitsCovered">&nbsp;7</td> <td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;505</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;</pre></td></tr>
<tr> <td class="numLine">&nbsp;506</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="comment">//note: we have to use this method to modify the row repeated number</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;507</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="comment">//in order to update mnRepeatedIndex of the each row</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;508</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="keyword">void</span> setRowsRepeatedNumber(<span class="keyword">int</span> num) {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;509</td> <td class="nbHitsCovered">&nbsp;4</td> <td class="src"><pre class="src">&nbsp; mRowsRepeatedNumber = num;</pre></td></tr>
<tr> <td class="numLine">&nbsp;510</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="comment">//update the mnRepeatedIndex for the ever repeated row</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;511</td> <td class="nbHitsCovered">&nbsp;4</td> <td class="src"><pre class="src">&nbsp; maRowElement.setTableNumberRowsRepeatedAttribute(Integer.valueOf(num));</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;512</td> <td class="nbHitsCovered">&nbsp;4</td> <td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;513</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;</pre></td></tr>
<tr> <td class="numLine">&nbsp;514</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="keyword">int</span> getRowsRepeatedNumber() {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;515</td> <td class="nbHitsCovered"><a title="Line 515: Conditional coverage 100% (2/2).">&nbsp;875686</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 515: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (mRowsRepeatedNumber &lt; 0) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;516</td> <td class="nbHitsCovered">&nbsp;724</td> <td class="src"><pre class="src">&nbsp; Integer count = maRowElement.getTableNumberRowsRepeatedAttribute();</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;517</td> <td class="nbHitsUncovered"><a title="Line 517: Conditional coverage 50% (1/2).">&nbsp;724</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 517: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (count == <span class="keyword">null</span>) {</a></span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;518</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; mRowsRepeatedNumber = 1;</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;519</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; } <span class="keyword">else</span> {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;520</td> <td class="nbHitsCovered">&nbsp;724</td> <td class="src"><pre class="src">&nbsp; mRowsRepeatedNumber = count.intValue();</pre></td></tr>
<tr> <td class="numLine">&nbsp;521</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;522</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;523</td> <td class="nbHitsCovered">&nbsp;875686</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> mRowsRepeatedNumber;</pre></td></tr>
<tr> <td class="numLine">&nbsp;524</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;525</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;</pre></td></tr>
<tr> <td class="numLine">&nbsp;526</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="comment">/****************************</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;527</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * Moved from OdfTable</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;528</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * </span></pre></td></tr>
<tr> <td class="numLine">&nbsp;529</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> */</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;530</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="keyword">private</span> <span class="keyword">void</span> insertCellElementBefore(OdfElement parentEle, TableTableCellElementBase positionEle, TableTableCellElementBase cellEle, <span class="keyword">int</span> count) {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;531</td> <td class="nbHitsUncovered"><a title="Line 531: Conditional coverage 50% (1/2).">&nbsp;73</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 531: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (positionEle == <span class="keyword">null</span>) {</a></span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;532</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; parentEle.appendChild(cellEle);</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;533</td> <td class="nbHitsUncovered"><a title="Line 533: Conditional coverage 0% (0/2).">&nbsp;0</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 533: Conditional coverage 0% (0/2)."> <span class="keyword">for</span> (<span class="keyword">int</span> i = 1; i &lt; count; i++) {</a></span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;534</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; parentEle.appendChild(cellEle.cloneNode(<span class="keyword">true</span>));</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;535</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;536</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; } <span class="keyword">else</span> {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;537</td> <td class="nbHitsCovered">&nbsp;73</td> <td class="src"><pre class="src">&nbsp; parentEle.insertBefore(cellEle, positionEle);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;538</td> <td class="nbHitsCovered"><a title="Line 538: Conditional coverage 100% (2/2).">&nbsp;147</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 538: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (<span class="keyword">int</span> i = 1; i &lt; count; i++) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;539</td> <td class="nbHitsCovered">&nbsp;74</td> <td class="src"><pre class="src">&nbsp; parentEle.insertBefore(cellEle.cloneNode(<span class="keyword">true</span>), positionEle);</pre></td></tr>
<tr> <td class="numLine">&nbsp;540</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;541</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;542</td> <td class="nbHitsCovered">&nbsp;73</td> <td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;543</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;</pre></td></tr>
<tr> <td class="numLine">&nbsp;544</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="keyword">void</span> insertCellBefore(OdfTableCell refCell, OdfTableCell positionCell, <span class="keyword">int</span> count) {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;545</td> <td class="nbHitsCovered">&nbsp;79</td> <td class="src"><pre class="src">&nbsp; splitRepeatedRows();</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;546</td> <td class="nbHitsCovered">&nbsp;79</td> <td class="src"><pre class="src">&nbsp; OdfTable ownerTable = getTable();</pre></td></tr>
<tr> <td class="numLine">&nbsp;547</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;548</td> <td class="nbHitsUncovered"><a title="Line 548: Conditional coverage 50% (1/2).">&nbsp;79</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 548: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (positionCell == <span class="keyword">null</span>) {</a></span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;549</td> <td class="nbHitsUncovered"><a title="Line 549: Conditional coverage 0% (0/2).">&nbsp;0</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 549: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (refCell.isCoveredElement()) {</a></span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;550</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; TableTableCellElement coverCellEle = (TableTableCellElement) refCell.getCoverCell().getOdfElement();</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;551</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; TableTableCellElement newCellEle = (TableTableCellElement) coverCellEle.cloneNode(<span class="keyword">true</span>);</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;552</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; cleanCell(newCellEle);</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;553</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; insertCellElementBefore(getOdfElement(), <span class="keyword">null</span>, newCellEle, count);</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;554</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; } <span class="keyword">else</span> {</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;555</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; TableTableCellElement endCellEle = (TableTableCellElement) refCell.getOdfElement().cloneNode(<span class="keyword">true</span>);</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;556</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; cleanCell(endCellEle);</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;557</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; getOdfElement().appendChild(endCellEle);</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;558</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; reviseStyleFromLastColumnToMedium(refCell);</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;559</td> <td class="nbHitsUncovered"><a title="Line 559: Conditional coverage 0% (0/2).">&nbsp;0</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 559: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (count &gt; 1) {</a></span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;560</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; TableTableCellElement newCellEle = (TableTableCellElement) refCell.getOdfElement().cloneNode(<span class="keyword">true</span>);</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;561</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; cleanCell(newCellEle);</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;562</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; insertCellElementBefore(getOdfElement(), endCellEle, newCellEle, count - 1);</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;563</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;564</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; }</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;565</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; } <span class="keyword">else</span> {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;566</td> <td class="nbHitsCovered">&nbsp;79</td> <td class="src"><pre class="src">&nbsp; TableTableCellElement coverRefCellEle = <span class="keyword">null</span>;</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;567</td> <td class="nbHitsCovered">&nbsp;79</td> <td class="src"><pre class="src">&nbsp; TableTableCellElement coverPosCellEle = <span class="keyword">null</span>;</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;568</td> <td class="nbHitsCovered">&nbsp;79</td> <td class="src"><pre class="src">&nbsp; OdfTableCell coverRefCell = <span class="keyword">null</span>;</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;569</td> <td class="nbHitsCovered"><a title="Line 569: Conditional coverage 100% (2/2).">&nbsp;79</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 569: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (refCell.isCoveredElement()) { <span class="comment">//get ref cover cell</span></a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;570</td> <td class="nbHitsCovered">&nbsp;4</td> <td class="src"><pre class="src">&nbsp; coverRefCell = refCell.getCoverCell();</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;571</td> <td class="nbHitsCovered">&nbsp;4</td> <td class="src"><pre class="src">&nbsp; coverRefCellEle = (TableTableCellElement) coverRefCell.getOdfElement();</pre></td></tr>
<tr> <td class="numLine">&nbsp;572</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;573</td> <td class="nbHitsCovered"><a title="Line 573: Conditional coverage 100% (2/2).">&nbsp;79</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 573: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (positionCell.isCoveredElement()) <span class="comment">//get position cover cell</span></a></pre></td></tr>
<tr> <td class="numLine">&nbsp;574</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;575</td> <td class="nbHitsCovered">&nbsp;2</td> <td class="src"><pre class="src">&nbsp; coverPosCellEle = (TableTableCellElement) positionCell.getCoverCell().getOdfElement();</pre></td></tr>
<tr> <td class="numLine">&nbsp;576</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;577</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;578</td> <td class="nbHitsUncovered"><a title="Line 578: Conditional coverage 87% (7/8) [each condition: 100%, 100%, 100%, 50%].">&nbsp;79</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 578: Conditional coverage 87% (7/8) [each condition: 100%, 100%, 100%, 50%]."> <span class="keyword">if</span> ((coverRefCellEle != <span class="keyword">null</span> &amp;&amp; coverRefCellEle == coverPosCellEle) <span class="comment">//is cover cell and have the same cover cell</span></a></span></pre></td></tr>
<tr> <td class="numLine">&nbsp;579</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; || (coverPosCellEle != <span class="keyword">null</span> &amp;&amp; refCell.getOdfElement() == coverPosCellEle)) <span class="comment">//position cell is cover cell and refer cell covers position cell</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;580</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;581</td> <td class="nbHitsCovered"><a title="Line 581: Conditional coverage 100% (2/2).">&nbsp;2</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 581: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (coverRefCellEle == <span class="keyword">null</span>) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;582</td> <td class="nbHitsCovered">&nbsp;1</td> <td class="src"><pre class="src">&nbsp; coverRefCellEle = (TableTableCellElement) refCell.getOdfElement();</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;583</td> <td class="nbHitsCovered">&nbsp;1</td> <td class="src"><pre class="src">&nbsp; coverRefCell = refCell;</pre></td></tr>
<tr> <td class="numLine">&nbsp;584</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;585</td> <td class="nbHitsCovered">&nbsp;2</td> <td class="src"><pre class="src">&nbsp; TableCoveredTableCellElement newCellEle = (TableCoveredTableCellElement) OdfXMLFactory.newOdfElement(</pre></td></tr>
<tr> <td class="numLine">&nbsp;586</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; (OdfFileDom) ownerTable.getOdfElement().getOwnerDocument(),</pre></td></tr>
<tr> <td class="numLine">&nbsp;587</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; OdfName.newName(OdfDocumentNamespace.TABLE, <span class="string">"covered-table-cell"</span>));</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;588</td> <td class="nbHitsCovered">&nbsp;2</td> <td class="src"><pre class="src">&nbsp; insertCellElementBefore(getOdfElement(), positionCell.getOdfElement(), newCellEle, count);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;589</td> <td class="nbHitsCovered"><a title="Line 589: Conditional coverage 100% (2/2).">&nbsp;2</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 589: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (refCell.getRowIndex() == coverRefCell.getRowIndex()) <span class="comment">//the first cover line</span></a></pre></td></tr>
<tr> <td class="numLine">&nbsp;590</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;591</td> <td class="nbHitsCovered">&nbsp;1</td> <td class="src"><pre class="src">&nbsp; coverRefCell.setColumnSpannedNumber(coverRefCell.getColumnSpannedNumber() + count);</pre></td></tr>
<tr> <td class="numLine">&nbsp;592</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;593</td> <td class="nbHitsCovered"><a title="Line 593: Conditional coverage 100% (2/2).">&nbsp;2</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 593: Conditional coverage 100% (2/2)."> } <span class="keyword">else</span> <span class="keyword">if</span> (coverRefCellEle != <span class="keyword">null</span>) <span class="comment">//is cover cell</span></a></pre></td></tr>
<tr> <td class="numLine">&nbsp;594</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;595</td> <td class="nbHitsUncovered"><a title="Line 595: Conditional coverage 50% (1/2).">&nbsp;3</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 595: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (refCell.getRowIndex() == coverRefCell.getRowIndex()) { <span class="comment">//the first cover line</span></a></span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;596</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; TableTableCellElement newCellEle = (TableTableCellElement) coverRefCellEle.cloneNode(<span class="keyword">true</span>);</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;597</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; cleanCell(newCellEle);</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;598</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; insertCellElementBefore(getOdfElement(), positionCell.getOdfElement(), newCellEle, count);</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;599</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; } <span class="keyword">else</span> { <span class="comment">//the second and other cover line</span></span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;600</td> <td class="nbHitsCovered">&nbsp;3</td> <td class="src"><pre class="src">&nbsp; TableCoveredTableCellElement newCellEle = (TableCoveredTableCellElement) refCell.getOdfElement().cloneNode(<span class="keyword">true</span>);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;601</td> <td class="nbHitsCovered">&nbsp;3</td> <td class="src"><pre class="src">&nbsp; newCellEle.removeAttributeNS(OdfDocumentNamespace.TABLE.getUri(), <span class="string">"number-columns-repeated"</span>);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;602</td> <td class="nbHitsCovered">&nbsp;3</td> <td class="src"><pre class="src">&nbsp; insertCellElementBefore(getOdfElement(), positionCell.getOdfElement(), newCellEle, count);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;603</td> <td class="nbHitsCovered">&nbsp;3</td> <td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;604</td> <td class="nbHitsUncovered"><a title="Line 604: Conditional coverage 75% (3/4) [each condition: 100%, 50%].">&nbsp;74</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 604: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> } <span class="keyword">else</span> <span class="keyword">if</span> ((refCell.getOdfElement() == positionCell.getOdfElement())</a></span></pre></td></tr>
<tr> <td class="numLine">&nbsp;605</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; &amp;&amp; (refCell.getColumnsRepeatedNumber() &gt; 1)) <span class="comment">//repeated number</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;606</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;607</td> <td class="nbHitsCovered">&nbsp;6</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">int</span> repeatNum = refCell.getColumnsRepeatedNumber();</pre></td></tr>
<tr> <td class="numLine">&nbsp;608</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="comment">//update the cell that after the ref cell</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;609</td> <td class="nbHitsCovered"><a title="Line 609: Conditional coverage 100% (2/2).">&nbsp;12</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 609: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (<span class="keyword">int</span> i = repeatNum - 1; i &gt; refCell.mnRepeatedColIndex; i--) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;610</td> <td class="nbHitsCovered">&nbsp;6</td> <td class="src"><pre class="src">&nbsp; ownerTable.updateCellRepository(refCell.getOdfElement(), i, refCell.mnRepeatedRowIndex,</pre></td></tr>
<tr> <td class="numLine">&nbsp;611</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; refCell.getOdfElement(), i + count, refCell.mnRepeatedRowIndex);</pre></td></tr>
<tr> <td class="numLine">&nbsp;612</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;613</td> <td class="nbHitsCovered">&nbsp;6</td> <td class="src"><pre class="src">&nbsp; refCell.getOdfElement().setTableNumberColumnsRepeatedAttribute(repeatNum + count);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;614</td> <td class="nbHitsCovered">&nbsp;6</td> <td class="src"><pre class="src">&nbsp; } <span class="keyword">else</span> {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;615</td> <td class="nbHitsCovered">&nbsp;68</td> <td class="src"><pre class="src">&nbsp; TableTableCellElement newCellEle = (TableTableCellElement) refCell.getOdfElement().cloneNode(<span class="keyword">true</span>);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;616</td> <td class="nbHitsCovered">&nbsp;68</td> <td class="src"><pre class="src">&nbsp; cleanCell(newCellEle);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;617</td> <td class="nbHitsCovered">&nbsp;68</td> <td class="src"><pre class="src">&nbsp; insertCellElementBefore(getOdfElement(), positionCell.getOdfElement(), newCellEle, count);</pre></td></tr>
<tr> <td class="numLine">&nbsp;618</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;619</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;620</td> <td class="nbHitsCovered">&nbsp;79</td> <td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;621</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;</pre></td></tr>
<tr> <td class="numLine">&nbsp;622</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="comment">/**</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;623</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * This method is to insert a cell same as refCell before positionCell.</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;624</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * &lt;p&gt;</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;625</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * This method is invoked by appendColumn and insertColumnBefore.</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;626</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> */</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;627</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; OdfTableCell insertCellBefore(OdfTableCell refCell, OdfTableCell positionCell) {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;628</td> <td class="nbHitsCovered">&nbsp;139</td> <td class="src"><pre class="src">&nbsp; splitRepeatedRows();</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;629</td> <td class="nbHitsCovered">&nbsp;139</td> <td class="src"><pre class="src">&nbsp; OdfTableCell newCell = <span class="keyword">null</span>;</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;630</td> <td class="nbHitsCovered">&nbsp;139</td> <td class="src"><pre class="src">&nbsp; OdfTable ownerTable = getTable();</pre></td></tr>
<tr> <td class="numLine">&nbsp;631</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;632</td> <td class="nbHitsUncovered"><a title="Line 632: Conditional coverage 50% (1/2).">&nbsp;139</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 632: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (positionCell == <span class="keyword">null</span>) {</a></span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;633</td> <td class="nbHitsCovered"><a title="Line 633: Conditional coverage 100% (2/2).">&nbsp;139</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 633: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (refCell.isCoveredElement()) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;634</td> <td class="nbHitsCovered">&nbsp;1</td> <td class="src"><pre class="src">&nbsp; TableTableCellElement coverCellEle = (TableTableCellElement) refCell.getCoverCell().getOdfElement();</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;635</td> <td class="nbHitsCovered">&nbsp;1</td> <td class="src"><pre class="src">&nbsp; TableTableCellElement newCellEle = (TableTableCellElement) coverCellEle.cloneNode(<span class="keyword">true</span>);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;636</td> <td class="nbHitsCovered">&nbsp;1</td> <td class="src"><pre class="src">&nbsp; cleanCell(newCellEle);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;637</td> <td class="nbHitsCovered">&nbsp;1</td> <td class="src"><pre class="src">&nbsp; getOdfElement().appendChild(newCellEle);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;638</td> <td class="nbHitsCovered">&nbsp;1</td> <td class="src"><pre class="src">&nbsp; newCell = ownerTable.getCellInstance(newCellEle, 0, 0);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;639</td> <td class="nbHitsCovered">&nbsp;1</td> <td class="src"><pre class="src">&nbsp; } <span class="keyword">else</span> {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;640</td> <td class="nbHitsCovered">&nbsp;138</td> <td class="src"><pre class="src">&nbsp; TableTableCellElement newCellEle = (TableTableCellElement) refCell.getOdfElement().cloneNode(<span class="keyword">true</span>);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;641</td> <td class="nbHitsCovered">&nbsp;138</td> <td class="src"><pre class="src">&nbsp; cleanCell(newCellEle);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;642</td> <td class="nbHitsCovered">&nbsp;138</td> <td class="src"><pre class="src">&nbsp; getOdfElement().appendChild(newCellEle);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;643</td> <td class="nbHitsCovered">&nbsp;138</td> <td class="src"><pre class="src">&nbsp; newCell = ownerTable.getCellInstance(newCellEle, 0, 0);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;644</td> <td class="nbHitsCovered">&nbsp;138</td> <td class="src"><pre class="src">&nbsp; reviseStyleFromLastColumnToMedium(refCell);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;645</td> <td class="nbHitsCovered">&nbsp;138</td> <td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;646</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; } <span class="keyword">else</span> {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;647</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; TableTableCellElement coverRefCellEle = <span class="keyword">null</span>;</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;648</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; TableTableCellElement coverPosCellEle = <span class="keyword">null</span>;</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;649</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; OdfTableCell coverRefCell = <span class="keyword">null</span>;</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;650</td> <td class="nbHitsUncovered"><a title="Line 650: Conditional coverage 0% (0/2).">&nbsp;0</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 650: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (refCell.isCoveredElement()) { <span class="comment">//get ref cover cell</span></a></span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;651</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; coverRefCell = refCell.getCoverCell();</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;652</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; coverRefCellEle = (TableTableCellElement) coverRefCell.getOdfElement();</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;653</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;654</td> <td class="nbHitsUncovered"><a title="Line 654: Conditional coverage 0% (0/2).">&nbsp;0</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 654: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (positionCell.isCoveredElement()) <span class="comment">//get position cover cell</span></a></span></pre></td></tr>
<tr> <td class="numLine">&nbsp;655</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;656</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; coverPosCellEle = (TableTableCellElement) positionCell.getCoverCell().getOdfElement();</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;657</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;658</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;659</td> <td class="nbHitsUncovered"><a title="Line 659: Conditional coverage 0% (0/8) [each condition: 0%, 0%, 0%, 0%].">&nbsp;0</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 659: Conditional coverage 0% (0/8) [each condition: 0%, 0%, 0%, 0%]."> <span class="keyword">if</span> ((coverRefCellEle != <span class="keyword">null</span> &amp;&amp; coverRefCellEle == coverPosCellEle) <span class="comment">//is cover cell and have the same cover cell</span></a></span></pre></td></tr>
<tr> <td class="numLine">&nbsp;660</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; || (coverPosCellEle != <span class="keyword">null</span> &amp;&amp; refCell.getOdfElement() == coverPosCellEle)) <span class="comment">//position cell is cover cell and refer cell covers position cell</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;661</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;662</td> <td class="nbHitsUncovered"><a title="Line 662: Conditional coverage 0% (0/2).">&nbsp;0</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 662: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (coverRefCellEle == <span class="keyword">null</span>) {</a></span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;663</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; coverRefCellEle = (TableTableCellElement) refCell.getOdfElement();</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;664</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; coverRefCell = refCell;</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;665</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;666</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; TableCoveredTableCellElement newCellEle = (TableCoveredTableCellElement) OdfXMLFactory.newOdfElement(</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;667</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; (OdfFileDom) ownerTable.getOdfElement().getOwnerDocument(),</pre></td></tr>
<tr> <td class="numLine">&nbsp;668</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; OdfName.newName(OdfDocumentNamespace.TABLE, <span class="string">"covered-table-cell"</span>));</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;669</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; getOdfElement().insertBefore(newCellEle, positionCell.getOdfElement());</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;670</td> <td class="nbHitsUncovered"><a title="Line 670: Conditional coverage 0% (0/2).">&nbsp;0</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 670: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (refCell.getRowIndex() == coverRefCell.getRowIndex()) <span class="comment">//the first cover line</span></a></span></pre></td></tr>
<tr> <td class="numLine">&nbsp;671</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;672</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; coverRefCell.setColumnSpannedNumber(coverRefCell.getColumnSpannedNumber() + 1);</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;673</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;674</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; newCell = ownerTable.getCellInstance(newCellEle, 0, 0);</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;675</td> <td class="nbHitsUncovered"><a title="Line 675: Conditional coverage 0% (0/2).">&nbsp;0</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 675: Conditional coverage 0% (0/2)."> } <span class="keyword">else</span> <span class="keyword">if</span> (coverRefCellEle != <span class="keyword">null</span>) <span class="comment">//is cover cell</span></a></span></pre></td></tr>
<tr> <td class="numLine">&nbsp;676</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;677</td> <td class="nbHitsUncovered"><a title="Line 677: Conditional coverage 0% (0/2).">&nbsp;0</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 677: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (refCell.getRowIndex() == coverRefCell.getRowIndex()) { <span class="comment">//the first cover line</span></a></span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;678</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; TableTableCellElement newCellEle = (TableTableCellElement) coverRefCellEle.cloneNode(<span class="keyword">true</span>);</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;679</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; cleanCell(newCellEle);</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;680</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; getOdfElement().insertBefore(newCellEle, positionCell.getOdfElement());</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;681</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; newCell = ownerTable.getCellInstance(newCellEle, 0, 0);</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;682</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; } <span class="keyword">else</span> { <span class="comment">//the second and other cover line</span></span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;683</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; TableCoveredTableCellElement newCellEle = (TableCoveredTableCellElement) refCell.getOdfElement().cloneNode(<span class="keyword">true</span>);</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;684</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; newCellEle.removeAttributeNS(OdfDocumentNamespace.TABLE.getUri(), <span class="string">"number-columns-repeated"</span>);</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;685</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; getOdfElement().insertBefore(newCellEle, positionCell.getOdfElement());</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;686</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; newCell = ownerTable.getCellInstance(newCellEle, 0, 0);</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;687</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; }</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;688</td> <td class="nbHitsUncovered"><a title="Line 688: Conditional coverage 0% (0/4) [each condition: 0%, 0%].">&nbsp;0</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 688: Conditional coverage 0% (0/4) [each condition: 0%, 0%]."> } <span class="keyword">else</span> <span class="keyword">if</span> ((refCell.getOdfElement() == positionCell.getOdfElement())</a></span></pre></td></tr>
<tr> <td class="numLine">&nbsp;689</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; &amp;&amp; (refCell.getColumnsRepeatedNumber() &gt; 1)) <span class="comment">//repeated number</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;690</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;691</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; <span class="keyword">int</span> repeatNum = refCell.getColumnsRepeatedNumber();</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;692</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="comment">//update the cell that after the ref cell</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;693</td> <td class="nbHitsUncovered"><a title="Line 693: Conditional coverage 0% (0/2).">&nbsp;0</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 693: Conditional coverage 0% (0/2)."> <span class="keyword">for</span> (<span class="keyword">int</span> i = repeatNum - 1; i &gt; refCell.mnRepeatedColIndex; i--) {</a></span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;694</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; ownerTable.updateCellRepository(refCell.getOdfElement(), i, refCell.mnRepeatedRowIndex,</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;695</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; refCell.getOdfElement(), i + 1, refCell.mnRepeatedRowIndex);</pre></td></tr>
<tr> <td class="numLine">&nbsp;696</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;697</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; refCell.getOdfElement().setTableNumberColumnsRepeatedAttribute(repeatNum + 1);</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;698</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; newCell = ownerTable.getCellInstance(refCell.getOdfElement(), refCell.mnRepeatedColIndex + 1, refCell.mnRepeatedRowIndex);</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;699</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; } <span class="keyword">else</span> {</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;700</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; TableTableCellElement newCellEle = (TableTableCellElement) refCell.getOdfElement().cloneNode(<span class="keyword">true</span>);</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;701</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; cleanCell(newCellEle);</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;702</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; getOdfElement().insertBefore(newCellEle, positionCell.getOdfElement());</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;703</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; newCell = ownerTable.getCellInstance(newCellEle, 0, 0);</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;704</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;705</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;706</td> <td class="nbHitsCovered">&nbsp;139</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> newCell;</pre></td></tr>
<tr> <td class="numLine">&nbsp;707</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;708</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;</pre></td></tr>
<tr> <td class="numLine">&nbsp;709</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="keyword">private</span> <span class="keyword">void</span> cleanCell(TableTableCellElement newCellEle) {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;710</td> <td class="nbHitsCovered">&nbsp;207</td> <td class="src"><pre class="src">&nbsp; newCellEle.removeAttributeNS(OdfDocumentNamespace.OFFICE.getUri(), <span class="string">"value"</span>);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;711</td> <td class="nbHitsCovered">&nbsp;207</td> <td class="src"><pre class="src">&nbsp; newCellEle.removeAttributeNS(OdfDocumentNamespace.OFFICE.getUri(), <span class="string">"date-value"</span>);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;712</td> <td class="nbHitsCovered">&nbsp;207</td> <td class="src"><pre class="src">&nbsp; newCellEle.removeAttributeNS(OdfDocumentNamespace.OFFICE.getUri(), <span class="string">"time-value"</span>);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;713</td> <td class="nbHitsCovered">&nbsp;207</td> <td class="src"><pre class="src">&nbsp; newCellEle.removeAttributeNS(OdfDocumentNamespace.OFFICE.getUri(), <span class="string">"boolean-value"</span>);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;714</td> <td class="nbHitsCovered">&nbsp;207</td> <td class="src"><pre class="src">&nbsp; newCellEle.removeAttributeNS(OdfDocumentNamespace.OFFICE.getUri(), <span class="string">"string-value"</span>);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;715</td> <td class="nbHitsCovered">&nbsp;207</td> <td class="src"><pre class="src">&nbsp; newCellEle.removeAttributeNS(OdfDocumentNamespace.TABLE.getUri(), <span class="string">"formula"</span>);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;716</td> <td class="nbHitsCovered">&nbsp;207</td> <td class="src"><pre class="src">&nbsp; newCellEle.removeAttributeNS(OdfDocumentNamespace.TABLE.getUri(), <span class="string">"number-columns-repeated"</span>);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;717</td> <td class="nbHitsCovered">&nbsp;207</td> <td class="src"><pre class="src">&nbsp; newCellEle.removeAttributeNS(OdfDocumentNamespace.TABLE.getUri(), <span class="string">"number-columns-spanned"</span>);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;718</td> <td class="nbHitsCovered"><a title="Line 718: Conditional coverage 100% (2/2).">&nbsp;207</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 718: Conditional coverage 100% (2/2)."> <span class="keyword">if</span>(!getTable().isCellStyleInheritance()){</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;719</td> <td class="nbHitsCovered">&nbsp;18</td> <td class="src"><pre class="src">&nbsp; newCellEle.removeAttributeNS(OdfDocumentNamespace.TABLE.getUri(), <span class="string">"style-name"</span>);</pre></td></tr>
<tr> <td class="numLine">&nbsp;720</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;721</td> <td class="nbHitsCovered">&nbsp;207</td> <td class="src"><pre class="src">&nbsp; Node n = newCellEle.getFirstChild();</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;722</td> <td class="nbHitsCovered"><a title="Line 722: Conditional coverage 100% (2/2).">&nbsp;313</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 722: Conditional coverage 100% (2/2)."> <span class="keyword">while</span> (n != <span class="keyword">null</span>) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;723</td> <td class="nbHitsCovered">&nbsp;106</td> <td class="src"><pre class="src">&nbsp; Node m = n.getNextSibling();</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;724</td> <td class="nbHitsUncovered"><a title="Line 724: Conditional coverage 16% (1/6) [each condition: 50%, 0%, 0%].">&nbsp;106</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 724: Conditional coverage 16% (1/6) [each condition: 50%, 0%, 0%]."> <span class="keyword">if</span> (n <span class="keyword">instanceof</span> TextPElement</a></span></pre></td></tr>
<tr> <td class="numLine">&nbsp;725</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; || n <span class="keyword">instanceof</span> TextHElement</pre></td></tr>
<tr> <td class="numLine">&nbsp;726</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; || n <span class="keyword">instanceof</span> TextListElement) {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;727</td> <td class="nbHitsCovered">&nbsp;106</td> <td class="src"><pre class="src">&nbsp; newCellEle.removeChild(n);</pre></td></tr>
<tr> <td class="numLine">&nbsp;728</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;729</td> <td class="nbHitsCovered">&nbsp;106</td> <td class="src"><pre class="src">&nbsp; n = m;</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;730</td> <td class="nbHitsCovered">&nbsp;106</td> <td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;731</td> <td class="nbHitsCovered">&nbsp;207</td> <td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;732</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;</pre></td></tr>
<tr> <td class="numLine">&nbsp;733</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="keyword">private</span> <span class="keyword">void</span> reviseStyleFromLastColumnToMedium(OdfTableCell oldLastCell) {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;734</td> <td class="nbHitsCovered"><a title="Line 734: Conditional coverage 100% (2/2).">&nbsp;138</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 734: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (getTable().mIsSpreadsheet) <span class="keyword">return</span>;</a></pre></td></tr>
<tr> <td class="numLine">&nbsp;735</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; </pre></td></tr>
<tr> <td class="numLineCover">&nbsp;736</td> <td class="nbHitsCovered">&nbsp;101</td> <td class="src"><pre class="src">&nbsp; OdfStyle styleEle = oldLastCell.getCellStyleElementForWrite();</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;737</td> <td class="nbHitsCovered"><a title="Line 737: Conditional coverage 100% (2/2).">&nbsp;101</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 737: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (styleEle != <span class="keyword">null</span>) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;738</td> <td class="nbHitsCovered"><a title="Line 738: Conditional coverage 100% (2/2).">&nbsp;55</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 738: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (oldLastCell.getRowIndex() == 0) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;739</td> <td class="nbHitsCovered">&nbsp;10</td> <td class="src"><pre class="src">&nbsp; OdfTable.setLeftTopBorderStyleProperties(styleEle);</pre></td></tr>
<tr> <td class="numLine">&nbsp;740</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; } <span class="keyword">else</span> {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;741</td> <td class="nbHitsCovered">&nbsp;45</td> <td class="src"><pre class="src">&nbsp; OdfTable.setLeftBottomBorderStylesProperties(styleEle);</pre></td></tr>
<tr> <td class="numLine">&nbsp;742</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;743</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;744</td> <td class="nbHitsCovered">&nbsp;101</td> <td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;745</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;</pre></td></tr>
<tr> <td class="numLine">&nbsp;746</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="keyword">private</span> <span class="keyword">void</span> reviseStyleFromMediumColumnToLast(OdfTableCell newLastCell) {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;747</td> <td class="nbHitsUncovered"><a title="Line 747: Conditional coverage 50% (1/2).">&nbsp;9</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 747: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (getTable().mIsSpreadsheet) <span class="keyword">return</span>;</a></span></pre></td></tr>
<tr> <td class="numLine">&nbsp;748</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; </pre></td></tr>
<tr> <td class="numLineCover">&nbsp;749</td> <td class="nbHitsCovered">&nbsp;9</td> <td class="src"><pre class="src">&nbsp; OdfStyle styleEle = newLastCell.getCellStyleElementForWrite();</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;750</td> <td class="nbHitsUncovered"><a title="Line 750: Conditional coverage 50% (1/2).">&nbsp;9</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 750: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (styleEle != <span class="keyword">null</span>) {</a></span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;751</td> <td class="nbHitsCovered"><a title="Line 751: Conditional coverage 100% (2/2).">&nbsp;9</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 751: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (newLastCell.getRowIndex() == 0) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;752</td> <td class="nbHitsCovered">&nbsp;4</td> <td class="src"><pre class="src">&nbsp; OdfTable.setRightTopBorderStyleProperties(styleEle);</pre></td></tr>
<tr> <td class="numLine">&nbsp;753</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; } <span class="keyword">else</span> {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;754</td> <td class="nbHitsCovered">&nbsp;5</td> <td class="src"><pre class="src">&nbsp; OdfTable.setRightBottomBorderStylesProperties(styleEle);</pre></td></tr>
<tr> <td class="numLine">&nbsp;755</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;756</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;757</td> <td class="nbHitsCovered">&nbsp;9</td> <td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;758</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;</pre></td></tr>
<tr> <td class="numLine">&nbsp;759</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="comment">/**</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;760</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * This method is invoked by removeColumnByIndex</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;761</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * So we don't need to care about </span></pre></td></tr>
<tr> <td class="numLine">&nbsp;762</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * the covered and spanned cell in a same column </span></pre></td></tr>
<tr> <td class="numLine">&nbsp;763</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> */</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;764</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="keyword">void</span> removeCellByIndex(<span class="keyword">int</span> nStart, <span class="keyword">int</span> nCount) {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;765</td> <td class="nbHitsCovered">&nbsp;29</td> <td class="src"><pre class="src">&nbsp; splitRepeatedRows();</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;766</td> <td class="nbHitsCovered">&nbsp;29</td> <td class="src"><pre class="src">&nbsp; OdfTableCell startCell = getCellByIndex(nStart);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;767</td> <td class="nbHitsCovered">&nbsp;29</td> <td class="src"><pre class="src">&nbsp; OdfTableCell coverCell = <span class="keyword">null</span>;</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;768</td> <td class="nbHitsCovered"><a title="Line 768: Conditional coverage 100% (2/2).">&nbsp;29</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 768: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (startCell.isCoveredElement()) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;769</td> <td class="nbHitsCovered">&nbsp;5</td> <td class="src"><pre class="src">&nbsp; coverCell = startCell.getCoverCellInSameRow();</pre></td></tr>
<tr> <td class="numLine">&nbsp;770</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;771</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;772</td> <td class="nbHitsCovered">&nbsp;29</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">int</span> index = nStart;</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;773</td> <td class="nbHitsCovered"><a title="Line 773: Conditional coverage 100% (2/2).">&nbsp;76</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 773: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (<span class="keyword">int</span> i = 0; i &lt; nCount; i++) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;774</td> <td class="nbHitsCovered">&nbsp;47</td> <td class="src"><pre class="src">&nbsp; OdfTableCell cell = getCellByIndex(index);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;775</td> <td class="nbHitsCovered">&nbsp;47</td> <td class="src"><pre class="src">&nbsp; cell.splitRepeatedCells();</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;776</td> <td class="nbHitsCovered"><a title="Line 776: Conditional coverage 100% (4/4) [each condition: 100%, 100%].">&nbsp;47</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 776: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> <span class="keyword">if</span> (cell.isCoveredElement() &amp;&amp; coverCell != <span class="keyword">null</span>) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;777</td> <td class="nbHitsCovered">&nbsp;1</td> <td class="src"><pre class="src">&nbsp; coverCell.setColumnSpannedNumber(coverCell.getColumnSpannedNumber() - cell.getColumnsRepeatedNumber());</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;778</td> <td class="nbHitsCovered">&nbsp;1</td> <td class="src"><pre class="src">&nbsp; maRowElement.removeChild(cell.getOdfElement());</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;779</td> <td class="nbHitsCovered">&nbsp;1</td> <td class="src"><pre class="src">&nbsp; i += cell.getColumnsRepeatedNumber() - 1;</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;780</td> <td class="nbHitsCovered"><a title="Line 780: Conditional coverage 100% (2/2).">&nbsp;46</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 780: Conditional coverage 100% (2/2)."> } <span class="keyword">else</span> <span class="keyword">if</span> (cell.isCoveredElement()) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;781</td> <td class="nbHitsCovered">&nbsp;7</td> <td class="src"><pre class="src">&nbsp; maRowElement.removeChild(cell.getOdfElement());</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;782</td> <td class="nbHitsCovered">&nbsp;7</td> <td class="src"><pre class="src">&nbsp; i += cell.getColumnsRepeatedNumber() - 1;</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;783</td> <td class="nbHitsUncovered"><a title="Line 783: Conditional coverage 50% (1/2).">&nbsp;39</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 783: Conditional coverage 50% (1/2)."> } <span class="keyword">else</span> <span class="keyword">if</span> (!cell.isCoveredElement()) {</a></span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;784</td> <td class="nbHitsUncovered"><a title="Line 784: Conditional coverage 50% (1/2).">&nbsp;39</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 784: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (i + cell.getColumnSpannedNumber() &lt;= nCount) {</a></span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;785</td> <td class="nbHitsCovered">&nbsp;39</td> <td class="src"><pre class="src">&nbsp; maRowElement.removeChild(cell.getOdfElement());</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;786</td> <td class="nbHitsCovered">&nbsp;39</td> <td class="src"><pre class="src">&nbsp; i += cell.getColumnSpannedNumber() - 1;</pre></td></tr>
<tr> <td class="numLine">&nbsp;787</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; } <span class="keyword">else</span> {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;788</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; removeCellByIndex(index + 1, nCount - i);</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;789</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;790</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;791</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;792</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;793</td> <td class="nbHitsCovered">&nbsp;29</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">int</span> clmnum = getTable().getColumnCount();</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;794</td> <td class="nbHitsCovered"><a title="Line 794: Conditional coverage 100% (2/2).">&nbsp;29</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 794: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (nStart + nCount &gt;= clmnum) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;795</td> <td class="nbHitsCovered">&nbsp;9</td> <td class="src"><pre class="src">&nbsp; OdfTableCell cell = getCellByIndex(nStart - 1);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;796</td> <td class="nbHitsCovered">&nbsp;9</td> <td class="src"><pre class="src">&nbsp; reviseStyleFromMediumColumnToLast(cell);</pre></td></tr>
<tr> <td class="numLine">&nbsp;797</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;798</td> <td class="nbHitsCovered">&nbsp;29</td> <td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;799</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;</pre></td></tr>
<tr> <td class="numLine">&nbsp;800</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="keyword">void</span> removeAllCellsRelationship() {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;801</td> <td class="nbHitsCovered">&nbsp;15</td> <td class="src"><pre class="src">&nbsp; OdfTable table = getTable();</pre></td></tr>
<tr> <td class="numLine">&nbsp;802</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;803</td> <td class="nbHitsCovered"><a title="Line 803: Conditional coverage 100% (2/2).">&nbsp;15</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 803: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (<span class="keyword">int</span> i = 0; i &lt; table.getColumnCount();) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;804</td> <td class="nbHitsCovered">&nbsp;64</td> <td class="src"><pre class="src">&nbsp; OdfTableCell cell = getCellByIndex(i);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;805</td> <td class="nbHitsUncovered"><a title="Line 805: Conditional coverage 50% (1/2).">&nbsp;64</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 805: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (cell.isCoveredElement()) <span class="comment">//cell is a cover cell</span></a></span></pre></td></tr>
<tr> <td class="numLine">&nbsp;806</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;807</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; OdfTableCell coverCell = cell.getCoverCellInSameColumn();</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;808</td> <td class="nbHitsUncovered"><a title="Line 808: Conditional coverage 0% (0/2).">&nbsp;0</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 808: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (coverCell != <span class="keyword">null</span>) {</a></span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;809</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; coverCell.setRowSpannedNumber(coverCell.getRowSpannedNumber() - getRowsRepeatedNumber());</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;810</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;811</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; getOdfElement().removeChild(cell.getOdfElement());</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;812</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; } <span class="keyword">else</span> {</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;813</td> <td class="nbHitsUncovered"><a title="Line 813: Conditional coverage 50% (1/2).">&nbsp;64</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 813: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (cell.getRowSpannedNumber() &gt; 1) <span class="comment">//cell is not a cover cell, and it span more rows</span></a></span></pre></td></tr>
<tr> <td class="numLine">&nbsp;814</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; {</pre></td></tr>
<tr> <td class="numLine">&nbsp;815</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="comment">//split the cell under this cell to a single cell</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;816</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; OdfTableRow nextRow = table.getRowByIndex(getRowIndex() + 1);</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;817</td> <td class="nbHitsUncovered"><a title="Line 817: Conditional coverage 0% (0/2).">&nbsp;0</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 817: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (nextRow.getRowsRepeatedNumber() &gt; 1) {</a></span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;818</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; nextRow.splitRepeatedRows();</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;819</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;820</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; OdfTableCell coveredCell = table.getCellByPosition(cell.getColumnIndex(), getRowIndex() + 1);</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;821</td> <td class="nbHitsUncovered"><a title="Line 821: Conditional coverage 0% (0/2).">&nbsp;0</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 821: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (coveredCell.getColumnsRepeatedNumber() &gt; 1) {</a></span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;822</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; coveredCell.splitRepeatedCells();</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;823</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; coveredCell = table.getCellByPosition(cell.getColumnIndex(), getRowIndex() + 1);</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;824</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;825</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;</pre></td></tr>
<tr> <td class="numLine">&nbsp;826</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="comment">//create a new cell</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;827</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; TableTableCellElement newCellEle = (TableTableCellElement) cell.getOdfElement().cloneNode(<span class="keyword">true</span>);</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;828</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; newCellEle.setTableNumberRowsSpannedAttribute(cell.getRowSpannedNumber() - getRowsRepeatedNumber());</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;829</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="comment">//update repository</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;830</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; <span class="keyword">int</span> startRow = coveredCell.getRowIndex();</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;831</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; <span class="keyword">int</span> endRow = coveredCell.getRowIndex() + newCellEle.getTableNumberRowsSpannedAttribute();</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;832</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; <span class="keyword">int</span> startClm = coveredCell.getColumnIndex();</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;833</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; <span class="keyword">int</span> endClm = coveredCell.getColumnIndex() + newCellEle.getTableNumberColumnsSpannedAttribute() * newCellEle.getTableNumberColumnsRepeatedAttribute();</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;834</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; coveredCell.getOdfElement().getParentNode().replaceChild(newCellEle, coveredCell.getOdfElement());</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;835</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;836</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; table.updateRepositoryWhenCellElementChanged(startRow, endRow, startClm, endClm, newCellEle);</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;837</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;838</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;839</td> <td class="nbHitsCovered">&nbsp;64</td> <td class="src"><pre class="src">&nbsp; i += cell.getColumnSpannedNumber();</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;840</td> <td class="nbHitsCovered">&nbsp;64</td> <td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;841</td> <td class="nbHitsCovered">&nbsp;15</td> <td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;842</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;}</pre></td></tr>
</table>
<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 1.9.4.1 on 22.02.13 10:27.</div>
</body>
</html>