www

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | Submodules | README | LICENSE

commit 785954f4f5217d529f4e05ead41fa6ebd763e30d
parent c64e5c841f1e08c5ca40e9ecd617a96a29654a37
Author: David Norton <david@nortoncrew.com>
Date:   Mon, 17 Jul 2006 14:09:12 +0000

Fixes #116, Make full screen button text.
Fixes #115, Windows should open with Scholar Pane closed.
Fixes #105, search box loses focus after search starts.

Retooled the interface a bit, and removed the top toolbar. The close and fullscreen buttons are located to the right of the items toolbar. The item pane cannot be collapsed.


Diffstat:
Mchrome/chromeFiles/content/scholar/collectionTreeView.js | 2++
Mchrome/chromeFiles/content/scholar/itemPane.js | 6++----
Mchrome/chromeFiles/content/scholar/itemPane.xul | 2+-
Mchrome/chromeFiles/content/scholar/overlay.js | 12++++++------
Mchrome/chromeFiles/content/scholar/overlay.xul | 236+++++++++++++++++++++++++++++++++++++++----------------------------------------
Mchrome/chromeFiles/skin/default/scholar/overlay.css | 10++--------
6 files changed, 130 insertions(+), 138 deletions(-)

diff --git a/chrome/chromeFiles/content/scholar/collectionTreeView.js b/chrome/chromeFiles/content/scholar/collectionTreeView.js @@ -25,6 +25,8 @@ Scholar.CollectionTreeView.prototype.setTree = function(treebox) if(this._treebox) return; this._treebox = treebox; + //select Library + this.selection.select(0); } /* diff --git a/chrome/chromeFiles/content/scholar/itemPane.js b/chrome/chromeFiles/content/scholar/itemPane.js @@ -55,10 +55,7 @@ ScholarItemPane = new function() * Loads an item */ function viewItem(thisItem) - { - if(document.commandDispatcher.focusedElement) - document.commandDispatcher.focusedElement.blur(); - + { _itemBeingEdited = thisItem; reloadFields(); @@ -257,6 +254,7 @@ ScholarItemPane = new function() t.setAttribute('value',value); t.setAttribute('fieldname',fieldName); t.setAttribute('flex','1'); + t.className = 'fieldeditor'; var box = elem.parentNode; box.replaceChild(t,elem); diff --git a/chrome/chromeFiles/content/scholar/itemPane.xul b/chrome/chromeFiles/content/scholar/itemPane.xul @@ -5,7 +5,7 @@ xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> <script src="itemPane.js"/> - <tabbox id="scholar-view-item" height="1000"> + <tabbox id="scholar-view-item" flex="1"> <tabs> <tab label="&tabs.info.label;"/> <tab label="&tabs.notes.label;"/> diff --git a/chrome/chromeFiles/content/scholar/overlay.js b/chrome/chromeFiles/content/scholar/overlay.js @@ -34,10 +34,8 @@ var ScholarPane = new function() //Initialize collections view collectionsView = new Scholar.CollectionTreeView(); document.getElementById('collections-tree').view = collectionsView; - - //select Library - collectionsView.selection.select(0); + /* if(window.opener) { var pane = window.opener.document.getElementById('scholar-pane'); @@ -48,6 +46,7 @@ var ScholarPane = new function() toggleDisplay(); } } + */ //Create the add menu with each item type var addMenu = document.getElementById('tb-add').firstChild; @@ -76,10 +75,10 @@ var ScholarPane = new function() */ function toggleDisplay() { - var visible = document.getElementById('scholar-pane').getAttribute('collapsed') == 'true'; + var visible = document.getElementById('scholar-pane').getAttribute('hidden') == 'true'; - document.getElementById('scholar-pane').setAttribute('collapsed',!visible); - document.getElementById('scholar-splitter').setAttribute('collapsed',!visible); + document.getElementById('scholar-pane').setAttribute('hidden',!visible); + document.getElementById('scholar-splitter').setAttribute('hidden',!visible); if(!visible) document.getElementById('content').setAttribute('collapsed', false); @@ -89,6 +88,7 @@ var ScholarPane = new function() { var visible = document.getElementById('content').getAttribute('collapsed') == 'true'; document.getElementById('content').setAttribute('collapsed', !visible); + document.getElementById('scholar-splitter').setAttribute('hidden', !visible); } /* diff --git a/chrome/chromeFiles/content/scholar/overlay.xul b/chrome/chromeFiles/content/scholar/overlay.xul @@ -15,14 +15,14 @@ <script src="fileInterface.js"/> <commandset id="mainCommandSet"> - <command id="cmd_scholar_newItem" oncommand="ScholarPane.newItem(1);"/> + <command id="cmd_scholar_newItem" oncommand="ScholarPane.newItem(2);"/> <command id="cmd_scholar_newCollection" oncommand="ScholarPane.newCollection();"/> <command id="cmd_scholar_search" oncommand="ScholarPane.search();"/> </commandset> <vbox id="appcontent"> - <splitter id="scholar-splitter" resizebefore="closest" resizeafter="closest" persist="collapsed"/> - <vbox id="scholar-pane" flex="1" persist="height collapsed"> + <splitter id="scholar-splitter" resizebefore="closest" resizeafter="closest" hidden="true"/> + <hbox id="scholar-pane" hidden="true" flex="1"> <popupset> <popup id="scholar-collectionmenu" onpopupshowing="ScholarPane.buildCollectionContextMenu();"> <menuitem label="&toolbar.newCollection.label;" command="cmd_scholar_newCollection"/> @@ -36,129 +36,127 @@ <menuitem oncommand="ScholarPane.deleteSelectedItem();"/> </popup> </popupset> - <toolbar align="end"> - <label value="Scholar" id="scholar-toolbar-name"/> - <label value="1.0 Alpha"/> - <label class="text-link" value="About..." onclick="window.openDialog('chrome://scholar/content/about.xul','about','chrome,modal');"/> - <spacer flex="1"/> - <toolbarbutton id="tb-fullscreen" tooltiptext="Toggle Fullscreen" oncommand="ScholarPane.fullScreen();"/> - <toolbarbutton class="tabs-closebutton" oncommand="ScholarPane.toggleDisplay()"/> - </toolbar> - <hbox flex="1"> - <vbox id="collections-pane" persist="width"> - <toolbar> - <toolbarbutton id="tb-collection-add" tooltiptext="&toolbar.newCollection.label;" command="cmd_scholar_newCollection"/> - <toolbarbutton id="tb-collection-rename" tooltiptext="&toolbar.renameCollection.label;" oncommand="ScholarPane.renameSelectedCollection();" disabled="true"/> - <spacer flex="1"/> - <toolbarbutton id="tb-collection-menu" type="menu"> - <menupopup> - <menuitem label="Import..." oncommand="Scholar_File_Interface.importFile();"/> - <menuitem label="Export Library..." oncommand="Scholar_File_Interface.exportFile();"/> - </menupopup> - </toolbarbutton> - </toolbar> - <tree id="collections-tree" hidecolumnpicker="true" context="scholar-collectionmenu" - onselect="ScholarPane.onCollectionSelected();" seltype="single" - ondragdrop="nsDragAndDrop.drop(event,ScholarPane.getCollectionsView())" - ondraggesture="if (event.target.localName == 'treechildren') nsDragAndDrop.startDrag(event,ScholarPane.getCollectionsView());" - onkeypress="if(event.keyCode == event.DOM_VK_BACK_SPACE || event.keyCode == event.DOM_VK_DELETE){ ScholarPane.deleteSelectedCollection(); return false; }" - flex="1"> - <treecols> - <treecol - id="name_column" - label="&collections.name_column;" - flex="1" - primary="true"/> - </treecols> - <treechildren/> - </tree> - </vbox> - <splitter id="scholar-tree-splitter" resizebefore="closest" resizeafter="closest"/> - <vbox id="items-pane" persist="width" flex="1"> - <toolbar align="center"> - <toolbarbutton id="tb-add" tooltiptext="&toolbar.newItem.label;" type="menu"> - <menupopup/> - </toolbarbutton> - <toolbarbutton label="New Note" oncommand="ScholarPane.openNoteWindow();"/> - <spacer flex="1"/> - <label value="&toolbar.search.label;" control="tb-search"/> - <textbox id="tb-search" type="timed" timeout="250" command="cmd_scholar_search"/> - </toolbar> - <hbox id="scholar-search-options" hidden="true"> - <hbox> - <toolbarbutton type="checkbox" label="Entire Item" checked="true" onclick="var b = this.parentNode.getElementsByAttribute('checked','true'); b[0].checked = false;" command="cmd_scholar_search"/> - <toolbarbutton type="checkbox" label="Info" onclick="var b = this.parentNode.getElementsByAttribute('checked','true'); b[0].checked = false;" command="cmd_scholar_search"/> - <toolbarbutton type="checkbox" label="Notes" onclick="var b = this.parentNode.getElementsByAttribute('checked','true'); b[0].checked = false;" command="cmd_scholar_search"/> - <toolbarbutton type="checkbox" label="Files" onclick="var b = this.parentNode.getElementsByAttribute('checked','true'); b[0].checked = false;" command="cmd_scholar_search"/> - </hbox> - <spacer flex="1"/> - <toolbarbutton label="Save"/> - <toolbarbutton label="&scholar.plus;"/> + <vbox id="collections-pane" persist="width" flex="1"> + <toolbar> + <toolbarbutton id="tb-collection-add" tooltiptext="&toolbar.newCollection.label;" command="cmd_scholar_newCollection"/> + <toolbarbutton id="tb-collection-rename" tooltiptext="&toolbar.renameCollection.label;" oncommand="ScholarPane.renameSelectedCollection();" disabled="true"/> + <spacer flex="1"/> + <toolbarbutton id="tb-collection-menu" type="menu"> + <menupopup> + <menuitem label="Import..." oncommand="Scholar_File_Interface.importFile();"/> + <menuitem label="Export Library..." oncommand="Scholar_File_Interface.exportFile();"/> + </menupopup> + </toolbarbutton> + </toolbar> + <tree id="collections-tree" hidecolumnpicker="true" context="scholar-collectionmenu" + onselect="ScholarPane.onCollectionSelected();" seltype="single" + ondragdrop="nsDragAndDrop.drop(event,ScholarPane.getCollectionsView())" + ondraggesture="if (event.target.localName == 'treechildren') nsDragAndDrop.startDrag(event,ScholarPane.getCollectionsView());" + onkeypress="if(event.keyCode == event.DOM_VK_BACK_SPACE || event.keyCode == event.DOM_VK_DELETE){ ScholarPane.deleteSelectedCollection(); return false; }" + flex="1"> + <treecols> + <treecol + id="name_column" + label="&collections.name_column;" + flex="1" + primary="true"/> + </treecols> + <treechildren/> + </tree> + </vbox> + <splitter id="scholar-tree-splitter" resizebefore="closest" resizeafter="closest"/> + <vbox id="items-pane" persist="width" flex="1"> + <toolbar align="center"> + <toolbarbutton id="tb-add" tooltiptext="&toolbar.newItem.label;" type="menu"> + <menupopup/> + </toolbarbutton> + <toolbarbutton label="New Note" oncommand="ScholarPane.openNoteWindow();"/> + <spacer flex="1"/> + <label value="&toolbar.search.label;" control="tb-search"/> + <textbox id="tb-search" type="timed" timeout="250" command="cmd_scholar_search"/> + </toolbar> + <hbox id="scholar-search-options" hidden="true"> + <hbox> + <toolbarbutton type="checkbox" label="Entire Item" checked="true" onclick="var b = this.parentNode.getElementsByAttribute('checked','true'); b[0].checked = false;" command="cmd_scholar_search"/> + <toolbarbutton type="checkbox" label="Info" onclick="var b = this.parentNode.getElementsByAttribute('checked','true'); b[0].checked = false;" command="cmd_scholar_search"/> + <toolbarbutton type="checkbox" label="Notes" onclick="var b = this.parentNode.getElementsByAttribute('checked','true'); b[0].checked = false;" command="cmd_scholar_search"/> + <toolbarbutton type="checkbox" label="Files" onclick="var b = this.parentNode.getElementsByAttribute('checked','true'); b[0].checked = false;" command="cmd_scholar_search"/> </hbox> - <tree - id="items-tree" context="scholar-itemmenu" - enableColumnDrag="true" onkeypress="if(event.keyCode == event.DOM_VK_BACK_SPACE || event.keyCode == event.DOM_VK_DELETE){ ScholarPane.deleteSelectedItem(); return false; }" - onselect="ScholarPane.itemSelected();" - ondraggesture="if (event.target.localName == 'treechildren') nsDragAndDrop.startDrag(event,ScholarPane.getItemsView());" - ondragover="nsDragAndDrop.dragOver(event,ScholarPane.getItemsView())" - ondragdrop="nsDragAndDrop.drop(event,ScholarPane.getItemsView())" - ondblclick="document.getElementById('scholar-view-splitter').setAttribute('state','open');" - flex="1"> - <treecols> - <treecol - id="title" primary="true" - label="&items.title_column;" - flex="4" persist="width ordinal hidden sortActive sortDirection"/> - <splitter class="tree-splitter"/> - <treecol - id="firstCreator" - label="&items.creator_column;" - flex="1" persist="width ordinal hidden sortActive sortDirection"/> - <splitter class="tree-splitter"/> - <treecol - id="numNotes" - label="&items.numNotes_column;" - persist="width ordinal hidden sortActive sortDirection"/> - <splitter class="tree-splitter"/> - <treecol - id="typeIcon" hidden="true" - label="&items.type_column;" - width="40" persist="width ordinal hidden sortActive sortDirection"/> - <splitter class="tree-splitter"/> - <treecol - id="source" hidden="true" - label="&items.source_column;" - flex="1" persist="width ordinal hidden sortActive sortDirection"/> - <splitter class="tree-splitter"/> - <treecol - id="rights" hidden="true" - label="&items.rights_column;" - flex="1" persist="width ordinal hidden sortActive sortDirection"/> - <splitter class="tree-splitter"/> - <treecol - id="dateAdded" hidden="true" - label="&items.dateAdded_column;" - flex="1" persist="width ordinal hidden sortActive sortDirection"/> - <splitter class="tree-splitter"/> - <treecol - id="dateModified" hidden="true" - label="&items.dateModified_column;" - flex="1" persist="width ordinal hidden sortActive sortDirection"/> - </treecols> - <treechildren/> - </tree> - </vbox> - <splitter id="scholar-view-splitter" collapse="after" persist="state"><grippy/></splitter> - <deck id="item-pane" selectedIndex="0"> - <box pack="center" align="center"><label id="scholar-view-selected-label"/></box> + <spacer flex="1"/> + <toolbarbutton label="Save"/> + <toolbarbutton label="&scholar.plus;"/> + </hbox> + <tree + id="items-tree" context="scholar-itemmenu" + enableColumnDrag="true" onkeypress="if(event.keyCode == event.DOM_VK_BACK_SPACE || event.keyCode == event.DOM_VK_DELETE){ ScholarPane.deleteSelectedItem(); return false; }" + onselect="ScholarPane.itemSelected();" + ondraggesture="if (event.target.localName == 'treechildren') nsDragAndDrop.startDrag(event,ScholarPane.getItemsView());" + ondragover="nsDragAndDrop.dragOver(event,ScholarPane.getItemsView())" + ondragdrop="nsDragAndDrop.drop(event,ScholarPane.getItemsView())" + ondblclick="document.getElementById('scholar-view-splitter').setAttribute('state','open');" + flex="1"> + <treecols> + <treecol + id="title" primary="true" + label="&items.title_column;" + flex="4" persist="width ordinal hidden sortActive sortDirection"/> + <splitter class="tree-splitter"/> + <treecol + id="firstCreator" + label="&items.creator_column;" + flex="1" persist="width ordinal hidden sortActive sortDirection"/> + <splitter class="tree-splitter"/> + <treecol + id="numNotes" + label="&items.numNotes_column;" + persist="width ordinal hidden sortActive sortDirection"/> + <splitter class="tree-splitter"/> + <treecol + id="typeIcon" hidden="true" + label="&items.type_column;" + width="40" persist="width ordinal hidden sortActive sortDirection"/> + <splitter class="tree-splitter"/> + <treecol + id="source" hidden="true" + label="&items.source_column;" + flex="1" persist="width ordinal hidden sortActive sortDirection"/> + <splitter class="tree-splitter"/> + <treecol + id="rights" hidden="true" + label="&items.rights_column;" + flex="1" persist="width ordinal hidden sortActive sortDirection"/> + <splitter class="tree-splitter"/> + <treecol + id="dateAdded" hidden="true" + label="&items.dateAdded_column;" + flex="1" persist="width ordinal hidden sortActive sortDirection"/> + <splitter class="tree-splitter"/> + <treecol + id="dateModified" hidden="true" + label="&items.dateModified_column;" + flex="1" persist="width ordinal hidden sortActive sortDirection"/> + </treecols> + <treechildren/> + </tree> + </vbox> + <splitter id="scholar-view-splitter" resizebefore="closest" resizeafter="closest"/> + <vbox> + <toolbar align="right"> + <toolbarbutton id="tb-fullscreen" label="Toggle Fullscreen" oncommand="ScholarPane.fullScreen();"/> + <toolbarbutton class="tabs-closebutton" oncommand="ScholarPane.toggleDisplay()"/> + </toolbar> + <deck id="item-pane" selectedIndex="0" flex="1"> + <box pack="center" align="center"> + <label id="scholar-view-selected-label"/> + </box> <tabbox id="scholar-view-item" flex="1"/> <vbox id="scholar-view-note" flex="1"> <noteeditor id="scholar-note-editor" flex="1"/> <button label="Edit in a separate window" oncommand="ScholarPane.openNoteWindow(this.getAttribute('noteID'));"/> </vbox> </deck> - </hbox> - </vbox> + </vbox> + </hbox> </vbox> <statusbar id="status-bar"> diff --git a/chrome/chromeFiles/skin/default/scholar/overlay.css b/chrome/chromeFiles/skin/default/scholar/overlay.css @@ -1,4 +1,4 @@ -vbox #scholar-pane +#scholar-pane { background: #f5f5f5; min-height: 150px; @@ -8,7 +8,6 @@ vbox #scholar-pane #collections-pane { min-width: 150px; - max-width: 200px; width: 150px; } @@ -17,7 +16,7 @@ vbox #scholar-pane margin-right: 5px; } -#scholar-tree-splitter +#scholar-pane splitter { background: #f5f5f5; } @@ -60,11 +59,6 @@ vbox #scholar-pane font-size: larger; } -#tb-fullscreen -{ - list-style-image: url('chrome://scholar/skin/toolbar-fullscreen.png'); -} - #tb-collection-add { list-style-image: url('chrome://scholar/skin/toolbar-collection-add.png');