In most of our program, we nest forms inside other forms. With our previous visual themes we never ran into problems with this, but with the new components I'm not quite sure how to achieve the visual effect I desire. Refer to the screenshot below:

Basically we instantiate forms, make sure they have no border, and then set their Parent property to be some panel or other TWinControl located in another form. The nested "child" form is then aligned to client so that it fills the parent panel, allowing it to know just how much room it has to work with and resize its own child controls appropriately. The code for this is rather simple:
{
TForm1* form = new TForm1(this);
form->Parent = ParentPanel;
form->Align = alClient;
form->Show();
}
The problem with this approach is that the child form's client area draws over the parent panel (in the image you can see where the parent TsPanel with skin of PANEL_LOW is overdrawn by a solid blue color, which is where the child form starts). I've tried using a TsSkinProvider component to draw the child form's client area in a transparent way (i.e. setting the skin section to CHECKBOX or MENUITEM), but with no success.
Another quirk I noticed is that with certain skins, when speed or bit buttons are drawn in a disabled state (with dkGrayed and dkBlending enabled), you sometimes see the whole button appear slightly gray instead of just the glyph itself being gray. This is very noticeable in some skins but not at all in others, which makes me wonder if it's a property of the skin itself?

Help















