Hi, Indeed, we had an intense exchange and finally the decision was to change the basic design. In short, the main reason for this was to move towards a design that relies on only one single tree of elements for easing rendering and interaction.
Previously, BlMorph had a BlShape that knew how to draw the morph. This was Ok for single shapes, but the design got too complicated when we tried to have composites because the delegation had to essentially go through two hierarchies. We had a similar experience with Mondrian and Roassal before. In the current design, we have only one tree of elements, and each element has a basic shape that holds the path but it does not draw. Essentially, the shape provides the background space on which the morph can draw. One of the ideas that drove the design si that Bloc should provide a simple yet flexible low level design, and allow higher level abstractions on top. For example, we would like to have an engine like Roassal be directly implemented using bloc elements, without relying on its own world built in a canvas. Cheers, Doru > On Feb 6, 2016, at 10:00 AM, stepharo <[email protected]> wrote: > > > > Le 5/2/16 13:51, Sean P. DeNigris a écrit : >> Aliaksei Syrel wrote >>> Root element is BlElement. No more BlView. Added BlShape and BlPath. >> Would you summarize that design decision? > > oh boy: > 50 emails, chat over skype, visit of aleksei to Brest during 3 days, breaking > Bloc core.... > So alex can try :) > > > Stef >> >> >> >> ----- >> Cheers, >> Sean >> -- >> View this message in context: >> http://forum.world.st/Recent-changes-in-Bloc-no-more-BlMorph-tp4875999p4876041.html >> Sent from the Pharo Smalltalk Developers mailing list archive at Nabble.com. >> >> > > -- www.tudorgirba.com www.feenk.com "One cannot do more than one can do."
