.. 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 .. currentmodule:: wx.lib.ogl.composit .. highlight:: python .. _wx.lib.ogl.composit.CompositeShape: ========================================================================================================================================== |phoenix_title| **wx.lib.ogl.composit.CompositeShape** ========================================================================================================================================== The :class:`CompositeShape` is a shape with a list of child objects, and a list of size and positioning constraints between the children. | |class_hierarchy| Class Hierarchy ================================= .. raw:: html
Inheritance diagram for class CompositeShape:
| |sub_classes| Known Subclasses ============================== :class:`wx.lib.ogl.composit.DivisionShape` | |super_classes| Known Superclasses ================================== :class:`wx.lib.ogl.basic.RectangleShape` | |method_summary| Methods Summary ================================ ================================================================================ ================================================================================ :meth:`~wx.lib.ogl.composit.CompositeShape.__init__` Default class constructor. :meth:`~wx.lib.ogl.composit.CompositeShape.AddChild` Add a shape to the composite. If addAfter is not None, the shape :meth:`~wx.lib.ogl.composit.CompositeShape.AddConstraint` Adds a constraint to the composite. :meth:`~wx.lib.ogl.composit.CompositeShape.AddSimpleConstraint` Add a constraint of the given type to the composite. :meth:`~wx.lib.ogl.composit.CompositeShape.CalculateSize` Calculates the size and position of the composite based on :meth:`~wx.lib.ogl.composit.CompositeShape.Constrain` Constrain the children. :meth:`~wx.lib.ogl.composit.CompositeShape.ContainsDivision` Check if division is descendant. :meth:`~wx.lib.ogl.composit.CompositeShape.Delete` Fully disconnect this shape from parents, children, the :meth:`~wx.lib.ogl.composit.CompositeShape.DeleteConstraint` Deletes constraint from composite. :meth:`~wx.lib.ogl.composit.CompositeShape.DeleteConstraintsInvolvingChild` This function deletes constraints which mention the given child. :meth:`~wx.lib.ogl.composit.CompositeShape.FindConstraint` Finds the constraint with the given id. :meth:`~wx.lib.ogl.composit.CompositeShape.FindContainerImage` Finds the image used to visualize a container. This is any child of :meth:`~wx.lib.ogl.composit.CompositeShape.GetConstraints` Return the list of constraints. :meth:`~wx.lib.ogl.composit.CompositeShape.GetDivisions` Return the list of divisions. :meth:`~wx.lib.ogl.composit.CompositeShape.MakeContainer` Makes this composite into a container by creating one child :meth:`~wx.lib.ogl.composit.CompositeShape.OnBeginDragLeft` The begin drag left handler. :meth:`~wx.lib.ogl.composit.CompositeShape.OnCreateDivision` Create division handler. :meth:`~wx.lib.ogl.composit.CompositeShape.OnDragLeft` The drag left handler. :meth:`~wx.lib.ogl.composit.CompositeShape.OnDraw` The draw handler. :meth:`~wx.lib.ogl.composit.CompositeShape.OnDrawContents` The draw contents handler. :meth:`~wx.lib.ogl.composit.CompositeShape.OnEndDragLeft` The end drag left handler. :meth:`~wx.lib.ogl.composit.CompositeShape.OnErase` The erase handler. :meth:`~wx.lib.ogl.composit.CompositeShape.OnMovePre` The move 'pre' handler. :meth:`~wx.lib.ogl.composit.CompositeShape.OnRightClick` The right click handler. :meth:`~wx.lib.ogl.composit.CompositeShape.Recompute` Recomputes any constraints associated with the object. If `False` is :meth:`~wx.lib.ogl.composit.CompositeShape.RemoveChild` Removes the child from the composite and any constraint :meth:`~wx.lib.ogl.composit.CompositeShape.RemoveChildFromConstraints` Removes the child from the constraints. :meth:`~wx.lib.ogl.composit.CompositeShape.SetSize` Set the size. ================================================================================ ================================================================================ | |api| Class API =============== .. class:: CompositeShape(RectangleShape) The :class:`CompositeShape` is a shape with a list of child objects, and a list of size and positioning constraints between the children. .. method:: __init__(self) Default class constructor. .. method:: AddChild(self, child, addAfter = None) Add a shape to the composite. If addAfter is not None, the shape will be added after addAfter. :param `child`: an instance of :class:`~lib.ogl.Shape` :param `addAfter`: an instance of :class:`~lib.ogl.Shape` .. method:: AddConstraint(self, constraint) Adds a constraint to the composite. :param `constraint`: an instance of :class:`~lib.ogl.Shape` .. method:: AddSimpleConstraint(self, type, constraining, constrained) Add a constraint of the given type to the composite. :param `type`: see :class:`ConstraintType` for valid types :param `constraining`: the constraining :class:`Shape` :param `constrained`: the constrained :class:`Shape` .. method:: CalculateSize(self) Calculates the size and position of the composite based on child sizes and positions. .. method:: Constrain(self) Constrain the children. :returns: ``True`` if constrained otherwise False .. method:: ContainsDivision(self, division) Check if division is descendant. :param `division`: division to check :returns: `True` if division is a descendant of this container. .. method:: Delete(self) Fully disconnect this shape from parents, children, the canvas, etc. .. method:: DeleteConstraint(self, constraint) Deletes constraint from composite. :param `constraint`: the constraint to delete .. method:: DeleteConstraintsInvolvingChild(self, child) This function deletes constraints which mention the given child. Used when deleting a child from the composite. :param `child`: an instance of :class:`~lib.ogl.Shape` .. method:: FindConstraint(self, cId) Finds the constraint with the given id. :param `cId`: The constraint id to find. :returns: None or a tuple of the constraint and the actual composite the constraint was in, in case that composite was a descendant of this composit. .. method:: FindContainerImage(self) Finds the image used to visualize a container. This is any child of the composite that is not in the divisions list. .. method:: GetConstraints(self) Return the list of constraints. .. method:: GetDivisions(self) Return the list of divisions. .. method:: MakeContainer(self) Makes this composite into a container by creating one child DivisionShape. .. method:: OnBeginDragLeft(self, x, y, keys = 0, attachment = 0) The begin drag left handler. .. method:: OnCreateDivision(self) Create division handler. .. method:: OnDragLeft(self, draw, x, y, keys = 0, attachment = 0) The drag left handler. .. method:: OnDraw(self, dc) The draw handler. .. method:: OnDrawContents(self, dc) The draw contents handler. .. method:: OnEndDragLeft(self, x, y, keys = 0, attachment = 0) The end drag left handler. .. method:: OnErase(self, dc) The erase handler. .. method:: OnMovePre(self, dc, x, y, old_x, old_y, display = True) The move 'pre' handler. .. method:: OnRightClick(self, x, y, keys = 0, attachment = 0) The right click handler. .. note:: If we get a ctrl-right click, this means send the message to the division, so we can invoke a user interface for dealing with regions. .. method:: Recompute(self) Recomputes any constraints associated with the object. If `False` is returned, the constraints could not be satisfied (there was an inconsistency). .. method:: RemoveChild(self, child) Removes the child from the composite and any constraint relationships, but does not delete the child. :param `child`: an instance of :class:`~lib.ogl.Shape` .. method:: RemoveChildFromConstraints(self, child) Removes the child from the constraints. :param `child`: an instance of :class:`~lib.ogl.Shape` .. method:: SetSize(self, w, h, recursive = True) Set the size. :param `w`: the width :param `h`: the height :param `recursive`: size the children recursively