comparison media/js/tiny_mce/plugins/table/editor_plugin_src.js @ 217:237710206167

Update TinyMCE to 3.3.6
author Brian Neal <bgneal@gmail.com>
date Tue, 01 Jun 2010 04:49:29 +0000
parents 149c3567fec1
children 6ed2932901fa
comparison
equal deleted inserted replaced
216:fe900598f81c 217:237710206167
21 selectedCell = dom.getParent(selection.getStart(), 'th,td'); 21 selectedCell = dom.getParent(selection.getStart(), 'th,td');
22 if (selectedCell) { 22 if (selectedCell) {
23 startPos = getPos(selectedCell); 23 startPos = getPos(selectedCell);
24 endPos = findEndPos(); 24 endPos = findEndPos();
25 selectedCell = getCell(startPos.x, startPos.y); 25 selectedCell = getCell(startPos.x, startPos.y);
26 }
27
28 function cloneNode(node, children) {
29 node = node.cloneNode(children);
30 node.removeAttribute('id');
31
32 return node;
26 } 33 }
27 34
28 function buildGrid() { 35 function buildGrid() {
29 var startY = 0; 36 var startY = 0;
30 37
120 tinymce.walk(cell, function(node) { 127 tinymce.walk(cell, function(node) {
121 var curNode; 128 var curNode;
122 129
123 if (node.nodeType == 3) { 130 if (node.nodeType == 3) {
124 each(dom.getParents(node.parentNode, null, cell).reverse(), function(node) { 131 each(dom.getParents(node.parentNode, null, cell).reverse(), function(node) {
125 node = node.cloneNode(false); 132 node = cloneNode(node, false);
126 133
127 if (!formatNode) 134 if (!formatNode)
128 formatNode = curNode = node; 135 formatNode = curNode = node;
129 else if (curNode) 136 else if (curNode)
130 curNode.appendChild(node); 137 curNode.appendChild(node);
138 145
139 return false; 146 return false;
140 } 147 }
141 }, 'childNodes'); 148 }, 'childNodes');
142 149
143 cell = cell.cloneNode(false); 150 cell = cloneNode(cell, false);
144 cell.rowSpan = cell.colSpan = 1; 151 cell.rowSpan = cell.colSpan = 1;
145 152
146 if (formatNode) { 153 if (formatNode) {
147 cell.appendChild(formatNode); 154 cell.appendChild(formatNode);
148 } else { 155 } else {
307 each(grid, function(row, y) { 314 each(grid, function(row, y) {
308 each(row, function(cell, x) { 315 each(row, function(cell, x) {
309 if (isCellSelected(cell)) { 316 if (isCellSelected(cell)) {
310 cell = cell.elm; 317 cell = cell.elm;
311 rowElm = cell.parentNode; 318 rowElm = cell.parentNode;
312 newRow = rowElm.cloneNode(false); 319 newRow = cloneNode(rowElm, false);
313 posY = y; 320 posY = y;
314 321
315 if (before) 322 if (before)
316 return false; 323 return false;
317 } 324 }
488 495
489 function copyRows() { 496 function copyRows() {
490 var rows = getSelectedRows(); 497 var rows = getSelectedRows();
491 498
492 each(rows, function(row, i) { 499 each(rows, function(row, i) {
493 rows[i] = row.cloneNode(true); 500 rows[i] = cloneNode(row, true);
494 }); 501 });
495 502
496 return rows; 503 return rows;
497 }; 504 };
498 505
877 // Add context menu 884 // Add context menu
878 if (ed && ed.plugins.contextmenu) { 885 if (ed && ed.plugins.contextmenu) {
879 ed.plugins.contextmenu.onContextMenu.add(function(th, m, e) { 886 ed.plugins.contextmenu.onContextMenu.add(function(th, m, e) {
880 var sm, se = ed.selection, el = se.getNode() || ed.getBody(); 887 var sm, se = ed.selection, el = se.getNode() || ed.getBody();
881 888
882 if (ed.dom.getParent(e, 'td') || ed.dom.getParent(e, 'th')) { 889 if (ed.dom.getParent(e, 'td') || ed.dom.getParent(e, 'th') || ed.dom.select('td.mceSelected,th.mceSelected').length) {
883 m.removeAll(); 890 m.removeAll();
884 891
885 if (el.nodeName == 'A' && !ed.dom.getAttrib(el, 'name')) { 892 if (el.nodeName == 'A' && !ed.dom.getAttrib(el, 'name')) {
886 m.add({title : 'advanced.link_desc', icon : 'link', cmd : ed.plugins.advlink ? 'mceAdvLink' : 'mceLink', ui : true}); 893 m.add({title : 'advanced.link_desc', icon : 'link', cmd : ed.plugins.advlink ? 'mceAdvLink' : 'mceLink', ui : true});
887 m.add({title : 'advanced.unlink_desc', icon : 'unlink', cmd : 'UnLink'}); 894 m.add({title : 'advanced.unlink_desc', icon : 'unlink', cmd : 'UnLink'});