| <!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.simple.common.navigation.TextStyleNavigation</h5> |
| <div class="separator"> </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.simple.common.navigation.TextStyleNavigation.html">TextStyleNavigation</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">89%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:89px"><span class="text">115/128</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">83%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:83px"><span class="text">65/78</span></div></div></td></tr></table></td><td class="value"><span class="hidden">5.3;</span>5,3</td></tr> |
| |
| </table> |
| <div class="separator"> </div> |
| <table cellspacing="0" cellpadding="0" class="src"> |
| <tr> <td class="numLine"> 1</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment">/* </span></pre></td></tr> |
| <tr> <td class="numLine"> 2</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment">Licensed to the Apache Software Foundation (ASF) under one</span></pre></td></tr> |
| <tr> <td class="numLine"> 3</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment">or more contributor license agreements. See the NOTICE file</span></pre></td></tr> |
| <tr> <td class="numLine"> 4</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment">distributed with this work for additional information</span></pre></td></tr> |
| <tr> <td class="numLine"> 5</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment">regarding copyright ownership. The ASF licenses this file</span></pre></td></tr> |
| <tr> <td class="numLine"> 6</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment">to you under the Apache License, Version 2.0 (the</span></pre></td></tr> |
| <tr> <td class="numLine"> 7</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment">"License"); you may not use this file except in compliance</span></pre></td></tr> |
| <tr> <td class="numLine"> 8</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment">with the License. You may obtain a copy of the License at</span></pre></td></tr> |
| <tr> <td class="numLine"> 9</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> </pre></td></tr> |
| <tr> <td class="numLine"> 10</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment"> http://www.apache.org/licenses/LICENSE-2.0</span></pre></td></tr> |
| <tr> <td class="numLine"> 11</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> </pre></td></tr> |
| <tr> <td class="numLine"> 12</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment">Unless required by applicable law or agreed to in writing,</span></pre></td></tr> |
| <tr> <td class="numLine"> 13</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment">software distributed under the License is distributed on an</span></pre></td></tr> |
| <tr> <td class="numLine"> 14</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment">"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY</span></pre></td></tr> |
| <tr> <td class="numLine"> 15</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment">KIND, either express or implied. See the License for the</span></pre></td></tr> |
| <tr> <td class="numLine"> 16</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment">specific language governing permissions and limitations</span></pre></td></tr> |
| <tr> <td class="numLine"> 17</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment">under the License.</span></pre></td></tr> |
| <tr> <td class="numLine"> 18</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment">*/</span></pre></td></tr> |
| <tr> <td class="numLine"> 19</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> </pre></td></tr> |
| <tr> <td class="numLine"> 20</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="keyword">package</span> org.odftoolkit.simple.common.navigation;</pre></td></tr> |
| <tr> <td class="numLine"> 21</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> </pre></td></tr> |
| <tr> <td class="numLine"> 22</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="keyword">import</span> java.util.HashMap;</pre></td></tr> |
| <tr> <td class="numLine"> 23</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="keyword">import</span> java.util.HashSet;</pre></td></tr> |
| <tr> <td class="numLine"> 24</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="keyword">import</span> java.util.Iterator;</pre></td></tr> |
| <tr> <td class="numLine"> 25</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="keyword">import</span> java.util.Map;</pre></td></tr> |
| <tr> <td class="numLine"> 26</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="keyword">import</span> java.util.Set;</pre></td></tr> |
| <tr> <td class="numLine"> 27</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="keyword">import</span> java.util.logging.Level;</pre></td></tr> |
| <tr> <td class="numLine"> 28</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="keyword">import</span> java.util.logging.Logger;</pre></td></tr> |
| <tr> <td class="numLine"> 29</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> </pre></td></tr> |
| <tr> <td class="numLine"> 30</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="keyword">import</span> org.odftoolkit.odfdom.dom.OdfDocumentNamespace;</pre></td></tr> |
| <tr> <td class="numLine"> 31</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="keyword">import</span> org.odftoolkit.odfdom.dom.element.OdfStylableElement;</pre></td></tr> |
| <tr> <td class="numLine"> 32</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="keyword">import</span> org.odftoolkit.odfdom.dom.style.OdfStyleFamily;</pre></td></tr> |
| <tr> <td class="numLine"> 33</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="keyword">import</span> org.odftoolkit.odfdom.dom.style.props.OdfStyleProperty;</pre></td></tr> |
| <tr> <td class="numLine"> 34</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="keyword">import</span> org.odftoolkit.odfdom.incubator.doc.style.OdfDefaultStyle;</pre></td></tr> |
| <tr> <td class="numLine"> 35</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="keyword">import</span> org.odftoolkit.odfdom.incubator.doc.style.OdfStyle;</pre></td></tr> |
| <tr> <td class="numLine"> 36</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="keyword">import</span> org.odftoolkit.odfdom.incubator.doc.text.OdfTextHeading;</pre></td></tr> |
| <tr> <td class="numLine"> 37</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="keyword">import</span> org.odftoolkit.odfdom.incubator.doc.text.OdfTextParagraph;</pre></td></tr> |
| <tr> <td class="numLine"> 38</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="keyword">import</span> org.odftoolkit.odfdom.pkg.OdfElement;</pre></td></tr> |
| <tr> <td class="numLine"> 39</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="keyword">import</span> org.odftoolkit.simple.TextDocument;</pre></td></tr> |
| <tr> <td class="numLine"> 40</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="keyword">import</span> org.w3c.dom.Element;</pre></td></tr> |
| <tr> <td class="numLine"> 41</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="keyword">import</span> org.w3c.dom.Node;</pre></td></tr> |
| <tr> <td class="numLine"> 42</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="keyword">import</span> org.w3c.dom.NodeList;</pre></td></tr> |
| <tr> <td class="numLine"> 43</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> </pre></td></tr> |
| <tr> <td class="numLine"> 44</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment">/**</span></pre></td></tr> |
| <tr> <td class="numLine"> 45</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment"> * A derived <code>Navigation</code> class used to navigate the text content,</span></pre></td></tr> |
| <tr> <td class="numLine"> 46</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment"> * which can search the document and find matched style properties and return</span></pre></td></tr> |
| <tr> <td class="numLine"> 47</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment"> * <code>TextSelection</code> instance(s).</span></pre></td></tr> |
| <tr> <td class="numLine"> 48</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> |
| <tr> <td class="numLine"> 49</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="keyword">public</span> <span class="keyword">class</span> TextStyleNavigation <span class="keyword">extends</span> Navigation {</pre></td></tr> |
| <tr> <td class="numLine"> 50</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> </pre></td></tr> |
| <tr> <td class="numLine"> 51</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="keyword">private</span> TextDocument mTextDocument;</pre></td></tr> |
| <tr> <td class="numLine"> 52</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="keyword">private</span> TextSelection mNextSelectedItem;</pre></td></tr> |
| <tr> <td class="numLine"> 53</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="keyword">private</span> TextSelection mTempSelectedItem;</pre></td></tr> |
| <tr> <td class="numLine"> 54</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="keyword">private</span> <span class="keyword">int</span> mCurrentIndex;</pre></td></tr> |
| <tr> <td class="numLine"> 55</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="keyword">private</span> Map<OdfStyleProperty, String> mProps;</pre></td></tr> |
| <tr> <td class="numLine"> 56</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="keyword">private</span> String mText;</pre></td></tr> |
| <tr> <td class="numLine"> 57</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="keyword">private</span> Node mPhNode;</pre></td></tr> |
| <tr> <td class="numLine"> 58</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="keyword">private</span> <span class="keyword">int</span> mIndex;</pre></td></tr> |
| <tr> <td class="numLine"> 59</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="keyword">private</span> Node mNode;</pre></td></tr> |
| <tr> <td class="numLine"> 60</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> </pre></td></tr> |
| <tr> <td class="numLine"> 61</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment">/**</span></pre></td></tr> |
| <tr> <td class="numLine"> 62</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment"> * Construct <code>TextStyleNavigation</code> with style properties condition and</span></pre></td></tr> |
| <tr> <td class="numLine"> 63</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment"> * navigation scope.</span></pre></td></tr> |
| <tr> <td class="numLine"> 64</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment"> * </span></pre></td></tr> |
| <tr> <td class="numLine"> 65</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment"> * @param props</span></pre></td></tr> |
| <tr> <td class="numLine"> 66</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment"> * the matched style properties conditions</span></pre></td></tr> |
| <tr> <td class="numLine"> 67</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment"> * @param doc</span></pre></td></tr> |
| <tr> <td class="numLine"> 68</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment"> * the navigation search scope</span></pre></td></tr> |
| <tr> <td class="numLine"> 69</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> |
| <tr> <td class="numLineCover"> 70</td> <td class="nbHitsCovered"> 5</td> <td class="src"><pre class="src"> <span class="keyword">public</span> TextStyleNavigation(Map<OdfStyleProperty, String> props, TextDocument doc) {</pre></td></tr> |
| <tr> <td class="numLineCover"> 71</td> <td class="nbHitsCovered"> 5</td> <td class="src"><pre class="src"> mTextDocument = doc;</pre></td></tr> |
| <tr> <td class="numLineCover"> 72</td> <td class="nbHitsCovered"> 5</td> <td class="src"><pre class="src"> mNextSelectedItem = <span class="keyword">null</span>;</pre></td></tr> |
| <tr> <td class="numLineCover"> 73</td> <td class="nbHitsCovered"> 5</td> <td class="src"><pre class="src"> mTempSelectedItem = <span class="keyword">null</span>;</pre></td></tr> |
| <tr> <td class="numLineCover"> 74</td> <td class="nbHitsCovered"> 5</td> <td class="src"><pre class="src"> <span class="keyword">this</span>.mProps = props;</pre></td></tr> |
| <tr> <td class="numLineCover"> 75</td> <td class="nbHitsCovered"> 5</td> <td class="src"><pre class="src"> }</pre></td></tr> |
| <tr> <td class="numLine"> 76</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> </pre></td></tr> |
| <tr> <td class="numLine"> 77</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment">/**</span></pre></td></tr> |
| <tr> <td class="numLine"> 78</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment"> * Check if has next <code>TextSelection</code> with satisfied style.</span></pre></td></tr> |
| <tr> <td class="numLine"> 79</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment"> * </span></pre></td></tr> |
| <tr> <td class="numLine"> 80</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment"> * @see org.odftoolkit.simple.common.navigation.Navigation#hasNext()</span></pre></td></tr> |
| <tr> <td class="numLine"> 81</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> |
| <tr> <td class="numLine"> 82</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> @Override</pre></td></tr> |
| <tr> <td class="numLine"> 83</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="keyword">public</span> <span class="keyword">boolean</span> hasNext() {</pre></td></tr> |
| <tr> <td class="numLineCover"> 84</td> <td class="nbHitsCovered"> 94</td> <td class="src"><pre class="src"> mTempSelectedItem = findNext(mNextSelectedItem);</pre></td></tr> |
| <tr> <td class="numLineCover"> 85</td> <td class="nbHitsCovered"><a title="Line 85: Conditional coverage 100% (2/2)."> 94</a></td> <td class="src"><pre class="src"> <a title="Line 85: Conditional coverage 100% (2/2)."> <span class="keyword">return</span> (mTempSelectedItem != <span class="keyword">null</span>);</a></pre></td></tr> |
| <tr> <td class="numLine"> 86</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> }</pre></td></tr> |
| <tr> <td class="numLine"> 87</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> </pre></td></tr> |
| <tr> <td class="numLine"> 88</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment">/**</span></pre></td></tr> |
| <tr> <td class="numLine"> 89</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment"> * Get next <code>TextSelection</code>.</span></pre></td></tr> |
| <tr> <td class="numLine"> 90</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment"> * </span></pre></td></tr> |
| <tr> <td class="numLine"> 91</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment"> * @see org.odftoolkit.simple.common.navigation.Navigation#nextSelection()</span></pre></td></tr> |
| <tr> <td class="numLine"> 92</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> |
| <tr> <td class="numLine"> 93</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> @Override</pre></td></tr> |
| <tr> <td class="numLine"> 94</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="keyword">public</span> Selection nextSelection() {</pre></td></tr> |
| <tr> <td class="numLineCover"> 95</td> <td class="nbHitsUncovered"><a title="Line 95: Conditional coverage 50% (1/2)."> 91</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 95: Conditional coverage 50% (1/2)."> <span class="keyword">if</span>(mTempSelectedItem !=<span class="keyword">null</span>){</a></span></pre></td></tr> |
| <tr> <td class="numLineCover"> 96</td> <td class="nbHitsCovered"> 91</td> <td class="src"><pre class="src"> mNextSelectedItem = mTempSelectedItem;</pre></td></tr> |
| <tr> <td class="numLineCover"> 97</td> <td class="nbHitsCovered"> 91</td> <td class="src"><pre class="src"> mTempSelectedItem = <span class="keyword">null</span>;</pre></td></tr> |
| <tr> <td class="numLine"> 98</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> }<span class="keyword">else</span>{</pre></td></tr> |
| <tr> <td class="numLineCover"> 99</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> mNextSelectedItem = findNext(mNextSelectedItem);</span></pre></td></tr> |
| <tr> <td class="numLine"> 100</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> }</pre></td></tr> |
| <tr> <td class="numLineCover"> 101</td> <td class="nbHitsUncovered"><a title="Line 101: Conditional coverage 50% (1/2)."> 91</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 101: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (mNextSelectedItem == <span class="keyword">null</span>) {</a></span></pre></td></tr> |
| <tr> <td class="numLineCover"> 102</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> <span class="keyword">return</span> <span class="keyword">null</span>;</span></pre></td></tr> |
| <tr> <td class="numLine"> 103</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> } <span class="keyword">else</span> {</pre></td></tr> |
| <tr> <td class="numLineCover"> 104</td> <td class="nbHitsCovered"> 91</td> <td class="src"><pre class="src"> Selection.SelectionManager.registerItem(mNextSelectedItem);</pre></td></tr> |
| <tr> <td class="numLineCover"> 105</td> <td class="nbHitsCovered"> 91</td> <td class="src"><pre class="src"> <span class="keyword">return</span> mNextSelectedItem;</pre></td></tr> |
| <tr> <td class="numLine"> 106</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> }</pre></td></tr> |
| <tr> <td class="numLine"> 107</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> }</pre></td></tr> |
| <tr> <td class="numLine"> 108</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> </pre></td></tr> |
| <tr> <td class="numLine"> 109</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment">/**</span></pre></td></tr> |
| <tr> <td class="numLine"> 110</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment"> * Check if the element has specified style properties, which are stated</span></pre></td></tr> |
| <tr> <td class="numLine"> 111</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment"> * when the <code>TextStyleNavigation</code> created.</span></pre></td></tr> |
| <tr> <td class="numLine"> 112</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment"> * </span></pre></td></tr> |
| <tr> <td class="numLine"> 113</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment"> * @param element</span></pre></td></tr> |
| <tr> <td class="numLine"> 114</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment"> * navigate this element</span></pre></td></tr> |
| <tr> <td class="numLine"> 115</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment"> * @return true if this element has the specified style properties false if</span></pre></td></tr> |
| <tr> <td class="numLine"> 116</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment"> * not match</span></pre></td></tr> |
| <tr> <td class="numLine"> 117</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> |
| <tr> <td class="numLine"> 118</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> @Override</pre></td></tr> |
| <tr> <td class="numLine"> 119</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="keyword">public</span> <span class="keyword">boolean</span> match(Node element) {</pre></td></tr> |
| <tr> <td class="numLineCover"> 120</td> <td class="nbHitsCovered"> 982</td> <td class="src"><pre class="src"> <span class="keyword">boolean</span> match = <span class="keyword">false</span>;</pre></td></tr> |
| <tr> <td class="numLineCover"> 121</td> <td class="nbHitsCovered"><a title="Line 121: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> 982</a></td> <td class="src"><pre class="src"> <a title="Line 121: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> <span class="keyword">if</span> (element.getNodeType() == Node.TEXT_NODE && !element.getNodeValue().trim().equals(<span class="string">""</span>)) {</a></pre></td></tr> |
| <tr> <td class="numLineCover"> 122</td> <td class="nbHitsUncovered"><a title="Line 122: Conditional coverage 50% (1/2)."> 340</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 122: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (element.getParentNode() <span class="keyword">instanceof</span> OdfStylableElement) {</a></span></pre></td></tr> |
| <tr> <td class="numLineCover"> 123</td> <td class="nbHitsCovered"> 340</td> <td class="src"><pre class="src"> OdfStylableElement parStyleElement = (OdfStylableElement) element.getParentNode();</pre></td></tr> |
| <tr> <td class="numLineCover"> 124</td> <td class="nbHitsCovered"> 340</td> <td class="src"><pre class="src"> String parStyleName = getStyleName(parStyleElement);</pre></td></tr> |
| <tr> <td class="numLineCover"> 125</td> <td class="nbHitsCovered"><a title="Line 125: Conditional coverage 100% (2/2)."> 340</a></td> <td class="src"><pre class="src"> <a title="Line 125: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (getMatchStyleNames().contains(parStyleName)) {</a></pre></td></tr> |
| <tr> <td class="numLineCover"> 126</td> <td class="nbHitsCovered"> 91</td> <td class="src"><pre class="src"> match = <span class="keyword">true</span>;</pre></td></tr> |
| <tr> <td class="numLineCover"> 127</td> <td class="nbHitsCovered"> 91</td> <td class="src"><pre class="src"> mText = element.getNodeValue();</pre></td></tr> |
| <tr> <td class="numLineCover"> 128</td> <td class="nbHitsCovered"> 91</td> <td class="src"><pre class="src"> NodeList nodes = getPHElement(element.getParentNode()).getChildNodes();</pre></td></tr> |
| <tr> <td class="numLineCover"> 129</td> <td class="nbHitsCovered"> 91</td> <td class="src"><pre class="src"> mIndex = 0;</pre></td></tr> |
| <tr> <td class="numLineCover"> 130</td> <td class="nbHitsCovered"> 91</td> <td class="src"><pre class="src"> getIndex(nodes, element);</pre></td></tr> |
| <tr> <td class="numLine"> 131</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> }</pre></td></tr> |
| <tr> <td class="numLine"> 132</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> }</pre></td></tr> |
| <tr> <td class="numLine"> 133</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> }</pre></td></tr> |
| <tr> <td class="numLineCover"> 134</td> <td class="nbHitsCovered"> 982</td> <td class="src"><pre class="src"> <span class="keyword">return</span> match;</pre></td></tr> |
| <tr> <td class="numLine"> 135</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> }</pre></td></tr> |
| <tr> <td class="numLine"> 136</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> </pre></td></tr> |
| <tr> <td class="numLine"> 137</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment">/*</span></pre></td></tr> |
| <tr> <td class="numLine"> 138</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment"> * Find next <code>TextSelection</code> which match specified style.</span></pre></td></tr> |
| <tr> <td class="numLine"> 139</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr> |
| <tr> <td class="numLine"> 140</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="keyword">private</span> TextSelection findNext(TextSelection selected) {</pre></td></tr> |
| <tr> <td class="numLineCover"> 141</td> <td class="nbHitsCovered"> 94</td> <td class="src"><pre class="src"> OdfElement element = <span class="keyword">null</span>;</pre></td></tr> |
| <tr> <td class="numLine"> 142</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="keyword">try</span> {</pre></td></tr> |
| <tr> <td class="numLineCover"> 143</td> <td class="nbHitsCovered"> 94</td> <td class="src"><pre class="src"> Node rootNode = mTextDocument.getContentRoot();</pre></td></tr> |
| <tr> <td class="numLineCover"> 144</td> <td class="nbHitsCovered"><a title="Line 144: Conditional coverage 100% (2/2)."> 94</a></td> <td class="src"><pre class="src"> <a title="Line 144: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (selected == <span class="keyword">null</span>) {</a></pre></td></tr> |
| <tr> <td class="numLineCover"> 145</td> <td class="nbHitsCovered"> 5</td> <td class="src"><pre class="src"> mNode = getNextMatchElementInTree(rootNode, rootNode);</pre></td></tr> |
| <tr> <td class="numLine"> 146</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> } <span class="keyword">else</span> {</pre></td></tr> |
| <tr> <td class="numLineCover"> 147</td> <td class="nbHitsCovered"> 89</td> <td class="src"><pre class="src"> mNode = getNextMatchElementInTree(mNode, rootNode);</pre></td></tr> |
| <tr> <td class="numLine"> 148</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> }</pre></td></tr> |
| <tr> <td class="numLineCover"> 149</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> } <span class="keyword">catch</span> (Exception ex) {</span></pre></td></tr> |
| <tr> <td class="numLineCover"> 150</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> Logger.getLogger(TextStyleNavigation.<span class="keyword">class</span>.getName()).log(Level.SEVERE, ex.getMessage(), ex);</span></pre></td></tr> |
| <tr> <td class="numLineCover"> 151</td> <td class="nbHitsCovered"> 94</td> <td class="src"><pre class="src"> }</pre></td></tr> |
| <tr> <td class="numLineCover"> 152</td> <td class="nbHitsCovered"><a title="Line 152: Conditional coverage 100% (2/2)."> 94</a></td> <td class="src"><pre class="src"> <a title="Line 152: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (mNode != <span class="keyword">null</span>) {</a></pre></td></tr> |
| <tr> <td class="numLineCover"> 153</td> <td class="nbHitsCovered"> 91</td> <td class="src"><pre class="src"> element = (OdfElement) getPHElement(mNode);</pre></td></tr> |
| <tr> <td class="numLineCover"> 154</td> <td class="nbHitsCovered"> 91</td> <td class="src"><pre class="src"> TextSelection item = <span class="keyword">new</span> TextSelection(<span class="keyword">this</span>, mText, element,</pre></td></tr> |
| <tr> <td class="numLine"> 155</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> mCurrentIndex);</pre></td></tr> |
| <tr> <td class="numLineCover"> 156</td> <td class="nbHitsCovered"> 91</td> <td class="src"><pre class="src"> <span class="keyword">return</span> item;</pre></td></tr> |
| <tr> <td class="numLine"> 157</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> }</pre></td></tr> |
| <tr> <td class="numLineCover"> 158</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src"> <span class="keyword">return</span> <span class="keyword">null</span>;</pre></td></tr> |
| <tr> <td class="numLine"> 159</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> }</pre></td></tr> |
| <tr> <td class="numLine"> 160</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> </pre></td></tr> |
| <tr> <td class="numLine"> 161</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="keyword">private</span> Node getPHElement(Node node) {</pre></td></tr> |
| <tr> <td class="numLine"> 162</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment">// get paragraph or heading element</span></pre></td></tr> |
| <tr> <td class="numLineCover"> 163</td> <td class="nbHitsCovered"><a title="Line 163: Conditional coverage 100% (2/2)."> 449</a></td> <td class="src"><pre class="src"> <a title="Line 163: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (node <span class="keyword">instanceof</span> OdfTextParagraph) {</a></pre></td></tr> |
| <tr> <td class="numLineCover"> 164</td> <td class="nbHitsCovered"> 182</td> <td class="src"><pre class="src"> mPhNode = node;</pre></td></tr> |
| <tr> <td class="numLineCover"> 165</td> <td class="nbHitsUncovered"><a title="Line 165: Conditional coverage 50% (1/2)."> 267</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 165: Conditional coverage 50% (1/2)."> } <span class="keyword">else</span> <span class="keyword">if</span> (node <span class="keyword">instanceof</span> OdfTextHeading) {</a></span></pre></td></tr> |
| <tr> <td class="numLineCover"> 166</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> mPhNode = node;</span></pre></td></tr> |
| <tr> <td class="numLine"> 167</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> } <span class="keyword">else</span> {</pre></td></tr> |
| <tr> <td class="numLineCover"> 168</td> <td class="nbHitsCovered"> 267</td> <td class="src"><pre class="src"> getPHElement(node.getParentNode());</pre></td></tr> |
| <tr> <td class="numLine"> 169</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> }</pre></td></tr> |
| <tr> <td class="numLineCover"> 170</td> <td class="nbHitsCovered"> 449</td> <td class="src"><pre class="src"> <span class="keyword">return</span> mPhNode;</pre></td></tr> |
| <tr> <td class="numLine"> 171</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> }</pre></td></tr> |
| <tr> <td class="numLine"> 172</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> </pre></td></tr> |
| <tr> <td class="numLine"> 173</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="keyword">private</span> <span class="keyword">void</span> getIndex(NodeList nodes, Node element) {</pre></td></tr> |
| <tr> <td class="numLineCover"> 174</td> <td class="nbHitsCovered"><a title="Line 174: Conditional coverage 100% (2/2)."> 2538</a></td> <td class="src"><pre class="src"> <a title="Line 174: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (<span class="keyword">int</span> i = 0; i < nodes.getLength(); i++) {</a></pre></td></tr> |
| <tr> <td class="numLineCover"> 175</td> <td class="nbHitsCovered"> 1881</td> <td class="src"><pre class="src"> Node node = nodes.item(i);</pre></td></tr> |
| <tr> <td class="numLineCover"> 176</td> <td class="nbHitsCovered"><a title="Line 176: Conditional coverage 100% (2/2)."> 1881</a></td> <td class="src"><pre class="src"> <a title="Line 176: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (node == element) {</a></pre></td></tr> |
| <tr> <td class="numLineCover"> 177</td> <td class="nbHitsCovered"> 91</td> <td class="src"><pre class="src"> mCurrentIndex = mIndex;</pre></td></tr> |
| <tr> <td class="numLineCover"> 178</td> <td class="nbHitsCovered"> 91</td> <td class="src"><pre class="src"> <span class="keyword">break</span>;</pre></td></tr> |
| <tr> <td class="numLine"> 179</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> } <span class="keyword">else</span> {</pre></td></tr> |
| <tr> <td class="numLineCover"> 180</td> <td class="nbHitsCovered"><a title="Line 180: Conditional coverage 100% (2/2)."> 1790</a></td> <td class="src"><pre class="src"> <a title="Line 180: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (node.getNodeType() == Node.TEXT_NODE) {</a></pre></td></tr> |
| <tr> <td class="numLineCover"> 181</td> <td class="nbHitsCovered"> 1099</td> <td class="src"><pre class="src"> mIndex = mIndex + node.getNodeValue().length();</pre></td></tr> |
| <tr> <td class="numLineCover"> 182</td> <td class="nbHitsUncovered"><a title="Line 182: Conditional coverage 50% (1/2)."> 691</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 182: Conditional coverage 50% (1/2)."> } <span class="keyword">else</span> <span class="keyword">if</span> (node.getNodeType() == Node.ELEMENT_NODE) {</a></span></pre></td></tr> |
| <tr> <td class="numLine"> 183</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment">// mText:s</span></pre></td></tr> |
| <tr> <td class="numLineCover"> 184</td> <td class="nbHitsCovered"><a title="Line 184: Conditional coverage 100% (2/2)."> 691</a></td> <td class="src"><pre class="src"> <a title="Line 184: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (node.getLocalName().equals(<span class="string">"s"</span>)) {</a></pre></td></tr> |
| <tr> <td class="numLine"> 185</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="keyword">try</span> {</pre></td></tr> |
| <tr> <td class="numLineCover"> 186</td> <td class="nbHitsCovered"> 34</td> <td class="src"><pre class="src"> mIndex = mIndex</pre></td></tr> |
| <tr> <td class="numLine"> 187</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> + Integer.parseInt(((Element) node).getAttributeNS(OdfDocumentNamespace.TEXT</pre></td></tr> |
| <tr> <td class="numLine"> 188</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> .getUri(), <span class="string">"c"</span>));</pre></td></tr> |
| <tr> <td class="numLineCover"> 189</td> <td class="nbHitsCovered"> 34</td> <td class="src"><pre class="src"> } <span class="keyword">catch</span> (Exception e) {</pre></td></tr> |
| <tr> <td class="numLineCover"> 190</td> <td class="nbHitsCovered"> 34</td> <td class="src"><pre class="src"> mIndex++;</pre></td></tr> |
| <tr> <td class="numLineCover"> 191</td> <td class="nbHitsCovered"> 34</td> <td class="src"><pre class="src"> }</pre></td></tr> |
| <tr> <td class="numLineCover"> 192</td> <td class="nbHitsUncovered"><a title="Line 192: Conditional coverage 50% (1/2)."> 657</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 192: Conditional coverage 50% (1/2)."> } <span class="keyword">else</span> <span class="keyword">if</span> (node.getLocalName().equals(<span class="string">"line-break"</span>)) {</a></span></pre></td></tr> |
| <tr> <td class="numLineCover"> 193</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> mIndex++;</span></pre></td></tr> |
| <tr> <td class="numLineCover"> 194</td> <td class="nbHitsUncovered"><a title="Line 194: Conditional coverage 50% (1/2)."> 657</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 194: Conditional coverage 50% (1/2)."> } <span class="keyword">else</span> <span class="keyword">if</span> (node.getLocalName().equals(<span class="string">"tab"</span>)) {</a></span></pre></td></tr> |
| <tr> <td class="numLineCover"> 195</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> mIndex++;</span></pre></td></tr> |
| <tr> <td class="numLine"> 196</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> } <span class="keyword">else</span> {</pre></td></tr> |
| <tr> <td class="numLineCover"> 197</td> <td class="nbHitsCovered"> 657</td> <td class="src"><pre class="src"> getIndex(node.getChildNodes(), element);</pre></td></tr> |
| <tr> <td class="numLine"> 198</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> }</pre></td></tr> |
| <tr> <td class="numLine"> 199</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> }</pre></td></tr> |
| <tr> <td class="numLine"> 200</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> }</pre></td></tr> |
| <tr> <td class="numLine"> 201</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> }</pre></td></tr> |
| <tr> <td class="numLineCover"> 202</td> <td class="nbHitsCovered"> 748</td> <td class="src"><pre class="src"> }</pre></td></tr> |
| <tr> <td class="numLine"> 203</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> </pre></td></tr> |
| <tr> <td class="numLine"> 204</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="keyword">private</span> String getStyleName(OdfStylableElement element) {</pre></td></tr> |
| <tr> <td class="numLineCover"> 205</td> <td class="nbHitsCovered"> 340</td> <td class="src"><pre class="src"> String stylename = element.getStyleName();</pre></td></tr> |
| <tr> <td class="numLineCover"> 206</td> <td class="nbHitsUncovered"><a title="Line 206: Conditional coverage 50% (1/2)."> 340</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 206: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (stylename == <span class="keyword">null</span>) {</a></span></pre></td></tr> |
| <tr> <td class="numLineCover"> 207</td> <td class="nbHitsUncovered"><a title="Line 207: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 207: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (element.getParentNode() <span class="keyword">instanceof</span> OdfStylableElement) {</a></span></pre></td></tr> |
| <tr> <td class="numLineCover"> 208</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> getStyleName((OdfStylableElement) element.getParentNode());</span></pre></td></tr> |
| <tr> <td class="numLine"> 209</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> } <span class="keyword">else</span> {</pre></td></tr> |
| <tr> <td class="numLineCover"> 210</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> stylename = <span class="string">"defaultstyle"</span>;</span></pre></td></tr> |
| <tr> <td class="numLine"> 211</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> }</pre></td></tr> |
| <tr> <td class="numLine"> 212</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> }</pre></td></tr> |
| <tr> <td class="numLineCover"> 213</td> <td class="nbHitsCovered"> 340</td> <td class="src"><pre class="src"> <span class="keyword">return</span> stylename;</pre></td></tr> |
| <tr> <td class="numLine"> 214</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> }</pre></td></tr> |
| <tr> <td class="numLine"> 215</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> </pre></td></tr> |
| <tr> <td class="numLine"> 216</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="keyword">private</span> Set<String> getMatchStyleNames() {</pre></td></tr> |
| <tr> <td class="numLineCover"> 217</td> <td class="nbHitsCovered"> 340</td> <td class="src"><pre class="src"> Set<String> styleNames = <span class="keyword">new</span> HashSet<String>();</pre></td></tr> |
| <tr> <td class="numLine"> 218</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> String sname;</pre></td></tr> |
| <tr> <td class="numLineCover"> 219</td> <td class="nbHitsCovered"> 340</td> <td class="src"><pre class="src"> HashMap<String, OdfDefaultStyle> defaultStyles = <span class="keyword">new</span> HashMap<String, OdfDefaultStyle>();</pre></td></tr> |
| <tr> <td class="numLine"> 220</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="keyword">try</span> {</pre></td></tr> |
| <tr> <td class="numLineCover"> 221</td> <td class="nbHitsCovered"> 340</td> <td class="src"><pre class="src"> NodeList defStyleList = mTextDocument.getDocumentStyles().getElementsByTagName(<span class="string">"style:default-style"</span>);</pre></td></tr> |
| <tr> <td class="numLineCover"> 222</td> <td class="nbHitsCovered"><a title="Line 222: Conditional coverage 100% (2/2)."> 1020</a></td> <td class="src"><pre class="src"> <a title="Line 222: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (<span class="keyword">int</span> i = 0; i < defStyleList.getLength(); i++) {</a></pre></td></tr> |
| <tr> <td class="numLineCover"> 223</td> <td class="nbHitsCovered"> 680</td> <td class="src"><pre class="src"> OdfDefaultStyle defStyle = (OdfDefaultStyle) defStyleList.item(i);</pre></td></tr> |
| <tr> <td class="numLineCover"> 224</td> <td class="nbHitsCovered"> 680</td> <td class="src"><pre class="src"> defaultStyles.put(defStyle.getFamilyName(), defStyle);</pre></td></tr> |
| <tr> <td class="numLine"> 225</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> }</pre></td></tr> |
| <tr> <td class="numLineCover"> 226</td> <td class="nbHitsCovered"> 340</td> <td class="src"><pre class="src"> NodeList styleList = mTextDocument.getDocumentStyles().getElementsByTagName(<span class="string">"style:style"</span>);</pre></td></tr> |
| <tr> <td class="numLineCover"> 227</td> <td class="nbHitsCovered"><a title="Line 227: Conditional coverage 100% (2/2)."> 3740</a></td> <td class="src"><pre class="src"> <a title="Line 227: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (<span class="keyword">int</span> i = 0; i < styleList.getLength(); i++) {</a></pre></td></tr> |
| <tr> <td class="numLineCover"> 228</td> <td class="nbHitsCovered"> 3400</td> <td class="src"><pre class="src"> OdfStyle sStyle = (OdfStyle) styleList.item(i);</pre></td></tr> |
| <tr> <td class="numLine"> 229</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment">// get default properties and style properties</span></pre></td></tr> |
| <tr> <td class="numLineCover"> 230</td> <td class="nbHitsCovered"> 3400</td> <td class="src"><pre class="src"> Map<OdfStyleProperty, String> map = sStyle.getStylePropertiesDeep();</pre></td></tr> |
| <tr> <td class="numLine"> 231</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment">// check if properties include all search properties and value</span></pre></td></tr> |
| <tr> <td class="numLine"> 232</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment">// equal</span></pre></td></tr> |
| <tr> <td class="numLineCover"> 233</td> <td class="nbHitsCovered"> 3400</td> <td class="src"><pre class="src"> Iterator<OdfStyleProperty> pIter = mProps.keySet().iterator();</pre></td></tr> |
| <tr> <td class="numLineCover"> 234</td> <td class="nbHitsCovered"> 3400</td> <td class="src"><pre class="src"> <span class="keyword">boolean</span> isStyle = <span class="keyword">false</span>;</pre></td></tr> |
| <tr> <td class="numLineCover"> 235</td> <td class="nbHitsCovered"><a title="Line 235: Conditional coverage 100% (2/2)."> 5202</a></td> <td class="src"><pre class="src"> <a title="Line 235: Conditional coverage 100% (2/2)."> <span class="keyword">while</span> (pIter.hasNext()) {</a></pre></td></tr> |
| <tr> <td class="numLineCover"> 236</td> <td class="nbHitsCovered"> 4354</td> <td class="src"><pre class="src"> isStyle = <span class="keyword">false</span>;</pre></td></tr> |
| <tr> <td class="numLineCover"> 237</td> <td class="nbHitsCovered"> 4354</td> <td class="src"><pre class="src"> OdfStyleProperty p = pIter.next();</pre></td></tr> |
| <tr> <td class="numLineCover"> 238</td> <td class="nbHitsCovered"><a title="Line 238: Conditional coverage 100% (2/2)."> 4354</a></td> <td class="src"><pre class="src"> <a title="Line 238: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (map.containsKey(p)) {</a></pre></td></tr> |
| <tr> <td class="numLineCover"> 239</td> <td class="nbHitsCovered"><a title="Line 239: Conditional coverage 100% (2/2)."> 4014</a></td> <td class="src"><pre class="src"> <a title="Line 239: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (map.get(p).equals(mProps.get(p))) {</a></pre></td></tr> |
| <tr> <td class="numLineCover"> 240</td> <td class="nbHitsCovered"> 1802</td> <td class="src"><pre class="src"> isStyle = <span class="keyword">true</span>;</pre></td></tr> |
| <tr> <td class="numLine"> 241</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> } <span class="keyword">else</span> {</pre></td></tr> |
| <tr> <td class="numLine"> 242</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="keyword">break</span>;</pre></td></tr> |
| <tr> <td class="numLine"> 243</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> }</pre></td></tr> |
| <tr> <td class="numLine"> 244</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> } <span class="keyword">else</span> {</pre></td></tr> |
| <tr> <td class="numLine"> 245</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="keyword">break</span>;</pre></td></tr> |
| <tr> <td class="numLine"> 246</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> }</pre></td></tr> |
| <tr> <td class="numLineCover"> 247</td> <td class="nbHitsCovered"> 1802</td> <td class="src"><pre class="src"> }</pre></td></tr> |
| <tr> <td class="numLine"> 248</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment">// put all match style names</span></pre></td></tr> |
| <tr> <td class="numLineCover"> 249</td> <td class="nbHitsCovered"><a title="Line 249: Conditional coverage 100% (2/2)."> 3400</a></td> <td class="src"><pre class="src"> <a title="Line 249: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (isStyle) {</a></pre></td></tr> |
| <tr> <td class="numLineCover"> 250</td> <td class="nbHitsCovered"> 848</td> <td class="src"><pre class="src"> sname = sStyle.getStyleNameAttribute();</pre></td></tr> |
| <tr> <td class="numLine"> 251</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment">// if(sname.contains("default"))sname="defaultstyle";</span></pre></td></tr> |
| <tr> <td class="numLineCover"> 252</td> <td class="nbHitsCovered"> 848</td> <td class="src"><pre class="src"> styleNames.add(sname);</pre></td></tr> |
| <tr> <td class="numLine"> 253</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> }</pre></td></tr> |
| <tr> <td class="numLine"> 254</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> }</pre></td></tr> |
| <tr> <td class="numLine"> 255</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment">// get all automatic styles</span></pre></td></tr> |
| <tr> <td class="numLineCover"> 256</td> <td class="nbHitsCovered"> 340</td> <td class="src"><pre class="src"> Iterator<OdfStyle> cStyles = mTextDocument.getContentDom().getAutomaticStyles().getAllStyles().iterator();</pre></td></tr> |
| <tr> <td class="numLineCover"> 257</td> <td class="nbHitsCovered"><a title="Line 257: Conditional coverage 100% (2/2)."> 15236</a></td> <td class="src"><pre class="src"> <a title="Line 257: Conditional coverage 100% (2/2)."> <span class="keyword">while</span> (cStyles.hasNext()) {</a></pre></td></tr> |
| <tr> <td class="numLineCover"> 258</td> <td class="nbHitsCovered"> 14896</td> <td class="src"><pre class="src"> OdfStyle cStyle = cStyles.next();</pre></td></tr> |
| <tr> <td class="numLine"> 259</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment">// get default properties and style properties</span></pre></td></tr> |
| <tr> <td class="numLineCover"> 260</td> <td class="nbHitsCovered"> 14896</td> <td class="src"><pre class="src"> Map<OdfStyleProperty, String> map = cStyle.getStylePropertiesDeep();</pre></td></tr> |
| <tr> <td class="numLine"> 261</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> </pre></td></tr> |
| <tr> <td class="numLineCover"> 262</td> <td class="nbHitsCovered"><a title="Line 262: Conditional coverage 100% (2/2)."> 14896</a></td> <td class="src"><pre class="src"> <a title="Line 262: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (cStyle.getParentStyle() == <span class="keyword">null</span>) {</a></pre></td></tr> |
| <tr> <td class="numLineCover"> 263</td> <td class="nbHitsCovered"><a title="Line 263: Conditional coverage 100% (2/2)."> 12176</a></td> <td class="src"><pre class="src"> <a title="Line 263: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (cStyle.getFamilyName().equals(<span class="string">"text"</span>)) {</a></pre></td></tr> |
| <tr> <td class="numLineCover"> 264</td> <td class="nbHitsUncovered"><a title="Line 264: Conditional coverage 50% (1/2)."> 11836</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 264: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (defaultStyles.containsKey(<span class="string">"text"</span>)) {</a></span></pre></td></tr> |
| <tr> <td class="numLineCover"> 265</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> getTextDefaultProperties(<span class="string">"text"</span>, defaultStyles, map);</span></pre></td></tr> |
| <tr> <td class="numLine"> 266</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> } <span class="keyword">else</span> {</pre></td></tr> |
| <tr> <td class="numLineCover"> 267</td> <td class="nbHitsCovered"> 11836</td> <td class="src"><pre class="src"> getTextDefaultProperties(<span class="string">"paragraph"</span>, defaultStyles, map);</pre></td></tr> |
| <tr> <td class="numLine"> 268</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> }</pre></td></tr> |
| <tr> <td class="numLine"> 269</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> }</pre></td></tr> |
| <tr> <td class="numLine"> 270</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> }</pre></td></tr> |
| <tr> <td class="numLine"> 271</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment">// check if the search properties is in properties</span></pre></td></tr> |
| <tr> <td class="numLineCover"> 272</td> <td class="nbHitsCovered"> 14896</td> <td class="src"><pre class="src"> Iterator<OdfStyleProperty> pIter = mProps.keySet().iterator();</pre></td></tr> |
| <tr> <td class="numLineCover"> 273</td> <td class="nbHitsCovered"> 14896</td> <td class="src"><pre class="src"> <span class="keyword">boolean</span> isStyle = <span class="keyword">false</span>;</pre></td></tr> |
| <tr> <td class="numLineCover"> 274</td> <td class="nbHitsCovered"><a title="Line 274: Conditional coverage 100% (2/2)."> 25768</a></td> <td class="src"><pre class="src"> <a title="Line 274: Conditional coverage 100% (2/2)."> <span class="keyword">while</span> (pIter.hasNext()) {</a></pre></td></tr> |
| <tr> <td class="numLineCover"> 275</td> <td class="nbHitsCovered"> 21914</td> <td class="src"><pre class="src"> isStyle = <span class="keyword">false</span>;</pre></td></tr> |
| <tr> <td class="numLineCover"> 276</td> <td class="nbHitsCovered"> 21914</td> <td class="src"><pre class="src"> OdfStyleProperty p = pIter.next();</pre></td></tr> |
| <tr> <td class="numLineCover"> 277</td> <td class="nbHitsCovered"><a title="Line 277: Conditional coverage 100% (2/2)."> 21914</a></td> <td class="src"><pre class="src"> <a title="Line 277: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (map.containsKey(p)) {</a></pre></td></tr> |
| <tr> <td class="numLineCover"> 278</td> <td class="nbHitsCovered"><a title="Line 278: Conditional coverage 100% (2/2)."> 21574</a></td> <td class="src"><pre class="src"> <a title="Line 278: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (map.get(p).equals(mProps.get(p))) {</a></pre></td></tr> |
| <tr> <td class="numLineCover"> 279</td> <td class="nbHitsCovered"> 10872</td> <td class="src"><pre class="src"> isStyle = <span class="keyword">true</span>;</pre></td></tr> |
| <tr> <td class="numLine"> 280</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> } <span class="keyword">else</span> {</pre></td></tr> |
| <tr> <td class="numLine"> 281</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="keyword">break</span>;</pre></td></tr> |
| <tr> <td class="numLine"> 282</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> }</pre></td></tr> |
| <tr> <td class="numLine"> 283</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> } <span class="keyword">else</span> {</pre></td></tr> |
| <tr> <td class="numLine"> 284</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="keyword">break</span>;</pre></td></tr> |
| <tr> <td class="numLine"> 285</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> }</pre></td></tr> |
| <tr> <td class="numLineCover"> 286</td> <td class="nbHitsCovered"> 10872</td> <td class="src"><pre class="src"> }</pre></td></tr> |
| <tr> <td class="numLine"> 287</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="comment">// put all match style names</span></pre></td></tr> |
| <tr> <td class="numLineCover"> 288</td> <td class="nbHitsCovered"><a title="Line 288: Conditional coverage 100% (2/2)."> 14896</a></td> <td class="src"><pre class="src"> <a title="Line 288: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (isStyle) {</a></pre></td></tr> |
| <tr> <td class="numLineCover"> 289</td> <td class="nbHitsCovered"> 3854</td> <td class="src"><pre class="src"> styleNames.add(cStyle.getStyleNameAttribute());</pre></td></tr> |
| <tr> <td class="numLine"> 290</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> }</pre></td></tr> |
| <tr> <td class="numLineCover"> 291</td> <td class="nbHitsCovered"> 14896</td> <td class="src"><pre class="src"> }</pre></td></tr> |
| <tr> <td class="numLineCover"> 292</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> } <span class="keyword">catch</span> (Exception e1) {</span></pre></td></tr> |
| <tr> <td class="numLineCover"> 293</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> Logger.getLogger(TextStyleNavigation.<span class="keyword">class</span>.getName()).log(Level.SEVERE, e1.getMessage(), e1);</span></pre></td></tr> |
| <tr> <td class="numLineCover"> 294</td> <td class="nbHitsCovered"> 340</td> <td class="src"><pre class="src"> }</pre></td></tr> |
| <tr> <td class="numLineCover"> 295</td> <td class="nbHitsCovered"> 340</td> <td class="src"><pre class="src"> <span class="keyword">return</span> styleNames;</pre></td></tr> |
| <tr> <td class="numLine"> 296</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> }</pre></td></tr> |
| <tr> <td class="numLine"> 297</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> </pre></td></tr> |
| <tr> <td class="numLine"> 298</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> <span class="keyword">private</span> <span class="keyword">void</span> getTextDefaultProperties(String familyName, HashMap<String, OdfDefaultStyle> defaultStyles,</pre></td></tr> |
| <tr> <td class="numLine"> 299</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> Map<OdfStyleProperty, String> map) {</pre></td></tr> |
| <tr> <td class="numLineCover"> 300</td> <td class="nbHitsCovered"> 11836</td> <td class="src"><pre class="src"> OdfDefaultStyle defStyle = defaultStyles.get(familyName);</pre></td></tr> |
| <tr> <td class="numLineCover"> 301</td> <td class="nbHitsUncovered"><a title="Line 301: Conditional coverage 50% (1/2)."> 11836</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 301: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (defStyle != <span class="keyword">null</span>) {</a></span></pre></td></tr> |
| <tr> <td class="numLineCover"> 302</td> <td class="nbHitsCovered"> 11836</td> <td class="src"><pre class="src"> OdfStyleFamily family = defStyle.getFamily();</pre></td></tr> |
| <tr> <td class="numLineCover"> 303</td> <td class="nbHitsUncovered"><a title="Line 303: Conditional coverage 50% (1/2)."> 11836</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 303: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (family != <span class="keyword">null</span>) {</a></span></pre></td></tr> |
| <tr> <td class="numLineCover"> 304</td> <td class="nbHitsCovered"><a title="Line 304: Conditional coverage 100% (2/2)."> 11836</a></td> <td class="src"><pre class="src"> <a title="Line 304: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (OdfStyleProperty property : family.getProperties()) {</a></pre></td></tr> |
| <tr> <td class="numLineCover"> 305</td> <td class="nbHitsCovered"><a title="Line 305: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> 6770192</a></td> <td class="src"><pre class="src"> <a title="Line 305: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> <span class="keyword">if</span> (!map.containsKey(property) && defStyle.hasProperty(property)) {</a></pre></td></tr> |
| <tr> <td class="numLineCover"> 306</td> <td class="nbHitsCovered"> 244476</td> <td class="src"><pre class="src"> map.put(property, defStyle.getProperty(property));</pre></td></tr> |
| <tr> <td class="numLine"> 307</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> }</pre></td></tr> |
| <tr> <td class="numLineCover"> 308</td> <td class="nbHitsCovered"> 6770192</td> <td class="src"><pre class="src"> }</pre></td></tr> |
| <tr> <td class="numLine"> 309</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> }</pre></td></tr> |
| <tr> <td class="numLine"> 310</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> }</pre></td></tr> |
| <tr> <td class="numLineCover"> 311</td> <td class="nbHitsCovered"> 11836</td> <td class="src"><pre class="src"> }</pre></td></tr> |
| <tr> <td class="numLine"> 312</td> <td class="nbHits"> </td> |
| <td class="src"><pre class="src"> }</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:35.</div> |
| </body> |
| </html> |