[Okta Webinar] Learn how to a build a cloud-first strategyRegister Now

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 158
  • Last Modified:

saving set of sets property larger than > 4byte

I have made set of set type and tried to use in Published property, but published property won't let use set properties which is larger than 4byte.
What shall I do to make this property saved to DFM file?

you can try out this by defining a set type which has more set numbers than 32, like "TMySet" then define another 'set of' type like "TMySets = set of TMySet"
0
RogerKim
Asked:
RogerKim
  • 3
  • 2
1 Solution
 
sperlingCommented:
Delphi 1 or 2?

Regards,

Erik.
0
 
RogerKimAuthor Commented:
delphi 2.0
0
 
RogerKimAuthor Commented:
delphi 2.0
0
 
RogerKimAuthor Commented:
delphi 2.0
0
 
sperlingCommented:
property SomeSet : TSomeSet read FSomeSet write FSomeSet stored true;

Declare property like this in *public* section. It's just not possible to use it in the published section, but appending a "stored true" will at least save it.

To access it at design time, you need to create some bogus properties.

e.g, you have Options : TOptions in public section

Declare "Options1 : TOptions1" and "Options2 : TOptions2" in published section, append a "stored false" to these.
TOptions1 should include one half of the TOptions set, and TOptions2 the other half.

In the "Options1Set" and "Options2Set" methods, modify the value of the original "Options".

This is the simplest way to get access to set properties larger than 32 bit. Run-time, you'll ofcourse still be able to access the original Options property.

Another approach would be to implement your own property editor, and publish a bogus property which you use as a reference to the actual set value. This is quite some work, though.


Regards,

Erik.
0

Featured Post

Concerto's Cloud Advisory Services

Want to avoid the missteps to gaining all the benefits of the cloud? Learn more about the different assessment options from our Cloud Advisory team.

  • 3
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now