projects
/
roojs1
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
try and get ctrl-enter to add a clear all
[roojs1]
/
roojs-ui-debug.js
diff --git
a/roojs-ui-debug.js
b/roojs-ui-debug.js
index
b832eed
..
9b5db1e
100644
(file)
--- a/
roojs-ui-debug.js
+++ b/
roojs-ui-debug.js
@@
-1394,14
+1394,16
@@
Roo.extend(Roo.data.DataProxy, Roo.util.Observable);
*/
/**
* @class Roo.data.MemoryProxy
*/
/**
* @class Roo.data.MemoryProxy
+ * @extends Roo.data.DataProxy
* An implementation of Roo.data.DataProxy that simply passes the data specified in its constructor
* to the Reader when its load method is called.
* @constructor
* An implementation of Roo.data.DataProxy that simply passes the data specified in its constructor
* to the Reader when its load method is called.
* @constructor
- * @param {Object}
data The data object which the Reader uses to construct a block of Roo.data.Records.
+ * @param {Object}
config A config object containing the objects needed for the Store to access data,
*/
*/
-Roo.data.MemoryProxy = function(data){
- if (data.data) {
- data = data.data;
+Roo.data.MemoryProxy = function(config){
+ var data = config;
+ if (typeof(config) != 'undefined' && typeof(config.data) != 'undefined') {
+ data = config.data;
}
Roo.data.MemoryProxy.superclass.constructor.call(this);
this.data = data;
}
Roo.data.MemoryProxy.superclass.constructor.call(this);
this.data = data;
@@
-1409,6
+1411,9
@@
Roo.data.MemoryProxy = function(data){
Roo.extend(Roo.data.MemoryProxy, Roo.data.DataProxy, {
Roo.extend(Roo.data.MemoryProxy, Roo.data.DataProxy, {
+ /**
+ * @cfg {Object} data The data object which the Reader uses to construct a block of Roo.data.Records.
+ */
/**
* Load data from the requested source (in this case an in-memory
* data object passed to the constructor), read the data object into
/**
* Load data from the requested source (in this case an in-memory
* data object passed to the constructor), read the data object into
@@
-20900,7
+20905,7
@@
Roo.rtf.Parser.prototype = {
this.hexStore.push(cmd);
},
cmderror : function(cmd) {
this.hexStore.push(cmd);
},
cmderror : function(cmd) {
- throw
new Exception (cmd.value)
;
+ throw
cmd.value
;
},
/*
},
/*
@@
-21030,7
+21035,8
@@
Roo.rtf.Parser.prototype = {
{
this.emitText();
if (this.controlWord === '') {
{
this.emitText();
if (this.controlWord === '') {
- this.emitError('empty control word');
+ // do we want to track this - it seems just to cause problems.
+ //this.emitError('empty control word');
} else {
this.push({
type: 'controlword',
} else {
this.push({
type: 'controlword',
@@
-21154,6
+21160,8
@@
Roo.htmleditor.Filter.prototype = {
return;
case this.tag === true: // everything
return;
case this.tag === true: // everything
+ case e.tagName.indexOf(":") > -1 && typeof(this.tag) == 'object' && this.tag.indexOf(":") > -1:
+ case e.tagName.indexOf(":") > -1 && typeof(this.tag) == 'string' && this.tag == ":":
case typeof(this.tag) == 'object' && this.tag.indexOf(e.tagName) > -1: // array and it matches.
case typeof(this.tag) == 'string' && this.tag == e.tagName: // array and it matches.
if (this.replaceTag && false === this.replaceTag(e)) {
case typeof(this.tag) == 'object' && this.tag.indexOf(e.tagName) > -1: // array and it matches.
case typeof(this.tag) == 'string' && this.tag == e.tagName: // array and it matches.
if (this.replaceTag && false === this.replaceTag(e)) {
@@
-21581,7
+21589,8
@@
Roo.htmleditor.FilterWord = function(cfg)
// no need to apply config.
this.replaceDocBullets(cfg.node);
// no need to apply config.
this.replaceDocBullets(cfg.node);
- this.walk(cfg.node);
+ // this is disabled as the removal is done by other filters;
+ // this.walk(cfg.node);
}
}
@@
-21692,7
+21701,7
@@
Roo.extend(Roo.htmleditor.FilterWord, Roo.htmleditor.Filter,
styleToObject: function(node)
{
styleToObject: function(node)
{
- var styles =
node.getAttribute("style"
).split(";");
+ var styles =
(node.getAttribute("style") || ''
).split(";");
var ret = {};
Roo.each(styles, function(s) {
if (!s.match(/:/)) {
var ret = {};
Roo.each(styles, function(s) {
if (!s.match(/:/)) {
@@
-21701,7
+21710,7
@@
Roo.extend(Roo.htmleditor.FilterWord, Roo.htmleditor.Filter,
var kv = s.split(":");
// what ever is left... we allow.
var kv = s.split(":");
// what ever is left... we allow.
- ret[kv[0]] = kv[1];
+ ret[kv[0]
.trim()
] = kv[1];
});
return ret;
},
});
return ret;
},
@@
-21709,10
+21718,16
@@
Roo.extend(Roo.htmleditor.FilterWord, Roo.htmleditor.Filter,
replaceDocBullets : function(doc)
{
replaceDocBullets : function(doc)
{
+ // this is a bit odd - but it appears some indents use ql-indent-1
+
+ var listpara = doc.getElementsByClassName('ql-indent-1');
+ while(listpara.length) {
+ this.replaceDocBullet(listpara.item(0));
+ }
+
var listpara = doc.getElementsByClassName('MsoListParagraph');
while(listpara.length) {
this.replaceDocBullet(listpara.item(0));
var listpara = doc.getElementsByClassName('MsoListParagraph');
while(listpara.length) {
this.replaceDocBullet(listpara.item(0));
- //code
}
},
}
},
@@
-21722,53
+21737,85
@@
Roo.extend(Roo.htmleditor.FilterWord, Roo.htmleditor.Filter,
var ns = p,
parent = p.parentNode,
doc = parent.ownerDocument,
var ns = p,
parent = p.parentNode,
doc = parent.ownerDocument,
- items = [];
+ items = [];
+
+
while (ns) {
if (ns.nodeType != 1) {
ns = ns.nextSibling;
continue;
}
while (ns) {
if (ns.nodeType != 1) {
ns = ns.nextSibling;
continue;
}
- if (!ns.className.match(/
MsoListParagraph
/i)) {
+ if (!ns.className.match(/
(MsoListParagraph|ql-indent-1)
/i)) {
break;
}
items.push(ns);
ns = ns.nextSibling;
break;
}
items.push(ns);
ns = ns.nextSibling;
-
}
}
+
+
var ul = parent.ownerDocument.createElement('ul'); // what about number lists...
parent.insertBefore(ul, p);
var lvl = 0;
var stack = [ ul ];
var last_li = false;
var ul = parent.ownerDocument.createElement('ul'); // what about number lists...
parent.insertBefore(ul, p);
var lvl = 0;
var stack = [ ul ];
var last_li = false;
- items.forEach(function(n) {
- parent.removeChild(n);
+
+ items.forEach(function(n, ipos) {
+ //Roo.log("got innertHMLT=" + n.innerHTML);
+
var spans = n.getElementsByTagName('span');
var spans = n.getElementsByTagName('span');
- if (!spans.length || !n.isEqualNode(spans.item(0).parentNode)) {
+ if (!spans.length) {
+ //Roo.log("No spans found");
+
+ parent.removeChild(n);
return; // skip it...
}
return; // skip it...
}
+
+
+
+ var style = {};
+ for(var i = 0; i < spans.length; i++) {
- var style = this.styleToObject(n);
+ style = this.styleToObject(spans[i]);
+ if (typeof(style['mso-list']) == 'undefined') {
+ continue;
+ }
+
+ spans[i].parentNode.removeChild(spans[i]); // remove the fake bullet.
+ break;
+ }
+ //Roo.log("NOW GOT innertHMLT=" + n.innerHTML);
+ style = this.styleToObject(n); // mo-list is from the parent node.
if (typeof(style['mso-list']) == 'undefined') {
if (typeof(style['mso-list']) == 'undefined') {
- return; // skip it.
+ //Roo.log("parent is missing level");
+ parent.removeChild(n);
+ return;
}
}
- n.removeChild(spans.item(0)); // remove the fake bullet.
- var nlvl = (style['mso-list'].split(' ')[1].replace(/level/,'') *1) - 1;
+
+ var nlvl = (style['mso-list'].split(' ')[1].replace(/level/,'') *1) - 1 ;
+
+
+
if (nlvl > lvl) {
//new indent
var nul = doc.createElement('ul'); // what about number lists...
last_li.appendChild(nul);
stack[nlvl] = nul;
if (nlvl > lvl) {
//new indent
var nul = doc.createElement('ul'); // what about number lists...
last_li.appendChild(nul);
stack[nlvl] = nul;
+
}
lvl = nlvl;
var nli = stack[nlvl].appendChild(doc.createElement('li'));
last_li = nli;
}
lvl = nlvl;
var nli = stack[nlvl].appendChild(doc.createElement('li'));
last_li = nli;
+ nli.innerHTML = n.innerHTML;
+ //Roo.log("innerHTML = " + n.innerHTML);
+ parent.removeChild(n);
+
// copy children of p into nli
// copy children of p into nli
- while(n.firstChild) {
+
/*
while(n.firstChild) {
var fc = n.firstChild;
n.removeChild(fc);
nli.appendChild(fc);
var fc = n.firstChild;
n.removeChild(fc);
nli.appendChild(fc);
- }
+ }
*/
},this);
},this);
@@
-22267,12
+22314,14
@@
Roo.htmleditor.TidyWriter.prototype = {
* @param {String} text String to write out.
* @param {Boolean} raw Optional raw state if true the contents wont get encoded.
*/
* @param {String} text String to write out.
* @param {Boolean} raw Optional raw state if true the contents wont get encoded.
*/
- text: function(text, node)
+ text: function(
in_
text, node)
{
// if not in whitespace critical
{
// if not in whitespace critical
- if (text.length < 1) {
+ if (
in_
text.length < 1) {
return;
}
return;
}
+ var text = new XMLSerializer().serializeToString(document.createTextNode(in_text)); // escape it properly?
+
if (this.in_pre) {
this.html[this.html.length] = text;
return;
if (this.in_pre) {
this.html[this.html.length] = text;
return;
@@
-23270,7
+23319,16
@@
Roo.htmleditor.KeyEnter.prototype = {
var pc = range.closest([ 'ol', 'ul']);
var pli = range.closest('li');
if (!pc || e.ctrlKey) {
var pc = range.closest([ 'ol', 'ul']);
var pli = range.closest('li');
if (!pc || e.ctrlKey) {
- sel.insertNode('br', 'after');
+ // on it list, or ctrl pressed.
+ if (pc) {
+ sel.insertNode('br', 'after');
+ } else {
+ var br = doc.createElement('br');
+ br.className = 'clear';
+ br.setAttribute('style', 'clear:all');
+ sel.insertNode(br, 'after');
+ }
+
this.core.undoManager.addEvent();
this.core.fireEditorEvent(e);
this.core.undoManager.addEvent();
this.core.fireEditorEvent(e);
@@
-25745,7
+25803,7
@@
Roo.extend(Roo.HtmlEditorCore, Roo.Component, {
});
new Roo.htmleditor.FilterBlack({ node : d, tag : this.black});
// should be fonts..
});
new Roo.htmleditor.FilterBlack({ node : d, tag : this.black});
// should be fonts..
- new Roo.htmleditor.FilterKeepChildren({node : d, tag : [ 'FONT', '
O:P
' ]} );
+ new Roo.htmleditor.FilterKeepChildren({node : d, tag : [ 'FONT', '
:
' ]} );
new Roo.htmleditor.FilterParagraph({ node : d });
new Roo.htmleditor.FilterSpan({ node : d });
new Roo.htmleditor.FilterLongBr({ node : d });
new Roo.htmleditor.FilterParagraph({ node : d });
new Roo.htmleditor.FilterSpan({ node : d });
new Roo.htmleditor.FilterLongBr({ node : d });
@@
-26435,6
+26493,7
@@
Roo.extend(Roo.HtmlEditorCore, Roo.Component, {
cleanWord : function(node)
{
new Roo.htmleditor.FilterWord({ node : node ? node : this.doc.body });
cleanWord : function(node)
{
new Roo.htmleditor.FilterWord({ node : node ? node : this.doc.body });
+ new Roo.htmleditor.FilterKeepChildren({node : node ? node : this.doc.body, tag : [ 'FONT', ':' ]} );
},
},
@@
-30763,7
+30822,7
@@
Roo.extend(Roo.form.Layout, Roo.Component, {
* a function which returns such a specification.
*/
/**
* a function which returns such a specification.
*/
/**
- * @cfg {String} labelAlign
+ * @cfg {String} labelAlign
(left|top|right)
* Valid values are "left," "top" and "right" (defaults to "left")
*/
/**
* Valid values are "left," "top" and "right" (defaults to "left")
*/
/**
@@
-30883,6
+30942,7
@@
Roo.extend(Roo.form.Layout, Roo.Component, {
}
});
}
});
+
/**
* @class Roo.form.Column
* @extends Roo.form.Layout
/**
* @class Roo.form.Column
* @extends Roo.form.Layout
@@
-30917,7
+30977,6
@@
Roo.extend(Roo.form.Column, Roo.form.Layout, {
}
});
}
});
-
/**
* @class Roo.form.Row
* @extends Roo.form.Layout
/**
* @class Roo.form.Row
* @extends Roo.form.Layout