RE: eliminate EXTENSIBLE types?

From: CFB Software <"CFB>
Date: Mon, 4 Oct 2004 09:55:11 +0930

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

> -----Original Message-----
> From: Fyodor Tkachov [mailto:fyodor.tkachov{([at]})nowhere.xy
> Sent: Sunday, 3 October 2004 11:06 PM
> To: Blackbox Mailing-List
> Cc: H. v. L.; CFB Software
> Subject: Re: eliminate EXTENSIBLE types?
>
> Chris, could you expand a little on why you must use EXTENSIBLE's
> within .NET?
>

Super calls are needed in .NET when working with a WinForms Form to Dispose
of the resources (other than memory) used by the Form.

WinForms Forms are extensions of the Framework type:

  System.Windows.Forms.Form

Typically, when implementing a WinForms Form using Gardens Point Component
Pascal you would declare an extended type:

TYPE
  MenuForm* = POINTER TO RECORD (Wfm.Form)
    mainMenu: Wfm.MainMenu;
    statusBar: Wfm.StatusBar;
    printPreviewDialog: Wfm.PrintPreviewDialog;
    ...
    ...

You are also expected to provide a Dispose method for this descendant type
which calls the base type's Dispose method via a super call. e.g.

PROCEDURE (frm: MenuForm) Dispose*(disposing: BOOLEAN);
BEGIN
  IF disposing THEN
    IF frm.components # NIL THEN
      frm.components.Dispose();
    END;
    frm.Dispose^(disposing);
  END;
END Dispose;

For more details, go to:

http://msdn.microsoft.com/netframework/

Search for "Form.Dispose Method" and read the contents of the returned topic
"Form.Dispose Method (Boolean) (.NET Framework)".

Chris Burrows
CFB Software
http://www.cfbsoftware.com/gpcp

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

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-196797611_-_-
Content-type: application/rtf
Content-transfer-encoding: base64
Content-Disposition: attachment; filename="rtf-body.rtf"

e1xydGYxXGFuc2lcYW5zaWNwZzEyNTJcZnJvbXRleHQgXGRlZmYwe1xmb250dGJsDQp7XGYwXGZz
d2lzcyBBcmlhbDt9DQp7XGYxXGZtb2Rlcm4gQ291cmllciBOZXc7fQ0Ke1xmMlxmbmlsXGZjaGFy
c2V0MiBTeW1ib2w7fQ0Ke1xmM1xmbW9kZXJuXGZjaGFyc2V0MCBDb3VyaWVyIE5ldzt9fQ0Ke1xj
b2xvcnRibFxyZWQwXGdyZWVuMFxibHVlMDtccmVkMFxncmVlbjBcYmx1ZTI1NTt9DQpcdWMxXHBh
cmRccGxhaW5cZGVmdGFiMzYwIFxmMFxmczIwID4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS1c
cGFyDQo+IEZyb206IEZ5b2RvciBUa2FjaG92IFttYWlsdG86ZnlvZG9yLnRrYWNob3ZAY2Vybi5j
aF1ccGFyDQo+IFNlbnQ6IFN1bmRheSwgMyBPY3RvYmVyIDIwMDQgMTE6MDYgUE1ccGFyDQo+IFRv
OiBCbGFja2JveCBNYWlsaW5nLUxpc3RccGFyDQo+IENjOiBILiB2LiBMLjsgQ0ZCIFNvZnR3YXJl
XHBhcg0KPiBTdWJqZWN0OiBSZTogZWxpbWluYXRlIEVYVEVOU0lCTEUgdHlwZXM/XHBhcg0KPlxw
YXINCj4gQ2hyaXMsIGNvdWxkIHlvdSBleHBhbmQgYSBsaXR0bGUgb24gd2h5IHlvdSBtdXN0IHVz
ZSBFWFRFTlNJQkxFJ3NccGFyDQo+IHdpdGhpbiAuTkVUP1xwYXINCj5ccGFyDQpccGFyDQpTdXBl
ciBjYWxscyBhcmUgbmVlZGVkIGluIC5ORVQgd2hlbiB3b3JraW5nIHdpdGggYSBXaW5Gb3JtcyBG
b3JtIHRvIERpc3Bvc2VccGFyDQpvZiB0aGUgcmVzb3VyY2VzIChvdGhlciB0aGFuIG1lbW9yeSkg
dXNlZCBieSB0aGUgRm9ybS5ccGFyDQpccGFyDQpXaW5Gb3JtcyBGb3JtcyBhcmUgZXh0ZW5zaW9u
cyBvZiB0aGUgRnJhbWV3b3JrIHR5cGU6XHBhcg0KXHBhcg0KICBTeXN0ZW0uV2luZG93cy5Gb3Jt
cy5Gb3JtXHBhcg0KXHBhcg0KVHlwaWNhbGx5LCB3aGVuIGltcGxlbWVudGluZyBhIFdpbkZvcm1z
IEZvcm0gdXNpbmcgR2FyZGVucyBQb2ludCBDb21wb25lbnRccGFyDQpQYXNjYWwgeW91IHdvdWxk
IGRlY2xhcmUgYW4gZXh0ZW5kZWQgdHlwZTpccGFyDQpccGFyDQpUWVBFXHBhcg0KICBNZW51Rm9y
bSogPSBQT0lOVEVSIFRPIFJFQ09SRCAoV2ZtLkZvcm0pXHBhcg0KICAgIG1haW5NZW51OiBXZm0u
TWFpbk1lbnU7XHBhcg0KICAgIHN0YXR1c0JhcjogV2ZtLlN0YXR1c0JhcjtccGFyDQogICAgcHJp
bnRQcmV2aWV3RGlhbG9nOiBXZm0uUHJpbnRQcmV2aWV3RGlhbG9nO1xwYXINCiAgICAuLi5ccGFy
DQogICAgLi4uXHBhcg0KXHBhcg0KWW91IGFyZSBhbHNvIGV4cGVjdGVkIHRvIHByb3ZpZGUgYSBE
aXNwb3NlIG1ldGhvZCBmb3IgdGhpcyBkZXNjZW5kYW50IHR5cGVccGFyDQp3aGljaCBjYWxscyB0
aGUgYmFzZSB0eXBlJ3MgRGlzcG9zZSBtZXRob2QgdmlhIGEgc3VwZXIgY2FsbC4gZS5nLlxwYXIN
ClxwYXINClBST0NFRFVSRSAoZnJtOiBNZW51Rm9ybSkgRGlzcG9zZSooZGlzcG9zaW5nOiBCT09M
RUFOKTtccGFyDQpCRUdJTlxwYXINCiAgSUYgZGlzcG9zaW5nIFRIRU5ccGFyDQogICAgSUYgZnJt
LmNvbXBvbmVudHMgIyBOSUwgVEhFTlxwYXINCiAgICAgIGZybS5jb21wb25lbnRzLkRpc3Bvc2Uo
KTtccGFyDQogICAgRU5EO1xwYXINCiAgICBmcm0uRGlzcG9zZV4oZGlzcG9zaW5nKTtccGFyDQog
IEVORDtccGFyDQpFTkQgRGlzcG9zZTtccGFyDQpccGFyDQpGb3IgbW9yZSBkZXRhaWxzLCBnbyB0
bzpccGFyDQpccGFyDQpodHRwOi8vbXNkbi5taWNyb3NvZnQuY29tL25ldGZyYW1ld29yay9ccGFy
DQpccGFyDQpTZWFyY2ggZm9yICJGb3JtLkRpc3Bvc2UgTWV0aG9kIiBhbmQgcmVhZCB0aGUgY29u
dGVudHMgb2YgdGhlIHJldHVybmVkIHRvcGljXHBhcg0KIkZvcm0uRGlzcG9zZSBNZXRob2QgKEJv
b2xlYW4pICguTkVUIEZyYW1ld29yaykiLlxwYXINClxwYXINCkNocmlzIEJ1cnJvd3NccGFyDQpD
RkIgU29mdHdhcmVccGFyDQpodHRwOi8vd3d3LmNmYnNvZnR3YXJlLmNvbS9ncGNwXHBhcg0KXHBh
cg0KLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1ccGFyDQpccGFy
DQpUbyB1bnN1YnNjcmliZSBmcm9tIHRoaXMgbWFpbGluZyBsaXN0LCBzZW5kIGEgbWVzc2FnZSBj
b250YWluaW5nIHRoZSB3b3JkICJ1bnN1YnNjcmliZSIgdG86XHBhcg0KICAgYmxhY2tib3gtcmVx
dWVzdEBvYmVyb24uY2hccGFyDQpccGFyDQpUbyBnZXQgYSBsaXN0IG9mIHZhbGlkIGUtbWFpbCBj
b21tYW5kcyBhbmQgaW5zdHJ1Y3Rpb25zIG9uIHRoZWlyIHVzYWdlLCBzZW5kIGEgbWVzc2FnZSBj
b250YWluaW5nIHRoZSB3b3JkICJoZWxwIiB0byB0aGUgYWJvdmUgYWRkcmVzcy5ccGFyDQpccGFy
DQpTZW5kIGFueSBwcm9ibGVtIHJlcG9ydHMgb3IgcXVlc3Rpb25zIHJlbGF0ZWQgdG8gdGhpcyBl
bWFpbCBsaXN0IHRvIHRoZSBsaXN0IG93bmVyIGF0XHBhcg0KICAgb3duZXItYmxhY2tib3hAb2Jl
cm9uLmNoXHBhcg0KXHBhcg0KQ3VycmVudCBwb3N0aW5nIHBvbGljeTpccGFyDQpccGFyDQphKSBU
byBwb3N0IHlvdSBzaG91bGQgdXNlIHRoZSBzYW1lIGFkZHJlc3MgYnkgd2hpY2ggeW91IGFyZSBz
dWJzY3JpYmVkIHRvIHRoZSBtYWlsaW5nIGxpc3QuIFRoYXQgd2F5LCB0aGUgbGlzdCBzZXJ2ZXIg
d2lsbCByZWNvZ25pemUgeW91IGFzIHN1YnNjcmliZXIgYW5kIGZvcndhcmQgeW91ciBwb3N0aW5n
IGltbWVkaWF0ZWx5LCB3aXRob3V0IGNyZWF0aW5nIGFueSBvdmVyaGVhZC5ccGFyDQpccGFyDQpi
KSBJZiwgZm9yIHNvbWUgcmVhc29uLCB5b3UgY2Fubm90IHBvc3QgZnJvbSB0aGUgYWRkcmVzcywg
Ynkgd2hpY2ggeW91IGFyZSBzdWJzY3JpYmVkLCB5b3VyIG1lc3NhZ2Ugd2lsbCBiZSBtb2RlcmF0
ZWQgdG8gYXZvaWQgc3BhbS4gUGxlYXNlIHVuZGVyc3RhbmQgdGhhdCBtb2RlcmF0aW9uIHdpbGwg
b2Z0ZW4gY2F1c2Ugc29tZSBkZWxheSwgaW4gcGFydGljdWxhciBvdmVyIHdlZWtlbmRzIG9yIGhv
bHlkYXl9fQAZnW4A3QE=


----boundary-LibPST-iamunique-196797611_-_---
Received on Mon Oct 04 2004 - 02:25:11 UTC

This archive was generated by hypermail 2.3.0 : Thu Sep 26 2013 - 06:28:35 UTC