<?xml version="1.0"?> <!-- -*- Mode: SGML; indent-tabs-mode: nil; -*- --> 
<!--

  The contents of this file are subject to the Netscape Public
  License Version 1.1 (the "License"); you may not use this file
  except in compliance with the License. You may obtain a copy of
  the License at http://www.mozilla.org/NPL/
 
  Software distributed under the License is distributed on an "AS
  IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
  implied. See the License for the specific language governing
  rights and limitations under the License.
 
  The Original Code is mozilla.org code.
 
  The Initial Developer of the Original Code is Netscape
  Communications Corporation.  Portions created by Netscape are
  Copyright (C) 1998 Netscape Communications Corporation. All
  Rights Reserved.
 
  Contributor(s): 
    Ben Goodger <ben@netscape.com> (Original Author, v2.0)

-->

<?xml-stylesheet href="chrome://communicator/skin/" type="text/css"?>
<?xml-stylesheet href="chrome://communicator/skin/bookmarks/bookmarksWindow.css" type="text/css"?>

<?xul-overlay href="chrome://communicator/content/utilityOverlay.xul"?>
<?xul-overlay href="chrome://global/content/globalOverlay.xul"?>
<?xul-overlay href="chrome://communicator/content/bookmarks/bookmarksOverlay.xul"?>
<?xul-overlay href="chrome://communicator/content/tasksOverlay.xul"?>
<?xul-overlay href="chrome://communicator/content/communicatorOverlay.xul"?>

<!DOCTYPE window SYSTEM "chrome://communicator/locale/bookmarks/bookmarks.dtd">

<window id="bookmarksPanel" orient="vertical"
        xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
        xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
        onload="Startup();">

  <!-- Generic Utilities -->
  <script type="application/x-javascript" src="chrome://global/content/nsTreeUtils.js"/>
  <!-- XXX - would like to cut this dependency out -->
  <script type="application/x-javascript" src="chrome://global/content/strres.js"/>
  <script type="application/x-javascript" src="chrome://global/content/globalOverlay.js"/>
  <script type="application/x-javascript" src="chrome://global/content/nsJSComponentManager.js"/>

  <!-- Bookmarks Shell -->
  <script type="application/x-javascript" src="chrome://communicator/content/bookmarks/bookmarksOverlay.js"/>
  <script type="application/x-javascript" src="chrome://communicator/content/bookmarks/bookmarksTree.js"/>
  <script type="application/x-javascript" src="chrome://communicator/content/bookmarks/bookmarksPanel.js"/>

  <!-- Drag and Drop -->
  <script type="application/x-javascript" src="chrome://global/content/nsJSComponentManager.js"/>
  <script type="application/x-javascript" src="chrome://global/content/nsJSSupportsUtils.js"/>
  <script type="application/x-javascript" src="chrome://global/content/nsDragAndDrop.js"/>
  <script type="application/x-javascript" src="chrome://global/content/nsTransferable.js"/>
  <script type="application/x-javascript" src="chrome://communicator/content/bookmarks/bookmarksDD.js"/>


  <!-- context menu, tooltips, etc -->
  <popupset id="bookmarksPopupset"/>
  
  <!-- bookmarks string bundle -->
  <stringbundleset id="stringbundleset"/>
  
  <!-- bookmarks & edit commands -->
  <commands id="commands">
    <commandset id="CommandUpdate_Bookmarks"
                commandupdater="true"
                events="click,focus,tree-select"
                oncommandupdate="BookmarksTree.prototype.controller.onCommandUpdate()">
    </commandset>                
    <commandset id="bookmarksItems"/>
  </commands>
  
  <hbox id="panel-bar" class="toolbar">
    <button class="button-toolbar" label="&command.addBookmark.label;"
            oncommand="gBookmarksShell.addBookmark();"/>
    <button class="button-toolbar" label="&command.manageBookmarks.label;"
            oncommand="gBookmarksShell.manageBookmarks();"/>
    <spring flex="1"/>
    <toolbarseparator/>
    <button class="button-toolbar" label="&command.findBookmarks.label;"
            oncommand="gBookmarksShell.findInBookmarks();"/>
  </hbox>
  
  <tree id="bookmarksTree" context="bmContext" ref="NC:BookmarksRoot" class="sidebarTree"
        datasources="rdf:bookmarks rdf:files rdf:httpindex rdf:localsearch rdf:internetsearch"
        flags="dont-test-empty"
        type="http://home.netscape.com/NC-rdf#Folder"
        ondragover="nsDragAndDrop.dragOver(event, bookmarksDNDObserver);"
        ondraggesture="nsDragAndDrop.startDrag(event, bookmarksDNDObserver);"
        ondragdrop="nsDragAndDrop.drop(event, bookmarksDNDObserver);"
        onclick="gBookmarksShell.hlClick(event);"
        style="height:0px" flex="1">

    <template>
      <rule rdf:type="http://home.netscape.com/NC-rdf#BookmarkSeparator">
        <treechildren>
          <treeitem uri="rdf:*"
                    rdf:type="rdf:http://www.w3.org/1999/02/22-rdf-syntax-ns#type">
            <treerow>
              <treecell align="center">
                <treeindentation/>
                <separator class="groove" flex="1"/>
              </treecell>
            </treerow>
          </treeitem>     
        </treechildren>
      </rule>
  
      <rule>
        <treechildren>
          <treeitem uri="rdf:*" persist="open" class="bookmark-item"
                    status="rdf:http://home.netscape.com/WEB-rdf#status"
                    rdf:type="rdf:http://www.w3.org/1999/02/22-rdf-syntax-ns#type"
                    loading="rdf:http://home.netscape.com/NC-rdf#loading">
            <treerow>
              <treecell class="treecell-indent treecell-editable"
                        editable="true" label="rdf:http://home.netscape.com/NC-rdf#Name"
                        src="rdf:http://home.netscape.com/NC-rdf#Icon"
                        web:status="rdf:http://home.netscape.com/WEB-rdf#status"
                        rdf:type="rdf:http://www.w3.org/1999/02/22-rdf-syntax-ns#type"
                        loading="rdf:http://home.netscape.com/NC-rdf#loading" />
            </treerow>
          </treeitem>
        </treechildren>
      </rule>
    </template>

    <treecolgroup id="theColumns">
      <treecol id="Name"
               sortSeparators="true" width="4*" flex="4"
               persist="hidden width sortActive sortDirection" 
               resource="http://home.netscape.com/NC-rdf#Name"/>
    </treecolgroup>
    
    <treehead>
      <treerow id="headRow">
        <treecell class="treecell-header sortDirectionIndicator treecell-header-sidebarpanel"
                  label="&tree.header.name.label;"
                  onclick="return TriStateColumnSort('Name');"
                  observes="Name" />
      </treerow>
    </treehead>

    <treechildren flex="1" id="treechildren-bookmarks" 
                  onclick="gBookmarksShell.treeOpen(event);"/>
  </tree>

</window>
