Thanks a lot Nicolai,
It works like a charm! You can see the video here:
https://archive.org/details/gfcp-alpha-saving-playgrounds-1.mp4
It shows how I can save and execute the first three examples of the Agile Visualization book and the values of any change are automatically saved (in the video I change the amount of nodes in the first visualization and they are stored without any extra intervention). No more nil values or need to copy and paste to execute the code.
About automatic creation of files in the playground cache, I can't see any of them with the same hour I have visited/executed them. I will make more test tomorrow, but seems working fine.
I still have problems understanding wiring of sub-browsers with transmissions and ports to auto-save changes and I think that the current way of storing playgrounds on STON offers to much detail about them. I remember having a similar problem when I stored all the data of the node content and I solved it by using "asString" to left out all details about fonts and other stuff. May be a similar approach can be used for content in playground pages without loosing the possibility to embed and auto-update them.
This is a really good advance and your suggestion makes this project to reach a usable state. Now I can have all the Agile Visualization book in a single executable document and it can be exported to different formats (html, pdf, latex, etc). The next steps are a better integration with pandoc to produce pdf and html easier from grafoscopio, instead of the current manual tuning and exit to command shell. I will share the advances with the community.
Thanks again,
Offray
El 11/02/15 a las 03:44, Nicolai Hess escribió:
Of course, you can directly use the PlaygroundPage instead of the strings in your dictionary:
http://ws.stfx.eu/9AVICHRG4UPA
That way, every update on the playground content automatically updates the (playgroundpage)-content in you dictionary.
But I don't think it is a good idea to use the playground for this, because every time you select a item that opens the playground, it creates a *new* cache file - every time.
I would prefer a GLMSmalltalkCodePresentation.
2015-02-11 4:21 GMT+01:00 Offray Vladimir Luna Cárdenas <offray@riseup.net mailto:offray@riseup.net>:
Sorry the url of the minimal example I referring is: http://ws.stfx.eu/QFOJ9MDRH7GW Cheers, Offray El 10/02/15 a las 20:05, Offray Vladimir Luna Cárdenas escribió: Hi Nicolai, Thanks for your quick answer and yes, your example helps me. In fact it lets me to focus on what is important without so many distractions of Grafoscopio. So at [1] I have a browser with a inner browser that shows playgrounds that execute code. The inner browser is not properly wired to the external one, so, if I change the contents of the inner browser, putting "41 + 2" instead of "41 + 1" they don't become automatically updated in the data dictionary. What I want is that any time I made a change in the inner browser, the data gets updated in the data dictionary where the browser is taking its values. [1] http://ws.stfx.eu/K8ADPDRFQE29 I hope to made myself clearer, and that the code helps to express better my issue, but If I need to explain better just ask. Thanks again, Offray El 10/02/15 a las 08:59, Nicolai Hess escribió: Hi Offray, 2015-02-09 22:14 GMT+01:00 Offray Vladimir Luna Cárdenas <offray@riseup.net <mailto:offray@riseup.net> <mailto:offray@riseup.net <mailto:offray@riseup.net>>>: Hi all, .... So, wiring by "sendToOutside: from:" is not working and I don't know how to tell my code browser to autosave its contents as part of the node body where they belong. Any help with this is appreciated. Cheers, Offray here is a small example, http://ws.stfx.eu/JBIBBXA0EF3A it uses a memory file system for storing its structure and data. on the left pane, you can select folder and files. And a file will open a code pane on the right side. On this code pane you can edit the text and accept the changes with alt+s (or the icon on the upper right corner). The changed text is saved in the memory file. I use the memory file system just as an example, because I don't have another data structure. But this should work with your GrafoscopioNode too. Does it help? Nicolai _________________________________________________ Moose-dev mailing list Moose-dev@iam.unibe.ch <mailto:Moose-dev@iam.unibe.ch> https://www.iam.unibe.ch/__mailman/listinfo/moose-dev <https://www.iam.unibe.ch/mailman/listinfo/moose-dev> _________________________________________________ Moose-dev mailing list Moose-dev@iam.unibe.ch <mailto:Moose-dev@iam.unibe.ch> https://www.iam.unibe.ch/__mailman/listinfo/moose-dev <https://www.iam.unibe.ch/mailman/listinfo/moose-dev> _________________________________________________ Moose-dev mailing list Moose-dev@iam.unibe.ch <mailto:Moose-dev@iam.unibe.ch> https://www.iam.unibe.ch/__mailman/listinfo/moose-dev <https://www.iam.unibe.ch/mailman/listinfo/moose-dev>
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev