vivo/productMods/js/visualization/mapofscience/EntityTablesWidget.js
kongchinhua fb89277658 Add sub-entity tables for Map of Science comparison
Remove street view from Map of Science
Improve table UI
2011-11-10 21:38:08 +00:00

50 lines
No EOL
1.3 KiB
JavaScript

/* $This file is distributed under the terms of the license in /doc/license.txt$ */
var EntityTablesWidget = Class.extend({
init: function(sciMapWidget) {
this.sciMapWidget = sciMapWidget;
this.keyToDataTable = {};
this.container = $('<div>');
$("#subEntityTableArea").append(this.container);
$("#subEntityTableArea").show();
},
initView: function(key) {
this.container.show();
},
cleanView: function(key) {
this.container.hide();
},
loadJsonData: function(data) {
},
loadEntity: function(data, color) {
var key = data.label;
var dataTable = this.getDataTable(key);
if (dataTable == null) {
dataTable = this._createDataTable(key, data, color);
}
dataTable.initView();
},
unloadEntity: function(key) {
this._removeDataTable(key);
},
getDataTable: function(key) {
return this.keyToDataTable[key];
},
_removeDataTable: function(key) {
var dataTable = this.getDataTable(key);
if (dataTable) {
dataTable.cleanView();
delete this.keyToDataTable[key];
}
},
_createDataTable: function(key, data, color) {
dataTable = new SimpleDataTableWidget({
sciMapWidget: this.sciMapWidget,
container: this.container
});
data.color = color;
dataTable.loadJsonData(data);
this.keyToDataTable[key] = dataTable;
return dataTable;
}
});