Re: [BLACKBOX] How to 'embed'

From: [at]} <Josef>
Date: Tue, 4 Oct 2011 10:21:48 +0200

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

Actually, it depends on the capabilities of the model.
A TextModels.Model, for example, provides means for
embedding an arbitray Views.View into the character stream (see
TextModels.Writer.WriteView).
You can do this also with your own model but
the view used for displaying your model must be aware of
embedded views and render everything accordingly.
Rendering the embedded views will typically be delegated to
the embedded views, though.

- JT




----- Original Message -----
From: "Wojtek Skulski" <skulski{([at]})nowhere.xy
To: <BLACKBOX{([at]})nowhere.xy
Sent: Tuesday, October 04, 2011 6:42 AM
Subject: Re: [BLACKBOX] How to 'embed'


"embedding of one view into a model" is a self contradiction.

The model provides data "1, 2, 3, 4...". The data makes no assumptions how
it will be displayed, or whether it will be displayed at all.

The view imports the model. So it knows the details of the model (array,
record, list, double-linked-list, DAG, or any other fancy structure).
However, there is a firm assumption that no details about the display go
into the model. The model can only provide the numbers, but no details
about the display.

The Model-View separayion means the separation of concerns. The model can
calculate. The view can display the results of calculations.

Your question is breaking the separation. You are trying to put the
imported concerns back into the importee. This has to lead to circular
data structures. Hence, it is not implementable.

W.


> Folks,
>
> I am old and tired of poking through documentation and code.
> So if you can please help me out it would be greatly appreciated.
>
> If you search the BB documentation for the word 'embed' you find
> many hits. But no where does it explicitly state the steps needed
> to do an embedding of one view into a model.
>
> What are the least number of steps to embed a view into a model?
>
> ==
> My paltry efforts center around
>
> Views.InstallFrame(f, view, l, t, level, focus);
>
> That is, given the frame (f) of the view in which one wants to embed
> the view 'view' one does the above. BUT BB complains that view
> does not have a context nor a domain. Well that is what I was
> hoping
> the InstallFrame procedure would provide to view.
>
> So I can start and assign a context to view taken from the context
> of
> f.view.context BUT I believe that is wrong.
>
> Given a bare extension of Views.View with no additional structure
> TYPE View = POINTER TO RECORD(Views.View) END;
> as the container view I wish to embed arbitrary other Views.View
> as the contained view AND when the container view is restored
> (which unto itself does nothing) how do I get all of the contained
> views
> to restore themselves (or does that happen automatically OR do I
> need to forward a message)?
>
> Doug
>
>
> ---- To unsubscribe, send a message with body "SIGNOFF BLACKBOX" to
> LISTSERV{([at]})nowhere.xy


----
To unsubscribe, send a message with body "SIGNOFF BLACKBOX" to LISTSERV{([at]})nowhere.xy----
To unsubscribe, send a message with body "SIGNOFF BLACKBOX" to LISTSERV{([at]})nowhere.xy----boundary-LibPST-iamunique-568066184_-_-
Content-type: application/rtf
Content-transfer-encoding: base64
Content-Disposition: attachment; filename="rtf-body.rtf"
e1xydGYxXGFuc2lcYW5zaWNwZzEyNTJcZnJvbXRleHQgXGRlZmYwe1xmb250dGJsDQp7XGYwXGZz
d2lzcyBBcmlhbDt9DQp7XGYxXGZtb2Rlcm4gQ291cmllciBOZXc7fQ0Ke1xmMlxmbmlsXGZjaGFy
c2V0MiBTeW1ib2w7fQ0Ke1xmM1xmbW9kZXJuXGZjaGFyc2V0MCBDb3VyaWVyIE5ldzt9fQ0Ke1xj
b2xvcnRibFxyZWQwXGdyZWVuMFxibHVlMDtccmVkMFxncmVlbjBcYmx1ZTI1NTt9DQpcdWMxXHBh
cmRccGxhaW5cZGVmdGFiMzYwIFxmMFxmczIwIEFjdHVhbGx5LCBpdCBkZXBlbmRzIG9uIHRoZSBj
YXBhYmlsaXRpZXMgb2YgdGhlIG1vZGVsLlxwYXINCkEgVGV4dE1vZGVscy5Nb2RlbCwgZm9yIGV4
YW1wbGUsIHByb3ZpZGVzIG1lYW5zIGZvclxwYXINCmVtYmVkZGluZyBhbiBhcmJpdHJheSBWaWV3
cy5WaWV3IGludG8gdGhlIGNoYXJhY3RlciBzdHJlYW0gKHNlZSBccGFyDQpUZXh0TW9kZWxzLldy
aXRlci5Xcml0ZVZpZXcpLlxwYXINCllvdSBjYW4gZG8gdGhpcyBhbHNvIHdpdGggeW91ciBvd24g
bW9kZWwgYnV0IFxwYXINCnRoZSB2aWV3IHVzZWQgZm9yIGRpc3BsYXlpbmcgeW91ciBtb2RlbCBt
dXN0IGJlIGF3YXJlIG9mXHBhcg0KZW1iZWRkZWQgdmlld3MgYW5kIHJlbmRlciBldmVyeXRoaW5n
IGFjY29yZGluZ2x5LlxwYXINClJlbmRlcmluZyB0aGUgZW1iZWRkZWQgdmlld3Mgd2lsbCB0eXBp
Y2FsbHkgYmUgZGVsZWdhdGVkIHRvIFxwYXINCnRoZSBlbWJlZGRlZCB2aWV3cywgdGhvdWdoLlxw
YXINClxwYXINCi0gSlRccGFyDQpccGFyDQpccGFyDQpccGFyDQpccGFyDQotLS0tLSBPcmlnaW5h
bCBNZXNzYWdlIC0tLS0tIFxwYXINCkZyb206ICJXb2p0ZWsgU2t1bHNraSIgPHNrdWxza2lAUEFT
LlJPQ0hFU1RFUi5FRFU+XHBhcg0KVG86IDxCTEFDS0JPWEBMSVNUUy5PQkVST04uQ0g+XHBhcg0K
U2VudDogVHVlc2RheSwgT2N0b2JlciAwNCwgMjAxMSA2OjQyIEFNXHBhcg0KU3ViamVjdDogUmU6
IFtCTEFDS0JPWF0gSG93IHRvICdlbWJlZCdccGFyDQpccGFyDQpccGFyDQoiZW1iZWRkaW5nIG9m
IG9uZSB2aWV3IGludG8gYSBtb2RlbCIgaXMgYSBzZWxmIGNvbnRyYWRpY3Rpb24uXHBhcg0KXHBh
cg0KVGhlIG1vZGVsIHByb3ZpZGVzIGRhdGEgIjEsIDIsIDMsIDQuLi4iLiBUaGUgZGF0YSBtYWtl
cyBubyBhc3N1bXB0aW9ucyBob3dccGFyDQppdCB3aWxsIGJlIGRpc3BsYXllZCwgb3Igd2hldGhl
ciBpdCB3aWxsIGJlIGRpc3BsYXllZCBhdCBhbGwuXHBhcg0KXHBhcg0KVGhlIHZpZXcgaW1wb3J0
cyB0aGUgbW9kZWwuIFNvIGl0IGtub3dzIHRoZSBkZXRhaWxzIG9mIHRoZSBtb2RlbCAoYXJyYXks
XHBhcg0KcmVjb3JkLCBsaXN0LCBkb3VibGUtbGlua2VkLWxpc3QsIERBRywgb3IgYW55IG90aGVy
IGZhbmN5IHN0cnVjdHVyZSkuXHBhcg0KSG93ZXZlciwgdGhlcmUgaXMgYSBmaXJtIGFzc3VtcHRp
b24gdGhhdCBubyBkZXRhaWxzIGFib3V0IHRoZSBkaXNwbGF5IGdvXHBhcg0KaW50byB0aGUgbW9k
ZWwuIFRoZSBtb2RlbCBjYW4gb25seSBwcm92aWRlIHRoZSBudW1iZXJzLCBidXQgbm8gZGV0YWls
c1xwYXINCmFib3V0IHRoZSBkaXNwbGF5LlxwYXINClxwYXINClRoZSBNb2RlbC1WaWV3IHNlcGFy
YXlpb24gbWVhbnMgdGhlIHNlcGFyYXRpb24gb2YgY29uY2VybnMuIFRoZSBtb2RlbCBjYW5ccGFy
DQpjYWxjdWxhdGUuIFRoZSB2aWV3IGNhbiBkaXNwbGF5IHRoZSByZXN1bHRzIG9mIGNhbGN1bGF0
aW9ucy5ccGFyDQpccGFyDQpZb3VyIHF1ZXN0aW9uIGlzIGJyZWFraW5nIHRoZSBzZXBhcmF0aW9u
LiBZb3UgYXJlIHRyeWluZyB0byBwdXQgdGhlXHBhcg0KaW1wb3J0ZWQgY29uY2VybnMgYmFjayBp
bnRvIHRoZSBpbXBvcnRlZS4gVGhpcyBoYXMgdG8gbGVhZCB0byBjaXJjdWxhclxwYXINCmRhdGEg
c3RydWN0dXJlcy4gSGVuY2UsIGl0IGlzIG5vdCBpbXBsZW1lbnRhYmxlLlxwYXINClxwYXINClcu
XHBhcg0KXHBhcg0KXHBhcg0KPiAgICAgICAgICAgICAgICAgICAgIEZvbGtzLFxwYXINCj5ccGFy
DQo+ICAgICAgSSBhbSBvbGQgYW5kIHRpcmVkIG9mIHBva2luZyB0aHJvdWdoIGRvY3VtZW50YXRp
b24gYW5kIGNvZGUuXHBhcg0KPiAgICAgIFNvIGlmIHlvdSBjYW4gcGxlYXNlIGhlbHAgbWUgb3V0
IGl0IHdvdWxkIGJlIGdyZWF0bHkgYXBwcmVjaWF0ZWQuXHBhcg0KPlxwYXINCj4gICAgICBJZiB5
b3Ugc2VhcmNoIHRoZSBCQiBkb2N1bWVudGF0aW9uIGZvciB0aGUgd29yZCAnZW1iZWQnIHlvdSBm
aW5kXHBhcg0KPiAgICAgIG1hbnkgaGl0cy4gIEJ1dCBubyB3aGVyZSBkb2VzIGl0IGV4cGxpY2l0
bHkgc3RhdGUgdGhlIHN0ZXBzIG5lZWRlZFxwYXINCj4gICAgICB0byBkbyBhbiBlbWJlZGRpbmcg
b2Ygb25lIHZpZXcgaW50byBhIG1vZGVsLlxwYXINCj5ccGFyDQo+ICAgICAgV2hhdCBhcmUgdGhl
IGxlYXN0IG51bWJlciBvZiBzdGVwcyB0byBlbWJlZCBhIHZpZXcgaW50byBhIG1vZGVsP1xwYXIN
Cj5ccGFyDQo+ICAgICAgPT1ccGFyDQo+ICAgICAgTXkgcGFsdHJ5IGVmZm9ydHMgY2VudGVyIGFy
b3VuZFxwYXINCj5ccGFyDQo+ICAgICAgVmlld3MuSW5zdGFsbEZyYW1lKGYsIHZpZXcsIGwsIHQs
IGxldmVsLCBmb2N1cyk7XHBhcg0KPlxwYXINCj4gICAgICBUaGF0IGlzLCBnaXZlbiB0aGUgZnJh
bWUgKGYpIG9mIHRoZSB2aWV3IGluIHdoaWNoIG9uZSB3YW50cyB0byBlbWJlZFxwYXINCj4gICAg
ICB0aGUgdmlldyAndmlldycgb25lIGRvZXMgdGhlIGFib3ZlLiAgQlVUIEJCIGNvbXBsYWlucyB0
aGF0IHZpZXdccGFyDQo+ICAgICAgZG9lcyBub3QgaGF2ZSBhIGNvbnRleHQgbm9yIGEgZG9tYWlu
LiAgV2VsbCB0aGF0IGlzIHdoYXQgSSB3YXNccGFyDQo+IGhvcGluZ1xwYXINCj4gICAgICB0aGUg
SW5zdGFsbEZyYW1lIHByb2NlZHVyZSB3b3VsZCBwcm92aWRlIHRvIHZpZXcuXHBhcg0KPlxwYXIN
Cj4gICAgICBTbyBJIGNhbiBzdGFydCBhbmQgYXNzaWduIGEgY29udGV4dCB0byB2aWV3IHRha2Vu
IGZyb20gdGhlIGNvbnRleHRccGFyDQo+ICBvZlxwYXINCj4gICAgICBmLnZpZXcuY29udGV4dCBC
VVQgSSBiZWxpZXZlIHRoYXQgaXMgd3JvbmcuXHBhcg0KPlxwYXINCj4gICAgICBHaXZlbiBhIGJh
cmUgZXh0ZW5zaW9uIG9mIFZpZXdzLlZpZXcgd2l0aCBubyBhZGRpdGlvbmFsIHN0cnVjdHVyZVxw
YXINCj4gICAgICBUWVBFIFZpZXcgPSBQT0lOVEVSIFRPIFJFQ09SRChWaWV3cy5WaWV3KSBFTkQ7
XHBhcg0KPiAgICAgIGFzIHRoZSBjb250YWluZXIgdmlldyBJIHdpc2ggdG8gZW1iZWQgYXJiaXRy
YXJ5IG90aGVyICAgICBWaWV3cy5WaWV3XHBhcg0KPiAgICAgIGFzIHRoZSBjb250YWluZWQgdmll
dyBBTkQgd2hlbiB0aGUgY29udGFpbmVyIHZpZXcgaXMgICAgIHJlc3RvcmVkXHBhcg0KPiAgICAg
ICh3aGljaCB1bnRvIGl0c2VsZiBkb2VzIG5vdGhpbmcpIGhvdyBkbyBJIGdldCBhbGwgb2YgdGhl
IGNvbnRhaW5lZFxwYXINCj4gIHZpZXdzXHBhcg0KPiAgICAgIHRvIHJlc3RvcmUgdGhlbXNlbHZl
cyAob3IgZG9lcyB0aGF0IGhhcHBlbiBhdXRvbWF0aWNhbGx5IE9SIGRvIElccGFyDQo+ICAgICAg
bmVlZCB0byBmb3J3YXJkIGEgbWVzc2FnZSk/XHBhcg0KPlxwYXINCj4gICAgICBEb3VnXHBhcg0K
PlxwYXINCj5ccGFyDQo+ICAtLS0tIFRvIHVuc3Vic2NyaWJlLCBzZW5kIGEgbWVzc2FnZSB3aXRo
IGJvZHkgIlNJR05PRkYgQkxBQ0tCT1giIHRvXHBhcg0KPiBMSVNUU0VSVkBMSVNUUy5PQkVST04u
Q0hccGFyDQpccGFyDQpccGFyDQotLS0tXHBhcg0KVG8gdW5zdWJzY3JpYmUsIHNlbmQgYSBtZXNz
YWdlIHdpdGggYm9keSAiU0lHTk9GRiBCTEFDS0JPWCIgdG8gTElTVFNFUlZATElTVFMuT0JFUk9O
LkNIXHBhcg0KXHBhcg0KXHBhcg0KLS0tLVxwYXINClRvIHVuc3Vic2NyaWJlLCBzZW5kIGEgbWVz
c2FnZSB3aXRoIGJvZHkgIlNJR05PRkYgQkxBQ0tCT1giIHRvIExJU1RTRVJWQExJU1RTLk9CRVJP
Ti5DSFxwYXINCn0=
----boundary-LibPST-iamunique-568066184_-_---
Received on Tue Oct 04 2011 - 10:21:48 UTC

This archive was generated by hypermail 2.3.0 : Thu Sep 26 2013 - 06:30:11 UTC