| Newsgroups |
gmane.editors.bitflux.cvs |
| Message-ID |
<[email protected]> |
Author: chregu
Date: Wed Dec 21 23:17:53 2005
New Revision: 1431
Modified:
branches/bxe_2_0/js/bxeXMLNode.js
branches/bxe_2_0/js/table.js
Log:
auto-create colgroups as well
Modified: branches/bxe_2_0/js/bxeXMLNode.js
==============================================================================
--- branches/bxe_2_0/js/bxeXMLNode.js (original)
+++ branches/bxe_2_0/js/bxeXMLNode.js Wed Dec 21 23:17:53 2005
@@ -285,10 +285,16 @@
if (!this.vdom) {
return false;
}
+
if (this.vdom.bxeOnnewType == "function") {
window.bxe_lastNode = this;
return eval(this.vdom.bxeOnnew + "(this)") ;
}
+ return this.makeDefaultNodes2(noPlaceholderText);
+}
+
+
+XMLNodeElement.prototype.makeDefaultNodes2 = function(noPlaceholderText) {
var ret = false;
var cHT = this.canHaveText;
if (!noPlaceholderText) {
Modified: branches/bxe_2_0/js/table.js
==============================================================================
--- branches/bxe_2_0/js/table.js (original)
+++ branches/bxe_2_0/js/table.js Wed Dec 21 23:17:53 2005
@@ -328,8 +328,39 @@
return null; // go to exception
te.XMLNode.isNodeValid(true,2);
- var rowInfo = bxe_table_getTableRowInfo(te);
+
+ var ac = te.XMLNode.allowedChildren;
+ if (ac.length >= 1) {
+ var _hasMust = false;
+ for ( var i in ac) {
+
+ if (!(ac[i].optional ) ) {
+ if (ac[i].vdom.bxeTabletype == "table-colgroup") {
+ bxe_table_createTableFinishInitRows(te,ac[i],1, noColumns);
+ } else if (ac[i].vdom.bxeTabletype == "table-row") {
+ bxe_table_createTableFinishInitRows(te,ac[i],noRows, noColumns);
+
+ } else {
+
+ eDOMEventCall("appendChildNode",document,{"noTransform": true, "appendToNode": te.XMLNode, "localName":ac[i].localName,"namespaceURI":ac[i].namespaceURI});
+ }
+ _hasMust =true;
+ }
+
+ }
+ if (!_hasMust) {
+ bxe_context_menu.buildElementChooserPopup(this,ac);
+ } else {
+ ret = this;
+ }
+ }
+ te.XMLNode.isNodeValid(true,2,true);
+
+ return te;
+}
+function bxe_table_createTableFinishInitRows(te,rowInfo, noRows, noColumns) {
+
for(var i=0; i<noRows; i++)
{
@@ -347,10 +378,8 @@
tre.appendChild(document.createTextNode("\n"));
}
te.appendChild(document.createTextNode("\n"));
+ tre.XMLNode.isNodeValid(true,2,true);
}
- te.XMLNode.isNodeValid(true,2,true);
-
- return te;
}
function bxe_table_newtable(id)
@@ -1117,26 +1146,29 @@
}
+
Element.prototype.createNewTableCell = function() {
var ac = this.XMLNode.allowedChildren;
+
+ if (this.XMLNode.vdom.bxeTabletype == "table-row") {
+ var celltype = "table-cell";
+ } else {
+ var celltype = "table-col";
+ }
+
for (var i = 0; i < ac.length; i++) {
- if (ac[i].vdom.bxeTabletype == "table-cell") {
+ if (ac[i].vdom.bxeTabletype == celltype) {
var newCell = bxe_config.doc.createElementNS(ac[i].namespaceURI,ac[i].localName);
break;
}
}
- /*newCell.setAttribute("align", "left");
- newCell.setAttribute("valign", "top");
- newCell.setAttribute("colspan", "1");
- newCell.setAttribute("rowspan", "1");*/
- //BX_node_insertID(newCell);
var textNode = bxe_config.doc.createTextNode("#");
+ if (!newCell) {
+ alert("no newCell in " + this.XMLNode.localName);
+ }
newCell.appendChild(textNode);
-
-
-
return newCell;
}
--
Bx-editor-cvs mailing list
[email protected]
http://lists.bitflux.ch/cgi-bin/listinfo/bx-editor-cvs