mirror of
https://github.com/Lastorder-DC/rhymix.git
synced 2026-02-01 17:49:58 +09:00
r8039 보완. 필터 실행시점 오류 수정. GET_CONTENT 실행시 p 태그 래핑 제거
git-svn-id: http://xe-core.googlecode.com/svn/sandbox@8044 201d5d3c-b55e-5fd7-737f-ddc643e51545
This commit is contained in:
parent
4b8bf1ea80
commit
e4af93c9d0
2 changed files with 17 additions and 30 deletions
|
|
@ -119,10 +119,13 @@ var inline_styled = {
|
||||||
// auto_br
|
// auto_br
|
||||||
var auto_br = {
|
var auto_br = {
|
||||||
'br2ln' : function(code) {
|
'br2ln' : function(code) {
|
||||||
return $.trim(code.replace(/<br ?\/?>/ig, '\n'));
|
return code.replace(/<br ?\/?>/ig, '\n');
|
||||||
},
|
},
|
||||||
'ln2br' : function(code) {
|
'ln2br' : function(code) {
|
||||||
return code.replace(/(^|[^>])\s*\r?\n\s*([^<])/g, '$1<br />$2');
|
return code.replace(/(>)?[ \t]*((?:\r?\n[ \t]*)+)[ \t]*(<)?/g, function(m0,m1,m2,m3){
|
||||||
|
if ( !m1 || !m3 ) m2 = m2.replace(/\r?\n/g, '<br />');
|
||||||
|
return (m1||'')+m2+(m3||'');
|
||||||
|
});
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -286,31 +286,12 @@ Xeed = xe.createApp('Xeed', {
|
||||||
* As a workaround, I used manually appending DOM objects instead of setting html.
|
* As a workaround, I used manually appending DOM objects instead of setting html.
|
||||||
*/
|
*/
|
||||||
API_SET_CONTENT : function(sender, params) {
|
API_SET_CONTENT : function(sender, params) {
|
||||||
var $rich, $cur;
|
|
||||||
|
|
||||||
$rich = this.$richedit.empty();
|
|
||||||
|
|
||||||
$('<div>'+params[0]+'</div>')
|
|
||||||
.contents()
|
|
||||||
.each(function(){
|
|
||||||
if (is_block(this)) {
|
|
||||||
$rich.append(this);
|
|
||||||
$cur = null;
|
|
||||||
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (this[_nt_] == 3 && /^\s*$/.test(this.nodeValue)) return true;
|
|
||||||
|
|
||||||
if (!$cur) {
|
|
||||||
$cur = $(this).wrap('<p />').parent().appendTo($rich);
|
|
||||||
} else {
|
|
||||||
$cur.append(this);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
// If the rich editor is hidden, put the content into the textarea too.
|
// If the rich editor is hidden, put the content into the textarea too.
|
||||||
if ($rich.is(':hidden')) this.$textarea.val( this.cast('GET_CONTENT', [0, true]) );
|
if (this.$richedit.is(':hidden')) {
|
||||||
|
this.$textarea.val(params[0]);
|
||||||
|
} else {
|
||||||
|
this.$richedit.html(params[0]);
|
||||||
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -1719,9 +1700,12 @@ Filter = xe.createPlugin('ContentFilter', {
|
||||||
* @brief Run input filters before SET_CONTENT
|
* @brief Run input filters before SET_CONTENT
|
||||||
*/
|
*/
|
||||||
API_BEFORE_SET_CONTENT : function(sender, params) {
|
API_BEFORE_SET_CONTENT : function(sender, params) {
|
||||||
var i,c;
|
var i,c,m = this.cast('GET_EDITMODE') || '';
|
||||||
|
|
||||||
|
if (sender.getName() != 'EditMode') {
|
||||||
|
for(i=0,c=this._in.length; i < c; i++) params[0] = this._in[i](params[0]);
|
||||||
|
}
|
||||||
|
|
||||||
for(i=0,c=this._in.length; i < c; i++) params[0] = this._in[i](params[0]);
|
|
||||||
for(i=0,c=this._t2r.length; i < c; i++) params[0] = this._t2r[i](params[0]);
|
for(i=0,c=this._t2r.length; i < c; i++) params[0] = this._t2r[i](params[0]);
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|
@ -1773,7 +1757,7 @@ EditMode = xe.createPlugin('EditMode', {
|
||||||
this.$btn_html.unbind('mousedown');
|
this.$btn_html.unbind('mousedown');
|
||||||
},
|
},
|
||||||
API_MODE_WYSIWYG : function(sender, params) {
|
API_MODE_WYSIWYG : function(sender, params) {
|
||||||
var app = this.oApp;
|
var app = this.oApp, param;
|
||||||
|
|
||||||
if (app.$richedit.is(':visible')) return true;
|
if (app.$richedit.is(':visible')) return true;
|
||||||
|
|
||||||
|
|
@ -2047,7 +2031,7 @@ UndoRedo = xe.createPlugin('UndoRedo', {
|
||||||
// delete redo history
|
// delete redo history
|
||||||
if (index+1 < history.length) history = history.slice(0, index+1);
|
if (index+1 < history.length) history = history.slice(0, index+1);
|
||||||
|
|
||||||
item.content = this.cast('GET_CONTENT');
|
item.content = $rich.html();
|
||||||
if (sel) {
|
if (sel) {
|
||||||
item.bookmark = sel.getXPathBookmark();
|
item.bookmark = sel.getXPathBookmark();
|
||||||
} else {
|
} else {
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue