Skip to content
Snippets Groups Projects
user avatar
Enric Tejedor Saavedra authored
When drawing a TPad, it gets added to the list of primititves of its
mother TPad (fMother) with kCanDelete == 1. This means that, when
fMother is destructed, it will attempt to destroy its child TPad too.
To prevent a double delete, here we instruct the Python proxy of the
child C++ TPad being drawn not to destroy the latter (ROOT-10060).

A similar principle is applied to TButton, TColorWheel, TPolyLine3D,
TPolyMarker and TPolyMarker3D, whose kCanDelete bit is set in one of
their constructors. Later, when being drawn, they are appended to
the list of primitives of gPad.

TSlider is a special case, since it is appended to gPad already
in one of its constructors, after setting kCanDelete.
Therefore, we need to set the ownership when constructing the
object and not in Draw (TSlider does not need to be drawn).
This is ROOT-10095.
4f2b6f75
History
Name Last commit Last update
..