Hi Torsten Thanks for your interest. Yes Bloc is important to me (I'm waiting for it since Miro and Miro2 and all the work I asked igor to do around Athens and SDL) Glenn sent me a teaser (see attachement) last week Le 2/8/16 à 12:58, Torsten Bergmann a écrit :
Hi Stef,
from past discussions/threads I know "Bloc" as Pharo's possible future UI, watched the video [1] and have played with the premade image from the CI Server. Also the Brick layer (which is on top of Bloc) was announced as a preview once [2].
Now in some of the mails it was mentioned that there will be or already is a "Bloc 2" (see [3]). Can you or the person working on it summarize:
- who works on it
Glenn Cavarle with Alain Plantec (and me from far and too little time) and Doru but I do not know much from that part.
- what are the goals, what will be included (like the CSS styling) Glenn implemented a new version of Bloc because he needed one for his job The flux in Bloc from October did not match with his requirements so without telling it to Alain and me he built one until he could show us something working and it works. I should say that I was also frustrated by the results of the discussions since October. Especially since before presenting Bloc to ESUG we got 4 versions and I tried to follow alain and help him documenting Bloc and while my stupid questions helped him it was difficult for me. So I really appreciate the effort of Glenn.
In June we spent three days to understand if we should merge Bloc2 into Bloc and we decided the inverse because his implementation is based on SDL and a separate window) it does not suffer from the morphic plague. So for example the event bubbling is nice and clean. The idea is to be able to use one window (morphic) to develop all the widgets and displayed in the SDL window needed up to the point where we can remove morphic. So Bloc2 can benefit from the work of Aliak on Sparta and the mozzD backend. The idea is also to integrate the work on aliak on layouts.
- where it is hosted For the moment you can find it in GlennCavarle repo on smalltalkhub. Glenn is working for a company for ihs PhD and a week on two he is working on Bloc2. Bloc2 is key for Glenn and Alain since Thales wants to use it.
MCHttpRepository location: 'http://smalltalkhub.com/mc/GlennCavarle/Bloc2/main' user: '' password: '' Now with the name removal we got some trouble to load it in Pharo 60. You can load it in Pharo 50. Say yes to all the warnings. Doru told me that he is talking with Glenn and that Bloc2 will be moved to the Bloc repo (by the end of this week). Esteban is following the discussions and will help for the SDL part and FFI. The SDL is fragile and the system freezes from time to time. But 64 bits first :)
- what the status is The core design looks stable to me. We can import SVG, create first buttons and style them (the skins in Bloc2 are so far not a theme) and the CSS is not for Skins but for style. Widgets can start to be built on top. The problem is that Brick took a glitch in Bloc1 and uses it against the expectation of Alain. So I do not think that we can port easily Brick to Bloc2. I started to read everything. And I will start to improve the class comments.
Bloc2 - nice core - SDL based - nice bubbling of event - Bloc1+ Sparta and MozzD back end - Bloc1+ aliak layout - Bloc1 event handler - CSS styling Here is what glenn sent me last week (I translated it but thunderbird crashed!) Concernant Bloc, ça devient assez stable mais il reste encore des sujets à valider/améliorer/stabiliser: - styles&themes -> 1ère ébauche réalisée - Path (Shapes custom) -> voir ce que l'on peut reprendre de Athens-SVG - KeyBinding -> 1ère version très simple réalisée mais sans la gestion des séquences (ctrl A+B) - Animation -> première version plutôt concluante - Parenté des fenêtres ou sous-fenêtres - Amélioration des performances de dessin par création de surfaces au niveau de BlElement -> premier résultats concluant mais non-intégré. - Gestion des Gestures (MultiTouch) -> migration des gestures d'OSWindow au niveau de Bloc sous forme d'EventListener (pas de gestures globales) - Gestion du Focus keyboard -> la base y est mais il reste encore pas mal de boulot - Mise en relation DnD et Clipboard -> l'instructure est là mais il reste à faire le "cablage" - ... J'essaie de mettre ma roadmap au propre pour début de semaine prochaine. Les prochains widgets sur ma liste sont: scrollbar & liste Now Doru told me that he should discuss with Glenn of certain design point. My wish is that such discussions do not kill Bloc2 because else I will leave this community :). Now I'm confident that something good will happen because Glenn needs it for his future.
- if there is already a CI build or preview There are examples. During holiday I tried to set up a jenkins but the network was too bad. This is on my todo but I'm busy since I'm back to work.
- how Brick will relate to "Bloc 2", will there be a "Brick 2" as well? I think that Brick should be rewritten on top of Bloc2 because the design of Brick was the thing that made Bloc get changed in October and after it changed too much. - if it will work with Spec Spec is orthogonal. As soon as we will have widgets we will do a Spec binding for them. In the long term we will see if another framework wants to replace Spec to compose widgets (I know that alain has some ideas) but for now we want to be able to move our tool fast to new Brick and it should be possible and it should also simplify Spec because some of the design points of Spec are ugly because the old widget relay on change/update and what is needed is a notification (announcement). Even if not all could be answered (yet) more informations on "Bloc 2" would really be nice, ideally as a status summary to the community.
Thanks T.
[1]https://vimeo.com/115336678 [2]http://gtoolkit.org/brick/ [3]http://lists.pharo.org/pipermail/pharo-dev_lists.pharo.org/2016-August/12311...