editor skin에 xquared 추가
git-svn-id: http://xe-core.googlecode.com/svn/sandbox@3039 201d5d3c-b55e-5fd7-737f-ddc643e51545
14
modules/editor/skins/xquared/LICENSE
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
Xquared is copyrighted free software by Alan Kang <jania902@gmail.com>.
|
||||
You can redistribute and/or modify it under the terms of the LGPL.
|
||||
(http://www.gnu.org/licenses/lgpl.html)
|
||||
|
||||
Following is a list of dependencies:
|
||||
* prototype javascript framework
|
||||
* Homepage: http://prototypejs.org
|
||||
* License: http://dev.rubyonrails.org/browser/spinoffs/prototype/trunk/LICENSE?format=raw
|
||||
* jsspec
|
||||
* Homepage: http://jania.pe.kr/aw/moin.cgi/JSSpec
|
||||
* License: http://www.gnu.org/licenses/lgpl.html
|
||||
* yui-compressor
|
||||
* Homepage: http://developer.yahoo.com/yui/compressor/
|
||||
* License: http://developer.yahoo.com/yui/license.html
|
||||
9
modules/editor/skins/xquared/README
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
Xquared is a Javascript based, XHTML complaint, easily extensible
|
||||
editor module aim to support major modern web browsers.
|
||||
|
||||
This software is licensed under the terms you may find in the file
|
||||
named "LICENSE" in this directory.
|
||||
|
||||
For more information, see http://labs.openmaru.com/projects/xquared/
|
||||
|
||||
Thanks for using Xquared.
|
||||
18
modules/editor/skins/xquared/css/default.css
Normal file
|
|
@ -0,0 +1,18 @@
|
|||
@charset "utf-8";
|
||||
|
||||
.xeEditor .fileAttach { position:relative; top:20px; padding:0 1em .5em 1em;}
|
||||
.xeEditor .fileAttach .preview { padding:5px; width:110px; height:110px; border:1px solid #e1e1dd; background:#fbfbfb; float:left; margin-right:.5em;}
|
||||
.xeEditor .fileAttach .preview img { width:110px; height:110px; float:left; display:block;}
|
||||
.xeEditor .fileAttach .fileListArea { float:left; width:50%; margin-right:.7em; padding-bottom:.5em; margin-bottom:1em}
|
||||
.xeEditor .fileAttach .fileListArea .fileList { overflow:auto; width:100%; height:auto; border:1px solid; border-color:#a6a6a6 #d8d8d8 #d8d8d8 #a6a6a6; margin-bottom:.3em; font-size:11px;}
|
||||
.xeEditor .fileAttach .fileListArea .fileList option { line-height:100%; padding-left:.5em;}
|
||||
.xeEditor .fileAttach .fileListArea span.file_attach_info { color:#3f4040; font-size:11px; text-align:left;}
|
||||
.xeEditor .fileAttach .fileListArea span.file_attach_info strong { color:#ff6600; font-size:11px; font-weight:bold; }
|
||||
.xeEditor .fileAttach .fileUploadControl { margin-bottom:5px; }
|
||||
|
||||
.xeEditor .fileAttach .fileUploadControl .uploaderButton { display:block; cursor:pointer; background:url(../images/buttonTypeBCenter.gif) repeat-x left center; line-height:100%; overflow:visible; color:#3f4040; margin:0 1px; font-size:.9em; white-space:nowrap;}
|
||||
.xeEditor .fileAttach .fileUploadControl .uploaderButton:hover { text-decoration:none;}
|
||||
.xeEditor .fileAttach .fileUploadControl .uploaderButton img { vertical-align:middle;}
|
||||
.xeEditor .fileAttach .fileUploadControl .uploaderButton .leftCap { width:2px; height:21px; background:url(../images/buttonTypeBLeft.gif) no-repeat; margin:0 .3em 0 0; position:relative; left:-1px;}
|
||||
.xeEditor .fileAttach .fileUploadControl .uploaderButton .rightCap { width:2px; height:21px; background:url(../images/buttonTypeBRight.gif) no-repeat; margin:0 -1px 0 .4em;}
|
||||
.xeEditor .fileAttach .fileUploadControl .uploaderButton .icon { margin:0 .2em;}
|
||||
45
modules/editor/skins/xquared/doc/api/_01.html
Normal file
|
|
@ -0,0 +1,45 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<meta name="generator" content="JsDoc Toolkit 1.0">
|
||||
<title>JsDoc: Browser.js</title>
|
||||
<link rel=stylesheet href="default.css" type="text/css" media=screen>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="content">
|
||||
<div class="docs">
|
||||
|
||||
<div class="sectionHead">Library: Browser.js</div>
|
||||
<div class="section overview">
|
||||
<div class="itemTitle">
|
||||
Overview
|
||||
</div>
|
||||
<div>
|
||||
<div class="desc"></div>
|
||||
<div class="itemTags">
|
||||
<ul>
|
||||
<li>source: <a href="src_01.html">Browser.js</a></li>
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="sectionHead">Constructors</div>
|
||||
|
||||
|
||||
<div class="sectionHead">Functions</div>
|
||||
|
||||
|
||||
<div class="sectionHead">Objects</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="finePrint">
|
||||
Generated by <a href="http://jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 1.3.1 on Wed, 21 Nov 2007 09:57:20 GMT.
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
143
modules/editor/skins/xquared/doc/api/_02.html
Normal file
|
|
@ -0,0 +1,143 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<meta name="generator" content="JsDoc Toolkit 1.0">
|
||||
<title>JsDoc: </title>
|
||||
<link rel=stylesheet href="default.css" type="text/css" media=screen>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="content">
|
||||
<div class="docs">
|
||||
|
||||
<div class="sectionHead">Library: Controls.js</div>
|
||||
<div class="section overview">
|
||||
<div class="itemTitle">
|
||||
Overview
|
||||
</div>
|
||||
<div>
|
||||
<div class="desc">xq.controls provides common UI elements such as dialog.</div>
|
||||
<div class="itemTags">
|
||||
<ul>
|
||||
<li>source: <a href="src_02.html">Controls.js</a></li>
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="sectionHead">Constructors</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="sectionHead">Functions</div>
|
||||
|
||||
|
||||
<div class="section function">
|
||||
<div class="itemTitle">
|
||||
<a name="this.form.onsubmit"></a>
|
||||
|
||||
|
||||
this.form.onsubmit(<span class="signature"></span>)
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div class="section function">
|
||||
<div class="itemTitle">
|
||||
<a name="cancelButton.onclick"></a>
|
||||
|
||||
|
||||
cancelButton.onclick(<span class="signature"></span>)
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div class="section function">
|
||||
<div class="itemTitle">
|
||||
<a name="this.param.renderItem"></a>
|
||||
|
||||
|
||||
this.param.renderItem(<span class="signature">item</span>)
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="detailHead">parameters</div>
|
||||
<table class="params">
|
||||
|
||||
<tr>
|
||||
<td class="type">
|
||||
|
||||
</td>
|
||||
<td>
|
||||
item
|
||||
</td>
|
||||
<td>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div class="sectionHead">Objects</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="finePrint">
|
||||
Generated by <a href="http://jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 1.3.1 on Wed, 21 Nov 2007 09:57:20 GMT.
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
161
modules/editor/skins/xquared/doc/api/_03.html
Normal file
|
|
@ -0,0 +1,161 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<meta name="generator" content="JsDoc Toolkit 1.0">
|
||||
<title>JsDoc: DomTree.js</title>
|
||||
<link rel=stylesheet href="default.css" type="text/css" media=screen>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="content">
|
||||
<div class="docs">
|
||||
|
||||
<div class="sectionHead">Library: DomTree.js</div>
|
||||
<div class="section overview">
|
||||
<div class="itemTitle">
|
||||
Overview
|
||||
</div>
|
||||
<div>
|
||||
<div class="desc"></div>
|
||||
<div class="itemTags">
|
||||
<ul>
|
||||
<li>source: <a href="src_03.html">DomTree.js</a></li>
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="sectionHead">Constructors</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="sectionHead">Functions</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="section function">
|
||||
<div class="itemTitle">
|
||||
<a name="findLeft"></a>
|
||||
|
||||
|
||||
findLeft(<span class="signature">el</span>)
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="detailHead">parameters</div>
|
||||
<table class="params">
|
||||
|
||||
<tr>
|
||||
<td class="type">
|
||||
|
||||
</td>
|
||||
<td>
|
||||
el
|
||||
</td>
|
||||
<td>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div class="section function">
|
||||
<div class="itemTitle">
|
||||
<a name="findRight"></a>
|
||||
|
||||
|
||||
findRight(<span class="signature">el</span>)
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="detailHead">parameters</div>
|
||||
<table class="params">
|
||||
|
||||
<tr>
|
||||
<td class="type">
|
||||
|
||||
</td>
|
||||
<td>
|
||||
el
|
||||
</td>
|
||||
<td>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div class="sectionHead">Objects</div>
|
||||
|
||||
|
||||
<div class="section object">
|
||||
<div class="itemTitle">
|
||||
<a name="xq.DomTree"></a>
|
||||
|
||||
|
||||
|
||||
xq.DomTree
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="desc">Provide various tree operations.
|
||||
|
||||
TODO: Add specs</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="finePrint">
|
||||
Generated by <a href="http://jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 1.3.1 on Wed, 21 Nov 2007 09:57:21 GMT.
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
45
modules/editor/skins/xquared/doc/api/_04.html
Normal file
|
|
@ -0,0 +1,45 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<meta name="generator" content="JsDoc Toolkit 1.0">
|
||||
<title>JsDoc: </title>
|
||||
<link rel=stylesheet href="default.css" type="text/css" media=screen>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="content">
|
||||
<div class="docs">
|
||||
|
||||
<div class="sectionHead">Library: EditHistory.js</div>
|
||||
<div class="section overview">
|
||||
<div class="itemTitle">
|
||||
Overview
|
||||
</div>
|
||||
<div>
|
||||
<div class="desc">xq.EditHistory manages editing history and performs UNDO/REDO.</div>
|
||||
<div class="itemTags">
|
||||
<ul>
|
||||
<li>source: <a href="src_04.html">EditHistory.js</a></li>
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="sectionHead">Constructors</div>
|
||||
|
||||
|
||||
<div class="sectionHead">Functions</div>
|
||||
|
||||
|
||||
<div class="sectionHead">Objects</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="finePrint">
|
||||
Generated by <a href="http://jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 1.3.1 on Wed, 21 Nov 2007 09:57:21 GMT.
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
796
modules/editor/skins/xquared/doc/api/_05.html
Normal file
|
|
@ -0,0 +1,796 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<meta name="generator" content="JsDoc Toolkit 1.0">
|
||||
<title>JsDoc: </title>
|
||||
<link rel=stylesheet href="default.css" type="text/css" media=screen>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="content">
|
||||
<div class="docs">
|
||||
|
||||
<div class="sectionHead">Library: Editor.js</div>
|
||||
<div class="section overview">
|
||||
<div class="itemTitle">
|
||||
Overview
|
||||
</div>
|
||||
<div>
|
||||
<div class="desc">xq.Editor manages configurations such as autocompletion and autocorrection, edit mode/normal mode switching, handles editing commands, keyboard shortcuts and other events.</div>
|
||||
<div class="itemTags">
|
||||
<ul>
|
||||
<li>source: <a href="src_05.html">Editor.js</a></li>
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="sectionHead">Constructors</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="sectionHead">Functions</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="section function">
|
||||
<div class="itemTitle">
|
||||
<a name="criteria"></a>
|
||||
|
||||
|
||||
criteria(<span class="signature">text</span>)
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="detailHead">parameters</div>
|
||||
<table class="params">
|
||||
|
||||
<tr>
|
||||
<td class="type">
|
||||
|
||||
</td>
|
||||
<td>
|
||||
text
|
||||
</td>
|
||||
<td>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div class="section function">
|
||||
<div class="itemTitle">
|
||||
<a name="criteria"></a>
|
||||
|
||||
|
||||
criteria(<span class="signature">text</span>)
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="detailHead">parameters</div>
|
||||
<table class="params">
|
||||
|
||||
<tr>
|
||||
<td class="type">
|
||||
|
||||
</td>
|
||||
<td>
|
||||
text
|
||||
</td>
|
||||
<td>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div class="section function">
|
||||
<div class="itemTitle">
|
||||
<a name="this.contentElement.form.onsubmit"></a>
|
||||
|
||||
|
||||
this.contentElement.form.onsubmit(<span class="signature"></span>)
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div class="section function">
|
||||
<div class="itemTitle">
|
||||
<a name="cancelMousedown"></a>
|
||||
|
||||
|
||||
cancelMousedown(<span class="signature">e</span>)
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="detailHead">parameters</div>
|
||||
<table class="params">
|
||||
|
||||
<tr>
|
||||
<td class="type">
|
||||
|
||||
</td>
|
||||
<td>
|
||||
e
|
||||
</td>
|
||||
<td>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div class="section function">
|
||||
<div class="itemTitle">
|
||||
<a name="finder"></a>
|
||||
|
||||
|
||||
finder(<span class="signature">node</span>)
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="detailHead">parameters</div>
|
||||
<table class="params">
|
||||
|
||||
<tr>
|
||||
<td class="type">
|
||||
|
||||
</td>
|
||||
<td>
|
||||
node
|
||||
</td>
|
||||
<td>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div class="section function">
|
||||
<div class="itemTitle">
|
||||
<a name="exitCondition"></a>
|
||||
|
||||
|
||||
exitCondition(<span class="signature">node</span>)
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="detailHead">parameters</div>
|
||||
<table class="params">
|
||||
|
||||
<tr>
|
||||
<td class="type">
|
||||
|
||||
</td>
|
||||
<td>
|
||||
node
|
||||
</td>
|
||||
<td>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div class="sectionHead">Objects</div>
|
||||
|
||||
|
||||
<div class="section object">
|
||||
<div class="itemTitle">
|
||||
<a name="this.config"></a>
|
||||
|
||||
<span class="type">object</span>
|
||||
|
||||
|
||||
|
||||
this.config
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="desc">Editor's configuration</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="section object">
|
||||
<div class="itemTitle">
|
||||
<a name="this.contentElement"></a>
|
||||
|
||||
<span class="type">Element</span>
|
||||
|
||||
|
||||
|
||||
this.contentElement
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="desc">Original content element</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="section object">
|
||||
<div class="itemTitle">
|
||||
<a name="this.doc"></a>
|
||||
|
||||
<span class="type">Document</span>
|
||||
|
||||
|
||||
|
||||
this.doc
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="desc">Owner document of content element</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="section object">
|
||||
<div class="itemTitle">
|
||||
<a name="this.body"></a>
|
||||
|
||||
<span class="type">Element</span>
|
||||
|
||||
|
||||
|
||||
this.body
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="desc">Body of content element</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="section object">
|
||||
<div class="itemTitle">
|
||||
<a name="this.currentEditMode"></a>
|
||||
|
||||
<span class="type">Object</span>
|
||||
|
||||
|
||||
|
||||
this.currentEditMode
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="desc">False or 'readonly' means read-only mode, true or 'wysiwyg' means WYSIWYG editing mode, and 'source' means source editing mode.</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="section object">
|
||||
<div class="itemTitle">
|
||||
<a name="this.rdom"></a>
|
||||
|
||||
<span class="type">xq.RichDom</span>
|
||||
|
||||
|
||||
|
||||
this.rdom
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="desc">RichDom instance</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="section object">
|
||||
<div class="itemTitle">
|
||||
<a name="this.validator"></a>
|
||||
|
||||
<span class="type">xq.Validator</span>
|
||||
|
||||
|
||||
|
||||
this.validator
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="desc">Validator instance</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="section object">
|
||||
<div class="itemTitle">
|
||||
<a name="this.outmostWrapper"></a>
|
||||
|
||||
<span class="type">Element</span>
|
||||
|
||||
|
||||
|
||||
this.outmostWrapper
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="desc">Outmost wrapper div</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="section object">
|
||||
<div class="itemTitle">
|
||||
<a name="this.sourceEditorDiv"></a>
|
||||
|
||||
<span class="type">Element</span>
|
||||
|
||||
|
||||
|
||||
this.sourceEditorDiv
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="desc">Source editor container</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="section object">
|
||||
<div class="itemTitle">
|
||||
<a name="this.sourceEditorTextarea"></a>
|
||||
|
||||
<span class="type">Element</span>
|
||||
|
||||
|
||||
|
||||
this.sourceEditorTextarea
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="desc">Source editor textarea</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="section object">
|
||||
<div class="itemTitle">
|
||||
<a name="this.wysiwygEditorDiv"></a>
|
||||
|
||||
<span class="type">Element</span>
|
||||
|
||||
|
||||
|
||||
this.wysiwygEditorDiv
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="desc">WYSIWYG editor container</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="section object">
|
||||
<div class="itemTitle">
|
||||
<a name="this.editorFrame"></a>
|
||||
|
||||
<span class="type">IFrame</span>
|
||||
|
||||
|
||||
|
||||
this.editorFrame
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="desc">Design mode iframe</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="section object">
|
||||
<div class="itemTitle">
|
||||
<a name="this.editorWin"></a>
|
||||
|
||||
<span class="type">Window</span>
|
||||
|
||||
|
||||
|
||||
this.editorWin
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="desc">Window that contains design mode iframe</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="section object">
|
||||
<div class="itemTitle">
|
||||
<a name="this.editorDoc"></a>
|
||||
|
||||
<span class="type">Document</span>
|
||||
|
||||
|
||||
|
||||
this.editorDoc
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="desc">Document that contained by design mode iframe</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="section object">
|
||||
<div class="itemTitle">
|
||||
<a name="this.editorBody"></a>
|
||||
|
||||
<span class="type">Element</span>
|
||||
|
||||
|
||||
|
||||
this.editorBody
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="desc">Body that contained by design mode iframe</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="section object">
|
||||
<div class="itemTitle">
|
||||
<a name="this.toolbarContainer"></a>
|
||||
|
||||
<span class="type">Element</span>
|
||||
|
||||
|
||||
|
||||
this.toolbarContainer
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="desc">Toolbar container</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="section object">
|
||||
<div class="itemTitle">
|
||||
<a name="this.toolbarButtons"></a>
|
||||
|
||||
<span class="type">Array</span>
|
||||
|
||||
|
||||
|
||||
this.toolbarButtons
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="desc">Toolbar buttons</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="section object">
|
||||
<div class="itemTitle">
|
||||
<a name="this.editHistory"></a>
|
||||
|
||||
<span class="type">xq.EditHistory</span>
|
||||
|
||||
|
||||
|
||||
this.editHistory
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="desc">Undo/redo manager</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="finePrint">
|
||||
Generated by <a href="http://jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 1.3.1 on Wed, 21 Nov 2007 09:57:34 GMT.
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
216
modules/editor/skins/xquared/doc/api/_06.html
Normal file
|
|
@ -0,0 +1,216 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<meta name="generator" content="JsDoc Toolkit 1.0">
|
||||
<title>JsDoc: RichDom.js</title>
|
||||
<link rel=stylesheet href="default.css" type="text/css" media=screen>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="content">
|
||||
<div class="docs">
|
||||
|
||||
<div class="sectionHead">Library: RichDom.js</div>
|
||||
<div class="section overview">
|
||||
<div class="itemTitle">
|
||||
Overview
|
||||
</div>
|
||||
<div>
|
||||
<div class="desc"></div>
|
||||
<div class="itemTags">
|
||||
<ul>
|
||||
<li>source: <a href="src_06.html">RichDom.js</a></li>
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="sectionHead">Constructors</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="sectionHead">Functions</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="section function">
|
||||
<div class="itemTitle">
|
||||
<a name="finder"></a>
|
||||
|
||||
|
||||
finder(<span class="signature">node</span>)
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="detailHead">parameters</div>
|
||||
<table class="params">
|
||||
|
||||
<tr>
|
||||
<td class="type">
|
||||
|
||||
</td>
|
||||
<td>
|
||||
node
|
||||
</td>
|
||||
<td>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div class="section function">
|
||||
<div class="itemTitle">
|
||||
<a name="exitCondition"></a>
|
||||
|
||||
|
||||
exitCondition(<span class="signature">node</span>)
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="detailHead">parameters</div>
|
||||
<table class="params">
|
||||
|
||||
<tr>
|
||||
<td class="type">
|
||||
|
||||
</td>
|
||||
<td>
|
||||
node
|
||||
</td>
|
||||
<td>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div class="section function">
|
||||
<div class="itemTitle">
|
||||
<a name="xq.RichDom.createInstance"></a>
|
||||
|
||||
|
||||
xq.RichDom.createInstance(<span class="signature"></span>)
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="desc">Creates and returns instance of browser specific implementation.</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div class="sectionHead">Objects</div>
|
||||
|
||||
|
||||
<div class="section object">
|
||||
<div class="itemTitle">
|
||||
<a name="xq.RichDom"></a>
|
||||
|
||||
|
||||
|
||||
xq.RichDom
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="desc">Encapsulates browser incompatibility problem and provides rich set of DOM manipulation API.
|
||||
|
||||
RichDom provides basic CRUD + Advanced DOM manipulation API, various query methods and caret/selection management API</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="section object">
|
||||
<div class="itemTitle">
|
||||
<a name="this.tree"></a>
|
||||
|
||||
|
||||
|
||||
this.tree
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="desc">instance of DomTree</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="finePrint">
|
||||
Generated by <a href="http://jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 1.3.1 on Wed, 21 Nov 2007 09:57:48 GMT.
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
71
modules/editor/skins/xquared/doc/api/_07.html
Normal file
|
|
@ -0,0 +1,71 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<meta name="generator" content="JsDoc Toolkit 1.0">
|
||||
<title>JsDoc: RichDomGecko.js</title>
|
||||
<link rel=stylesheet href="default.css" type="text/css" media=screen>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="content">
|
||||
<div class="docs">
|
||||
|
||||
<div class="sectionHead">Library: RichDomGecko.js</div>
|
||||
<div class="section overview">
|
||||
<div class="itemTitle">
|
||||
Overview
|
||||
</div>
|
||||
<div>
|
||||
<div class="desc"></div>
|
||||
<div class="itemTags">
|
||||
<ul>
|
||||
<li>source: <a href="src_07.html">RichDomGecko.js</a></li>
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="sectionHead">Constructors</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="sectionHead">Functions</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="sectionHead">Objects</div>
|
||||
|
||||
|
||||
<div class="section object">
|
||||
<div class="itemTitle">
|
||||
<a name="xq.RichDomGecko"></a>
|
||||
|
||||
|
||||
|
||||
xq.RichDomGecko
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="desc">RichDom for Gecko</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="finePrint">
|
||||
Generated by <a href="http://jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 1.3.1 on Wed, 21 Nov 2007 09:57:48 GMT.
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
71
modules/editor/skins/xquared/doc/api/_08.html
Normal file
|
|
@ -0,0 +1,71 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<meta name="generator" content="JsDoc Toolkit 1.0">
|
||||
<title>JsDoc: RichDomTrident.js</title>
|
||||
<link rel=stylesheet href="default.css" type="text/css" media=screen>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="content">
|
||||
<div class="docs">
|
||||
|
||||
<div class="sectionHead">Library: RichDomTrident.js</div>
|
||||
<div class="section overview">
|
||||
<div class="itemTitle">
|
||||
Overview
|
||||
</div>
|
||||
<div>
|
||||
<div class="desc"></div>
|
||||
<div class="itemTags">
|
||||
<ul>
|
||||
<li>source: <a href="src_08.html">RichDomTrident.js</a></li>
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="sectionHead">Constructors</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="sectionHead">Functions</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="sectionHead">Objects</div>
|
||||
|
||||
|
||||
<div class="section object">
|
||||
<div class="itemTitle">
|
||||
<a name="xq.RichDomTrident"></a>
|
||||
|
||||
|
||||
|
||||
xq.RichDomTrident
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="desc">RichDom for Internet Explorer 6 and 7</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="finePrint">
|
||||
Generated by <a href="http://jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 1.3.1 on Wed, 21 Nov 2007 09:57:48 GMT.
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
71
modules/editor/skins/xquared/doc/api/_09.html
Normal file
|
|
@ -0,0 +1,71 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<meta name="generator" content="JsDoc Toolkit 1.0">
|
||||
<title>JsDoc: RichDomW3.js</title>
|
||||
<link rel=stylesheet href="default.css" type="text/css" media=screen>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="content">
|
||||
<div class="docs">
|
||||
|
||||
<div class="sectionHead">Library: RichDomW3.js</div>
|
||||
<div class="section overview">
|
||||
<div class="itemTitle">
|
||||
Overview
|
||||
</div>
|
||||
<div>
|
||||
<div class="desc"></div>
|
||||
<div class="itemTags">
|
||||
<ul>
|
||||
<li>source: <a href="src_09.html">RichDomW3.js</a></li>
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="sectionHead">Constructors</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="sectionHead">Functions</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="sectionHead">Objects</div>
|
||||
|
||||
|
||||
<div class="section object">
|
||||
<div class="itemTitle">
|
||||
<a name="xq.RichDomW3"></a>
|
||||
|
||||
|
||||
|
||||
xq.RichDomW3
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="desc">RichDom for W3C Standard Engine</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="finePrint">
|
||||
Generated by <a href="http://jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 1.3.1 on Wed, 21 Nov 2007 09:57:49 GMT.
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
71
modules/editor/skins/xquared/doc/api/_10.html
Normal file
|
|
@ -0,0 +1,71 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<meta name="generator" content="JsDoc Toolkit 1.0">
|
||||
<title>JsDoc: RichDomWebkit.js</title>
|
||||
<link rel=stylesheet href="default.css" type="text/css" media=screen>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="content">
|
||||
<div class="docs">
|
||||
|
||||
<div class="sectionHead">Library: RichDomWebkit.js</div>
|
||||
<div class="section overview">
|
||||
<div class="itemTitle">
|
||||
Overview
|
||||
</div>
|
||||
<div>
|
||||
<div class="desc"></div>
|
||||
<div class="itemTags">
|
||||
<ul>
|
||||
<li>source: <a href="src_10.html">RichDomWebkit.js</a></li>
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="sectionHead">Constructors</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="sectionHead">Functions</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="sectionHead">Objects</div>
|
||||
|
||||
|
||||
<div class="section object">
|
||||
<div class="itemTitle">
|
||||
<a name="xq.RichDomWebkit"></a>
|
||||
|
||||
|
||||
|
||||
xq.RichDomWebkit
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="desc">RichDom for Webkit</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="finePrint">
|
||||
Generated by <a href="http://jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 1.3.1 on Wed, 21 Nov 2007 09:57:49 GMT.
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
125
modules/editor/skins/xquared/doc/api/_11.html
Normal file
|
|
@ -0,0 +1,125 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<meta name="generator" content="JsDoc Toolkit 1.0">
|
||||
<title>JsDoc: RichTable.js</title>
|
||||
<link rel=stylesheet href="default.css" type="text/css" media=screen>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="content">
|
||||
<div class="docs">
|
||||
|
||||
<div class="sectionHead">Library: RichTable.js</div>
|
||||
<div class="section overview">
|
||||
<div class="itemTitle">
|
||||
Overview
|
||||
</div>
|
||||
<div>
|
||||
<div class="desc"></div>
|
||||
<div class="itemTags">
|
||||
<ul>
|
||||
<li>source: <a href="src_11.html">RichTable.js</a></li>
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="sectionHead">Constructors</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="sectionHead">Functions</div>
|
||||
|
||||
|
||||
<div class="section function">
|
||||
<div class="itemTitle">
|
||||
<a name="xq.RichTable.create"></a>
|
||||
|
||||
|
||||
xq.RichTable.create(<span class="signature">rdom, cols, rows, headerPositions</span>)
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="detailHead">parameters</div>
|
||||
<table class="params">
|
||||
|
||||
<tr>
|
||||
<td class="type">
|
||||
|
||||
</td>
|
||||
<td>
|
||||
rdom
|
||||
</td>
|
||||
<td>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="type">
|
||||
|
||||
</td>
|
||||
<td>
|
||||
cols
|
||||
</td>
|
||||
<td>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="type">
|
||||
|
||||
</td>
|
||||
<td>
|
||||
rows
|
||||
</td>
|
||||
<td>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="type">
|
||||
|
||||
</td>
|
||||
<td>
|
||||
headerPositions
|
||||
</td>
|
||||
<td>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div class="sectionHead">Objects</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="finePrint">
|
||||
Generated by <a href="http://jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 1.3.1 on Wed, 21 Nov 2007 09:57:49 GMT.
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
189
modules/editor/skins/xquared/doc/api/_12.html
Normal file
|
|
@ -0,0 +1,189 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<meta name="generator" content="JsDoc Toolkit 1.0">
|
||||
<title>JsDoc: Shortcut.js</title>
|
||||
<link rel=stylesheet href="default.css" type="text/css" media=screen>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="content">
|
||||
<div class="docs">
|
||||
|
||||
<div class="sectionHead">Library: Shortcut.js</div>
|
||||
<div class="section overview">
|
||||
<div class="itemTitle">
|
||||
Overview
|
||||
</div>
|
||||
<div>
|
||||
<div class="desc"></div>
|
||||
<div class="itemTags">
|
||||
<ul>
|
||||
<li>source: <a href="src_12.html">Shortcut.js</a></li>
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="sectionHead">Constructors</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="sectionHead">Functions</div>
|
||||
|
||||
|
||||
<div class="section function">
|
||||
<div class="itemTitle">
|
||||
<a name="xq.Shortcut.interprete"></a>
|
||||
|
||||
|
||||
xq.Shortcut.interprete(<span class="signature">expression</span>)
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="detailHead">parameters</div>
|
||||
<table class="params">
|
||||
|
||||
<tr>
|
||||
<td class="type">
|
||||
|
||||
</td>
|
||||
<td>
|
||||
expression
|
||||
</td>
|
||||
<td>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div class="section function">
|
||||
<div class="itemTitle">
|
||||
<a name="xq.Shortcut._interpreteModifier"></a>
|
||||
|
||||
|
||||
xq.Shortcut._interpreteModifier(<span class="signature">expression, modifierName</span>)
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="detailHead">parameters</div>
|
||||
<table class="params">
|
||||
|
||||
<tr>
|
||||
<td class="type">
|
||||
|
||||
</td>
|
||||
<td>
|
||||
expression
|
||||
</td>
|
||||
<td>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="type">
|
||||
|
||||
</td>
|
||||
<td>
|
||||
modifierName
|
||||
</td>
|
||||
<td>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div class="section function">
|
||||
<div class="itemTitle">
|
||||
<a name="xq.Shortcut._interpreteWhich"></a>
|
||||
|
||||
|
||||
xq.Shortcut._interpreteWhich(<span class="signature">keyName</span>)
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="detailHead">parameters</div>
|
||||
<table class="params">
|
||||
|
||||
<tr>
|
||||
<td class="type">
|
||||
|
||||
</td>
|
||||
<td>
|
||||
keyName
|
||||
</td>
|
||||
<td>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div class="sectionHead">Objects</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="finePrint">
|
||||
Generated by <a href="http://jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 1.3.1 on Wed, 21 Nov 2007 09:57:49 GMT.
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
153
modules/editor/skins/xquared/doc/api/_13.html
Normal file
|
|
@ -0,0 +1,153 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<meta name="generator" content="JsDoc Toolkit 1.0">
|
||||
<title>JsDoc: Validator.js</title>
|
||||
<link rel=stylesheet href="default.css" type="text/css" media=screen>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="content">
|
||||
<div class="docs">
|
||||
|
||||
<div class="sectionHead">Library: Validator.js</div>
|
||||
<div class="section overview">
|
||||
<div class="itemTitle">
|
||||
Overview
|
||||
</div>
|
||||
<div>
|
||||
<div class="desc"></div>
|
||||
<div class="itemTags">
|
||||
<ul>
|
||||
<li>source: <a href="src_13.html">Validator.js</a></li>
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="sectionHead">Constructors</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="sectionHead">Functions</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="section function">
|
||||
<div class="itemTitle">
|
||||
<a name="xq.Validator.createInstance"></a>
|
||||
|
||||
|
||||
xq.Validator.createInstance(<span class="signature">curUrl, urlValidationMode, allowedTags, allowedAttrs</span>)
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="desc">Creates and returns instance of browser specific implementation.</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="detailHead">parameters</div>
|
||||
<table class="params">
|
||||
|
||||
<tr>
|
||||
<td class="type">
|
||||
|
||||
</td>
|
||||
<td>
|
||||
curUrl
|
||||
</td>
|
||||
<td>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="type">
|
||||
|
||||
</td>
|
||||
<td>
|
||||
urlValidationMode
|
||||
</td>
|
||||
<td>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="type">
|
||||
|
||||
</td>
|
||||
<td>
|
||||
allowedTags
|
||||
</td>
|
||||
<td>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="type">
|
||||
|
||||
</td>
|
||||
<td>
|
||||
allowedAttrs
|
||||
</td>
|
||||
<td>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div class="sectionHead">Objects</div>
|
||||
|
||||
|
||||
<div class="section object">
|
||||
<div class="itemTitle">
|
||||
<a name="xq.Validator"></a>
|
||||
|
||||
|
||||
|
||||
xq.Validator
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="desc">Validates and invalidates designmode contents</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="finePrint">
|
||||
Generated by <a href="http://jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 1.3.1 on Wed, 21 Nov 2007 09:57:49 GMT.
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
71
modules/editor/skins/xquared/doc/api/_14.html
Normal file
|
|
@ -0,0 +1,71 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<meta name="generator" content="JsDoc Toolkit 1.0">
|
||||
<title>JsDoc: ValidatorGecko.js</title>
|
||||
<link rel=stylesheet href="default.css" type="text/css" media=screen>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="content">
|
||||
<div class="docs">
|
||||
|
||||
<div class="sectionHead">Library: ValidatorGecko.js</div>
|
||||
<div class="section overview">
|
||||
<div class="itemTitle">
|
||||
Overview
|
||||
</div>
|
||||
<div>
|
||||
<div class="desc"></div>
|
||||
<div class="itemTags">
|
||||
<ul>
|
||||
<li>source: <a href="src_14.html">ValidatorGecko.js</a></li>
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="sectionHead">Constructors</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="sectionHead">Functions</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="sectionHead">Objects</div>
|
||||
|
||||
|
||||
<div class="section object">
|
||||
<div class="itemTitle">
|
||||
<a name="xq.ValidatorGecko"></a>
|
||||
|
||||
|
||||
|
||||
xq.ValidatorGecko
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="desc">Validator for Gecko Engine</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="finePrint">
|
||||
Generated by <a href="http://jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 1.3.1 on Wed, 21 Nov 2007 09:57:49 GMT.
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
71
modules/editor/skins/xquared/doc/api/_15.html
Normal file
|
|
@ -0,0 +1,71 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<meta name="generator" content="JsDoc Toolkit 1.0">
|
||||
<title>JsDoc: ValidatorTrident.js</title>
|
||||
<link rel=stylesheet href="default.css" type="text/css" media=screen>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="content">
|
||||
<div class="docs">
|
||||
|
||||
<div class="sectionHead">Library: ValidatorTrident.js</div>
|
||||
<div class="section overview">
|
||||
<div class="itemTitle">
|
||||
Overview
|
||||
</div>
|
||||
<div>
|
||||
<div class="desc"></div>
|
||||
<div class="itemTags">
|
||||
<ul>
|
||||
<li>source: <a href="src_15.html">ValidatorTrident.js</a></li>
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="sectionHead">Constructors</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="sectionHead">Functions</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="sectionHead">Objects</div>
|
||||
|
||||
|
||||
<div class="section object">
|
||||
<div class="itemTitle">
|
||||
<a name="xq.ValidatorTrident"></a>
|
||||
|
||||
|
||||
|
||||
xq.ValidatorTrident
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="desc">Validator for Internet Explorer 6 and 7</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="finePrint">
|
||||
Generated by <a href="http://jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 1.3.1 on Wed, 21 Nov 2007 09:57:50 GMT.
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
71
modules/editor/skins/xquared/doc/api/_16.html
Normal file
|
|
@ -0,0 +1,71 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<meta name="generator" content="JsDoc Toolkit 1.0">
|
||||
<title>JsDoc: ValidatorW3.js</title>
|
||||
<link rel=stylesheet href="default.css" type="text/css" media=screen>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="content">
|
||||
<div class="docs">
|
||||
|
||||
<div class="sectionHead">Library: ValidatorW3.js</div>
|
||||
<div class="section overview">
|
||||
<div class="itemTitle">
|
||||
Overview
|
||||
</div>
|
||||
<div>
|
||||
<div class="desc"></div>
|
||||
<div class="itemTags">
|
||||
<ul>
|
||||
<li>source: <a href="src_16.html">ValidatorW3.js</a></li>
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="sectionHead">Constructors</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="sectionHead">Functions</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="sectionHead">Objects</div>
|
||||
|
||||
|
||||
<div class="section object">
|
||||
<div class="itemTitle">
|
||||
<a name="xq.ValidatorW3"></a>
|
||||
|
||||
|
||||
|
||||
xq.ValidatorW3
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="desc">Validator for W3C Standard Engine</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="finePrint">
|
||||
Generated by <a href="http://jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 1.3.1 on Wed, 21 Nov 2007 09:57:50 GMT.
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
71
modules/editor/skins/xquared/doc/api/_17.html
Normal file
|
|
@ -0,0 +1,71 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<meta name="generator" content="JsDoc Toolkit 1.0">
|
||||
<title>JsDoc: ValidatorWebkit.js</title>
|
||||
<link rel=stylesheet href="default.css" type="text/css" media=screen>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="content">
|
||||
<div class="docs">
|
||||
|
||||
<div class="sectionHead">Library: ValidatorWebkit.js</div>
|
||||
<div class="section overview">
|
||||
<div class="itemTitle">
|
||||
Overview
|
||||
</div>
|
||||
<div>
|
||||
<div class="desc"></div>
|
||||
<div class="itemTags">
|
||||
<ul>
|
||||
<li>source: <a href="src_17.html">ValidatorWebkit.js</a></li>
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="sectionHead">Constructors</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="sectionHead">Functions</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="sectionHead">Objects</div>
|
||||
|
||||
|
||||
<div class="section object">
|
||||
<div class="itemTitle">
|
||||
<a name="xq.ValidatorWebkit"></a>
|
||||
|
||||
|
||||
|
||||
xq.ValidatorWebkit
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="desc">Validator for Webkit</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="finePrint">
|
||||
Generated by <a href="http://jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 1.3.1 on Wed, 21 Nov 2007 09:57:50 GMT.
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
512
modules/editor/skins/xquared/doc/api/_18.html
Normal file
|
|
@ -0,0 +1,512 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<meta name="generator" content="JsDoc Toolkit 1.0">
|
||||
<title>JsDoc: XQuared.js</title>
|
||||
<link rel=stylesheet href="default.css" type="text/css" media=screen>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="content">
|
||||
<div class="docs">
|
||||
|
||||
<div class="sectionHead">Library: XQuared.js</div>
|
||||
<div class="section overview">
|
||||
<div class="itemTitle">
|
||||
Overview
|
||||
</div>
|
||||
<div>
|
||||
<div class="desc"></div>
|
||||
<div class="itemTags">
|
||||
<ul>
|
||||
<li>source: <a href="src_18.html">XQuared.js</a></li>
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="sectionHead">Constructors</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="sectionHead">Functions</div>
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="section function">
|
||||
<div class="itemTitle">
|
||||
<a name="xq.asEventSource"></a>
|
||||
|
||||
|
||||
xq.asEventSource(<span class="signature">object, prefix, events</span>)
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="desc">Make given object as event source</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="detailHead">parameters</div>
|
||||
<table class="params">
|
||||
|
||||
<tr>
|
||||
<td class="type">
|
||||
Object
|
||||
</td>
|
||||
<td>
|
||||
object
|
||||
</td>
|
||||
<td>
|
||||
target object
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="type">
|
||||
String
|
||||
</td>
|
||||
<td>
|
||||
prefix
|
||||
</td>
|
||||
<td>
|
||||
prefix for generated functions
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="type">
|
||||
Array
|
||||
</td>
|
||||
<td>
|
||||
events
|
||||
</td>
|
||||
<td>
|
||||
array of string which contains name of events
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div class="section function">
|
||||
<div class="itemTitle">
|
||||
<a name="Array.indexOf"></a>
|
||||
|
||||
<i><a href="#Array" class="type">Array.</a></i>indexOf(<span class="signature">n</span>)
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="desc">Returns the index of given element</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="detailHead">parameters</div>
|
||||
<table class="params">
|
||||
|
||||
<tr>
|
||||
<td class="type">
|
||||
|
||||
</td>
|
||||
<td>
|
||||
n
|
||||
</td>
|
||||
<td>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
<div class="detailHead">returns</div>
|
||||
<table class="params">
|
||||
|
||||
<tr>
|
||||
<td class="type">
|
||||
Number
|
||||
</td>
|
||||
<td>
|
||||
index or -1
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div class="section function">
|
||||
<div class="itemTitle">
|
||||
<a name="Date.pass"></a>
|
||||
|
||||
|
||||
Date.pass(<span class="signature">msec</span>)
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="detailHead">parameters</div>
|
||||
<table class="params">
|
||||
|
||||
<tr>
|
||||
<td class="type">
|
||||
|
||||
</td>
|
||||
<td>
|
||||
msec
|
||||
</td>
|
||||
<td>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div class="section function">
|
||||
<div class="itemTitle">
|
||||
<a name="Date.get"></a>
|
||||
|
||||
|
||||
Date.get(<span class="signature"></span>)
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div class="section function">
|
||||
<div class="itemTitle">
|
||||
<a name="Date.elapsed"></a>
|
||||
|
||||
<i><a href="#Date" class="type">Date.</a></i>elapsed(<span class="signature">msec</span>)
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="detailHead">parameters</div>
|
||||
<table class="params">
|
||||
|
||||
<tr>
|
||||
<td class="type">
|
||||
|
||||
</td>
|
||||
<td>
|
||||
msec
|
||||
</td>
|
||||
<td>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div class="section function">
|
||||
<div class="itemTitle">
|
||||
<a name="String.merge"></a>
|
||||
|
||||
<i><a href="#String" class="type">String.</a></i>merge(<span class="signature">data</span>)
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="detailHead">parameters</div>
|
||||
<table class="params">
|
||||
|
||||
<tr>
|
||||
<td class="type">
|
||||
|
||||
</td>
|
||||
<td>
|
||||
data
|
||||
</td>
|
||||
<td>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div class="section function">
|
||||
<div class="itemTitle">
|
||||
<a name="String.parseURL"></a>
|
||||
|
||||
<i><a href="#String" class="type">String.</a></i>parseURL(<span class="signature"></span>)
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div class="section function">
|
||||
<div class="itemTitle">
|
||||
<a name="xq.findXquaredScript"></a>
|
||||
|
||||
|
||||
xq.findXquaredScript(<span class="signature"></span>)
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div class="section function">
|
||||
<div class="itemTitle">
|
||||
<a name="xq.shouldLoadOthers"></a>
|
||||
|
||||
|
||||
xq.shouldLoadOthers(<span class="signature"></span>)
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div class="section function">
|
||||
<div class="itemTitle">
|
||||
<a name="xq.loadScript"></a>
|
||||
|
||||
|
||||
xq.loadScript(<span class="signature">url</span>)
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div class="detailHead">parameters</div>
|
||||
<table class="params">
|
||||
|
||||
<tr>
|
||||
<td class="type">
|
||||
|
||||
</td>
|
||||
<td>
|
||||
url
|
||||
</td>
|
||||
<td>
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
</table>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div class="section function">
|
||||
<div class="itemTitle">
|
||||
<a name="xq.loadOthers"></a>
|
||||
|
||||
|
||||
xq.loadOthers(<span class="signature"></span>)
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div class="sectionHead">Objects</div>
|
||||
|
||||
|
||||
<div class="section object">
|
||||
<div class="itemTitle">
|
||||
<a name="xq"></a>
|
||||
|
||||
|
||||
|
||||
xq
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
<div class="desc">Namespace for entire Xquared classes</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="finePrint">
|
||||
Generated by <a href="http://jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 1.3.1 on Wed, 21 Nov 2007 09:57:50 GMT.
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
45
modules/editor/skins/xquared/doc/api/_19.html
Normal file
|
|
@ -0,0 +1,45 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<meta name="generator" content="JsDoc Toolkit 1.0">
|
||||
<title>JsDoc: _ui_templates.js</title>
|
||||
<link rel=stylesheet href="default.css" type="text/css" media=screen>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="content">
|
||||
<div class="docs">
|
||||
|
||||
<div class="sectionHead">Library: _ui_templates.js</div>
|
||||
<div class="section overview">
|
||||
<div class="itemTitle">
|
||||
Overview
|
||||
</div>
|
||||
<div>
|
||||
<div class="desc"></div>
|
||||
<div class="itemTags">
|
||||
<ul>
|
||||
<li>source: <a href="src_19.html">_ui_templates.js</a></li>
|
||||
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="sectionHead">Constructors</div>
|
||||
|
||||
|
||||
<div class="sectionHead">Functions</div>
|
||||
|
||||
|
||||
<div class="sectionHead">Objects</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="finePrint">
|
||||
Generated by <a href="http://jsdoctoolkit.org/" target="_blank">JsDoc Toolkit</a> 1.3.1 on Wed, 21 Nov 2007 09:57:50 GMT.
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
BIN
modules/editor/skins/xquared/doc/api/constructor.gif
Normal file
|
After Width: | Height: | Size: 363 B |
116
modules/editor/skins/xquared/doc/api/default.css
Normal file
|
|
@ -0,0 +1,116 @@
|
|||
body,a
|
||||
{
|
||||
color: #000;
|
||||
font: 12px verdana;
|
||||
}
|
||||
|
||||
ul
|
||||
{
|
||||
list-style-type: none;
|
||||
margin-left: 10px;
|
||||
padding-left: 10px;
|
||||
}
|
||||
|
||||
.content { }
|
||||
.docs { }
|
||||
.signature { font-weight: normal; }
|
||||
.code {
|
||||
font: 11px monaco,monospace;
|
||||
padding: 4px;
|
||||
margin-left: 18px;
|
||||
border: 1px dashed #ccc;
|
||||
}
|
||||
|
||||
.itemTitle
|
||||
{
|
||||
font-size: 12px;
|
||||
font-weight: bold;
|
||||
height: 16px;
|
||||
}
|
||||
|
||||
.item { }
|
||||
|
||||
.sectionHead
|
||||
{
|
||||
font-size: 18px;
|
||||
font-weight: bold;
|
||||
background-color: #C0C1DE;
|
||||
color: #fff;
|
||||
margin-top: 18px;
|
||||
padding: 2px 4px 2px 4px;
|
||||
}
|
||||
|
||||
.section
|
||||
{
|
||||
padding: 8px;
|
||||
border: 1px #8A92BC solid;
|
||||
margin: 4px;
|
||||
}
|
||||
|
||||
.detailHead
|
||||
{
|
||||
border-bottom: 1px #8FB685 dotted;
|
||||
font-size: 12px;
|
||||
font-weight: bold;
|
||||
color: #798E73;
|
||||
margin-top: 18px;
|
||||
}
|
||||
|
||||
.desc { padding: 8px; }
|
||||
|
||||
.fileHead
|
||||
{
|
||||
background-image: url(file.gif);
|
||||
background-repeat: no-repeat;
|
||||
padding-left: 20px;
|
||||
font-weight: bold;
|
||||
font-size: 14px;
|
||||
line-height: 20px;
|
||||
}
|
||||
|
||||
.overview .itemTitle
|
||||
{
|
||||
background-image: url(overview.gif);
|
||||
background-repeat: no-repeat;
|
||||
padding-left: 20px;
|
||||
}
|
||||
|
||||
.constructor .itemTitle
|
||||
{
|
||||
background-image: url(constructor.gif);
|
||||
background-repeat: no-repeat;
|
||||
padding-left: 20px;
|
||||
}
|
||||
|
||||
.function .itemTitle
|
||||
{
|
||||
background-image: url(function.gif);
|
||||
background-repeat: no-repeat;
|
||||
padding-left: 20px;
|
||||
}
|
||||
|
||||
.object .itemTitle
|
||||
{
|
||||
background-image: url(object.gif);
|
||||
background-repeat: no-repeat;
|
||||
padding-left: 20px;
|
||||
}
|
||||
|
||||
.type
|
||||
{
|
||||
font-style: italic;
|
||||
color: #999;
|
||||
font-weight: normal;
|
||||
}
|
||||
|
||||
.itemTitle a.type { font-weight: bold; }
|
||||
|
||||
.finePrint
|
||||
{
|
||||
color: #878787;
|
||||
font-family: verdana;
|
||||
font-size: 10px;
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
.params td { padding-right: 10px; }
|
||||
BIN
modules/editor/skins/xquared/doc/api/file.gif
Normal file
|
After Width: | Height: | Size: 242 B |
149
modules/editor/skins/xquared/doc/api/file_list.html
Normal file
|
|
@ -0,0 +1,149 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<title>JsDoc</title>
|
||||
<link rel=stylesheet href="default.css" type="text/css" media=screen>
|
||||
<meta name="generator" content="JsDoc Toolkit 1.0">
|
||||
</head>
|
||||
<body>
|
||||
<div class="sectionHead">File Index</div>
|
||||
<ul>
|
||||
|
||||
<li style="margin-bottom: 16px;">
|
||||
<a href="_01.html" target="main" class="fileHead">Browser.js</a>
|
||||
<ul>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<li style="margin-bottom: 16px;">
|
||||
<a href="_02.html" target="main" class="fileHead">Controls.js</a>
|
||||
<ul>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<li style="margin-bottom: 16px;">
|
||||
<a href="_03.html" target="main" class="fileHead">DomTree.js</a>
|
||||
<ul>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<li style="margin-bottom: 16px;">
|
||||
<a href="_04.html" target="main" class="fileHead">EditHistory.js</a>
|
||||
<ul>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<li style="margin-bottom: 16px;">
|
||||
<a href="_05.html" target="main" class="fileHead">Editor.js</a>
|
||||
<ul>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<li style="margin-bottom: 16px;">
|
||||
<a href="_06.html" target="main" class="fileHead">RichDom.js</a>
|
||||
<ul>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<li style="margin-bottom: 16px;">
|
||||
<a href="_07.html" target="main" class="fileHead">RichDomGecko.js</a>
|
||||
<ul>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<li style="margin-bottom: 16px;">
|
||||
<a href="_08.html" target="main" class="fileHead">RichDomTrident.js</a>
|
||||
<ul>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<li style="margin-bottom: 16px;">
|
||||
<a href="_09.html" target="main" class="fileHead">RichDomW3.js</a>
|
||||
<ul>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<li style="margin-bottom: 16px;">
|
||||
<a href="_10.html" target="main" class="fileHead">RichDomWebkit.js</a>
|
||||
<ul>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<li style="margin-bottom: 16px;">
|
||||
<a href="_11.html" target="main" class="fileHead">RichTable.js</a>
|
||||
<ul>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<li style="margin-bottom: 16px;">
|
||||
<a href="_12.html" target="main" class="fileHead">Shortcut.js</a>
|
||||
<ul>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<li style="margin-bottom: 16px;">
|
||||
<a href="_13.html" target="main" class="fileHead">Validator.js</a>
|
||||
<ul>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<li style="margin-bottom: 16px;">
|
||||
<a href="_14.html" target="main" class="fileHead">ValidatorGecko.js</a>
|
||||
<ul>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<li style="margin-bottom: 16px;">
|
||||
<a href="_15.html" target="main" class="fileHead">ValidatorTrident.js</a>
|
||||
<ul>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<li style="margin-bottom: 16px;">
|
||||
<a href="_16.html" target="main" class="fileHead">ValidatorW3.js</a>
|
||||
<ul>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<li style="margin-bottom: 16px;">
|
||||
<a href="_17.html" target="main" class="fileHead">ValidatorWebkit.js</a>
|
||||
<ul>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<li style="margin-bottom: 16px;">
|
||||
<a href="_18.html" target="main" class="fileHead">XQuared.js</a>
|
||||
<ul>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
<li style="margin-bottom: 16px;">
|
||||
<a href="_19.html" target="main" class="fileHead">_ui_templates.js</a>
|
||||
<ul>
|
||||
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
</ul>
|
||||
</body>
|
||||
</html>
|
||||
BIN
modules/editor/skins/xquared/doc/api/function.gif
Normal file
|
After Width: | Height: | Size: 224 B |
13
modules/editor/skins/xquared/doc/api/index.html
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"
|
||||
"http://www.w3.org/TR/html4/frameset.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||
<title>JsDoc</title>
|
||||
<meta name="generator" content="JsDoc Toolkit 1.0">
|
||||
</head>
|
||||
<frameset cols="200,*">
|
||||
<frame name="menu" src="file_list.html">
|
||||
<frame name="main" src="splash.html">
|
||||
</frameset>
|
||||
</html>
|
||||
BIN
modules/editor/skins/xquared/doc/api/object.gif
Normal file
|
After Width: | Height: | Size: 585 B |
BIN
modules/editor/skins/xquared/doc/api/overview.gif
Normal file
|
After Width: | Height: | Size: 614 B |
7
modules/editor/skins/xquared/doc/api/splash.html
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
<html>
|
||||
<head>
|
||||
<title>JsDoc</title>
|
||||
</head>
|
||||
<body>
|
||||
</body>
|
||||
</html>
|
||||
24
modules/editor/skins/xquared/doc/api/src_01.html
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
<html><head><style>
|
||||
.KEYW {color: #933;}
|
||||
.COMM {color: #bbb; font-style: italic;}
|
||||
.NUMB {color: #393;}
|
||||
.STRN {color: #393;}
|
||||
.REGX {color: #339;}
|
||||
.linenumber {border-right: 1px dotted #666; color: #666; font-style: normal;}
|
||||
</style></head><body><pre><span class='linenumber'> 1</span> <span class="NAME">xq.Browser</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 2</span> </span><span class="COMM">// By Layout Engines</span><span class="WHIT">
|
||||
<span class='linenumber'> 3</span> </span><span class="NAME">isTrident</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">navigator.appName</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">"Microsoft Internet Explorer"</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 4</span> </span><span class="NAME">isWebkit</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">navigator.userAgent.indexOf</span><span class="PUNC">(</span><span class="STRN">'AppleWebKit/'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">></span><span class="WHIT"> </span><span class="PUNC">-</span><span class="NUMB">1</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 5</span> </span><span class="NAME">isGecko</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">navigator.userAgent.indexOf</span><span class="PUNC">(</span><span class="STRN">'Gecko'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">></span><span class="WHIT"> </span><span class="PUNC">-</span><span class="NUMB">1</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">navigator.userAgent.indexOf</span><span class="PUNC">(</span><span class="STRN">'KHTML'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="NUMB">1</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 6</span> </span><span class="NAME">isKHTML</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">navigator.userAgent.indexOf</span><span class="PUNC">(</span><span class="STRN">'KHTML'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">!=</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="NUMB">1</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 7</span> </span><span class="NAME">isPresto</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">navigator.appName</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">"Opera"</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 8</span>
|
||||
<span class='linenumber'> 9</span> </span><span class="COMM">// By Platforms</span><span class="WHIT">
|
||||
<span class='linenumber'> 10</span> </span><span class="NAME">isMac</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">navigator.userAgent.indexOf</span><span class="PUNC">(</span><span class="STRN">"Macintosh"</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">!=</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="NUMB">1</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 11</span> </span><span class="NAME">isUbuntu</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">navigator.userAgent.indexOf</span><span class="PUNC">(</span><span class="STRN">'Ubuntu'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">!=</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="NUMB">1</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 12</span>
|
||||
<span class='linenumber'> 13</span> </span><span class="COMM">// By Browsers</span><span class="WHIT">
|
||||
<span class='linenumber'> 14</span> </span><span class="NAME">isIE</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">navigator.appName</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">"Microsoft Internet Explorer"</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 15</span> </span><span class="NAME">isIE6</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">navigator.userAgent.indexOf</span><span class="PUNC">(</span><span class="STRN">'MSIE 6'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">!=</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="NUMB">1</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 16</span> </span><span class="NAME">isIE7</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">navigator.userAgent.indexOf</span><span class="PUNC">(</span><span class="STRN">'MSIE 7'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">!=</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="NUMB">1</span><span class="WHIT">
|
||||
<span class='linenumber'> 17</span> </span><span class="PUNC">}</span><span class="PUNC">;</span></pre></body></html>
|
||||
344
modules/editor/skins/xquared/doc/api/src_02.html
Normal file
|
|
@ -0,0 +1,344 @@
|
|||
<html><head><style>
|
||||
.KEYW {color: #933;}
|
||||
.COMM {color: #bbb; font-style: italic;}
|
||||
.NUMB {color: #393;}
|
||||
.STRN {color: #393;}
|
||||
.REGX {color: #339;}
|
||||
.linenumber {border-right: 1px dotted #666; color: #666; font-style: normal;}
|
||||
</style></head><body><pre><span class='linenumber'> 1</span> <span class="COMM">/**
|
||||
<span class='linenumber'> 2</span> * @fileOverview xq.controls provides common UI elements such as dialog.
|
||||
<span class='linenumber'> 3</span> */</span><span class="WHIT">
|
||||
<span class='linenumber'> 4</span> </span><span class="NAME">xq.controls</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 5</span>
|
||||
<span class='linenumber'> 6</span>
|
||||
<span class='linenumber'> 7</span>
|
||||
<span class='linenumber'> 8</span> </span><span class="NAME">xq.controls.FormDialog</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Class.create</span><span class="PUNC">(</span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 9</span> </span><span class="COMM">/**
|
||||
<span class='linenumber'> 10</span> * @constructor
|
||||
<span class='linenumber'> 11</span> *
|
||||
<span class='linenumber'> 12</span> * @param {String} html HTML string which contains FORM
|
||||
<span class='linenumber'> 13</span> * @param {Function} [onLoadHandler] callback function to be called when the form is loaded
|
||||
<span class='linenumber'> 14</span> */</span><span class="WHIT">
|
||||
<span class='linenumber'> 15</span> </span><span class="NAME">initialize</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">xed</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">html</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">onLoadHandler</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">onCloseHandler</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 16</span> </span><span class="NAME">this.xed</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">xed</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 17</span> </span><span class="NAME">this.html</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">html</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 18</span> </span><span class="NAME">this.onLoadHandler</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">onLoadHandler</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 19</span> </span><span class="NAME">this.onCloseHandler</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">onCloseHandler</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 20</span> </span><span class="NAME">this.form</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 21</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 22</span> </span><span class="COMM">/**
|
||||
<span class='linenumber'> 23</span> * Show dialog
|
||||
<span class='linenumber'> 24</span> *
|
||||
<span class='linenumber'> 25</span> * @param {Object} [options] collection of options
|
||||
<span class='linenumber'> 26</span> */</span><span class="WHIT">
|
||||
<span class='linenumber'> 27</span> </span><span class="NAME">show</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">options</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 28</span> </span><span class="NAME">options</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">options</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 29</span> </span><span class="NAME">options.position</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">options.position</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="STRN">'centerOfWindow'</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 30</span> </span><span class="NAME">options.mode</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">options.mode</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="STRN">'modal'</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 31</span> </span><span class="NAME">options.cancelOnEsc</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">options.cancelOnEsc</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 32</span>
|
||||
<span class='linenumber'> 33</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">self</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 34</span>
|
||||
<span class='linenumber'> 35</span> </span><span class="COMM">// create and append container</span><span class="WHIT">
|
||||
<span class='linenumber'> 36</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">container</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">$</span><span class="PUNC">(</span><span class="NAME">document.createElement</span><span class="PUNC">(</span><span class="STRN">'DIV'</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 37</span> </span><span class="NAME">container.style.display</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="STRN">'none'</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 38</span> </span><span class="NAME">document.body.appendChild</span><span class="PUNC">(</span><span class="NAME">container</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 39</span>
|
||||
<span class='linenumber'> 40</span> </span><span class="COMM">// initialize form</span><span class="WHIT">
|
||||
<span class='linenumber'> 41</span> </span><span class="NAME">container.innerHTML</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.html</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 42</span> </span><span class="NAME">this.form</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">$</span><span class="PUNC">(</span><span class="NAME">container.getElementsByTagName</span><span class="PUNC">(</span><span class="STRN">'FORM'</span><span class="PUNC">)</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 43</span>
|
||||
<span class='linenumber'> 44</span> </span><span class="NAME">this.form.onsubmit</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 45</span> </span><span class="NAME">self.onCloseHandler</span><span class="PUNC">(</span><span class="NAME">$</span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">serialize</span><span class="PUNC">(</span><span class="KEYW">true</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 46</span> </span><span class="NAME">self.close</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 47</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 48</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 49</span>
|
||||
<span class='linenumber'> 50</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">cancelButton</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.form.getElementsByClassName</span><span class="PUNC">(</span><span class="STRN">'cancel'</span><span class="PUNC">)</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 51</span> </span><span class="NAME">cancelButton.onclick</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 52</span> </span><span class="NAME">self.onCloseHandler</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 53</span> </span><span class="NAME">self.close</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 54</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 55</span>
|
||||
<span class='linenumber'> 56</span> </span><span class="COMM">// append dialog</span><span class="WHIT">
|
||||
<span class='linenumber'> 57</span> </span><span class="NAME">document.body.appendChild</span><span class="PUNC">(</span><span class="NAME">this.form</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 58</span> </span><span class="NAME">container.parentNode.removeChild</span><span class="PUNC">(</span><span class="NAME">container</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 59</span>
|
||||
<span class='linenumber'> 60</span> </span><span class="COMM">// place dialog to center of window</span><span class="WHIT">
|
||||
<span class='linenumber'> 61</span> </span><span class="NAME">this.setPosition</span><span class="PUNC">(</span><span class="NAME">options.position</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 62</span>
|
||||
<span class='linenumber'> 63</span> </span><span class="COMM">// give focus</span><span class="WHIT">
|
||||
<span class='linenumber'> 64</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">elementToFocus</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.form.getElementsByClassName</span><span class="PUNC">(</span><span class="STRN">'initialFocus'</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 65</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">elementToFocus.length</span><span class="WHIT"> </span><span class="PUNC">></span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="NAME">elementToFocus</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">focus</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 66</span>
|
||||
<span class='linenumber'> 67</span> </span><span class="COMM">// handle cancelOnEsc option</span><span class="WHIT">
|
||||
<span class='linenumber'> 68</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">options.cancelOnEsc</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 69</span> </span><span class="NAME">Event.observe</span><span class="PUNC">(</span><span class="NAME">this.form</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'keydown'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">e</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 70</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">e.keyCode</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NUMB">27</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 71</span> </span><span class="NAME">this.onCloseHandler</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 72</span> </span><span class="NAME">this.close</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 73</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 74</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 75</span> </span><span class="PUNC">}</span><span class="PUNC">.</span><span class="NAME">bind</span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 76</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 77</span>
|
||||
<span class='linenumber'> 78</span> </span><span class="NAME">this.onLoadHandler</span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 79</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 80</span> </span><span class="NAME">close</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 81</span> </span><span class="NAME">this.form.parentNode.removeChild</span><span class="PUNC">(</span><span class="NAME">this.form</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 82</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 83</span> </span><span class="NAME">setPosition</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">target</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 84</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">targetElement</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 85</span>
|
||||
<span class='linenumber'> 86</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">target</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">'centerOfWindow'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 87</span> </span><span class="NAME">targetElement</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">document.documentElement</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 88</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">target</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">'centerOfEditor'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 89</span> </span><span class="NAME">targetElement</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.xed.getDoc</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">[</span><span class="NAME">xq.Browser.isTrident</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="STRN">"body"</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">"documentElement"</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 90</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">target</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">'nearbyCaret'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 91</span> </span><span class="KEYW">throw</span><span class="WHIT"> </span><span class="STRN">"Not implemented yet"</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 92</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 93</span> </span><span class="KEYW">throw</span><span class="WHIT"> </span><span class="STRN">"Invalid argument: "</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">target</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 94</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 95</span>
|
||||
<span class='linenumber'> 96</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">targetWidth</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">targetElement.clientWidth</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 97</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">targetHeight</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">targetElement.clientHeight</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 98</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">dialogWidth</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.form.clientWidth</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 99</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">dialogHeight</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.form.clientHeight</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>100</span>
|
||||
<span class='linenumber'>101</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">x</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">parseInt</span><span class="PUNC">(</span><span class="PUNC">(</span><span class="NAME">targetWidth</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NAME">dialogWidth</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="REGX">/ 2);
|
||||
<span class='linenumber'>102</span> var y = parseInt((targetHeight - dialogHeight) /</span><span class="WHIT"> </span><span class="NUMB">2</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>103</span>
|
||||
<span class='linenumber'>104</span> </span><span class="NAME">this.form.style.left</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">x</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">"px"</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>105</span> </span><span class="NAME">this.form.style.top</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">y</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">"px"</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>106</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>107</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="WHIT">
|
||||
<span class='linenumber'>108</span>
|
||||
<span class='linenumber'>109</span>
|
||||
<span class='linenumber'>110</span>
|
||||
<span class='linenumber'>111</span> </span><span class="NAME">xq.controls.QuickSearchDialog</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Class.create</span><span class="PUNC">(</span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>112</span> </span><span class="COMM">/**
|
||||
<span class='linenumber'>113</span> * @constructor
|
||||
<span class='linenumber'>114</span> */</span><span class="WHIT">
|
||||
<span class='linenumber'>115</span> </span><span class="NAME">initialize</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">xed</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">param</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>116</span> </span><span class="NAME">this.xed</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">xed</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>117</span>
|
||||
<span class='linenumber'>118</span> </span><span class="NAME">this.rdom</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">xq.RichDom.createInstance</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>119</span> </span><span class="NAME">this.rdom.setRoot</span><span class="PUNC">(</span><span class="NAME">document.body</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>120</span>
|
||||
<span class='linenumber'>121</span> </span><span class="NAME">this.param</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">param</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>122</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">this.param.renderItem</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="NAME">this.param.renderItem</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">item</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>123</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.rdom.getInnerText</span><span class="PUNC">(</span><span class="NAME">item</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>124</span> </span><span class="PUNC">}</span><span class="PUNC">.</span><span class="NAME">bind</span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>125</span>
|
||||
<span class='linenumber'>126</span> </span><span class="NAME">this.container</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>127</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>128</span>
|
||||
<span class='linenumber'>129</span> </span><span class="NAME">getQuery</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>130</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">this.container</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="STRN">""</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>131</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this._getInputField</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">value</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>132</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>133</span>
|
||||
<span class='linenumber'>134</span> </span><span class="NAME">onSubmit</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">e</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>135</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">this.matchCount</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">></span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>136</span> </span><span class="NAME">this.param.onSelect</span><span class="PUNC">(</span><span class="NAME">this.xed</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">this.list</span><span class="PUNC">[</span><span class="NAME">this._getSelectedIndex</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>137</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>138</span>
|
||||
<span class='linenumber'>139</span> </span><span class="NAME">this.close</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>140</span> </span><span class="NAME">Event.stop</span><span class="PUNC">(</span><span class="NAME">e</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>141</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>142</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>143</span>
|
||||
<span class='linenumber'>144</span> </span><span class="NAME">onCancel</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">e</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>145</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">this.param.onCancel</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="NAME">this.param.onCancel</span><span class="PUNC">(</span><span class="NAME">this.xed</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>146</span> </span><span class="NAME">this.close</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>147</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>148</span>
|
||||
<span class='linenumber'>149</span> </span><span class="NAME">onBlur</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">e</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>150</span> </span><span class="COMM">// TODO: Ugly</span><span class="WHIT">
|
||||
<span class='linenumber'>151</span> </span><span class="NAME">setTimeout</span><span class="PUNC">(</span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="NAME">this.onCancel</span><span class="PUNC">(</span><span class="NAME">e</span><span class="PUNC">)</span><span class="PUNC">}</span><span class="PUNC">.</span><span class="NAME">bind</span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NUMB">400</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>152</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>153</span>
|
||||
<span class='linenumber'>154</span> </span><span class="NAME">onKey</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">e</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>155</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">esc</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">xq.Shortcut</span><span class="PUNC">(</span><span class="STRN">"ESC"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>156</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">enter</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">xq.Shortcut</span><span class="PUNC">(</span><span class="STRN">"ENTER"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>157</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">up</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">xq.Shortcut</span><span class="PUNC">(</span><span class="STRN">"UP"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>158</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">down</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">xq.Shortcut</span><span class="PUNC">(</span><span class="STRN">"DOWN"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>159</span>
|
||||
<span class='linenumber'>160</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">esc.matches</span><span class="PUNC">(</span><span class="NAME">e</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>161</span> </span><span class="NAME">this.onCancel</span><span class="PUNC">(</span><span class="NAME">e</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>162</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">enter.matches</span><span class="PUNC">(</span><span class="NAME">e</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>163</span> </span><span class="NAME">this.onSubmit</span><span class="PUNC">(</span><span class="NAME">e</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>164</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">up.matches</span><span class="PUNC">(</span><span class="NAME">e</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>165</span> </span><span class="NAME">this._moveSelectionUp</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>166</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">down.matches</span><span class="PUNC">(</span><span class="NAME">e</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>167</span> </span><span class="NAME">this._moveSelectionDown</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>168</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>169</span> </span><span class="NAME">this.updateList</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>170</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>171</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>172</span>
|
||||
<span class='linenumber'>173</span> </span><span class="NAME">onClick</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">e</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>174</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">target</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">e.srcElement</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">e.target</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>175</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">target.nodeName</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">"LI"</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>176</span>
|
||||
<span class='linenumber'>177</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">index</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this._getIndexOfLI</span><span class="PUNC">(</span><span class="NAME">target</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>178</span> </span><span class="NAME">this.param.onSelect</span><span class="PUNC">(</span><span class="NAME">this.xed</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">this.list</span><span class="PUNC">[</span><span class="NAME">index</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>179</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>180</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>181</span>
|
||||
<span class='linenumber'>182</span> </span><span class="NAME">onList</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">list</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>183</span> </span><span class="NAME">this.list</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">list</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>184</span> </span><span class="NAME">this.renderList</span><span class="PUNC">(</span><span class="NAME">list</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>185</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>186</span>
|
||||
<span class='linenumber'>187</span> </span><span class="NAME">updateList</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>188</span> </span><span class="NAME">window.setTimeout</span><span class="PUNC">(</span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>189</span> </span><span class="NAME">this.param.listProvider</span><span class="PUNC">(</span><span class="NAME">this.getQuery</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">this.xed</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">this.onList.bind</span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>190</span> </span><span class="PUNC">}</span><span class="PUNC">.</span><span class="NAME">bind</span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>191</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>192</span>
|
||||
<span class='linenumber'>193</span> </span><span class="NAME">renderList</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">list</span><span class="PUNC">)</span><span class="WHIT">
|
||||
<span class='linenumber'>194</span> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>195</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">ol</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this._getListContainer</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>196</span> </span><span class="NAME">ol.innerHTML</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="STRN">""</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>197</span>
|
||||
<span class='linenumber'>198</span> </span><span class="KEYW">for</span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">list.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>199</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">li</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.rdom.createElement</span><span class="PUNC">(</span><span class="STRN">'LI'</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>200</span> </span><span class="NAME">li.innerHTML</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.param.renderItem</span><span class="PUNC">(</span><span class="NAME">list</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>201</span> </span><span class="NAME">ol.appendChild</span><span class="PUNC">(</span><span class="NAME">li</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>202</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>203</span>
|
||||
<span class='linenumber'>204</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">ol.hasChildNodes</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>205</span> </span><span class="NAME">ol.firstChild.className</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="STRN">"selected"</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>206</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>207</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>208</span>
|
||||
<span class='linenumber'>209</span> </span><span class="NAME">show</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>210</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">this.container</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="NAME">this.container</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this._create</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>211</span>
|
||||
<span class='linenumber'>212</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">dialog</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.rdom.insertNodeAt</span><span class="PUNC">(</span><span class="NAME">this.container</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">this.rdom.getRoot</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"end"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>213</span> </span><span class="NAME">this.setPosition</span><span class="PUNC">(</span><span class="STRN">'centerOfEditor'</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>214</span> </span><span class="NAME">this.updateList</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>215</span> </span><span class="NAME">this.focus</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>216</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>217</span>
|
||||
<span class='linenumber'>218</span> </span><span class="NAME">close</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>219</span> </span><span class="NAME">this.rdom.deleteNode</span><span class="PUNC">(</span><span class="NAME">this.container</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>220</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>221</span>
|
||||
<span class='linenumber'>222</span> </span><span class="NAME">focus</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>223</span> </span><span class="NAME">this._getInputField</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">focus</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>224</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>225</span>
|
||||
<span class='linenumber'>226</span> </span><span class="NAME">setPosition</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">target</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>227</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">targetElement</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>228</span>
|
||||
<span class='linenumber'>229</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">target</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">'centerOfWindow'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>230</span> </span><span class="NAME">targetElement</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">document.documentElement</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>231</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">target</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">'centerOfEditor'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>232</span> </span><span class="NAME">targetElement</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.xed.getDoc</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">documentElement</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>233</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">target</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">'nearbyCaret'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>234</span> </span><span class="KEYW">throw</span><span class="WHIT"> </span><span class="STRN">"Not implemented yet"</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>235</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>236</span> </span><span class="KEYW">throw</span><span class="WHIT"> </span><span class="STRN">"Invalid argument: "</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">target</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>237</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>238</span>
|
||||
<span class='linenumber'>239</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">targetWidth</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">targetElement.clientWidth</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>240</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">targetHeight</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">targetElement.clientHeight</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>241</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">dialogWidth</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.container.clientWidth</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>242</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">dialogHeight</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.container.clientHeight</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>243</span>
|
||||
<span class='linenumber'>244</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">x</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">parseInt</span><span class="PUNC">(</span><span class="PUNC">(</span><span class="NAME">targetWidth</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NAME">dialogWidth</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="REGX">/ 2);
|
||||
<span class='linenumber'>245</span> var y = parseInt((targetHeight - dialogHeight) /</span><span class="WHIT"> </span><span class="NUMB">2</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>246</span> </span><span class="NAME">this.container.style.left</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">x</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">"px"</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>247</span> </span><span class="NAME">this.container.style.top</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">y</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">"px"</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>248</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>249</span>
|
||||
<span class='linenumber'>250</span> </span><span class="NAME">matchCount</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>251</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.list</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="NAME">this.list.length</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>252</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>253</span>
|
||||
<span class='linenumber'>254</span> </span><span class="NAME">_create</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>255</span> </span><span class="COMM">// make container</span><span class="WHIT">
|
||||
<span class='linenumber'>256</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">container</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.rdom.createElement</span><span class="PUNC">(</span><span class="STRN">"DIV"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>257</span> </span><span class="NAME">container.className</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="STRN">"xqQuickSearch"</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>258</span>
|
||||
<span class='linenumber'>259</span> </span><span class="COMM">// make title</span><span class="WHIT">
|
||||
<span class='linenumber'>260</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">this.param.title</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>261</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">title</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.rdom.createElement</span><span class="PUNC">(</span><span class="STRN">"H1"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>262</span> </span><span class="NAME">title.innerHTML</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.param.title</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>263</span> </span><span class="NAME">container.appendChild</span><span class="PUNC">(</span><span class="NAME">title</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>264</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>265</span>
|
||||
<span class='linenumber'>266</span> </span><span class="COMM">// make input field</span><span class="WHIT">
|
||||
<span class='linenumber'>267</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">inputWrapper</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.rdom.createElement</span><span class="PUNC">(</span><span class="STRN">"DIV"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>268</span> </span><span class="NAME">inputWrapper.className</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="STRN">"input"</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>269</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">form</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.rdom.createElement</span><span class="PUNC">(</span><span class="STRN">"FORM"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>270</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">input</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.rdom.createElement</span><span class="PUNC">(</span><span class="STRN">"INPUT"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>271</span> </span><span class="NAME">input.type</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="STRN">"text"</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>272</span> </span><span class="NAME">input.value</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="STRN">""</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>273</span> </span><span class="NAME">form.appendChild</span><span class="PUNC">(</span><span class="NAME">input</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>274</span> </span><span class="NAME">inputWrapper.appendChild</span><span class="PUNC">(</span><span class="NAME">form</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>275</span> </span><span class="NAME">container.appendChild</span><span class="PUNC">(</span><span class="NAME">inputWrapper</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>276</span>
|
||||
<span class='linenumber'>277</span> </span><span class="COMM">// make list</span><span class="WHIT">
|
||||
<span class='linenumber'>278</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">list</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.rdom.createElement</span><span class="PUNC">(</span><span class="STRN">"OL"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>279</span>
|
||||
<span class='linenumber'>280</span> </span><span class="NAME">Event.observe</span><span class="PUNC">(</span><span class="NAME">input</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'blur'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">this.onBlur.bindAsEventListener</span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>281</span> </span><span class="NAME">Event.observe</span><span class="PUNC">(</span><span class="NAME">input</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'keypress'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">this.onKey.bindAsEventListener</span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>282</span> </span><span class="NAME">Event.observe</span><span class="PUNC">(</span><span class="NAME">list</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'click'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">this.onClick.bindAsEventListener</span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>283</span> </span><span class="NAME">Event.observe</span><span class="PUNC">(</span><span class="NAME">form</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'submit'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">this.onSubmit.bindAsEventListener</span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>284</span> </span><span class="NAME">Event.observe</span><span class="PUNC">(</span><span class="NAME">form</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'reset'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">this.onCancel.bindAsEventListener</span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>285</span>
|
||||
<span class='linenumber'>286</span> </span><span class="NAME">container.appendChild</span><span class="PUNC">(</span><span class="NAME">list</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>287</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">container</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>288</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>289</span>
|
||||
<span class='linenumber'>290</span> </span><span class="NAME">_getInputField</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>291</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.container.getElementsByTagName</span><span class="PUNC">(</span><span class="STRN">'INPUT'</span><span class="PUNC">)</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>292</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>293</span>
|
||||
<span class='linenumber'>294</span> </span><span class="NAME">_getListContainer</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>295</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.container.getElementsByTagName</span><span class="PUNC">(</span><span class="STRN">'OL'</span><span class="PUNC">)</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>296</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>297</span>
|
||||
<span class='linenumber'>298</span> </span><span class="NAME">_getSelectedIndex</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>299</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">ol</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this._getListContainer</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>300</span> </span><span class="KEYW">for</span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">ol.childNodes.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>301</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">ol.childNodes</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">className</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">'selected'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>302</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>303</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>304</span>
|
||||
<span class='linenumber'>305</span> </span><span class="NAME">_getIndexOfLI</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">li</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>306</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">ol</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this._getListContainer</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>307</span> </span><span class="KEYW">for</span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">ol.childNodes.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>308</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">ol.childNodes</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">li</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>309</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>310</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>311</span>
|
||||
<span class='linenumber'>312</span> </span><span class="NAME">_moveSelectionUp</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>313</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">count</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.matchCount</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>314</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">count</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>315</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">index</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this._getSelectedIndex</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>316</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">ol</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this._getListContainer</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>317</span> </span><span class="NAME">ol.childNodes</span><span class="PUNC">[</span><span class="NAME">index</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">className</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="STRN">""</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>318</span>
|
||||
<span class='linenumber'>319</span> </span><span class="NAME">index</span><span class="PUNC">--</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>320</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">index</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="NAME">index</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">count</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NUMB">1</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>321</span>
|
||||
<span class='linenumber'>322</span> </span><span class="NAME">ol.childNodes</span><span class="PUNC">[</span><span class="NAME">index</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">className</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="STRN">"selected"</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>323</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>324</span>
|
||||
<span class='linenumber'>325</span> </span><span class="NAME">_moveSelectionDown</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>326</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">count</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.matchCount</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>327</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">count</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>328</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">index</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this._getSelectedIndex</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>329</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">ol</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this._getListContainer</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>330</span> </span><span class="NAME">ol.childNodes</span><span class="PUNC">[</span><span class="NAME">index</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">className</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="STRN">""</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>331</span>
|
||||
<span class='linenumber'>332</span> </span><span class="NAME">index</span><span class="PUNC">++</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>333</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">index</span><span class="WHIT"> </span><span class="PUNC">>=</span><span class="WHIT"> </span><span class="NAME">count</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="NAME">index</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>334</span>
|
||||
<span class='linenumber'>335</span> </span><span class="NAME">ol.childNodes</span><span class="PUNC">[</span><span class="NAME">index</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">className</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="STRN">"selected"</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>336</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>337</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span></pre></body></html>
|
||||
325
modules/editor/skins/xquared/doc/api/src_03.html
Normal file
|
|
@ -0,0 +1,325 @@
|
|||
<html><head><style>
|
||||
.KEYW {color: #933;}
|
||||
.COMM {color: #bbb; font-style: italic;}
|
||||
.NUMB {color: #393;}
|
||||
.STRN {color: #393;}
|
||||
.REGX {color: #339;}
|
||||
.linenumber {border-right: 1px dotted #666; color: #666; font-style: normal;}
|
||||
</style></head><body><pre><span class='linenumber'> 1</span> <span class="COMM">/**
|
||||
<span class='linenumber'> 2</span> * Provide various tree operations.
|
||||
<span class='linenumber'> 3</span> *
|
||||
<span class='linenumber'> 4</span> * TODO: Add specs
|
||||
<span class='linenumber'> 5</span> */</span><span class="WHIT">
|
||||
<span class='linenumber'> 6</span> </span><span class="NAME">xq.DomTree</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Class.create</span><span class="PUNC">(</span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 7</span> </span><span class="NAME">initialize</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 8</span> </span><span class="NAME">this._blockTags</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="STRN">"DIV"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"DD"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"LI"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"ADDRESS"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"CAPTION"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"DT"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"H1"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"H2"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"H3"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"H4"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"H5"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"H6"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"HR"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"P"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"BODY"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"BLOCKQUOTE"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"PRE"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"PARAM"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"DL"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"OL"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"UL"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"TABLE"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"THEAD"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"TBODY"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"TR"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"TH"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"TD"</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 9</span> </span><span class="NAME">this._blockContainerTags</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="STRN">"DIV"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"DD"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"LI"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"BODY"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"BLOCKQUOTE"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"UL"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"OL"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"DL"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"TABLE"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"THEAD"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"TBODY"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"TR"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"TH"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"TD"</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 10</span> </span><span class="NAME">this._listContainerTags</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="STRN">"OL"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"UL"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"DL"</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 11</span> </span><span class="NAME">this._tableCellTags</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="STRN">"TH"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"TD"</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 12</span> </span><span class="NAME">this._blockOnlyContainerTags</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="STRN">"BODY"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"BLOCKQUOTE"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"UL"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"OL"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"DL"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"TABLE"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"THEAD"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"TBODY"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"TR"</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 13</span> </span><span class="NAME">this._atomicTags</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="STRN">"IMG"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"OBJECT"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"BR"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"HR"</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 14</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 15</span>
|
||||
<span class='linenumber'> 16</span> </span><span class="NAME">getBlockTags</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 17</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this._blockTags</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 18</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 19</span>
|
||||
<span class='linenumber'> 20</span> </span><span class="COMM">/**
|
||||
<span class='linenumber'> 21</span> * Find common ancestor(parent) and his immediate children(left and right).
|
||||
<span class='linenumber'> 22</span> *
|
||||
<span class='linenumber'> 23</span> * A --- B -+- C -+- D -+- E
|
||||
<span class='linenumber'> 24</span> * |
|
||||
<span class='linenumber'> 25</span> * +- F -+- G
|
||||
<span class='linenumber'> 26</span> *
|
||||
<span class='linenumber'> 27</span> * For example:
|
||||
<span class='linenumber'> 28</span> * > findCommonAncestorAndImmediateChildrenOf("E", "G")
|
||||
<span class='linenumber'> 29</span> *
|
||||
<span class='linenumber'> 30</span> * will return
|
||||
<span class='linenumber'> 31</span> *
|
||||
<span class='linenumber'> 32</span> * > {parent:"B", left:"C", right:"F"}
|
||||
<span class='linenumber'> 33</span> */</span><span class="WHIT">
|
||||
<span class='linenumber'> 34</span> </span><span class="NAME">findCommonAncestorAndImmediateChildrenOf</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">left</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">right</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 35</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">left.parentNode</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">right.parentNode</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 36</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 37</span> </span><span class="NAME">left</span><span class="PUNC">:</span><span class="NAME">left</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 38</span> </span><span class="NAME">right</span><span class="PUNC">:</span><span class="NAME">right</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 39</span> </span><span class="NAME">parent</span><span class="PUNC">:</span><span class="NAME">left.parentNode</span><span class="WHIT">
|
||||
<span class='linenumber'> 40</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 41</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 42</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">parentsOfLeft</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.collectParentsOf</span><span class="PUNC">(</span><span class="NAME">left</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 43</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">parentsOfRight</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.collectParentsOf</span><span class="PUNC">(</span><span class="NAME">right</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 44</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">ca</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.getCommonAncestor</span><span class="PUNC">(</span><span class="NAME">parentsOfLeft</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">parentsOfRight</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 45</span>
|
||||
<span class='linenumber'> 46</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">leftAncestor</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">parentsOfLeft.find</span><span class="PUNC">(</span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">node</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">node.parentNode</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">ca</span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 47</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">rightAncestor</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">parentsOfRight.find</span><span class="PUNC">(</span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">node</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">node.parentNode</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">ca</span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 48</span>
|
||||
<span class='linenumber'> 49</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 50</span> </span><span class="NAME">left</span><span class="PUNC">:</span><span class="NAME">leftAncestor</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 51</span> </span><span class="NAME">right</span><span class="PUNC">:</span><span class="NAME">rightAncestor</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 52</span> </span><span class="NAME">parent</span><span class="PUNC">:</span><span class="NAME">ca</span><span class="WHIT">
|
||||
<span class='linenumber'> 53</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 54</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 55</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 56</span>
|
||||
<span class='linenumber'> 57</span> </span><span class="COMM">/**
|
||||
<span class='linenumber'> 58</span> * Find leaves at edge.
|
||||
<span class='linenumber'> 59</span> *
|
||||
<span class='linenumber'> 60</span> * A --- B -+- C -+- D -+- E
|
||||
<span class='linenumber'> 61</span> * |
|
||||
<span class='linenumber'> 62</span> * +- F -+- G
|
||||
<span class='linenumber'> 63</span> *
|
||||
<span class='linenumber'> 64</span> * For example:
|
||||
<span class='linenumber'> 65</span> * > getLeavesAtEdge("A")
|
||||
<span class='linenumber'> 66</span> *
|
||||
<span class='linenumber'> 67</span> * will return
|
||||
<span class='linenumber'> 68</span> *
|
||||
<span class='linenumber'> 69</span> * > ["E", "G"]
|
||||
<span class='linenumber'> 70</span> */</span><span class="WHIT">
|
||||
<span class='linenumber'> 71</span> </span><span class="NAME">getLeavesAtEdge</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 72</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">element.hasChildNodes</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="KEYW">null</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 73</span>
|
||||
<span class='linenumber'> 74</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">findLeft</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">el</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 75</span> </span><span class="KEYW">for</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">el.childNodes.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 76</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">el.childNodes</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">nodeType</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NUMB">1</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">this.isBlock</span><span class="PUNC">(</span><span class="NAME">el.childNodes</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">findLeft</span><span class="PUNC">(</span><span class="NAME">el.childNodes</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 77</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 78</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">el</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 79</span> </span><span class="PUNC">}</span><span class="PUNC">.</span><span class="NAME">bind</span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 80</span>
|
||||
<span class='linenumber'> 81</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">findRight</span><span class="PUNC">=</span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">el</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 82</span> </span><span class="KEYW">for</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">el.childNodes.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">--</span><span class="PUNC">;</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 83</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">el.childNodes</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">nodeType</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NUMB">1</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">this.isBlock</span><span class="PUNC">(</span><span class="NAME">el.childNodes</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">findRight</span><span class="PUNC">(</span><span class="NAME">el.childNodes</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 84</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 85</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">el</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 86</span> </span><span class="PUNC">}</span><span class="PUNC">.</span><span class="NAME">bind</span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 87</span>
|
||||
<span class='linenumber'> 88</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">left</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">findLeft</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 89</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">right</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">findRight</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 90</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="NAME">left</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">element</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">left</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">right</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">element</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">right</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 91</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 92</span>
|
||||
<span class='linenumber'> 93</span> </span><span class="NAME">getCommonAncestor</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">parents1</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">parents2</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 94</span> </span><span class="KEYW">for</span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">parents1.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 95</span> </span><span class="KEYW">for</span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">j</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">j</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">parents2.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">j</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 96</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">parents1</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">parents2</span><span class="PUNC">[</span><span class="NAME">j</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">parents1</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 97</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 98</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 99</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>100</span>
|
||||
<span class='linenumber'>101</span> </span><span class="NAME">collectParentsOf</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">node</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">includeSelf</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">exitCondition</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>102</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">parents</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>103</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">includeSelf</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="NAME">parents.push</span><span class="PUNC">(</span><span class="NAME">node</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>104</span>
|
||||
<span class='linenumber'>105</span> </span><span class="KEYW">while</span><span class="PUNC">(</span><span class="PUNC">(</span><span class="NAME">node</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">node.parentNode</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">node.nodeName</span><span class="WHIT"> </span><span class="PUNC">!=</span><span class="WHIT"> </span><span class="STRN">"HTML"</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="PUNC">!</span><span class="PUNC">(</span><span class="KEYW">typeof</span><span class="WHIT"> </span><span class="NAME">exitCondition</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">"function"</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">exitCondition</span><span class="PUNC">(</span><span class="NAME">node</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="NAME">parents.push</span><span class="PUNC">(</span><span class="NAME">node</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>106</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">parents</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>107</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>108</span>
|
||||
<span class='linenumber'>109</span> </span><span class="NAME">isDescendantOf</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">parent</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">child</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>110</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">parent.length</span><span class="WHIT"> </span><span class="PUNC">></span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>111</span> </span><span class="KEYW">for</span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">parent.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>112</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">this.isDescendantOf</span><span class="PUNC">(</span><span class="NAME">parent</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">child</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>113</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>114</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>115</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>116</span>
|
||||
<span class='linenumber'>117</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">parent</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">child</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>118</span>
|
||||
<span class='linenumber'>119</span> </span><span class="KEYW">while</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">child</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">child.parentNode</span><span class="PUNC">)</span><span class="WHIT">
|
||||
<span class='linenumber'>120</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">child</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">parent</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>121</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>122</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>123</span>
|
||||
<span class='linenumber'>124</span> </span><span class="COMM">/**
|
||||
<span class='linenumber'>125</span> * Perform tree walking (foreward)
|
||||
<span class='linenumber'>126</span> */</span><span class="WHIT">
|
||||
<span class='linenumber'>127</span> </span><span class="NAME">walkForward</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">node</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>128</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">node.hasChildNodes</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">node.firstChild</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>129</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">node.nextSibling</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">node.nextSibling</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>130</span>
|
||||
<span class='linenumber'>131</span> </span><span class="KEYW">while</span><span class="PUNC">(</span><span class="NAME">node</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">node.parentNode</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>132</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">node.nextSibling</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">node.nextSibling</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>133</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>134</span>
|
||||
<span class='linenumber'>135</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>136</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>137</span>
|
||||
<span class='linenumber'>138</span> </span><span class="COMM">/**
|
||||
<span class='linenumber'>139</span> * Perform tree walking (backward)
|
||||
<span class='linenumber'>140</span> */</span><span class="WHIT">
|
||||
<span class='linenumber'>141</span> </span><span class="NAME">walkBackward</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">node</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>142</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">node.previousSibling</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>143</span> </span><span class="NAME">node</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">node.previousSibling</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>144</span> </span><span class="KEYW">while</span><span class="PUNC">(</span><span class="NAME">node.hasChildNodes</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="NAME">node</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">node.lastChild</span><span class="PUNC">;</span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>145</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">node</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>146</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>147</span>
|
||||
<span class='linenumber'>148</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">node.parentNode</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>149</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>150</span>
|
||||
<span class='linenumber'>151</span> </span><span class="COMM">/**
|
||||
<span class='linenumber'>152</span> * Perform tree walking (to next siblings)
|
||||
<span class='linenumber'>153</span> */</span><span class="WHIT">
|
||||
<span class='linenumber'>154</span> </span><span class="NAME">walkNext</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">node</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">node.nextSibling</span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>155</span>
|
||||
<span class='linenumber'>156</span> </span><span class="COMM">/**
|
||||
<span class='linenumber'>157</span> * Perform tree walking (to next siblings)
|
||||
<span class='linenumber'>158</span> */</span><span class="WHIT">
|
||||
<span class='linenumber'>159</span> </span><span class="NAME">walkPrev</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">node</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">node.previousSibling</span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>160</span>
|
||||
<span class='linenumber'>161</span> </span><span class="COMM">/**
|
||||
<span class='linenumber'>162</span> * Returns true if target is followed by start
|
||||
<span class='linenumber'>163</span> */</span><span class="WHIT">
|
||||
<span class='linenumber'>164</span> </span><span class="NAME">checkTargetForward</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">start</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">target</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>165</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this._check</span><span class="PUNC">(</span><span class="NAME">start</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">this.walkForward</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">target</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>166</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>167</span>
|
||||
<span class='linenumber'>168</span> </span><span class="COMM">/**
|
||||
<span class='linenumber'>169</span> * Returns true if start is followed by target
|
||||
<span class='linenumber'>170</span> */</span><span class="WHIT">
|
||||
<span class='linenumber'>171</span> </span><span class="NAME">checkTargetBackward</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">start</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">target</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>172</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this._check</span><span class="PUNC">(</span><span class="NAME">start</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">this.walkBackward</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">target</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>173</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>174</span>
|
||||
<span class='linenumber'>175</span> </span><span class="NAME">findForward</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">start</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">condition</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">exitCondition</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>176</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this._find</span><span class="PUNC">(</span><span class="NAME">start</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">this.walkForward</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">condition</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">exitCondition</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>177</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>178</span>
|
||||
<span class='linenumber'>179</span> </span><span class="NAME">findBackward</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">start</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">condition</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">exitCondition</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>180</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this._find</span><span class="PUNC">(</span><span class="NAME">start</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">this.walkBackward</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">condition</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">exitCondition</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>181</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>182</span>
|
||||
<span class='linenumber'>183</span> </span><span class="COMM">/** @private */</span><span class="WHIT">
|
||||
<span class='linenumber'>184</span> </span><span class="NAME">_check</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">start</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">direction</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">target</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>185</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">start</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">target</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>186</span>
|
||||
<span class='linenumber'>187</span> </span><span class="KEYW">while</span><span class="PUNC">(</span><span class="NAME">start</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">direction</span><span class="PUNC">(</span><span class="NAME">start</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>188</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">start</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">target</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>189</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>190</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>191</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>192</span>
|
||||
<span class='linenumber'>193</span> </span><span class="COMM">/** @private */</span><span class="WHIT">
|
||||
<span class='linenumber'>194</span> </span><span class="NAME">_find</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">start</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">direction</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">condition</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">exitCondition</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>195</span> </span><span class="KEYW">while</span><span class="PUNC">(</span><span class="NAME">start</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">direction</span><span class="PUNC">(</span><span class="NAME">start</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>196</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">exitCondition</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">exitCondition</span><span class="PUNC">(</span><span class="NAME">start</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>197</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">condition</span><span class="PUNC">(</span><span class="NAME">start</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">start</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>198</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>199</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>200</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>201</span>
|
||||
<span class='linenumber'>202</span> </span><span class="COMM">/**
|
||||
<span class='linenumber'>203</span> * Walks Forward through DOM tree from start to end, and collects all nodes that matches with a filter.
|
||||
<span class='linenumber'>204</span> * If no filter provided, it just collects all nodes.
|
||||
<span class='linenumber'>205</span> *
|
||||
<span class='linenumber'>206</span> * @param function filter a filter function
|
||||
<span class='linenumber'>207</span> */</span><span class="WHIT">
|
||||
<span class='linenumber'>208</span> </span><span class="NAME">collectNodesBetween</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">start</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">end</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">filter</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>209</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">start</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">end</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="NAME">start</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">end</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">findAll</span><span class="PUNC">(</span><span class="NAME">filter</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>210</span>
|
||||
<span class='linenumber'>211</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">nodes</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.collectForward</span><span class="PUNC">(</span><span class="NAME">start</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">node</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">node</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">end</span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">filter</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>212</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="WHIT">
|
||||
<span class='linenumber'>213</span> </span><span class="NAME">start</span><span class="WHIT"> </span><span class="PUNC">!=</span><span class="WHIT"> </span><span class="NAME">end</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT">
|
||||
<span class='linenumber'>214</span> </span><span class="KEYW">typeof</span><span class="WHIT"> </span><span class="NAME">filter</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">"function"</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT">
|
||||
<span class='linenumber'>215</span> </span><span class="NAME">filter</span><span class="PUNC">(</span><span class="NAME">end</span><span class="PUNC">)</span><span class="WHIT">
|
||||
<span class='linenumber'>216</span> </span><span class="PUNC">)</span><span class="WHIT"> </span><span class="NAME">nodes.push</span><span class="PUNC">(</span><span class="NAME">end</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>217</span>
|
||||
<span class='linenumber'>218</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">nodes</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>219</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>220</span>
|
||||
<span class='linenumber'>221</span> </span><span class="NAME">collectForward</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">start</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">exitCondition</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">filter</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>222</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.collect</span><span class="PUNC">(</span><span class="NAME">start</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">this.walkForward</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">exitCondition</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">filter</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>223</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>224</span>
|
||||
<span class='linenumber'>225</span> </span><span class="NAME">collectBackward</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">start</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">exitCondition</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">filter</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>226</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.collect</span><span class="PUNC">(</span><span class="NAME">start</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">this.walkBackward</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">exitCondition</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">filter</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>227</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>228</span>
|
||||
<span class='linenumber'>229</span> </span><span class="NAME">collectNext</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">start</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">exitCondition</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">filter</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>230</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.collect</span><span class="PUNC">(</span><span class="NAME">start</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">this.walkNext</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">exitCondition</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">filter</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>231</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>232</span>
|
||||
<span class='linenumber'>233</span> </span><span class="NAME">collectPrev</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">start</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">exitCondition</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">filter</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>234</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.collect</span><span class="PUNC">(</span><span class="NAME">start</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">this.walkPrev</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">exitCondition</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">filter</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>235</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>236</span>
|
||||
<span class='linenumber'>237</span> </span><span class="NAME">collect</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">start</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">next</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">exitCondition</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">filter</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>238</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">nodes</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="NAME">start</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>239</span>
|
||||
<span class='linenumber'>240</span> </span><span class="KEYW">while</span><span class="PUNC">(</span><span class="KEYW">true</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>241</span> </span><span class="NAME">start</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">next</span><span class="PUNC">(</span><span class="NAME">start</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>242</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="WHIT">
|
||||
<span class='linenumber'>243</span> </span><span class="PUNC">(</span><span class="NAME">start</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT">
|
||||
<span class='linenumber'>244</span> </span><span class="PUNC">(</span><span class="KEYW">typeof</span><span class="WHIT"> </span><span class="NAME">exitCondition</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">"function"</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">exitCondition</span><span class="PUNC">(</span><span class="NAME">start</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT">
|
||||
<span class='linenumber'>245</span> </span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">break</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>246</span>
|
||||
<span class='linenumber'>247</span> </span><span class="NAME">nodes.push</span><span class="PUNC">(</span><span class="NAME">start</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>248</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>249</span>
|
||||
<span class='linenumber'>250</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="KEYW">typeof</span><span class="WHIT"> </span><span class="NAME">filter</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">"function"</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="NAME">nodes.findAll</span><span class="PUNC">(</span><span class="NAME">filter</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">nodes</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>251</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>252</span>
|
||||
<span class='linenumber'>253</span>
|
||||
<span class='linenumber'>254</span> </span><span class="NAME">hasBlocks</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>255</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">nodes</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">element.childNodes</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>256</span> </span><span class="KEYW">for</span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">nodes.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>257</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">this.isBlock</span><span class="PUNC">(</span><span class="NAME">nodes</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>258</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>259</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>260</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>261</span>
|
||||
<span class='linenumber'>262</span> </span><span class="NAME">hasMixedContents</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>263</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">this.isBlock</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>264</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">this.isBlockContainer</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>265</span>
|
||||
<span class='linenumber'>266</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">hasTextOrInline</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>267</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">hasBlock</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>268</span> </span><span class="KEYW">for</span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">element.childNodes.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>269</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">node</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">element.childNodes</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>270</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">hasTextOrInline</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">this.isTextOrInlineNode</span><span class="PUNC">(</span><span class="NAME">node</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="NAME">hasTextOrInline</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>271</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">hasBlock</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">this.isBlock</span><span class="PUNC">(</span><span class="NAME">node</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="NAME">hasBlock</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>272</span>
|
||||
<span class='linenumber'>273</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">hasTextOrInline</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">hasBlock</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">break</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>274</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>275</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">hasTextOrInline</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="PUNC">!</span><span class="NAME">hasBlock</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>276</span>
|
||||
<span class='linenumber'>277</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>278</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>279</span>
|
||||
<span class='linenumber'>280</span> </span><span class="NAME">isBlockOnlyContainer</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>281</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">element</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>282</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this._blockOnlyContainerTags.include</span><span class="PUNC">(</span><span class="KEYW">typeof</span><span class="WHIT"> </span><span class="NAME">element</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">'string'</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="NAME">element</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">element.nodeName</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>283</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>284</span>
|
||||
<span class='linenumber'>285</span> </span><span class="NAME">isTableCell</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>286</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">element</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>287</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this._tableCellTags.include</span><span class="PUNC">(</span><span class="KEYW">typeof</span><span class="WHIT"> </span><span class="NAME">element</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">'string'</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="NAME">element</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">element.nodeName</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>288</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>289</span>
|
||||
<span class='linenumber'>290</span> </span><span class="NAME">isBlockContainer</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>291</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">element</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>292</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this._blockContainerTags.include</span><span class="PUNC">(</span><span class="KEYW">typeof</span><span class="WHIT"> </span><span class="NAME">element</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">'string'</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="NAME">element</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">element.nodeName</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>293</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>294</span>
|
||||
<span class='linenumber'>295</span> </span><span class="NAME">isHeading</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>296</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">element</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>297</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="KEYW">typeof</span><span class="WHIT"> </span><span class="NAME">element</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">'string'</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="NAME">element</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">element.nodeName</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">match</span><span class="PUNC">(</span><span class="REGX">/H\d/</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>298</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>299</span>
|
||||
<span class='linenumber'>300</span> </span><span class="NAME">isBlock</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>301</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">element</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>302</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this._blockTags.include</span><span class="PUNC">(</span><span class="KEYW">typeof</span><span class="WHIT"> </span><span class="NAME">element</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">'string'</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="NAME">element</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">element.nodeName</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>303</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>304</span>
|
||||
<span class='linenumber'>305</span> </span><span class="NAME">isAtomic</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>306</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">element</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>307</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this._atomicTags.include</span><span class="PUNC">(</span><span class="KEYW">typeof</span><span class="WHIT"> </span><span class="NAME">element</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">'string'</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="NAME">element</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">element.nodeName</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>308</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>309</span>
|
||||
<span class='linenumber'>310</span> </span><span class="NAME">isListContainer</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>311</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">element</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>312</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this._listContainerTags.include</span><span class="PUNC">(</span><span class="KEYW">typeof</span><span class="WHIT"> </span><span class="NAME">element</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">'string'</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="NAME">element</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">element.nodeName</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>313</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>314</span>
|
||||
<span class='linenumber'>315</span> </span><span class="NAME">isTextOrInlineNode</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">node</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>316</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">node</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">node.nodeType</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NUMB">3</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="PUNC">!</span><span class="NAME">this.isBlock</span><span class="PUNC">(</span><span class="NAME">node</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>317</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>318</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span></pre></body></html>
|
||||
163
modules/editor/skins/xquared/doc/api/src_04.html
Normal file
|
|
@ -0,0 +1,163 @@
|
|||
<html><head><style>
|
||||
.KEYW {color: #933;}
|
||||
.COMM {color: #bbb; font-style: italic;}
|
||||
.NUMB {color: #393;}
|
||||
.STRN {color: #393;}
|
||||
.REGX {color: #339;}
|
||||
.linenumber {border-right: 1px dotted #666; color: #666; font-style: normal;}
|
||||
</style></head><body><pre><span class='linenumber'> 1</span> <span class="COMM">/**
|
||||
<span class='linenumber'> 2</span> * @fileOverview xq.EditHistory manages editing history and performs UNDO/REDO.
|
||||
<span class='linenumber'> 3</span> */</span><span class="WHIT">
|
||||
<span class='linenumber'> 4</span> </span><span class="NAME">xq.EditHistory</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Class.create</span><span class="PUNC">(</span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 5</span> </span><span class="COMM">/**
|
||||
<span class='linenumber'> 6</span> * Initializer
|
||||
<span class='linenumber'> 7</span> *
|
||||
<span class='linenumber'> 8</span> * @constructor
|
||||
<span class='linenumber'> 9</span> * @param {xq.RichDom} rdom RichDom instance
|
||||
<span class='linenumber'> 10</span> * @param {Number} [max] maximum UNDO buffer size(default value is 100).
|
||||
<span class='linenumber'> 11</span> */</span><span class="WHIT">
|
||||
<span class='linenumber'> 12</span> </span><span class="NAME">initialize</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">rdom</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">max</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 13</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">rdom</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">throw</span><span class="WHIT"> </span><span class="STRN">"IllegalArgumentException"</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 14</span>
|
||||
<span class='linenumber'> 15</span> </span><span class="NAME">this.disabled</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 16</span> </span><span class="NAME">this.max</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">max</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NUMB">100</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 17</span> </span><span class="NAME">this.rdom</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">rdom</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 18</span> </span><span class="NAME">this.root</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">rdom.getRoot</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 19</span> </span><span class="NAME">this.clear</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 20</span>
|
||||
<span class='linenumber'> 21</span> </span><span class="NAME">this.lastModified</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Date.get</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 22</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 23</span> </span><span class="NAME">getLastModifiedDate</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 24</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.lastModified</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 25</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 26</span> </span><span class="NAME">isUndoable</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 27</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.queue.length</span><span class="WHIT"> </span><span class="PUNC">></span><span class="WHIT"> </span><span class="NUMB">0</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">this.index</span><span class="WHIT"> </span><span class="PUNC">></span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 28</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 29</span> </span><span class="NAME">isRedoable</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 30</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.queue.length</span><span class="WHIT"> </span><span class="PUNC">></span><span class="WHIT"> </span><span class="NUMB">0</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">this.index</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">this.queue.length</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NUMB">1</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 31</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 32</span> </span><span class="NAME">disable</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 33</span> </span><span class="NAME">this.disabled</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 34</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 35</span> </span><span class="NAME">enable</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 36</span> </span><span class="NAME">this.disabled</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 37</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 38</span> </span><span class="NAME">undo</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 39</span> </span><span class="NAME">this.pushContent</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 40</span>
|
||||
<span class='linenumber'> 41</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">this.isUndoable</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 42</span> </span><span class="NAME">this.index</span><span class="PUNC">--</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 43</span> </span><span class="NAME">this.popContent</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 44</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 45</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 46</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 47</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 48</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 49</span> </span><span class="NAME">redo</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 50</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">this.isRedoable</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 51</span> </span><span class="NAME">this.index</span><span class="PUNC">++</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 52</span> </span><span class="NAME">this.popContent</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 53</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 54</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 55</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 56</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 57</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 58</span> </span><span class="NAME">onCommand</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 59</span> </span><span class="NAME">this.lastModified</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Date.get</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 60</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">this.disabled</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 61</span>
|
||||
<span class='linenumber'> 62</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.pushContent</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 63</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 64</span> </span><span class="NAME">onEvent</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">event</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 65</span> </span><span class="NAME">this.lastModified</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Date.get</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 66</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">this.disabled</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 67</span>
|
||||
<span class='linenumber'> 68</span> </span><span class="COMM">// ignore normal keys</span><span class="WHIT">
|
||||
<span class='linenumber'> 69</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="STRN">'keydown'</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">event.type</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="PUNC">!</span><span class="PUNC">(</span><span class="NAME">event.ctrlKey</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">event.metaKey</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 70</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="PUNC">[</span><span class="STRN">'keydown'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'keyup'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'keypress'</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">include</span><span class="PUNC">(</span><span class="NAME">event.type</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="PUNC">!</span><span class="NAME">event.ctrlKey</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="PUNC">!</span><span class="NAME">event.altKey</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="PUNC">!</span><span class="NAME">event.metaKey</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="PUNC">!</span><span class="PUNC">[</span><span class="NUMB">33</span><span class="PUNC">,</span><span class="NUMB">34</span><span class="PUNC">,</span><span class="NUMB">35</span><span class="PUNC">,</span><span class="NUMB">36</span><span class="PUNC">,</span><span class="NUMB">37</span><span class="PUNC">,</span><span class="NUMB">38</span><span class="PUNC">,</span><span class="NUMB">39</span><span class="PUNC">,</span><span class="NUMB">40</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">include</span><span class="PUNC">(</span><span class="NAME">event.keyCode</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 71</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="PUNC">[</span><span class="STRN">'keydown'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'keyup'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'keypress'</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">include</span><span class="PUNC">(</span><span class="NAME">event.type</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">event.ctrlKey</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">event.metaKey</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="NUMB">89</span><span class="PUNC">,</span><span class="NUMB">90</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">include</span><span class="PUNC">(</span><span class="NAME">event.keyCode</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 72</span>
|
||||
<span class='linenumber'> 73</span> </span><span class="COMM">// ignore ctrl/shift/alt/meta keys</span><span class="WHIT">
|
||||
<span class='linenumber'> 74</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="PUNC">[</span><span class="NUMB">16</span><span class="PUNC">,</span><span class="NUMB">17</span><span class="PUNC">,</span><span class="NUMB">18</span><span class="PUNC">,</span><span class="NUMB">224</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">include</span><span class="PUNC">(</span><span class="NAME">event.keyCode</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 75</span>
|
||||
<span class='linenumber'> 76</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.pushContent</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 77</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 78</span> </span><span class="NAME">popContent</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 79</span> </span><span class="NAME">this.lastModified</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Date.get</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 80</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">entry</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.queue</span><span class="PUNC">[</span><span class="NAME">this.index</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 81</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">entry.caret</span><span class="WHIT"> </span><span class="PUNC">></span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 82</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">html</span><span class="PUNC">=</span><span class="NAME">entry.html.substring</span><span class="PUNC">(</span><span class="NUMB">0</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">entry.caret</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">'<span id="caret_marker_00700"></span>'</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">entry.html.substring</span><span class="PUNC">(</span><span class="NAME">entry.caret</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 83</span> </span><span class="NAME">this.root.innerHTML</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">html</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 84</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 85</span> </span><span class="NAME">this.root.innerHTML</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">entry.html</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 86</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 87</span> </span><span class="NAME">this.restoreCaret</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 88</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 89</span> </span><span class="NAME">pushContent</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">ignoreCaret</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 90</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">xq.Browser.isTrident</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="PUNC">!</span><span class="NAME">ignoreCaret</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="PUNC">!</span><span class="NAME">this.rdom.hasFocus</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 91</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">this.rdom.getCurrentElement</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 92</span>
|
||||
<span class='linenumber'> 93</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">html</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.root.innerHTML</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 94</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">html</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">this.queue</span><span class="PUNC">[</span><span class="NAME">this.index</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="NAME">this.queue</span><span class="PUNC">[</span><span class="NAME">this.index</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">html</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 95</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">caret</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">ignoreCaret</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="NUMB">1</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">this.saveCaret</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 96</span>
|
||||
<span class='linenumber'> 97</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">this.queue.length</span><span class="WHIT"> </span><span class="PUNC">>=</span><span class="WHIT"> </span><span class="NAME">this.max</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 98</span> </span><span class="NAME">this.queue.shift</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 99</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>100</span> </span><span class="NAME">this.index</span><span class="PUNC">++</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>101</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>102</span>
|
||||
<span class='linenumber'>103</span> </span><span class="NAME">this.queue.splice</span><span class="PUNC">(</span><span class="NAME">this.index</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">this.queue.length</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NAME">this.index</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="NAME">html</span><span class="PUNC">:</span><span class="NAME">html</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">caret</span><span class="PUNC">:</span><span class="NAME">caret</span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>104</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>105</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>106</span> </span><span class="NAME">clear</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>107</span> </span><span class="NAME">this.index</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="NUMB">1</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>108</span> </span><span class="NAME">this.queue</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>109</span> </span><span class="NAME">this.pushContent</span><span class="PUNC">(</span><span class="KEYW">true</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>110</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>111</span> </span><span class="NAME">saveCaret</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>112</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">this.rdom.hasSelection</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>113</span>
|
||||
<span class='linenumber'>114</span> </span><span class="COMM">// FF on Mac has a caret problem with these lines. --2007/11/19</span><span class="WHIT">
|
||||
<span class='linenumber'>115</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">marker</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.rdom.pushMarker</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>116</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">str</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">xq.Browser.isTrident</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="STRN">'<SPAN class='</span><span class="PUNC">+</span><span class="NAME">marker.className</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'<span class="'</span><span class="PUNC">+</span><span class="NAME">marker.className</span><span class="PUNC">+</span><span class="STRN">'"'</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>117</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">caret</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.rdom.getRoot</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">innerHTML.indexOf</span><span class="PUNC">(</span><span class="NAME">str</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>118</span> </span><span class="NAME">this.rdom.popMarker</span><span class="PUNC">(</span><span class="KEYW">true</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>119</span>
|
||||
<span class='linenumber'>120</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">caret</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>121</span>
|
||||
<span class='linenumber'>122</span> </span><span class="COMM">/*
|
||||
<span class='linenumber'>123</span> // This is old code. It also has same problem.
|
||||
<span class='linenumber'>124</span>
|
||||
<span class='linenumber'>125</span> if(this.rdom.hasSelection()) return null;
|
||||
<span class='linenumber'>126</span>
|
||||
<span class='linenumber'>127</span> var bookmark = this.rdom.saveSelection();
|
||||
<span class='linenumber'>128</span> var marker = this.rdom.pushMarker();
|
||||
<span class='linenumber'>129</span>
|
||||
<span class='linenumber'>130</span> var str = xq.Browser.isTrident ? '<SPAN class='+marker.className : '<span class="'+marker.className+'"';
|
||||
<span class='linenumber'>131</span> var caret = this.rdom.getRoot().innerHTML.indexOf(str);
|
||||
<span class='linenumber'>132</span>
|
||||
<span class='linenumber'>133</span> this.rdom.popMarker();
|
||||
<span class='linenumber'>134</span> this.rdom.restoreSelection(bookmark);
|
||||
<span class='linenumber'>135</span>
|
||||
<span class='linenumber'>136</span> return caret;
|
||||
<span class='linenumber'>137</span> */</span><span class="WHIT">
|
||||
<span class='linenumber'>138</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>139</span> </span><span class="NAME">restoreCaret</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>140</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">marker</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.rdom.$</span><span class="PUNC">(</span><span class="STRN">'caret_marker_00700'</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>141</span>
|
||||
<span class='linenumber'>142</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">marker</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>143</span> </span><span class="NAME">this.rdom.selectElement</span><span class="PUNC">(</span><span class="NAME">marker</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>144</span> </span><span class="NAME">this.rdom.collapseSelection</span><span class="PUNC">(</span><span class="KEYW">false</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>145</span> </span><span class="NAME">this.rdom.deleteNode</span><span class="PUNC">(</span><span class="NAME">marker</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>146</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>147</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">node</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.rdom.tree.findForward</span><span class="PUNC">(</span><span class="NAME">this.rdom.getRoot</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">node</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>148</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.isBlock</span><span class="PUNC">(</span><span class="NAME">node</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="PUNC">!</span><span class="NAME">this.hasBlocks</span><span class="PUNC">(</span><span class="NAME">node</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>149</span> </span><span class="PUNC">}</span><span class="PUNC">.</span><span class="NAME">bind</span><span class="PUNC">(</span><span class="NAME">this.rdom.tree</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>150</span> </span><span class="NAME">this.rdom.selectElement</span><span class="PUNC">(</span><span class="NAME">node</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>151</span> </span><span class="NAME">this.rdom.collapseSelection</span><span class="PUNC">(</span><span class="KEYW">false</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>152</span>
|
||||
<span class='linenumber'>153</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>154</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>155</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>156</span> </span></pre></body></html>
|
||||
2216
modules/editor/skins/xquared/doc/api/src_05.html
Normal file
2262
modules/editor/skins/xquared/doc/api/src_06.html
Normal file
54
modules/editor/skins/xquared/doc/api/src_07.html
Normal file
|
|
@ -0,0 +1,54 @@
|
|||
<html><head><style>
|
||||
.KEYW {color: #933;}
|
||||
.COMM {color: #bbb; font-style: italic;}
|
||||
.NUMB {color: #393;}
|
||||
.STRN {color: #393;}
|
||||
.REGX {color: #339;}
|
||||
.linenumber {border-right: 1px dotted #666; color: #666; font-style: normal;}
|
||||
</style></head><body><pre><span class='linenumber'> 1</span> <span class="COMM">/**
|
||||
<span class='linenumber'> 2</span> * RichDom for Gecko
|
||||
<span class='linenumber'> 3</span> */</span><span class="WHIT">
|
||||
<span class='linenumber'> 4</span> </span><span class="NAME">xq.RichDomGecko</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Class.create</span><span class="PUNC">(</span><span class="NAME">xq.RichDomW3</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 5</span> </span><span class="NAME">makePlaceHolder</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 6</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">holder</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.createElement</span><span class="PUNC">(</span><span class="STRN">"BR"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 7</span> </span><span class="NAME">holder.setAttribute</span><span class="PUNC">(</span><span class="STRN">"type"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"_moz"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 8</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">holder</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 9</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 10</span>
|
||||
<span class='linenumber'> 11</span> </span><span class="NAME">makePlaceHolderString</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 12</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="STRN">'<br type="_moz" />'</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 13</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 14</span>
|
||||
<span class='linenumber'> 15</span> </span><span class="NAME">makeEmptyParagraph</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 16</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.createElementFromHtml</span><span class="PUNC">(</span><span class="STRN">'<p><br type="_moz" /></p>'</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 17</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 18</span>
|
||||
<span class='linenumber'> 19</span> </span><span class="NAME">isPlaceHolder</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">node</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 20</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">node.nodeType</span><span class="WHIT"> </span><span class="PUNC">!=</span><span class="WHIT"> </span><span class="NUMB">1</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 21</span>
|
||||
<span class='linenumber'> 22</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">typeMatches</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">node.nodeName</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">"BR"</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">node.getAttribute</span><span class="PUNC">(</span><span class="STRN">"type"</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">"_moz"</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 23</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">typeMatches</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 24</span>
|
||||
<span class='linenumber'> 25</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">positionMatches</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">node.nodeName</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">"BR"</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="PUNC">!</span><span class="NAME">this.getNextSibling</span><span class="PUNC">(</span><span class="NAME">node</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 26</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">positionMatches</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 27</span>
|
||||
<span class='linenumber'> 28</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 29</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 30</span>
|
||||
<span class='linenumber'> 31</span> </span><span class="NAME">selectElement</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">entireElement</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 32</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">element</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">throw</span><span class="WHIT"> </span><span class="STRN">"[element] is null"</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 33</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">element.nodeType</span><span class="WHIT"> </span><span class="PUNC">!=</span><span class="WHIT"> </span><span class="NUMB">1</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">throw</span><span class="WHIT"> </span><span class="STRN">"[element] is not an element"</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 34</span>
|
||||
<span class='linenumber'> 35</span> </span><span class="COMM">// required to avoid Windows FF selection bug.</span><span class="WHIT">
|
||||
<span class='linenumber'> 36</span> </span><span class="KEYW">try</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 37</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">xq.Browser.isMac</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="NAME">this.doc.execCommand</span><span class="PUNC">(</span><span class="STRN">"SelectAll"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 38</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">catch</span><span class="PUNC">(</span><span class="NAME">ignored</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 39</span>
|
||||
<span class='linenumber'> 40</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">entireElement</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 41</span> </span><span class="NAME">this.rng</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">selectNode</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 42</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 43</span> </span><span class="NAME">this.rng</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">selectNodeContents</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 44</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 45</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 46</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 47</span> </span></pre></body></html>
|
||||
369
modules/editor/skins/xquared/doc/api/src_08.html
Normal file
|
|
@ -0,0 +1,369 @@
|
|||
<html><head><style>
|
||||
.KEYW {color: #933;}
|
||||
.COMM {color: #bbb; font-style: italic;}
|
||||
.NUMB {color: #393;}
|
||||
.STRN {color: #393;}
|
||||
.REGX {color: #339;}
|
||||
.linenumber {border-right: 1px dotted #666; color: #666; font-style: normal;}
|
||||
</style></head><body><pre><span class='linenumber'> 1</span> <span class="COMM">/**
|
||||
<span class='linenumber'> 2</span> * RichDom for Internet Explorer 6 and 7
|
||||
<span class='linenumber'> 3</span> */</span><span class="WHIT">
|
||||
<span class='linenumber'> 4</span> </span><span class="NAME">xq.RichDomTrident</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Class.create</span><span class="PUNC">(</span><span class="NAME">xq.RichDom</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 5</span> </span><span class="NAME">makePlaceHolder</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 6</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.createTextNode</span><span class="PUNC">(</span><span class="STRN">" "</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 7</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 8</span>
|
||||
<span class='linenumber'> 9</span> </span><span class="NAME">makePlaceHolderString</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 10</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="STRN">' '</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 11</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 12</span>
|
||||
<span class='linenumber'> 13</span> </span><span class="NAME">makeEmptyParagraph</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 14</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.createElementFromHtml</span><span class="PUNC">(</span><span class="STRN">"<p> </p>"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 15</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 16</span>
|
||||
<span class='linenumber'> 17</span> </span><span class="NAME">isPlaceHolder</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">node</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 18</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 19</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 20</span>
|
||||
<span class='linenumber'> 21</span> </span><span class="NAME">getOuterHTML</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 22</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">element.outerHTML</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 23</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 24</span>
|
||||
<span class='linenumber'> 25</span> </span><span class="NAME">insertNode</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">node</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 26</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">this.hasSelection</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="NAME">this.collapseSelection</span><span class="PUNC">(</span><span class="KEYW">true</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 27</span>
|
||||
<span class='linenumber'> 28</span> </span><span class="NAME">this.rng</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">pasteHTML</span><span class="PUNC">(</span><span class="STRN">'<span id="xquared_temp"></span>'</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 29</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">marker</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.$</span><span class="PUNC">(</span><span class="STRN">'xquared_temp'</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 30</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">node.id</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">'xquared_temp'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">marker</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 31</span>
|
||||
<span class='linenumber'> 32</span> </span><span class="NAME">marker.replaceNode</span><span class="PUNC">(</span><span class="NAME">node</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 33</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">node</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 34</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 35</span>
|
||||
<span class='linenumber'> 36</span> </span><span class="NAME">removeTrailingWhitespace</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">block</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 37</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">block</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 38</span>
|
||||
<span class='linenumber'> 39</span> </span><span class="COMM">// TODO: reimplement to handle atomic tags and so on. (use DomTree)</span><span class="WHIT">
|
||||
<span class='linenumber'> 40</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">this.tree.isBlockContainer</span><span class="PUNC">(</span><span class="NAME">block</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 41</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">this.isEmptyBlock</span><span class="PUNC">(</span><span class="NAME">block</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 42</span>
|
||||
<span class='linenumber'> 43</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">text</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">block.innerText</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 44</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">lastCharCode</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">text.charCodeAt</span><span class="PUNC">(</span><span class="NAME">text.length</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NUMB">1</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 45</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">text.length</span><span class="WHIT"> </span><span class="PUNC"><=</span><span class="WHIT"> </span><span class="NUMB">1</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="PUNC">!</span><span class="PUNC">[</span><span class="NUMB">32</span><span class="PUNC">,</span><span class="NUMB">160</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">include</span><span class="PUNC">(</span><span class="NAME">lastCharCode</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 46</span>
|
||||
<span class='linenumber'> 47</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">node</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">block</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 48</span>
|
||||
<span class='linenumber'> 49</span> </span><span class="KEYW">while</span><span class="PUNC">(</span><span class="NAME">node</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">node.nodeType</span><span class="WHIT"> </span><span class="PUNC">!=</span><span class="WHIT"> </span><span class="NUMB">3</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="NAME">node</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">node.lastChild</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 50</span>
|
||||
<span class='linenumber'> 51</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">node</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 52</span>
|
||||
<span class='linenumber'> 53</span> </span><span class="COMM">// DO NOT REMOVE OR MODIFY FOLLOWING CODE:</span><span class="WHIT">
|
||||
<span class='linenumber'> 54</span> </span><span class="COMM">//</span><span class="WHIT">
|
||||
<span class='linenumber'> 55</span> </span><span class="COMM">// Modifying following code crash IE7</span><span class="WHIT">
|
||||
<span class='linenumber'> 56</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">nodeValue</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">node.nodeValue</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 57</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">nodeValue.length</span><span class="WHIT"> </span><span class="PUNC"><=</span><span class="WHIT"> </span><span class="NUMB">1</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 58</span> </span><span class="NAME">this.deleteNode</span><span class="PUNC">(</span><span class="NAME">node</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 59</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 60</span> </span><span class="NAME">node.nodeValue</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">nodeValue.substring</span><span class="PUNC">(</span><span class="NUMB">0</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">nodeValue.length</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NUMB">1</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 61</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 62</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 63</span>
|
||||
<span class='linenumber'> 64</span> </span><span class="NAME">correctEmptyElement</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 65</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">element</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">element.nodeType</span><span class="WHIT"> </span><span class="PUNC">!=</span><span class="WHIT"> </span><span class="NUMB">1</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">this.tree.isAtomic</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 66</span>
|
||||
<span class='linenumber'> 67</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">element.firstChild</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 68</span> </span><span class="NAME">this.correctEmptyElement</span><span class="PUNC">(</span><span class="NAME">element.firstChild</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 69</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 70</span> </span><span class="NAME">element.innerHTML</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="STRN">" "</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 71</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 72</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 73</span>
|
||||
<span class='linenumber'> 74</span> </span><span class="NAME">copyAttributes</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">from</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">to</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">copyId</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 75</span> </span><span class="NAME">to.mergeAttributes</span><span class="PUNC">(</span><span class="NAME">from</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">!</span><span class="NAME">copyId</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 76</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 77</span>
|
||||
<span class='linenumber'> 78</span> </span><span class="NAME">correctParagraph</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 79</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">this.hasFocus</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 80</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">this.hasSelection</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 81</span>
|
||||
<span class='linenumber'> 82</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">block</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.getCurrentElement</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 83</span>
|
||||
<span class='linenumber'> 84</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">block.nodeName</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">"BODY"</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 85</span> </span><span class="COMM">// check for atomic block element such as HR</span><span class="WHIT">
|
||||
<span class='linenumber'> 86</span> </span><span class="NAME">block</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.insertNode</span><span class="PUNC">(</span><span class="NAME">this.makeEmptyParagraph</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 87</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">next</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">block.nextSibling</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 88</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">this.tree.isAtomic</span><span class="PUNC">(</span><span class="NAME">next</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 89</span> </span><span class="NAME">block</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.insertNodeAt</span><span class="PUNC">(</span><span class="NAME">block</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">next</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"after"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 90</span> </span><span class="NAME">this.placeCaretAtStartOf</span><span class="PUNC">(</span><span class="NAME">block</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 91</span>
|
||||
<span class='linenumber'> 92</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">nextBlock</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.tree.findForward</span><span class="PUNC">(</span><span class="WHIT">
|
||||
<span class='linenumber'> 93</span> </span><span class="NAME">block</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 94</span> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">node</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.tree.isBlock</span><span class="PUNC">(</span><span class="NAME">node</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="PUNC">!</span><span class="NAME">this.tree.isBlockOnlyContainer</span><span class="PUNC">(</span><span class="NAME">node</span><span class="PUNC">)</span><span class="PUNC">}</span><span class="PUNC">.</span><span class="NAME">bind</span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">)</span><span class="WHIT">
|
||||
<span class='linenumber'> 95</span> </span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 96</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">nextBlock</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 97</span> </span><span class="NAME">this.deleteNode</span><span class="PUNC">(</span><span class="NAME">block</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 98</span> </span><span class="NAME">this.placeCaretAtStartOf</span><span class="PUNC">(</span><span class="NAME">nextBlock</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 99</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>100</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>101</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>102</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">nextBlock</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.tree.findForward</span><span class="PUNC">(</span><span class="WHIT">
|
||||
<span class='linenumber'>103</span> </span><span class="NAME">block</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>104</span> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">node</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.tree.isBlock</span><span class="PUNC">(</span><span class="NAME">node</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="PUNC">!</span><span class="NAME">this.tree.isBlockOnlyContainer</span><span class="PUNC">(</span><span class="NAME">node</span><span class="PUNC">)</span><span class="PUNC">}</span><span class="PUNC">.</span><span class="NAME">bind</span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">)</span><span class="WHIT">
|
||||
<span class='linenumber'>105</span> </span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>106</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">nextBlock</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>107</span> </span><span class="NAME">this.deleteNode</span><span class="PUNC">(</span><span class="NAME">block</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>108</span> </span><span class="NAME">this.placeCaretAtStartOf</span><span class="PUNC">(</span><span class="NAME">nextBlock</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>109</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>110</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>111</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>112</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>113</span> </span><span class="NAME">block</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.getCurrentBlockElement</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>114</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">block.nodeType</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NUMB">3</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="NAME">block</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">block.parentNode</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>115</span>
|
||||
<span class='linenumber'>116</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">this.tree.hasMixedContents</span><span class="PUNC">(</span><span class="NAME">block</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>117</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">marker</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.pushMarker</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>118</span> </span><span class="NAME">this.wrapAllInlineOrTextNodesAs</span><span class="PUNC">(</span><span class="STRN">"P"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">block</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>119</span> </span><span class="NAME">this.popMarker</span><span class="PUNC">(</span><span class="KEYW">true</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>120</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>121</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="PUNC">(</span><span class="NAME">this.tree.isTextOrInlineNode</span><span class="PUNC">(</span><span class="NAME">block.previousSibling</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">this.tree.isTextOrInlineNode</span><span class="PUNC">(</span><span class="NAME">block.nextSibling</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">this.tree.hasMixedContents</span><span class="PUNC">(</span><span class="NAME">block.parentNode</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>122</span> </span><span class="COMM">// IE?<3F>서??Blockê³?Inline/Textê°??¸ì ‘??경우 getCurrentElement ?±ì<C2B1>´ ?¤ìž‘?™í•œ??</span><span class="WHIT">
|
||||
<span class='linenumber'>123</span> </span><span class="COMM">// ?°ë<C2B0>¼???„재 Block 주ë?까ì? ?œë²ˆ???¡ì•„주어???œë‹¤.</span><span class="WHIT">
|
||||
<span class='linenumber'>124</span> </span><span class="NAME">this.wrapAllInlineOrTextNodesAs</span><span class="PUNC">(</span><span class="STRN">"P"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">block.parentNode</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>125</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>126</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>127</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>128</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>129</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>130</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>131</span>
|
||||
<span class='linenumber'>132</span>
|
||||
<span class='linenumber'>133</span>
|
||||
<span class='linenumber'>134</span> </span><span class="COMM">//////</span><span class="WHIT">
|
||||
<span class='linenumber'>135</span> </span><span class="COMM">// Commands</span><span class="WHIT">
|
||||
<span class='linenumber'>136</span> </span><span class="NAME">execCommand</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">commandId</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">param</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>137</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.doc.execCommand</span><span class="PUNC">(</span><span class="NAME">commandId</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">param</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>138</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>139</span>
|
||||
<span class='linenumber'>140</span> </span><span class="NAME">applyBackgroundColor</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">color</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>141</span> </span><span class="NAME">this.execCommand</span><span class="PUNC">(</span><span class="STRN">"BackColor"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">color</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>142</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>143</span>
|
||||
<span class='linenumber'>144</span> </span><span class="NAME">applyEmphasis</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>145</span> </span><span class="COMM">// Generate <i> tag. It will be replaced with <emphasis> tag during cleanup phase.</span><span class="WHIT">
|
||||
<span class='linenumber'>146</span> </span><span class="NAME">this.execCommand</span><span class="PUNC">(</span><span class="STRN">"Italic"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>147</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>148</span> </span><span class="NAME">applyStrongEmphasis</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>149</span> </span><span class="COMM">// Generate <b> tag. It will be replaced with <strong> tag during cleanup phase.</span><span class="WHIT">
|
||||
<span class='linenumber'>150</span> </span><span class="NAME">this.execCommand</span><span class="PUNC">(</span><span class="STRN">"Bold"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>151</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>152</span> </span><span class="NAME">applyStrike</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>153</span> </span><span class="COMM">// Generate <strike> tag. It will be replaced with <style class="strike"> tag during cleanup phase.</span><span class="WHIT">
|
||||
<span class='linenumber'>154</span> </span><span class="NAME">this.execCommand</span><span class="PUNC">(</span><span class="STRN">"strikethrough"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>155</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>156</span> </span><span class="NAME">applyUnderline</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>157</span> </span><span class="COMM">// Generate <u> tag. It will be replaced with <em class="underline"> tag during cleanup phase.</span><span class="WHIT">
|
||||
<span class='linenumber'>158</span> </span><span class="NAME">this.execCommand</span><span class="PUNC">(</span><span class="STRN">"underline"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>159</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>160</span> </span><span class="NAME">applyRemoveFormat</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>161</span> </span><span class="NAME">this.execCommand</span><span class="PUNC">(</span><span class="STRN">"RemoveFormat"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>162</span> </span><span class="NAME">this.execCommand</span><span class="PUNC">(</span><span class="STRN">"Unlink"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>163</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>164</span> </span><span class="NAME">execHeading</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">level</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>165</span> </span><span class="NAME">this.execCommand</span><span class="PUNC">(</span><span class="STRN">"FormatBlock"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"<H"</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">level</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">">"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>166</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>167</span>
|
||||
<span class='linenumber'>168</span>
|
||||
<span class='linenumber'>169</span>
|
||||
<span class='linenumber'>170</span> </span><span class="COMM">//////</span><span class="WHIT">
|
||||
<span class='linenumber'>171</span> </span><span class="COMM">// Focus/Caret/Selection</span><span class="WHIT">
|
||||
<span class='linenumber'>172</span>
|
||||
<span class='linenumber'>173</span> </span><span class="NAME">focus</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>174</span> </span><span class="NAME">this.win.focus</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>175</span>
|
||||
<span class='linenumber'>176</span> </span><span class="COMM">// ?´ê²Œ ?†ìœ¼ë©?초기??caret??P ë°–ì—<C3AC> ?„치?˜ë©´?? // getCurrentElementë¥??˜ë©´ Pë¥?리턴?˜ëŠ” 기ì<C2B0>´???„ìƒ<C3AC>??ë°œìƒ<C3AC>.</span><span class="WHIT">
|
||||
<span class='linenumber'>177</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">this._focusedBefore</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>178</span> </span><span class="NAME">this.correctParagraph</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>179</span> </span><span class="NAME">this.placeCaretAtStartOf</span><span class="PUNC">(</span><span class="NAME">this.getCurrentBlockElement</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>180</span> </span><span class="NAME">this._focusedBefore</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>181</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>182</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>183</span>
|
||||
<span class='linenumber'>184</span> </span><span class="NAME">sel</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>185</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.doc.selection</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>186</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>187</span>
|
||||
<span class='linenumber'>188</span> </span><span class="NAME">rng</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>189</span> </span><span class="KEYW">try</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>190</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">sel</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.sel</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>191</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">sel</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">sel.createRange</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>192</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">catch</span><span class="PUNC">(</span><span class="NAME">ignored</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>193</span> </span><span class="COMM">// IE often fails</span><span class="WHIT">
|
||||
<span class='linenumber'>194</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>195</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>196</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>197</span>
|
||||
<span class='linenumber'>198</span> </span><span class="NAME">hasSelection</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>199</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">selectionType</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.sel</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">type.toLowerCase</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>200</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="STRN">"none"</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">selectionType</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>201</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="STRN">"text"</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">selectionType</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">this.getSelectionAsHtml</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">length</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>202</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>203</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>204</span> </span><span class="NAME">deleteSelection</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>205</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">this.getSelectionAsText</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">!=</span><span class="WHIT"> </span><span class="STRN">""</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="NAME">this.sel</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">clear</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>206</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>207</span>
|
||||
<span class='linenumber'>208</span> </span><span class="NAME">placeCaretAtStartOf</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>209</span> </span><span class="COMM">// If there's no empty span, caret sometimes moves into a previous node.</span><span class="WHIT">
|
||||
<span class='linenumber'>210</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">ph</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.insertNodeAt</span><span class="PUNC">(</span><span class="NAME">this.createElement</span><span class="PUNC">(</span><span class="STRN">"SPAN"</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">element</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"start"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>211</span> </span><span class="NAME">this.selectElement</span><span class="PUNC">(</span><span class="NAME">ph</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>212</span> </span><span class="NAME">this.collapseSelection</span><span class="PUNC">(</span><span class="KEYW">false</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>213</span> </span><span class="NAME">this.deleteNode</span><span class="PUNC">(</span><span class="NAME">ph</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>214</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>215</span>
|
||||
<span class='linenumber'>216</span> </span><span class="NAME">selectElement</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">entireElement</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>217</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">element</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">throw</span><span class="WHIT"> </span><span class="STRN">"[element] is null"</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>218</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">element.nodeType</span><span class="WHIT"> </span><span class="PUNC">!=</span><span class="WHIT"> </span><span class="NUMB">1</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">throw</span><span class="WHIT"> </span><span class="STRN">"[element] is not an element"</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>219</span>
|
||||
<span class='linenumber'>220</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">rng</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.rng</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>221</span> </span><span class="NAME">rng.moveToElementText</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>222</span> </span><span class="NAME">rng.select</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>223</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>224</span>
|
||||
<span class='linenumber'>225</span> </span><span class="NAME">selectBlocksBetween</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">start</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">end</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>226</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">rng</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.rng</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>227</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">rngTemp</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.rng</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>228</span>
|
||||
<span class='linenumber'>229</span> </span><span class="NAME">rngTemp.moveToElementText</span><span class="PUNC">(</span><span class="NAME">start</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>230</span> </span><span class="NAME">rng.setEndPoint</span><span class="PUNC">(</span><span class="STRN">"StartToStart"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">rngTemp</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>231</span>
|
||||
<span class='linenumber'>232</span> </span><span class="NAME">rngTemp.moveToElementText</span><span class="PUNC">(</span><span class="NAME">end</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>233</span> </span><span class="NAME">rng.setEndPoint</span><span class="PUNC">(</span><span class="STRN">"EndToEnd"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">rngTemp</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>234</span>
|
||||
<span class='linenumber'>235</span> </span><span class="NAME">rng.select</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>236</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>237</span>
|
||||
<span class='linenumber'>238</span> </span><span class="NAME">collapseSelection</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">toStart</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>239</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">rng</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.rng</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>240</span> </span><span class="NAME">rng.collapse</span><span class="PUNC">(</span><span class="NAME">toStart</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>241</span> </span><span class="NAME">rng.select</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>242</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>243</span>
|
||||
<span class='linenumber'>244</span> </span><span class="NAME">getSelectionAsHtml</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>245</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">rng</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.rng</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT">
|
||||
<span class='linenumber'>246</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">rng</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">rng.htmlText</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="NAME">rng.htmlText</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">""</span><span class="WHIT">
|
||||
<span class='linenumber'>247</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>248</span>
|
||||
<span class='linenumber'>249</span> </span><span class="NAME">getSelectionAsText</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>250</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">rng</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.rng</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>251</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">rng</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">rng.text</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="NAME">rng.text</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">""</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>252</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>253</span>
|
||||
<span class='linenumber'>254</span> </span><span class="NAME">hasImportantAttributes</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>255</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="PUNC">!</span><span class="PUNC">!</span><span class="PUNC">(</span><span class="NAME">element.id</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">element.className</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">element.style.cssText</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>256</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>257</span>
|
||||
<span class='linenumber'>258</span> </span><span class="NAME">isEmptyBlock</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>259</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">element.hasChildNodes</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>260</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">element.nodeType</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NUMB">3</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="PUNC">!</span><span class="NAME">element.nodeValue</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>261</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="PUNC">[</span><span class="STRN">" "</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">" "</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">""</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">include</span><span class="PUNC">(</span><span class="NAME">element.innerHTML</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>262</span>
|
||||
<span class='linenumber'>263</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>264</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>265</span>
|
||||
<span class='linenumber'>266</span> </span><span class="NAME">getLastChild</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>267</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">element</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="PUNC">!</span><span class="NAME">element.hasChildNodes</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>268</span>
|
||||
<span class='linenumber'>269</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">nodes</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">$A</span><span class="PUNC">(</span><span class="NAME">element.childNodes</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">reverse</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>270</span>
|
||||
<span class='linenumber'>271</span> </span><span class="KEYW">for</span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">nodes.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>272</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">nodes</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">nodeType</span><span class="WHIT"> </span><span class="PUNC">!=</span><span class="WHIT"> </span><span class="NUMB">3</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">nodes</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">nodeValue.length</span><span class="WHIT"> </span><span class="PUNC">!=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">nodes</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>273</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>274</span>
|
||||
<span class='linenumber'>275</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>276</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>277</span>
|
||||
<span class='linenumber'>278</span> </span><span class="NAME">getCurrentElement</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>279</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">this.sel</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">type.toLowerCase</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">"control"</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.rng</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">item</span><span class="PUNC">(</span><span class="NUMB">0</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>280</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.rng</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">parentElement</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>281</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>282</span>
|
||||
<span class='linenumber'>283</span> </span><span class="NAME">getBlockElementAtSelectionStart</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>284</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">rng</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.rng</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>285</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">dup</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">rng.duplicate</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>286</span> </span><span class="NAME">dup.collapse</span><span class="PUNC">(</span><span class="KEYW">true</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>287</span>
|
||||
<span class='linenumber'>288</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">result</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.getParentBlockElementOf</span><span class="PUNC">(</span><span class="NAME">dup.parentElement</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>289</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">result.nodeName</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">"BODY"</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="NAME">result</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">result.firstChild</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>290</span>
|
||||
<span class='linenumber'>291</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">result</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>292</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>293</span>
|
||||
<span class='linenumber'>294</span> </span><span class="NAME">getBlockElementAtSelectionEnd</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>295</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">rng</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.rng</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>296</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">dup</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">rng.duplicate</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>297</span> </span><span class="NAME">dup.collapse</span><span class="PUNC">(</span><span class="KEYW">false</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>298</span>
|
||||
<span class='linenumber'>299</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">result</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.getParentBlockElementOf</span><span class="PUNC">(</span><span class="NAME">dup.parentElement</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>300</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">result.nodeName</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">"BODY"</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="NAME">result</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">result.lastChild</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>301</span>
|
||||
<span class='linenumber'>302</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">result</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>303</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>304</span>
|
||||
<span class='linenumber'>305</span> </span><span class="NAME">getBlockElementsAtSelectionEdge</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">naturalOrder</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">ignoreEmptyEdges</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>306</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="WHIT">
|
||||
<span class='linenumber'>307</span> </span><span class="NAME">this.getBlockElementAtSelectionStart</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>308</span> </span><span class="NAME">this.getBlockElementAtSelectionEnd</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT">
|
||||
<span class='linenumber'>309</span> </span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>310</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>311</span>
|
||||
<span class='linenumber'>312</span> </span><span class="NAME">isCaretAtBlockStart</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>313</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">this.isCaretAtEmptyBlock</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>314</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">this.hasSelection</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>315</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">node</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.getCurrentBlockElement</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>316</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">marker</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.pushMarker</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>317</span>
|
||||
<span class='linenumber'>318</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">isTrue</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>319</span> </span><span class="KEYW">while</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">node</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.getFirstChild</span><span class="PUNC">(</span><span class="NAME">node</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>320</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">node</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">marker</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>321</span> </span><span class="NAME">isTrue</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>322</span> </span><span class="KEYW">break</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>323</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>324</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>325</span>
|
||||
<span class='linenumber'>326</span> </span><span class="NAME">this.popMarker</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>327</span>
|
||||
<span class='linenumber'>328</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">isTrue</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>329</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>330</span> </span><span class="NAME">isCaretAtBlockEnd</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>331</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">this.isCaretAtEmptyBlock</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>332</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">this.hasSelection</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>333</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">node</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.getCurrentBlockElement</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>334</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">marker</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.pushMarker</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>335</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">isTrue</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>336</span> </span><span class="KEYW">while</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">node</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.getLastChild</span><span class="PUNC">(</span><span class="NAME">node</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>337</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">nodeValue</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">node.nodeValue</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>338</span>
|
||||
<span class='linenumber'>339</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">node</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">marker</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>340</span> </span><span class="NAME">isTrue</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>341</span> </span><span class="KEYW">break</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>342</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="WHIT">
|
||||
<span class='linenumber'>343</span> </span><span class="NAME">node.nodeType</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NUMB">3</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT">
|
||||
<span class='linenumber'>344</span> </span><span class="NAME">node.previousSibling</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">marker</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT">
|
||||
<span class='linenumber'>345</span> </span><span class="PUNC">(</span><span class="NAME">nodeValue</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">" "</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">nodeValue.length</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NUMB">1</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">nodeValue.charCodeAt</span><span class="PUNC">(</span><span class="NUMB">0</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NUMB">160</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT">
|
||||
<span class='linenumber'>346</span> </span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>347</span> </span><span class="NAME">isTrue</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>348</span> </span><span class="KEYW">break</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>349</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>350</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>351</span>
|
||||
<span class='linenumber'>352</span> </span><span class="NAME">this.popMarker</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>353</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">isTrue</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>354</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>355</span> </span><span class="NAME">saveSelection</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>356</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.rng</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>357</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>358</span> </span><span class="NAME">restoreSelection</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">bookmark</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>359</span> </span><span class="NAME">bookmark.select</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>360</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>361</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>362</span> </span></pre></body></html>
|
||||
382
modules/editor/skins/xquared/doc/api/src_09.html
Normal file
|
|
@ -0,0 +1,382 @@
|
|||
<html><head><style>
|
||||
.KEYW {color: #933;}
|
||||
.COMM {color: #bbb; font-style: italic;}
|
||||
.NUMB {color: #393;}
|
||||
.STRN {color: #393;}
|
||||
.REGX {color: #339;}
|
||||
.linenumber {border-right: 1px dotted #666; color: #666; font-style: normal;}
|
||||
</style></head><body><pre><span class='linenumber'> 1</span> <span class="COMM">/**
|
||||
<span class='linenumber'> 2</span> * RichDom for W3C Standard Engine
|
||||
<span class='linenumber'> 3</span> */</span><span class="WHIT">
|
||||
<span class='linenumber'> 4</span> </span><span class="NAME">xq.RichDomW3</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Class.create</span><span class="PUNC">(</span><span class="NAME">xq.RichDom</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 5</span> </span><span class="NAME">insertNode</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">node</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 6</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">rng</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.rng</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 7</span> </span><span class="NAME">rng.insertNode</span><span class="PUNC">(</span><span class="NAME">node</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 8</span> </span><span class="NAME">rng.selectNode</span><span class="PUNC">(</span><span class="NAME">node</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 9</span> </span><span class="NAME">rng.collapse</span><span class="PUNC">(</span><span class="KEYW">false</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 10</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">node</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 11</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 12</span>
|
||||
<span class='linenumber'> 13</span> </span><span class="NAME">removeTrailingWhitespace</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">block</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 14</span> </span><span class="COMM">// TODO: do nothing</span><span class="WHIT">
|
||||
<span class='linenumber'> 15</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 16</span>
|
||||
<span class='linenumber'> 17</span> </span><span class="NAME">getOuterHTML</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 18</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">div</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">element.ownerDocument.createElement</span><span class="PUNC">(</span><span class="STRN">"div"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 19</span> </span><span class="NAME">div.appendChild</span><span class="PUNC">(</span><span class="NAME">element.cloneNode</span><span class="PUNC">(</span><span class="KEYW">true</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 20</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">div.innerHTML</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 21</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 22</span>
|
||||
<span class='linenumber'> 23</span> </span><span class="NAME">correctEmptyElement</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 24</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">element</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">element.nodeType</span><span class="WHIT"> </span><span class="PUNC">!=</span><span class="WHIT"> </span><span class="NUMB">1</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">this.tree.isAtomic</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 25</span>
|
||||
<span class='linenumber'> 26</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">element.firstChild</span><span class="PUNC">)</span><span class="WHIT">
|
||||
<span class='linenumber'> 27</span> </span><span class="NAME">this.correctEmptyElement</span><span class="PUNC">(</span><span class="NAME">element.firstChild</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 28</span> </span><span class="KEYW">else</span><span class="WHIT">
|
||||
<span class='linenumber'> 29</span> </span><span class="NAME">element.appendChild</span><span class="PUNC">(</span><span class="NAME">this.makePlaceHolder</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 30</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 31</span>
|
||||
<span class='linenumber'> 32</span> </span><span class="NAME">correctParagraph</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 33</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">this.hasSelection</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 34</span>
|
||||
<span class='linenumber'> 35</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">block</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.getCurrentElement</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 36</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">modified</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 37</span>
|
||||
<span class='linenumber'> 38</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">this.tree.isBlockOnlyContainer</span><span class="PUNC">(</span><span class="NAME">block</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 39</span> </span><span class="NAME">this.execCommand</span><span class="PUNC">(</span><span class="STRN">"InsertParagraph"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 40</span>
|
||||
<span class='linenumber'> 41</span> </span><span class="COMM">// check for atomic block element such as HR</span><span class="WHIT">
|
||||
<span class='linenumber'> 42</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">newBlock</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.getCurrentElement</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 43</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">this.tree.isAtomic</span><span class="PUNC">(</span><span class="NAME">newBlock.previousSibling</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 44</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">nextBlock</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.tree.findForward</span><span class="PUNC">(</span><span class="WHIT">
|
||||
<span class='linenumber'> 45</span> </span><span class="NAME">newBlock</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 46</span> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">node</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.tree.isBlock</span><span class="PUNC">(</span><span class="NAME">node</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="PUNC">!</span><span class="NAME">this.tree.isBlockOnlyContainer</span><span class="PUNC">(</span><span class="NAME">node</span><span class="PUNC">)</span><span class="PUNC">}</span><span class="PUNC">.</span><span class="NAME">bind</span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">)</span><span class="WHIT">
|
||||
<span class='linenumber'> 47</span> </span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 48</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">nextBlock</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 49</span> </span><span class="NAME">this.deleteNode</span><span class="PUNC">(</span><span class="NAME">newBlock</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 50</span> </span><span class="NAME">this.placeCaretAtStartOf</span><span class="PUNC">(</span><span class="NAME">nextBlock</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 51</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 52</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 53</span> </span><span class="NAME">modified</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 54</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">this.tree.hasMixedContents</span><span class="PUNC">(</span><span class="NAME">block</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 55</span> </span><span class="NAME">this.wrapAllInlineOrTextNodesAs</span><span class="PUNC">(</span><span class="STRN">"P"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">block</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 56</span> </span><span class="NAME">modified</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 57</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 58</span>
|
||||
<span class='linenumber'> 59</span> </span><span class="NAME">block</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.getCurrentElement</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 60</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">this.tree.isBlock</span><span class="PUNC">(</span><span class="NAME">block</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="PUNC">!</span><span class="NAME">this._hasPlaceHolderAtEnd</span><span class="PUNC">(</span><span class="NAME">block</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 61</span> </span><span class="NAME">block.appendChild</span><span class="PUNC">(</span><span class="NAME">this.makePlaceHolder</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 62</span> </span><span class="NAME">modified</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 63</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 64</span>
|
||||
<span class='linenumber'> 65</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">this.tree.isBlock</span><span class="PUNC">(</span><span class="NAME">block</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 66</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">parentsLastChild</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">block.parentNode.lastChild</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 67</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">this.isPlaceHolder</span><span class="PUNC">(</span><span class="NAME">parentsLastChild</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 68</span> </span><span class="NAME">this.deleteNode</span><span class="PUNC">(</span><span class="NAME">parentsLastChild</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 69</span> </span><span class="NAME">modified</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 70</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 71</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 72</span>
|
||||
<span class='linenumber'> 73</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">modified</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 74</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 75</span>
|
||||
<span class='linenumber'> 76</span> </span><span class="NAME">_hasPlaceHolderAtEnd</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">block</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 77</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">block.hasChildNodes</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 78</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.isPlaceHolder</span><span class="PUNC">(</span><span class="NAME">block.lastChild</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">this._hasPlaceHolderAtEnd</span><span class="PUNC">(</span><span class="NAME">block.lastChild</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 79</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 80</span>
|
||||
<span class='linenumber'> 81</span> </span><span class="NAME">applyBackgroundColor</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">color</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 82</span> </span><span class="NAME">this.execCommand</span><span class="PUNC">(</span><span class="STRN">"styleWithCSS"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"true"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 83</span> </span><span class="NAME">this.execCommand</span><span class="PUNC">(</span><span class="STRN">"hilitecolor"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">color</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 84</span> </span><span class="NAME">this.execCommand</span><span class="PUNC">(</span><span class="STRN">"styleWithCSS"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"false"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 85</span>
|
||||
<span class='linenumber'> 86</span> </span><span class="COMM">// 0. Save current selection</span><span class="WHIT">
|
||||
<span class='linenumber'> 87</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">bookmark</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.saveSelection</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 88</span>
|
||||
<span class='linenumber'> 89</span> </span><span class="COMM">// 1. Get selected blocks</span><span class="WHIT">
|
||||
<span class='linenumber'> 90</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">blocks</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.getSelectedBlockElements</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 91</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">blocks.length</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 92</span>
|
||||
<span class='linenumber'> 93</span> </span><span class="COMM">// 2. Apply background-color to all adjust inline elements</span><span class="WHIT">
|
||||
<span class='linenumber'> 94</span> </span><span class="COMM">// 3. Remove background-color from blocks</span><span class="WHIT">
|
||||
<span class='linenumber'> 95</span> </span><span class="KEYW">for</span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">blocks.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 96</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="PUNC">(</span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">blocks.length</span><span class="PUNC">-</span><span class="NUMB">1</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="PUNC">!</span><span class="NAME">blocks</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">style.backgroundColor</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">continue</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 97</span>
|
||||
<span class='linenumber'> 98</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">spans</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.wrapAllInlineOrTextNodesAs</span><span class="PUNC">(</span><span class="STRN">"SPAN"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">blocks</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 99</span> </span><span class="KEYW">for</span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">j</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">j</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">spans.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">j</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>100</span> </span><span class="NAME">spans</span><span class="PUNC">[</span><span class="NAME">j</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">style.backgroundColor</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">color</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>101</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>102</span> </span><span class="NAME">blocks</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">style.backgroundColor</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="STRN">""</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>103</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>104</span>
|
||||
<span class='linenumber'>105</span> </span><span class="COMM">// 4. Restore selection</span><span class="WHIT">
|
||||
<span class='linenumber'>106</span> </span><span class="NAME">this.restoreSelection</span><span class="PUNC">(</span><span class="NAME">bookmark</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>107</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>108</span>
|
||||
<span class='linenumber'>109</span>
|
||||
<span class='linenumber'>110</span>
|
||||
<span class='linenumber'>111</span>
|
||||
<span class='linenumber'>112</span> </span><span class="COMM">//////</span><span class="WHIT">
|
||||
<span class='linenumber'>113</span> </span><span class="COMM">// Commands</span><span class="WHIT">
|
||||
<span class='linenumber'>114</span> </span><span class="NAME">execCommand</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">commandId</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">param</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>115</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.doc.execCommand</span><span class="PUNC">(</span><span class="NAME">commandId</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">param</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>116</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>117</span>
|
||||
<span class='linenumber'>118</span> </span><span class="NAME">saveSelection</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>119</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">rng</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.rng</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>120</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="NAME">rng.startContainer</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">rng.startOffset</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">rng.endContainer</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">rng.endOffset</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>121</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>122</span>
|
||||
<span class='linenumber'>123</span> </span><span class="NAME">restoreSelection</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">bookmark</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>124</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">rng</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.rng</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>125</span> </span><span class="NAME">rng.setStart</span><span class="PUNC">(</span><span class="NAME">bookmark</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">bookmark</span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>126</span> </span><span class="NAME">rng.setEnd</span><span class="PUNC">(</span><span class="NAME">bookmark</span><span class="PUNC">[</span><span class="NUMB">2</span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">bookmark</span><span class="PUNC">[</span><span class="NUMB">3</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>127</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>128</span>
|
||||
<span class='linenumber'>129</span> </span><span class="NAME">applyRemoveFormat</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>130</span> </span><span class="NAME">this.execCommand</span><span class="PUNC">(</span><span class="STRN">"RemoveFormat"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>131</span> </span><span class="NAME">this.execCommand</span><span class="PUNC">(</span><span class="STRN">"Unlink"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>132</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>133</span> </span><span class="NAME">applyEmphasis</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>134</span> </span><span class="COMM">// Generate <i> tag. It will be replaced with <emphasis> tag during cleanup phase.</span><span class="WHIT">
|
||||
<span class='linenumber'>135</span> </span><span class="NAME">this.execCommand</span><span class="PUNC">(</span><span class="STRN">"styleWithCSS"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"false"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>136</span> </span><span class="NAME">this.execCommand</span><span class="PUNC">(</span><span class="STRN">"italic"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>137</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>138</span> </span><span class="NAME">applyStrongEmphasis</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>139</span> </span><span class="COMM">// Generate <b> tag. It will be replaced with <strong> tag during cleanup phase.</span><span class="WHIT">
|
||||
<span class='linenumber'>140</span> </span><span class="NAME">this.execCommand</span><span class="PUNC">(</span><span class="STRN">"styleWithCSS"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"false"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>141</span> </span><span class="NAME">this.execCommand</span><span class="PUNC">(</span><span class="STRN">"bold"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>142</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>143</span> </span><span class="NAME">applyStrike</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>144</span> </span><span class="COMM">// Generate <strike> tag. It will be replaced with <style class="strike"> tag during cleanup phase.</span><span class="WHIT">
|
||||
<span class='linenumber'>145</span> </span><span class="NAME">this.execCommand</span><span class="PUNC">(</span><span class="STRN">"styleWithCSS"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"false"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>146</span> </span><span class="NAME">this.execCommand</span><span class="PUNC">(</span><span class="STRN">"strikethrough"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>147</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>148</span> </span><span class="NAME">applyUnderline</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>149</span> </span><span class="COMM">// Generate <u> tag. It will be replaced with <em class="underline"> tag during cleanup phase.</span><span class="WHIT">
|
||||
<span class='linenumber'>150</span> </span><span class="NAME">this.execCommand</span><span class="PUNC">(</span><span class="STRN">"styleWithCSS"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"false"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>151</span> </span><span class="NAME">this.execCommand</span><span class="PUNC">(</span><span class="STRN">"underline"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>152</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>153</span> </span><span class="NAME">execHeading</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">level</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>154</span> </span><span class="NAME">this.execCommand</span><span class="PUNC">(</span><span class="STRN">"Heading"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"H"</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">level</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>155</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>156</span>
|
||||
<span class='linenumber'>157</span>
|
||||
<span class='linenumber'>158</span>
|
||||
<span class='linenumber'>159</span> </span><span class="COMM">//////</span><span class="WHIT">
|
||||
<span class='linenumber'>160</span> </span><span class="COMM">// Focus/Caret/Selection</span><span class="WHIT">
|
||||
<span class='linenumber'>161</span>
|
||||
<span class='linenumber'>162</span> </span><span class="NAME">focus</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>163</span> </span><span class="NAME">setTimeout</span><span class="PUNC">(</span><span class="NAME">this._focus.bind</span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>164</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>165</span>
|
||||
<span class='linenumber'>166</span> </span><span class="COMM">/** @private */</span><span class="WHIT">
|
||||
<span class='linenumber'>167</span> </span><span class="NAME">_focus</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>168</span> </span><span class="NAME">this.win.focus</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>169</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">this.hasSelection</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">this.getCurrentElement</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">nodeName</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">"HTML"</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>170</span> </span><span class="NAME">this.selectElement</span><span class="PUNC">(</span><span class="NAME">this.doc.body.firstChild</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>171</span> </span><span class="NAME">this.collapseSelection</span><span class="PUNC">(</span><span class="KEYW">true</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>172</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>173</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>174</span>
|
||||
<span class='linenumber'>175</span> </span><span class="NAME">sel</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>176</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.win.getSelection</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>177</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>178</span>
|
||||
<span class='linenumber'>179</span> </span><span class="NAME">rng</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>180</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">sel</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.sel</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>181</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">sel</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">sel.rangeCount</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">sel.getRangeAt</span><span class="PUNC">(</span><span class="NUMB">0</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>182</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>183</span>
|
||||
<span class='linenumber'>184</span> </span><span class="NAME">hasSelection</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>185</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">sel</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.sel</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>186</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">sel</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="PUNC">!</span><span class="NAME">sel.isCollapsed</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>187</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>188</span>
|
||||
<span class='linenumber'>189</span> </span><span class="NAME">deleteSelection</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>190</span> </span><span class="NAME">this.rng</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">deleteContents</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>191</span> </span><span class="NAME">this.sel</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">collapseToStart</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>192</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>193</span>
|
||||
<span class='linenumber'>194</span> </span><span class="NAME">selectElement</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">entireElement</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="KEYW">throw</span><span class="WHIT"> </span><span class="STRN">"Not implemented yet"</span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>195</span>
|
||||
<span class='linenumber'>196</span> </span><span class="NAME">selectBlocksBetween</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">start</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">end</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>197</span> </span><span class="COMM">// required to avoid FF selection bug.</span><span class="WHIT">
|
||||
<span class='linenumber'>198</span> </span><span class="KEYW">try</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>199</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">xq.Browser.isMac</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="NAME">this.doc.execCommand</span><span class="PUNC">(</span><span class="STRN">"SelectAll"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>200</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">catch</span><span class="PUNC">(</span><span class="NAME">ignored</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>201</span>
|
||||
<span class='linenumber'>202</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">rng</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.rng</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>203</span> </span><span class="NAME">rng.setStart</span><span class="PUNC">(</span><span class="NAME">start.firstChild</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>204</span> </span><span class="NAME">rng.setEnd</span><span class="PUNC">(</span><span class="NAME">end</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">end.childNodes.length</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>205</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>206</span>
|
||||
<span class='linenumber'>207</span> </span><span class="NAME">collapseSelection</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">toStart</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>208</span> </span><span class="NAME">this.rng</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">collapse</span><span class="PUNC">(</span><span class="NAME">toStart</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>209</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>210</span>
|
||||
<span class='linenumber'>211</span> </span><span class="NAME">placeCaretAtStartOf</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>212</span> </span><span class="KEYW">while</span><span class="PUNC">(</span><span class="NAME">this.tree.isBlock</span><span class="PUNC">(</span><span class="NAME">element.firstChild</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>213</span> </span><span class="NAME">element</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">element.firstChild</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>214</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>215</span> </span><span class="NAME">this.selectElement</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>216</span> </span><span class="NAME">this.collapseSelection</span><span class="PUNC">(</span><span class="KEYW">true</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>217</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>218</span>
|
||||
<span class='linenumber'>219</span> </span><span class="NAME">getSelectionAsHtml</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>220</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">container</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">document.createElement</span><span class="PUNC">(</span><span class="STRN">"div"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>221</span> </span><span class="NAME">container.appendChild</span><span class="PUNC">(</span><span class="NAME">this.rng</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">cloneContents</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>222</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">container.innerHTML</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>223</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>224</span>
|
||||
<span class='linenumber'>225</span> </span><span class="NAME">getSelectionAsText</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>226</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.rng</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">toString</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT">
|
||||
<span class='linenumber'>227</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>228</span>
|
||||
<span class='linenumber'>229</span> </span><span class="NAME">hasImportantAttributes</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>230</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="PUNC">!</span><span class="PUNC">!</span><span class="PUNC">(</span><span class="NAME">element.id</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">element.className</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">element.style.cssText</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>231</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>232</span>
|
||||
<span class='linenumber'>233</span> </span><span class="NAME">isEmptyBlock</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>234</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">element.hasChildNodes</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>235</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">children</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">element.childNodes</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>236</span> </span><span class="KEYW">for</span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">children.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>237</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">this.isPlaceHolder</span><span class="PUNC">(</span><span class="NAME">children</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="PUNC">!</span><span class="NAME">this.isEmptyTextNode</span><span class="PUNC">(</span><span class="NAME">children</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>238</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>239</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>240</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>241</span>
|
||||
<span class='linenumber'>242</span> </span><span class="NAME">getLastChild</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>243</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">element</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="PUNC">!</span><span class="NAME">element.hasChildNodes</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>244</span>
|
||||
<span class='linenumber'>245</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">nodes</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">$A</span><span class="PUNC">(</span><span class="NAME">element.childNodes</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">reverse</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>246</span>
|
||||
<span class='linenumber'>247</span> </span><span class="KEYW">for</span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">nodes.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>248</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">this.isPlaceHolder</span><span class="PUNC">(</span><span class="NAME">nodes</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="PUNC">!</span><span class="NAME">this.isEmptyTextNode</span><span class="PUNC">(</span><span class="NAME">nodes</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">nodes</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>249</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>250</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>251</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>252</span>
|
||||
<span class='linenumber'>253</span> </span><span class="NAME">getCurrentElement</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>254</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">rng</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.rng</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>255</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">rng</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>256</span>
|
||||
<span class='linenumber'>257</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">container</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">rng.startContainer</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>258</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">container.nodeType</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NUMB">3</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="NAME">container.parentNode</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">container</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>259</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>260</span>
|
||||
<span class='linenumber'>261</span> </span><span class="NAME">getBlockElementsAtSelectionEdge</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">naturalOrder</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">ignoreEmptyEdges</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>262</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">start</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.getBlockElementAtSelectionStart</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>263</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">end</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.getBlockElementAtSelectionEnd</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>264</span>
|
||||
<span class='linenumber'>265</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">reversed</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>266</span>
|
||||
<span class='linenumber'>267</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">naturalOrder</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">start</span><span class="WHIT"> </span><span class="PUNC">!=</span><span class="WHIT"> </span><span class="NAME">end</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">this.tree.checkTargetBackward</span><span class="PUNC">(</span><span class="NAME">start</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">end</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>268</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">temp</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">start</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>269</span> </span><span class="NAME">start</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">end</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>270</span> </span><span class="NAME">end</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">temp</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>271</span>
|
||||
<span class='linenumber'>272</span> </span><span class="NAME">reversed</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>273</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>274</span>
|
||||
<span class='linenumber'>275</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">ignoreEmptyEdges</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">start</span><span class="WHIT"> </span><span class="PUNC">!=</span><span class="WHIT"> </span><span class="NAME">end</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>276</span> </span><span class="COMM">// TODO - Firefox sometimes selects one more block.</span><span class="WHIT">
|
||||
<span class='linenumber'>277</span> </span><span class="COMM">/*
|
||||
<span class='linenumber'>278</span>
|
||||
<span class='linenumber'>279</span> var sel = this.sel();
|
||||
<span class='linenumber'>280</span> if(reversed) {
|
||||
<span class='linenumber'>281</span> if(sel.focusNode.nodeType == 1) start = start.nextSibling;
|
||||
<span class='linenumber'>282</span> if(sel.anchorNode.nodeType == 3 && sel.focusOffset == 0) end = end.previousSibling;
|
||||
<span class='linenumber'>283</span> } else {
|
||||
<span class='linenumber'>284</span> if(sel.anchorNode.nodeType == 1) start = start.nextSibling;
|
||||
<span class='linenumber'>285</span> if(sel.focusNode.nodeType == 3 && sel.focusOffset == 0) end = end.previousSibling;
|
||||
<span class='linenumber'>286</span> }
|
||||
<span class='linenumber'>287</span> */</span><span class="WHIT">
|
||||
<span class='linenumber'>288</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>289</span>
|
||||
<span class='linenumber'>290</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="NAME">start</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">end</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>291</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>292</span>
|
||||
<span class='linenumber'>293</span> </span><span class="NAME">getBlockElementAtSelectionStart</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>294</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">block</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.getParentBlockElementOf</span><span class="PUNC">(</span><span class="NAME">this.sel</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">anchorNode</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>295</span>
|
||||
<span class='linenumber'>296</span> </span><span class="COMM">// find bottom-most first block child</span><span class="WHIT">
|
||||
<span class='linenumber'>297</span> </span><span class="KEYW">while</span><span class="PUNC">(</span><span class="NAME">this.tree.isBlockContainer</span><span class="PUNC">(</span><span class="NAME">block</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">block.firstChild</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">this.tree.isBlock</span><span class="PUNC">(</span><span class="NAME">block.firstChild</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>298</span> </span><span class="NAME">block</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">block.firstChild</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>299</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>300</span>
|
||||
<span class='linenumber'>301</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">block</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>302</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>303</span>
|
||||
<span class='linenumber'>304</span> </span><span class="NAME">getBlockElementAtSelectionEnd</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>305</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">block</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.getParentBlockElementOf</span><span class="PUNC">(</span><span class="NAME">this.sel</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">focusNode</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>306</span>
|
||||
<span class='linenumber'>307</span> </span><span class="COMM">// find bottom-most last block child</span><span class="WHIT">
|
||||
<span class='linenumber'>308</span> </span><span class="KEYW">while</span><span class="PUNC">(</span><span class="NAME">this.tree.isBlockContainer</span><span class="PUNC">(</span><span class="NAME">block</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">block.lastChild</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">this.tree.isBlock</span><span class="PUNC">(</span><span class="NAME">block.lastChild</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>309</span> </span><span class="NAME">block</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">block.lastChild</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>310</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>311</span>
|
||||
<span class='linenumber'>312</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">block</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>313</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>314</span>
|
||||
<span class='linenumber'>315</span> </span><span class="NAME">isCaretAtBlockStart</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>316</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">this.isCaretAtEmptyBlock</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>317</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">this.hasSelection</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>318</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">rng</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.rng</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>319</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">node</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.getCurrentBlockElement</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>320</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">isTrue</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>321</span>
|
||||
<span class='linenumber'>322</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">node</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">rng.startContainer</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>323</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">marker</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.pushMarker</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>324</span> </span><span class="KEYW">while</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">node</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.getFirstChild</span><span class="PUNC">(</span><span class="NAME">node</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>325</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">node</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">marker</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>326</span> </span><span class="NAME">isTrue</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>327</span> </span><span class="KEYW">break</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>328</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>329</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>330</span> </span><span class="NAME">this.popMarker</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>331</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>332</span> </span><span class="KEYW">while</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">node</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">node.firstChild</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>333</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">node</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">rng.startContainer</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">rng.startOffset</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>334</span> </span><span class="NAME">isTrue</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>335</span> </span><span class="KEYW">break</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>336</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>337</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>338</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>339</span>
|
||||
<span class='linenumber'>340</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">isTrue</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>341</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>342</span>
|
||||
<span class='linenumber'>343</span> </span><span class="NAME">isCaretAtBlockEnd</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>344</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">this.isCaretAtEmptyBlock</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>345</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">this.hasSelection</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>346</span>
|
||||
<span class='linenumber'>347</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">rng</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.rng</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>348</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">node</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.getCurrentBlockElement</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>349</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">isTrue</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>350</span>
|
||||
<span class='linenumber'>351</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">node</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">rng.startContainer</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>352</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">marker</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.pushMarker</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>353</span> </span><span class="KEYW">while</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">node</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.getLastChild</span><span class="PUNC">(</span><span class="NAME">node</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>354</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">(</span><span class="NAME">node</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">marker</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">this.isPlaceHolder</span><span class="PUNC">(</span><span class="NAME">node</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">node.previousSibling</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">marker</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>355</span> </span><span class="NAME">isTrue</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>356</span> </span><span class="KEYW">break</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>357</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>358</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>359</span> </span><span class="NAME">this.popMarker</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>360</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>361</span> </span><span class="KEYW">while</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">node</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.getLastChild</span><span class="PUNC">(</span><span class="NAME">node</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>362</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">node</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">rng.endContainer</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">rng.endContainer.nodeType</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NUMB">1</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>363</span> </span><span class="NAME">isTrue</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>364</span> </span><span class="KEYW">break</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>365</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">node</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">rng.endContainer</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">rng.endOffset</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">node.nodeValue.length</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>366</span> </span><span class="NAME">isTrue</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>367</span> </span><span class="KEYW">break</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>368</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>369</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>370</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>371</span>
|
||||
<span class='linenumber'>372</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">isTrue</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>373</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>374</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>375</span> </span></pre></body></html>
|
||||
91
modules/editor/skins/xquared/doc/api/src_10.html
Normal file
|
|
@ -0,0 +1,91 @@
|
|||
<html><head><style>
|
||||
.KEYW {color: #933;}
|
||||
.COMM {color: #bbb; font-style: italic;}
|
||||
.NUMB {color: #393;}
|
||||
.STRN {color: #393;}
|
||||
.REGX {color: #339;}
|
||||
.linenumber {border-right: 1px dotted #666; color: #666; font-style: normal;}
|
||||
</style></head><body><pre><span class='linenumber'> 1</span> <span class="COMM">/**
|
||||
<span class='linenumber'> 2</span> * RichDom for Webkit
|
||||
<span class='linenumber'> 3</span> */</span><span class="WHIT">
|
||||
<span class='linenumber'> 4</span> </span><span class="NAME">xq.RichDomWebkit</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Class.create</span><span class="PUNC">(</span><span class="NAME">xq.RichDomW3</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 5</span> </span><span class="NAME">makePlaceHolder</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 6</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">holder</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.createElement</span><span class="PUNC">(</span><span class="STRN">"BR"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 7</span> </span><span class="NAME">holder.className</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="STRN">"webkit-block-placeholder"</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 8</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">holder</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 9</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 10</span>
|
||||
<span class='linenumber'> 11</span> </span><span class="NAME">makePlaceHolderString</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 12</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="STRN">'<br class="webkit-block-placeholder" />'</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 13</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 14</span>
|
||||
<span class='linenumber'> 15</span> </span><span class="NAME">makeEmptyParagraph</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 16</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.createElementFromHtml</span><span class="PUNC">(</span><span class="STRN">'<p><br class="webkit-block-placeholder" /></p>'</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 17</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 18</span>
|
||||
<span class='linenumber'> 19</span> </span><span class="NAME">isPlaceHolder</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">node</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 20</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">node.nodeName</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">"BR"</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">node.className</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">"webkit-block-placeholder"</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 21</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 22</span>
|
||||
<span class='linenumber'> 23</span> </span><span class="NAME">rng</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 24</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">sel</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.sel</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 25</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">rng</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.doc.createRange</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 26</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">this._rng</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT">
|
||||
<span class='linenumber'> 27</span> </span><span class="NAME">this._anchorNode</span><span class="WHIT"> </span><span class="PUNC">!=</span><span class="WHIT"> </span><span class="NAME">sel.anchorNode</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT">
|
||||
<span class='linenumber'> 28</span> </span><span class="NAME">this._anchorOffset</span><span class="WHIT"> </span><span class="PUNC">!=</span><span class="WHIT"> </span><span class="NAME">sel.anchorOffset</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT">
|
||||
<span class='linenumber'> 29</span> </span><span class="NAME">this._focusNode</span><span class="WHIT"> </span><span class="PUNC">!=</span><span class="WHIT"> </span><span class="NAME">sel.focusNode</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT">
|
||||
<span class='linenumber'> 30</span> </span><span class="NAME">this._focusOffset</span><span class="WHIT"> </span><span class="PUNC">!=</span><span class="WHIT"> </span><span class="NAME">sel.focusOffset</span><span class="WHIT"> </span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 31</span>
|
||||
<span class='linenumber'> 32</span> </span><span class="KEYW">if</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">sel.type</span><span class="WHIT"> </span><span class="PUNC">!=</span><span class="WHIT"> </span><span class="STRN">'None'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 33</span> </span><span class="NAME">rng.setStart</span><span class="PUNC">(</span><span class="NAME">sel.anchorNode</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">sel.anchorOffset</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 34</span> </span><span class="NAME">rng.setEnd</span><span class="PUNC">(</span><span class="NAME">sel.focusNode</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">sel.focusOffset</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 35</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 36</span> </span><span class="NAME">this._anchorNode</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">sel.anchorNode</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 37</span> </span><span class="NAME">this._anchorOffset</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">sel.anchorOffset</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 38</span> </span><span class="NAME">this._focusNode</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">sel.focusNode</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 39</span> </span><span class="NAME">this._focusOffset</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">sel.focusOffset</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 40</span> </span><span class="NAME">this._rng</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">rng</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 41</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 42</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this._rng</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 43</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 44</span>
|
||||
<span class='linenumber'> 45</span> </span><span class="NAME">selectElement</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">entireElement</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 46</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">element</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">throw</span><span class="WHIT"> </span><span class="STRN">"[element] is null"</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 47</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">element.nodeType</span><span class="WHIT"> </span><span class="PUNC">!=</span><span class="WHIT"> </span><span class="NUMB">1</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">throw</span><span class="WHIT"> </span><span class="STRN">"[element] is not an element"</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 48</span>
|
||||
<span class='linenumber'> 49</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">rng</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.rng</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 50</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">entireElement</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 51</span> </span><span class="NAME">rng.selectNode</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 52</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 53</span> </span><span class="NAME">rng.selectNodeContents</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 54</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 55</span> </span><span class="NAME">this._setSelectionByRange</span><span class="PUNC">(</span><span class="NAME">rng</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 56</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 57</span>
|
||||
<span class='linenumber'> 58</span> </span><span class="NAME">deleteSelection</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 59</span> </span><span class="NAME">this.rng</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">deleteContents</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 60</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 61</span>
|
||||
<span class='linenumber'> 62</span> </span><span class="NAME">collapseSelection</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">toStart</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 63</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">rng</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.rng</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 64</span> </span><span class="NAME">rng.collapse</span><span class="PUNC">(</span><span class="NAME">toStart</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 65</span> </span><span class="NAME">this._setSelectionByRange</span><span class="PUNC">(</span><span class="NAME">rng</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 66</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 67</span>
|
||||
<span class='linenumber'> 68</span> </span><span class="NAME">getSelectionAsHtml</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 69</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">container</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.createElement</span><span class="PUNC">(</span><span class="STRN">"div"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 70</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">rng</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.rng</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 71</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">contents</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.rng</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">cloneContents</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 72</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">contents</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="NAME">container.appendChild</span><span class="PUNC">(</span><span class="NAME">contents</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 73</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">container.innerHTML</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 74</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 75</span>
|
||||
<span class='linenumber'> 76</span> </span><span class="NAME">_setSelectionByRange</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">rng</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 77</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">sel</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.sel</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 78</span> </span><span class="NAME">sel.setBaseAndExtent</span><span class="PUNC">(</span><span class="NAME">rng.startContainer</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">rng.startOffset</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">rng.endContainer</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">rng.endOffset</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 79</span> </span><span class="NAME">this._anchorNode</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">sel.anchorNode</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 80</span> </span><span class="NAME">this._anchorOffset</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">sel.anchorOffset</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 81</span> </span><span class="NAME">this._focusNode</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">sel.focusNode</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 82</span> </span><span class="NAME">this._focusOffset</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">sel.focusOffset</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 83</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 84</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span></pre></body></html>
|
||||
209
modules/editor/skins/xquared/doc/api/src_11.html
Normal file
|
|
@ -0,0 +1,209 @@
|
|||
<html><head><style>
|
||||
.KEYW {color: #933;}
|
||||
.COMM {color: #bbb; font-style: italic;}
|
||||
.NUMB {color: #393;}
|
||||
.STRN {color: #393;}
|
||||
.REGX {color: #339;}
|
||||
.linenumber {border-right: 1px dotted #666; color: #666; font-style: normal;}
|
||||
</style></head><body><pre><span class='linenumber'> 1</span> <span class="NAME">xq.RichTable</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Class.create</span><span class="PUNC">(</span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 2</span> </span><span class="NAME">initialize</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">rdom</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">table</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 3</span> </span><span class="WHIT"> </span><span class="NAME">this.rdom</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">rdom</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 4</span> </span><span class="WHIT"> </span><span class="NAME">this.table</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">table</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 5</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 6</span> </span><span class="NAME">insertNewRowAt</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">tr</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">where</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 7</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">row</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.rdom.createElement</span><span class="PUNC">(</span><span class="STRN">"TR"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 8</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">cells</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">tr.cells</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 9</span> </span><span class="KEYW">for</span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">cells.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 10</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">cell</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.rdom.createElement</span><span class="PUNC">(</span><span class="NAME">cells</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">nodeName</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 11</span> </span><span class="NAME">this.rdom.correctEmptyElement</span><span class="PUNC">(</span><span class="NAME">cell</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 12</span> </span><span class="NAME">row.appendChild</span><span class="PUNC">(</span><span class="NAME">cell</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 13</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 14</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.rdom.insertNodeAt</span><span class="PUNC">(</span><span class="NAME">row</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">tr</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">where</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 15</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 16</span> </span><span class="NAME">insertNewCellAt</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">cell</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">where</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 17</span> </span><span class="COMM">// collect cells;</span><span class="WHIT">
|
||||
<span class='linenumber'> 18</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">cells</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 19</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">x</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.getXIndexOf</span><span class="PUNC">(</span><span class="NAME">cell</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 20</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">y</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 21</span> </span><span class="KEYW">while</span><span class="PUNC">(</span><span class="KEYW">true</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 22</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">cur</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.getCellAt</span><span class="PUNC">(</span><span class="NAME">x</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">y</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 23</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">cur</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">break</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 24</span> </span><span class="NAME">cells.push</span><span class="PUNC">(</span><span class="NAME">cur</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 25</span> </span><span class="NAME">y</span><span class="PUNC">++</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 26</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 27</span>
|
||||
<span class='linenumber'> 28</span> </span><span class="COMM">// insert new cells</span><span class="WHIT">
|
||||
<span class='linenumber'> 29</span> </span><span class="KEYW">for</span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">cells.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 30</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">cell</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.rdom.createElement</span><span class="PUNC">(</span><span class="NAME">cells</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">nodeName</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 31</span> </span><span class="NAME">this.rdom.correctEmptyElement</span><span class="PUNC">(</span><span class="NAME">cell</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 32</span> </span><span class="NAME">this.rdom.insertNodeAt</span><span class="PUNC">(</span><span class="NAME">cell</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">cells</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">where</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 33</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 34</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 35</span> </span><span class="NAME">deleteRow</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">tr</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 36</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.rdom.removeBlock</span><span class="PUNC">(</span><span class="NAME">tr</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 37</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 38</span> </span><span class="NAME">deleteCell</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">cell</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 39</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">cell.previousSibling</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="PUNC">!</span><span class="NAME">cell.nextSibling</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 40</span> </span><span class="NAME">this.rdom.deleteNode</span><span class="PUNC">(</span><span class="NAME">this.table</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 41</span> </span><span class="KEYW">return</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 42</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 43</span>
|
||||
<span class='linenumber'> 44</span> </span><span class="COMM">// collect cells;</span><span class="WHIT">
|
||||
<span class='linenumber'> 45</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">cells</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 46</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">x</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.getXIndexOf</span><span class="PUNC">(</span><span class="NAME">cell</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 47</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">y</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 48</span> </span><span class="KEYW">while</span><span class="PUNC">(</span><span class="KEYW">true</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 49</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">cur</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.getCellAt</span><span class="PUNC">(</span><span class="NAME">x</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">y</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 50</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">cur</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">break</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 51</span> </span><span class="NAME">cells.push</span><span class="PUNC">(</span><span class="NAME">cur</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 52</span> </span><span class="NAME">y</span><span class="PUNC">++</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 53</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 54</span>
|
||||
<span class='linenumber'> 55</span> </span><span class="KEYW">for</span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">cells.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 56</span> </span><span class="NAME">this.rdom.deleteNode</span><span class="PUNC">(</span><span class="NAME">cells</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 57</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 58</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 59</span> </span><span class="NAME">getPreviousCellOf</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">cell</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 60</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">cell.previousSibling</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">cell.previousSibling</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 61</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">adjRow</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.getPreviousRowOf</span><span class="PUNC">(</span><span class="NAME">cell.parentNode</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 62</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">adjRow</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">adjRow.lastChild</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 63</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 64</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 65</span> </span><span class="WHIT"> </span><span class="NAME">getNextCellOf</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">cell</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 66</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">cell.nextSibling</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">cell.nextSibling</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 67</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">adjRow</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.getNextRowOf</span><span class="PUNC">(</span><span class="NAME">cell.parentNode</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 68</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">adjRow</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">adjRow.firstChild</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 69</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 70</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 71</span> </span><span class="WHIT"> </span><span class="NAME">getPreviousRowOf</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">row</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 72</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">row.previousSibling</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">row.previousSibling</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 73</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">rowContainer</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">row.parentNode</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 74</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">rowContainer.previousSibling</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">rowContainer.previousSibling.lastChild</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">rowContainer.previousSibling.lastChild</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 75</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 76</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 77</span> </span><span class="WHIT"> </span><span class="NAME">getNextRowOf</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">row</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 78</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">row.nextSibling</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">row.nextSibling</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 79</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">rowContainer</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">row.parentNode</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 80</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">rowContainer.nextSibling</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">rowContainer.nextSibling.firstChild</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">rowContainer.nextSibling.firstChild</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 81</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 82</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 83</span> </span><span class="WHIT"> </span><span class="NAME">getAboveCellOf</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">cell</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 84</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">row</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.getPreviousRowOf</span><span class="PUNC">(</span><span class="NAME">cell.parentNode</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 85</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">row</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 86</span> </span><span class="WHIT"> </span><span class="WHIT">
|
||||
<span class='linenumber'> 87</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">x</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.getXIndexOf</span><span class="PUNC">(</span><span class="NAME">cell</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 88</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">row.cells</span><span class="PUNC">[</span><span class="NAME">x</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 89</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 90</span> </span><span class="WHIT"> </span><span class="NAME">getBelowCellOf</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">cell</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 91</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">row</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.getNextRowOf</span><span class="PUNC">(</span><span class="NAME">cell.parentNode</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 92</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">row</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 93</span> </span><span class="WHIT"> </span><span class="WHIT">
|
||||
<span class='linenumber'> 94</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">x</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.getXIndexOf</span><span class="PUNC">(</span><span class="NAME">cell</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 95</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">row.cells</span><span class="PUNC">[</span><span class="NAME">x</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 96</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 97</span> </span><span class="WHIT"> </span><span class="NAME">getXIndexOf</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">cell</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 98</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">row</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">cell.parentNode</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 99</span> </span><span class="WHIT"> </span><span class="KEYW">for</span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">row.cells.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>100</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">row.cells</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">cell</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>101</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>102</span> </span><span class="WHIT"> </span><span class="WHIT">
|
||||
<span class='linenumber'>103</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="NUMB">1</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>104</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>105</span> </span><span class="WHIT"> </span><span class="NAME">getYIndexOf</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">cell</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>106</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">y</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="NUMB">1</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>107</span> </span><span class="WHIT"> </span><span class="WHIT">
|
||||
<span class='linenumber'>108</span> </span><span class="WHIT"> </span><span class="COMM">// find y</span><span class="WHIT">
|
||||
<span class='linenumber'>109</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">group</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">row.parentNode</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>110</span> </span><span class="WHIT"> </span><span class="KEYW">for</span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="NAME">group.rows.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>111</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">group.rows</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">row</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>112</span> </span><span class="WHIT"> </span><span class="NAME">y</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>113</span> </span><span class="WHIT"> </span><span class="KEYW">break</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>114</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>115</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>116</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">this.hasHeadingAtTop</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">group.nodeName</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">"TBODY"</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="NAME">y</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">y</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NUMB">1</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>117</span> </span><span class="WHIT"> </span><span class="WHIT">
|
||||
<span class='linenumber'>118</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">y</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>119</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>120</span> </span><span class="WHIT"> </span><span class="COMM">/**
|
||||
<span class='linenumber'>121</span> * TODO: Not used. Delete or not?
|
||||
<span class='linenumber'>122</span> */</span><span class="WHIT">
|
||||
<span class='linenumber'>123</span> </span><span class="WHIT"> </span><span class="NAME">getLocationOf</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">cell</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>124</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">x</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.getXIndexOf</span><span class="PUNC">(</span><span class="NAME">cell</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>125</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">y</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.getYIndexOf</span><span class="PUNC">(</span><span class="NAME">cell</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>126</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="NAME">x</span><span class="PUNC">:</span><span class="NAME">x</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">y</span><span class="PUNC">:</span><span class="NAME">y</span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>127</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>128</span> </span><span class="WHIT"> </span><span class="NAME">getCellAt</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">col</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">row</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>129</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">row</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.getRowAt</span><span class="PUNC">(</span><span class="NAME">row</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>130</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">row</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">row.cells.length</span><span class="WHIT"> </span><span class="PUNC">></span><span class="WHIT"> </span><span class="NAME">col</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="NAME">row.cells</span><span class="PUNC">[</span><span class="NAME">col</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>131</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>132</span> </span><span class="WHIT"> </span><span class="NAME">getRowAt</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">index</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>133</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">this.hasHeadingAtTop</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>134</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">index</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="NAME">this.table.tHead.rows</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">this.table.tBodies</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">rows</span><span class="PUNC">[</span><span class="NAME">index</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NUMB">1</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>135</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>136</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">rows</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.table.tBodies</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">rows</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>137</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">rows.length</span><span class="WHIT"> </span><span class="PUNC">></span><span class="WHIT"> </span><span class="NAME">index</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="NAME">rows</span><span class="PUNC">[</span><span class="NAME">index</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>138</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>139</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>140</span> </span><span class="WHIT"> </span><span class="NAME">getDom</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>141</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.table</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>142</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>143</span> </span><span class="WHIT"> </span><span class="NAME">hasHeadingAtTop</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>144</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="PUNC">!</span><span class="PUNC">!</span><span class="PUNC">(</span><span class="NAME">this.table.tHead</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">this.table.tHead.rows</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>145</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>146</span> </span><span class="WHIT"> </span><span class="NAME">hasHeadingAtLeft</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>147</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">this.table.tBodies</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">rows</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">cells</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">nodeName</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">"TH"</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>148</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>149</span> </span><span class="WHIT"> </span><span class="NAME">correctEmptyCells</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>150</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">cells</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">$A</span><span class="PUNC">(</span><span class="NAME">this.table.getElementsByTagName</span><span class="PUNC">(</span><span class="STRN">"TH"</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>151</span> </span><span class="WHIT"> </span><span class="NAME">cells.push</span><span class="PUNC">(</span><span class="NAME">$A</span><span class="PUNC">(</span><span class="NAME">this.table.getElementsByTagName</span><span class="PUNC">(</span><span class="STRN">"TD"</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>152</span> </span><span class="WHIT"> </span><span class="NAME">cells</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">cells.flatten</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>153</span> </span><span class="WHIT"> </span><span class="WHIT">
|
||||
<span class='linenumber'>154</span> </span><span class="WHIT"> </span><span class="KEYW">for</span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">cells.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>155</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">this.rdom.isEmptyBlock</span><span class="PUNC">(</span><span class="NAME">cells</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="NAME">this.rdom.correctEmptyElement</span><span class="PUNC">(</span><span class="NAME">cells</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="WHIT">
|
||||
<span class='linenumber'>156</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>157</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>158</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>159</span> </span><span class="WHIT">
|
||||
<span class='linenumber'>160</span> </span><span class="NAME">xq.RichTable.create</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">rdom</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">cols</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">rows</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">headerPositions</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>161</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="PUNC">[</span><span class="STRN">"t"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"tl"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"lt"</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">include</span><span class="PUNC">(</span><span class="NAME">headerPositions</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">headingAtTop</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="WHIT">
|
||||
<span class='linenumber'>162</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="PUNC">[</span><span class="STRN">"l"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"tl"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"lt"</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">include</span><span class="PUNC">(</span><span class="NAME">headerPositions</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">headingAtLeft</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">true</span><span class="WHIT">
|
||||
<span class='linenumber'>163</span>
|
||||
<span class='linenumber'>164</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">sb</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="PUNC">]</span><span class="WHIT">
|
||||
<span class='linenumber'>165</span> </span><span class="WHIT"> </span><span class="NAME">sb.push</span><span class="PUNC">(</span><span class="STRN">'<table class="datatable">'</span><span class="PUNC">)</span><span class="WHIT">
|
||||
<span class='linenumber'>166</span> </span><span class="WHIT"> </span><span class="WHIT">
|
||||
<span class='linenumber'>167</span> </span><span class="WHIT"> </span><span class="COMM">// thead</span><span class="WHIT">
|
||||
<span class='linenumber'>168</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">headingAtTop</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>169</span> </span><span class="WHIT"> </span><span class="NAME">sb.push</span><span class="PUNC">(</span><span class="STRN">'<thead><tr>'</span><span class="PUNC">)</span><span class="WHIT">
|
||||
<span class='linenumber'>170</span> </span><span class="WHIT"> </span><span class="KEYW">for</span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">cols</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="NAME">sb.push</span><span class="PUNC">(</span><span class="STRN">'<th></th>'</span><span class="PUNC">)</span><span class="WHIT">
|
||||
<span class='linenumber'>171</span> </span><span class="WHIT"> </span><span class="NAME">sb.push</span><span class="PUNC">(</span><span class="STRN">'</tr></thead>'</span><span class="PUNC">)</span><span class="WHIT">
|
||||
<span class='linenumber'>172</span> </span><span class="WHIT"> </span><span class="NAME">rows</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">1</span><span class="WHIT">
|
||||
<span class='linenumber'>173</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>174</span> </span><span class="WHIT"> </span><span class="WHIT">
|
||||
<span class='linenumber'>175</span> </span><span class="WHIT"> </span><span class="COMM">// tbody</span><span class="WHIT">
|
||||
<span class='linenumber'>176</span> </span><span class="WHIT"> </span><span class="NAME">sb.push</span><span class="PUNC">(</span><span class="STRN">'<tbody>'</span><span class="PUNC">)</span><span class="WHIT">
|
||||
<span class='linenumber'>177</span> </span><span class="WHIT"> </span><span class="KEYW">for</span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">rows</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>178</span> </span><span class="WHIT"> </span><span class="NAME">sb.push</span><span class="PUNC">(</span><span class="STRN">'<tr>'</span><span class="PUNC">)</span><span class="WHIT">
|
||||
<span class='linenumber'>179</span> </span><span class="WHIT"> </span><span class="WHIT">
|
||||
<span class='linenumber'>180</span> </span><span class="WHIT"> </span><span class="KEYW">for</span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">j</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">j</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">cols</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">j</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>181</span> </span><span class="WHIT"> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">headingAtLeft</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">j</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>182</span> </span><span class="WHIT"> </span><span class="NAME">sb.push</span><span class="PUNC">(</span><span class="STRN">'<th></th>'</span><span class="PUNC">)</span><span class="WHIT">
|
||||
<span class='linenumber'>183</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>184</span> </span><span class="WHIT"> </span><span class="NAME">sb.push</span><span class="PUNC">(</span><span class="STRN">'<td></td>'</span><span class="PUNC">)</span><span class="WHIT">
|
||||
<span class='linenumber'>185</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>186</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>187</span> </span><span class="WHIT"> </span><span class="WHIT">
|
||||
<span class='linenumber'>188</span> </span><span class="WHIT"> </span><span class="NAME">sb.push</span><span class="PUNC">(</span><span class="STRN">'</tr>'</span><span class="PUNC">)</span><span class="WHIT">
|
||||
<span class='linenumber'>189</span> </span><span class="WHIT"> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>190</span> </span><span class="WHIT"> </span><span class="NAME">sb.push</span><span class="PUNC">(</span><span class="STRN">'</tbody>'</span><span class="PUNC">)</span><span class="WHIT">
|
||||
<span class='linenumber'>191</span> </span><span class="WHIT"> </span><span class="WHIT">
|
||||
<span class='linenumber'>192</span> </span><span class="WHIT"> </span><span class="NAME">sb.push</span><span class="PUNC">(</span><span class="STRN">'</table>'</span><span class="PUNC">)</span><span class="WHIT">
|
||||
<span class='linenumber'>193</span> </span><span class="WHIT"> </span><span class="WHIT">
|
||||
<span class='linenumber'>194</span> </span><span class="WHIT"> </span><span class="COMM">// create DOM element</span><span class="WHIT">
|
||||
<span class='linenumber'>195</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">container</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">rdom.createElement</span><span class="PUNC">(</span><span class="STRN">"div"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>196</span> </span><span class="WHIT"> </span><span class="NAME">container.innerHTML</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">sb.join</span><span class="PUNC">(</span><span class="STRN">""</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>197</span> </span><span class="WHIT"> </span><span class="WHIT">
|
||||
<span class='linenumber'>198</span> </span><span class="WHIT"> </span><span class="COMM">// correct empty cells and return</span><span class="WHIT">
|
||||
<span class='linenumber'>199</span> </span><span class="WHIT"> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">rtable</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">xq.RichTable</span><span class="PUNC">(</span><span class="NAME">rdom</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">container.firstChild</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>200</span> </span><span class="NAME">rtable.correctEmptyCells</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>201</span> </span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">rtable</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>202</span> </span><span class="PUNC">}</span></pre></body></html>
|
||||
135
modules/editor/skins/xquared/doc/api/src_12.html
Normal file
|
|
@ -0,0 +1,135 @@
|
|||
<html><head><style>
|
||||
.KEYW {color: #933;}
|
||||
.COMM {color: #bbb; font-style: italic;}
|
||||
.NUMB {color: #393;}
|
||||
.STRN {color: #393;}
|
||||
.REGX {color: #339;}
|
||||
.linenumber {border-right: 1px dotted #666; color: #666; font-style: normal;}
|
||||
</style></head><body><pre><span class='linenumber'> 1</span> <span class="NAME">xq.Shortcut</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Class.create</span><span class="PUNC">(</span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 2</span> </span><span class="NAME">initialize</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">keymapOrExpression</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 3</span> </span><span class="NAME">this.keymap</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="KEYW">typeof</span><span class="WHIT"> </span><span class="NAME">keymapOrExpression</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">"string"</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT">
|
||||
<span class='linenumber'> 4</span> </span><span class="NAME">xq.Shortcut.interprete</span><span class="PUNC">(</span><span class="NAME">keymapOrExpression</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">keymap</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT">
|
||||
<span class='linenumber'> 5</span> </span><span class="NAME">keymapOrExpression</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 6</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 7</span> </span><span class="NAME">matches</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">e</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 8</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">which</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">xq.Browser.isGecko</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">xq.Browser.isMac</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">e.keyCode</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">"_"</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">e.charCode</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">e.keyCode</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 9</span>
|
||||
<span class='linenumber'> 10</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">keyMatches</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT">
|
||||
<span class='linenumber'> 11</span> </span><span class="PUNC">(</span><span class="NAME">this.keymap.which</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">which</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT">
|
||||
<span class='linenumber'> 12</span> </span><span class="PUNC">(</span><span class="NAME">this.keymap.which</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NUMB">32</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">which</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NUMB">25</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="COMM">// 25 is SPACE in Type-3 keyboard.</span><span class="WHIT">
|
||||
<span class='linenumber'> 13</span>
|
||||
<span class='linenumber'> 14</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="KEYW">typeof</span><span class="WHIT"> </span><span class="NAME">e.metaKey</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">"undefined"</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="NAME">e.metaKey</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 15</span>
|
||||
<span class='linenumber'> 16</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">modifierMatches</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT">
|
||||
<span class='linenumber'> 17</span> </span><span class="PUNC">(</span><span class="KEYW">typeof</span><span class="WHIT"> </span><span class="NAME">this.keymap.shiftKey</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">"undefined"</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">this.keymap.shiftKey</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">e.shiftKey</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT">
|
||||
<span class='linenumber'> 18</span> </span><span class="PUNC">(</span><span class="KEYW">typeof</span><span class="WHIT"> </span><span class="NAME">this.keymap.altKey</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">"undefined"</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">this.keymap.altKey</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">e.altKey</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT">
|
||||
<span class='linenumber'> 19</span> </span><span class="PUNC">(</span><span class="KEYW">typeof</span><span class="WHIT"> </span><span class="NAME">this.keymap.ctrlKey</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">"undefined"</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">this.keymap.ctrlKey</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">e.ctrlKey</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT">
|
||||
<span class='linenumber'> 20</span> </span><span class="PUNC">(</span><span class="KEYW">typeof</span><span class="WHIT"> </span><span class="NAME">this.keymap.metaKey</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">"undefined"</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">this.keymap.metaKey</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">e.metaKey</span><span class="PUNC">)</span><span class="WHIT">
|
||||
<span class='linenumber'> 21</span>
|
||||
<span class='linenumber'> 22</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">modifierMatches</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">keyMatches</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 23</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 24</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 25</span>
|
||||
<span class='linenumber'> 26</span> </span><span class="NAME">xq.Shortcut.interprete</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">expression</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 27</span> </span><span class="NAME">expression</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">expression.toUpperCase</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 28</span>
|
||||
<span class='linenumber'> 29</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">which</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">xq.Shortcut._interpreteWhich</span><span class="PUNC">(</span><span class="NAME">expression.split</span><span class="PUNC">(</span><span class="STRN">"+"</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">pop</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 30</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">ctrlKey</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">xq.Shortcut._interpreteModifier</span><span class="PUNC">(</span><span class="NAME">expression</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"CTRL"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 31</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">altKey</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">xq.Shortcut._interpreteModifier</span><span class="PUNC">(</span><span class="NAME">expression</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"ALT"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 32</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">shiftKey</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">xq.Shortcut._interpreteModifier</span><span class="PUNC">(</span><span class="NAME">expression</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"SHIFT"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 33</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">metaKey</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">xq.Shortcut._interpreteModifier</span><span class="PUNC">(</span><span class="NAME">expression</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"META"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 34</span>
|
||||
<span class='linenumber'> 35</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">keymap</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 36</span>
|
||||
<span class='linenumber'> 37</span> </span><span class="NAME">keymap.which</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">which</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 38</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="KEYW">typeof</span><span class="WHIT"> </span><span class="NAME">ctrlKey</span><span class="WHIT"> </span><span class="PUNC">!=</span><span class="WHIT"> </span><span class="STRN">"undefined"</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="NAME">keymap.ctrlKey</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">ctrlKey</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 39</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="KEYW">typeof</span><span class="WHIT"> </span><span class="NAME">altKey</span><span class="WHIT"> </span><span class="PUNC">!=</span><span class="WHIT"> </span><span class="STRN">"undefined"</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="NAME">keymap.altKey</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">altKey</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 40</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="KEYW">typeof</span><span class="WHIT"> </span><span class="NAME">shiftKey</span><span class="WHIT"> </span><span class="PUNC">!=</span><span class="WHIT"> </span><span class="STRN">"undefined"</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="NAME">keymap.shiftKey</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">shiftKey</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 41</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="KEYW">typeof</span><span class="WHIT"> </span><span class="NAME">metaKey</span><span class="WHIT"> </span><span class="PUNC">!=</span><span class="WHIT"> </span><span class="STRN">"undefined"</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="NAME">keymap.metaKey</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">metaKey</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 42</span>
|
||||
<span class='linenumber'> 43</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">xq.Shortcut</span><span class="PUNC">(</span><span class="NAME">keymap</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 44</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 45</span>
|
||||
<span class='linenumber'> 46</span> </span><span class="NAME">xq.Shortcut._interpreteModifier</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">expression</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">modifierName</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 47</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">expression.match</span><span class="PUNC">(</span><span class="STRN">"\\("</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">modifierName</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">"\\)"</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT">
|
||||
<span class='linenumber'> 48</span> </span><span class="NAME">undefined</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT">
|
||||
<span class='linenumber'> 49</span> </span><span class="NAME">expression.match</span><span class="PUNC">(</span><span class="NAME">modifierName</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT">
|
||||
<span class='linenumber'> 50</span> </span><span class="KEYW">true</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">false</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 51</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 52</span> </span><span class="NAME">xq.Shortcut._interpreteWhich</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">keyName</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 53</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">which</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">keyName.length</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NUMB">1</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT">
|
||||
<span class='linenumber'> 54</span> </span><span class="PUNC">(</span><span class="PUNC">(</span><span class="NAME">xq.Browser.isMac</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">xq.Browser.isGecko</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="STRN">"0_"</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">keyName.toLowerCase</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">charCodeAt</span><span class="PUNC">(</span><span class="NUMB">0</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">keyName.charCodeAt</span><span class="PUNC">(</span><span class="NUMB">0</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT">
|
||||
<span class='linenumber'> 55</span> </span><span class="NAME">xq.Shortcut._keyNames</span><span class="PUNC">[</span><span class="NAME">keyName</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 56</span>
|
||||
<span class='linenumber'> 57</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="KEYW">typeof</span><span class="WHIT"> </span><span class="NAME">which</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">"undefined"</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">throw</span><span class="WHIT"> </span><span class="STRN">"Unknown special key name: ["</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">keyName</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">"]"</span><span class="WHIT">
|
||||
<span class='linenumber'> 58</span>
|
||||
<span class='linenumber'> 59</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">which</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 60</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 61</span> </span><span class="NAME">xq.Shortcut._keyNames</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT">
|
||||
<span class='linenumber'> 62</span> </span><span class="NAME">xq.Browser.isMac</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">xq.Browser.isGecko</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT">
|
||||
<span class='linenumber'> 63</span> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 64</span> </span><span class="NAME">BACKSPACE</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">"8_0"</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 65</span> </span><span class="NAME">TAB</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">"9_0"</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 66</span> </span><span class="NAME">RETURN</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">"13_0"</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 67</span> </span><span class="NAME">ENTER</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">"13_0"</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 68</span> </span><span class="NAME">ESC</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">"27_0"</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 69</span> </span><span class="NAME">SPACE</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">"0_32"</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 70</span> </span><span class="NAME">LEFT</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">"37_0"</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 71</span> </span><span class="NAME">UP</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">"38_0"</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 72</span> </span><span class="NAME">RIGHT</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">"39_0"</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 73</span> </span><span class="NAME">DOWN</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">"40_0"</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 74</span> </span><span class="NAME">DELETE</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">"46_0"</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 75</span> </span><span class="NAME">HOME</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">"36_0"</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 76</span> </span><span class="NAME">END</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">"35_0"</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 77</span> </span><span class="NAME">PAGEUP</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">"33_0"</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 78</span> </span><span class="NAME">PAGEDOWN</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">"34_0"</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 79</span> </span><span class="NAME">COMMA</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">"0_44"</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 80</span> </span><span class="NAME">HYPHEN</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">"0_45"</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 81</span> </span><span class="NAME">EQUAL</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">"0_61"</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 82</span> </span><span class="NAME">PERIOD</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">"0_46"</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 83</span> </span><span class="NAME">SLASH</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">"0_47"</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 84</span> </span><span class="NAME">F1</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">"112_0"</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 85</span> </span><span class="NAME">F2</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">"113_0"</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 86</span> </span><span class="NAME">F3</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">"114_0"</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 87</span> </span><span class="NAME">F4</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">"115_0"</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 88</span> </span><span class="NAME">F5</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">"116_0"</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 89</span> </span><span class="NAME">F6</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">"117_0"</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 90</span> </span><span class="NAME">F7</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">"118_0"</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 91</span> </span><span class="NAME">F8</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">"119_0"</span><span class="WHIT">
|
||||
<span class='linenumber'> 92</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 93</span> </span><span class="PUNC">:</span><span class="WHIT">
|
||||
<span class='linenumber'> 94</span> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 95</span> </span><span class="NAME">BACKSPACE</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NUMB">8</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 96</span> </span><span class="NAME">TAB</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NUMB">9</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 97</span> </span><span class="NAME">RETURN</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NUMB">13</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 98</span> </span><span class="NAME">ENTER</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NUMB">13</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 99</span> </span><span class="NAME">ESC</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NUMB">27</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>100</span> </span><span class="NAME">SPACE</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NUMB">32</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>101</span> </span><span class="NAME">LEFT</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NUMB">37</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>102</span> </span><span class="NAME">UP</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NUMB">38</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>103</span> </span><span class="NAME">RIGHT</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NUMB">39</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>104</span> </span><span class="NAME">DOWN</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NUMB">40</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>105</span> </span><span class="NAME">DELETE</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NUMB">46</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>106</span> </span><span class="NAME">HOME</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NUMB">36</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>107</span> </span><span class="NAME">END</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NUMB">35</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>108</span> </span><span class="NAME">PAGEUP</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NUMB">33</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>109</span> </span><span class="NAME">PAGEDOWN</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NUMB">34</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>110</span> </span><span class="NAME">COMMA</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NUMB">188</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>111</span> </span><span class="NAME">HYPHEN</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">xq.Browser.isTrident</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="NUMB">189</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NUMB">109</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>112</span> </span><span class="NAME">EQUAL</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">xq.Browser.isTrident</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="NUMB">187</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NUMB">61</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>113</span> </span><span class="NAME">PERIOD</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NUMB">190</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>114</span> </span><span class="NAME">SLASH</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NUMB">191</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>115</span> </span><span class="NAME">F1</span><span class="PUNC">:</span><span class="NUMB">112</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>116</span> </span><span class="NAME">F2</span><span class="PUNC">:</span><span class="NUMB">113</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>117</span> </span><span class="NAME">F3</span><span class="PUNC">:</span><span class="NUMB">114</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>118</span> </span><span class="NAME">F4</span><span class="PUNC">:</span><span class="NUMB">115</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>119</span> </span><span class="NAME">F5</span><span class="PUNC">:</span><span class="NUMB">116</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>120</span> </span><span class="NAME">F6</span><span class="PUNC">:</span><span class="NUMB">117</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>121</span> </span><span class="NAME">F7</span><span class="PUNC">:</span><span class="NUMB">118</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>122</span> </span><span class="NAME">F8</span><span class="PUNC">:</span><span class="NUMB">119</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>123</span> </span><span class="NAME">F9</span><span class="PUNC">:</span><span class="NUMB">120</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>124</span> </span><span class="NAME">F10</span><span class="PUNC">:</span><span class="NUMB">121</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>125</span> </span><span class="NAME">F11</span><span class="PUNC">:</span><span class="NUMB">122</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>126</span> </span><span class="NAME">F12</span><span class="PUNC">:</span><span class="NUMB">123</span><span class="WHIT">
|
||||
<span class='linenumber'>127</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>128</span> </span></pre></body></html>
|
||||
235
modules/editor/skins/xquared/doc/api/src_13.html
Normal file
|
|
@ -0,0 +1,235 @@
|
|||
<html><head><style>
|
||||
.KEYW {color: #933;}
|
||||
.COMM {color: #bbb; font-style: italic;}
|
||||
.NUMB {color: #393;}
|
||||
.STRN {color: #393;}
|
||||
.REGX {color: #339;}
|
||||
.linenumber {border-right: 1px dotted #666; color: #666; font-style: normal;}
|
||||
</style></head><body><pre><span class='linenumber'> 1</span> <span class="COMM">/**
|
||||
<span class='linenumber'> 2</span> * Validates and invalidates designmode contents
|
||||
<span class='linenumber'> 3</span> */</span><span class="WHIT">
|
||||
<span class='linenumber'> 4</span> </span><span class="NAME">xq.Validator</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Class.create</span><span class="PUNC">(</span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 5</span> </span><span class="NAME">initialize</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">curUrl</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">urlValidationMode</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">allowedTags</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">allowedAttrs</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 6</span> </span><span class="NAME">this.allowedTags</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">allowedTags</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="STRN">'a'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'abbr'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'acronym'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'address'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'blockquote'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'br'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'caption'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'cite'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'code'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'dd'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'dfn'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'div'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'dl'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'dt'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'em'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'h1'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'h2'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'h3'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'h4'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'h5'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'h6'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'hr'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'img'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'kbd'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'li'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'ol'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'p'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'pre'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'q'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'samp'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'span'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'sup'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'sub'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'strong'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'table'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'thead'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'tbody'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'td'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'th'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'tr'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'ul'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'var'</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">join</span><span class="PUNC">(</span><span class="STRN">' '</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">' '</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 7</span> </span><span class="NAME">this.allowedAttrs</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">allowedAttrs</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="STRN">'alt'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'cite'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'class'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'datetime'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'height'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'href'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'id'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'rel'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'rev'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'src'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'style'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'title'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'width'</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">join</span><span class="PUNC">(</span><span class="STRN">' '</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">' '</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 8</span>
|
||||
<span class='linenumber'> 9</span> </span><span class="NAME">this.curUrl</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">curUrl</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 10</span> </span><span class="NAME">this.curUrlParts</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">curUrl</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="NAME">curUrl.parseURL</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 11</span> </span><span class="NAME">this.urlValidationMode</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">urlValidationMode</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 12</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 13</span>
|
||||
<span class='linenumber'> 14</span> </span><span class="COMM">/**
|
||||
<span class='linenumber'> 15</span> * Perform validation on given element
|
||||
<span class='linenumber'> 16</span> *
|
||||
<span class='linenumber'> 17</span> * @param {Element} element Target element. It is not affected by validation.
|
||||
<span class='linenumber'> 18</span> * @param {boolean} fullValidation Perform full validation. If you just want to use the result to assign innerHTML, set it false
|
||||
<span class='linenumber'> 19</span> *
|
||||
<span class='linenumber'> 20</span> * @returns {String} Validated HTML string
|
||||
<span class='linenumber'> 21</span> */</span><span class="WHIT">
|
||||
<span class='linenumber'> 22</span> </span><span class="NAME">validate</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">fullValidation</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="KEYW">throw</span><span class="WHIT"> </span><span class="STRN">"Not implemented"</span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 23</span>
|
||||
<span class='linenumber'> 24</span> </span><span class="COMM">/**
|
||||
<span class='linenumber'> 25</span> * Perform invalidation on given element to make the designmode works well.
|
||||
<span class='linenumber'> 26</span> *
|
||||
<span class='linenumber'> 27</span> * @param {Element} element Target element.
|
||||
<span class='linenumber'> 28</span> * @returns {String} Invalidated HTML string
|
||||
<span class='linenumber'> 29</span> */</span><span class="WHIT">
|
||||
<span class='linenumber'> 30</span> </span><span class="NAME">invalidate</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="KEYW">throw</span><span class="WHIT"> </span><span class="STRN">"Not implemented"</span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 31</span>
|
||||
<span class='linenumber'> 32</span> </span><span class="NAME">validateStrike</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">content</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 33</span> </span><span class="NAME">content</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">content.replace</span><span class="PUNC">(</span><span class="REGX">/<strike(>|\s+[^>]*>)/ig</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"<span class=\"strike\"$1"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 34</span> </span><span class="NAME">content</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">content.replace</span><span class="PUNC">(</span><span class="REGX">/<\/strike>/ig</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"</span>"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 35</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">content</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 36</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 37</span>
|
||||
<span class='linenumber'> 38</span> </span><span class="NAME">validateUnderline</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">content</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 39</span> </span><span class="NAME">content</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">content.replace</span><span class="PUNC">(</span><span class="REGX">/<u(>|\s+[^>]*>)/ig</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"<em class=\"underline\"$1"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 40</span> </span><span class="NAME">content</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">content.replace</span><span class="PUNC">(</span><span class="REGX">/<\/u>/ig</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"</em>"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 41</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">content</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 42</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 43</span>
|
||||
<span class='linenumber'> 44</span> </span><span class="NAME">replaceTag</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">content</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">from</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">to</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 45</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">content.replace</span><span class="PUNC">(</span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">RegExp</span><span class="PUNC">(</span><span class="STRN">"(</?)"</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">from</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">"(>|\\s+[^>]*>)"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"ig"</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"$1"</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">to</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">"$2"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 46</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 47</span>
|
||||
<span class='linenumber'> 48</span> </span><span class="NAME">validateSelfClosingTags</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">content</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 49</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">content.replace</span><span class="PUNC">(</span><span class="REGX">/<(br|hr|img)([^>]*?)>/img</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">str</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">tag</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">attrs</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 50</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="STRN">"<"</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">tag</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">attrs</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">" />"</span><span class="WHIT">
|
||||
<span class='linenumber'> 51</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 52</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 53</span>
|
||||
<span class='linenumber'> 54</span> </span><span class="NAME">removeComments</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">content</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 55</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">content.replace</span><span class="PUNC">(</span><span class="REGX">/<!--.*?-->/img</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">''</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 56</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 57</span>
|
||||
<span class='linenumber'> 58</span> </span><span class="NAME">removeDangerousElements</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 59</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">scripts</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">$A</span><span class="PUNC">(</span><span class="NAME">element.getElementsByTagName</span><span class="PUNC">(</span><span class="STRN">'SCRIPT'</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">reverse</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 60</span> </span><span class="KEYW">for</span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">scripts.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 61</span> </span><span class="NAME">scripts</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">parentNode.removeChild</span><span class="PUNC">(</span><span class="NAME">scripts</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 62</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 63</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 64</span>
|
||||
<span class='linenumber'> 65</span> </span><span class="COMM">// TODO: very slow</span><span class="WHIT">
|
||||
<span class='linenumber'> 66</span> </span><span class="NAME">applyWhitelist</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">content</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 67</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">allowedTags</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.allowedTags</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 68</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">allowedAttrs</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.allowedAttrs</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 69</span>
|
||||
<span class='linenumber'> 70</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">content.replace</span><span class="PUNC">(</span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">RegExp</span><span class="PUNC">(</span><span class="STRN">"(</?)([^>]+?)(>|\\s+([^>]*?)(\\s?/?)>)"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"g"</span><span class="PUNC">)</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">str</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">head</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">tag</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">tail</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">attrs</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">selfClosing</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 71</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">allowedTags.indexOf</span><span class="PUNC">(</span><span class="NAME">tag</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="NUMB">1</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="STRN">''</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 72</span>
|
||||
<span class='linenumber'> 73</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">attrs</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 74</span> </span><span class="NAME">attrs</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">attrs.replace</span><span class="PUNC">(</span><span class="REGX">/(^|\s")([^"=]+)(\s|$)/g</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'$1$2="$2"$3'</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="COMM">// for IE</span><span class="WHIT">
|
||||
<span class='linenumber'> 75</span>
|
||||
<span class='linenumber'> 76</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">sb</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 77</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">m</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">attrs.match</span><span class="PUNC">(</span><span class="REGX">/([^=]+)="[^"]*?"/g</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 78</span> </span><span class="KEYW">for</span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">m.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 79</span> </span><span class="NAME">m</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">m</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">strip</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 80</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">name</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">m</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">split</span><span class="PUNC">(</span><span class="STRN">'='</span><span class="PUNC">)</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 81</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">allowedAttrs.indexOf</span><span class="PUNC">(</span><span class="NAME">name</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">!=</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="NUMB">1</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="NAME">sb.push</span><span class="PUNC">(</span><span class="NAME">m</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 82</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 83</span> </span><span class="NAME">attrs</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">sb.join</span><span class="PUNC">(</span><span class="STRN">' '</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 84</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">attrs</span><span class="WHIT"> </span><span class="PUNC">!=</span><span class="WHIT"> </span><span class="STRN">''</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="NAME">attrs</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="STRN">' '</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">attrs</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 85</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">head</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">tag</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">attrs</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">selfClosing</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">'>'</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 86</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 87</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">str</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 88</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 89</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 90</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 91</span>
|
||||
<span class='linenumber'> 92</span> </span><span class="NAME">makeUrlsRelative</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">content</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 93</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">curUrl</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.curUrl</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 94</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">urlParts</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.curUrlParts</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 95</span>
|
||||
<span class='linenumber'> 96</span> </span><span class="COMM">// 1. find attributes and...</span><span class="WHIT">
|
||||
<span class='linenumber'> 97</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">content.replace</span><span class="PUNC">(</span><span class="REGX">/(<\w+\s+)(\/|([^>]+?)(\/?))>/g</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">str</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">head</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">ignored</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">attrs</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">tail</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 98</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">attrs</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 99</span> </span><span class="COMM">// 2. validate URL part</span><span class="WHIT">
|
||||
<span class='linenumber'>100</span> </span><span class="NAME">attrs</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">attrs.replace</span><span class="PUNC">(</span><span class="REGX">/(href|src)="([^"]+)"/g</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">str</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">name</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">url</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>101</span> </span><span class="COMM">// 3. first, make it absolute</span><span class="WHIT">
|
||||
<span class='linenumber'>102</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">abs</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>103</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">url.charAt</span><span class="PUNC">(</span><span class="NUMB">0</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">'#'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>104</span> </span><span class="NAME">abs</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">urlParts.includeQuery</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">url</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>105</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">url.charAt</span><span class="PUNC">(</span><span class="NUMB">0</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">'?'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>106</span> </span><span class="NAME">abs</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">urlParts.includePath</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">url</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>107</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">url.charAt</span><span class="PUNC">(</span><span class="NUMB">0</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">'/'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>108</span> </span><span class="NAME">abs</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">urlParts.includeHost</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">url</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>109</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">url.match</span><span class="PUNC">(</span><span class="REGX">/^\w+:\/\//</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>110</span> </span><span class="NAME">abs</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">url</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>111</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>112</span> </span><span class="NAME">abs</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">urlParts.includeBase</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">url</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>113</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>114</span>
|
||||
<span class='linenumber'>115</span> </span><span class="COMM">// 4. make it relative by removing same part</span><span class="WHIT">
|
||||
<span class='linenumber'>116</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">rel</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">abs</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>117</span>
|
||||
<span class='linenumber'>118</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">abs.indexOf</span><span class="PUNC">(</span><span class="NAME">urlParts.includeQuery</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>119</span> </span><span class="NAME">rel</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">abs.substring</span><span class="PUNC">(</span><span class="NAME">urlParts.includeQuery.length</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>120</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">abs.indexOf</span><span class="PUNC">(</span><span class="NAME">urlParts.includePath</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>121</span> </span><span class="NAME">rel</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">abs.substring</span><span class="PUNC">(</span><span class="NAME">urlParts.includePath.length</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>122</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">abs.indexOf</span><span class="PUNC">(</span><span class="NAME">urlParts.includeBase</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>123</span> </span><span class="NAME">rel</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">abs.substring</span><span class="PUNC">(</span><span class="NAME">urlParts.includeBase.length</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>124</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">abs.indexOf</span><span class="PUNC">(</span><span class="NAME">urlParts.includeHost</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>125</span> </span><span class="NAME">rel</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">abs.substring</span><span class="PUNC">(</span><span class="NAME">urlParts.includeHost.length</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>126</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>127</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">rel</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">''</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="NAME">rel</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="STRN">'#'</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>128</span>
|
||||
<span class='linenumber'>129</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">name</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">'="'</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">rel</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">'"'</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>130</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>131</span>
|
||||
<span class='linenumber'>132</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">head</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">attrs</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">tail</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">'>'</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>133</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>134</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">str</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>135</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>136</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>137</span>
|
||||
<span class='linenumber'>138</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">content</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>139</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>140</span>
|
||||
<span class='linenumber'>141</span> </span><span class="NAME">makeUrlsHostRelative</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">content</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>142</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">curUrl</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.curUrl</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>143</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">urlParts</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.curUrlParts</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>144</span>
|
||||
<span class='linenumber'>145</span> </span><span class="COMM">// 1. find attributes and...</span><span class="WHIT">
|
||||
<span class='linenumber'>146</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">content.replace</span><span class="PUNC">(</span><span class="REGX">/(<\w+\s+)(\/|([^>]+?)(\/?))>/g</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">str</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">head</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">ignored</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">attrs</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">tail</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>147</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">attrs</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>148</span> </span><span class="COMM">// 2. validate URL part</span><span class="WHIT">
|
||||
<span class='linenumber'>149</span> </span><span class="NAME">attrs</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">attrs.replace</span><span class="PUNC">(</span><span class="REGX">/(href|src)="([^"]+)"/g</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">str</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">name</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">url</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>150</span> </span><span class="COMM">// 3. first, make it absolute</span><span class="WHIT">
|
||||
<span class='linenumber'>151</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">abs</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>152</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">url.charAt</span><span class="PUNC">(</span><span class="NUMB">0</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">'#'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>153</span> </span><span class="NAME">abs</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">urlParts.includeQuery</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">url</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>154</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">url.charAt</span><span class="PUNC">(</span><span class="NUMB">0</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">'?'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>155</span> </span><span class="NAME">abs</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">urlParts.includePath</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">url</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>156</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">url.charAt</span><span class="PUNC">(</span><span class="NUMB">0</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">'/'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>157</span> </span><span class="NAME">abs</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">urlParts.includeHost</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">url</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>158</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">url.match</span><span class="PUNC">(</span><span class="REGX">/^\w+:\/\//</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>159</span> </span><span class="NAME">abs</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">url</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>160</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>161</span> </span><span class="NAME">abs</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">urlParts.includeBase</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">url</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>162</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>163</span>
|
||||
<span class='linenumber'>164</span> </span><span class="COMM">// 4. make it relative by removing same part</span><span class="WHIT">
|
||||
<span class='linenumber'>165</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">rel</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">abs</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>166</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">abs.indexOf</span><span class="PUNC">(</span><span class="NAME">urlParts.includeHost</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>167</span> </span><span class="NAME">rel</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">abs.substring</span><span class="PUNC">(</span><span class="NAME">urlParts.includeHost.length</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>168</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>169</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">rel</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">''</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="NAME">rel</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="STRN">'#'</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>170</span>
|
||||
<span class='linenumber'>171</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">name</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">'="'</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">rel</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">'"'</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>172</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>173</span>
|
||||
<span class='linenumber'>174</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">head</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">attrs</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">tail</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">'>'</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>175</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>176</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">str</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>177</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>178</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>179</span>
|
||||
<span class='linenumber'>180</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">content</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>181</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>182</span>
|
||||
<span class='linenumber'>183</span> </span><span class="NAME">makeUrlsAbsolute</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">content</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>184</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">curUrl</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.curUrl</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>185</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">urlParts</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.curUrlParts</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>186</span>
|
||||
<span class='linenumber'>187</span> </span><span class="COMM">// 1. find attributes and...</span><span class="WHIT">
|
||||
<span class='linenumber'>188</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">content.replace</span><span class="PUNC">(</span><span class="REGX">/(<\w+\s+)(\/|([^>]+?)(\/?))>/g</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">str</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">head</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">ignored</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">attrs</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">tail</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>189</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">attrs</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>190</span> </span><span class="COMM">// 2. validate URL part</span><span class="WHIT">
|
||||
<span class='linenumber'>191</span> </span><span class="NAME">attrs</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">attrs.replace</span><span class="PUNC">(</span><span class="REGX">/(href|src)="([^"]+)"/g</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">str</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">name</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">url</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>192</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">abs</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>193</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">url.charAt</span><span class="PUNC">(</span><span class="NUMB">0</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">'#'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>194</span> </span><span class="NAME">abs</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">urlParts.includeQuery</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">url</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>195</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">url.charAt</span><span class="PUNC">(</span><span class="NUMB">0</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">'?'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>196</span> </span><span class="NAME">abs</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">urlParts.includePath</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">url</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>197</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">url.charAt</span><span class="PUNC">(</span><span class="NUMB">0</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">'/'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>198</span> </span><span class="NAME">abs</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">urlParts.includeHost</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">url</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>199</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">url.match</span><span class="PUNC">(</span><span class="REGX">/^\w+:\/\//</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>200</span> </span><span class="NAME">abs</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">url</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>201</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>202</span> </span><span class="NAME">abs</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">urlParts.includeBase</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">url</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>203</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>204</span>
|
||||
<span class='linenumber'>205</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">name</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">'="'</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">abs</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">'"'</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>206</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>207</span>
|
||||
<span class='linenumber'>208</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">head</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">attrs</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">tail</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">'>'</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>209</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>210</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">str</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>211</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>212</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>213</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>214</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>215</span>
|
||||
<span class='linenumber'>216</span> </span><span class="COMM">/**
|
||||
<span class='linenumber'>217</span> * Creates and returns instance of browser specific implementation.
|
||||
<span class='linenumber'>218</span> */</span><span class="WHIT">
|
||||
<span class='linenumber'>219</span> </span><span class="NAME">xq.Validator.createInstance</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">curUrl</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">urlValidationMode</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">allowedTags</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">allowedAttrs</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>220</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">xq.Browser.isTrident</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>221</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">xq.ValidatorTrident</span><span class="PUNC">(</span><span class="NAME">curUrl</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">urlValidationMode</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">allowedTags</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">allowedAttrs</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>222</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">xq.Browser.isWebkit</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>223</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">xq.ValidatorWebkit</span><span class="PUNC">(</span><span class="NAME">curUrl</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">urlValidationMode</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">allowedTags</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">allowedAttrs</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>224</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>225</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">xq.ValidatorGecko</span><span class="PUNC">(</span><span class="NAME">curUrl</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">urlValidationMode</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">allowedTags</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">allowedAttrs</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>226</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>227</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>228</span> </span></pre></body></html>
|
||||
12
modules/editor/skins/xquared/doc/api/src_14.html
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
<html><head><style>
|
||||
.KEYW {color: #933;}
|
||||
.COMM {color: #bbb; font-style: italic;}
|
||||
.NUMB {color: #393;}
|
||||
.STRN {color: #393;}
|
||||
.REGX {color: #339;}
|
||||
.linenumber {border-right: 1px dotted #666; color: #666; font-style: normal;}
|
||||
</style></head><body><pre><span class='linenumber'> 1</span> <span class="COMM">/**
|
||||
<span class='linenumber'> 2</span> * Validator for Gecko Engine
|
||||
<span class='linenumber'> 3</span> */</span><span class="WHIT">
|
||||
<span class='linenumber'> 4</span> </span><span class="NAME">xq.ValidatorGecko</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Class.create</span><span class="PUNC">(</span><span class="NAME">xq.ValidatorW3</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 5</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span></pre></body></html>
|
||||
147
modules/editor/skins/xquared/doc/api/src_15.html
Normal file
|
|
@ -0,0 +1,147 @@
|
|||
<html><head><style>
|
||||
.KEYW {color: #933;}
|
||||
.COMM {color: #bbb; font-style: italic;}
|
||||
.NUMB {color: #393;}
|
||||
.STRN {color: #393;}
|
||||
.REGX {color: #339;}
|
||||
.linenumber {border-right: 1px dotted #666; color: #666; font-style: normal;}
|
||||
</style></head><body><pre><span class='linenumber'> 1</span> <span class="COMM">/**
|
||||
<span class='linenumber'> 2</span> * Validator for Internet Explorer 6 and 7
|
||||
<span class='linenumber'> 3</span> */</span><span class="WHIT">
|
||||
<span class='linenumber'> 4</span> </span><span class="NAME">xq.ValidatorTrident</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Class.create</span><span class="PUNC">(</span><span class="NAME">xq.Validator</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 5</span> </span><span class="NAME">validate</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">fullValidation</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 6</span> </span><span class="NAME">element</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">element.cloneNode</span><span class="PUNC">(</span><span class="KEYW">true</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 7</span>
|
||||
<span class='linenumber'> 8</span> </span><span class="NAME">this.removeDangerousElements</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 9</span> </span><span class="NAME">this.validateFontColor</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 10</span> </span><span class="NAME">this.validateBackgroundColor</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 11</span>
|
||||
<span class='linenumber'> 12</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">content</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">element.innerHTML</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 13</span>
|
||||
<span class='linenumber'> 14</span> </span><span class="KEYW">try</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 15</span> </span><span class="NAME">content</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.validateStrike</span><span class="PUNC">(</span><span class="NAME">content</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 16</span> </span><span class="NAME">content</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.validateUnderline</span><span class="PUNC">(</span><span class="NAME">content</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 17</span>
|
||||
<span class='linenumber'> 18</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">fullValidation</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="NAME">content</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.performFullValidation</span><span class="PUNC">(</span><span class="NAME">content</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 19</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">catch</span><span class="PUNC">(</span><span class="NAME">ignored</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 20</span>
|
||||
<span class='linenumber'> 21</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">content</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 22</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 23</span>
|
||||
<span class='linenumber'> 24</span> </span><span class="NAME">invalidate</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 25</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">rdom</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">xq.RichDom.createInstance</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 26</span> </span><span class="NAME">rdom.setRoot</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 27</span>
|
||||
<span class='linenumber'> 28</span> </span><span class="NAME">this.invalidateFontColor</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 29</span> </span><span class="NAME">this.invalidateBackgroundColor</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 30</span>
|
||||
<span class='linenumber'> 31</span> </span><span class="COMM">// <span class="strike"> -> <strike></span><span class="WHIT">
|
||||
<span class='linenumber'> 32</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">strikes</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">rdom.findByAttribute</span><span class="PUNC">(</span><span class="STRN">"className"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"strike"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 33</span> </span><span class="KEYW">for</span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">strikes.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 34</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="STRN">"SPAN"</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">strikes</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">nodeName</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="NAME">rdom.replaceTag</span><span class="PUNC">(</span><span class="STRN">"strike"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">strikes</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">removeAttribute</span><span class="PUNC">(</span><span class="STRN">"className"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 35</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 36</span>
|
||||
<span class='linenumber'> 37</span> </span><span class="COMM">// <em|i class="underline"> -> <u></span><span class="WHIT">
|
||||
<span class='linenumber'> 38</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">underlines</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">rdom.findByAttribute</span><span class="PUNC">(</span><span class="STRN">"className"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"underline"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 39</span> </span><span class="KEYW">for</span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">underlines.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 40</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="PUNC">[</span><span class="STRN">"EM"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"I"</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">include</span><span class="PUNC">(</span><span class="NAME">underlines</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">nodeName</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="NAME">rdom.replaceTag</span><span class="PUNC">(</span><span class="STRN">"u"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">underlines</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">removeAttribute</span><span class="PUNC">(</span><span class="STRN">"className"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 41</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 42</span>
|
||||
<span class='linenumber'> 43</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">content</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">rdom.getRoot</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">innerHTML</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 44</span>
|
||||
<span class='linenumber'> 45</span> </span><span class="NAME">content</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.removeComments</span><span class="PUNC">(</span><span class="NAME">content</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 46</span>
|
||||
<span class='linenumber'> 47</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">content</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 48</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 49</span>
|
||||
<span class='linenumber'> 50</span> </span><span class="NAME">performFullValidation</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">content</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 51</span> </span><span class="NAME">content</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.lowerTagNamesAndUniformizeQuotation</span><span class="PUNC">(</span><span class="NAME">content</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 52</span> </span><span class="NAME">content</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.validateSelfClosingTags</span><span class="PUNC">(</span><span class="NAME">content</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 53</span> </span><span class="NAME">content</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.applyWhitelist</span><span class="PUNC">(</span><span class="NAME">content</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 54</span>
|
||||
<span class='linenumber'> 55</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">this.urlValidationMode</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">'relative'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 56</span> </span><span class="NAME">content</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.makeUrlsRelative</span><span class="PUNC">(</span><span class="NAME">content</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 57</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">this.urlValidationMode</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">'host_relative'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 58</span> </span><span class="NAME">content</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.makeUrlsHostRelative</span><span class="PUNC">(</span><span class="NAME">content</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 59</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">this.urlValidationMode</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">'absolute'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 60</span> </span><span class="COMM">// Trident always use absolute URL so we don't need to do anything.</span><span class="WHIT">
|
||||
<span class='linenumber'> 61</span> </span><span class="COMM">//</span><span class="WHIT">
|
||||
<span class='linenumber'> 62</span> </span><span class="COMM">// content = this.makeUrlsAbsolute(content);</span><span class="WHIT">
|
||||
<span class='linenumber'> 63</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 64</span>
|
||||
<span class='linenumber'> 65</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">content</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 66</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 67</span>
|
||||
<span class='linenumber'> 68</span> </span><span class="NAME">validateFontColor</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 69</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">rdom</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">xq.RichDom.createInstance</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 70</span> </span><span class="NAME">rdom.setRoot</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 71</span>
|
||||
<span class='linenumber'> 72</span> </span><span class="COMM">// It should be reversed to deal with nested elements</span><span class="WHIT">
|
||||
<span class='linenumber'> 73</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">fonts</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">$A</span><span class="PUNC">(</span><span class="NAME">element.getElementsByTagName</span><span class="PUNC">(</span><span class="STRN">'FONT'</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">reverse</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 74</span> </span><span class="KEYW">for</span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">fonts.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 75</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">font</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">fonts</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 76</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">color</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">font.getAttribute</span><span class="PUNC">(</span><span class="STRN">'color'</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 77</span>
|
||||
<span class='linenumber'> 78</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">color</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 79</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">span</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">rdom.replaceTag</span><span class="PUNC">(</span><span class="STRN">"span"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">font</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 80</span> </span><span class="NAME">span.removeAttribute</span><span class="PUNC">(</span><span class="STRN">'color'</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 81</span> </span><span class="NAME">span.style.color</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">color</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 82</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 83</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 84</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 85</span>
|
||||
<span class='linenumber'> 86</span> </span><span class="NAME">invalidateFontColor</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 87</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">rdom</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">xq.RichDom.createInstance</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 88</span> </span><span class="NAME">rdom.setRoot</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 89</span>
|
||||
<span class='linenumber'> 90</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">spans</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">$A</span><span class="PUNC">(</span><span class="NAME">element.getElementsByTagName</span><span class="PUNC">(</span><span class="STRN">'SPAN'</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">reverse</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 91</span> </span><span class="KEYW">for</span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">spans.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 92</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">span</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">spans</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 93</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">color</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">span.style.color</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 94</span>
|
||||
<span class='linenumber'> 95</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">color</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 96</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">font</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">rdom.replaceTag</span><span class="PUNC">(</span><span class="STRN">"font"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">span</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 97</span> </span><span class="NAME">font.style.color</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="STRN">""</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 98</span> </span><span class="NAME">font.setAttribute</span><span class="PUNC">(</span><span class="STRN">'color'</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">color</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 99</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>100</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>101</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>102</span>
|
||||
<span class='linenumber'>103</span> </span><span class="NAME">validateBackgroundColor</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>104</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">rdom</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">xq.RichDom.createInstance</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>105</span> </span><span class="NAME">rdom.setRoot</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>106</span>
|
||||
<span class='linenumber'>107</span> </span><span class="COMM">// It should be reversed to deal with nested elements</span><span class="WHIT">
|
||||
<span class='linenumber'>108</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">fonts</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">$A</span><span class="PUNC">(</span><span class="NAME">element.getElementsByTagName</span><span class="PUNC">(</span><span class="STRN">'FONT'</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">reverse</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>109</span> </span><span class="KEYW">for</span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">fonts.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>110</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">fonts</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">style.color</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">fonts</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">style.backgroundColor</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="NAME">rdom.replaceTag</span><span class="PUNC">(</span><span class="STRN">"span"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">fonts</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>111</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>112</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>113</span>
|
||||
<span class='linenumber'>114</span> </span><span class="NAME">invalidateBackgroundColor</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>115</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">rdom</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">xq.RichDom.createInstance</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>116</span> </span><span class="NAME">rdom.setRoot</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>117</span>
|
||||
<span class='linenumber'>118</span> </span><span class="COMM">// It should be reversed to deal with nested elements</span><span class="WHIT">
|
||||
<span class='linenumber'>119</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">spans</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">$A</span><span class="PUNC">(</span><span class="NAME">element.getElementsByTagName</span><span class="PUNC">(</span><span class="STRN">'SPAN'</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">reverse</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>120</span> </span><span class="KEYW">for</span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">spans.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>121</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">spans</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">style.color</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">spans</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">style.backgroundColor</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="NAME">rdom.replaceTag</span><span class="PUNC">(</span><span class="STRN">"font"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">spans</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>122</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>123</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>124</span>
|
||||
<span class='linenumber'>125</span> </span><span class="NAME">lowerTagNamesAndUniformizeQuotation</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">content</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>126</span> </span><span class="COMM">// Uniformize quotation, turn tag names and attribute names into lower case</span><span class="WHIT">
|
||||
<span class='linenumber'>127</span> </span><span class="NAME">content</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">content.replace</span><span class="PUNC">(</span><span class="REGX">/<(\/?)(\w+)([^>]*?)>/img</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">str</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">closingMark</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">tagName</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">attrs</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>128</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="STRN">"<"</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">closingMark</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">tagName.toLowerCase</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">this.correctHtmlAttrQuotation</span><span class="PUNC">(</span><span class="NAME">attrs</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">">"</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>129</span> </span><span class="PUNC">}</span><span class="PUNC">.</span><span class="NAME">bind</span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>130</span>
|
||||
<span class='linenumber'>131</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">content</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>132</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>133</span>
|
||||
<span class='linenumber'>134</span> </span><span class="NAME">correctHtmlAttrQuotation</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">html</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>135</span> </span><span class="NAME">html</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">html.replace</span><span class="PUNC">(</span><span class="REGX">/\s(\w+?)=\s+"([^"]+)"/mg</span><span class="PUNC">,</span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">str</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">name</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">value</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="KEYW">return</span><span class="WHIT"> </span><span class="STRN">" "</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">name.toLowerCase</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">'='</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">'"'</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">value</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">'"'</span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>136</span> </span><span class="NAME">html</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">html.replace</span><span class="PUNC">(</span><span class="REGX">/\s(\w+?)=([^ "]+)/mg</span><span class="PUNC">,</span><span class="KEYW">function</span><span class="WHIT"> </span><span class="PUNC">(</span><span class="NAME">str</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">name</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">value</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="KEYW">return</span><span class="WHIT"> </span><span class="STRN">" "</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">name.toLowerCase</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">'='</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">'"'</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">value</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">'"'</span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>137</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">html</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>138</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>139</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>140</span> </span></pre></body></html>
|
||||
112
modules/editor/skins/xquared/doc/api/src_16.html
Normal file
|
|
@ -0,0 +1,112 @@
|
|||
<html><head><style>
|
||||
.KEYW {color: #933;}
|
||||
.COMM {color: #bbb; font-style: italic;}
|
||||
.NUMB {color: #393;}
|
||||
.STRN {color: #393;}
|
||||
.REGX {color: #339;}
|
||||
.linenumber {border-right: 1px dotted #666; color: #666; font-style: normal;}
|
||||
</style></head><body><pre><span class='linenumber'> 1</span> <span class="COMM">/**
|
||||
<span class='linenumber'> 2</span> * Validator for W3C Standard Engine
|
||||
<span class='linenumber'> 3</span> */</span><span class="WHIT">
|
||||
<span class='linenumber'> 4</span> </span><span class="NAME">xq.ValidatorW3</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Class.create</span><span class="PUNC">(</span><span class="NAME">xq.Validator</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 5</span> </span><span class="NAME">validate</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">fullValidation</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 6</span> </span><span class="NAME">element</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">element.cloneNode</span><span class="PUNC">(</span><span class="KEYW">true</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 7</span>
|
||||
<span class='linenumber'> 8</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">rdom</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">xq.RichDom.createInstance</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 9</span> </span><span class="NAME">rdom.setRoot</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 10</span> </span><span class="NAME">rdom.removePlaceHoldersAndEmptyNodes</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 11</span> </span><span class="NAME">this.removeDangerousElements</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 12</span> </span><span class="NAME">this.validateFontColor</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 13</span>
|
||||
<span class='linenumber'> 14</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">content</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">element.innerHTML</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 15</span>
|
||||
<span class='linenumber'> 16</span> </span><span class="KEYW">try</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 17</span> </span><span class="NAME">content</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.replaceTag</span><span class="PUNC">(</span><span class="NAME">content</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"b"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"strong"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 18</span> </span><span class="NAME">content</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.replaceTag</span><span class="PUNC">(</span><span class="NAME">content</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"i"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"em"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 19</span>
|
||||
<span class='linenumber'> 20</span> </span><span class="NAME">content</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.validateStrike</span><span class="PUNC">(</span><span class="NAME">content</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 21</span> </span><span class="NAME">content</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.validateUnderline</span><span class="PUNC">(</span><span class="NAME">content</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 22</span> </span><span class="NAME">content</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.addNbspToEmptyBlocks</span><span class="PUNC">(</span><span class="NAME">content</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 23</span>
|
||||
<span class='linenumber'> 24</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">fullValidation</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="NAME">content</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.performFullValidation</span><span class="PUNC">(</span><span class="NAME">content</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 25</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">catch</span><span class="PUNC">(</span><span class="NAME">ignored</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 26</span>
|
||||
<span class='linenumber'> 27</span> </span><span class="COMM">// insert newline between block-tags</span><span class="WHIT">
|
||||
<span class='linenumber'> 28</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">blocks</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">rdom.tree.getBlockTags</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">join</span><span class="PUNC">(</span><span class="STRN">"|"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 29</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">regex</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">RegExp</span><span class="PUNC">(</span><span class="STRN">"</("</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">blocks</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">")>([^\n])"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"img"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 30</span> </span><span class="NAME">content</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">content.replace</span><span class="PUNC">(</span><span class="NAME">regex</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'</$1>\n$2'</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 31</span>
|
||||
<span class='linenumber'> 32</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">content</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 33</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 34</span> </span><span class="NAME">invalidate</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 35</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">rdom</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">xq.RichDom.createInstance</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 36</span> </span><span class="NAME">rdom.setRoot</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 37</span>
|
||||
<span class='linenumber'> 38</span> </span><span class="COMM">// <span class="strike"> -> <strike></span><span class="WHIT">
|
||||
<span class='linenumber'> 39</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">strikes</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">rdom.findByAttribute</span><span class="PUNC">(</span><span class="STRN">"class"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"strike"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 40</span> </span><span class="KEYW">for</span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">strikes.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 41</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="STRN">"SPAN"</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">strikes</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">nodeName</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="NAME">rdom.replaceTag</span><span class="PUNC">(</span><span class="STRN">"strike"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">strikes</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">removeAttribute</span><span class="PUNC">(</span><span class="STRN">"class"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 42</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 43</span>
|
||||
<span class='linenumber'> 44</span> </span><span class="COMM">// <em|i class="underline"> -> <u></span><span class="WHIT">
|
||||
<span class='linenumber'> 45</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">underlines</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">rdom.findByAttribute</span><span class="PUNC">(</span><span class="STRN">"class"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"underline"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 46</span> </span><span class="KEYW">for</span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">underlines.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 47</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="PUNC">[</span><span class="STRN">"EM"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"I"</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">include</span><span class="PUNC">(</span><span class="NAME">underlines</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">.</span><span class="NAME">nodeName</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="NAME">rdom.replaceTag</span><span class="PUNC">(</span><span class="STRN">"u"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">underlines</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">removeAttribute</span><span class="PUNC">(</span><span class="STRN">"class"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 48</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 49</span>
|
||||
<span class='linenumber'> 50</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">content</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">rdom.getRoot</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">innerHTML</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 51</span>
|
||||
<span class='linenumber'> 52</span> </span><span class="NAME">content</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.replaceTag</span><span class="PUNC">(</span><span class="NAME">content</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"strong"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"b"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 53</span> </span><span class="NAME">content</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.replaceTag</span><span class="PUNC">(</span><span class="NAME">content</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"em"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"i"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 54</span> </span><span class="NAME">content</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.removeComments</span><span class="PUNC">(</span><span class="NAME">content</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 55</span> </span><span class="NAME">content</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.replaceNbspToBr</span><span class="PUNC">(</span><span class="NAME">content</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 56</span>
|
||||
<span class='linenumber'> 57</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">content</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 58</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 59</span>
|
||||
<span class='linenumber'> 60</span> </span><span class="NAME">performFullValidation</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">content</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 61</span> </span><span class="NAME">content</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.validateSelfClosingTags</span><span class="PUNC">(</span><span class="NAME">content</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 62</span> </span><span class="NAME">content</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.applyWhitelist</span><span class="PUNC">(</span><span class="NAME">content</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 63</span>
|
||||
<span class='linenumber'> 64</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">this.urlValidationMode</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">'relative'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 65</span> </span><span class="NAME">content</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.makeUrlsRelative</span><span class="PUNC">(</span><span class="NAME">content</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 66</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">this.urlValidationMode</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">'host_relative'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 67</span> </span><span class="NAME">content</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.makeUrlsHostRelative</span><span class="PUNC">(</span><span class="NAME">content</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 68</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">this.urlValidationMode</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">'absolute'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 69</span> </span><span class="NAME">content</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.makeUrlsAbsolute</span><span class="PUNC">(</span><span class="NAME">content</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 70</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 71</span>
|
||||
<span class='linenumber'> 72</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">content</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 73</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 74</span>
|
||||
<span class='linenumber'> 75</span> </span><span class="NAME">validateFontColor</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 76</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">rdom</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">xq.RichDom.createInstance</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 77</span> </span><span class="NAME">rdom.setRoot</span><span class="PUNC">(</span><span class="NAME">element</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 78</span>
|
||||
<span class='linenumber'> 79</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">fonts</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">$A</span><span class="PUNC">(</span><span class="NAME">element.getElementsByTagName</span><span class="PUNC">(</span><span class="STRN">'FONT'</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">reverse</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 80</span> </span><span class="KEYW">for</span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">fonts.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 81</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">font</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">fonts</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 82</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">color</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">font.getAttribute</span><span class="PUNC">(</span><span class="STRN">'color'</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 83</span>
|
||||
<span class='linenumber'> 84</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">color</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 85</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">span</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">rdom.replaceTag</span><span class="PUNC">(</span><span class="STRN">"span"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">font</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 86</span> </span><span class="NAME">span.removeAttribute</span><span class="PUNC">(</span><span class="STRN">'color'</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 87</span> </span><span class="NAME">span.style.color</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">color</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 88</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 89</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 90</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 91</span>
|
||||
<span class='linenumber'> 92</span> </span><span class="NAME">addNbspToEmptyBlocks</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">content</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 93</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">blocks</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">xq.DomTree</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">getBlockTags</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">join</span><span class="PUNC">(</span><span class="STRN">"|"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 94</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">regex</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">RegExp</span><span class="PUNC">(</span><span class="STRN">"<("</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">blocks</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">")>\\s*?</("</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">blocks</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">")>"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"img"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 95</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">content.replace</span><span class="PUNC">(</span><span class="NAME">regex</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'<$1> </$2>'</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 96</span> </span><span class="PUNC">}</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 97</span>
|
||||
<span class='linenumber'> 98</span> </span><span class="NAME">replaceNbspToBr</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">content</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 99</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">blocks</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">xq.DomTree</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">getBlockTags</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">join</span><span class="PUNC">(</span><span class="STRN">"|"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>100</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">regex</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">RegExp</span><span class="PUNC">(</span><span class="STRN">"<("</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">blocks</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">")>( )?</("</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">blocks</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">")>"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">"img"</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>101</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">rdom</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">xq.RichDom.createInstance</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>102</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">content.replace</span><span class="PUNC">(</span><span class="NAME">regex</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="STRN">'<$1>'</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">rdom.makePlaceHolderString</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">'</$3>'</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>103</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>104</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>105</span> </span></pre></body></html>
|
||||
21
modules/editor/skins/xquared/doc/api/src_17.html
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
<html><head><style>
|
||||
.KEYW {color: #933;}
|
||||
.COMM {color: #bbb; font-style: italic;}
|
||||
.NUMB {color: #393;}
|
||||
.STRN {color: #393;}
|
||||
.REGX {color: #339;}
|
||||
.linenumber {border-right: 1px dotted #666; color: #666; font-style: normal;}
|
||||
</style></head><body><pre><span class='linenumber'> 1</span> <span class="COMM">/**
|
||||
<span class='linenumber'> 2</span> * Validator for Webkit
|
||||
<span class='linenumber'> 3</span> */</span><span class="WHIT">
|
||||
<span class='linenumber'> 4</span> </span><span class="NAME">xq.ValidatorWebkit</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">Class.create</span><span class="PUNC">(</span><span class="NAME">xq.ValidatorW3</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 5</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 6</span>
|
||||
<span class='linenumber'> 7</span> </span><span class="COMM">/*
|
||||
<span class='linenumber'> 8</span> if(node.nodeName == "SPAN" && node.className == "Apple-style-span" && node.style.fontStyle == "italic") em = true;
|
||||
<span class='linenumber'> 9</span> if(node.nodeName == "SPAN" && node.className == "Apple-style-span" && node.style.fontWeight == "bold") strong = true;
|
||||
<span class='linenumber'> 10</span> if(node.nodeName == "SPAN" && node.className == "Apple-style-span" && node.style.textDecoration == "line-through") strike = true;
|
||||
<span class='linenumber'> 11</span> if(node.nodeName == "SPAN" && node.className == "Apple-style-span" && node.style.textDecoration == "underline") underline = true;
|
||||
<span class='linenumber'> 12</span> if(node.nodeName == "SPAN" && node.className == "Apple-style-span" && node.style.cssText.indexOf("vertical-align: super;") != -1) superscription = true;
|
||||
<span class='linenumber'> 13</span> if(node.nodeName == "SPAN" && node.className == "Apple-style-span" && node.style.cssText.indexOf("vertical-align: sub;") != -1) subscription = true;
|
||||
<span class='linenumber'> 14</span> */</span></pre></body></html>
|
||||
157
modules/editor/skins/xquared/doc/api/src_18.html
Normal file
|
|
@ -0,0 +1,157 @@
|
|||
<html><head><style>
|
||||
.KEYW {color: #933;}
|
||||
.COMM {color: #bbb; font-style: italic;}
|
||||
.NUMB {color: #393;}
|
||||
.STRN {color: #393;}
|
||||
.REGX {color: #339;}
|
||||
.linenumber {border-right: 1px dotted #666; color: #666; font-style: normal;}
|
||||
</style></head><body><pre><span class='linenumber'> 1</span> <span class="COMM">/**
|
||||
<span class='linenumber'> 2</span> * Namespace for entire Xquared classes
|
||||
<span class='linenumber'> 3</span> */</span><span class="WHIT">
|
||||
<span class='linenumber'> 4</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">xq</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 5</span> </span><span class="NAME">majorVersion</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'0.1'</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 6</span> </span><span class="NAME">minorVersion</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="STRN">'2007119'</span><span class="WHIT">
|
||||
<span class='linenumber'> 7</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 8</span>
|
||||
<span class='linenumber'> 9</span> </span><span class="COMM">/**
|
||||
<span class='linenumber'> 10</span> * Make given object as event source
|
||||
<span class='linenumber'> 11</span> *
|
||||
<span class='linenumber'> 12</span> * @param {Object} object target object
|
||||
<span class='linenumber'> 13</span> * @param {String} prefix prefix for generated functions
|
||||
<span class='linenumber'> 14</span> * @param {Array} events array of string which contains name of events
|
||||
<span class='linenumber'> 15</span> */</span><span class="WHIT">
|
||||
<span class='linenumber'> 16</span> </span><span class="NAME">xq.asEventSource</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">object</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">prefix</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">events</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 17</span> </span><span class="NAME">object._listeners</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="PUNC">]</span><span class="WHIT">
|
||||
<span class='linenumber'> 18</span> </span><span class="NAME">object._registerEventFirer</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">prefix</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">name</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 19</span> </span><span class="KEYW">this</span><span class="PUNC">[</span><span class="STRN">"_fireOn"</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">name</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 20</span> </span><span class="KEYW">for</span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">this._listeners.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 21</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">listener</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this._listeners</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 22</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">func</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">listener</span><span class="PUNC">[</span><span class="STRN">"on"</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">prefix</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">name</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 23</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">func</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="NAME">func.apply</span><span class="PUNC">(</span><span class="NAME">listener</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">$A</span><span class="PUNC">(</span><span class="NAME">arguments</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 24</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 25</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 26</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 27</span> </span><span class="NAME">object.addListener</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">l</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 28</span> </span><span class="NAME">this._listeners.push</span><span class="PUNC">(</span><span class="NAME">l</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 29</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 30</span>
|
||||
<span class='linenumber'> 31</span> </span><span class="KEYW">for</span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">events.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 32</span> </span><span class="NAME">object._registerEventFirer</span><span class="PUNC">(</span><span class="NAME">prefix</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">events</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 33</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 34</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 35</span>
|
||||
<span class='linenumber'> 36</span> </span><span class="COMM">/**
|
||||
<span class='linenumber'> 37</span> * Returns the index of given element
|
||||
<span class='linenumber'> 38</span> *
|
||||
<span class='linenumber'> 39</span> * @returns {Number} index or -1
|
||||
<span class='linenumber'> 40</span> */</span><span class="WHIT">
|
||||
<span class='linenumber'> 41</span> </span><span class="NAME">Array.prototype.indexOf</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">n</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 42</span> </span><span class="KEYW">for</span><span class="PUNC">(</span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NUMB">0</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="WHIT"> </span><span class="PUNC"><</span><span class="WHIT"> </span><span class="NAME">this.length</span><span class="PUNC">;</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">++</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 43</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="KEYW">this</span><span class="PUNC">[</span><span class="NAME">i</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="NAME">n</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">i</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 44</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 45</span>
|
||||
<span class='linenumber'> 46</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="NUMB">1</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 47</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 48</span>
|
||||
<span class='linenumber'> 49</span> </span><span class="NAME">Date.preset</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 50</span> </span><span class="NAME">Date.pass</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">msec</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 51</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">Date.preset</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="KEYW">return</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 52</span> </span><span class="NAME">Date.preset</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">Date</span><span class="PUNC">(</span><span class="NAME">Date.preset.getTime</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">msec</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 53</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 54</span> </span><span class="NAME">Date.get</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 55</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">Date.preset</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="WHIT"> </span><span class="PUNC">?</span><span class="WHIT"> </span><span class="KEYW">new</span><span class="WHIT"> </span><span class="NAME">Date</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">Date.preset</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 56</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 57</span> </span><span class="NAME">Date.prototype.elapsed</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">msec</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 58</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">Date.get</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">getTime</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">-</span><span class="WHIT"> </span><span class="NAME">this.getTime</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">>=</span><span class="WHIT"> </span><span class="NAME">msec</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 59</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 60</span>
|
||||
<span class='linenumber'> 61</span> </span><span class="NAME">String.prototype.merge</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">data</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 62</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">newString</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">this</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 63</span> </span><span class="KEYW">for</span><span class="PUNC">(</span><span class="NAME">k</span><span class="WHIT"> </span><span class="KEYW">in</span><span class="WHIT"> </span><span class="NAME">data</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 64</span> </span><span class="NAME">newString</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">newString.replace</span><span class="PUNC">(</span><span class="STRN">"{"</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">k</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">"}"</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">data</span><span class="PUNC">[</span><span class="NAME">k</span><span class="PUNC">]</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 65</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 66</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">newString</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 67</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 68</span>
|
||||
<span class='linenumber'> 69</span> </span><span class="NAME">String.prototype.parseURL</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 70</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">m</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">this.match</span><span class="PUNC">(</span><span class="REGX">/((((\w+):\/\/(((([^@:]+)(:([^@]+))?)@)?([^:\/\?#]+)?(:(\d+))?))?([^\?#]+)?)(\?([^#]+))?)(#(.+))?/</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 71</span>
|
||||
<span class='linenumber'> 72</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">includeAnchor</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">m</span><span class="PUNC">[</span><span class="NUMB">0</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 73</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">includeQuery</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">m</span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">undefined</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 74</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">includePath</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">m</span><span class="PUNC">[</span><span class="NUMB">2</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">undefined</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 75</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">includeHost</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">m</span><span class="PUNC">[</span><span class="NUMB">3</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">undefined</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 76</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">includeBase</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">null</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 77</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">protocol</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">m</span><span class="PUNC">[</span><span class="NUMB">4</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">undefined</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 78</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">user</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">m</span><span class="PUNC">[</span><span class="NUMB">8</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">undefined</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 79</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">password</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">m</span><span class="PUNC">[</span><span class="NUMB">10</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">undefined</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 80</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">domain</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">m</span><span class="PUNC">[</span><span class="NUMB">11</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">undefined</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 81</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">port</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">m</span><span class="PUNC">[</span><span class="NUMB">13</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">undefined</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 82</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">path</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">m</span><span class="PUNC">[</span><span class="NUMB">14</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">undefined</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 83</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">query</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">m</span><span class="PUNC">[</span><span class="NUMB">16</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">undefined</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 84</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">anchor</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">m</span><span class="PUNC">[</span><span class="NUMB">18</span><span class="PUNC">]</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">undefined</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 85</span>
|
||||
<span class='linenumber'> 86</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">path</span><span class="WHIT"> </span><span class="PUNC">||</span><span class="WHIT"> </span><span class="NAME">path</span><span class="WHIT"> </span><span class="PUNC">==</span><span class="WHIT"> </span><span class="STRN">'/'</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 87</span> </span><span class="NAME">includeBase</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">includeHost</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">'/'</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 88</span> </span><span class="PUNC">}</span><span class="WHIT"> </span><span class="KEYW">else</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 89</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">index</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">path.lastIndexOf</span><span class="PUNC">(</span><span class="STRN">'/'</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 90</span> </span><span class="NAME">includeBase</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">includeHost</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">path.substring</span><span class="PUNC">(</span><span class="NUMB">0</span><span class="PUNC">,</span><span class="WHIT"> </span><span class="NAME">index</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NUMB">1</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 91</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'> 92</span>
|
||||
<span class='linenumber'> 93</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'> 94</span> </span><span class="NAME">includeAnchor</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">includeAnchor</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 95</span> </span><span class="NAME">includeQuery</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">includeQuery</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 96</span> </span><span class="NAME">includePath</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">includePath</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 97</span> </span><span class="NAME">includeBase</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">includeBase</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 98</span> </span><span class="NAME">includeHost</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">includeHost</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'> 99</span> </span><span class="NAME">protocol</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">protocol</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>100</span> </span><span class="NAME">user</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">user</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>101</span> </span><span class="NAME">password</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">password</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>102</span> </span><span class="NAME">domain</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">domain</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>103</span> </span><span class="NAME">port</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">port</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>104</span> </span><span class="NAME">path</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">path</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>105</span> </span><span class="NAME">query</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">query</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>106</span> </span><span class="NAME">anchor</span><span class="PUNC">:</span><span class="WHIT"> </span><span class="NAME">anchor</span><span class="WHIT">
|
||||
<span class='linenumber'>107</span> </span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>108</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>109</span>
|
||||
<span class='linenumber'>110</span> </span><span class="NAME">xq.findXquaredScript</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>111</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">$A</span><span class="PUNC">(</span><span class="NAME">document.getElementsByTagName</span><span class="PUNC">(</span><span class="STRN">"script"</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="PUNC">.</span><span class="NAME">find</span><span class="PUNC">(</span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">script</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>112</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">script.src</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="NAME">script.src.match</span><span class="PUNC">(</span><span class="REGX">/xquared\.js/i</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>113</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>114</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>115</span> </span><span class="NAME">xq.shouldLoadOthers</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>116</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">script</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">xq.findXquaredScript</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>117</span> </span><span class="KEYW">return</span><span class="WHIT"> </span><span class="NAME">script</span><span class="WHIT"> </span><span class="PUNC">&&</span><span class="WHIT"> </span><span class="PUNC">!</span><span class="PUNC">!</span><span class="NAME">script.src.match</span><span class="PUNC">(</span><span class="REGX">/xquared\.js\?load_others=1/i</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>118</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>119</span> </span><span class="NAME">xq.loadScript</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">url</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>120</span> </span><span class="NAME">document.write</span><span class="PUNC">(</span><span class="STRN">'<script type="text/javascript" src="'</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">url</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="STRN">'"></script>'</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>121</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>122</span> </span><span class="NAME">xq.loadOthers</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="KEYW">function</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>123</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">script</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">xq.findXquaredScript</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>124</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">basePath</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="NAME">script.src.match</span><span class="PUNC">(</span><span class="REGX">/(.*\/)xquared\.js.*/i</span><span class="PUNC">)</span><span class="PUNC">[</span><span class="NUMB">1</span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>125</span> </span><span class="KEYW">var</span><span class="WHIT"> </span><span class="NAME">others</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">[</span><span class="WHIT">
|
||||
<span class='linenumber'>126</span> </span><span class="STRN">'Editor.js'</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>127</span> </span><span class="STRN">'Browser.js'</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>128</span> </span><span class="STRN">'Shortcut.js'</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>129</span> </span><span class="STRN">'DomTree.js'</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>130</span> </span><span class="STRN">'RichDom.js'</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>131</span> </span><span class="STRN">'RichDomW3.js'</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>132</span> </span><span class="STRN">'RichDomGecko.js'</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>133</span> </span><span class="STRN">'RichDomWebkit.js'</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>134</span> </span><span class="STRN">'RichDomTrident.js'</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>135</span> </span><span class="STRN">'RichTable.js'</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>136</span> </span><span class="STRN">'Validator.js'</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>137</span> </span><span class="STRN">'ValidatorW3.js'</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>138</span> </span><span class="STRN">'ValidatorGecko.js'</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>139</span> </span><span class="STRN">'ValidatorWebkit.js'</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>140</span> </span><span class="STRN">'ValidatorTrident.js'</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>141</span> </span><span class="STRN">'EditHistory.js'</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>142</span> </span><span class="STRN">'Controls.js'</span><span class="PUNC">,</span><span class="WHIT">
|
||||
<span class='linenumber'>143</span> </span><span class="STRN">'_ui_templates.js'</span><span class="WHIT">
|
||||
<span class='linenumber'>144</span> </span><span class="PUNC">]</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>145</span> </span><span class="NAME">others.each</span><span class="PUNC">(</span><span class="KEYW">function</span><span class="PUNC">(</span><span class="NAME">name</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="WHIT">
|
||||
<span class='linenumber'>146</span> </span><span class="NAME">xq.loadScript</span><span class="PUNC">(</span><span class="NAME">basePath</span><span class="WHIT"> </span><span class="PUNC">+</span><span class="WHIT"> </span><span class="NAME">name</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>147</span> </span><span class="PUNC">}</span><span class="PUNC">)</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'>148</span> </span><span class="PUNC">}</span><span class="WHIT">
|
||||
<span class='linenumber'>149</span>
|
||||
<span class='linenumber'>150</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="NAME">xq.shouldLoadOthers</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="NAME">xq.loadOthers</span><span class="PUNC">(</span><span class="PUNC">)</span><span class="PUNC">;</span></pre></body></html>
|
||||
16
modules/editor/skins/xquared/doc/api/src_19.html
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
<html><head><style>
|
||||
.KEYW {color: #933;}
|
||||
.COMM {color: #bbb; font-style: italic;}
|
||||
.NUMB {color: #393;}
|
||||
.STRN {color: #393;}
|
||||
.REGX {color: #339;}
|
||||
.linenumber {border-right: 1px dotted #666; color: #666; font-style: normal;}
|
||||
</style></head><body><pre><span class='linenumber'> 1</span> <span class="KEYW">if</span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">xq</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="NAME">xq</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 2</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">xq.ui_templates</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="NAME">xq.ui_templates</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 3</span>
|
||||
<span class='linenumber'> 4</span> </span><span class="NAME">xq.ui_templates.basicColorPickerDialog</span><span class="PUNC">=</span><span class="STRN">'<form action="#" class="xqFormDialog xqBasicColorPickerDialog">\n <div>\n <label>\n <input type="radio" class="initialFocus" name="color" value="black" checked="checked" />\n <span style="color: black;">Black</span>\n </label>\n <label>\n <input type="radio" name="color" value="red" />\n <span style="color: red;">Red</span>\n </label>\n <input type="radio" name="color" value="yellow" />\n <span style="color: yellow;">Yellow</span>\n </label>\n </label>\n <input type="radio" name="color" value="pink" />\n <span style="color: pink;">Pink</span>\n </label>\n <label>\n <input type="radio" name="color" value="blue" />\n <span style="color: blue;">Blue</span>\n </label>\n <label>\n <input type="radio" name="color" value="green" />\n <span style="color: green;">Green</span>\n </label>\n \n <input type="submit" value="Ok" />\n <input type="button" class="cancel" value="Cancel" />\n </div>\n </form>'</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 5</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">xq</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="NAME">xq</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 6</span> </span><span class="KEYW">if</span><span class="PUNC">(</span><span class="PUNC">!</span><span class="NAME">xq.ui_templates</span><span class="PUNC">)</span><span class="WHIT"> </span><span class="NAME">xq.ui_templates</span><span class="WHIT"> </span><span class="PUNC">=</span><span class="WHIT"> </span><span class="PUNC">{</span><span class="PUNC">}</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 7</span>
|
||||
<span class='linenumber'> 8</span> </span><span class="NAME">xq.ui_templates.basicLinkDialog</span><span class="PUNC">=</span><span class="STRN">'<form action="#" class="xqFormDialog xqBasicLinkDialog">\n <h3>Link</h3>\n <div>\n <input type="text" class="initialFocus" name="text" value="" />\n <input type="text" name="url" value="http://" />\n \n <input type="submit" value="Ok" />\n <input type="button" class="cancel" value="Cancel" />\n </div>\n </form>'</span><span class="PUNC">;</span><span class="WHIT">
|
||||
<span class='linenumber'> 9</span> </span></pre></body></html>
|
||||
78
modules/editor/skins/xquared/editor.html
Normal file
|
|
@ -0,0 +1,78 @@
|
|||
<!-- 스킨 css 로드 -->
|
||||
<!--%import("examples/css/xq_ui.css")-->
|
||||
<!--%import("css/default.css")-->
|
||||
<script type="text/javascript">
|
||||
var editor_path = "{$editor_path}";
|
||||
</script>
|
||||
|
||||
<!-- 기본 js/언어파일 로드 -->
|
||||
<!--%import("../../tpl/js/editor_common.js")-->
|
||||
<!--%import("js/prototype.js")-->
|
||||
<!--%import("js/xquared.js")-->
|
||||
<!--%import("js/xe_interface.js")-->
|
||||
|
||||
<!-- 에디터 활성화 -->
|
||||
<script type="text/javascript">//<![CDATA[
|
||||
var auto_saved_msg = "{$lang->msg_auto_saved}";
|
||||
var xed_{$editor_sequence};
|
||||
xAddEventListener(window, 'load', function() {
|
||||
if($("comment_{$editor_sequence}") == null || $("comment_{$editor_sequence}").style.display != 'none'){
|
||||
editorStart_xq(xed_{$editor_sequence}, $("xqEditor_{$editor_sequence}"), {$editor_sequence}, "{$editor_content_key_name}", "{$editor_height}px", "{$editor_primary_key_name}");
|
||||
}});
|
||||
//]]></script>
|
||||
|
||||
<!-- 자동저장용 폼 -->
|
||||
<!--@if($enable_autosave)-->
|
||||
<input type="hidden" name="_saved_doc_title" value="{htmlspecialchars($saved_doc->title)}" />
|
||||
<input type="hidden" name="_saved_doc_content" value="{htmlspecialchars($saved_doc->content)}" />
|
||||
<input type="hidden" name="_saved_doc_message" value="{$lang->msg_load_saved_doc}" />
|
||||
<!--@end-->
|
||||
|
||||
<!-- 에디터 -->
|
||||
<div class="xeEditor" style="margin-top:5px; margin-bottom:5px;">
|
||||
|
||||
<!-- HTML 모드 사용 기능 및 자동저장 메세지 출력용 -->
|
||||
<!--<div class="editor_info">
|
||||
<div class="editor_option">
|
||||
<input type="checkbox" id="use_html_{$editor_sequence}" value="Y" onclick="editorChangeMode(this, '{$editor_sequence}');" /> <label for="use_html_{$editor_sequence}">HTML</label>
|
||||
</div>
|
||||
<div class="editor_autosaved_message" id="editor_autosaved_message_{$editor_sequence}"> </div>
|
||||
</div>-->
|
||||
|
||||
<!-- 에디터 출력 -->
|
||||
<div id = "xqEditor_{$editor_sequence}"></div>
|
||||
<textarea id="editor_textarea_{$editor_sequence}" class="editor_iframe_textarea" style="display:none; height:{$editor_height}" rows="10" cols="10"></textarea>
|
||||
|
||||
<!-- 에디터 크기 조절 bar -->
|
||||
<!-- <div class="textAreaDragIndicator"><div class="textAreaDragIndicatorBar" id="editor_drag_bar_{$editor_sequence}"></div></div>-->
|
||||
|
||||
<!--@if($allow_fileupload)-->
|
||||
<!-- 첨부파일 영역 -->
|
||||
<!--%import("../../tpl/js/uploader.js")-->
|
||||
<script type="text/javascript">//<![CDATA[
|
||||
var zbxe_session_name = "{session_name()}";
|
||||
var uploader_setting = { "allowed_filesize" : "{$file_config->allowed_filesize}", "allowed_filetypes" : "{$file_config->allowed_filetypes}", "allowed_filetypes_description" : "{$file_config->allowed_filetypes}" }
|
||||
<!--@if(!$editor_manual_start)-->
|
||||
editor_upload_init("{$editor_sequence}", editorGetForm_xq($("xqEditor_{$editor_sequence}")));
|
||||
<!--@end-->
|
||||
//]]></script>
|
||||
|
||||
<div class="fileAttach">
|
||||
<div class="preview" id="preview_uploaded_{$editor_sequence}"><img src="./images/blank.gif" alt="preview" width="100" height="100" /></div>
|
||||
|
||||
<!-- 파일 업로드 영역 -->
|
||||
<div class="fileListArea">
|
||||
<select id="uploaded_file_list_{$editor_sequence}" multiple="multiple" size="5" class="fileList" onclick="editor_preview(this, '{$editor_sequence}');"></select>
|
||||
<span class="file_attach_info" id="uploader_status_{$editor_sequence}">{$upload_status}</span>
|
||||
</div>
|
||||
|
||||
<div class="fileUploadControl"><a href="#" onclick="editor_upload_file('{$editor_sequence}');return false;" class="button"><span>{$lang->edit->upload_file}</span></a></div>
|
||||
<div class="fileUploadControl"><a href="#" onclick="editor_remove_file('{$editor_sequence}');return false;" class="button"><span>{$lang->edit->delete_selected}</span></a></div>
|
||||
<div class="fileUploadControl"><a href="#" onclick="editor_insert_file_xq('{$editor_sequence}');return false;" class="button"><span>{$lang->edit->link_file}</span></a></div>
|
||||
|
||||
<div class="clear"></div>
|
||||
</div>
|
||||
<!--@end-->
|
||||
</div>
|
||||
|
||||
|
||||
122
modules/editor/skins/xquared/examples/css/xq_contents.css
Normal file
|
|
@ -0,0 +1,122 @@
|
|||
/* Basic */
|
||||
.xed {
|
||||
color: #494949;
|
||||
padding: 0.3em;
|
||||
font-size: 0.833em;
|
||||
font-family: Arial, dotum, sans-serif;
|
||||
}
|
||||
.xed * {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
|
||||
|
||||
/* Headings and paragraph */
|
||||
.xed h1,
|
||||
.xed h2,
|
||||
.xed h3,
|
||||
.xed h4,
|
||||
.xed h5,
|
||||
.xed h6 {
|
||||
border-bottom: 2px solid #425e89;
|
||||
line-height: 1em;
|
||||
padding-bottom: 0.2em;
|
||||
margin: 0.2em 0;
|
||||
}
|
||||
|
||||
.xed h1 {font-size: 2.845em;}
|
||||
.xed h2 {font-size: 2.460em;}
|
||||
.xed h3 {font-size: 2.153em;}
|
||||
.xed h4 {font-size: 1.922em;}
|
||||
.xed h5 {font-size: 1.461em;}
|
||||
.xed h6 {font-size: 1.230em;}
|
||||
|
||||
.xed p {
|
||||
margin: 0.614em 0;
|
||||
line-height: 1.230em;
|
||||
}
|
||||
|
||||
.xed hr {
|
||||
}
|
||||
|
||||
|
||||
|
||||
/* List */
|
||||
.xed ul,
|
||||
.xed ol {
|
||||
padding-left: 2em;
|
||||
margin: 0.614em 0;
|
||||
}
|
||||
.xed li {
|
||||
line-height: 1.306em;
|
||||
}
|
||||
|
||||
|
||||
|
||||
/* Other block containers */
|
||||
.xed ol.code,
|
||||
.xed div,
|
||||
.xed blockquote {
|
||||
margin: 1em 0;
|
||||
padding-left: 2.460em;
|
||||
padding-right: 1em;
|
||||
border-width: 0 3px;
|
||||
border-style: solid;
|
||||
line-height: 1.306em;
|
||||
}
|
||||
.xed ol.code {
|
||||
font-family: monospace;
|
||||
list-style-type: none;
|
||||
border-color: #ffb781;
|
||||
background: url(../img/content/code.gif) no-repeat 0 0;
|
||||
}
|
||||
.xed div {
|
||||
border-color: #8ccfff;
|
||||
background: url(../img/content/div.gif) no-repeat 0 0;
|
||||
}
|
||||
.xed blockquote {
|
||||
border-color: #c9c9c9;
|
||||
background: url(../img/content/blockquote.gif) no-repeat 0 0;
|
||||
}
|
||||
|
||||
|
||||
|
||||
/* Inline elements */
|
||||
.xed em.underline {
|
||||
font-style: normal;
|
||||
text-decoration: underline;
|
||||
}
|
||||
.xed span.strike {
|
||||
text-decoration: line-through;
|
||||
}
|
||||
|
||||
|
||||
|
||||
/* table */
|
||||
.xed table.datatable {
|
||||
width: 100%;
|
||||
/width: auto;
|
||||
border-collapse: collapse;
|
||||
table-layout: fixed;
|
||||
}
|
||||
.xed table.datatable th {
|
||||
font-weight: normal;
|
||||
padding: 0.25em 0.307em;
|
||||
}
|
||||
.xed table.datatable td {
|
||||
padding: 0.25em 0.307em;
|
||||
}
|
||||
.xed table.datatable {
|
||||
border-left: 1px solid #000;
|
||||
border-top: 1px solid #000;
|
||||
}
|
||||
.xed table.datatable th {
|
||||
background-color: #e7e7e7;
|
||||
border-bottom: 1px solid #000;
|
||||
border-right: 1px solid #000;
|
||||
}
|
||||
.xed table.datatable td {
|
||||
border-bottom: 1px solid #000;
|
||||
border-right: 1px solid #000;
|
||||
}
|
||||
233
modules/editor/skins/xquared/examples/css/xq_ui.css
Normal file
|
|
@ -0,0 +1,233 @@
|
|||
/**
|
||||
* Default Toolbar
|
||||
*/
|
||||
.xquared {
|
||||
border: 1px solid #c2c2c2;
|
||||
}
|
||||
.xquared div.toolbar {
|
||||
position: relative;
|
||||
background-color: #ebebeb;
|
||||
background-position: 0 0;
|
||||
background-repeat: repeat-x;
|
||||
background-image: url(../img/toolbar/toolbarBg.gif);
|
||||
}
|
||||
|
||||
.xquared ul.buttons {
|
||||
margin: 0;
|
||||
padding: 5px 4px 2px;
|
||||
list-style: none;
|
||||
border-top: 1px solid #fff;
|
||||
border-bottom: 1px solid #fff;
|
||||
overflow: hidden;
|
||||
height: 100%;
|
||||
}
|
||||
.xquared ul.buttons li {
|
||||
float: left;
|
||||
padding-bottom: 3px;
|
||||
background-position: 0 0;
|
||||
background-repeat: repeat-x;
|
||||
background-image: url(../img/toolbar/toolbarButtonBg.gif);
|
||||
}
|
||||
.xquared ul.buttons li.xq_separator {
|
||||
padding-left: 8px;
|
||||
margin-left: 8px;
|
||||
background-position: 0 0;
|
||||
background-repeat: repeat-x;
|
||||
background-image: url(../img/toolbar/toolbarSeparator.gif);
|
||||
}
|
||||
.xquared ul.buttons li a {
|
||||
display: block;
|
||||
padding: 2px;
|
||||
font-size: 0;
|
||||
border: 1px solid #d2d2d2;
|
||||
margin-right: -1px;
|
||||
position: relative;
|
||||
height: 100%;
|
||||
_height: auto;
|
||||
z-index: 0;
|
||||
}
|
||||
.xquared ul.buttons li a img {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
border: none;
|
||||
font-size: 1.25em;
|
||||
}
|
||||
|
||||
/* selected */
|
||||
.xquared ul.buttons li a.selected {
|
||||
background-color: #ffea5f;
|
||||
border: 1px solid #a0a0a0;
|
||||
position: relative;
|
||||
z-index: 1;
|
||||
}
|
||||
|
||||
/* mouseover */
|
||||
.xquared ul.buttons li a:hover {
|
||||
border: 1px solid #000;
|
||||
background-color: transparent;
|
||||
position: relative;
|
||||
z-index: 2;
|
||||
}
|
||||
|
||||
/* disabled */
|
||||
.xquared .disabled ul.buttons li a,
|
||||
.xquared ul.buttons li .disabled a {
|
||||
background-color: #fff;
|
||||
opacity: 0.3;
|
||||
filter:alpha(opacity=30);
|
||||
_width: 1px;
|
||||
_height: 1px;
|
||||
cursor: default;
|
||||
}
|
||||
.xquared .disabled ul.buttons li a,
|
||||
.xquared ul.buttons li .disabled a:hover {
|
||||
border: 1px solid #dbdbdb;
|
||||
position: relative;
|
||||
z-index: 0;
|
||||
}
|
||||
.xquared .disabled ul.buttons li a,
|
||||
.xquared ul.buttons li .disabled a.selected {
|
||||
border: 1px solid #dbdbdb;
|
||||
}
|
||||
|
||||
.xquared .editor {
|
||||
border: 0 none;
|
||||
border-top:1px solid #c2c2c2;
|
||||
height:300px;
|
||||
}
|
||||
.xquared .editor textarea,
|
||||
.xquared .editor iframe {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
border: 0 none;
|
||||
height: 100%;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.xquared .editor textarea {
|
||||
_height: expression(this.parentNode.clientHeight - 2); /* TODO remove IE6 hack */
|
||||
}
|
||||
*+html .xquared .editor textarea {
|
||||
height: expression(this.parentNode.clientHeight - 1); /* TODO remove IE7 hack */
|
||||
}
|
||||
|
||||
.xquared .source_editor {
|
||||
padding-left: 0.3em;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Context Menu
|
||||
*/
|
||||
.xqContextMenu {
|
||||
position:absolute;
|
||||
z-index: 902;
|
||||
font-size: medium;
|
||||
font-family: arial, "돋움";
|
||||
width:auto;
|
||||
margin:0;
|
||||
padding:3px;
|
||||
border:1px solid #aaa;
|
||||
list-style:none;
|
||||
background-color: #fff;
|
||||
}
|
||||
.xqContextMenu li {
|
||||
padding:2px 3px 2px 20px;
|
||||
background-position:left;
|
||||
background-repeat:no-repeat;
|
||||
color:#aaa;
|
||||
display:block;
|
||||
width:200px;
|
||||
}
|
||||
.xqContextMenu a {
|
||||
color:#000;
|
||||
text-decoration:none;
|
||||
}
|
||||
.xqContextMenu .separator {
|
||||
margin-top:5px;
|
||||
padding-bottom:0px;
|
||||
line-height:0em;
|
||||
height: 1px;
|
||||
/height: auto;
|
||||
border-top: 1px solid #aaa;
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* Controls - BasicLinkDialog
|
||||
*/
|
||||
.xqFormDialog {
|
||||
position:absolute;
|
||||
z-index: 902;
|
||||
border:1px solid #aaa;
|
||||
background-color: #fff;
|
||||
padding: 0.5em;
|
||||
overflow:auto; /* to fix FF caret bug */
|
||||
}
|
||||
|
||||
.xqFormDialog h3 {
|
||||
font-size: 1.2em;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* Controls - QuickSearchDialog
|
||||
*/
|
||||
.xqQuickSearch {
|
||||
position:absolute;
|
||||
z-index: 902;
|
||||
font-size: medium;
|
||||
font-family: arial, "돋움";
|
||||
width:15em;
|
||||
margin:0;
|
||||
padding:0;
|
||||
border:1px solid #aaa;
|
||||
list-style:none;
|
||||
background-color: #fff;
|
||||
overflow:auto; /* to fix FF caret bug */
|
||||
}
|
||||
|
||||
.xqQuickSearch h1 {
|
||||
font-size: medium;
|
||||
font-weight: bold;
|
||||
margin: 2px;
|
||||
padding: 2px;
|
||||
}
|
||||
|
||||
.xqQuickSearch .input {
|
||||
border: 1px solid #aaa;
|
||||
padding: 2px;
|
||||
margin: 2px;
|
||||
}
|
||||
|
||||
.xqQuickSearch form {
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.xqQuickSearch input {
|
||||
border-width: 0;
|
||||
margin: 0 2px;
|
||||
width: 98%;
|
||||
}
|
||||
|
||||
.xqQuickSearch ol {
|
||||
border: 1px solid #aaa;
|
||||
padding: 2px;
|
||||
margin: 2px;
|
||||
height: 10em;
|
||||
overflow: auto;
|
||||
}
|
||||
|
||||
.xqQuickSearch li {
|
||||
list-style: none;
|
||||
padding-bottom: 1px;
|
||||
border-bottom: 1px solid #ddd;
|
||||
cursor: pointer;
|
||||
_cursor: hand;
|
||||
}
|
||||
|
||||
.xqQuickSearch li.selected {
|
||||
background-color: #ffd;
|
||||
}
|
||||
77
modules/editor/skins/xquared/examples/default.html
Normal file
|
|
@ -0,0 +1,77 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ko">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8" />
|
||||
<title>Xquared example - Default</title>
|
||||
<link rel="stylesheet" type="text/css" href="css/xq_ui.css" />
|
||||
<script type="text/javascript" src="../js/prototype.js"></script>
|
||||
<script type="text/javascript" src="../js/xquared.js"></script>
|
||||
<script type="text/javascript">//<![CDATA[
|
||||
var xed;
|
||||
|
||||
window.onload = function() {
|
||||
xed = new xq.Editor($("xqEditor"));
|
||||
xed.setEditMode('wysiwyg');
|
||||
xed.loadStylesheet("css/xq_contents.css");
|
||||
xed.focus();
|
||||
}
|
||||
//]]></script>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div id="xqEditor">
|
||||
<p>Most notably, it has been confirmed in many empirical studies on tagging(see e.g. [Golder:2005, Hotho:2006, Cattuto:2006]), that tag distributions tend follow a power law—a small number of tags is used very often, while a very large number of tags occurs very rarely.</p>
|
||||
<p>This holds true both for individuals as well as whole tagging communities.</p>
|
||||
<ul>
|
||||
<li>Item 1</li>
|
||||
<li>Item 2</li>
|
||||
</ul>
|
||||
<p>This holds true both for individuals as well as whole tagging communities.</p>
|
||||
<ul>
|
||||
<li>
|
||||
<p>Item 1</p>
|
||||
<ol>
|
||||
<li>Item 1</li>
|
||||
<li>Item 2</li>
|
||||
</ol>
|
||||
</li>
|
||||
<li>Item 2</li>
|
||||
<li>Item 3</li>
|
||||
</ul>
|
||||
<p>This holds true both for individuals as well as whole tagging communities.</p>
|
||||
<div>
|
||||
<p>Most notably, it has been confirmed in many empirical studies on tagging(see e.g. [Golder:2005, Hotho:2006, Cattuto:2006]), that tag distributions tend follow a power law—a small number of tags is used very often, while a very large number of tags occurs very rarely.</p>
|
||||
<blockquote>
|
||||
<p>This holds true both for individuals as well as whole tagging communities.</p>
|
||||
</blockquote>
|
||||
</div>
|
||||
<p>Most notably, it has been confirmed in many empirical studies on tagging(see e.g. [Golder:2005, Hotho:2006, Cattuto:2006]), that tag distributions tend follow a power law—a small number of tags is used very often, while a very large number of tags occurs very rarely.</p>
|
||||
<blockquote>
|
||||
<p>Most notably, it has been confirmed in many empirical studies on tagging(see e.g. [Golder:2005, Hotho:2006, Cattuto:2006]), that tag distributions tend follow a power law—a small number of tags is used very often, while a very large number of tags occurs very rarely.</p>
|
||||
<blockquote>
|
||||
<p>This holds true both for individuals as well as whole tagging communities.</p>
|
||||
</blockquote>
|
||||
</blockquote>
|
||||
<p>Most notably, it has been confirmed in many empirical studies on tagging(see e.g. [Golder:2005, Hotho:2006, Cattuto:2006]), that tag distributions tend follow a power law—a small number of tags is used very often, while a very large number of tags occurs very rarely.</p>
|
||||
<h1>Heading 1</h1>
|
||||
<p>Most notably, it has been confirmed in many empirical studies on tagging(see e.g. [Golder:2005, Hotho:2006, Cattuto:2006]), that tag distributions tend follow a power law—a small number of tags is used very often, while a very large number of tags occurs very rarely.</p>
|
||||
<h1>Heading 1</h1>
|
||||
<h2>Heading 2</h2>
|
||||
<p>Most notably, it has been confirmed in many empirical studies on tagging(see e.g. [Golder:2005, Hotho:2006, Cattuto:2006]), that tag distributions tend follow a power law—a small number of tags is used very often, while a very large number of tags occurs very rarely.</p>
|
||||
<h1>Heading 1</h1>
|
||||
<h2>Heading 2</h2>
|
||||
<h3>Heading 3</h3>
|
||||
<p>Most notably, it has been confirmed in many empirical studies on tagging(see e.g. [Golder:2005, Hotho:2006, Cattuto:2006]), that tag distributions tend follow a power law—a small number of tags is used very often, while a very large number of tags occurs very rarely.</p>
|
||||
<h4>Heading 4</h4>
|
||||
<h5>Heading 5</h5>
|
||||
<p>Most notably, it has been confirmed in many empirical studies on tagging(see e.g. [Golder:2005, Hotho:2006, Cattuto:2006]), that tag distributions tend follow a power law—a small number of tags is used very often, while a very large number of tags occurs very rarely.</p>
|
||||
<h6>Heading 6</h6>
|
||||
<p>Most notably, it has been confirmed in many empirical studies on tagging(see e.g. [Golder:2005, Hotho:2006, Cattuto:2006]), that tag distributions tend follow a power law—a small number of tags is used very often, while a very large number of tags occurs very rarely.</p>
|
||||
<ol class="code">
|
||||
<li>print "Hello World"</li>
|
||||
<li>print "Hello World"</li>
|
||||
</ol>
|
||||
<p>Most notably, it has been confirmed in many empirical studies on tagging(see e.g. [Golder:2005, Hotho:2006, Cattuto:2006]), that tag distributions tend follow a power law—a small number of tags is used very often, while a very large number of tags occurs very rarely.</p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
308
modules/editor/skins/xquared/examples/extensionpoint.html
Normal file
|
|
@ -0,0 +1,308 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ko">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8" />
|
||||
<title>Xquared example - Extension point</title>
|
||||
<link rel="stylesheet" type="text/css" href="css/xq_ui.css" />
|
||||
<script type="text/javascript" src="../js/prototype.js"></script>
|
||||
<script type="text/javascript" src="../js/xquared.js"></script>
|
||||
<script type="text/javascript">//<![CDATA[
|
||||
var xed;
|
||||
|
||||
window.onload = function() {
|
||||
xed = new xq.Editor($("xqEditor"));
|
||||
xed.setEditMode('wysiwyg');
|
||||
|
||||
xed.addShortcuts(getAdditionalShortcuts());
|
||||
xed.addAutocorrections(getAdditionalAutocorrections());
|
||||
xed.addAutocompletions(getAdditionalAutocompletions());
|
||||
xed.addContextMenuHandler('test', contextMenuHandler);
|
||||
|
||||
xed.loadStylesheet("css/xq_contents.css");
|
||||
xed.focus();
|
||||
}
|
||||
|
||||
function getAdditionalAutocompletions() {
|
||||
return [
|
||||
{
|
||||
id:'isbn',
|
||||
criteria: /@ISBN:\d+$/i,
|
||||
handler: function(xed, rdom, block, wrapper, text) {
|
||||
var isbn = text.split(":")[1]
|
||||
var korean = isbn.indexOf("97889") == 0 || isbn.indexOf("89") == 0
|
||||
var href = korean ?
|
||||
"http://www.aladdin.co.kr/shop/wproduct.aspx?ISBN=" :
|
||||
"http://www.amazon.com/exec/obidos/ISBN="
|
||||
var node = rdom.createElement('A');
|
||||
node.innerHTML = 'ISBN:' + isbn;
|
||||
node.href = href + isbn;
|
||||
node.className = 'external';
|
||||
node.title = 'ISBN:' + isbn;
|
||||
|
||||
wrapper.innerHTML = "";
|
||||
wrapper.appendChild(node);
|
||||
}
|
||||
},
|
||||
{
|
||||
id:'anchor',
|
||||
criteria: /@A(:(.+))?$/i,
|
||||
handler: function(xed, rdom, block, wrapper, text) {
|
||||
var m = text.match(/@A(:(.+))?$/i);
|
||||
var anchorId = m[2] ? m[2] : function() {
|
||||
var id = 0;
|
||||
while(true) {
|
||||
var element = rdom.$("a" + (id));
|
||||
if(!element) return "a" + id;
|
||||
id++;
|
||||
}
|
||||
}();
|
||||
|
||||
var node = rdom.createElement('A');
|
||||
node.id = anchorId;
|
||||
node.href = '#' + anchorId;
|
||||
node.className = 'anchor';
|
||||
node.title = 'Anchor ' + anchorId;
|
||||
node.innerHTML = '(' + anchorId + ')';
|
||||
|
||||
wrapper.innerHTML = "";
|
||||
wrapper.appendChild(node);
|
||||
}
|
||||
}
|
||||
];
|
||||
}
|
||||
function getAdditionalAutocorrections() {
|
||||
return [
|
||||
{id:'bullet', criteria: /^(\s|\ \;)*(\*|-)(\s|\ \;).+$/, handler: function(xed, rdom, block, text) {
|
||||
rdom.pushMarker();
|
||||
rdom.removePlaceHoldersAndEmptyNodes(block);
|
||||
block.innerHTML = block.innerHTML.replace(/((\s| )*(\*|\-)\s*)/, "");
|
||||
if(block.nodeName == "LI") xed.handleIndent();
|
||||
if(block.parentNode.nodeName != "UL") xed.handleList('UL');
|
||||
rdom.popMarker(true);
|
||||
}},
|
||||
{id:'numbering', criteria: /^(\s|\ \;)*(\d\.|#)(\s|\ \;).+$/, handler: function(xed, rdom, block, text) {
|
||||
rdom.pushMarker();
|
||||
rdom.removePlaceHoldersAndEmptyNodes(block);
|
||||
block.innerHTML = block.innerHTML.replace(/(\s| )*(\d\.|\#)\s*/, "")
|
||||
if(block.nodeName == "LI") xed.handleIndent();
|
||||
if(block.parentNode.nodeName != "OL") xed.handleList('OL');
|
||||
rdom.popMarker(true);
|
||||
}},
|
||||
{id:'imageUrl', criteria: /https?:\/\/.*?\/(.*?\.(jpg|jpeg|gif|bmp|png))$/i, handler: function(xed, rdom, block, text) {
|
||||
var fileName = text.match(/https?:\/\/.*?\/(.*?\.(jpg|jpeg|gif|bmp|png))$/i)[1];
|
||||
block.innerHTML = "";
|
||||
var img = rdom.createElement("img");
|
||||
img.src = text;
|
||||
img.alt = fileName;
|
||||
img.title = fileName;
|
||||
block.appendChild(img);
|
||||
rdom.selectElement(block);
|
||||
rdom.collapseSelection(false);
|
||||
}},
|
||||
{id:'separator', criteria: /^----*$/, handler: function(xed, rdom, block, text) {
|
||||
if(rdom.tree.isBlockContainer(block)) block = rdom.wrapAllInlineOrTextNodesAs("P", block, true)[0];
|
||||
|
||||
block.innerHTML = "";
|
||||
block.appendChild(rdom.createElement("HR"));
|
||||
rdom.selectElement(block);
|
||||
rdom.collapseSelection();
|
||||
}},
|
||||
{id:'heading', criteria: /^\=+[^=]*\=+(\ )*$/, handler: function(xed, rdom, block, text) {
|
||||
var textWithoutEqualMarks = text.strip().replace(/=/g, "");
|
||||
var level = Math.min(6, parseInt((text.length - textWithoutEqualMarks.length) / 2))
|
||||
xed.handleApplyBlock('H' + level);
|
||||
block = rdom.getCurrentBlockElement();
|
||||
block.innerHTML = textWithoutEqualMarks;
|
||||
rdom.selectElement(block);
|
||||
rdom.collapseSelection();
|
||||
}}
|
||||
];
|
||||
}
|
||||
|
||||
function getAdditionalShortcuts() {
|
||||
if(xq.Browser.isMac) {
|
||||
// Mac FF & Safari
|
||||
return [
|
||||
{event:"Ctrl+Shift+SPACE", handler:"this.handleAutocompletion(); stop = true;"},
|
||||
{event:"Ctrl+Meta+0", handler:"xed.handleApplyBlock('P')"},
|
||||
{event:"Ctrl+Meta+1", handler:"xed.handleApplyBlock('H1')"},
|
||||
{event:"Ctrl+Meta+2", handler:"xed.handleApplyBlock('H2')"},
|
||||
{event:"Ctrl+Meta+3", handler:"xed.handleApplyBlock('H3')"},
|
||||
{event:"Ctrl+Meta+4", handler:"xed.handleApplyBlock('H4')"},
|
||||
{event:"Ctrl+Meta+5", handler:"xed.handleApplyBlock('H5')"},
|
||||
{event:"Ctrl+Meta+6", handler:"xed.handleApplyBlock('H6')"},
|
||||
|
||||
{event:"Ctrl+Meta+B", handler:"xed.handleApplyBlock('BLOCKQUOTE')"},
|
||||
{event:"Ctrl+Meta+D", handler:"xed.handleApplyBlock('DIV')"},
|
||||
{event:"Ctrl+Meta+EQUAL", handler:"xed.handleSeparator()"},
|
||||
|
||||
{event:"Ctrl+Meta+O", handler:"xed.handleList('OL')"},
|
||||
{event:"Ctrl+Meta+U", handler:"xed.handleList('UL')"},
|
||||
|
||||
{event:"Ctrl+Meta+E", handler:"xed.handleRemoveBlock()"},
|
||||
|
||||
{event:"Ctrl+(Meta)+COMMA", handler:"xed.handleJustify('left')"},
|
||||
{event:"Ctrl+(Meta)+PERIOD", handler:"xed.handleJustify('center')"},
|
||||
{event:"Ctrl+(Meta)+SLASH", handler:"xed.handleJustify('right')"},
|
||||
|
||||
{event:"Meta+UP", handler:"xed.handleMoveBlock(true)"},
|
||||
{event:"Meta+DOWN", handler:"xed.handleMoveBlock(false)"}
|
||||
];
|
||||
} else if(xq.Browser.isUbuntu) {
|
||||
// Ubunto FF
|
||||
return [
|
||||
{event:"Ctrl+SPACE", handler:"xed.handleAutocompletion(); stop = true;"},
|
||||
{event:"Ctrl+0", handler:"xed.handleApplyBlock('P')"},
|
||||
{event:"Ctrl+1", handler:"xed.handleApplyBlock('H1')"},
|
||||
{event:"Ctrl+2", handler:"xed.handleApplyBlock('H2')"},
|
||||
{event:"Ctrl+3", handler:"xed.handleApplyBlock('H3')"},
|
||||
{event:"Ctrl+4", handler:"xed.handleApplyBlock('H4')"},
|
||||
{event:"Ctrl+5", handler:"xed.handleApplyBlock('H5')"},
|
||||
{event:"Ctrl+6", handler:"xed.handleApplyBlock('H6')"},
|
||||
|
||||
{event:"Ctrl+Alt+B", handler:"xed.handleApplyBlock('BLOCKQUOTE')"},
|
||||
{event:"Ctrl+Alt+D", handler:"xed.handleApplyBlock('DIV')"},
|
||||
{event:"Alt+HYPHEN", handler:"xed.handleSeparator()"},
|
||||
|
||||
{event:"Ctrl+Alt+O", handler:"xed.handleList('OL')"},
|
||||
{event:"Ctrl+Alt+U", handler:"xed.handleList('UL')"},
|
||||
|
||||
{event:"Ctrl+Alt+E", handler:"xed.handleRemoveBlock()"},
|
||||
|
||||
{event:"Alt+COMMA", handler:"xed.handleJustify('left')"},
|
||||
{event:"Alt+PERIOD", handler:"xed.handleJustify('center')"},
|
||||
{event:"Alt+SLASH", handler:"xed.handleJustify('right')"},
|
||||
|
||||
{event:"Alt+UP", handler:"xed.handleMoveBlock(true)"},
|
||||
{event:"Alt+DOWN", handler:"xed.handleMoveBlock(false)"}
|
||||
];
|
||||
} else {
|
||||
// Win IE & FF
|
||||
return [
|
||||
{event:"Ctrl+SPACE", handler:"xed.handleAutocompletion(); stop = true;"},
|
||||
{event:"Alt+0", handler:"xed.handleApplyBlock('P')"},
|
||||
{event:"Alt+1", handler:"xed.handleApplyBlock('H1')"},
|
||||
{event:"Alt+2", handler:"xed.handleApplyBlock('H2')"},
|
||||
{event:"Alt+3", handler:"xed.handleApplyBlock('H3')"},
|
||||
{event:"Alt+4", handler:"xed.handleApplyBlock('H4')"},
|
||||
{event:"Alt+5", handler:"xed.handleApplyBlock('H5')"},
|
||||
{event:"Alt+6", handler:"xed.handleApplyBlock('H6')"},
|
||||
|
||||
{event:"Ctrl+Alt+B", handler:"xed.handleApplyBlock('BLOCKQUOTE')"},
|
||||
{event:"Ctrl+Alt+D", handler:"xed.handleApplyBlock('DIV')"},
|
||||
{event:"Alt+HYPHEN", handler:"xed.handleSeparator()"},
|
||||
|
||||
{event:"Ctrl+Alt+O", handler:"xed.handleList('OL')"},
|
||||
{event:"Ctrl+Alt+U", handler:"xed.handleList('UL')"},
|
||||
|
||||
{event:"Ctrl+Alt+E", handler:"xed.handleRemoveBlock()"},
|
||||
|
||||
{event:"Alt+COMMA", handler:"xed.handleJustify('left')"},
|
||||
{event:"Alt+PERIOD", handler:"xed.handleJustify('center')"},
|
||||
{event:"Alt+SLASH", handler:"xed.handleJustify('right')"},
|
||||
|
||||
{event:"Alt+UP", handler:"xed.handleMoveBlock(true)"},
|
||||
{event:"Alt+DOWN", handler:"xed.handleMoveBlock(false)"}
|
||||
];
|
||||
}
|
||||
}
|
||||
|
||||
var quickSearch = function(xed) {
|
||||
var dialog = new xq.controls.QuickSearchDialog(xed, {
|
||||
listProvider: function(query, xed, callback) {
|
||||
var headings = xed.rdom.searchHeadings();
|
||||
var matched = headings.findAll(function(h) {
|
||||
return xed.rdom.getInnerText(h).toLowerCase().indexOf(query.toLowerCase()) != -1;
|
||||
});
|
||||
callback(matched);
|
||||
},
|
||||
onSelect: function(xed, selected) {
|
||||
xed.focus();
|
||||
xed.rdom.scrollIntoView(selected, true, true);
|
||||
}
|
||||
});
|
||||
dialog.show();
|
||||
}
|
||||
|
||||
var contextMenuHandler = function(editor, element, x, y) {
|
||||
if(element.nodeName != "P") return false;
|
||||
editor.showContextMenu([
|
||||
{
|
||||
title: '볼드',
|
||||
handler: editor.handleStrongEmphasis.bind(xed)
|
||||
},
|
||||
{
|
||||
title: '언더라인',
|
||||
handler: editor.handleUnderline.bind(xed)
|
||||
},
|
||||
{
|
||||
title: '----'
|
||||
},
|
||||
{
|
||||
title: 'QuickSearch',
|
||||
handler: quickSearch
|
||||
}
|
||||
], x, y);
|
||||
|
||||
return true;
|
||||
}
|
||||
//]]></script>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div id="xqEditor">
|
||||
<p>Most notably, it has been confirmed in many empirical studies on tagging(see e.g. [Golder:2005, Hotho:2006, Cattuto:2006]), that tag distributions tend follow a power law—a small number of tags is used very often, while a very large number of tags occurs very rarely.</p>
|
||||
<p>This holds true both for individuals as well as whole tagging communities.</p>
|
||||
<ul>
|
||||
<li>Item 1</li>
|
||||
<li>Item 2</li>
|
||||
</ul>
|
||||
<p>This holds true both for individuals as well as whole tagging communities.</p>
|
||||
<ul>
|
||||
<li>
|
||||
<p>Item 1</p>
|
||||
<ol>
|
||||
<li>Item 1</li>
|
||||
<li>Item 2</li>
|
||||
</ol>
|
||||
</li>
|
||||
<li>Item 2</li>
|
||||
<li>Item 3</li>
|
||||
</ul>
|
||||
<p>This holds true both for individuals as well as whole tagging communities.</p>
|
||||
<div>
|
||||
<p>Most notably, it has been confirmed in many empirical studies on tagging(see e.g. [Golder:2005, Hotho:2006, Cattuto:2006]), that tag distributions tend follow a power law—a small number of tags is used very often, while a very large number of tags occurs very rarely.</p>
|
||||
<blockquote>
|
||||
<p>This holds true both for individuals as well as whole tagging communities.</p>
|
||||
</blockquote>
|
||||
</div>
|
||||
<p>Most notably, it has been confirmed in many empirical studies on tagging(see e.g. [Golder:2005, Hotho:2006, Cattuto:2006]), that tag distributions tend follow a power law—a small number of tags is used very often, while a very large number of tags occurs very rarely.</p>
|
||||
<blockquote>
|
||||
<p>Most notably, it has been confirmed in many empirical studies on tagging(see e.g. [Golder:2005, Hotho:2006, Cattuto:2006]), that tag distributions tend follow a power law—a small number of tags is used very often, while a very large number of tags occurs very rarely.</p>
|
||||
<blockquote>
|
||||
<p>This holds true both for individuals as well as whole tagging communities.</p>
|
||||
</blockquote>
|
||||
</blockquote>
|
||||
<p>Most notably, it has been confirmed in many empirical studies on tagging(see e.g. [Golder:2005, Hotho:2006, Cattuto:2006]), that tag distributions tend follow a power law—a small number of tags is used very often, while a very large number of tags occurs very rarely.</p>
|
||||
<h1>Heading 1</h1>
|
||||
<p>Most notably, it has been confirmed in many empirical studies on tagging(see e.g. [Golder:2005, Hotho:2006, Cattuto:2006]), that tag distributions tend follow a power law—a small number of tags is used very often, while a very large number of tags occurs very rarely.</p>
|
||||
<h1>Heading 1</h1>
|
||||
<h2>Heading 2</h2>
|
||||
<p>Most notably, it has been confirmed in many empirical studies on tagging(see e.g. [Golder:2005, Hotho:2006, Cattuto:2006]), that tag distributions tend follow a power law—a small number of tags is used very often, while a very large number of tags occurs very rarely.</p>
|
||||
<h1>Heading 1</h1>
|
||||
<h2>Heading 2</h2>
|
||||
<h3>Heading 3</h3>
|
||||
<p>Most notably, it has been confirmed in many empirical studies on tagging(see e.g. [Golder:2005, Hotho:2006, Cattuto:2006]), that tag distributions tend follow a power law—a small number of tags is used very often, while a very large number of tags occurs very rarely.</p>
|
||||
<h4>Heading 4</h4>
|
||||
<h5>Heading 5</h5>
|
||||
<p>Most notably, it has been confirmed in many empirical studies on tagging(see e.g. [Golder:2005, Hotho:2006, Cattuto:2006]), that tag distributions tend follow a power law—a small number of tags is used very often, while a very large number of tags occurs very rarely.</p>
|
||||
<h6>Heading 6</h6>
|
||||
<p>Most notably, it has been confirmed in many empirical studies on tagging(see e.g. [Golder:2005, Hotho:2006, Cattuto:2006]), that tag distributions tend follow a power law—a small number of tags is used very often, while a very large number of tags occurs very rarely.</p>
|
||||
<ol class="code">
|
||||
<li>print "Hello World"</li>
|
||||
<li>print "Hello World"</li>
|
||||
</ol>
|
||||
<p>Most notably, it has been confirmed in many empirical studies on tagging(see e.g. [Golder:2005, Hotho:2006, Cattuto:2006]), that tag distributions tend follow a power law—a small number of tags is used very often, while a very large number of tags occurs very rarely.</p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
30
modules/editor/skins/xquared/examples/form_and_textarea.html
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ko">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8" />
|
||||
<title>Xquared example - Form and Textarea</title>
|
||||
<link rel="stylesheet" type="text/css" href="css/xq_ui.css" />
|
||||
<script type="text/javascript" src="../js/prototype.js"></script>
|
||||
<script type="text/javascript" src="../js/xquared.js"></script>
|
||||
<script type="text/javascript">//<![CDATA[
|
||||
var xed;
|
||||
|
||||
window.onload = function() {
|
||||
xed = new xq.Editor($("xqEditor"));
|
||||
xed.setEditMode('wysiwyg');
|
||||
xed.loadStylesheet("css/xq_contents.css");
|
||||
xed.focus();
|
||||
}
|
||||
//]]></script>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<form action="#" method="post" onsubmit="alert(document.getElementById('xqEditor').value); return false;">
|
||||
<label>Subject: <input type="text" name="subject" /></label>
|
||||
<label>Content:
|
||||
<textarea name="content" id="xqEditor"><p>Hello <a href="#">World</a>!</p></textarea>
|
||||
</label>
|
||||
<input type="submit" />
|
||||
</form>
|
||||
</body>
|
||||
</html>
|
||||
BIN
modules/editor/skins/xquared/examples/img/content/blockquote.gif
Normal file
|
After Width: | Height: | Size: 99 B |
BIN
modules/editor/skins/xquared/examples/img/content/code.gif
Normal file
|
After Width: | Height: | Size: 114 B |
BIN
modules/editor/skins/xquared/examples/img/content/div.gif
Normal file
|
After Width: | Height: | Size: 108 B |
|
After Width: | Height: | Size: 68 B |
BIN
modules/editor/skins/xquared/examples/img/toolbar/blockquote.gif
Normal file
|
After Width: | Height: | Size: 71 B |
BIN
modules/editor/skins/xquared/examples/img/toolbar/code.gif
Normal file
|
After Width: | Height: | Size: 86 B |
BIN
modules/editor/skins/xquared/examples/img/toolbar/division.gif
Normal file
|
After Width: | Height: | Size: 76 B |
BIN
modules/editor/skins/xquared/examples/img/toolbar/emphasis.gif
Normal file
|
After Width: | Height: | Size: 64 B |
|
After Width: | Height: | Size: 68 B |
BIN
modules/editor/skins/xquared/examples/img/toolbar/heading1.gif
Normal file
|
After Width: | Height: | Size: 70 B |
BIN
modules/editor/skins/xquared/examples/img/toolbar/html.gif
Normal file
|
After Width: | Height: | Size: 84 B |
BIN
modules/editor/skins/xquared/examples/img/toolbar/indent.gif
Normal file
|
After Width: | Height: | Size: 70 B |
|
After Width: | Height: | Size: 64 B |
|
After Width: | Height: | Size: 64 B |
|
After Width: | Height: | Size: 97 B |
|
After Width: | Height: | Size: 64 B |
BIN
modules/editor/skins/xquared/examples/img/toolbar/link.gif
Normal file
|
After Width: | Height: | Size: 73 B |
|
After Width: | Height: | Size: 71 B |
BIN
modules/editor/skins/xquared/examples/img/toolbar/outdent.gif
Normal file
|
After Width: | Height: | Size: 69 B |
BIN
modules/editor/skins/xquared/examples/img/toolbar/paragraph.gif
Normal file
|
After Width: | Height: | Size: 73 B |
BIN
modules/editor/skins/xquared/examples/img/toolbar/redo.gif
Normal file
|
After Width: | Height: | Size: 68 B |
|
After Width: | Height: | Size: 67 B |
BIN
modules/editor/skins/xquared/examples/img/toolbar/separator.gif
Normal file
|
After Width: | Height: | Size: 58 B |
BIN
modules/editor/skins/xquared/examples/img/toolbar/strike.gif
Normal file
|
After Width: | Height: | Size: 69 B |
|
After Width: | Height: | Size: 70 B |
|
After Width: | Height: | Size: 66 B |
|
After Width: | Height: | Size: 67 B |
BIN
modules/editor/skins/xquared/examples/img/toolbar/table.gif
Normal file
|
After Width: | Height: | Size: 74 B |
BIN
modules/editor/skins/xquared/examples/img/toolbar/toolbarBg.gif
Normal file
|
After Width: | Height: | Size: 172 B |
|
After Width: | Height: | Size: 46 B |
|
After Width: | Height: | Size: 963 B |
BIN
modules/editor/skins/xquared/examples/img/toolbar/underline.gif
Normal file
|
After Width: | Height: | Size: 73 B |
BIN
modules/editor/skins/xquared/examples/img/toolbar/undo.gif
Normal file
|
After Width: | Height: | Size: 69 B |
|
After Width: | Height: | Size: 66 B |
|
|
@ -0,0 +1,43 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ko">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8" />
|
||||
<title>Xquared example - Custom toolbar 1</title>
|
||||
<link rel="stylesheet" type="text/css" href="css/xq_ui.css" />
|
||||
<script type="text/javascript" src="../js/prototype.js"></script>
|
||||
<script type="text/javascript" src="../js/xquared.js"></script>
|
||||
<script type="text/javascript">//<![CDATA[
|
||||
var xed;
|
||||
|
||||
window.onload = function() {
|
||||
xed = new xq.Editor($("xqEditor"));
|
||||
xed.config.defaultToolbarButtonMap = [
|
||||
[
|
||||
{className:"foregroundColor", title:"Foreground color", handler:"xed.handleForegroundColor('red')"},
|
||||
{className:"backgroundColor", title:"Background color", handler:"xed.handleBackgroundColor('yellow')"}
|
||||
],
|
||||
[
|
||||
{className:"strongEmphasis", title:"Strong emphasis", handler:"xed.handleStrongEmphasis()"},
|
||||
{className:"emphasis", title:"Emphasis", handler:"xed.handleEmphasis()"},
|
||||
{className:"underline", title:"Underline", handler:"xed.handleUnderline()"},
|
||||
{className:"strike", title:"Strike", handler:"xed.handleStrike()"}
|
||||
],
|
||||
[
|
||||
{className:"superscription", title:"Superscription", handler:"xed.handleSuperscription()"},
|
||||
{className:"subscription", title:"Subscription", handler:"xed.handleSubscription()"}
|
||||
],
|
||||
[
|
||||
{className:"removeFormat", title:"Remove format", handler:"xed.handleRemoveFormat()"}
|
||||
]
|
||||
];
|
||||
xed.setEditMode('wysiwyg');
|
||||
xed.loadStylesheet("css/xq_contents.css");
|
||||
xed.focus();
|
||||
}
|
||||
//]]></script>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div id="xqEditor"></div>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -0,0 +1,92 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ko">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8" />
|
||||
<title>Xquared example - Custom toolbar 2</title>
|
||||
<link rel="stylesheet" type="text/css" href="css/xq_ui.css" />
|
||||
<style type="text/css">
|
||||
.toolbar .buttons .selected {
|
||||
font-weight: bold;
|
||||
}
|
||||
</style>
|
||||
<script type="text/javascript" src="../js/prototype.js"></script>
|
||||
<script type="text/javascript" src="../js/xquared.js"></script>
|
||||
<script type="text/javascript">//<![CDATA[
|
||||
var xed;
|
||||
|
||||
window.onload = function() {
|
||||
xed = new xq.Editor($("xqEditor"), $("xqToolbarContainer"));
|
||||
xed.setEditMode('wysiwyg');
|
||||
xed.loadStylesheet("css/xq_contents.css");
|
||||
xed.focus();
|
||||
}
|
||||
//]]></script>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div class="toolbar">
|
||||
<ul id="xqToolbarContainer" class="buttons">
|
||||
<li class="foregroundColor"><a href="#" title="Foreground color" onclick="xed.handleForegroundColor('red');return false;" onmousedown="return false;">Foreground color</a></li>
|
||||
<li class="strongEmphasis"><a href="#" title="Strong emphasis" onclick="xed.handleStrongEmphasis();return false;" onmousedown="return false;">Strong emphasis</a></li>
|
||||
<li class="undo"><a href="#" title="Undo" onclick="xed.handleUndo();return false;" onmousedown="return false;">Undo</a></li>
|
||||
<li class="redo"><a href="#" title="Redo" onclick="xed.handleRedo();return false;" onmousedown="return false;">Redo</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div>
|
||||
<div id="xqEditor" class="editor">
|
||||
<p>Most notably, it has been confirmed in many empirical studies on tagging(see e.g. [Golder:2005, Hotho:2006, Cattuto:2006]), that tag distributions tend follow a power law—a small number of tags is used very often, while a very large number of tags occurs very rarely.</p>
|
||||
<p>This holds true both for individuals as well as whole tagging communities.</p>
|
||||
<ul>
|
||||
<li>Item 1</li>
|
||||
<li>Item 2</li>
|
||||
</ul>
|
||||
<p>This holds true both for individuals as well as whole tagging communities.</p>
|
||||
<ul>
|
||||
<li>
|
||||
<p>Item 1</p>
|
||||
<ol>
|
||||
<li>Item 1</li>
|
||||
<li>Item 2</li>
|
||||
</ol>
|
||||
</li>
|
||||
<li>Item 2</li>
|
||||
<li>Item 3</li>
|
||||
</ul>
|
||||
<p>This holds true both for individuals as well as whole tagging communities.</p>
|
||||
<div>
|
||||
<p>Most notably, it has been confirmed in many empirical studies on tagging(see e.g. [Golder:2005, Hotho:2006, Cattuto:2006]), that tag distributions tend follow a power law—a small number of tags is used very often, while a very large number of tags occurs very rarely.</p>
|
||||
<blockquote>
|
||||
<p>This holds true both for individuals as well as whole tagging communities.</p>
|
||||
</blockquote>
|
||||
</div>
|
||||
<p>Most notably, it has been confirmed in many empirical studies on tagging(see e.g. [Golder:2005, Hotho:2006, Cattuto:2006]), that tag distributions tend follow a power law—a small number of tags is used very often, while a very large number of tags occurs very rarely.</p>
|
||||
<blockquote>
|
||||
<p>Most notably, it has been confirmed in many empirical studies on tagging(see e.g. [Golder:2005, Hotho:2006, Cattuto:2006]), that tag distributions tend follow a power law—a small number of tags is used very often, while a very large number of tags occurs very rarely.</p>
|
||||
<blockquote>
|
||||
<p>This holds true both for individuals as well as whole tagging communities.</p>
|
||||
</blockquote>
|
||||
</blockquote>
|
||||
<p>Most notably, it has been confirmed in many empirical studies on tagging(see e.g. [Golder:2005, Hotho:2006, Cattuto:2006]), that tag distributions tend follow a power law—a small number of tags is used very often, while a very large number of tags occurs very rarely.</p>
|
||||
<h1>Heading 1</h1>
|
||||
<p>Most notably, it has been confirmed in many empirical studies on tagging(see e.g. [Golder:2005, Hotho:2006, Cattuto:2006]), that tag distributions tend follow a power law—a small number of tags is used very often, while a very large number of tags occurs very rarely.</p>
|
||||
<h1>Heading 1</h1>
|
||||
<h2>Heading 2</h2>
|
||||
<p>Most notably, it has been confirmed in many empirical studies on tagging(see e.g. [Golder:2005, Hotho:2006, Cattuto:2006]), that tag distributions tend follow a power law—a small number of tags is used very often, while a very large number of tags occurs very rarely.</p>
|
||||
<h1>Heading 1</h1>
|
||||
<h2>Heading 2</h2>
|
||||
<h3>Heading 3</h3>
|
||||
<p>Most notably, it has been confirmed in many empirical studies on tagging(see e.g. [Golder:2005, Hotho:2006, Cattuto:2006]), that tag distributions tend follow a power law—a small number of tags is used very often, while a very large number of tags occurs very rarely.</p>
|
||||
<h4>Heading 4</h4>
|
||||
<h5>Heading 5</h5>
|
||||
<p>Most notably, it has been confirmed in many empirical studies on tagging(see e.g. [Golder:2005, Hotho:2006, Cattuto:2006]), that tag distributions tend follow a power law—a small number of tags is used very often, while a very large number of tags occurs very rarely.</p>
|
||||
<h6>Heading 6</h6>
|
||||
<p>Most notably, it has been confirmed in many empirical studies on tagging(see e.g. [Golder:2005, Hotho:2006, Cattuto:2006]), that tag distributions tend follow a power law—a small number of tags is used very often, while a very large number of tags occurs very rarely.</p>
|
||||
<ol class="code">
|
||||
<li>print "Hello World"</li>
|
||||
<li>print "Hello World"</li>
|
||||
</ol>
|
||||
<p>Most notably, it has been confirmed in many empirical studies on tagging(see e.g. [Golder:2005, Hotho:2006, Cattuto:2006]), that tag distributions tend follow a power law—a small number of tags is used very often, while a very large number of tags occurs very rarely.</p>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
28
modules/editor/skins/xquared/examples/toolbar_disabled.html
Normal file
|
|
@ -0,0 +1,28 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ko">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8" />
|
||||
<title>Xquared example - No toolbar</title>
|
||||
<link rel="stylesheet" type="text/css" href="css/xq_ui.css" />
|
||||
<script type="text/javascript" src="../js/prototype.js"></script>
|
||||
<script type="text/javascript" src="../js/xquared.js"></script>
|
||||
<script type="text/javascript">//<![CDATA[
|
||||
var xed;
|
||||
|
||||
window.onload = function() {
|
||||
xed = new xq.Editor($("xqEditor"));
|
||||
|
||||
// Turn off default toolbar
|
||||
xed.config.generateDefaultToolbar = false;
|
||||
|
||||
xed.setEditMode('wysiwyg');
|
||||
xed.loadStylesheet("css/xq_contents.css");
|
||||
xed.focus();
|
||||
}
|
||||
//]]></script>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div id="xqEditor"></div>
|
||||
</body>
|
||||
</html>
|
||||
4184
modules/editor/skins/xquared/js/prototype.js
vendored
Normal file
95
modules/editor/skins/xquared/js/xe_interface.js
Normal file
|
|
@ -0,0 +1,95 @@
|
|||
function editorGetForm_xq(element) {
|
||||
var fo_obj = element.parentNode;
|
||||
while(fo_obj.nodeName != 'FORM') { fo_obj = fo_obj.parentNode; }
|
||||
if(fo_obj.nodeName == 'FORM') return fo_obj;
|
||||
return;
|
||||
}
|
||||
|
||||
function getAdditionalAutocompletions() {
|
||||
return [
|
||||
{
|
||||
id:'link',
|
||||
criteria: /"[^"]+":http:\/\/[^ ]+$/i,
|
||||
handler: function(xed, rdom, block, wrapper, text) {
|
||||
var sp = text.split("\"");
|
||||
var node = rdom.createElement('A');
|
||||
node.innerHTML = sp[1];
|
||||
node.href = sp[2].substr(1);
|
||||
|
||||
wrapper.innerHTML = "";
|
||||
wrapper.appendChild(node);
|
||||
}
|
||||
}
|
||||
];
|
||||
}
|
||||
|
||||
function editorSync_xq(editor_sequence) {
|
||||
var editor = editorRelKeys[editor_sequence]['editor'];
|
||||
editorRelKeys[editor_sequence]['content'].value = editor.getCurrentContent(true);
|
||||
return;
|
||||
}
|
||||
|
||||
function editorStart_xq(editor, element, editor_sequence, content_key, editor_height, primary_key) {
|
||||
editor = new xq.Editor(element);
|
||||
|
||||
editorRelKeys[editor_sequence] = new Array();
|
||||
editorRelKeys[editor_sequence]['editor'] = editor;
|
||||
editorRelKeys[editor_sequence]['func'] = editorSync_xq;
|
||||
editorMode[editor_sequence] = null;
|
||||
var fo_obj = editorGetForm_xq(element);
|
||||
fo_obj.setAttribute('editor_sequence', editor_sequence);
|
||||
editor.setStaticContent(fo_obj[content_key].value);
|
||||
editorRelKeys[editor_sequence]['content'] = fo_obj[content_key];
|
||||
editorRelKeys[editor_sequence]['primary'] = fo_obj[primary_key];
|
||||
editor.setEditMode('wysiwyg');
|
||||
editor.loadStylesheet(request_uri+editor_path+"/examples/css/xq_contents.css");
|
||||
editor.getFrame().style.width = "100%";
|
||||
editor.getFrame().parentNode.style.height = editor_height;
|
||||
editor.addAutocompletions(getAdditionalAutocompletions());
|
||||
}
|
||||
|
||||
xq.Editor.prototype.insertHTML = function (html) {
|
||||
this.rdom.insertHtml(html);
|
||||
}
|
||||
|
||||
function editor_insert_file_xq(editor_sequence) {
|
||||
if(editorMode[editor_sequence]=='html') return;
|
||||
var obj = xGetElementById('uploaded_file_list_'+editor_sequence);
|
||||
if(obj.options.length<1) return;
|
||||
|
||||
var editor = editorRelKeys[editor_sequence]['editor'];
|
||||
editor.focus();
|
||||
|
||||
for(var i=0;i<obj.options.length;i++) {
|
||||
var sel_obj = obj.options[i];
|
||||
if(!sel_obj.selected) continue;
|
||||
|
||||
var file_srl = sel_obj.value;
|
||||
if(!file_srl) continue;
|
||||
|
||||
var file_obj = uploaded_files[file_srl];
|
||||
var filename = file_obj.filename;
|
||||
var sid = file_obj.sid;
|
||||
var url = file_obj.uploaded_filename.replace(request_uri,'');
|
||||
|
||||
if(url.indexOf("binaries")==-1) {
|
||||
// 이미지 파일의 경우 image_link 컴포넌트 열결
|
||||
if(/\.(jpg|jpeg|png|gif)$/i.test(url)) {
|
||||
var text = "<img editor_component=\"image_link\" src=\""+url+"\" alt=\""+file_obj.filename+"\" />";
|
||||
editor.insertHTML(text);
|
||||
// 이미지외의 경우는 multimedia_link 컴포넌트 연결
|
||||
} else {
|
||||
var text = "<img src=\"./common/tpl/images/blank.gif\" editor_component=\"multimedia_link\" multimedia_src=\""+url+"\" width=\"400\" height=\"320\" style=\"display:block;width:400px;height:320px;border:2px dotted #4371B9;background:url(./modules/editor/components/multimedia_link/tpl/multimedia_link_component.gif) no-repeat center;\" auto_start=\"false\" alt=\"\" />";
|
||||
editor.insertHTML(text);
|
||||
}
|
||||
|
||||
// binary파일의 경우 url_link 컴포넌트 연결
|
||||
} else {
|
||||
var mid = fo_obj.mid.value;
|
||||
var url = request_uri+"/?module=file&act=procFileDownload&file_srl="+file_srl+"&sid="+sid;
|
||||
var text = "<a href=\""+url+"\">"+filename+"</a><br />\n";
|
||||
editor.insertHTML(text);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
2646
modules/editor/skins/xquared/js/xquared-min.js
vendored
Normal file
7139
modules/editor/skins/xquared/js/xquared.js
Normal file
21
modules/editor/skins/xquared/skin.xml
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<skin>
|
||||
<title xml:lang="ko">ZeroboardXE Xquared Editor Skin</title>
|
||||
<title xml:lang="en">ZeroboardXE Xquared Editor Skin</title>
|
||||
<maker email_address="haneul0318@gmail.com" link="http://haneul.zetyx.net" date="2007. 11. 21">
|
||||
<name xml:lang="ko">haneul</name>
|
||||
<name xml:lang="en">haneul</name>
|
||||
<description xml:lang="ko">
|
||||
오픈소스 에디터인 Xquared를 이용한 위지윅 에디터입니다.
|
||||
자세한 정보는 Xquared 홈페이지를 참조하세요.
|
||||
http://labs.openmaru.com/projects/xquared
|
||||
Xquared is copyrighted free software by Alan Kang <jania902@gmail.com>.
|
||||
</description>
|
||||
<description xml:lang="en">
|
||||
This is the editor skin based on the open source WYSIWYG Editor, Xquared.
|
||||
You can find more deatiled information from Xquared's official homepage.
|
||||
http://labs.openmaru.com/projects/xquared/
|
||||
Xquared is copyrighted free software by Alan Kang <jania902@gmail.com>.
|
||||
</description>
|
||||
</maker>
|
||||
</skin>
|
||||