- Dialog: Copying data in order to display it

From: Douglas G. Danforth <"Douglas>
Date: Thu, 26 May 2005 11:22:10 -0400

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

Campbell, Robert D (UK Edinburgh) wrote:
> If a Control is linked via a Pointer,
> and you change the pointer at runtime,
> you can force a re-association of the Control
> by calling 'Controls.Relink'.
>
> Quite how BBox knows which Control to relink
> I don't know.
> It is very many years since I used this (as a programmer),
> so my understanding is rusty, but the tools that I
> wrote then are used every day.
>
> Cheers, Robert.

Interesting. I have never considered pointer changing so I wrote a test
program and now understand. The following Update procedure does not
reflect a change in the form whereas the RelinkAndUpdate does.
-Doug

MODULE Foo;
IMPORT Dialog, Controls;

TYPE
   P* = POINTER TO RECORD
             byte*: BYTE;
          END;
VAR
   p*: P;
   q1: P;
   q2: P;

PROCEDURE Update*;
BEGIN
   p := q2;
   Dialog.Update(p^)
END Update;

  PROCEDURE RelinkAndUpdate*;
BEGIN
   p := q2;
   Controls.Relink;
   Dialog.Update(p^)
END RelinkAndUpdate;

BEGIN
   NEW(q1); q1.byte := 1;
   NEW(q2); q2.byte := 2;
   p := q1;
END Foo.

--- BlackBox
--- send subject HELP or UNSUBSCRIBE to blackbox{([at]})nowhere.xy



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

e1xydGYxXGFuc2lcYW5zaWNwZzEyNTJcZnJvbXRleHQgXGRlZmYwe1xmb250dGJsDQp7XGYwXGZz
d2lzcyBBcmlhbDt9DQp7XGYxXGZtb2Rlcm4gQ291cmllciBOZXc7fQ0Ke1xmMlxmbmlsXGZjaGFy
c2V0MiBTeW1ib2w7fQ0Ke1xmM1xmbW9kZXJuXGZjaGFyc2V0MCBDb3VyaWVyIE5ldzt9fQ0Ke1xj
b2xvcnRibFxyZWQwXGdyZWVuMFxibHVlMDtccmVkMFxncmVlbjBcYmx1ZTI1NTt9DQpcdWMxXHBh
cmRccGxhaW5cZGVmdGFiMzYwIFxmMFxmczIwIENhbXBiZWxsLCBSb2JlcnQgRCAoVUsgRWRpbmJ1
cmdoKSB3cm90ZTpccGFyDQo+IElmIGEgQ29udHJvbCBpcyBsaW5rZWQgdmlhIGEgUG9pbnRlcixc
cGFyDQo+IGFuZCB5b3UgY2hhbmdlIHRoZSBwb2ludGVyIGF0IHJ1bnRpbWUsXHBhcg0KPiB5b3Ug
Y2FuIGZvcmNlIGEgcmUtYXNzb2NpYXRpb24gb2YgdGhlIENvbnRyb2xccGFyDQo+IGJ5IGNhbGxp
bmcgJ0NvbnRyb2xzLlJlbGluaycuXHBhcg0KPiBccGFyDQo+IFF1aXRlIGhvdyBCQm94IGtub3dz
IHdoaWNoIENvbnRyb2wgdG8gcmVsaW5rXHBhcg0KPiBJIGRvbid0IGtub3cuXHBhcg0KPiBJdCBp
cyB2ZXJ5IG1hbnkgeWVhcnMgc2luY2UgSSB1c2VkIHRoaXMgKGFzIGEgcHJvZ3JhbW1lciksXHBh
cg0KPiBzbyBteSB1bmRlcnN0YW5kaW5nIGlzIHJ1c3R5LCBidXQgdGhlIHRvb2xzIHRoYXQgSVxw
YXINCj4gd3JvdGUgdGhlbiBhcmUgdXNlZCBldmVyeSBkYXkuXHBhcg0KPiBccGFyDQo+IENoZWVy
cywgUm9iZXJ0LlxwYXINClxwYXINCkludGVyZXN0aW5nLiAgSSBoYXZlIG5ldmVyIGNvbnNpZGVy
ZWQgcG9pbnRlciBjaGFuZ2luZyBzbyBJIHdyb3RlIGEgdGVzdCBccGFyDQpwcm9ncmFtIGFuZCBu
b3cgdW5kZXJzdGFuZC4gIFRoZSBmb2xsb3dpbmcgVXBkYXRlIHByb2NlZHVyZSBkb2VzIG5vdCBc
cGFyDQpyZWZsZWN0IGEgY2hhbmdlIGluIHRoZSBmb3JtIHdoZXJlYXMgdGhlIFJlbGlua0FuZFVw
ZGF0ZSBkb2VzLlxwYXINCi1Eb3VnXHBhcg0KXHBhcg0KTU9EVUxFIEZvbztccGFyDQpJTVBPUlQg
RGlhbG9nLCBDb250cm9scztccGFyDQpccGFyDQpUWVBFXHBhcg0KICAgUCogPSBQT0lOVEVSIFRP
IFJFQ09SRFxwYXINCiAgICAgICAgICAgICBieXRlKjogQllURTtccGFyDQogICAgICAgICAgRU5E
O1xwYXINClZBUlxwYXINCiAgIHAqOiAgUDtccGFyDQogICBxMTogIFA7XHBhcg0KICAgcTI6ICBQ
O1xwYXINClxwYXINClBST0NFRFVSRSBVcGRhdGUqO1xwYXINCkJFR0lOXHBhcg0KICAgcCA6PSBx
MjtccGFyDQogICBEaWFsb2cuVXBkYXRlKHBeKVxwYXINCkVORCBVcGRhdGU7XHBhcg0KXHBhcg0K
ICBQUk9DRURVUkUgUmVsaW5rQW5kVXBkYXRlKjtccGFyDQpCRUdJTlxwYXINCiAgIHAgOj0gcTI7
XHBhcg0KICAgQ29udHJvbHMuUmVsaW5rO1xwYXINCiAgIERpYWxvZy5VcGRhdGUocF4pXHBhcg0K
RU5EIFJlbGlua0FuZFVwZGF0ZTtccGFyDQpccGFyDQpCRUdJTlxwYXINCiAgIE5FVyhxMSk7IHEx
LmJ5dGUgOj0gMTtccGFyDQogICBORVcocTIpOyBxMi5ieXRlIDo9IDI7XHBhcg0KICAgcCA6PSBx
MTtccGFyDQpFTkQgRm9vLlxwYXINClxwYXINCi0tLSBCbGFja0JveFxwYXINCi0tLSBzZW5kIHN1
YmplY3QgSEVMUCBvciBVTlNVQlNDUklCRSB0byBibGFja2JveEBvYmVyb24uY2h9fQBSAAIBAAAg
AAAA


----boundary-LibPST-iamunique-278706088_-_---
Received on Thu May 26 2005 - 17:22:10 UTC

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