<?xml version="1.0"?>

<!-- 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://global/skin/config.css" type="text/css"?>

<!DOCTYPE window SYSTEM "chrome://global/locale/config.dtd">

<window id="config"
        xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" 
        title="&window.title;"
        windowtype="Preferences:ConfigManager"
        role="application"
        aria-describedby="warningTitle warningText"
        width="750"
        height="500"
        disablefastfind="true"
        onunload="onConfigUnload();"
        onload="onConfigLoad();">

<script src="chrome://global/content/config.js"/>

<stringbundle id="configBundle" src="chrome://global/locale/config.properties"/>

<menupopup id="configContext" onpopupshowing="if (event.target == this) updateContextMenu();">
  <menuitem id="toggleSelected" default="true"
            label="&toggle.label;" accesskey="&toggle.accesskey;"
            oncommand="ModifySelected();"/>
  <menuitem id="modifySelected" default="true"
            label="&modify.label;" accesskey="&modify.accesskey;"
            oncommand="ModifySelected();"/>
  <menuseparator/>
  <menuitem id="copyPref" label="&copyPref.label;" accesskey="&copyPref.accesskey;" oncommand="copyPref();"/>
  <menuitem id="copyName" label="&copyName.label;" accesskey="&copyName.accesskey;" oncommand="copyName();"/>
  <menuitem id="copyValue" label="&copyValue.label;" accesskey="&copyValue.accesskey;" oncommand="copyValue();"/>
  <menu label="&new.label;" accesskey="&new.accesskey;">
    <menupopup>
      <menuitem label="&string.label;" accesskey="&string.accesskey;" oncommand="NewPref(nsIPrefBranch.PREF_STRING);"/>
      <menuitem label="&integer.label;" accesskey="&integer.accesskey;" oncommand="NewPref(nsIPrefBranch.PREF_INT);"/>
      <menuitem label="&boolean.label;" accesskey="&boolean.accesskey;" oncommand="NewPref(nsIPrefBranch.PREF_BOOL);"/>
    </menupopup>
  </menu>
  <menuitem id="resetSelected" label="&reset.label;" accesskey="&reset.accesskey;" oncommand="ResetSelected();"/>
</menupopup>

<keyset id="configTreeKeyset" disabled="true">
  <key keycode="VK_RETURN" oncommand="ModifySelected();"/>
  <key key="&focusSearch.key;" modifiers="accel" oncommand="document.getElementById('textbox').focus();"/>
</keyset>
<deck id="configDeck" flex="1">
  <vbox id="warningScreen" flex="1" align="center" style="overflow: auto;">
    <spacer flex="1"/>
    <hbox id="warningBox" align="top">
      <image id="exclam"/>
      <vbox id="warningInnerBox" flex="1">
        <label id="warningTitle">&aboutWarningTitle.label;</label>
        <label id="warningText">&aboutWarningText.label;</label>
        <checkbox id="showWarningNextTime" label="&aboutWarningCheckbox.label;" checked="true"/>
        <hbox pack="center">
          <button id="warningButton" oncommand="ShowPrefs();" label="&aboutWarningButton.label;"/>
        </hbox>
      </vbox>
    </hbox>
    <spacer flex="2"/>
  </vbox>
  <vbox flex="1">
    <hbox id="filterRow" align="center">
      <label value="&searchPrefs.label;" accesskey="&searchPrefs.accesskey;" control="textbox"/>
      <textbox id="textbox" flex="1" type="search" class="compact"
               aria-controls="configTree"
               oncommand="FilterPrefs();"/>
    </hbox>

    <tree id="configTree" flex="1" seltype="single"
          onselect="updateCommands('select');"
          enableColumnDrag="true" context="configContext">
      <treecols>
        <treecol id="prefCol" label="&prefColumn.label;" flex="7"
            ignoreincolumnpicker="true"
            persist="hidden width ordinal sortDirection"/>
        <splitter class="tree-splitter" />
        <treecol id="lockCol" label="&lockColumn.label;" flex="1"
            persist="hidden width ordinal sortDirection"/>
        <splitter class="tree-splitter" />
        <treecol id="typeCol" label="&typeColumn.label;" flex="1"
            persist="hidden width ordinal sortDirection"/>
        <splitter class="tree-splitter" />
        <treecol id="valueCol" label="&valueColumn.label;" flex="10"
            persist="hidden width ordinal sortDirection"/>
      </treecols>

      <treechildren id="configTreeBody" ondblclick="if (event.button == 0) ModifySelected();"/>
    </tree>
  </vbox>
</deck>
</window>
