<?xml version="1.0" encoding="UTF-8"?>
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.

<?xml-stylesheet href="chrome://help/skin/" type="text/css"?>

<?xul-overlay href="chrome://help/content/helpContextOverlay.xul"?>
<!DOCTYPE window [
    <!ENTITY % brandDTD SYSTEM "chrome://branding/locale/brand.dtd">
    %brandDTD;
    <!ENTITY % helpDTD SYSTEM "chrome://help/locale/help.dtd">
    %helpDTD;
]>

<window id="help"
        windowtype="mozilla:help"
        xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
        width="700"
        height="550"
#ifdef XP_WIN
#define HELP_ALWAYS_RAISED_TOGGLE
#endif
#ifdef HELP_ALWAYS_RAISED_TOGGLE
        persist="width height screenX screenY zlevel"
#else
        persist="width height screenX screenY"
#endif
        onload="init();"
        onunload="window.XULBrowserWindow.destroy();">

  <script type="application/javascript" src="chrome://help/content/help.js"/>
  <script type="application/javascript" src="chrome://global/content/viewZoomOverlay.js"/>
  <script type="application/javascript" src="chrome://global/content/globalOverlay.js"/>

  <menupopup id="backMenu" position="after_start"
             onpopupshowing="return createBackMenu(event);"
             oncommand="gotoHistoryIndex(event);"/>
  <menupopup id="forwardMenu" position="after_start"
             onpopupshowing="return createForwardMenu(event);"
             oncommand="gotoHistoryIndex(event);"/>
  <popupset id="contentAreaContextSet"/>

  <broadcasterset id="helpBroadcasters">
    <broadcaster id="canGoBack"    disabled="true"/>
    <broadcaster id="canGoForward" disabled="true"/>
  </broadcasterset>
  <commandset id="globalEditMenuItems"/>
  <commandset id="selectEditMenuItems">
    <command id="cmd_close" oncommand="close();"/>
    <command id="Help:Home" oncommand="goHome();"/>
    <command id="Help:Back" oncommand="goBack();"       observes="canGoBack"/>
    <command id="Help:Forward" oncommand="goForward();" observes="canGoForward"/>
    <command id="Help:ToggleSidebar" oncommand="toggleSidebar();"/>
    <command id="cmd_closeWindow" oncommand="close();"/>
    <command id="cmd_fullZoomReduce" oncommand="ZoomManager.reduce();"/>
    <command id="cmd_fullZoomEnlarge" oncommand="ZoomManager.enlarge();"/>
    <command id="cmd_fullZoomReset" oncommand="ZoomManager.reset();"/>
    <command id="cmd_find"
             oncommand="document.getElementById('FindToolbar').onFindCommand();"/>
    <command id="cmd_findAgain"
             oncommand="document.getElementById('FindToolbar').onFindAgainCommand(false);"/>
    <command id="cmd_findPrevious"
             oncommand="document.getElementById('FindToolbar').onFindAgainCommand(true);"/>
    <command id="cmd_copy" oncommand="goDoCommand('cmd_copy')" disabled="true"/>
    <command id="cmd_selectAll" oncommand="goDoCommand('cmd_selectAll')"/>
  </commandset>
  <keyset id="keys">
    <key id="goHome"      keycode="VK_HOME"  command="Help:Home" modifiers="alt"/>
#ifdef XP_UNIX
    <key key="&goBackCmd.commandkey;" command="Help:Back" modifiers="accel"/>
    <key key="&goForwardCmd.commandkey;" command="Help:Forward" modifiers="accel"/>
#endif
#ifdef XP_MACOSX
    <key id="goBackKb"    keycode="VK_LEFT"  command="Help:Back" modifiers="accel"/>
    <key id="goForwardKb" keycode="VK_RIGHT" command="Help:Forward" modifiers="accel"/>
#else
    <key id="goBackKb"     keycode="VK_LEFT"  command="Help:Back" modifiers="alt"/>
    <key id="goForwardKb"  keycode="VK_RIGHT" command="Help:Forward" modifiers="alt"/>
    <key keycode="VK_BACK" command="Help:Back"/>
    <key keycode="VK_BACK" command="Help:Forward" modifiers="shift"/>
#endif
    <key id="printKb" key="&printCmd.commandkey;" oncommand="print();"
         modifiers="accel"/>  
    <key id="key_find" key="&findOnCmd.commandkey;" command="cmd_find" modifiers="accel"/>
    <key id="key_findAgain" key="&findAgainCmd.commandkey;" command="cmd_findAgain" modifiers="accel"/>
    <key id="key_findPrevious" key="&findAgainCmd.commandkey;" command="cmd_findPrevious" modifiers="accel,shift"/>
    <key keycode="&findAgainCmd.commandkey2;" command="cmd_findAgain"/>
    <key keycode="&findAgainCmd.commandkey2;"  command="cmd_findPrevious" modifiers="shift"/>
    <key id="key_closeWindow" key="&closeWindow.commandkey;"
         command="cmd_closeWindow" modifiers="accel"/>
    <key id="key_closeSearchSidebar" keycode="VK_ESCAPE"
         oncommand="hideSearchSidebar(event)"/>
    <key id="key_fullZoomEnlarge" key="&fullZoomEnlargeCmd.commandkey;"
         command="cmd_fullZoomEnlarge" modifiers="accel"/>
    <key id="key_fullZoomEnlarge2" key="&fullZoomEnlargeCmd.commandkey2;"
         command="cmd_fullZoomEnlarge" modifiers="accel"/>
    <key id="key_fullZoomEnlarge3" key="&fullZoomEnlargeCmd.commandkey3;"
         command="cmd_fullZoomEnlarge" modifiers="accel"/>
    <key id="key_fullZoomReduce" key="&fullZoomReduceCmd.commandkey;"
         command="cmd_fullZoomReduce" modifiers="accel"/>
    <key id="key_fullZoomReduce2" key="&fullZoomReduceCmd.commandkey2;"
         command="cmd_fullZoomReduce" modifiers="accel"/>
    <key id="key_fullZoomReset" key="&fullZoomResetCmd.commandkey;"
         command="cmd_fullZoomReset" modifiers="accel"/>
    <key id="key_fullZoomReset2" key="&fullZoomResetCmd.commandkey2;"
         command="cmd_fullZoomReset" modifiers="accel"/>
    <key id="key_focusSearch" key="&helpSearch.commandkey;"
         oncommand="focusSearch()" modifiers="accel"/>

  </keyset>
  <stringbundle id="bundle_viewZoom"/>
  <stringbundle id="findBundle"
                src="chrome://global/locale/finddialog.properties"/>
  <stringbundle id="bundle_help"
                src="chrome://help/locale/help.properties"/>

    <toolbox id="help-toolbox">
      <toolbar id="HelpToolbar" class="chromeclass-toolbar">
        <toolbarbutton id="help-back-button" type="menu-button"
                       label="&backButton.label;"
                       oncommand="if (event.target == this) goBack(); else gotoHistoryIndex(event);"
                       observes="canGoBack" context="backMenu"
                       tooltiptext="&backButton.tooltip;">
          <menupopup context="" onpopupshowing="createBackMenu(event);"/>
        </toolbarbutton>
        <toolbarbutton id="help-forward-button" type="menu-button"
                       oncommand="if (event.target == this) goForward(); else gotoHistoryIndex(event);"
                       tooltiptext="&forwardButton.tooltip;"
                       observes="canGoForward">
          <menupopup context="" onpopupshowing="createForwardMenu(event);"/>
        </toolbarbutton>
        <toolbarbutton id="help-home-button"
                       tooltiptext="&homeButton.tooltip;"
                       command="Help:Home"/>
        <toolbarseparator/>
        <toolbarbutton id="help-print-button"
                       label="&printButton.label;"
                       oncommand="print();"
                       tooltiptext="&printButton.tooltip;"/>
        <toolbarspring flex="1"/>
        <toolbaritem id="search-box"
                     align="center" pack="center">
          <textbox id="findText" type="search" placeholder="&search.emptytext;"
                   aria-controls="help-toc-panel"
                   oncommand="doFind();"/>
        </toolbaritem>
      </toolbar>
    </toolbox>

    <hbox flex="1">
      <vbox id="help-sidebar" persist="width">
        <vbox flex="1" id="help-toc-sidebar">
          <sidebarheader align="center">
            <label id="help-toc-sidebar-header" flex="1" crop="end" value="&toctab.label;"
                   accesskey="&toctab.accesskey;" control="help-toc-panel"/>
          </sidebarheader>
          <tree id="help-toc-panel" class="focusring"
                flex="1" treelines="true" hidecolumnpicker="true"
                datasources="rdf:null"
                containment="http://home.netscape.com/NC-rdf#subheadings"
                ref="urn:root" flags="dont-build-content"
                onselect="onselect_loadURI(this)">
            <template>
              <rule>
                <conditions>
                  <content uri="?uri"/>
                  <triple subject="?uri"
                          predicate="http://home.netscape.com/NC-rdf#subheadings"
                          object="?subheadings"/>
                  <member container="?subheadings"
                          child="?subheading"/>
                  <triple subject="?subheading"
                          predicate="http://home.netscape.com/NC-rdf#name"
                          object="?name"/>
                </conditions>
                <action>
                  <treechildren>
                    <treeitem uri="?subheading">
                      <treerow>
                        <treecell label="?name"/>
                      </treerow>
                    </treeitem>
                  </treechildren>
                </action>
              </rule>
            </template>
            <treecols>
              <treecol id="NameColumn" flex="1" hideheader="true"
                       primary="true"/>
            </treecols>
          </tree>
        </vbox>
        <vbox id="help-search-sidebar" hidden="true" flex="1">
          <sidebarheader align="center">
            <label id="help-search-sidebar-header" flex="1" crop="end"
                   value="&searchHeader.label;"/>
          </sidebarheader>
          <tree id="help-search-tree" class="focusring"
                flex="1" hidecolumnpicker="true"
                datasources="rdf:null"
                containment="http://home.netscape.com/NC-rdf#child"
                ref="urn:root" flags="dont-build-content"
                onselect="onselect_loadURI(this)">
            <template>
              <rule>
                <conditions>
                  <content uri="?uri"/>
                  <member container="?uri"
                          child="?subheading"/>
                </conditions>
                <bindings>
                  <binding subject="?subheading"
                           predicate="http://home.netscape.com/NC-rdf#name"
                           object="?name"/>
                </bindings>
                <action>
                  <treechildren>
                    <treeitem uri="?subheading">
                      <treerow>
                        <treecell label="?name"/>
                      </treerow>
                    </treeitem>
                  </treechildren>
                </action>
              </rule>
            </template>
            <treecols>
            <treecol id="ResultsColumn" flex="1"
                     hideheader="true" primary="true"
                     sortActive="true" sortDirection="ascending"
                     sort="?name"/>
            </treecols>
          </tree>
        </vbox>

        <!-- BEGIN hidden trees used for searching -->
        <!-- xxxmpc: we need a better solution for this -->

        <vbox id="help-sidebar-hidden-trees" hidden="true">
          <tree id="help-glossary-panel"
                flex="1" hidecolumnpicker="true"
                datasources="rdf:null"
                containment="http://home.netscape.com/NC-rdf#subheadings"
                ref="urn:root" flags="dont-build-content"/>
          <tree id="help-index-panel"
                flex="1" datasources="rdf:null"
                hidecolumnpicker="true"
                containment="http://home.netscape.com/NC-rdf#subheadings"
                ref="urn:root"
                flags="dont-build-content dont-test-empty"/>
          <tree id="help-search-panel"
                flex="1" hidecolumnpicker="true"
                datasources="rdf:null"
                containment="http://home.netscape.com/NC-rdf#subheadings"
                ref="urn:root" flags="dont-build-content"/>
        </vbox>

        <!-- END HIDDEN ITEMS -->
      </vbox>

      <splitter id="help-sidebar-splitter" collapse="before"/>

      <vbox id="appcontent" flex="3">
        <!-- type attribute is used by frame construction to locate
             iframes intended to hold (html) content -->
        <browser context="contentAreaContextMenu"
                 type="content-primary" id="help-content"
                 src="about:blank" flex="1"/>
        <findbar id="FindToolbar" browserid="help-content"/>
      </vbox>
    </hbox>

</window>
