commit e56abbc5f41a55d3d2de8d3cdcaae83984f3684c
parent 1447b3be92b820dcc59e84676307e6735fcfe120
Author: David Norton <david@nortoncrew.com>
Date: Fri, 11 Aug 2006 15:48:26 +0000
Closes #138, Ability to view files
Some minor fixes to editing creators.
Diffstat:
3 files changed, 34 insertions(+), 8 deletions(-)
diff --git a/chrome/chromeFiles/content/scholar/itemPane.js b/chrome/chromeFiles/content/scholar/itemPane.js
@@ -260,7 +260,7 @@ ScholarItemPane = new function()
{
_itemBeingEdited.setType(id);
_itemBeingEdited.save();
- reloadFields();
+ loadPane(0);
}
}
@@ -345,7 +345,7 @@ ScholarItemPane = new function()
{
_itemBeingEdited.removeCreator(index);
_itemBeingEdited.save();
- reloadFields();
+ loadPane(0);
}
function showEditor(elem)
diff --git a/chrome/chromeFiles/content/scholar/overlay.js b/chrome/chromeFiles/content/scholar/overlay.js
@@ -52,6 +52,7 @@ var ScholarPane = new function()
this.newNote = newNote;
this.addFileFromDialog = addFileFromDialog;
this.addFileFromPage = addFileFromPage;
+ this.viewSelectedFile = viewSelectedFile;
/*
* Called when the window is open
@@ -225,6 +226,7 @@ var ScholarPane = new function()
else if(item.isFile())
{
document.getElementById('scholar-file-label').setAttribute('value',item.getField('title'));
+ document.getElementById('scholar-file-view').setAttribute('disabled', item.ref.getFileLinkMode() == Scholar.Files.LINK_MODE_LINKED_URL);
document.getElementById('scholar-file-links').item = item.ref;
document.getElementById('item-pane').selectedIndex = 3;
}
@@ -441,6 +443,10 @@ var ScholarPane = new function()
{
document.getElementById('scholar-view-note-button').doCommand();
}
+ else if(item && item.isFile())
+ {
+ viewSelectedFile();
+ }
}
}
}
@@ -490,7 +496,12 @@ var ScholarPane = new function()
{
item = newItem(Scholar.ItemTypes.getID('website'));
if(item)
+ {
id = item.getID();
+ var c = getSelectedCollection();
+ if(c)
+ c.addItem(id);
+ }
}
var fileID;
@@ -499,19 +510,33 @@ var ScholarPane = new function()
else
fileID = Scholar.Files.importFromDocument(window.content.document, id);
- if(fileID)
- {
+ if(fileID && item)
+ {
var file = Scholar.Items.get(fileID);
- if(!item)
- item = Scholar.Items.get(id);
-
- if(file && item)
+ if(file)
{
item.setField('title',file.getField('title'));
item.save();
}
}
}
+
+ function viewSelectedFile()
+ {
+ if(itemsView && itemsView.selection.count == 1)
+ {
+ var file = getSelectedItems()[0];
+
+ if(file.getFileLinkMode() != Scholar.Files.LINK_MODE_LINKED_URL)
+ {
+ window.loadURI(file.getLocalFileURL());
+ }
+ else
+ {
+ window.loadURI(file.getFileURL());
+ }
+ }
+ }
}
window.addEventListener("load", function(e) { ScholarPane.onLoad(e); }, false);
diff --git a/chrome/chromeFiles/content/scholar/overlay.xul b/chrome/chromeFiles/content/scholar/overlay.xul
@@ -196,6 +196,7 @@
</vbox>
<vbox id="scholar-view-file" flex="1">
<label id="scholar-file-label"/>
+ <button id="scholar-file-view" label="View File" oncommand="ScholarPane.viewSelectedFile();"/>
<linksbox id="scholar-file-links" flex="1"/>
</vbox>
</deck>