@Josh,
hi,
In fact:1. only TCocoaWidgetSet.Frame3d() chaned to be consistent with Win32
2. on MacOS, there is no corresponding control for TPanel.
the implementation of TPanel on Cocoa over the years is a transparent area with no appearance and is only responsible for Group management.
the so-called appearance is just a side effect of calling Frame3d() when processing the BevelInner and BevelOuter properties. the original implementation of Frame3d() calls NSBox to draw the border, but NSBox will force the background to be filled, which happens to give the user the feeling of a GroupBox without Caption.
IMPO:1. the original intention of TPanel is to logically manage components in groups, while the meaning of TGroupBox includes both group management (Group) and appearance (Box).
2. the biggest problem with the original TPanel Style is that it forces the background color to be set, which mixes the two concepts of group management and appearance. Especially it is not friendly to nested TPanel.
3. if we want to manage by group and need visual effect, TGroupBox should be more appropriate. it's not a purely theoretical judgment, for Lazarus IDE and Double Commander, two GUI-heavy apps, they follow this rule, always use TGroupBox instead of TPanel when it needs visual grouping.
4. why we rely TPanel to produce the rounded corner effect on MacOS? it just because NSBox was used in Frame3d() to draw the border before. after using it for a long time, the side effect becomes a habit. we should actually use TGroupBox in this case.
However:both styles supported on Cocoa now.
reading bugtracker, i do not understand why any MacOS Developer would want the tpanel to mimick a Win32 Panel.
adding an extra style would be poblematic, ie if you add a style bsNative for Cocoa, what happens when you x compile to Windows that Style is not defined.
I do not recall any user complaining that the old tpanel appearance was bad/faulty or ugly.
The change however seems to disprove the saying 'If it aint broke, don't fix it'.
As i cant chck anyhing yet, what does an nswindow look like, does it have rounded corners?