----boundary-LibPST-iamunique-1737989166_-_-
Content-type: text/plain
Hello, BlackBoxers.
Do you remember I wrote a few days ago asking for the implementation of a
clipboard?
Fyodor Tkachov answered me very quickly, and he convinced me for implementing
the clipboard with a pointer to a global variable (with a global variable who
was a pointer, I mean). So, I did that, and it works very well. Thank you,
Fyodor.
But now I have another question about the ClipBoard. What I want to do now is
something like a Guard, to prevent that anybody could call to the "Paste
operation (Ctrl+V)" if the clipboard is empty, or also to prevent the use of
the "Copy operation (Ctrl+C)" if nothing is selected. Looking trough the
BlackBox menus ans modules, I have found "HostCmds" module, that is the module
used for the cut and copy operations in the Edit menu. I have seen in the
interface of that HostCmds module many guards, like CopyGuard, CutGuard... I
suposse that for making my own guards I should have to use these methods
(perhaps re-defining them?). Is that correct?.
Anyway, I have another problem. The definition of Guard procedures can not be
changed, isn't it?. So, I can't make a functional Guard using POO, and calling
the procedure from a class. I mean, I can't do something like "PROCEDURE (v:
StdView) CopyGuard (VAR par: Dialog.Par)". Isn't that true?. If it is, here is
my problem: What I copy, select... are objects from a list that forms part of
the Model of a view, and I don't have any variable pointing to that view. For
the time, it has been enough with the parameters of the method: (v: View)
HandleCtrlMsg (f: Frame; VAR msg: CtrlMessage; VAR focus: View). As in that
method HandleCtrlMsg the receiver is the focused view, there's my anchor to the
view: the one that is "automatically" given in the HandleCtrlMsg. And the
problem I have, as you should have supossed, is that I don't know where my view
is allocated (because I don't have an anchor to it) untill the HandleCtrlMsg is
called, and I neither can't know where my view is allocated outside that
method.
So, will I have to put a pointer to the view or do you think there could be
another solution without any more pointers??
Regards, and thank you in advance.
HECTOR.
---------------------------------------------
This message was sent using Endymion MailMan.
http://www.endymion.com/products/mailman/
--------------------------------------------
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-1737989166_-_-
Content-type: application/rtf
Content-transfer-encoding: base64
Content-Disposition: attachment; filename="rtf-body.rtf"
e1xydGYxXGFuc2lcYW5zaWNwZzEyNTJcZnJvbXRleHQgXGRlZmYwe1xmb250dGJsDQp7XGYwXGZz
d2lzcyBBcmlhbDt9DQp7XGYxXGZtb2Rlcm4gQ291cmllciBOZXc7fQ0Ke1xmMlxmbmlsXGZjaGFy
c2V0MiBTeW1ib2w7fQ0Ke1xmM1xmbW9kZXJuXGZjaGFyc2V0MCBDb3VyaWVyIE5ldzt9fQ0Ke1xj
b2xvcnRibFxyZWQwXGdyZWVuMFxibHVlMDtccmVkMFxncmVlbjBcYmx1ZTI1NTt9DQpcdWMxXHBh
cmRccGxhaW5cZGVmdGFiMzYwIFxmMFxmczIwIEhlbGxvLCBCbGFja0JveGVycy5ccGFyDQpccGFy
DQpEbyB5b3UgcmVtZW1iZXIgSSB3cm90ZSBhIGZldyBkYXlzIGFnbyBhc2tpbmcgZm9yIHRoZSBp
bXBsZW1lbnRhdGlvbiBvZiBhIFxwYXINCmNsaXBib2FyZD9ccGFyDQpccGFyDQpGeW9kb3IgVGth
Y2hvdiBhbnN3ZXJlZCBtZSB2ZXJ5IHF1aWNrbHksIGFuZCBoZSBjb252aW5jZWQgbWUgZm9yIGlt
cGxlbWVudGluZyBccGFyDQp0aGUgY2xpcGJvYXJkIHdpdGggYSBwb2ludGVyIHRvIGEgZ2xvYmFs
IHZhcmlhYmxlICh3aXRoIGEgZ2xvYmFsIHZhcmlhYmxlIHdobyBccGFyDQp3YXMgYSBwb2ludGVy
LCBJIG1lYW4pLiBTbywgSSBkaWQgdGhhdCwgYW5kIGl0IHdvcmtzIHZlcnkgd2VsbC4gVGhhbmsg
eW91LCBccGFyDQpGeW9kb3IuIFxwYXINClxwYXINCkJ1dCBub3cgSSBoYXZlIGFub3RoZXIgcXVl
c3Rpb24gYWJvdXQgdGhlIENsaXBCb2FyZC4gV2hhdCBJIHdhbnQgdG8gZG8gbm93IGlzIFxwYXIN
CnNvbWV0aGluZyBsaWtlIGEgR3VhcmQsIHRvIHByZXZlbnQgdGhhdCBhbnlib2R5IGNvdWxkIGNh
bGwgdG8gdGhlICJQYXN0ZSBccGFyDQpvcGVyYXRpb24gKEN0cmwrVikiIGlmIHRoZSBjbGlwYm9h
cmQgaXMgZW1wdHksIG9yIGFsc28gdG8gcHJldmVudCB0aGUgdXNlIG9mIFxwYXINCnRoZSAiQ29w
eSBvcGVyYXRpb24gKEN0cmwrQykiIGlmIG5vdGhpbmcgaXMgc2VsZWN0ZWQuIExvb2tpbmcgdHJv
dWdoIHRoZSBccGFyDQpCbGFja0JveCBtZW51cyBhbnMgbW9kdWxlcywgSSBoYXZlIGZvdW5kICJI
b3N0Q21kcyIgbW9kdWxlLCB0aGF0IGlzIHRoZSBtb2R1bGUgXHBhcg0KdXNlZCBmb3IgdGhlIGN1
dCBhbmQgY29weSBvcGVyYXRpb25zIGluIHRoZSBFZGl0IG1lbnUuIEkgaGF2ZSBzZWVuIGluIHRo
ZSBccGFyDQppbnRlcmZhY2Ugb2YgdGhhdCBIb3N0Q21kcyBtb2R1bGUgbWFueSBndWFyZHMsIGxp
a2UgQ29weUd1YXJkLCBDdXRHdWFyZC4uLiBJIFxwYXINCnN1cG9zc2UgdGhhdCBmb3IgbWFraW5n
IG15IG93biBndWFyZHMgSSBzaG91bGQgaGF2ZSB0byB1c2UgdGhlc2UgbWV0aG9kcyBccGFyDQoo
cGVyaGFwcyByZS1kZWZpbmluZyB0aGVtPykuIElzIHRoYXQgY29ycmVjdD8uXHBhcg0KXHBhcg0K
QW55d2F5LCBJIGhhdmUgYW5vdGhlciBwcm9ibGVtLiBUaGUgZGVmaW5pdGlvbiBvZiBHdWFyZCBw
cm9jZWR1cmVzIGNhbiBub3QgYmUgXHBhcg0KY2hhbmdlZCwgaXNuJ3QgaXQ/LiBTbywgSSBjYW4n
dCBtYWtlIGEgZnVuY3Rpb25hbCBHdWFyZCB1c2luZyBQT08sIGFuZCBjYWxsaW5nIFxwYXINCnRo
ZSBwcm9jZWR1cmUgZnJvbSBhIGNsYXNzLiBJIG1lYW4sIEkgY2FuJ3QgZG8gc29tZXRoaW5nIGxp
a2UgIlBST0NFRFVSRSAodjogXHBhcg0KU3RkVmlldykgQ29weUd1YXJkIChWQVIgcGFyOiBEaWFs
b2cuUGFyKSIuIElzbid0IHRoYXQgdHJ1ZT8uIElmIGl0IGlzLCBoZXJlIGlzIFxwYXINCm15IHBy
b2JsZW06IFdoYXQgSSBjb3B5LCBzZWxlY3QuLi4gYXJlIG9iamVjdHMgZnJvbSBhIGxpc3QgdGhh
dCBmb3JtcyBwYXJ0IG9mIFxwYXINCnRoZSBNb2RlbCBvZiBhIHZpZXcsIGFuZCBJIGRvbid0IGhh
dmUgYW55IHZhcmlhYmxlIHBvaW50aW5nIHRvIHRoYXQgdmlldy4gRm9yIFxwYXINCnRoZSB0aW1l
LCBpdCBoYXMgYmVlbiBlbm91Z2ggd2l0aCB0aGUgcGFyYW1ldGVycyBvZiB0aGUgbWV0aG9kOiAo
djogVmlldykgXHBhcg0KSGFuZGxlQ3RybE1zZyAoZjogRnJhbWU7IFZBUiBtc2c6IEN0cmxNZXNz
YWdlOyBWQVIgZm9jdXM6IFZpZXcpLiBBcyBpbiB0aGF0IFxwYXINCm1ldGhvZCBIYW5kbGVDdHJs
TXNnIHRoZSByZWNlaXZlciBpcyB0aGUgZm9jdXNlZCB2aWV3LCB0aGVyZSdzIG15IGFuY2hvciB0
byB0aGUgXHBhcg0KdmlldzogdGhlIG9uZSB0aGF0IGlzICJhdXRvbWF0aWNhbGx5IiBnaXZlbiBp
biB0aGUgSGFuZGxlQ3RybE1zZy4gQW5kIHRoZSBccGFyDQpwcm9ibGVtIEkgaGF2ZSwgYXMgeW91
IHNob3VsZCBoYXZlIHN1cG9zc2VkLCBpcyB0aGF0IEkgZG9uJ3Qga25vdyB3aGVyZSBteSB2aWV3
IFxwYXINCmlzIGFsbG9jYXRlZCAoYmVjYXVzZSBJIGRvbid0IGhhdmUgYW4gYW5jaG9yIHRvIGl0
KSB1bnRpbGwgdGhlIEhhbmRsZUN0cmxNc2cgaXMgXHBhcg0KY2FsbGVkLCBhbmQgSSBuZWl0aGVy
IGNhbid0IGtub3cgd2hlcmUgbXkgdmlldyBpcyBhbGxvY2F0ZWQgb3V0c2lkZSB0aGF0IFxwYXIN
Cm1ldGhvZC4gXHBhcg0KXHBhcg0KU28sIHdpbGwgSSBoYXZlIHRvIHB1dCBhIHBvaW50ZXIgdG8g
dGhlIHZpZXcgb3IgZG8geW91IHRoaW5rIHRoZXJlIGNvdWxkIGJlIFxwYXINCmFub3RoZXIgc29s
dXRpb24gd2l0aG91dCBhbnkgbW9yZSBwb2ludGVycz8/XHBhcg0KXHBhcg0KUmVnYXJkcywgYW5k
IHRoYW5rIHlvdSBpbiBhZHZhbmNlLlxwYXINCkhFQ1RPUi5ccGFyDQpccGFyDQotLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1ccGFyDQpUaGlzIG1lc3NhZ2Ugd2Fz
IHNlbnQgdXNpbmcgRW5keW1pb24gTWFpbE1hbi5ccGFyDQpodHRwOi8vd3d3LmVuZHltaW9uLmNv
bS9wcm9kdWN0cy9tYWlsbWFuL1xwYXINClxwYXINClxwYXINCi0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHBhcg0KXHBhcg0KVG8gdW5zdWJzY3JpYmUgZnJvbSB0
aGlzIG1haWxpbmcgbGlzdCwgc2VuZCBhIG1lc3NhZ2UgY29udGFpbmluZyB0aGUgd29yZCAidW5z
dWJzY3JpYmUiIHRvOlxwYXINCiAgIGJsYWNrYm94LXJlcXVlc3RAb2Jlcm9uLmNoXHBhcg0KXHBh
cg0KVG8gZ2V0IGEgbGlzdCBvZiB2YWxpZCBlLW1haWwgY29tbWFuZHMgYW5kIGluc3RydWN0aW9u
cyBvbiB0aGVpciB1c2FnZSwgc2VuZCBhIG1lc3NhZ2UgY29udGFpbmluZyB0aGUgd29yZCAiaGVs
cCIgdG8gdGhlIGFib3ZlIGFkZHJlc3MuXHBhcg0KXHBhcg0KU2VuZCBhbnkgcHJvYmxlbSByZXBv
cnRzIG9yIHF1ZXN0aW9ucyByZWxhdGVkIHRvIHRoaXMgZW1haWwgbGlzdCB0byB0aGUgbGlzdCBv
d25lciBhdFxwYXINCiAgIG93bmVyLWJsYWNrYm94QG9iZXJvbi5jaFxwYXINClxwYXINCkN1cnJl
bnQgcG9zdGluZyBwb2xpY3k6XHBhcg0KXHBhcg0KYSkgVG8gcG9zdCB5b3Ugc2hvdWxkIHVzZSB0
aGUgc2FtZSBhZGRyZXNzIGJ5IHdoaWNoIHlvdSBhcmUgc3Vic2NyaWJlZCB0byB0aGUgbWFpbGlu
ZyBsaXN0LiBUaGF0IHdheSwgdGhlIGxpc3Qgc2VydmVyIHdpbGwgcmVjb2duaXplIHlvdSBhcyBz
dWJzY3JpYmVyIGFuZCBmb3J3YXJkIHlvdXIgcG9zdGluZyBpbW1lZGlhdGVseSwgd2l0aG91dCBj
cmVhdGluZyBhbnkgb3ZlcmhlYWQuXHBhcg0KXHBhcg0KYikgSWYsIGZvciBzb21lIHJlYXNvbiwg
eW91IGNhbm5vdCBwb3N0IGZyb20gdGhlIGFkZHJlc3MsIGJ5IHdoaWNoIHlvdSBhcmUgc3Vic2Ny
aWJlZCwgeW91ciBtZXNzYWdlIHdpbGwgYmUgbW9kZXJhdGVkIHRvIGF2b2lkIHNwYW0uIFBsZWFz
ZSB1bmRlcnN0YW5kIHRoYXQgbW9kZXJhdGlvbiB3aWxsIG9mdGVuIGNhdXNlIHNvbWUgZGVsYXks
IGluIHBhcnRpY3VsYXIgb3ZlciB3ZWVrZW5kcyBvciBob2x5ZGF5c319AGhlIEhh
----boundary-LibPST-iamunique-1737989166_-_---
Received on Thu Nov 07 2002 - 10:33:08 UTC