3

The TPropertyAttributes set in the DesignIntf unit includes the paVCL flag. However, the purpose of this flag is not documented. I found a reference (in German) that suggested that the property editor was a WinCLX property editor, but that doesn't sound right.

What does the paVCL flag of the TPropertyAttributes set indicate about the resulting property editor?

Cary Jensen
  • 3,751
  • 3
  • 32
  • 55

1 Answers1

2

I'm pretty sure that your reference is correct.

Several of the uses of paVCL in the source outside DesignIntf (in BindCompDBReg, BindCompReg, ColnEdit, FldLinks, LMidReg, and VclDBReg) are surrounded by {$IFDEF LINUX} blocks, and this define first appeared in Delphi 6 when CLX was added for Kylix.

It appears to indicate that the property editor is relevant only to the VCL version of the component, which is most likely because of the way CLX was integrated into things. (CLX used the same component names and most of the same properties and types, and was really only differentiated by having a Q at the beginning of the unit names. The VCL used Forms, for instance, while CLX used QForms; in the actual code that used TForm, however, there were almost no differences between them.)

Ken White
  • 123,280
  • 14
  • 225
  • 444
  • 1
    This makes a lot of sense. What threw me about the German reference is that it implied that the property editor was a CLX property editor, when in fact it is a VCL property editor that CLX components needed to not use. At least that is how I am reading this. Thanks for the answer. – Cary Jensen Apr 03 '14 at 19:16