Roo/htmleditor/BlockTd.js
[roojs1] / Roo / htmleditor / BlockTd.js
index 85b966f..74706b7 100644 (file)
@@ -506,6 +506,9 @@ Roo.extend(Roo.htmleditor.BlockTd, Roo.htmleditor.Block, {
         this.colspan += rc.colspan;
         this.node.setAttribute('colspan', this.colspan);
 
+        var table = this.toTableArray();
+        this.normalizeWidths(table);
+        this.updateWidths(table);
     },
     
     
@@ -599,6 +602,10 @@ Roo.extend(Roo.htmleditor.BlockTd, Roo.htmleditor.Block, {
     updateWidths : function(table)
     {
         console.log("htmleditor.BlockTd updateWidths");
+        console.log("TABLE");
+        console.log(table);
+        console.log("COLWIDTH");
+        console.log(this.colWidths);
         for(var r = 0 ; r < table.length; r++) {
            
             for(var c = 0 ; c < table[r].length; c++) {
@@ -607,10 +614,23 @@ Roo.extend(Roo.htmleditor.BlockTd, Roo.htmleditor.Block, {
                 }
                 
                 if (this.colWidths[0] != false && table[r][c].colspan < 2) {
+                    console.log("CELL");
+                    console.log(table[r][c].cell);
                     var el = Roo.htmleditor.Block.factory(table[r][c].cell);
                     el.width = Math.floor(this.colWidths[c])  +'%';
                     el.updateElement(el.node);
                 }
+                else {
+                    console.log("CELL COLSPAN");
+                    console.log(table[r][c]);
+                    var el = Roo.htmleditor.Block.factory(table[r][c].cell);
+                    var width = 0;
+                    for(var i = 0; i < table[r][c].colspan; i ++) {
+                        width += Math.floor(this.colWidths[c + i]);
+                    }
+                    el.width = width  +'%';
+                    el.updateElement(el.node);
+                }
                 table[r][c].cell = false; // done
             }
         }
@@ -663,9 +683,7 @@ Roo.extend(Roo.htmleditor.BlockTd, Roo.htmleditor.Block, {
     
     shrinkColumn : function()
     {
-        console.log("htmleditor.BlockTd shrinkColumn");
         var table = this.toTableArray();
-        console.log(table);
         this.normalizeWidths(table);
         var col = this.cellData.col;
         var nw = this.colWidths[col] * 0.8;
@@ -685,9 +703,7 @@ Roo.extend(Roo.htmleditor.BlockTd, Roo.htmleditor.Block, {
     },
     growColumn : function()
     {
-        console.log("htmleditor.BlockTd growColumn");
         var table = this.toTableArray();
-        console.log(table);
         this.normalizeWidths(table);
         var col = this.cellData.col;
         var nw = this.colWidths[col] * 1.2;