<?xml version="1.0" encoding="UTF-8"?>
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla 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/MPL/
#
# 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 Firefox Help Source Code.
#
# The Initial Developer of the Original Code is
# Ian Oeschger.
# Portions created by the Initial Developer are Copyright (C) 2003-2004
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#   R.J. Keller <rlk@trfenv.com>
#   Steffen Wilberg <steffen.wilberg@web.de>
#   Jeff Walden <jwalden+code@mit.edu>
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the LGPL or the GPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****

<?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" class="toolbox-top">
      <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" emptytext="&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>
