<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE erlref SYSTEM "erlref.dtd">

<!-- THIS FILE IS GENERATED DO NOT EDIT -->


<erlref>
<header>
  <copyright>
    <year>2020</year><year>2021</year>
    <holder>wxWidgets team.</holder></copyright>
  <legalnotice>Licensed under the wxWindows Free Documentation Licence, Version 3
  </legalnotice>
  <title>wxPanel</title>
</header>
<module>wxPanel</module>
<modulesummary>Functions for wxPanel class</modulesummary>
<description><p>A panel is a window on which controls are placed. It is usually placed within a frame. Its main feature over its parent class <seeerl marker="wxWindow"><c>wxWindow</c></seeerl> is code for handling child windows and TAB traversal, which is implemented natively if possible (e.g. in wxGTK) or by wxWidgets itself otherwise.
      </p><p>Note: Tab traversal is implemented through an otherwise undocumented intermediate wxControlContainer class from which any class can derive in addition to the normal <seeerl marker="wxWindow"><c>wxWindow</c></seeerl> base class. Please see  and  to find out how this is achieved.
      </p><p>Note: if not all characters are being intercepted by your OnKeyDown or OnChar handler, it may be because you are using the <c>wxTAB_TRAVERSAL</c> style, which grabs some keypresses for use by child controls.
      </p><p>Remark: By default, a panel has the same colouring as a dialog.
      </p><p>See: <seeerl marker="wxDialog"><c>wxDialog</c></seeerl>
      </p>
  <p>This class is derived (and can use functions) from: 
    <seeerl marker="wxWindow"><c>wxWindow</c></seeerl> <seeerl marker="wxEvtHandler"><c>wxEvtHandler</c></seeerl></p>
  
  <p>wxWidgets docs: <url href="https://docs.wxwidgets.org/3.1/classwx_panel.html">wxPanel</url></p>
  </description><section><title>Events</title><p>Event types emitted from this class: <seeerl marker="wxNavigationKeyEvent"><c>navigation_key</c></seeerl></p></section>
<datatypes><datatype><name name="wxPanel"/></datatype></datatypes>

<funcs>
  <func>
    <name name="new" arity="0" clause_i="1" since=""/>
    <fsummary>Default constructor. </fsummary>
    <desc><p>Default constructor. 
      </p></desc>
  </func>
  
  <func>
    <name name="new" arity="1" clause_i="1" since=""/>
    <fsummary>See: <c>new/2</c></fsummary>
  </func>
  
  <func>
    <name name="new" arity="2" clause_i="1" since=""/>
    <fsummary>Constructor. </fsummary>
    <desc><p>Constructor. 
      </p><p>See: <c>Create()</c> (not implemented in wx)
      </p></desc>
  </func>
  
  <func>
    <name name="destroy" arity="1" clause_i="1" since=""/>
    <fsummary>Destructor. </fsummary>
    <desc><p>Destructor. 
      </p><p>Deletes any child windows before deleting the physical window. 
      </p></desc>
  </func>
  
  <func>
    <name name="initDialog" arity="1" clause_i="1" since=""/>
    <fsummary>Sends a <c>wxInitDialogEvent</c>, which in turn transfers data to the dialog via validators. </fsummary>
    <desc><p>Sends a <seeerl marker="wxInitDialogEvent"><c>wxInitDialogEvent</c></seeerl>, which in turn transfers data to the dialog via validators. 
      </p><p>See: <seeerl marker="wxInitDialogEvent"><c>wxInitDialogEvent</c></seeerl>
      </p></desc>
  </func>
  
  <func>
    <name name="setFocusIgnoringChildren" arity="1" clause_i="1" since=""/>
    <fsummary>In contrast to <c>wxWindow:setFocus/1</c> (see above) this will set the focus to the panel even if there are child windows in the panel. </fsummary>
    <desc><p>In contrast to <seemfa marker="wxWindow#setFocus/1"><c>wxWindow:setFocus/1</c></seemfa> (see above) this will set the focus to the panel even if there are child windows in the panel. 
      </p><p>This is only rarely needed. 
      </p></desc>
  </func>
  </funcs>
</erlref>
