Skip to content

Commit

Permalink
Ensure new spreadsheets can be added
Browse files Browse the repository at this point in the history
  • Loading branch information
robertleeplummerjr authored and robertleeplummerjr committed Aug 27, 2014
1 parent 2645077 commit 2f7ea25
Show file tree
Hide file tree
Showing 5 changed files with 91 additions and 31 deletions.
30 changes: 23 additions & 7 deletions Sheet/JSONLoader.js
Original file line number Diff line number Diff line change
Expand Up @@ -18,10 +18,20 @@

Constructor.prototype = {
size: function(spreadsheetIndex) {
var jsonSpreadsheet = this.json[spreadsheetIndex],
rows = jsonSpreadsheet.rows,
firstRow = rows[0],
firstRowColumns = firstRow.columns;
var size = {
cols: 0,
rows: 0
},
json = this.json,
jsonSpreadsheet,
rows,
firstRow,
firstRowColumns;

if ((jsonSpreadsheet = json[spreadsheetIndex]) === undefined) return size;
if ((rows = jsonSpreadsheet.rows) === undefined) return size;
if ((firstRow = rows[0]) === undefined) return size;
if ((firstRowColumns = firstRow.columns) === undefined) return size;

return {
rows: rows.length,
Expand All @@ -39,9 +49,15 @@
},
setRowHeight: function(sheetIndex, rowIndex, barTd) {
var json = this.json,
jsonSpreadsheet = json[sheetIndex],
row = jsonSpreadsheet.rows[rowIndex],
height = row.height;
jsonSpreadsheet,
rows,
row,
height;

if ((jsonSpreadsheet = json[sheetIndex]) === undefined) return;
if ((rows = jsonSpreadsheet.rows) === undefined) return;
if ((row = rows[rowIndex]) === undefined) return;
if ((height = row.height) === undefined) return;

barTd.style.height = height + 'px';
},
Expand Down
13 changes: 9 additions & 4 deletions Sheet/XMLLoader.js
Original file line number Diff line number Diff line change
Expand Up @@ -86,10 +86,15 @@
},
setRowHeight: function(sheetIndex, rowIndex, barTd) {
var spreadsheets = this.spreadsheets,
xmlSpreadsheet = spreadsheets[sheetIndex],
rows = xmlSpreadsheet.getElementsByTagName('rows')[0].getElementsByTagName('row'),
row = rows[rowIndex],
height = row.attributes['height'].nodeValue;
xmlSpreadsheet,
rows,
row,
height;

if ((xmlSpreadsheet = spreadsheets[sheetIndex]) === undefined) return;
if ((rows = xmlSpreadsheet.getElementsByTagName('rows')[0].getElementsByTagName('row')) === undefined) return;
if ((row = rows[rowIndex]) === undefined) return;
if ((height = row.attributes['height'].nodeValue) === undefined) return;

barTd.style.height = height + 'px';
},
Expand Down
17 changes: 13 additions & 4 deletions Sheet/sheet.js
Original file line number Diff line number Diff line change
Expand Up @@ -7142,8 +7142,6 @@ $.sheet = {
tabContainer = jS.controlFactory.tabContainer(),
i;

jS.sheetCount = tables.length - 1;

header.ui = ui;
header.tabContainer = tabContainer;

Expand Down Expand Up @@ -8368,7 +8366,9 @@ $.sheet = {
* @memberOf jS
*/
formulaParser: null
};
},
loaderTables = [];

jS.setBusy(true);
s.parent[0].jS = jS;

Expand Down Expand Up @@ -8470,7 +8470,16 @@ $.sheet = {
if (s.origHtml.length) {
jS.openSheet(s.origHtml);
} else {
jS.openSheet($(document.createElement('table')));
if (s.loader) {
while(loaderTables.length < s.loader.count) {
loaderTables.push(document.createElement('table'));
}
jS.openSheet($(loaderTables));
}

else {
jS.openSheet($(document.createElement('table')));
}
}

jS.setBusy(false);
Expand Down
60 changes: 45 additions & 15 deletions jquery.sheet.js
Original file line number Diff line number Diff line change
Expand Up @@ -761,10 +761,20 @@ Sheet.StyleUpdater = (function(document) {

Constructor.prototype = {
size: function(spreadsheetIndex) {
var jsonSpreadsheet = this.json[spreadsheetIndex],
rows = jsonSpreadsheet.rows,
firstRow = rows[0],
firstRowColumns = firstRow.columns;
var size = {
cols: 0,
rows: 0
},
json = this.json,
jsonSpreadsheet,
rows,
firstRow,
firstRowColumns;

if ((jsonSpreadsheet = json[spreadsheetIndex]) === undefined) return size;
if ((rows = jsonSpreadsheet.rows) === undefined) return size;
if ((firstRow = rows[0]) === undefined) return size;
if ((firstRowColumns = firstRow.columns) === undefined) return size;

return {
rows: rows.length,
Expand All @@ -782,9 +792,15 @@ Sheet.StyleUpdater = (function(document) {
},
setRowHeight: function(sheetIndex, rowIndex, barTd) {
var json = this.json,
jsonSpreadsheet = json[sheetIndex],
row = jsonSpreadsheet.rows[rowIndex],
height = row.height;
jsonSpreadsheet,
rows,
row,
height;

if ((jsonSpreadsheet = json[sheetIndex]) === undefined) return;
if ((rows = jsonSpreadsheet.rows) === undefined) return;
if ((row = rows[rowIndex]) === undefined) return;
if ((height = row.height) === undefined) return;

barTd.style.height = height + 'px';
},
Expand Down Expand Up @@ -1168,10 +1184,15 @@ Sheet.StyleUpdater = (function(document) {
},
setRowHeight: function(sheetIndex, rowIndex, barTd) {
var spreadsheets = this.spreadsheets,
xmlSpreadsheet = spreadsheets[sheetIndex],
rows = xmlSpreadsheet.getElementsByTagName('rows')[0].getElementsByTagName('row'),
row = rows[rowIndex],
height = row.attributes['height'].nodeValue;
xmlSpreadsheet,
rows,
row,
height;

if ((xmlSpreadsheet = spreadsheets[sheetIndex]) === undefined) return;
if ((rows = xmlSpreadsheet.getElementsByTagName('rows')[0].getElementsByTagName('row')) === undefined) return;
if ((row = rows[rowIndex]) === undefined) return;
if ((height = row.attributes['height'].nodeValue) === undefined) return;

barTd.style.height = height + 'px';
},
Expand Down Expand Up @@ -8585,8 +8606,6 @@ $.sheet = {
tabContainer = jS.controlFactory.tabContainer(),
i;

jS.sheetCount = tables.length - 1;

header.ui = ui;
header.tabContainer = tabContainer;

Expand Down Expand Up @@ -9811,7 +9830,9 @@ $.sheet = {
* @memberOf jS
*/
formulaParser: null
};
},
loaderTables = [];

jS.setBusy(true);
s.parent[0].jS = jS;

Expand Down Expand Up @@ -9913,7 +9934,16 @@ $.sheet = {
if (s.origHtml.length) {
jS.openSheet(s.origHtml);
} else {
jS.openSheet($(document.createElement('table')));
if (s.loader) {
while(loaderTables.length < s.loader.count) {
loaderTables.push(document.createElement('table'));
}
jS.openSheet($(loaderTables));
}

else {
jS.openSheet($(document.createElement('table')));
}
}

jS.setBusy(false);
Expand Down
2 changes: 1 addition & 1 deletion jquery.sheet.min.js

Large diffs are not rendered by default.

0 comments on commit 2f7ea25

Please sign in to comment.