diff --git a/chrome/chromeFiles/content/scholar/preferences.js b/chrome/chromeFiles/content/scholar/preferences.js
new file mode 100644
index 0000000000..9a57734ce7
--- /dev/null
+++ b/chrome/chromeFiles/content/scholar/preferences.js
@@ -0,0 +1,25 @@
+var prefManager = Components.classes["@mozilla.org/preferences-service;1"]
+ .getService(Components.interfaces.nsIPrefBranch);
+var whateverBox;
+
+/*
+ To add a new preference:
+ * modify defaults/prefs.js
+ * add a control to prefs.xul
+ * in this document:
+ 1) add var above
+ 2) add lines to init() function
+ 3) add line to accept() function
+*/
+
+function init()
+{
+ whateverBox = document.getElementById('whateverBox');
+ whateverBox.checked = prefManager.getBoolPref('extensions.scholar.whatever');
+
+}
+
+function accept()
+{
+ prefManager.setBoolPref('extensions.scholar.whatever', whateverBox.checked);
+}
\ No newline at end of file
diff --git a/chrome/chromeFiles/content/scholar/preferences.xul b/chrome/chromeFiles/content/scholar/preferences.xul
new file mode 100644
index 0000000000..30803d417c
--- /dev/null
+++ b/chrome/chromeFiles/content/scholar/preferences.xul
@@ -0,0 +1,16 @@
+
+
+
+
\ No newline at end of file
diff --git a/chrome/chromeFiles/content/scholar/sidebar.js b/chrome/chromeFiles/content/scholar/sidebar.js
index 6679dcc8d4..fcdc2a6f7e 100644
--- a/chrome/chromeFiles/content/scholar/sidebar.js
+++ b/chrome/chromeFiles/content/scholar/sidebar.js
@@ -5,7 +5,7 @@ var dynamicBox;
Scholar.TreeView = function()
{
this._treebox = null;
- this._dataObjects = new Array();
+ this._dataItems = new Array();
this.rowCount = 0;
}
@@ -17,9 +17,9 @@ Scholar.TreeView.prototype.setTree = function(treebox)
var newRows = Scholar.Items.getTreeRows();
for(var i = 0; i < newRows.length; i++)
- this._insertItem(newRows[i], 0, i+1); //object ref, isContainerOpen, level
+ this._insertItem(newRows[i], 0, i+1); //item ref, isContainerOpen, level
- this.rowCount = this._dataObjects.length;
+ this.rowCount = this._dataItems.length;
}
Scholar.TreeView.prototype.getCellText = function(row, column)
@@ -45,9 +45,9 @@ Scholar.TreeView.prototype.getCellText = function(row, column)
}
Scholar.TreeView.prototype.isContainer = function(row) { return this._getItemAtRow(row).isFolder(); }
-Scholar.TreeView.prototype.isContainerOpen = function(row) { return this._dataObjects[row][1]; }
+Scholar.TreeView.prototype.isContainerOpen = function(row) { return this._dataItems[row][1]; }
Scholar.TreeView.prototype.isContainerEmpty = function(row) { return (this.isContainer(row) && this._getItemAtRow(row).isEmpty()); }
-Scholar.TreeView.prototype.getLevel = function(row) { return this._dataObjects[row][2]; }
+Scholar.TreeView.prototype.getLevel = function(row) { return this._dataItems[row][2]; }
Scholar.TreeView.prototype.getParentIndex = function(row)
{
@@ -77,7 +77,7 @@ Scholar.TreeView.prototype.toggleOpenState = function(row)
if(this.isContainerOpen(row))
{
- while((row + 1 < this._dataObjects.length) && (this.getLevel(row + 1) > thisLevel))
+ while((row + 1 < this._dataItems.length) && (this.getLevel(row + 1) > thisLevel))
{
this._deleteItem(row+1);
count--; //count is negative when closing a container because we are removing rows
@@ -94,8 +94,8 @@ Scholar.TreeView.prototype.toggleOpenState = function(row)
}
}
- this._dataObjects[row][1] = !this._dataObjects[row][1]; //toggle container open value
- this.rowCount = this._dataObjects.length;
+ this._dataItems[row][1] = !this._dataItems[row][1]; //toggle container open value
+ this.rowCount = this._dataItems.length;
this._treebox.rowCountChanged(row, count); //tell treebox to repaint these
}
@@ -104,24 +104,24 @@ Scholar.TreeView.prototype.selectionChanged = function()
{
if(this.selection.count == 1 && !this.isContainer(this.selection.currentIndex))
{
- populateObjectPane(this._getItemAtRow(this.selection.currentIndex));
- document.getElementById('object-pane').hidden = false;
+ viewSelectedItem();
+ document.getElementById('view-pane').hidden = false;
document.getElementById('tb-edit').hidden = false;
}
else
{
- document.getElementById('object-pane').hidden = true;
+ document.getElementById('view-pane').hidden = true;
document.getElementById('tb-edit').hidden = true;
}
}
-Scholar.TreeView.prototype._insertItem = function(item, level, beforeRow) { this._dataObjects.splice(beforeRow, 0, [item, false, level]); }
+Scholar.TreeView.prototype._insertItem = function(item, level, beforeRow) { this._dataItems.splice(beforeRow, 0, [item, false, level]); }
-Scholar.TreeView.prototype._deleteItem = function(row) { this._dataObjects.splice(row,1);; }
+Scholar.TreeView.prototype._deleteItem = function(row) { this._dataItems.splice(row,1);; }
-Scholar.TreeView.prototype._getItemAtRow = function(row) { return this._dataObjects[row][0]; }
+Scholar.TreeView.prototype._getItemAtRow = function(row) { return this._dataItems[row][0]; }
Scholar.TreeView.prototype.isSorted = function() { return false; }
Scholar.TreeView.prototype.isSeparator = function(row) { return false; }
Scholar.TreeView.prototype.isEditable = function(row, idx) { return false; }
@@ -139,10 +139,12 @@ Scholar.TreeView.prototype.canDrop = function(row, orient) { return !orient;
Scholar.TreeView.prototype.drop = function(row, orient) { }
*/
-function populateObjectPane(thisItem)
+function viewSelectedItem()
{
removeDynamicRows();
-
+
+ var thisItem = myTreeView._getItemAtRow(myTreeView.selection.currentIndex);
+
var fieldNames = getFullFieldList(thisItem);
for(var i = 0; i
-
+
-
+
diff --git a/chrome/chromeFiles/locale/en-US/scholar/scholar.properties b/chrome/chromeFiles/locale/en-US/scholar/scholar.properties
index 24a001b959..060f4f0619 100644
--- a/chrome/chromeFiles/locale/en-US/scholar/scholar.properties
+++ b/chrome/chromeFiles/locale/en-US/scholar/scholar.properties
@@ -1,17 +1,17 @@
-objectFields.title = Title
-objectFields.dateAdded = Date Added
-objectFields.dateModified = Modified
-objectFields.source = Source
-objectFields.rights = Rights
+itemFields.title = Title
+itemFields.dateAdded = Date Added
+itemFields.dateModified = Modified
+itemFields.source = Source
+itemFields.rights = Rights
-objectFields.series = Series
-objectFields.volume = Volume
-objectFields.number = Number
-objectFields.edition = Edition
-objectFields.place = Place
-objectFields.publisher = Publisher
-objectFields.year = Year
-objectFields.pages = Pages
-objectFields.ISBN = ISBN
-objectFields.publication = Publication
-objectFields.ISSN = ISSN
+itemFields.series = Series
+itemFields.volume = Volume
+itemFields.number = Number
+itemFields.edition = Edition
+itemFields.place = Place
+itemFields.publisher = Publisher
+itemFields.year = Year
+itemFields.pages = Pages
+itemFields.ISBN = ISBN
+itemFields.publication = Publication
+itemFields.ISSN = ISSN
diff --git a/defaults/preferences/scholar.js b/defaults/preferences/scholar.js
new file mode 100644
index 0000000000..a2b65ed87c
--- /dev/null
+++ b/defaults/preferences/scholar.js
@@ -0,0 +1,4 @@
+// These are DEFAULT prefs for the INSTALL. You will have to reinstall the extension to see differences!
+
+// Display internal shortcut
+pref("extensions.scholar.whatever", false);
diff --git a/install.rdf b/install.rdf
index 42e49dd5e8..55383cae9a 100644
--- a/install.rdf
+++ b/install.rdf
@@ -11,7 +11,8 @@
em:name="Firefox Scholar"
em:version="1.0"
em:creator="Center for History and New Media, George Mason University"
- em:homepageURL="http://chnm.gmu.edu">
+ em:homepageURL="http://chnm.gmu.edu"
+ em:optionsURL="chrome://scholar/content/preferences.xul">