Fixes #143, Scholar toolbar button to save current page as an independent file in the selected project.
This commit is contained in:
parent
40ef9f669d
commit
4757d21b20
4 changed files with 43 additions and 16 deletions
|
@ -138,6 +138,7 @@ ScholarItemPane = new function()
|
||||||
|
|
||||||
var label = document.createElement('label');
|
var label = document.createElement('label');
|
||||||
label.setAttribute('value',_noteToTitle(notes[i].getNote()));
|
label.setAttribute('value',_noteToTitle(notes[i].getNote()));
|
||||||
|
label.setAttribute('flex','1'); //so that the long names will flex smaller
|
||||||
label.setAttribute('crop','end');
|
label.setAttribute('crop','end');
|
||||||
|
|
||||||
var box = document.createElement('box');
|
var box = document.createElement('box');
|
||||||
|
@ -177,6 +178,7 @@ ScholarItemPane = new function()
|
||||||
|
|
||||||
var label = document.createElement('label');
|
var label = document.createElement('label');
|
||||||
label.setAttribute('value',files[i].getField('title'));
|
label.setAttribute('value',files[i].getField('title'));
|
||||||
|
label.setAttribute('flex','1'); //so that the long names will flex smaller
|
||||||
label.setAttribute('crop','end');
|
label.setAttribute('crop','end');
|
||||||
|
|
||||||
var box = document.createElement('box');
|
var box = document.createElement('box');
|
||||||
|
@ -442,26 +444,12 @@ ScholarItemPane = new function()
|
||||||
|
|
||||||
function addFileFromDialog(link)
|
function addFileFromDialog(link)
|
||||||
{
|
{
|
||||||
var nsIFilePicker = Components.interfaces.nsIFilePicker;
|
ScholarPane.addFileFromDialog(link, _itemBeingEdited.getID());
|
||||||
var fp = Components.classes["@mozilla.org/filepicker;1"]
|
|
||||||
.createInstance(nsIFilePicker);
|
|
||||||
fp.init(window, "Select a File", nsIFilePicker.modeOpen);
|
|
||||||
|
|
||||||
if(fp.show() == nsIFilePicker.returnOK)
|
|
||||||
{
|
|
||||||
if(link)
|
|
||||||
Scholar.Files.linkFromFile(fp.file, _itemBeingEdited.getID());
|
|
||||||
else
|
|
||||||
Scholar.Files.importFromFile(fp.file, _itemBeingEdited.getID());
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
function addFileFromPage(link)
|
function addFileFromPage(link)
|
||||||
{
|
{
|
||||||
if(link)
|
ScholarPane.addFileFromPage(link, _itemBeingEdited.getID());
|
||||||
Scholar.Files.linkFromDocument(window.content.document, _itemBeingEdited.getID());
|
|
||||||
else
|
|
||||||
Scholar.Files.importFromDocument(window.content.document, _itemBeingEdited.getID());
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -27,6 +27,8 @@ var ScholarPane = new function()
|
||||||
this.buildItemContextMenu = buildItemContextMenu;
|
this.buildItemContextMenu = buildItemContextMenu;
|
||||||
this.openNoteWindow = openNoteWindow;
|
this.openNoteWindow = openNoteWindow;
|
||||||
this.newNote = newNote;
|
this.newNote = newNote;
|
||||||
|
this.addFileFromDialog = addFileFromDialog;
|
||||||
|
this.addFileFromPage = addFileFromPage;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Called when the window is open
|
* Called when the window is open
|
||||||
|
@ -346,6 +348,30 @@ var ScholarPane = new function()
|
||||||
{
|
{
|
||||||
window.open('chrome://scholar/content/note.xul?v=1'+(id ? '&id='+id : '')+(parent ? '&coll='+parent : ''),'','chrome,resizable,centerscreen');
|
window.open('chrome://scholar/content/note.xul?v=1'+(id ? '&id='+id : '')+(parent ? '&coll='+parent : ''),'','chrome,resizable,centerscreen');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function addFileFromDialog(link, id)
|
||||||
|
{
|
||||||
|
var nsIFilePicker = Components.interfaces.nsIFilePicker;
|
||||||
|
var fp = Components.classes["@mozilla.org/filepicker;1"]
|
||||||
|
.createInstance(nsIFilePicker);
|
||||||
|
fp.init(window, "Select a File", nsIFilePicker.modeOpen);
|
||||||
|
|
||||||
|
if(fp.show() == nsIFilePicker.returnOK)
|
||||||
|
{
|
||||||
|
if(link)
|
||||||
|
Scholar.Files.linkFromFile(fp.file, id);
|
||||||
|
else
|
||||||
|
Scholar.Files.importFromFile(fp.file, id);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function addFileFromPage(link, id)
|
||||||
|
{
|
||||||
|
if(link)
|
||||||
|
Scholar.Files.linkFromDocument(window.content.document, id);
|
||||||
|
else
|
||||||
|
Scholar.Files.importFromDocument(window.content.document, id);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
window.addEventListener("load", function(e) { ScholarPane.onLoad(e); }, false);
|
window.addEventListener("load", function(e) { ScholarPane.onLoad(e); }, false);
|
||||||
|
|
|
@ -81,6 +81,14 @@
|
||||||
<toolbarbutton id="tb-add" tooltiptext="&toolbar.newItem.label;" type="menu">
|
<toolbarbutton id="tb-add" tooltiptext="&toolbar.newItem.label;" type="menu">
|
||||||
<menupopup/>
|
<menupopup/>
|
||||||
</toolbarbutton>
|
</toolbarbutton>
|
||||||
|
<toolbarbutton id="tb-file-add" type="menu" tooltiptext="New Standalone File">
|
||||||
|
<menupopup>
|
||||||
|
<menuitem label="Add File..." oncommand="ScholarPane.addFileFromDialog();"/>
|
||||||
|
<menuitem label="Add Linked File..." oncommand="ScholarPane.addFileFromDialog(true);"/>
|
||||||
|
<menuitem label="Snapshot Current Page" oncommand="ScholarPane.addFileFromPage();"/>
|
||||||
|
<menuitem label="Link to Current Page" oncommand="ScholarPane.addFileFromPage(true);"/>
|
||||||
|
</menupopup>
|
||||||
|
</toolbarbutton>
|
||||||
<toolbarbutton id="tb-note-add" tooltiptext="New Standalone Note" oncommand="ScholarPane.newNote();"/>
|
<toolbarbutton id="tb-note-add" tooltiptext="New Standalone Note" oncommand="ScholarPane.newNote();"/>
|
||||||
<spacer flex="1"/>
|
<spacer flex="1"/>
|
||||||
<label value="&toolbar.search.label;" control="tb-search"/>
|
<label value="&toolbar.search.label;" control="tb-search"/>
|
||||||
|
|
|
@ -89,6 +89,11 @@
|
||||||
list-style-image: url('chrome://scholar/skin/toolbar-note-add.png');
|
list-style-image: url('chrome://scholar/skin/toolbar-note-add.png');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#tb-file-add
|
||||||
|
{
|
||||||
|
list-style-image: url('chrome://scholar/skin/item-files-add.png');
|
||||||
|
}
|
||||||
|
|
||||||
#tb-item-files-add
|
#tb-item-files-add
|
||||||
{
|
{
|
||||||
list-style-image: url('chrome://scholar/skin/item-files-add.png');
|
list-style-image: url('chrome://scholar/skin/item-files-add.png');
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue