X-Git-Url: http://git.roojs.org/?a=blobdiff_plain;f=Pman.Gnumeric.js;h=d7755d0725223d2d68ed9455437691bec4f6ab3c;hb=a9618e2cff58cc68f992199b39ed187988fde7e1;hp=61486cf88e6bd59729b8d2ad56820ca301ea22d3;hpb=824712491c1ed17fa61a78d48def882d1bb5aa10;p=Pman.Core diff --git a/Pman.Gnumeric.js b/Pman.Gnumeric.js index 61486cf8..d7755d07 100644 --- a/Pman.Gnumeric.js +++ b/Pman.Gnumeric.js @@ -327,7 +327,6 @@ Roo.extend(Pman.Gnumeric, Roo.util.Observable, { } } - }); // read colinfo.. var ci = this.sheet.getElementsByTagNameNS('*','ColInfo'); @@ -699,9 +698,6 @@ Roo.extend(Pman.Gnumeric, Roo.util.Observable, { { data = data || this.data; - - Roo.log(data); - for (var r = 0; r < this.rmax;r++) { if (typeof(this.grid[r]) == 'undefined') { continue; @@ -714,7 +710,7 @@ Roo.extend(Pman.Gnumeric, Roo.util.Observable, { || !this.grid[r][c].value.match(/\{/)) { continue; } - Roo.log(this.grid[r][c].value); + var x = new Roo.Template({ html: this.grid[r][c].value }); try { var res = x.applyTemplate(data); @@ -1142,7 +1138,7 @@ Roo.extend(Pman.Gnumeric, Roo.util.Observable, { */ - writeImage : function (row, col, data, width, height) + writeImage : function (row, col, data, width, height, type) { if (!data) { @@ -1190,7 +1186,6 @@ Roo.extend(Pman.Gnumeric, Roo.util.Observable, { break; } } - soi.setAttribute('ObjectBound', //gnumeric_colRowToName(row,col) + ':' + gnumeric_colRowToName(row+1,col+1)); @@ -1213,19 +1208,81 @@ Roo.extend(Pman.Gnumeric, Roo.util.Observable, { soi.setAttribute('crop-left','0.000000'); soi.setAttribute('crop-right','0.000000'); // ...... < / Content> + + var name = 'Image' + Math.random().toString(36).substring(2); var content = this.doc.createElement('Content'); - content.setAttribute('image-type','jpeg'); - //alert(imgsrc); - - content.setAttribute('size-bytes',data.length); - content.textContent = data; + content.setAttribute('image-type', type ? type : 'jpeg'); + content.setAttribute('name', name); soi.appendChild(content); objs.appendChild(soi); + + var godoc = this.doc.getElementsByTagNameNS('*','GODoc')[0]; + + var goimage = this.doc.createElement('GOImage'); + goimage.setAttribute('image-type', type ? type : 'jpeg'); + goimage.setAttribute('name', name); + goimage.setAttribute('type', 'GOPixbuf'); + goimage.setAttribute('width', width); + goimage.setAttribute('height', height); + goimage.textContent = data; + + godoc.appendChild(goimage); + return true; //< /gnm:SheetObjectImage> // < /gnm:Objects> }, + + writeFixedImage : function (startCol, startRow, endCol, endRow, type, data, width, height) + { + if (!data) { + throw "write Image called with missing data"; + } + + startCol = startCol * 1; + startRow = startRow * 1; + endCol = endCol * 1; + endRow = endRow * 1; + width = width * 1; + height = height * 1; + + var objs = this.sheet.getElementsByTagNameNS('*','Objects')[0]; + var soi = this.doc.createElementNS('http://www.gnumeric.org/v10.dtd', 'gnm:SheetObjectImage'); + + soi.setAttribute('ObjectBound',this.RCtoCell(startRow, startCol) + ':' + this.RCtoCell(endRow, endCol)); + + soi.setAttribute('ObjectOffset', '0 0 0 0'); + soi.setAttribute('ObjectAnchorType','16 16 16 16'); + soi.setAttribute('Direction','17'); + soi.setAttribute('crop-top','0.000000'); + soi.setAttribute('crop-bottom','0.000000'); + soi.setAttribute('crop-left','0.000000'); + soi.setAttribute('crop-right','0.000000'); + + var name = 'Image' + Math.random().toString(36).substring(2); + var content = this.doc.createElement('Content'); + content.setAttribute('image-type', type ? type : 'jpeg'); + content.setAttribute('name', name); + soi.appendChild(content); + objs.appendChild(soi); + + Roo.log(name); + + var godoc = this.doc.getElementsByTagNameNS('*','GODoc')[0]; + + var goimage = this.doc.createElement('GOImage'); + goimage.setAttribute('image-type', type ? type : 'jpeg'); + goimage.setAttribute('name', name); + goimage.setAttribute('type', 'GOPixbuf'); + goimage.setAttribute('width', width); + goimage.setAttribute('height', height); + goimage.textContent = data; + + godoc.appendChild(goimage); + + return true; + }, /** * mergeRegion: