.. wxPython Phoenix documentation

   This file was generated by Phoenix's sphinx generator and associated
   tools, do not edit by hand.

   Copyright: (c) 2011-2020 by Total Control Software
   License:   wxWindows License

.. include:: headings.inc



.. _wx.html.HtmlContainerCell:

==========================================================================================================================================
|phoenix_title|  **wx.html.HtmlContainerCell**
==========================================================================================================================================

The :ref:`wx.html.HtmlContainerCell`  class is an implementation of a cell that may contain more cells in it.          

It is heavily used in the HTML layout algorithm. 







         



.. seealso:: :ref:`Cells and Containers <cells and containers>`    







|

|class_hierarchy| Class Hierarchy
=================================

.. raw:: html

   <div id="toggleBlock" onclick="return toggleVisibility(this)" class="closed" style="cursor:pointer;">
   <img id="toggleBlock-trigger" src="_static/images/closed.png"/>
   Inheritance diagram for class <strong>HtmlContainerCell</strong>:
   </div>
   <div id="toggleBlock-summary" style="display:block;"></div>
   <div id="toggleBlock-content" style="display:none;">
   <p class="graphviz">
   <center><img src="_static/images/inheritance/wx.html.HtmlContainerCell_inheritance.png" alt="Inheritance diagram of HtmlContainerCell" usemap="#dummy" class="inheritance"/></center>
   <script type="text/javascript">toggleVisibilityOnLoad(document.getElementById('toggleBlock'))</script>
   <map id="dummy" name="dummy"> <area shape="rect" id="node1" href="wx.html.HtmlContainerCell.html" title="wx.html.HtmlContainerCell" alt="" coords="5,160,204,189"/> <area shape="rect" id="node2" href="wx.html.HtmlCell.html" title="wx.html.HtmlCell" alt="" coords="37,83,173,112"/> <area shape="rect" id="node3" href="wx.Object.html" title="wx.Object" alt="" coords="61,5,148,35"/> </map> 
   </p>
   </div>

|


|method_summary| Methods Summary
================================

================================================================================ ================================================================================
:meth:`~wx.html.HtmlContainerCell.__init__`                                      Constructor.
:meth:`~wx.html.HtmlContainerCell.Detach`                                        Detach a child cell.
:meth:`~wx.html.HtmlContainerCell.GetAlignHor`                                   Returns container's horizontal alignment.
:meth:`~wx.html.HtmlContainerCell.GetAlignVer`                                   Returns container's vertical alignment.
:meth:`~wx.html.HtmlContainerCell.GetBackgroundColour`                           Returns the background colour of the container or  ``NullColour``   if no background colour is set.
:meth:`~wx.html.HtmlContainerCell.GetIndent`                                     Returns the indentation.
:meth:`~wx.html.HtmlContainerCell.GetIndentUnits`                                Returns the units of indentation for `ind`  where `ind`  is one of the ``HTML_INDENT_``  constants.
:meth:`~wx.html.HtmlContainerCell.InsertCell`                                    Inserts a new cell into the container.
:meth:`~wx.html.HtmlContainerCell.SetAlign`                                      Sets the container's alignment (both horizontal and vertical) according to the values stored in `tag`.
:meth:`~wx.html.HtmlContainerCell.SetAlignHor`                                   Sets the container's `horizontal`  alignment.
:meth:`~wx.html.HtmlContainerCell.SetAlignVer`                                   Sets the container's `vertical`  alignment.
:meth:`~wx.html.HtmlContainerCell.SetBackgroundColour`                           Sets the background colour for this container.
:meth:`~wx.html.HtmlContainerCell.SetBorder`                                     Sets the border (frame) colours.
:meth:`~wx.html.HtmlContainerCell.SetIndent`                                     Sets the indentation (free space between borders of container and subcells).
:meth:`~wx.html.HtmlContainerCell.SetMinHeight`                                  Sets minimal height of the container.
:meth:`~wx.html.HtmlContainerCell.SetWidthFloat`                                 Sets floating width adjustment.
================================================================================ ================================================================================


|


|property_summary| Properties Summary
=====================================

================================================================================ ================================================================================
:attr:`~wx.html.HtmlContainerCell.AlignHor`                                      See :meth:`~wx.html.HtmlContainerCell.GetAlignHor` and :meth:`~wx.html.HtmlContainerCell.SetAlignHor`
:attr:`~wx.html.HtmlContainerCell.AlignVer`                                      See :meth:`~wx.html.HtmlContainerCell.GetAlignVer` and :meth:`~wx.html.HtmlContainerCell.SetAlignVer`
:attr:`~wx.html.HtmlContainerCell.BackgroundColour`                              See :meth:`~wx.html.HtmlContainerCell.GetBackgroundColour` and :meth:`~wx.html.HtmlContainerCell.SetBackgroundColour`
================================================================================ ================================================================================


|


|api| Class API
===============


.. class:: wx.html.HtmlContainerCell(HtmlCell)

   **Possible constructors**::

       HtmlContainerCell(parent)
       
   
   The HtmlContainerCell class is an implementation of a cell that may
   contain more cells in it.



   .. method:: __init__(self, parent)

      Constructor.                  

      `parent`  is pointer to parent container or ``None``.                  


      :param `parent`: 
      :type `parent`: wx.html.HtmlContainerCell







   .. method:: Detach(self, cell)

      Detach a child cell.                  

      Detaching a cell removes it from this container and allows reattaching it to another one by using :meth:`InsertCell` . Alternatively, this method can be used to selectively remove some elements of the HTML document tree by deleting the cell after calling it. 




      :param `cell`: Must be non-null and an immediate child of this cell.  
      :type `cell`: wx.html.HtmlCell




                  



      .. versionadded:: 4.1/wxWidgets-3.1.2  
     








   .. method:: GetAlignHor(self)

      Returns container's horizontal alignment.                  

      :rtype: `int`








   .. method:: GetAlignVer(self)

      Returns container's vertical alignment.                  

      :rtype: `int`








   .. method:: GetBackgroundColour(self)

      Returns the background colour of the container or  ``NullColour``   if no background colour is set.                   

      :rtype: :ref:`Colour`








   .. method:: GetIndent(self, ind)

      Returns the indentation.                  

      `ind`  is one of the ``HTML_INDENT_``  constants. 

                


      :param `ind`: 
      :type `ind`: int




      :rtype: `int`







      .. note:: 

         You must call :meth:`GetIndentUnits`   with same `ind`  parameter in order to correctly interpret the returned integer value. It is NOT always in pixels!   








   .. method:: GetIndentUnits(self, ind)

      Returns the units of indentation for `ind`  where `ind`  is one of the ``HTML_INDENT_``  constants.                  


      :param `ind`: 
      :type `ind`: int




      :rtype: `int`








   .. method:: InsertCell(self, cell)

      Inserts a new cell into the container.                  

      Note that the container takes ownership of the cell and will delete it when it itself is destroyed.                  


      :param `cell`: 
      :type `cell`: wx.html.HtmlCell







   .. method:: SetAlign(self, tag)

      Sets the container's alignment (both horizontal and vertical) according to the values stored in `tag`.                  

      (Tags  ``ALIGN``   parameter is extracted.) In fact it is only a front-end to  :meth:`SetAlignHor`   and :meth:`SetAlignVer` .                  


      :param `tag`: 
      :type `tag`: wx.html.HtmlTag







   .. method:: SetAlignHor(self, al)

      Sets the container's `horizontal`  alignment.                  

      During :meth:`wx.html.HtmlCell.Layout`   each line is aligned according to `al`  value. 




      :param `al`: new horizontal alignment. May be one of these values:

       - ``wx.html.HTML_ALIGN_LEFT``: lines are left-aligned (default) 
       - ``wx.html.HTML_ALIGN_JUSTIFY``: lines are justified 
       - ``wx.html.HTML_ALIGN_CENTER``: lines are centered 
       - ``wx.html.HTML_ALIGN_RIGHT``: lines are right-aligned  

 

      :type `al`: int




                  





   .. method:: SetAlignVer(self, al)

      Sets the container's `vertical`  alignment.                  

      This is per-line alignment! 




      :param `al`: new vertical alignment. May be one of these values:

       - ``wx.html.HTML_ALIGN_BOTTOM``: cells are over the line (default) 
       - ``wx.html.HTML_ALIGN_CENTER``: cells are centered on line 
       - ``wx.html.HTML_ALIGN_TOP``: cells are under the line 

 

      :type `al`: int






      .. figure:: _static/images/overviews/htmlcontcell_alignv.png
         :align: center


      |

                  





   .. method:: SetBackgroundColour(self, clr)

      Sets the background colour for this container.                  


      :param `clr`: 
      :type `clr`: wx.Colour







   .. method:: SetBorder(self, clr1, clr2, border=1)

      Sets the border (frame) colours.                  

      A border is a rectangle around the container. 




      :param `clr1`: Colour of top and left lines   
      :type `clr1`: wx.Colour
      :param `clr2`: Colour of bottom and right lines   
      :type `clr2`: wx.Colour
      :param `border`: Size of the border in pixels   
      :type `border`: int








                  





   .. method:: SetIndent(self, i, what, units=HTML_UNITS_PIXELS)

      Sets the indentation (free space between borders of container and subcells).                  



      .. figure:: _static/images/overviews/htmlcontcell_indent.png
         :align: center


      |






      :param `i`: Indentation value.   
      :type `i`: int
      :param `what`: Determines which of the four borders we're setting. It is ``wx.OR`` combination of following constants:

       - ``wx.html.HTML_INDENT_TOP``: top border 
       - ``wx.html.HTML_INDENT_BOTTOM``: bottom 
       - ``wx.html.HTML_INDENT_LEFT``: left 
       - ``wx.html.HTML_INDENT_RIGHT``: right 
       - ``wx.html.HTML_INDENT_HORIZONTAL``: left and right 
       - ``wx.html.HTML_INDENT_VERTICAL``: top and bottom 
       - ``wx.html.HTML_INDENT_ALL``: all 4 borders  

 

      :type `what`: int
      :param `units`: Units of i. This parameter affects interpretation of value.

       - ``wx.html.HTML_UNITS_PIXELS``:  `i`  is number of pixels 
       - ``wx.html.HTML_UNITS_PERCENT``:  `i`  is interpreted as percents of width of parent container  

 

      :type `units`: int








                  





   .. method:: SetMinHeight(self, h, align=HTML_ALIGN_TOP)

      Sets minimal height of the container.                  

      When container's :meth:`wx.html.HtmlCell.Layout`   is called, m_Height is set depending on layout of subcells to the height of area covered by layed-out subcells. Calling this method guarantees you that the height of container is never smaller than `h`  - even if the subcells cover much smaller area. 




      :param `h`: The minimal height.   
      :type `h`: int
      :param `align`: If height of the container is lower than the minimum height, empty space must be inserted somewhere in order to ensure minimal height. This parameter is one of  ``HTML_ALIGN_TOP`` ,   ``HTML_ALIGN_BOTTOM`` ,   ``HTML_ALIGN_CENTER`` . It refers to the contents, not to the empty place.    
      :type `align`: int






                  





   .. method:: SetWidthFloat(self, *args, **kw)



      |overload| Overloaded Implementations:

      :html:`<hr class="overloadsep" /><br />`

      
      **SetWidthFloat** `(self, w, units)`
      
      Sets floating width adjustment.                  
      
      The normal behaviour of container is that its width is the same as the width of parent container (and thus you can have only one sub-container per line). You can change this by setting the floating width adjustment. 
      
      
      
      
      :param `w`: Width of the container. If the value is negative it means complement to full width of parent container. E.g.::
      
          SetWidthFloat(-50, wx.html.HTML_UNITS_PIXELS)
      
       sets the width of container to parent's width minus 50 pixels. This is useful when creating tables - you can call SetWidthFloat(50) and SetWidthFloat(-50).   
      :type `w`: int
      :param `units`: Units of w This parameter affects the interpretation of value.
      
       - ``wx.html.HTML_UNITS_PIXELS``:  `w`  is number of pixels 
       - ``wx.html.HTML_UNITS_PERCENT``:  `w`  is interpreted as percents of width of parent container  
      
       
      
      :type `units`: int
      
      
      
      
      
      
                        
      
      
      
      
      :html:`<hr class="overloadsep" /><br />`

      
      **SetWidthFloat** `(self, tag, pixel_scale=1.0)`
      
      Sets floating width adjustment.                  
      
      The normal behaviour of container is that its width is the same as the width of parent container (and thus you can have only one sub-container per line). You can change this by setting the floating width adjustment. 
      
      
      
      
      :param `tag`: In the second version of method,  `w`  and  `units`  info is extracted from tag's ``WIDTH`` parameter.   
      :type `tag`: wx.html.HtmlTag
      :param `pixel_scale`: This is number of real pixels that equals to 1 HTML pixel.   
      :type `pixel_scale`: float
      
      
      
      
      
      
                        
      
      
      
      
      :html:`<hr class="overloadsep" /><br />`






   .. attribute:: AlignHor

      See :meth:`~wx.html.HtmlContainerCell.GetAlignHor` and :meth:`~wx.html.HtmlContainerCell.SetAlignHor`


   .. attribute:: AlignVer

      See :meth:`~wx.html.HtmlContainerCell.GetAlignVer` and :meth:`~wx.html.HtmlContainerCell.SetAlignVer`


   .. attribute:: BackgroundColour

      See :meth:`~wx.html.HtmlContainerCell.GetBackgroundColour` and :meth:`~wx.html.HtmlContainerCell.SetBackgroundColour`

