Merge branch 'master' of http://git.roojs.com/roojs1
[roojs1] / docs / src / Roo_htmleditor_FilterEmpty.js.html
1 <html><head><title>Roo/htmleditor/FilterEmpty.js</title><link rel="stylesheet" type="text/css" href="../../css/highlight-js.css"/></head><body class="highlightpage"><code class="jsdoc-pretty"><span class="jsdoc-comment">/**
2  * @class Roo.htmleditor.FilterEmpty
3  * filter empty elements
4  * @constructor
5  * Run a new Empty Filter
6  * @param {Object} config Configuration options
7  */
8
9 </span><span class="jsdoc-var">Roo.htmleditor.FilterEmpty </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">cfg</span><span class="jsdoc-syntax">)
10 {
11     </span><span class="jsdoc-comment">// no need to apply config.
12     </span><span class="jsdoc-var">this.walk</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">cfg.node</span><span class="jsdoc-syntax">);
13 }
14
15 </span><span class="jsdoc-var">Roo.extend</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.htmleditor.FilterEmpty</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">Roo.htmleditor.FilterBlack</span><span class="jsdoc-syntax">,
16 {
17
18     </span><span class="jsdoc-var">tag </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
19
20
21     </span><span class="jsdoc-var">replaceTag </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">node</span><span class="jsdoc-syntax">)
22     {
23         </span><span class="jsdoc-comment">// start from leaf node
24         </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">node.hasChildNodes</span><span class="jsdoc-syntax">()) {
25             </span><span class="jsdoc-var">this.walk</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">node</span><span class="jsdoc-syntax">);
26         }
27
28         </span><span class="jsdoc-comment">// only filter empty leaf element with certain tags
29         </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(
30             [</span><span class="jsdoc-string">'B'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-string">'I'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-string">'U'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-string">'S'</span><span class="jsdoc-syntax">]</span><span class="jsdoc-var">.indexOf</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">node.tagName</span><span class="jsdoc-syntax">) &lt; 0
31             ||
32             </span><span class="jsdoc-var">node.attributes </span><span class="jsdoc-syntax">&amp;&amp; </span><span class="jsdoc-var">node.attributes.length </span><span class="jsdoc-syntax">&gt; 0
33             ||
34             </span><span class="jsdoc-var">node.hasChildNodes</span><span class="jsdoc-syntax">()
35         ) {
36             </span><span class="jsdoc-keyword">return false</span><span class="jsdoc-syntax">; </span><span class="jsdoc-comment">// don't walk
37         </span><span class="jsdoc-syntax">}
38
39         </span><span class="jsdoc-var">Roo.htmleditor.FilterBlack.prototype.replaceTag.call</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">node</span><span class="jsdoc-syntax">);
40         </span><span class="jsdoc-keyword">return false</span><span class="jsdoc-syntax">; </span><span class="jsdoc-comment">// don't walk
41
42     </span><span class="jsdoc-syntax">}
43
44 });</span></code></body></html>