Re: [Pharo-dev] Athens/Morphic
+1 Le 25/2/15 15:02, Igor Stasenko a écrit : Nice work, Nicolai Thank you for putting your hands on it! On 23 February 2015 at 23:47, Nicolai Hess nicolaih...@web.de mailto:nicolaih...@web.de wrote: No, it is not yet integrated. but this should work with pharo 40501 Merge (from pharo4 inbox): ConfigurationOfAthens-NicolaiHess.52 ConfigurationOfAthens loadVersion:'2.9' AthensWrapWorldMorph new openInWorld 2015-02-23 23:09 GMT+01:00 stepharo steph...@free.fr mailto:steph...@free.fr: I tried to load 2.9 from the athens repo into Latest update: #40501 and I got incompatibleLayoutConflict because apparently I got some packages that were saved Well I got totally lost. Le 23/2/15 23:06, stepharo a écrit : Le 23/2/15 09:59, Nicolai Hess a écrit : Load the new configuration of athens (2.9) I could not find it in the ConfigurationBrowser or in the Pharo40 main repo. I thought that it was integrated in Pharo (I used the latest version 40501) Open an AthensWorld: AthensWrapWorldMorph new openInWorld Drag and drop some morphs on this athens world. (Nautilus /Old Workspace should fully work/ GT Inspector and Playground not) 2015-02-23 9:51 GMT+01:00 stepharo steph...@free.fr mailto:steph...@free.fr: how can I play with that? even if I should not. Le 20/2/15 08:54, Marcus Denker a écrit : Very nice! Works here (on Mac). I will integrate as soon as the CI is up again… Marcus On 19 Feb 2015, at 12:44, Nicolai Hess nicolaih...@web.de mailto:nicolaih...@web.de wrote: Most of this (without the test class (AthensTestDisplay)) is now ready for integration. A lot of changes for making Mophic and Text(Morphs) work on Athens (For testing purpose there is also the AthensWrapWorldMorph included). The Canvas wrapper (AthensCanvasWrapper) is not yet included and therefore all Morphs that do not explicit have a proper drawOnAthensCanvas method arent't drawn (or just like rectangles). Should work with any image = 40490 Just load the latest ConfigurationOfAthens from pharo 40 inbox and load ConfigurationOfAthens loadVersion:'2.9' If this is working (or not:) ) please leave a note on fogbugz: 14954 load new configuration 2.9 (more morphic support) nicolai 2015-01-31 11:54 GMT+01:00 Alain Plantec alain.plan...@yahoo.com mailto:alain.plan...@yahoo.com: Yes the HandMorph is handled like any other Morph, it draws itself and after that it draws all its submorphs. (And actually it does not use any caching, and it is still quite fast) the same in Bloc, no caching and it works just fine :) But yes, it needs a special drawOnAthens method. Do you plane to make a package for it ? I would like to integrate it in Bloc. What would like to integrate? In fact I do not see any change when in Bloc. So I guess I will have to adapt Bloc to your changes. I will upload the changes in Athens-Morphic package to the Athens repository. cool. thanks Alain -- Best regards, Igor Stasenko.
Re: [Pharo-dev] Athens/Morphic
Nice work, Nicolai Thank you for putting your hands on it! On 23 February 2015 at 23:47, Nicolai Hess nicolaih...@web.de wrote: No, it is not yet integrated. but this should work with pharo 40501 Merge (from pharo4 inbox): ConfigurationOfAthens-NicolaiHess.52 ConfigurationOfAthens loadVersion:'2.9' AthensWrapWorldMorph new openInWorld 2015-02-23 23:09 GMT+01:00 stepharo steph...@free.fr: I tried to load 2.9 from the athens repo into Latest update: #40501 and I got incompatibleLayoutConflict because apparently I got some packages that were saved Well I got totally lost. Le 23/2/15 23:06, stepharo a écrit : Le 23/2/15 09:59, Nicolai Hess a écrit : Load the new configuration of athens (2.9) I could not find it in the ConfigurationBrowser or in the Pharo40 main repo. I thought that it was integrated in Pharo (I used the latest version 40501) Open an AthensWorld: AthensWrapWorldMorph new openInWorld Drag and drop some morphs on this athens world. (Nautilus /Old Workspace should fully work/ GT Inspector and Playground not) 2015-02-23 9:51 GMT+01:00 stepharo steph...@free.fr: how can I play with that? even if I should not. Le 20/2/15 08:54, Marcus Denker a écrit : Very nice! Works here (on Mac). I will integrate as soon as the CI is up again… Marcus On 19 Feb 2015, at 12:44, Nicolai Hess nicolaih...@web.de wrote: Most of this (without the test class (AthensTestDisplay)) is now ready for integration. A lot of changes for making Mophic and Text(Morphs) work on Athens (For testing purpose there is also the AthensWrapWorldMorph included). The Canvas wrapper (AthensCanvasWrapper) is not yet included and therefore all Morphs that do not explicit have a proper drawOnAthensCanvas method arent't drawn (or just like rectangles). Should work with any image = 40490 Just load the latest ConfigurationOfAthens from pharo 40 inbox and load ConfigurationOfAthens loadVersion:'2.9' If this is working (or not:) ) please leave a note on fogbugz: 14954 load new configuration 2.9 (more morphic support) nicolai 2015-01-31 11:54 GMT+01:00 Alain Plantec alain.plan...@yahoo.com: Yes the HandMorph is handled like any other Morph, it draws itself and after that it draws all its submorphs. (And actually it does not use any caching, and it is still quite fast) the same in Bloc, no caching and it works just fine :) But yes, it needs a special drawOnAthens method. Do you plane to make a package for it ? I would like to integrate it in Bloc. What would like to integrate? In fact I do not see any change when in Bloc. So I guess I will have to adapt Bloc to your changes. I will upload the changes in Athens-Morphic package to the Athens repository. cool. thanks Alain -- Best regards, Igor Stasenko.
Re: [Pharo-dev] Athens/Morphic
Le 23/2/15 09:59, Nicolai Hess a écrit : Load the new configuration of athens (2.9) I could not find it in the ConfigurationBrowser or in the Pharo40 main repo. I thought that it was integrated in Pharo (I used the latest version 40501) Open an AthensWorld: AthensWrapWorldMorph new openInWorld Drag and drop some morphs on this athens world. (Nautilus /Old Workspace should fully work/ GT Inspector and Playground not) 2015-02-23 9:51 GMT+01:00 stepharo steph...@free.fr mailto:steph...@free.fr: how can I play with that? even if I should not. Le 20/2/15 08:54, Marcus Denker a écrit : Very nice! Works here (on Mac). I will integrate as soon as the CI is up again… Marcus On 19 Feb 2015, at 12:44, Nicolai Hess nicolaih...@web.de mailto:nicolaih...@web.de wrote: Most of this (without the test class (AthensTestDisplay)) is now ready for integration. A lot of changes for making Mophic and Text(Morphs) work on Athens (For testing purpose there is also the AthensWrapWorldMorph included). The Canvas wrapper (AthensCanvasWrapper) is not yet included and therefore all Morphs that do not explicit have a proper drawOnAthensCanvas method arent't drawn (or just like rectangles). Should work with any image = 40490 Just load the latest ConfigurationOfAthens from pharo 40 inbox and load ConfigurationOfAthens loadVersion:'2.9' If this is working (or not:) ) please leave a note on fogbugz: 14954 load new configuration 2.9 (more morphic support) nicolai 2015-01-31 11:54 GMT+01:00 Alain Plantec alain.plan...@yahoo.com mailto:alain.plan...@yahoo.com: Yes the HandMorph is handled like any other Morph, it draws itself and after that it draws all its submorphs. (And actually it does not use any caching, and it is still quite fast) the same in Bloc, no caching and it works just fine :) But yes, it needs a special drawOnAthens method. Do you plane to make a package for it ? I would like to integrate it in Bloc. What would like to integrate? In fact I do not see any change when in Bloc. So I guess I will have to adapt Bloc to your changes. I will upload the changes in Athens-Morphic package to the Athens repository. cool. thanks Alain
Re: [Pharo-dev] Athens/Morphic
No, it is not yet integrated. but this should work with pharo 40501 Merge (from pharo4 inbox): ConfigurationOfAthens-NicolaiHess.52 ConfigurationOfAthens loadVersion:'2.9' AthensWrapWorldMorph new openInWorld 2015-02-23 23:09 GMT+01:00 stepharo steph...@free.fr: I tried to load 2.9 from the athens repo into Latest update: #40501 and I got incompatibleLayoutConflict because apparently I got some packages that were saved Well I got totally lost. Le 23/2/15 23:06, stepharo a écrit : Le 23/2/15 09:59, Nicolai Hess a écrit : Load the new configuration of athens (2.9) I could not find it in the ConfigurationBrowser or in the Pharo40 main repo. I thought that it was integrated in Pharo (I used the latest version 40501) Open an AthensWorld: AthensWrapWorldMorph new openInWorld Drag and drop some morphs on this athens world. (Nautilus /Old Workspace should fully work/ GT Inspector and Playground not) 2015-02-23 9:51 GMT+01:00 stepharo steph...@free.fr: how can I play with that? even if I should not. Le 20/2/15 08:54, Marcus Denker a écrit : Very nice! Works here (on Mac). I will integrate as soon as the CI is up again… Marcus On 19 Feb 2015, at 12:44, Nicolai Hess nicolaih...@web.de wrote: Most of this (without the test class (AthensTestDisplay)) is now ready for integration. A lot of changes for making Mophic and Text(Morphs) work on Athens (For testing purpose there is also the AthensWrapWorldMorph included). The Canvas wrapper (AthensCanvasWrapper) is not yet included and therefore all Morphs that do not explicit have a proper drawOnAthensCanvas method arent't drawn (or just like rectangles). Should work with any image = 40490 Just load the latest ConfigurationOfAthens from pharo 40 inbox and load ConfigurationOfAthens loadVersion:'2.9' If this is working (or not:) ) please leave a note on fogbugz: 14954 load new configuration 2.9 (more morphic support) nicolai 2015-01-31 11:54 GMT+01:00 Alain Plantec alain.plan...@yahoo.com: Yes the HandMorph is handled like any other Morph, it draws itself and after that it draws all its submorphs. (And actually it does not use any caching, and it is still quite fast) the same in Bloc, no caching and it works just fine :) But yes, it needs a special drawOnAthens method. Do you plane to make a package for it ? I would like to integrate it in Bloc. What would like to integrate? In fact I do not see any change when in Bloc. So I guess I will have to adapt Bloc to your changes. I will upload the changes in Athens-Morphic package to the Athens repository. cool. thanks Alain
Re: [Pharo-dev] Athens/Morphic
I tried to load 2.9 from the athens repo into Latest update: #40501 and I got incompatibleLayoutConflict because apparently I got some packages that were saved Well I got totally lost. Le 23/2/15 23:06, stepharo a écrit : Le 23/2/15 09:59, Nicolai Hess a écrit : Load the new configuration of athens (2.9) I could not find it in the ConfigurationBrowser or in the Pharo40 main repo. I thought that it was integrated in Pharo (I used the latest version 40501) Open an AthensWorld: AthensWrapWorldMorph new openInWorld Drag and drop some morphs on this athens world. (Nautilus /Old Workspace should fully work/ GT Inspector and Playground not) 2015-02-23 9:51 GMT+01:00 stepharo steph...@free.fr mailto:steph...@free.fr: how can I play with that? even if I should not. Le 20/2/15 08:54, Marcus Denker a écrit : Very nice! Works here (on Mac). I will integrate as soon as the CI is up again… Marcus On 19 Feb 2015, at 12:44, Nicolai Hess nicolaih...@web.de mailto:nicolaih...@web.de wrote: Most of this (without the test class (AthensTestDisplay)) is now ready for integration. A lot of changes for making Mophic and Text(Morphs) work on Athens (For testing purpose there is also the AthensWrapWorldMorph included). The Canvas wrapper (AthensCanvasWrapper) is not yet included and therefore all Morphs that do not explicit have a proper drawOnAthensCanvas method arent't drawn (or just like rectangles). Should work with any image = 40490 Just load the latest ConfigurationOfAthens from pharo 40 inbox and load ConfigurationOfAthens loadVersion:'2.9' If this is working (or not:) ) please leave a note on fogbugz: 14954 load new configuration 2.9 (more morphic support) nicolai 2015-01-31 11:54 GMT+01:00 Alain Plantec alain.plan...@yahoo.com mailto:alain.plan...@yahoo.com: Yes the HandMorph is handled like any other Morph, it draws itself and after that it draws all its submorphs. (And actually it does not use any caching, and it is still quite fast) the same in Bloc, no caching and it works just fine :) But yes, it needs a special drawOnAthens method. Do you plane to make a package for it ? I would like to integrate it in Bloc. What would like to integrate? In fact I do not see any change when in Bloc. So I guess I will have to adapt Bloc to your changes. I will upload the changes in Athens-Morphic package to the Athens repository. cool. thanks Alain
Re: [Pharo-dev] Athens/Morphic
Load the new configuration of athens (2.9) Open an AthensWorld: AthensWrapWorldMorph new openInWorld Drag and drop some morphs on this athens world. (Nautilus /Old Workspace should fully work/ GT Inspector and Playground not) 2015-02-23 9:51 GMT+01:00 stepharo steph...@free.fr: how can I play with that? even if I should not. Le 20/2/15 08:54, Marcus Denker a écrit : Very nice! Works here (on Mac). I will integrate as soon as the CI is up again… Marcus On 19 Feb 2015, at 12:44, Nicolai Hess nicolaih...@web.de wrote: Most of this (without the test class (AthensTestDisplay)) is now ready for integration. A lot of changes for making Mophic and Text(Morphs) work on Athens (For testing purpose there is also the AthensWrapWorldMorph included). The Canvas wrapper (AthensCanvasWrapper) is not yet included and therefore all Morphs that do not explicit have a proper drawOnAthensCanvas method arent't drawn (or just like rectangles). Should work with any image = 40490 Just load the latest ConfigurationOfAthens from pharo 40 inbox and load ConfigurationOfAthens loadVersion:'2.9' If this is working (or not:) ) please leave a note on fogbugz: 14954 load new configuration 2.9 (more morphic support) nicolai 2015-01-31 11:54 GMT+01:00 Alain Plantec alain.plan...@yahoo.com: Yes the HandMorph is handled like any other Morph, it draws itself and after that it draws all its submorphs. (And actually it does not use any caching, and it is still quite fast) the same in Bloc, no caching and it works just fine :) But yes, it needs a special drawOnAthens method. Do you plane to make a package for it ? I would like to integrate it in Bloc. What would like to integrate? In fact I do not see any change when in Bloc. So I guess I will have to adapt Bloc to your changes. I will upload the changes in Athens-Morphic package to the Athens repository. cool. thanks Alain
Re: [Pharo-dev] Athens/Morphic
how can I play with that? even if I should not. Le 20/2/15 08:54, Marcus Denker a écrit : Very nice! Works here (on Mac). I will integrate as soon as the CI is up again… Marcus On 19 Feb 2015, at 12:44, Nicolai Hess nicolaih...@web.de mailto:nicolaih...@web.de wrote: Most of this (without the test class (AthensTestDisplay)) is now ready for integration. A lot of changes for making Mophic and Text(Morphs) work on Athens (For testing purpose there is also the AthensWrapWorldMorph included). The Canvas wrapper (AthensCanvasWrapper) is not yet included and therefore all Morphs that do not explicit have a proper drawOnAthensCanvas method arent't drawn (or just like rectangles). Should work with any image = 40490 Just load the latest ConfigurationOfAthens from pharo 40 inbox and load ConfigurationOfAthens loadVersion:'2.9' If this is working (or not:) ) please leave a note on fogbugz: 14954 load new configuration 2.9 (more morphic support) nicolai 2015-01-31 11:54 GMT+01:00 Alain Plantec alain.plan...@yahoo.com mailto:alain.plan...@yahoo.com: Yes the HandMorph is handled like any other Morph, it draws itself and after that it draws all its submorphs. (And actually it does not use any caching, and it is still quite fast) the same in Bloc, no caching and it works just fine :) But yes, it needs a special drawOnAthens method. Do you plane to make a package for it ? I would like to integrate it in Bloc. What would like to integrate? In fact I do not see any change when in Bloc. So I guess I will have to adapt Bloc to your changes. I will upload the changes in Athens-Morphic package to the Athens repository. cool. thanks Alain
Re: [Pharo-dev] Athens/Morphic
On 23 Feb 2015, at 09:51, stepharo steph...@free.fr wrote: how can I play with that? even if I should not. I loaded Athens and then did AthensWrapWorldMorph new openInWorld I think. Le 20/2/15 08:54, Marcus Denker a écrit : Very nice! Works here (on Mac). I will integrate as soon as the CI is up again… Marcus On 19 Feb 2015, at 12:44, Nicolai Hess nicolaih...@web.de mailto:nicolaih...@web.de wrote: Most of this (without the test class (AthensTestDisplay)) is now ready for integration. A lot of changes for making Mophic and Text(Morphs) work on Athens (For testing purpose there is also the AthensWrapWorldMorph included). The Canvas wrapper (AthensCanvasWrapper) is not yet included and therefore all Morphs that do not explicit have a proper drawOnAthensCanvas method arent't drawn (or just like rectangles). Should work with any image = 40490 Just load the latest ConfigurationOfAthens from pharo 40 inbox and load ConfigurationOfAthens loadVersion:'2.9' If this is working (or not:) ) please leave a note on fogbugz: 14954 load new configuration 2.9 (more morphic support) nicolai 2015-01-31 11:54 GMT+01:00 Alain Plantec alain.plan...@yahoo.com mailto:alain.plan...@yahoo.com: Yes the HandMorph is handled like any other Morph, it draws itself and after that it draws all its submorphs. (And actually it does not use any caching, and it is still quite fast) the same in Bloc, no caching and it works just fine :) But yes, it needs a special drawOnAthens method. Do you plane to make a package for it ? I would like to integrate it in Bloc. What would like to integrate? In fact I do not see any change when in Bloc. So I guess I will have to adapt Bloc to your changes. I will upload the changes in Athens-Morphic package to the Athens repository. cool. thanks Alain
Re: [Pharo-dev] Athens/Morphic
so that means now athens mix with morphic just fine without extra work , great work guys :) On Mon, Feb 23, 2015 at 10:59 AM, Nicolai Hess nicolaih...@web.de wrote: Load the new configuration of athens (2.9) Open an AthensWorld: AthensWrapWorldMorph new openInWorld Drag and drop some morphs on this athens world. (Nautilus /Old Workspace should fully work/ GT Inspector and Playground not) 2015-02-23 9:51 GMT+01:00 stepharo steph...@free.fr: how can I play with that? even if I should not. Le 20/2/15 08:54, Marcus Denker a écrit : Very nice! Works here (on Mac). I will integrate as soon as the CI is up again… Marcus On 19 Feb 2015, at 12:44, Nicolai Hess nicolaih...@web.de wrote: Most of this (without the test class (AthensTestDisplay)) is now ready for integration. A lot of changes for making Mophic and Text(Morphs) work on Athens (For testing purpose there is also the AthensWrapWorldMorph included). The Canvas wrapper (AthensCanvasWrapper) is not yet included and therefore all Morphs that do not explicit have a proper drawOnAthensCanvas method arent't drawn (or just like rectangles). Should work with any image = 40490 Just load the latest ConfigurationOfAthens from pharo 40 inbox and load ConfigurationOfAthens loadVersion:'2.9' If this is working (or not:) ) please leave a note on fogbugz: 14954 load new configuration 2.9 (more morphic support) nicolai 2015-01-31 11:54 GMT+01:00 Alain Plantec alain.plan...@yahoo.com: Yes the HandMorph is handled like any other Morph, it draws itself and after that it draws all its submorphs. (And actually it does not use any caching, and it is still quite fast) the same in Bloc, no caching and it works just fine :) But yes, it needs a special drawOnAthens method. Do you plane to make a package for it ? I would like to integrate it in Bloc. What would like to integrate? In fact I do not see any change when in Bloc. So I guess I will have to adapt Bloc to your changes. I will upload the changes in Athens-Morphic package to the Athens repository. cool. thanks Alain
Re: [Pharo-dev] Athens/Morphic
Most of this (without the test class (AthensTestDisplay)) is now ready for integration. A lot of changes for making Mophic and Text(Morphs) work on Athens (For testing purpose there is also the AthensWrapWorldMorph included). The Canvas wrapper (AthensCanvasWrapper) is not yet included and therefore all Morphs that do not explicit have a proper drawOnAthensCanvas method arent't drawn (or just like rectangles). Should work with any image = 40490 Just load the latest ConfigurationOfAthens from pharo 40 inbox and load ConfigurationOfAthens loadVersion:'2.9' If this is working (or not:) ) please leave a note on fogbugz: 14954 load new configuration 2.9 (more morphic support) nicolai 2015-01-31 11:54 GMT+01:00 Alain Plantec alain.plan...@yahoo.com: Yes the HandMorph is handled like any other Morph, it draws itself and after that it draws all its submorphs. (And actually it does not use any caching, and it is still quite fast) the same in Bloc, no caching and it works just fine :) But yes, it needs a special drawOnAthens method. Do you plane to make a package for it ? I would like to integrate it in Bloc. What would like to integrate? In fact I do not see any change when in Bloc. So I guess I will have to adapt Bloc to your changes. I will upload the changes in Athens-Morphic package to the Athens repository. cool. thanks Alain
Re: [Pharo-dev] Athens/Morphic
Very nice! Works here (on Mac). I will integrate as soon as the CI is up again… Marcus On 19 Feb 2015, at 12:44, Nicolai Hess nicolaih...@web.de wrote: Most of this (without the test class (AthensTestDisplay)) is now ready for integration. A lot of changes for making Mophic and Text(Morphs) work on Athens (For testing purpose there is also the AthensWrapWorldMorph included). The Canvas wrapper (AthensCanvasWrapper) is not yet included and therefore all Morphs that do not explicit have a proper drawOnAthensCanvas method arent't drawn (or just like rectangles). Should work with any image = 40490 Just load the latest ConfigurationOfAthens from pharo 40 inbox and load ConfigurationOfAthens loadVersion:'2.9' If this is working (or not:) ) please leave a note on fogbugz: 14954 load new configuration 2.9 (more morphic support) nicolai 2015-01-31 11:54 GMT+01:00 Alain Plantec alain.plan...@yahoo.com mailto:alain.plan...@yahoo.com: Yes the HandMorph is handled like any other Morph, it draws itself and after that it draws all its submorphs. (And actually it does not use any caching, and it is still quite fast) the same in Bloc, no caching and it works just fine :) But yes, it needs a special drawOnAthens method. Do you plane to make a package for it ? I would like to integrate it in Bloc. What would like to integrate? In fact I do not see any change when in Bloc. So I guess I will have to adapt Bloc to your changes. I will upload the changes in Athens-Morphic package to the Athens repository. cool. thanks Alain
Re: [Pharo-dev] Athens/Morphic
Nice! It works fine here (font looks strange, yes). The world size seems to be limited to the small window that pharo starts up with? Making it larger seems to still clip at that border. On 23 Jan 2015, at 17:40, Nicolai Hess nicolaih...@web.de wrote: 2015-01-10 13:18 GMT+01:00 Nicolai Hess nicolaih...@web.de mailto:nicolaih...@web.de: I think I got the MorphTreeTransformMorph now working, need to clean up the code and maybe I 'll upload this to the athens repository. nicolai I don't know how often I thought I got this working, but NOW I think I got this morphic transformation working :) I give up to use the AthensTextRenderer classes, they aren't implemented fully, to much work for me to do this. Instead, I just subclass the DisplayScanner and reimplemented all Canvas-draw-methods with athens-drawing-methods. Still some morphs aren't ported, but they use some magic. For example, for some morphs the drawOn:Canvas methods calls many other methods drawBackroundOn: aCanvas, drawIconOn: aCanvas, drawLinesOn: ... (for exampe: IndentingListItemMorph, MorphTreeMorph). Porting this morphs means, we have to duplicate all this methods. (Ok there are other options, but I don't want to change something in the original Morphic/Canvas workflow). Other Morphs just delegate the drawing call, that delegate the calls further and deep in this call change the drawing actually happens. This again means I have to duplicate all this methods just to use an AthensCanvas for drawing. So, for those Morphs I use a Canvas Wrapper (AthensCanvasWrapper). I already wrote about this one, it implements (most) of the Morphic/Canvas API on top of Athens, it was an alternative approach for Morphic-Athens porting. This one is now a much more advanced version and I can use it in combination with the other drawOnAthensCanvas methods. The drawOnAthensCanvas method in MorphTreeNodeMorph for example just calls this drawOnAthensCanvas: anAthensCanvas self drawOnCanvasWrapperFor: anAthensCanvas which in turn creates an AthensCanvasWrapper and then calls self drawOn: wrapper The same Morphic/Canvas drawOn method is used! But the rendering is done with Athens. Rubric does not work - Itself already duplicates many code, I don't want to look at this now. Brick does not work - It uses some of Canvas' private api, and it is difficult to provide this with Athens. Many other things are working, PLEASE try it out. Morphic on Athens looks great (except the font issue ...). Just take a fresh image (I use 40442) and load the attached morphic_on_athens.cs (-- all code for Morphic-Athens porting) athens_test_display.3.cs (-- Tests Athens for the whole MorphicWorld) Open a Workspace (old workspace preferred) and execute AthensTestDisplay testSwitchToAthensFor: 25. This will switch the world display rendering for 25 seconds from Morphics Canvas-Api to Athens. Feedback welcome. athens_test_display.3.csmorphic_on_athens.cs
Re: [Pharo-dev] Athens/Morphic
---BeginMessage--- super! it just works fine, except the font. I’ve also noticed that the mouse pointer is not drawn while dragging a morph. Do you plane to make a package for it ? I would like to integrate it in Bloc. thanks Alain Le 31 janv. 2015 à 09:48, Marcus Denker marcus.den...@inria.fr a écrit : Nice! It works fine here (font looks strange, yes). The world size seems to be limited to the small window that pharo starts up with? Making it larger seems to still clip at that border. On 23 Jan 2015, at 17:40, Nicolai Hess nicolaih...@web.de mailto:nicolaih...@web.de wrote: 2015-01-10 13:18 GMT+01:00 Nicolai Hess nicolaih...@web.de mailto:nicolaih...@web.de: I think I got the MorphTreeTransformMorph now working, need to clean up the code and maybe I 'll upload this to the athens repository. nicolai I don't know how often I thought I got this working, but NOW I think I got this morphic transformation working :) I give up to use the AthensTextRenderer classes, they aren't implemented fully, to much work for me to do this. Instead, I just subclass the DisplayScanner and reimplemented all Canvas-draw-methods with athens-drawing-methods. Still some morphs aren't ported, but they use some magic. For example, for some morphs the drawOn:Canvas methods calls many other methods drawBackroundOn: aCanvas, drawIconOn: aCanvas, drawLinesOn: ... (for exampe: IndentingListItemMorph, MorphTreeMorph). Porting this morphs means, we have to duplicate all this methods. (Ok there are other options, but I don't want to change something in the original Morphic/Canvas workflow). Other Morphs just delegate the drawing call, that delegate the calls further and deep in this call change the drawing actually happens. This again means I have to duplicate all this methods just to use an AthensCanvas for drawing. So, for those Morphs I use a Canvas Wrapper (AthensCanvasWrapper). I already wrote about this one, it implements (most) of the Morphic/Canvas API on top of Athens, it was an alternative approach for Morphic-Athens porting. This one is now a much more advanced version and I can use it in combination with the other drawOnAthensCanvas methods. The drawOnAthensCanvas method in MorphTreeNodeMorph for example just calls this drawOnAthensCanvas: anAthensCanvas self drawOnCanvasWrapperFor: anAthensCanvas which in turn creates an AthensCanvasWrapper and then calls self drawOn: wrapper The same Morphic/Canvas drawOn method is used! But the rendering is done with Athens. Rubric does not work - Itself already duplicates many code, I don't want to look at this now. Brick does not work - It uses some of Canvas' private api, and it is difficult to provide this with Athens. Many other things are working, PLEASE try it out. Morphic on Athens looks great (except the font issue ...). Just take a fresh image (I use 40442) and load the attached morphic_on_athens.cs (-- all code for Morphic-Athens porting) athens_test_display.3.cs (-- Tests Athens for the whole MorphicWorld) Open a Workspace (old workspace preferred) and execute AthensTestDisplay testSwitchToAthensFor: 25. This will switch the world display rendering for 25 seconds from Morphics Canvas-Api to Athens. Feedback welcome. athens_test_display.3.csmorphic_on_athens.cs ---End Message---
Re: [Pharo-dev] Athens/Morphic
Thank you for your feedback @Marcus I spend hours doing experiments with the font rendering, I think there must be a way to make it look better, because AFAIK there are other cairo based applications and the font rendering looks better. (maybe only linux?) Yes, the AthensTestDisplay is initialized with the current screen extent. We can reset that after the window changed (AthensTestDisplay reset). But this is only a test envionment, if we *ever* change the default morphic rendering backend to Athens, we have to develop a real athens world display workflow. (reinit athens on startup, provide a fallback if we move the image to a system without cairo...) 2015-01-31 10:33 GMT+01:00 Alain Plantec alain.plan...@yahoo.com: super! it just works fine, except the font. I’ve also noticed that the mouse pointer is not drawn while dragging a morph. @Alain Yes the HandMorph is handled like any other Morph, it draws itself and after that it draws all its submorphs. (And actually it does not use any caching, and it is still quite fast) But yes, it needs a special drawOnAthens method. Do you plane to make a package for it ? I would like to integrate it in Bloc. What would like to integrate? I will upload the changes in Athens-Morphic package to the Athens repository. But there are actually 5 different kinds of changes and I will group them as: athens morphic support (missing implementation for borderstyles, fillstyles, ) athens text support (athens based display scanner and some changes to the TextMorphs) athens drawOn (some more drawOnAthensCanvas methods (based on the two above) athens canvas wrapper ( the Athens based wrapper for (Morphic-)Canvas) athens drawOn with canvas wrapper ( other missing drawOnAthensCanvas methods, but those that use the CanvasWrapper for its implementation) And the AthensTestDisplay? I don't know, it is just for the testing, but we need something better. nicolai thanks Alain Le 31 janv. 2015 à 09:48, Marcus Denker marcus.den...@inria.fr a écrit : Nice! It works fine here (font looks strange, yes). The world size seems to be limited to the small window that pharo starts up with? Making it larger seems to still clip at that border. On 23 Jan 2015, at 17:40, Nicolai Hess nicolaih...@web.de wrote: 2015-01-10 13:18 GMT+01:00 Nicolai Hess nicolaih...@web.de: I think I got the MorphTreeTransformMorph now working, need to clean up the code and maybe I 'll upload this to the athens repository. nicolai I don't know how often I thought I got this working, but NOW I think I got this morphic transformation working :) I give up to use the AthensTextRenderer classes, they aren't implemented fully, to much work for me to do this. Instead, I just subclass the DisplayScanner and reimplemented all Canvas-draw-methods with athens-drawing-methods. Still some morphs aren't ported, but they use some magic. For example, for some morphs the drawOn:Canvas methods calls many other methods drawBackroundOn: aCanvas, drawIconOn: aCanvas, drawLinesOn: ... (for exampe: IndentingListItemMorph, MorphTreeMorph). Porting this morphs means, we have to duplicate all this methods. (Ok there are other options, but I don't want to change something in the original Morphic/Canvas workflow). Other Morphs just delegate the drawing call, that delegate the calls further and deep in this call change the drawing actually happens. This again means I have to duplicate all this methods just to use an AthensCanvas for drawing. So, for those Morphs I use a Canvas Wrapper (AthensCanvasWrapper). I already wrote about this one, it implements (most) of the Morphic/Canvas API on top of Athens, it was an alternative approach for Morphic-Athens porting. This one is now a much more advanced version and I can use it in combination with the other drawOnAthensCanvas methods. The drawOnAthensCanvas method in MorphTreeNodeMorph for example just calls this drawOnAthensCanvas: anAthensCanvas self drawOnCanvasWrapperFor: anAthensCanvas which in turn creates an AthensCanvasWrapper and then calls self drawOn: wrapper The same Morphic/Canvas drawOn method is used! But the rendering is done with Athens. Rubric does not work - Itself already duplicates many code, I don't want to look at this now. Brick does not work - It uses some of Canvas' private api, and it is difficult to provide this with Athens. Many other things are working, PLEASE try it out. Morphic on Athens looks great (except the font issue ...). Just take a fresh image (I use 40442) and load the attached morphic_on_athens.cs (-- all code for Morphic-Athens porting) athens_test_display.3.cs (-- Tests Athens for the whole MorphicWorld) Open a Workspace (old workspace preferred) and execute AthensTestDisplay testSwitchToAthensFor: 25. This will switch the world display rendering for 25 seconds from Morphics Canvas-Api to Athens. Feedback welcome.
Re: [Pharo-dev] Athens/Morphic
---BeginMessage--- Yes the HandMorph is handled like any other Morph, it draws itself and after that it draws all its submorphs. (And actually it does not use any caching, and it is still quite fast) the same in Bloc, no caching and it works just fine :) But yes, it needs a special drawOnAthens method. Do you plane to make a package for it ? I would like to integrate it in Bloc. What would like to integrate? In fact I do not see any change when in Bloc. So I guess I will have to adapt Bloc to your changes. I will upload the changes in Athens-Morphic package to the Athens repository. cool. thanks Alain---End Message---
Re: [Pharo-dev] Athens/Morphic
2015-01-10 13:18 GMT+01:00 Nicolai Hess nicolaih...@web.de: I think I got the MorphTreeTransformMorph now working, need to clean up the code and maybe I 'll upload this to the athens repository. nicolai I don't know how often I thought I got this working, but NOW I think I got this morphic transformation working :) I give up to use the AthensTextRenderer classes, they aren't implemented fully, to much work for me to do this. Instead, I just subclass the DisplayScanner and reimplemented all Canvas-draw-methods with athens-drawing-methods. Still some morphs aren't ported, but they use some magic. For example, for some morphs the drawOn:Canvas methods calls many other methods drawBackroundOn: aCanvas, drawIconOn: aCanvas, drawLinesOn: ... (for exampe: IndentingListItemMorph, MorphTreeMorph). Porting this morphs means, we have to duplicate all this methods. (Ok there are other options, but I don't want to change something in the original Morphic/Canvas workflow). Other Morphs just delegate the drawing call, that delegate the calls further and deep in this call change the drawing actually happens. This again means I have to duplicate all this methods just to use an AthensCanvas for drawing. So, for those Morphs I use a Canvas Wrapper (AthensCanvasWrapper). I already wrote about this one, it implements (most) of the Morphic/Canvas API on top of Athens, it was an alternative approach for Morphic-Athens porting. This one is now a much more advanced version and I can use it in combination with the other drawOnAthensCanvas methods. The drawOnAthensCanvas method in MorphTreeNodeMorph for example just calls this drawOnAthensCanvas: anAthensCanvas self drawOnCanvasWrapperFor: anAthensCanvas which in turn creates an AthensCanvasWrapper and then calls self drawOn: wrapper The same Morphic/Canvas drawOn method is used! But the rendering is done with Athens. Rubric does not work - Itself already duplicates many code, I don't want to look at this now. Brick does not work - It uses some of Canvas' private api, and it is difficult to provide this with Athens. Many other things are working, PLEASE try it out. Morphic on Athens looks great (except the font issue ...). Just take a fresh image (I use 40442) and load the attached morphic_on_athens.cs (-- all code for Morphic-Athens porting) athens_test_display.3.cs (-- Tests Athens for the whole MorphicWorld) Open a Workspace (old workspace preferred) and execute AthensTestDisplay testSwitchToAthensFor: 25. This will switch the world display rendering for 25 seconds from Morphics Canvas-Api to Athens. Feedback welcome. athens_test_display.3.cs Description: Binary data morphic_on_athens.cs Description: Binary data
Re: [Pharo-dev] Athens/Morphic
I think I got the MorphTreeTransformMorph now working, need to clean up the code and maybe I 'll upload this to the athens repository. nicolai 2015-01-08 12:27 GMT+01:00 Nicolai Hess nicolaih...@web.de: A new Version of the AthensWrapWorldMorph (useful for testing Athens based drawing for morphs). And some changes for using Athens with the existing Morphs: Many things are working, some important not. I had some terrible, terrible hours fighting with clipping, MorphTransformation and Textrendering. MorphTreeTransform still doesn't work. Textrendering: I solved by using some of AthensText-classes. Those aren't fully working. Tabs or similiar control characters don't work. Text emphasis doesn't work. Different fonts and different colors in one TextMorph is working now! And I still don't know if this is the right way and I did not get any review/feedback on this (issue 13449). (In the meantime we have similiar TxTextModel based classes in the image, maybe I am wasting my time). I had to make one change for creating a pattern paint from a form: AthensCairoSurface#fromForm: I am not sure about this change, but image fillstyle with 1 pixel height didn't work, but now they do (for example, change to vistary or watery theme, they make some heavy use on fillstyles, and it works now with athens). athens_wrap_world.cs is a new AthensWrapWorldMorph for testing Athens rendering, every Morph put on this WrapWorld will be drawn by athens. athens_morphic_support.cs and athens_morphic_textsupports.cs add/fix athens related methods. athens_morphic_drawonathens.cs defines some more drawOnAthensCanvas: methods.
[Pharo-dev] Athens/Morphic
A new Version of the AthensWrapWorldMorph (useful for testing Athens based drawing for morphs). And some changes for using Athens with the existing Morphs: Many things are working, some important not. I had some terrible, terrible hours fighting with clipping, MorphTransformation and Textrendering. MorphTreeTransform still doesn't work. Textrendering: I solved by using some of AthensText-classes. Those aren't fully working. Tabs or similiar control characters don't work. Text emphasis doesn't work. Different fonts and different colors in one TextMorph is working now! And I still don't know if this is the right way and I did not get any review/feedback on this (issue 13449). (In the meantime we have similiar TxTextModel based classes in the image, maybe I am wasting my time). I had to make one change for creating a pattern paint from a form: AthensCairoSurface#fromForm: I am not sure about this change, but image fillstyle with 1 pixel height didn't work, but now they do (for example, change to vistary or watery theme, they make some heavy use on fillstyles, and it works now with athens). athens_wrap_world.cs is a new AthensWrapWorldMorph for testing Athens rendering, every Morph put on this WrapWorld will be drawn by athens. athens_morphic_support.cs and athens_morphic_textsupports.cs add/fix athens related methods. athens_morphic_drawonathens.cs defines some more drawOnAthensCanvas: methods. athens_wrap_world.cs Description: Binary data athens_morphic_textsupport.cs Description: Binary data athens_morphic_support.cs Description: Binary data athens_morphic_drawonathens.cs Description: Binary data
Re: [Pharo-dev] Athens/Morphic
2015-01-08 16:16 GMT+01:00 stepharo steph...@free.fr: Hi nicolai should we include your change in Pharo4.0? No, not all, not yet! To many open questions, to many things I did by trial-and error. I just hope someone is looking at this. And help with the missing/not working things. (TransformMorphs, TextMorphs ) Or telling me all this is not needed because no one will care on morphic, because all is done with bloc/brick/txtext or whatever. Stef Le 8/1/15 12:27, Nicolai Hess a écrit : A new Version of the AthensWrapWorldMorph (useful for testing Athens based drawing for morphs). And some changes for using Athens with the existing Morphs: Many things are working, some important not. I had some terrible, terrible hours fighting with clipping, MorphTransformation and Textrendering. MorphTreeTransform still doesn't work. Textrendering: I solved by using some of AthensText-classes. Those aren't fully working. Tabs or similiar control characters don't work. Text emphasis doesn't work. Different fonts and different colors in one TextMorph is working now! And I still don't know if this is the right way and I did not get any review/feedback on this (issue 13449). (In the meantime we have similiar TxTextModel based classes in the image, maybe I am wasting my time). I had to make one change for creating a pattern paint from a form: AthensCairoSurface#fromForm: I am not sure about this change, but image fillstyle with 1 pixel height didn't work, but now they do (for example, change to vistary or watery theme, they make some heavy use on fillstyles, and it works now with athens). athens_wrap_world.cs is a new AthensWrapWorldMorph for testing Athens rendering, every Morph put on this WrapWorld will be drawn by athens. athens_morphic_support.cs and athens_morphic_textsupports.cs add/fix athens related methods. athens_morphic_drawonathens.cs defines some more drawOnAthensCanvas: methods.
Re: [Pharo-dev] Athens/Morphic
Hi nicolai should we include your change in Pharo4.0? Stef Le 8/1/15 12:27, Nicolai Hess a écrit : A new Version of the AthensWrapWorldMorph (useful for testing Athens based drawing for morphs). And some changes for using Athens with the existing Morphs: Many things are working, some important not. I had some terrible, terrible hours fighting with clipping, MorphTransformation and Textrendering. MorphTreeTransform still doesn't work. Textrendering: I solved by using some of AthensText-classes. Those aren't fully working. Tabs or similiar control characters don't work. Text emphasis doesn't work. Different fonts and different colors in one TextMorph is working now! And I still don't know if this is the right way and I did not get any review/feedback on this (issue 13449). (In the meantime we have similiar TxTextModel based classes in the image, maybe I am wasting my time). I had to make one change for creating a pattern paint from a form: AthensCairoSurface#fromForm: I am not sure about this change, but image fillstyle with 1 pixel height didn't work, but now they do (for example, change to vistary or watery theme, they make some heavy use on fillstyles, and it works now with athens). athens_wrap_world.cs is a new AthensWrapWorldMorph for testing Athens rendering, every Morph put on this WrapWorld will be drawn by athens. athens_morphic_support.cs and athens_morphic_textsupports.cs add/fix athens related methods. athens_morphic_drawonathens.cs defines some more drawOnAthensCanvas: methods.