<doc>
  <legacy_id>2294</legacy_id>
  <name>drawer</name>
  <type>command</type>
  <syntax>
    <example>drawer <i>stack</i> {[at] left | bottom | right} [{of | in} <i>parentStack</i>] [aligned [to] {left | right | top | bottom | center}]</example>
  </syntax>
  <library></library>
  <objects>
  </objects>
  <synonyms>
  </synonyms>
  <classification>
    <category>Windows &amp; Dialog Boxes</category>
  </classification>
  <references>
    <command tag="go">go Command</command>
    <property tag="mode">mode Property</property>
    <command tag="palette">palette Command</command>
    <command tag="topLevel">topLevel Command</command>
  </references>
  <history>
    <introduced version="2.1">Added.</introduced>
  </history>
  <platforms>
    <mac/>
    <windows/>
    <linux/>
  </platforms>
  <classes>
    <desktop/>
    <server/>
    <web/>
  </classes>
  <security>
  </security>
  <summary>Displays a <object tag="stack">stack</object> as a <command tag="drawer">drawer</command> of another <object tag="stack">stack</object>.</summary>
  <examples>
    <example>drawer stack "Recent Transactions" at right</example>
    <example>drawer stack "Tips" at left of stack "Main" aligned to top</example>
    <example>drawer me at bottom aligned to left</example>
    <example>drawer stack "Help List" at right of this stack</example>
    <example>drawer stack "Connections" at right aligned to center</example>
  </examples>
  <description>
    <p>Use the <b>drawer</b> <glossary tag="command">command</glossary> to slide a <object tag="stack">stack</object> out of one edge of another <object tag="stack">stack</object>.</p><p/><p><b>Parameters:</b></p><p>The <i>stack</i> is any <href tag="reference/object_reference.rev">stack reference</href>.</p><p/><p>The <i>parentStack</i> is any reference to a <object tag="stack">stack</object> in an open window.</p><p/><p><b>Comments:</b></p><p>The <b>drawer</b> <glossary tag="command">command</glossary> opens the <i>stack</i> as a <command tag="drawer">drawer</command> of the specified <i>parentStack</i>. (The <i>stack's</i> <keyword tag="rectangle">rectangle</keyword> and <property tag="location">location</property> <property tag="properties">properties</property> are ignored.)</p><p/><p>You can open a drawer at the left, bottom, or right edge of the <i>parentStack</i>. If you don't specify an edge, the <command tag="drawer">drawer</command> opens at the left if there is room for it to fully open. Otherwise, it opens at the right.</p><p/><p>You can align a drawer to the top, bottom, or center (of the <i>parentStack's</i> left or right edge) or to the left, right, or center (of the bottom edge). If you don't specify an alignment, the <command tag="drawer">drawer</command> is aligned to the center of the specified edge. To let the user access multiple drawers on one side of a window, align them to different locations on that side:</p><p/><p>  drawer "Basic Tools" at left of this stack aligned to top</p><p>  drawer "Colors" at left of this stack aligned to bottom</p><p/><p><img src="202652"/> <b>Cross-platform note:</b> On <glossary tag="Mac OS">Mac OS</glossary>, <glossary tag="Unix">Unix</glossary>, and <glossary tag="Windows">Windows systems</glossary>, <glossary tag="drawer">drawers</glossary> are not supported, so the <b>drawer</b> <glossary tag="command">command</glossary> opens the <i>stack</i> as a <command tag="palette">palette</command> instead. The <command tag="palette">palette</command> uses the current <keyword tag="rectangle">rectangle</keyword> of the <i>stack</i> and does not resize or move it.</p><p/><p>To slide the drawer back in, either close the stack or hide it:</p><p/><p>  close stack "Colors"</p><p>  hide stack "Colors"</p><p/><p>If the <i>stack</i> is already open, the <b>drawer</b> <glossary tag="command">command</glossary> closes the <object tag="stack">stack</object> and reopens it as a <command tag="drawer">drawer</command>, so <message tag="closeStack">closeStack</message> and <message tag="openStack">openStack</message>, <message tag="closeCard">closeCard</message> and <message tag="openCard">openCard</message>, and (if applicable) <message tag="closeBackground">closeBackground</message> and <message tag="openBackground">openBackground</message> <glossary tag="message">messages</glossary> are sent to the <glossary tag="current card">current card</glossary> as a result of <glossary tag="execute">executing</glossary> this <glossary tag="command">command</glossary>. Use the <command tag="lock messages">lock messages</command> <glossary tag="command">command</glossary> before <glossary tag="execute">executing</glossary> <b>drawer</b> if you want to prevent the close <glossary tag="message">messages</glossary> from being sent; the open <glossary tag="message">messages</glossary> are sent regardless of the setting of the <property tag="lockMessages">lockMessages</property> <glossary tag="property">property</glossary>.</p>
  </description>
</doc>