diff --git a/chrome/chromeFiles/content/scholar/treeView.js b/chrome/chromeFiles/content/scholar/folderTreeView.js similarity index 100% rename from chrome/chromeFiles/content/scholar/treeView.js rename to chrome/chromeFiles/content/scholar/folderTreeView.js diff --git a/chrome/chromeFiles/content/scholar/itemTreeView.js b/chrome/chromeFiles/content/scholar/itemTreeView.js new file mode 100644 index 000000000..86479019d --- /dev/null +++ b/chrome/chromeFiles/content/scholar/itemTreeView.js @@ -0,0 +1,110 @@ +Scholar.ItemTreeView = function(root) +{ + this._treebox = null; + this._dataItems = new Array(); + this.rowCount = 0; + this._rootFolder = root; +} + +Scholar.ItemTreeView.prototype.setTree = function(treebox) +{ + if(this._treebox) + return; + this._treebox = treebox; + + var newRows = Scholar.Items.getTreeRows(this._rootFolder,"items"); + for(var i = 0; i < newRows.length; i++) + this._showItem(newRows[i], i+1); //item ref, before row + + this._refreshHashMap(); +} + +Scholar.ItemTreeView.prototype.getCellText = function(row, column) +{ + var obj = this._getItemAtRow(row); + return obj.getField(column.id); +} + + +Scholar.ItemTreeView.prototype._showItem = function(item, beforeRow) { this._dataItems.splice(beforeRow, 0, item); this.rowCount++; } + +Scholar.ItemTreeView.prototype._hideItem = function(row) { this._dataItems.splice(row,1); this.rowCount--; } + +Scholar.ItemTreeView.prototype._getItemAtRow = function(row) { return this._dataItems[row]; } + +Scholar.ItemTreeView.prototype.isSorted = function() { return false; } +Scholar.ItemTreeView.prototype.isSeparator = function(row) { return false; } +Scholar.ItemTreeView.prototype.isContainer = function(row) { return false; } +Scholar.ItemTreeView.prototype.getLevel = function(row) { return 0; } +Scholar.ItemTreeView.prototype.getRowProperties = function(row, prop) { } +Scholar.ItemTreeView.prototype.getColumnProperties = function(col, prop) { } +Scholar.ItemTreeView.prototype.getCellProperties = function(row, col, prop) { } +Scholar.ItemTreeView.prototype.getImageSrc = function(row, col) { } + +Scholar.ItemTreeView.prototype.cycleHeader = function(column) +{ + var order = 0; + if(order==0) + { + function columnSort(a,b) + { + return(a.getField(column.id) < b.getField(column.id)) ? -1 : (a.getField[column.id] > b.getField(column.id)) ? 1 : 0; + } + } + else + { + function columnSort(a,b) + { + return(a.getField(column.id) > b.getField(column.id)) ? -1 : (a.getField[column.id] < b.getField(column.id)) ? 1 : 0; + } + } + + this._dataItems.sort(columnSort); + this._refreshHashMap(); + this._treebox.invalidate(); +} + +Scholar.ItemTreeView.prototype.deleteSelection = function() +{ + if(this.selection.count == 0) + return; + + //create an array of selected items + var rows = new Array(); + var start = new Object(); + var end = new Object(); + for (var i=0, len=this.selection.getRangeCount(); i