Provided by: libdrawtk-dev_2.0-2ubuntu1_amd64 bug


       dtk_create_composite_shape - Create or modify a shape holding other shapes


       #include <drawtk.h>

       dtk_hshape dtk_create_composite_shape(dtk_hshape shp,
                                             unsigned int num,
                                             const dtk_hshape *list,
                                             int free_children);


       dtk_create_composite_shape() creates a shape made of num different shapes specified by the
       array list. When dtk_draw_shape(3) is called on the composite shape, all referenced shapes
       will  be  rendered  in  the  order of list. The composite shape create its own copy of the
       shape list, so there is no need to keep the array pointed  by  list  allocated  after  the
       function returns.

       If  free_children is a non-zero value, the destruction of the composite shape will destroy
       the underlaying shapes. If free_children is zero,  destroying  the  composite  shape  will
       leave  the  referenced  shapes untouched, so that dtk_destroy_shape() should be called for
       all individual shapes.

       shp can be used to modify a previously created shape. If it is non-null, the  handle  will
       be  used  to  modify the shape referenced by shp: no new shape is created and the returned
       value is ensured to be shp in case of  success,  NULL  otherwise.  If  shp  is  NULL,  the
       function will attempt to create a new shape.


       In case of success the function returns the handle to the newly created or modified shape.
       If the shp argument is non-null, the handle returned is the same value. In case of  error,
       NULL is returned.


       dtk_destroy_shape(3), dtk_create_shape(3)