<?xml version="1.0"?>
<!DOCTYPE window [
<!ENTITY % scratchpadDTD SYSTEM "chrome://browser/locale/scratchpad.dtd" >
 %scratchpadDTD;
]>
<?xml-stylesheet href="chrome://global/skin/global.css" type="text/css"?>
<?xul-overlay href="chrome://global/content/editMenuOverlay.xul"?>

<window id="main-window"
        xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
        title="&window.title;"
        windowtype="devtools:scratchpad"
        screenX="4" screenY="4"
        width="640" height="480"
        persist="screenX screenY width height sizemode">

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

<commandset id="editMenuCommands"/>

<commandset id="sp-commandset">
  <command id="sp-cmd-newWindow" oncommand="Scratchpad.openScratchpad();"/>
  <command id="sp-cmd-openFile" oncommand="Scratchpad.openFile();"/>
  <command id="sp-cmd-save" oncommand="Scratchpad.saveFile();"/>
  <command id="sp-cmd-saveas" oncommand="Scratchpad.saveFileAs();"/>

  <!-- TODO: bug 650340 - implement printFile()
  <command id="sp-cmd-printFile" oncommand="Scratchpad.printFile();" disabled="true"/>
 -->

  <command id="sp-cmd-close" oncommand="window.close();"/>
  <command id="sp-cmd-run" oncommand="Scratchpad.run();"/>
  <command id="sp-cmd-inspect" oncommand="Scratchpad.inspect();"/>
  <command id="sp-cmd-display" oncommand="Scratchpad.display();"/>
  <command id="sp-cmd-contentContext" oncommand="Scratchpad.setContentContext();"/>
  <command id="sp-cmd-browserContext" oncommand="Scratchpad.setBrowserContext();" disabled="true"/>
  <command id="sp-cmd-resetContext" oncommand="Scratchpad.resetContext();"/>
  <command id="sp-cmd-errorConsole" oncommand="Scratchpad.openErrorConsole();" disabled="true"/>
  <command id="sp-cmd-webConsole" oncommand="Scratchpad.openWebConsole();"/>
</commandset>

<keyset id="sp-keyset">
  <key id="sp-key-window"
       key="&newWindowCmd.commandkey;"
       command="sp-cmd-newWindow"
       modifiers="accel"/>
  <key id="sp-key-open"
       key="&openFileCmd.commandkey;"
       command="sp-cmd-openFile"
       modifiers="accel"/>
  <key id="sp-key-save"
       key="&saveFileCmd.commandkey;"
       command="sp-cmd-save"
       modifiers="accel"/>
  <key id="sp-key-close"
       key="&closeCmd.key;"
       command="sp-cmd-close"
       modifiers="accel"/>

  <!-- TODO: bug 650340 - implement printFile
  <key id="sp-key-printFile"
       key="&printCmd.commandkey;"
       command="sp-cmd-printFile"
       modifiers="accel"/>
  -->

  <key id="key_cut"
       key="&cutCmd.key;"
       modifiers="accel"/>

  <key id="key_copy"
       key="&copyCmd.key;"
       modifiers="accel"/>
  <key id="key_paste"
       key="&pasteCmd.key;"
       modifiers="accel"/>
  <key id="key_selectAll" key="&selectAllCmd.key;" modifiers="accel"/>
  <key id="key_undo" key="&undoCmd.key;" modifiers="accel"/>
  <key id="key_redo" key="&undoCmd.key;" modifiers="accel,shift"/>
  <key id="sp-key-run"
       key="&run.key;"
       command="sp-cmd-run"
       modifiers="accel"/>
  <key id="sp-key-inspect"
       key="&inspect.key;"
       command="sp-cmd-inspect"
       modifiers="accel"/>
  <key id="sp-key-display"
       key="&display.key;"
       command="sp-cmd-display"
       modifiers="accel"/>
  <key id="sp-key-errorConsole"
       key="&errorConsoleCmd.commandkey;"
       command="sp-cmd-errorConsole"
       modifiers="accel,shift"/>
  <key id="sp-key-webConsole"
       key="&webConsoleCmd.commandkey;"
       command="sp-cmd-webConsole"
       modifiers="accel,shift"/>
</keyset>


<menubar id="sp-menubar">
  <menu id="sp-file-menu" label="&fileMenu.label;"
        accesskey="&fileMenu.accesskey;">
    <menupopup id="sp-menu-filepopup">
      <menuitem id="sp-menu-newscratchpad"
                label="&newWindowCmd.label;"
                accesskey="&newWindowCmd.accesskey;"
                key="sp-key-window"
                command="sp-cmd-newWindow"/>
      <menuseparator/>
      <menuitem id="sp-menu-open"
                label="&openFileCmd.label;"
                command="sp-cmd-openFile"
                key="sp-key-open"
                accesskey="&openFileCmd.accesskey;"/>
      <menuitem id="sp-menu-save"
                label="&saveFileCmd.label;"
                accesskey="&saveFileCmd.accesskey;"
                key="sp-key-save"
                command="sp-cmd-save"/>
      <menuitem id="sp-menu-saveas"
                label="&saveFileAsCmd.label;"
                accesskey="&saveFileAsCmd.accesskey;"
                command="sp-cmd-saveas"/>
      <menuseparator/>

      <!-- TODO: bug 650340 - implement printFile
      <menuitem id="sp-menu-print"
                label="&printCmd.label;"
                accesskey="&printCmd.accesskey;"
                command="sp-cmd-printFile"/>
      <menuseparator/>
      -->

      <menuitem id="sp-menu-close"
                label="&closeCmd.label;"
                key="sp-key-close"
                accesskey="&closeCmd.accesskey;"
                command="sp-cmd-close"/>
    </menupopup>
  </menu>

  <menu id="sp-edit-menu" label="&editMenu.label;"
        accesskey="&editMenu.accesskey;">
    <menupopup id="sp-menu_editpopup">
      <menuitem id="sp-menu-undo"
                label="&undoCmd.label;"
                key="key_undo"
                accesskey="&undoCmd.accesskey;"
                disabled="true"
                command="cmd_undo"/>
      <menuitem id="sp-menu-redo"
                label="&redoCmd.label;"
                key="key_redo"
                disabled="true"
                accesskey="&redoCmd.accesskey;"
                command="cmd_redo"/>
      <menuseparator/>
      <menuitem id="sp-menu-cut"
                label="&cutCmd.label;"
                key="key_cut"
                accesskey="&cutCmd.accesskey;"
                command="cmd_cut"/>
      <menuitem id="sp-menu-copy"
                label="&copyCmd.label;"
                key="key_copy"
                accesskey="&copyCmd.accesskey;"
                command="cmd_copy"/>
      <menuitem id="sp-menu-paste"
                label="&pasteCmd.label;"
                key="key_paste"
                accesskey="&pasteCmd.accesskey;"
                command="cmd_paste"/>
      <menuseparator/>
      <menuitem id="sp-menu-selectAll"
                label="&selectAllCmd.label;"
                key="key_selectAll"
                accesskey="&selectAllCmd.accesskey;"
                command="cmd_selectAll"/>

      <!-- TODO: bug 650345 - implement search and replace
      <menuitem id="sp-menu-find"
                label="&findOnCmd.label;"
                accesskey="&findOnCmd.accesskey;"
                key="key_find"
                disabled="true"
                command="cmd_find"/>
      <menuitem id="sp-menu-findAgain"
                label="&findAgainCmd.label;"
                accesskey="&findAgainCmd.accesskey;"
                key="key_findAgain"
                disabled="true"
                command="cmd_findAgain"/>
      <menuseparator id="sp-execute-separator"/>
      -->

    </menupopup>
  </menu>

  <menu id="sp-execute-menu" label="&executeMenu.label;"
        accesskey="&executeMenu.accesskey;">
    <menupopup id="sp-menu_executepopup">
      <menuitem id="sp-text-run"
                label="&run.label;"
                accesskey="&run.accesskey;"
                key="sp-key-run"
                command="sp-cmd-run"/>
      <menuitem id="sp-text-inspect"
                label="&inspect.label;"
                accesskey="&inspect.accesskey;"
                key="sp-key-inspect"
                command="sp-cmd-inspect"/>
      <menuitem id="sp-text-display"
                label="&display.label;"
                accesskey="&display.accesskey;"
                key="sp-key-display"
                command="sp-cmd-display"/>
    </menupopup>
  </menu>

  <menu id="sp-environment-menu"
        label="&environmentMenu.label;"
        accesskey="&environmentMenu.accesskey;">
    <menupopup id="sp-menu-environment">
      <menuitem id="sp-menu-content"
                label="&contentContext.label;"
                accesskey="&contentContext.accesskey;"
                command="sp-cmd-contentContext"
                checked="true"
                type="radio"/>
      <menuitem id="sp-menu-browser" hidden="true"
                command="sp-cmd-browserContext"
                label="&browserContext.label;"
                accesskey="&browserContext.accesskey;"
                type="radio"/>
      <menuseparator/>
      <menuitem id="sp-menu-resetContext"
                command="sp-cmd-resetContext"
                label="&resetContext.label;"
                accesskey="&resetContext.accesskey;"/>
    </menupopup>
  </menu>

  <menu id="sp-tools-menu"
        label="&toolsMenu.label;"
        accesskey="&toolsMenu.accesskey;">
    <menupopup id="sp-menu-tools">
      <menuitem id="sp-menu-errorConsole" hidden="true"
                label="&errorConsoleCmd.label;"
                accesskey="&errorConsoleCmd.accesskey;"
                key="sp-key-errorConsole"
                command="sp-cmd-errorConsole"/>
      <menuitem id="sp-menu-webConsole"
                label="&webConsoleCmd.label;"
                accesskey="&webConsoleCmd.accesskey;"
                key="sp-key-webConsole"
                command="sp-cmd-webConsole"/>
    </menupopup>
  </menu>
</menubar>

<popupset id="scratchpad-popups">
  <menupopup id="scratchpad-text-popup">
    <menuitem id="menu_cut"/>
    <menuitem id="menu_copy"/>
    <menuitem id="menu_paste"/>
    <menuitem id="menu_delete"/>
    <menuseparator/>
    <menuitem id="menu_selectAll"/>
    <menuseparator/>
    <menuitem id="sp-text-run"
              label="&run.label;"
              accesskey="&run.accesskey;"
              key="sp-key-run"
              command="sp-cmd-run"/>
    <menuitem id="sp-text-inspect"
              label="&inspect.label;"
              accesskey="&inspect.accesskey;"
              key="sp-key-inspect"
              command="sp-cmd-inspect"/>
    <menuitem id="sp-text-display"
              label="&display.label;"
              accesskey="&display.accesskey;"
              key="sp-key-display"
              command="sp-cmd-display"/>
  </menupopup>
</popupset>

<textbox id="scratchpad-textbox"
         multiline="true"
         flex="1"
         context="scratchpad-text-popup"
         placeholder="&textbox.placeholder1;" />
<statusbar id="scratchpad-statusbar" align="end">
  <statusbarpanel id="scratchpad-status"
                  label="&contentContext.label;"
                  class="statusbarpanel-iconic-text"/>
  <spacer flex="1"/>
</statusbar>
</window>
