<?xml version="1.0"?>
<!--
   - The contents of this file are subject to the Netscape 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/NPL/
   -  
   - 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 Mozilla Communicator client code, released
   - March 31, 1998.
   - 
   - The Initial Developer of the Original Code is Netscape
   - Communications Corporation. Portions created by Netscape are
   - Copyright (C) 1999-2000 Netscape Communications Corporation. All
   - Rights Reserved.
   - 
   - Contributor(s): 
  - Brian King
  - Dan Haddix
  -->

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

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

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

<!DOCTYPE window SYSTEM "chrome://editor/locale/EditorImageMap.dtd">


<!-- dialog containing a control requiring initial setup -->
<window title="&windowTitle.label;"
    xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
    xmlns:html="http://www.w3.org/1999/xhtml"
    onload = "Startup()"
    onunload="//finishMap();"
    orient="vertical"
    width="640" height="480"
   >
<!--
  screenX="10" screenY="10"
  persist="screenX screenY width height"
-->

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

  <!-- Methods for Image Map only -->
  <script type="application/x-javascript" src="chrome://editor/content/EdImageMap.js" />
  <script type="application/x-javascript" src="chrome://editor/content/EdImageMapShapes.js" />

  <broadcaster id="args" value=""/>

  <keyset id="dialogKeys">

    <key id="deletespot"   keycode="VK_DELETE"   oncommand="deleteElement(currentElement)" />
    <key id="nudgeup"      keycode="VK_UP"       oncommand="nudge(event, 'up')" />
    <key id="nudgeleft"    keycode="VK_LEFT"     oncommand="nudge(event, 'left')" />
    <key id="nudgedown"    keycode="VK_DOWN"     oncommand="nudge(event, 'down')" />
    <key id="nudgeright"   keycode="VK_RIGHT"    oncommand="nudge(event, 'right')" />
    <key id="mapclearkb"    key="&clear.accesskey;" observes="Map:Clear"  modifiers="accel"/>
    <key id="mapselectkb"   key="&selectall.accesskey;" observes="Map:SelectAll"  modifiers="accel"/>
    <key id="mapclosekb"    key="&close.accesskey;" observes="Map:Close"  modifiers="accel"/>
    <key id="mapcutkb"      key="&cut.accesskey;" observes="Map:Cut"  modifiers="accel"/>
    <key id="mapcopykb"     key="&copy.accesskey;" observes="Map:Copy"  modifiers="accel"/>
    <key id="mappastekb"    key="&paste.accesskey;" observes="Map:Paste"  modifiers="accel"/>
    <key id="mappropskb"    key="&props.accesskey;" observes="Map:Props"  modifiers="accel"/>
    <key id="maptbarkb"     key="&tbar.accesskey;" observes="Map:ViewToolbar"  modifiers="accel"/>

  </keyset>

  <broadcaster id="Map:Clear" label="&clearCmd.label;" oncommand=""/>
  <broadcaster id="Map:Close" label="&closeCmd.label;" oncommand="exitImageMap()"/>
  <broadcaster id="Map:Copy" label="&copyCmd.label;" disabled="true" oncommand="cutCopy()"/>
  <broadcaster id="Map:Cut" label="&cutCmd.label;" disabled="true" oncommand="cutCopy(true)"/>
  <broadcaster id="Map:Paste" label="&pasteCmd.label;" disabled="true" oncommand="paste()"/>
  <broadcaster id="Map:Props" label="&propsCmd.label;" oncommand="hotSpotProps(currentElement[0])"/>
  <broadcaster id="Map:ViewToolbar" label="&showhideTbarCmd.label;" oncommand="hideToolbar()"/>
  <broadcaster id="Map:Apercent" label="&apercentCmd.label;" checked="true" oncommand="zoom('', 1)"/>
  <broadcaster id="Map:Bpercent" label="&bpercentCmd.label;" oncommand="zoom('', 2)"/>
  <broadcaster id="Map:Cpercent" label="&cpercentCmd.label;" oncommand="zoom('', 4)"/>
  <broadcaster id="Map:Contrast" label="&contrastCmd.label;" oncommand="highContrast()" toggled="0" checked="false"/>
  <broadcaster id="Map:About" label="&aboutCmd.label;" onaction=""/>
  <broadcaster id="Map:ZoomIn" label="&zoominCmd.label;" oncommand="zoom('in')"/>
  <broadcaster id="Map:ZoomOut" label="&zoomoutCmd.label;" disabled="true" oncommand="zoom('out')"/>
  <broadcaster id="Map:SelectAll" label="&selectallCmd.label;" oncommand="selectAll()"/>

  <!-- Interim hack to transition from nsIXULWindowCallbacks/ShowWindowWithArgs -->
  <broadcaster id="dialog.start" ready="false"/>
  <observes element="dialog.start" attribute="ready" onchange="EditorStartup('html')"/>

<toolbox>
  <menubar>
    <!-- File menu -->
    <menu id="mapfileMenu" label="&mapfileMenu.label;" accesskey="&mapfilemenu.accesskey;">
      <menupopup>
        <menuitem accesskey="&mapfileclear.accesskey;" key="mapclearkb" observes="Map:Clear"/>
        <menuitem accesskey="&mapfileclose.accesskey;" key="mapclosekb" observes="Map:Close"/>
      </menupopup>
    </menu>
  
    <!-- Edit menu -->
    <menu id="mapeditMenu" label="&mapeditMenu.label;" accesskey="&mapeditmenu.accesskey;">
      <menupopup>
        <menuitem accesskey="&mapselectall.accesskey;" key="mapselectkb" observes="Map:SelectAll"/>
        <menuitem accesskey="&mapeditcut.accesskey;" key="mapcutkb" observes="Map:Cut"/>
        <menuitem accesskey="&mapeditcopy.accesskey;" key="mapcopykb" observes="Map:Copy"/>
        <menuitem accesskey="&mapeditpaste.accesskey;" key="mappastekb" observes="Map:Paste"/>
        <menuseparator/>
        <menuitem accesskey="&mapeditprops.accesskey;" key="mappropskb" observes="Map:Props"/>
      </menupopup>
    </menu>
  
    <!-- View menu -->
    <menu id="mapviewMenu" label="&mapviewMenu.label;" accesskey="&mapviewmenu.accesskey;">
      <menupopup>
        <menuitem id="view_hidetoolbar" accesskey="&mapviewtbar.accesskey;" key="maptbarkb" observes="Map:ViewToolbar"/>
        <menu id="mapscalingMenu" label="&mapviewScale.label;" accesskey="&mapviewscale.accesskey;">
          <menupopup>
            <menuitem accesskey="&zoomone.accesskey;" key="" observes="Map:Apercent"/>
            <menuitem accesskey="&zoomtwo.accesskey;" key="" observes="Map:Bpercent"/>
            <menuitem accesskey="&zoomthree.accesskey;" key="" observes="Map:Cpercent"/>
          </menupopup>
        </menu>
        <menuseparator/>
        <menuitem accesskey="&contrast.accesskey;" observes="Map:Contrast" />
      </menupopup>
    </menu>
  
    <menu id="maphelpMenu" label="&maphelpMenu.label;" accesskey="&maphelpmenu.accesskey;">
      <menupopup>
        <menuitem accesskey="&about.accesskey;" observes="Map:About"/>
      </menupopup>
    </menu>
  
    <spring flex="1"/>
  </menubar>
  
  <toolbar id="toolbar" class="toolbar-primary" persist="collapsed">
    <button id="cutButton" class="button-toolbar-2 top" observes="Map:Cut"/>
    <button id="copyButton" class="button-toolbar-2 top" observes="Map:Copy"/>
    <button id="pasteButton" class="button-toolbar-2 top" observes="Map:Paste"/>
    <button id="zoomInButton" class="button-toolbar-2 top" observes="Map:ZoomIn"/>
    <button id="zoomOutButton" class="button-toolbar-2 top" observes="Map:ZoomOut"/>
    <button id="contrastButton" class="button-toolbar-2 top" observes="Map:Contrast"/>
    <spring flex="1"/>
  </toolbar> 
</toolbox>

<box align="horizontal" flex="100">

  <box id="VerticalToolbar" orient="vertical">
    <button id="pointerButton" class="tool" toggled="1" oncommand="changeTool(event, 'pointer');"/>
    <button id="rectButton" class="tool" oncommand="changeTool(event, 'rect');"/>
    <button id="cirButton" class="tool" oncommand="changeTool(event, 'cir');"/>
    <button id="polyButton" class="tool" oncommand="changeTool(event, 'poly');"/>
    <spring flex="1"/>
  </box>

  <!-- Content Area -->
  <iframe id="content" src="EdImageMapPage.html" flex="1"
    onmousedown="top.downMouse(event)"
    onmouseup="top.upMouse(event)" 
    onmousemove="top.moveMouse(event)"
    onclick="top.clickMouse(event)" 
  />

</box>

  <!-- from EdDialogOverlay -->
  <!-- not sure if this is needed, but put it in just in case 
  <box id="AdvancedEditButton"/> -->

  <box orient="horizontal">

    <!-- Cheap hack until I get key events hooked up
    <button 
    class   = "push dialog"
    id      = "DelButton"
    label="&delSpotCmd.label;" 
    oncommand="deleteElement(currentElement);"/> -->
    
    <spring flex="1"/>

    <!-- from global dialogOverlay -->
    <box id="okCancelButtons"/>

  </box>

</window>
