TAdvPanelStyler

Why does TAdvPanelStyler change height of Caption and StatusBar? He should not.

TAdvPanelStyler, when connected controls the appearance of the panel. The caption height is configurable under TAdvPanelStyler.Caption and thus controls the caption height.

I don't know if I understand correctly.
At design time, I have a height of 30. After assigning Styler (programmatically), the height is 20.

Let me put it this way



procedure TAppearance.CarejstAdvPanel(const AComp: TjstAdvPanel);
var
  iCaptionHeight, iStatusBarHeight: Integer;
  bCanSize: Boolean;
begin
  AComp.ParentDoubleBuffered := True;
  bCanSize := AComp.CanSize;
  iCaptionHeight := AComp.Caption.Height;
  iStatusBarHeight := AComp.StatusBar.Height;
  AComp.ParentColor := False;
  AComp.ParentBackground := False;
  AComp.ParentFont := True;
  SupObjJson.ReadjstPanel(AComp);
  AComp.CanSize := bCanSize;


  if not AComp.StaticColor then
    AComp.Styler := FTSMCentre.AdvPanelStyler;


  AComp.Caption.Height := iCaptionHeight;
  AComp.StatusBar.Height := iStatusBarHeight;
end;

Again, if you use the TAdvPanelStyler, use TAdvPanelStyler.Settings.Caption.Height

Now I understand.

It won't leave me alone. If I set something in design time (Caption, StatusBar height, etc.), each styler should honor it and keep the value I entered. Otherwise I have to do extra work.
Especially it will surprise a man and he does not know what he has ruined again.
It is my opinion and you do not have to identify/cannot with it.

The specification is that when you use a styler, the styler controls the look (consistently for all panels for which it is used). If you do not want the styler to control the look, don't use a styler and set everything directly at the level of the panel. 
Please accept this as my final answer.