Hi again! Well, we had an other Software Smalltalk Night and we want to try to make a Smalltalk Kinect Fun project. It was pretty easy to conenct the Kinect camera with a Squeak For Scratch image. That enabled everybody to easily get going.
Since a few days I try to prepare further steps and I must say,... I am completely lost in the UI frameworks. Let's have a simple example. A window with a title, 2 labels, 2 entry fields, one checkbox and 2 buttons. e.g. a login form for a Pharo application. We will need the parts, the layout, the events, the starting point as well as a result handler.... After 5 days I can tell ,that I am lost in Morphic, UIManager, Traits/No-Traits, Spec, GLMMorphic, Poly.... And sometimes things are even mixed up and I am not able to decide which approach to follow,... Some examples store widgets in instance variables, others initialize the morph based on the underlying model. MVC is sometimes mixed up... And this was just the topic parts and partially layout and events.... How does one open this login as an overlay, or as temporary replacement for the main content.... I tried Spec, but somehow it is much more difficult to get a proper functioning layout that behaves mature during resize and such events than expected. Is it possible to take a more Squeakish approach and just instantiate ui components compose them, define handler/callback symbols in those instances and then generate a specification/code out of this? Can anybody please point me at a full documentation on how to do things properly? There are many examples for the widgets but there is not a single example on how to built a real framework based on MVC in Pharo. Well and unfortunately a lot of stuff is outßdated already. I somehow have the feeling that one and the same thing was implemented over and over again. I honestly try to bring Pharo/Smalltalk to the crowd, but somhow I feel like the UI development removes all the productivity that one usually has with Smalltalk. I'd like to provide the interested locals here with a bsic implementation that they will be able to extend or go on with. But I do not want to invest time into not supported things. Thank you for any hint again! Sebastian