RE: Something is missing in Component Pascal

From: [at]} <support{>
Date: Thu, 3 Jul 2003 17:46:07 +0200

----boundary-LibPST-iamunique-1769054787_-_-
Content-type: text/plain

Dear Wojtek,


Having read your recent contributions to the BlackBox mailinglist I would
like to emphasize some important points:

1) Turning stack-allocated record objects into pointers that can be stored
in heap objects is outright live-threatening. Next time the garbage
collector runs, BlackBox will most likely vanish from your screen, because
stack objects are collected upon return of the containing procedure. That's
why the language does not support this.

2) Your question indicates that you keep walking deeper and deeper into a
maze that has no exit and that you should not have entered in the first
place. To store the data you are displaying in your dialog the example
posted by Marc Matin is absolutely the right approach here, only in your
case not all record fields are simple types and you will have to write a few
lines of code to traverse the tree the tree control binds to.

3) To store data you can use Stores.Writer and Reader (i.e. the Rider
concept) without having to create a Stores.Store. Just process the record
field by field and call the appropriate rider methods. On a first glimpse,
this field-wise writing may seem inconvenient, but when using a Stores.Store
you'll have to do exactly the same thing just at a different place: in the
Externalize method.


Regards,

Wolfgang,
Oberon microsystems, Inc.

--------------------------------------------

To unsubscribe from this mailing list, send a message containing the word "unsubscribe" to:
   blackbox-request{([at]})nowhere.xy

To get a list of valid e-mail commands and instructions on their usage, send a message containing the word "help" to the above address.

Send any problem reports or questions related to this email list to the list owner at
   owner-blackbox{([at]})nowhere.xy

Current posting policy:

a) To post you should use the same address by which you are subscribed to the mailing list. That way, the list server will recognize you as subscriber and forward your posting immediately, without creating any overhead.

b) If, for some reason, you cannot post from the address, by which you are subscribed, your message will be moderated to avoid spam. Please understand that moderation will often cause some delay, in particular over weekends or holydays.


----boundary-LibPST-iamunique-1769054787_-_-
Content-type: application/rtf
Content-transfer-encoding: base64
Content-Disposition: attachment; filename="rtf-body.rtf"

e1xydGYxXGFuc2lcYW5zaWNwZzEyNTJcZnJvbXRleHQgXGRlZmYwe1xmb250dGJsDQp7XGYwXGZz
d2lzcyBBcmlhbDt9DQp7XGYxXGZtb2Rlcm4gQ291cmllciBOZXc7fQ0Ke1xmMlxmbmlsXGZjaGFy
c2V0MiBTeW1ib2w7fQ0Ke1xmM1xmbW9kZXJuXGZjaGFyc2V0MCBDb3VyaWVyIE5ldzt9fQ0Ke1xj
b2xvcnRibFxyZWQwXGdyZWVuMFxibHVlMDtccmVkMFxncmVlbjBcYmx1ZTI1NTt9DQpcdWMxXHBh
cmRccGxhaW5cZGVmdGFiMzYwIFxmMFxmczIwIERlYXIgV29qdGVrLFxwYXINClxwYXINClxwYXIN
CkhhdmluZyByZWFkIHlvdXIgcmVjZW50IGNvbnRyaWJ1dGlvbnMgdG8gdGhlIEJsYWNrQm94IG1h
aWxpbmdsaXN0IEkgd291bGRccGFyDQpsaWtlIHRvIGVtcGhhc2l6ZSBzb21lIGltcG9ydGFudCBw
b2ludHM6XHBhcg0KXHBhcg0KMSkgVHVybmluZyBzdGFjay1hbGxvY2F0ZWQgcmVjb3JkIG9iamVj
dHMgaW50byBwb2ludGVycyB0aGF0IGNhbiBiZSBzdG9yZWRccGFyDQppbiBoZWFwIG9iamVjdHMg
aXMgb3V0cmlnaHQgbGl2ZS10aHJlYXRlbmluZy4gTmV4dCB0aW1lIHRoZSBnYXJiYWdlXHBhcg0K
Y29sbGVjdG9yIHJ1bnMsIEJsYWNrQm94IHdpbGwgbW9zdCBsaWtlbHkgdmFuaXNoIGZyb20geW91
ciBzY3JlZW4sIGJlY2F1c2VccGFyDQpzdGFjayBvYmplY3RzIGFyZSBjb2xsZWN0ZWQgdXBvbiBy
ZXR1cm4gb2YgdGhlIGNvbnRhaW5pbmcgcHJvY2VkdXJlLiBUaGF0J3NccGFyDQp3aHkgdGhlIGxh
bmd1YWdlIGRvZXMgbm90IHN1cHBvcnQgdGhpcy5ccGFyDQpccGFyDQoyKSBZb3VyIHF1ZXN0aW9u
IGluZGljYXRlcyB0aGF0IHlvdSBrZWVwIHdhbGtpbmcgZGVlcGVyIGFuZCBkZWVwZXIgaW50byBh
XHBhcg0KbWF6ZSB0aGF0IGhhcyBubyBleGl0IGFuZCB0aGF0IHlvdSBzaG91bGQgbm90IGhhdmUg
ZW50ZXJlZCBpbiB0aGUgZmlyc3RccGFyDQpwbGFjZS4gVG8gc3RvcmUgdGhlIGRhdGEgeW91IGFy
ZSBkaXNwbGF5aW5nIGluIHlvdXIgZGlhbG9nIHRoZSBleGFtcGxlXHBhcg0KcG9zdGVkIGJ5IE1h
cmMgTWF0aW4gaXMgYWJzb2x1dGVseSB0aGUgcmlnaHQgYXBwcm9hY2ggaGVyZSwgb25seSBpbiB5
b3VyXHBhcg0KY2FzZSBub3QgYWxsIHJlY29yZCBmaWVsZHMgYXJlIHNpbXBsZSB0eXBlcyBhbmQg
eW91IHdpbGwgaGF2ZSB0byB3cml0ZSBhIGZld1xwYXINCmxpbmVzIG9mIGNvZGUgdG8gdHJhdmVy
c2UgdGhlIHRyZWUgdGhlIHRyZWUgY29udHJvbCBiaW5kcyB0by5ccGFyDQpccGFyDQozKSBUbyBz
dG9yZSBkYXRhIHlvdSBjYW4gdXNlIFN0b3Jlcy5Xcml0ZXIgYW5kIFJlYWRlciAoaS5lLiB0aGUg
UmlkZXJccGFyDQpjb25jZXB0KSB3aXRob3V0IGhhdmluZyB0byBjcmVhdGUgYSBTdG9yZXMuU3Rv
cmUuIEp1c3QgcHJvY2VzcyB0aGUgcmVjb3JkXHBhcg0KZmllbGQgYnkgZmllbGQgYW5kIGNhbGwg
dGhlIGFwcHJvcHJpYXRlIHJpZGVyIG1ldGhvZHMuIE9uIGEgZmlyc3QgZ2xpbXBzZSxccGFyDQp0
aGlzIGZpZWxkLXdpc2Ugd3JpdGluZyBtYXkgc2VlbSBpbmNvbnZlbmllbnQsIGJ1dCB3aGVuIHVz
aW5nIGEgU3RvcmVzLlN0b3JlXHBhcg0KeW91J2xsIGhhdmUgdG8gZG8gZXhhY3RseSB0aGUgc2Ft
ZSB0aGluZyBqdXN0IGF0IGEgZGlmZmVyZW50IHBsYWNlOiBpbiB0aGVccGFyDQpFeHRlcm5hbGl6
ZSBtZXRob2QuXHBhcg0KXHBhcg0KXHBhcg0KUmVnYXJkcyxccGFyDQpccGFyDQpXb2xmZ2FuZyxc
cGFyDQpPYmVyb24gbWljcm9zeXN0ZW1zLCBJbmMuXHBhcg0KXHBhcg0KLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1ccGFyDQpccGFyDQpUbyB1bnN1YnNjcmliZSBm
cm9tIHRoaXMgbWFpbGluZyBsaXN0LCBzZW5kIGEgbWVzc2FnZSBjb250YWluaW5nIHRoZSB3b3Jk
ICJ1bnN1YnNjcmliZSIgdG86XHBhcg0KICAgYmxhY2tib3gtcmVxdWVzdEBvYmVyb24uY2hccGFy
DQpccGFyDQpUbyBnZXQgYSBsaXN0IG9mIHZhbGlkIGUtbWFpbCBjb21tYW5kcyBhbmQgaW5zdHJ1
Y3Rpb25zIG9uIHRoZWlyIHVzYWdlLCBzZW5kIGEgbWVzc2FnZSBjb250YWluaW5nIHRoZSB3b3Jk
ICJoZWxwIiB0byB0aGUgYWJvdmUgYWRkcmVzcy5ccGFyDQpccGFyDQpTZW5kIGFueSBwcm9ibGVt
IHJlcG9ydHMgb3IgcXVlc3Rpb25zIHJlbGF0ZWQgdG8gdGhpcyBlbWFpbCBsaXN0IHRvIHRoZSBs
aXN0IG93bmVyIGF0XHBhcg0KICAgb3duZXItYmxhY2tib3hAb2Jlcm9uLmNoXHBhcg0KXHBhcg0K
Q3VycmVudCBwb3N0aW5nIHBvbGljeTpccGFyDQpccGFyDQphKSBUbyBwb3N0IHlvdSBzaG91bGQg
dXNlIHRoZSBzYW1lIGFkZHJlc3MgYnkgd2hpY2ggeW91IGFyZSBzdWJzY3JpYmVkIHRvIHRoZSBt
YWlsaW5nIGxpc3QuIFRoYXQgd2F5LCB0aGUgbGlzdCBzZXJ2ZXIgd2lsbCByZWNvZ25pemUgeW91
IGFzIHN1YnNjcmliZXIgYW5kIGZvcndhcmQgeW91ciBwb3N0aW5nIGltbWVkaWF0ZWx5LCB3aXRo
b3V0IGNyZWF0aW5nIGFueSBvdmVyaGVhZC5ccGFyDQpccGFyDQpiKSBJZiwgZm9yIHNvbWUgcmVh
c29uLCB5b3UgY2Fubm90IHBvc3QgZnJvbSB0aGUgYWRkcmVzcywgYnkgd2hpY2ggeW91IGFyZSBz
dWJzY3JpYmVkLCB5b3VyIG1lc3NhZ2Ugd2lsbCBiZSBtb2RlcmF0ZWQgdG8gYXZvaWQgc3BhbS4g
UGxlYXNlIHVuZGVyc3RhbmQgdGhhdCBtb2RlcmF0aW9uIHdpbGwgb2Z0ZW4gY2F1c2Ugc29tZSBk
ZWxheSwgaW4gcGFydGljdWxhciBvdmVyIHdlZWtlbmRzIG9yIGhvbHlkYXlzfX0AAAAAAAA=


----boundary-LibPST-iamunique-1769054787_-_---
Received on Thu Jul 03 2003 - 17:46:07 UTC

This archive was generated by hypermail 2.3.0 : Thu Sep 26 2013 - 06:29:09 UTC