Re: [Pharo-dev] Convert to Athens
I'm facing some problems with AthensWrapMorph. Basically, when I add a morph, I can't change its position. It just stays in the top left. Whatever I try to do to change its position (self position: 100@100) does not work. Cheers, Jeff On Wed, Nov 20, 2013 at 5:04 PM, J.F. Rick s...@je77.com wrote: Thanks. It works. I already have found a few bugs and one thing I don't understand. (1) A few Paint things seem to implement athensFillRectangle:on: and athensFillPath:on: rather than fillRectangle:on: and fillPath:on:. It seems like it should be the latter rather than the former. I changed the names and the evil rectangle of doom disappeared. (2) Using the AthenWrapMorph, it seems that the bottom row of pixels is not rendered or clipped. I can stop this phenomenon by changing the createSurface method to have the extent be 0@1 bigger. While that works, it seems like there's a bug somewhere in AthensCairoSurface. (3) I ended up changing a morph so that it should render differently. In standard Pharo, I just use self changed and it updates. Is there an equivalent in Athens? Do I have to explicitly tell Athens to rerender it? If so, how? I tried self render but that did not seem to help. Cheers, Jeff On Wed, Nov 20, 2013 at 11:08 AM, Igor Stasenko siguc...@gmail.comwrote: http://www.smalltalkhub.com/#!/~Pharo/Athens On 20 November 2013 09:04, J.F. Rick s...@je77.com wrote: Right. Where is this Athens repository? I have the latest in Pharo30/main (Athens-Morphic-MarcusDenker.23.mcz) and that does not seem to include AthensWrapperMorph. Cheers, Jeff On Wed, Nov 20, 2013 at 8:35 AM, Igor Stasenko siguc...@gmail.comwrote: On 19 November 2013 17:42, J.F. Rick s...@je77.com wrote: Indeed. I would like to know that. It doesn't seem to be included in the latest Pharo 3.0. it could be not yet included. in that case, load most recent Athens-Morphic package from athens repository. Cheers, Jeff On Fri, Nov 15, 2013 at 7:34 PM, Hilaire Fernandes hilaire.fernan...@gmail.com wrote: Le 15/11/2013 14:17, Igor Stasenko a écrit : for transition , i implemented a special morph, AthensWrapMorph which wraps (as its name says) its children morphs and forces them to be rendered by athens (the child morphs will never receive #drawOn: but #drawOnAthensCanvas: instead ). I guess Jeff, may want to know where to find this wrapper. Hilaire -- Dr. Geo http://drgeo.eu -- Jochen Jeff Rick, Ph.D. http://www.je77.com/ Skype ID: jochenrick -- Best regards, Igor Stasenko. -- Jochen Jeff Rick, Ph.D. http://www.je77.com/ Skype ID: jochenrick -- Best regards, Igor Stasenko. -- Jochen Jeff Rick, Ph.D. http://www.je77.com/ Skype ID: jochenrick -- Jochen Jeff Rick, Ph.D. http://www.je77.com/ Skype ID: jochenrick
Re: [Pharo-dev] Convert to Athens
Here's a piece of code to demonstrate the problem: AthensWrapMorph new extent: 300@300; addMorph: (Morph new position: 100@100; extent: 100@100; yourself); openInWorld. I think this should draw a blue square at 100@100. Instead, it draws a blue square at 0@0. What am I doing wrong? Cheers, Jeff On Wed, Dec 4, 2013 at 6:17 PM, J.F. Rick s...@je77.com wrote: I'm facing some problems with AthensWrapMorph. Basically, when I add a morph, I can't change its position. It just stays in the top left. Whatever I try to do to change its position (self position: 100@100) does not work. Cheers, Jeff On Wed, Nov 20, 2013 at 5:04 PM, J.F. Rick s...@je77.com wrote: Thanks. It works. I already have found a few bugs and one thing I don't understand. (1) A few Paint things seem to implement athensFillRectangle:on: and athensFillPath:on: rather than fillRectangle:on: and fillPath:on:. It seems like it should be the latter rather than the former. I changed the names and the evil rectangle of doom disappeared. (2) Using the AthenWrapMorph, it seems that the bottom row of pixels is not rendered or clipped. I can stop this phenomenon by changing the createSurface method to have the extent be 0@1 bigger. While that works, it seems like there's a bug somewhere in AthensCairoSurface. (3) I ended up changing a morph so that it should render differently. In standard Pharo, I just use self changed and it updates. Is there an equivalent in Athens? Do I have to explicitly tell Athens to rerender it? If so, how? I tried self render but that did not seem to help. Cheers, Jeff On Wed, Nov 20, 2013 at 11:08 AM, Igor Stasenko siguc...@gmail.comwrote: http://www.smalltalkhub.com/#!/~Pharo/Athens On 20 November 2013 09:04, J.F. Rick s...@je77.com wrote: Right. Where is this Athens repository? I have the latest in Pharo30/main (Athens-Morphic-MarcusDenker.23.mcz) and that does not seem to include AthensWrapperMorph. Cheers, Jeff On Wed, Nov 20, 2013 at 8:35 AM, Igor Stasenko siguc...@gmail.comwrote: On 19 November 2013 17:42, J.F. Rick s...@je77.com wrote: Indeed. I would like to know that. It doesn't seem to be included in the latest Pharo 3.0. it could be not yet included. in that case, load most recent Athens-Morphic package from athens repository. Cheers, Jeff On Fri, Nov 15, 2013 at 7:34 PM, Hilaire Fernandes hilaire.fernan...@gmail.com wrote: Le 15/11/2013 14:17, Igor Stasenko a écrit : for transition , i implemented a special morph, AthensWrapMorph which wraps (as its name says) its children morphs and forces them to be rendered by athens (the child morphs will never receive #drawOn: but #drawOnAthensCanvas: instead ). I guess Jeff, may want to know where to find this wrapper. Hilaire -- Dr. Geo http://drgeo.eu -- Jochen Jeff Rick, Ph.D. http://www.je77.com/ Skype ID: jochenrick -- Best regards, Igor Stasenko. -- Jochen Jeff Rick, Ph.D. http://www.je77.com/ Skype ID: jochenrick -- Best regards, Igor Stasenko. -- Jochen Jeff Rick, Ph.D. http://www.je77.com/ Skype ID: jochenrick -- Jochen Jeff Rick, Ph.D. http://www.je77.com/ Skype ID: jochenrick -- Jochen Jeff Rick, Ph.D. http://www.je77.com/ Skype ID: jochenrick
Re: [Pharo-dev] Convert to Athens
On 20 November 2013 17:04, J.F. Rick s...@je77.com wrote: Thanks. It works. I already have found a few bugs and one thing I don't understand. (1) A few Paint things seem to implement athensFillRectangle:on: and athensFillPath:on: rather than fillRectangle:on: and fillPath:on:. It seems like it should be the latter rather than the former. I changed the names and the evil rectangle of doom disappeared. this is recent changes. I chosen to namespace selectors. The former selectors should not be used and replaced by new ones (if they still there). I suspect you using outdated version + loaded recent version(s) of packages, going into desync between packages. It is recommended to always use published version of Athens and always load configuration(s). (2) Using the AthenWrapMorph, it seems that the bottom row of pixels is not rendered or clipped. I can stop this phenomenon by changing the createSurface method to have the extent be 0@1 bigger. While that works, it seems like there's a bug somewhere in AthensCairoSurface. I doubt it is in AthensCairoSurface. Most probably it is clipping issue. Need to be carefully checked. Changing the surface size is just workaround. (3) I ended up changing a morph so that it should render differently. In standard Pharo, I just use self changed and it updates. Is there an equivalent in Athens? Do I have to explicitly tell Athens to rerender it? If so, how? I tried self render but that did not seem to help. No any equivalent. Updating UI is orthogonal to Athens. AthenWrapMorph sends drawOnAthensCanvas: to its submorphs, everything else is up to implementation. Cheers, Jeff On Wed, Nov 20, 2013 at 11:08 AM, Igor Stasenko siguc...@gmail.com wrote: http://www.smalltalkhub.com/#!/~Pharo/Athens On 20 November 2013 09:04, J.F. Rick s...@je77.com wrote: Right. Where is this Athens repository? I have the latest in Pharo30/main (Athens-Morphic-MarcusDenker.23.mcz) and that does not seem to include AthensWrapperMorph. Cheers, Jeff On Wed, Nov 20, 2013 at 8:35 AM, Igor Stasenko siguc...@gmail.comwrote: On 19 November 2013 17:42, J.F. Rick s...@je77.com wrote: Indeed. I would like to know that. It doesn't seem to be included in the latest Pharo 3.0. it could be not yet included. in that case, load most recent Athens-Morphic package from athens repository. Cheers, Jeff On Fri, Nov 15, 2013 at 7:34 PM, Hilaire Fernandes hilaire.fernan...@gmail.com wrote: Le 15/11/2013 14:17, Igor Stasenko a écrit : for transition , i implemented a special morph, AthensWrapMorph which wraps (as its name says) its children morphs and forces them to be rendered by athens (the child morphs will never receive #drawOn: but #drawOnAthensCanvas: instead ). I guess Jeff, may want to know where to find this wrapper. Hilaire -- Dr. Geo http://drgeo.eu -- Jochen Jeff Rick, Ph.D. http://www.je77.com/ Skype ID: jochenrick -- Best regards, Igor Stasenko. -- Jochen Jeff Rick, Ph.D. http://www.je77.com/ Skype ID: jochenrick -- Best regards, Igor Stasenko. -- Jochen Jeff Rick, Ph.D. http://www.je77.com/ Skype ID: jochenrick -- Best regards, Igor Stasenko.
Re: [Pharo-dev] Convert to Athens
I've updated to the latest of Athens and I still get this bug, except now the square appears at 0@1. Cheers, Jeff On Wed, Dec 4, 2013 at 6:35 PM, J.F. Rick s...@je77.com wrote: Here's a piece of code to demonstrate the problem: AthensWrapMorph new extent: 300@300; addMorph: (Morph new position: 100@100; extent: 100@100; yourself); openInWorld. I think this should draw a blue square at 100@100. Instead, it draws a blue square at 0@0. What am I doing wrong? Cheers, Jeff On Wed, Dec 4, 2013 at 6:17 PM, J.F. Rick s...@je77.com wrote: I'm facing some problems with AthensWrapMorph. Basically, when I add a morph, I can't change its position. It just stays in the top left. Whatever I try to do to change its position (self position: 100@100) does not work. Cheers, Jeff On Wed, Nov 20, 2013 at 5:04 PM, J.F. Rick s...@je77.com wrote: Thanks. It works. I already have found a few bugs and one thing I don't understand. (1) A few Paint things seem to implement athensFillRectangle:on: and athensFillPath:on: rather than fillRectangle:on: and fillPath:on:. It seems like it should be the latter rather than the former. I changed the names and the evil rectangle of doom disappeared. (2) Using the AthenWrapMorph, it seems that the bottom row of pixels is not rendered or clipped. I can stop this phenomenon by changing the createSurface method to have the extent be 0@1 bigger. While that works, it seems like there's a bug somewhere in AthensCairoSurface. (3) I ended up changing a morph so that it should render differently. In standard Pharo, I just use self changed and it updates. Is there an equivalent in Athens? Do I have to explicitly tell Athens to rerender it? If so, how? I tried self render but that did not seem to help. Cheers, Jeff On Wed, Nov 20, 2013 at 11:08 AM, Igor Stasenko siguc...@gmail.comwrote: http://www.smalltalkhub.com/#!/~Pharo/Athens On 20 November 2013 09:04, J.F. Rick s...@je77.com wrote: Right. Where is this Athens repository? I have the latest in Pharo30/main (Athens-Morphic-MarcusDenker.23.mcz) and that does not seem to include AthensWrapperMorph. Cheers, Jeff On Wed, Nov 20, 2013 at 8:35 AM, Igor Stasenko siguc...@gmail.comwrote: On 19 November 2013 17:42, J.F. Rick s...@je77.com wrote: Indeed. I would like to know that. It doesn't seem to be included in the latest Pharo 3.0. it could be not yet included. in that case, load most recent Athens-Morphic package from athens repository. Cheers, Jeff On Fri, Nov 15, 2013 at 7:34 PM, Hilaire Fernandes hilaire.fernan...@gmail.com wrote: Le 15/11/2013 14:17, Igor Stasenko a écrit : for transition , i implemented a special morph, AthensWrapMorph which wraps (as its name says) its children morphs and forces them to be rendered by athens (the child morphs will never receive #drawOn: but #drawOnAthensCanvas: instead ). I guess Jeff, may want to know where to find this wrapper. Hilaire -- Dr. Geo http://drgeo.eu -- Jochen Jeff Rick, Ph.D. http://www.je77.com/ Skype ID: jochenrick -- Best regards, Igor Stasenko. -- Jochen Jeff Rick, Ph.D. http://www.je77.com/ Skype ID: jochenrick -- Best regards, Igor Stasenko. -- Jochen Jeff Rick, Ph.D. http://www.je77.com/ Skype ID: jochenrick -- Jochen Jeff Rick, Ph.D. http://www.je77.com/ Skype ID: jochenrick -- Jochen Jeff Rick, Ph.D. http://www.je77.com/ Skype ID: jochenrick -- Jochen Jeff Rick, Ph.D. http://www.je77.com/ Skype ID: jochenrick
Re: [Pharo-dev] Convert to Athens
On 14 November 2013 19:47, Stéphane Ducasse stephane.duca...@inria.frwrote: Hi jeff We should rewrite the drawnOn: method as drawAthensOn: and we should simplify the logic because often it is well… terrible. Now have a look at the way the tutorial Morph is done SceneView something because it shows the logic. I know that there is a morph to render morph in athens. Yes, there is AthensSceneView (read its class comment, its really easy to use) for transition , i implemented a special morph, AthensWrapMorph which wraps (as its name says) its children morphs and forces them to be rendered by athens (the child morphs will never receive #drawOn: but #drawOnAthensCanvas: instead ). Like that you can start using athens for current state of morphic and later, when whole World will be rendered by athens, you will no longer will need to use wrapper, so you will just throw it out from hierarchy without changing your existing code. Stef On Thu, Nov 14, 2013 at 5:56 PM, kilon alios kilon.al...@gmail.comwrote: Athens is a vector graphics library, its not a GUI API. Athens will not give you buttons, menus, drop down lists and GUI elements. It will give you however the means to draw all those things and much more. As far as I understand it, Athens is a vector graphics library that will eventually replace BitBlt for rendering Morphs in Pharo. For a time, there will be some things rendered with Athens and some things rendered with BitBlt. How do I make the transition from BitBlt rendering to Athens rendering? Cheers, Jeff -- Jochen Jeff Rick, Ph.D. http://www.je77.com/ Skype ID: jochenrick -- Best regards, Igor Stasenko.
Re: [Pharo-dev] Convert to Athens
Le 15/11/2013 14:17, Igor Stasenko a écrit : for transition , i implemented a special morph, AthensWrapMorph which wraps (as its name says) its children morphs and forces them to be rendered by athens (the child morphs will never receive #drawOn: but #drawOnAthensCanvas: instead ). I guess Jeff, may want to know where to find this wrapper. Hilaire -- Dr. Geo http://drgeo.eu
[Pharo-dev] Convert to Athens
Hi, I want to start using Athens for rendering. How do I get started? I've gone ahead and upgraded to the latest Pharo 3.0 and taken a look at the example classes. While that gives me some ideas about what the Athens canvas is capable of (impressive), I have an existing Morphic application that I want to redo with Athens rendering. I'm not sure how to begin doing that. I couldn't find a tutorial to get me started on doing conversion. Is there such a thing? It would be nice to have a morphic example (i.e., multiple morphs composed together all using Athens for rendering) shipped with the image. Cheers, Jeff -- Jochen Jeff Rick, Ph.D. http://www.je77.com/ Skype ID: jochenrick
Re: [Pharo-dev] Convert to Athens
Hello Athens is a vector graphics library, its not a GUI API. Athens will not give you buttons, menus, drop down lists and GUI elements. It will give you however the means to draw all those things and much more. I am actually making an Athens driven application myself , called Hyperion , a vector graphics editor and I hope also a designer that will allow you to make GUIs with Athens. But this project will take me a very long time. The best source right now for learning Athens is the Athens tutorial, you can find it in the smalltalkhub repo in the Athens-Tutorial package. It has 32 very useful examples which will give you a very good idea of what Athens can do. I will try also to contribute to Athens documentation in the near future , but for now I am very new to all this and these things take time. Also Igor which is the creator of Athens , always welcomes questions in this list and always replies ;) So don't be shy, ask away :) On Thu, Nov 14, 2013 at 6:39 PM, J.F. Rick s...@je77.com wrote: Hi, I want to start using Athens for rendering. How do I get started? I've gone ahead and upgraded to the latest Pharo 3.0 and taken a look at the example classes. While that gives me some ideas about what the Athens canvas is capable of (impressive), I have an existing Morphic application that I want to redo with Athens rendering. I'm not sure how to begin doing that. I couldn't find a tutorial to get me started on doing conversion. Is there such a thing? It would be nice to have a morphic example (i.e., multiple morphs composed together all using Athens for rendering) shipped with the image. Cheers, Jeff -- Jochen Jeff Rick, Ph.D. http://www.je77.com/ Skype ID: jochenrick
Re: [Pharo-dev] Convert to Athens
Hi jeff We should rewrite the drawnOn: method as drawAthensOn: and we should simplify the logic because often it is well… terrible. Now have a look at the way the tutorial Morph is done SceneView something because it shows the logic. I know that there is a morph to render morph in athens. Stef On Thu, Nov 14, 2013 at 5:56 PM, kilon alios kilon.al...@gmail.com wrote: Athens is a vector graphics library, its not a GUI API. Athens will not give you buttons, menus, drop down lists and GUI elements. It will give you however the means to draw all those things and much more. As far as I understand it, Athens is a vector graphics library that will eventually replace BitBlt for rendering Morphs in Pharo. For a time, there will be some things rendered with Athens and some things rendered with BitBlt. How do I make the transition from BitBlt rendering to Athens rendering? Cheers, Jeff -- Jochen Jeff Rick, Ph.D. http://www.je77.com/ Skype ID: jochenrick