<?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://editor/skin/editor.css" type="text/css"?>
<?xml-stylesheet href="chrome://editor/skin/EditorDialog.css" type="text/css"?>

<?xul-overlay href="chrome://editor/content/EdDialogOverlay.xul"?> 

<!DOCTYPE dialog SYSTEM "chrome://editor/locale/EditorSelectProperties.dtd">
<dialog title="&windowTitle.label;"
        xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
        onload="Startup();"
        buttons="accept,cancel"
        ondialogaccept="return onAccept();"
        ondialogcancel="return onCancel();">

  <!-- Methods common to all editor dialogs -->
  <script type="application/javascript" src="chrome://editor/content/editorUtilities.js"/>
  <script type="application/javascript" src="chrome://editor/content/EdDialogCommon.js"/>
  <script type="application/javascript" src="chrome://editor/content/EdSelectProps.js"/>

  <broadcaster id="args" value=""/>
  <spacer id="location" offsetY="50" persist="offsetX offsetY"/>

  <!-- Setting rows="7" on tree isn't working, equalsize vbox sets tree height. -->
  <vbox equalsize="always">
    <tree id="SelectTree" onselect="treeBoxObject.view.selectionChanged();" onkeyup="onTreeKeyUp(event);">
      <treecols id="SelectCols">
        <treecol id="SelectTextCol" flex="3" label="&TextHeader.label;" primary="true"/>
        <splitter class="tree-splitter"/>
        <treecol id="SelectValCol" flex="2" label="&ValueHeader.label;"/>
        <treecol id="SelectSelCol" label="&SelectedHeader.label;" cycler="true"/>
      </treecols>

      <treechildren id="SelectTreeChildren"/>
    </tree>

    <hbox flex="1">
      <deck flex="1" id="SelectDeck" index="0">
        <groupbox flex="1"><caption label="&Select.label;"/>
          <grid flex="1"><columns><column flex="1"/><column/></columns>
            <rows>
              <row align="center">
                <label control="SelectName" value="&SelectName.label;" accesskey="&SelectName.accesskey;"/>
                <textbox id="SelectName" flex="1" oninput="onNameInput();"/>
              </row>
              <row align="center">
                <label control="SelectSize" value="&SelectSize.label;" accesskey="&SelectSize.accesskey;"/>
                <hbox>
                  <textbox id="SelectSize" class="narrow" oninput="forceInteger(this.id);"/>
                </hbox>
              </row>
              <row>
                <spacer/>
                <checkbox id="SelectMultiple" flex="1" label="&SelectMultiple.label;" accesskey="&SelectMultiple.accesskey;" oncommand="onSelectMultipleClick();"/>
              </row>
              <row>
                <spacer/>
                <checkbox id="SelectDisabled" flex="1" label="&SelectDisabled.label;" accesskey="&SelectDisabled.accesskey;"/>
              </row>
              <row align="center">
                <label control="SelectTabIndex" value="&SelectTabIndex.label;" accesskey="&SelectTabIndex.accesskey;"/>
                <hbox>
                  <textbox id="SelectTabIndex" class="narrow" oninput="forceInteger(this.id);"/>
                </hbox>
              </row>
            </rows>
          </grid>
        </groupbox>

        <groupbox flex="1"><caption label="&OptGroup.label;"/>
          <grid flex="1"><columns><column flex="1"/><column/></columns>
            <rows>
              <row align="center">
                <label control="OptGroupLabel" value="&OptGroupLabel.label;" accesskey="&OptGroupLabel.accesskey;"/>
                <textbox id="OptGroupLabel" oninput="onLabelInput();"/>
              </row>
              <row>
                <spacer/>
                <checkbox id="OptGroupDisabled" label="&OptGroupDisabled.label;" accesskey="&OptGroupDisabled.accesskey;"/>
              </row>
            </rows>
          </grid>
        </groupbox>

        <groupbox flex="1"><caption label="&Option.label;"/>
          <grid flex="1"><columns><column flex="1"/><column/></columns>
            <rows>
              <row align="center">
                <label control="OptionText" value="&OptionText.label;" accesskey="&OptionText.accesskey;"/>
                <textbox id="OptionText" oninput="onTextInput();"/>
              </row>
              <row align="center">
                <checkbox id="OptionHasValue" label="&OptionValue.label;" accesskey="&OptionValue.accesskey;" oncommand="onHasValueClick();"/>
                <textbox id="OptionValue" oninput="onValueInput();"/>
              </row>
              <row>
                <spacer/>
                <checkbox id="OptionSelected" label="&OptionSelected.label;" accesskey="&OptionSelected.accesskey;" oncommand="currentItem.cycleCell();"/>
              </row>
              <row>
                <spacer/>
                <checkbox id="OptionDisabled" label="&OptionDisabled.label;" accesskey="&OptionDisabled.accesskey;"/>
              </row>
            </rows>
          </grid>
        </groupbox>
      </deck>

      <vbox>
        <button label="&AddOption.label;" accesskey="&AddOption.accesskey;" oncommand="AddOption();"/>
        <button label="&AddOptGroup.label;" accesskey="&AddOptGroup.accesskey;" oncommand="AddOptGroup();"/>
        <button id="RemoveButton" label="&RemoveElement.label;" accesskey="&RemoveElement.accesskey;"
                oncommand="RemoveElement();" disabled="true"/>
        <button id="PreviousButton" label="&MoveElementUp.label;" accesskey="&MoveElementUp.accesskey;"
                oncommand="currentItem.moveUp();" disabled="true" type="row"/>
        <button id="NextButton" label="&MoveElementDown.label;" accesskey="&MoveElementDown.accesskey;"
                oncommand="currentItem.moveDown();" disabled="true" type="row"/>
        <spacer flex="1"/>
        <button id="AdvancedEditButton"/>
      </vbox>
    </hbox>
  </vbox>

  <separator class="groove"/>

</dialog>
