<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Sun, Sep 14, 2014 at 10:07 AM, Nicolai Hess <span dir="ltr"><<a href="mailto:nicolaihess@web.de" target="_blank">nicolaihess@web.de</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><span class="">2014-09-14 18:20 GMT+02:00 kilon alios <span dir="ltr"><<a href="mailto:kilon.alios@gmail.com" target="_blank">kilon.alios@gmail.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr">Plenty ? no <div><br></div><div>A few ? yes</div><div><br></div><div>Woden is certainly a project that I want it to be successful and keep going forward but at the moment I can't say its usable when each time I resize the window it corrupts the viewport. </div><div><br></div><div>No offense intended but lately the more I dive inside Pharo the more I feel I waste my time, I love the IDE and the environment and live coding but using the libraries is a never ending struggle for me. I agree with Nicolai the landscape is not good, Pharo really lacks mature libraries . Sure we like to bash Java but Java libs are rock solid and very well documented. I bring Java as example. Again I am not complaining at all, I knew when I came to Pharo that I will have to face these limitations. I also don't feel comfortable asking questions all the time as if I want others to do my code but I did not have much of a choice. I just cant deal with the lack of documentation any more.</div><div><br></div><div>I think Pharo as a general idea is great , you definitely have taken the Squeak fork one big step further but you have a very long road ahead of you to make Pharo a modern environment. Asking for animating a window with good performance is one of the very basics of a good GUI API. I know you have limited resources and once again I am not complaining at all I just present my opinion. Its clear that Pharo needs a lot more people to contribute and bring the system forward at least to solve the basic problems.</div></div></blockquote><div><br></div></span><div>This is definitly wrong :)<br></div><div>Especially the older squeak versions were ahead of its time with (animated) interactive UI elements. <br>Java (Swing) does not come with an animation framework for the UI (JavaFX, yes but that took its time). <br>There was a timing/animation framework used by Roman Guy for its FilthyRich clients, that did really look great. <br>He created UIs that never looked like ordinary Java UIs. But I think that was done by few people only. <br>So, doing this for pharo should be doable. (I do remember something like that was done for<br>Morphic (maybe this one: <a href="https://www.hpi.uni-potsdam.de/hirschfeld/trac/SqueakCommunityProjects/wiki/animations" target="_blank">https://www.hpi.uni-potsdam.de/hirschfeld/trac/SqueakCommunityProjects/wiki/animations</a>))<br><br></div><div>yoiu can do great thinks with Qt for C++ simple animation with the good old qwidget and<br>the newer qml-framework. That's what I would call feature UIs (mostly what is done nowadays on mobile devices and other<br></div><div>"platforms" have their own frameworks (java)android and Object-C (IPhone).<br><br></div><div>And I think we will see more "feature"-UI on the web with HTML5/Canvas/Web-GL. <br><br></div><div>Do we need a good new UI framework for pharo? Yes.<br></div><div>Do we need many developers for working on this ? No, I think a handfull (2-4) people would be enough.<br></div><div>What pharo really needs are:<br></div><div>Many more developers *using* pharo as a platform.</div></div></div></div></blockquote><div><br></div><div>Agreed. But one real problem with the Squeak/Pharo UI is the lack of native windows. There is an old project Graphics-External-Ffenestri but AFAICT it isn't being used. But there /is/ a really good prototype of a native window system above Squeak done by Vassili Bykov in Newspeak. The native windows contain morphs, but anything, including MVC, can be present. This provides native Win32 Windows (doing other platforms is merely work) /and/ the ability to snapshot and bring back up windows on a different platform (e.g. open in win32, snapshot and bring up in Squeak/Pharo Morphic windows, or vice verse), and the ability to do this dynamically. Is anyone motivated to port the Newspeak code back to Squeak/Pharo?</div><div><br></div><div><br></div><div>If you're interested, contact me, or Vassili, or Bob Westergaard and ask about Brazil (think plumbing).</div><div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><span class="HOEnZb"><font color="#888888"><div>nicolai<br></div></font></span><div><div class="h5"><div><br><br> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div><br></div><div>Thank you all people who helped me. But I don't think it worths to make my project in Pharo, too many problems. I feel privileged to have helped you with my contributions , I wish the Pharo the best. </div><div><br></div><div>I could return back to Python but I think its time for me to bite the bullet and learn C/C++, since graphics is an area that deeply interest me (more as an artist less as a coder), so I don't have much of choice. Maybe I can brings some of my code back to Pharo with NB wrappers , I definitely will keep a close eye on Pharo. </div><div><br></div><div>In a few months I will also present to the Pharo community a secret last contribution ;) </div></div><div><div><div class="gmail_extra"><br><div class="gmail_quote">On Sun, Sep 14, 2014 at 6:26 PM, <a href="mailto:phil@highoctane.be" target="_blank">phil@highoctane.be</a> <span dir="ltr"><<a href="mailto:phil@highoctane.be" target="_blank">phil@highoctane.be</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><p dir="ltr">Do you know anything better for futuristic UIs at the moment?</p>
<p dir="ltr">I guess that we aren't talking about commercial dev here. And if we would rely on everything being documented in Pharo, errr, we wouldn't go too far.</p>
<p dir="ltr">That being said, there are plenty of examples in the Woden code.</p>
<p dir="ltr">Phil</p>
<div class="gmail_quote">Le 14 sept. 2014 16:28, "Nicolai Hess" <<a href="mailto:nicolaihess@web.de" target="_blank">nicolaihess@web.de</a>> a écrit :<div><div><br type="attribution"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div><div><div><div>Why should he use it, now?<br></div>I mean, is there a stable API? Or a roadmap ?<br><br></div>Sometimes it is a bit dangerous to trust on "bleeding edge" pharo frameworks. <br></div>I did some work based on Roassal3D just to found out there won't be any further development.<br></div><div>The same happens with Roassal and GraphET.<br></div>The same can happen with Woden too :)<br><br><br><br><div><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">2014-09-14 14:13 GMT+02:00 <a href="mailto:phil@highoctane.be" target="_blank">phil@highoctane.be</a> <span dir="ltr"><<a href="mailto:phil@highoctane.be" target="_blank">phil@highoctane.be</a>></span>:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><p dir="ltr">Why not use Woden?</p>
<p dir="ltr">Phil <br>
</p>
<div class="gmail_quote">Le 14 sept. 2014 12:51, "kilon alios" <<a href="mailto:kilon.alios@gmail.com" target="_blank">kilon.alios@gmail.com</a>> a écrit :<div><div><br type="attribution"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr">yeah I am afraid transparency is very important to me </div><div class="gmail_extra"><br><div class="gmail_quote">On Sun, Sep 14, 2014 at 1:34 PM, Nicolai Hess <span dir="ltr"><<a href="mailto:nicolaihess@web.de" target="_blank">nicolaihess@web.de</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><span>2014-09-14 11:32 GMT+02:00 stepharo <span dir="ltr"><<a href="mailto:stepharo@free.fr" target="_blank">stepharo@free.fr</a>></span>:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<div bgcolor="#FFFFFF" text="#000000">
I remember that there was an animated gif support. <br>
Now I do not remember exactly.<br></div></blockquote><div><br></div></span><div>At least in squeak there is an AnimatedImageMorph, that can load and display animated gifs.<br></div><div>That works and is quite fast even for multiple instances. But of course no (alpha-)transparency<br></div><div><div><div><br> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div bgcolor="#FFFFFF" text="#000000">
<br>
for roassal2 have a look at the viva classes: this is the animation
frameworks that igor designed.<br>
<br>
Stef<div><div><br>
<br>
<br>
<div>On 14/9/14 10:22, kilon alios wrote:<br>
</div>
<blockquote type="cite">
<div dir="ltr">so I tried to animate in Roassal having two
different images display with a delay for few millisecond but it
only displays the second image with this code
<div><br>
</div>
<div>
<div>form1 :=Form
fromFileNamed:'/Users/kilon/Pictures/pharo.png'.</div>
<div>form2 :=Form
fromFileNamed:'/Users/kilon/Pictures/box.png'.</div>
<div>v := RTView new.</div>
<div>c := v canvas.</div>
<div>s := TRBitmapShape new.</div>
<div>s form: form1.</div>
<div>c addShape: s.</div>
<div>v open.</div>
<div><br>
</div>
<div>(1 to: 100) do: [ :index| </div>
<div>s form: form1.</div>
<div>s signalUpdate .</div>
<div>"(Delay forMilliseconds: 1000 ) wait."</div>
<div>s form: form2.</div>
<div>s signalUpdate .</div>
<div>(Delay forMilliseconds: 1000) wait.].</div>
</div>
<div><br>
</div>
<div>I looked into RTAnimation but dont know how to use it for
this example. Any help ? Does Roassal 2 support such
animations ? </div>
<div><br>
</div>
<div>if I do s form: and then s signalUpdate for each form
separately it works fine but inside the loops does not seem to
work , I tried bigger delays with no effect. </div>
</div>
<div class="gmail_extra"><br>
<div class="gmail_quote">On Sun, Sep 14, 2014 at 10:57 AM,
stepharo <span dir="ltr"><<a href="mailto:stepharo@free.fr" target="_blank">stepharo@free.fr</a>></span>
wrote:<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<div bgcolor="#FFFFFF" text="#000000"> Ronie when you ready
I can help writting a chapter for the nex book.<br>
<br>
Stef
<div>
<div><br>
<br>
<div>On 13/9/14 21:42, Ronie Salgado wrote:<br>
</div>
<blockquote type="cite">
<div dir="ltr">Hello,<br>
<br>
<div>
<blockquote style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex" class="gmail_quote"><span>
<div>On 13/9/14 20:11, Enrico Schwass wrote:<br>
</div>
<blockquote type="cite">
<div>Hi </div>
<div><br>
</div>
<div>another option could be the verse
protocol. There was a plugin for Maya
and Blender to do realtime rendering.
Dont know if there is some automatic
Swig-like wrapper for smalltalk but FFI
might work. <br>
</div>
</blockquote>
<br>
</span> There is Wig like wrapper for Pharo
done by ronie salgado.<br>
</blockquote>
<div><br>
</div>
<div>I have an adapted version of Swig for Pharo
NativeBoost here: <a href="https://github.com/ronsaldo/swig" target="_blank">https://github.com/ronsaldo/swig</a><br>
<br>
</div>
<div>Currently I am using it to generate my
Bullet bindings (available here: <a href="https://github.com/ronsaldo/bullet-pharo" target="_blank">https://github.com/ronsaldo/bullet-pharo</a>)
that can be used as an example of using Swig.
<br>
</div>
<div>I still have to improve more my Swig
generator, by writing documentation and fixing
some bugs.<br>
<br>
</div>
<div>Greetings,<br>
</div>
<div>Ronie<br>
</div>
</div>
</div>
<div class="gmail_extra"><br>
<div class="gmail_quote">2014-09-13 16:11
GMT-03:00 stepharo <span dir="ltr"><<a href="mailto:stepharo@free.fr" target="_blank">stepharo@free.fr</a>></span>:<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<div bgcolor="#FFFFFF" text="#000000"><span> <br>
<div>On 13/9/14 20:11, Enrico Schwass
wrote:<br>
</div>
<blockquote type="cite">
<div>Hi </div>
<div><br>
</div>
<div>another option could be the verse
protocol. There was a plugin for Maya
and Blender to do realtime rendering.
Dont know if there is some automatic
Swig-like wrapper for smalltalk but
FFI might work. <br>
</div>
</blockquote>
<br>
</span> There is Wig like wrapper for Pharo
done by ronie salgado.<br>
<br>
Stef
<div>
<div><br>
<br>
<blockquote type="cite">
<div><br>
</div>
<div><a href="http://youtu.be/c_D2YJSNj8I" target="_blank">http://youtu.be/c_D2YJSNj8I</a></div>
<div><br>
</div>
<div>Almost a decade ago I did some
ruby bindings by hand. It was
working out of the box</div>
<div><br>
</div>
<div>Bye</div>
<div>Enno</div>
<div><br>
Am 13.09.2014 um 16:11 schrieb kilon
alios <<a href="mailto:kilon.alios@gmail.com" target="_blank">kilon.alios@gmail.com</a>>:<br>
<br>
</div>
<blockquote type="cite">
<div>
<div dir="ltr"><span><br>
</span>" I am curious. You mean
rendering Bitmap from blender,
for later use in Pharo UI? "
<div><br>
</div>
<div>yes exactly. Blender can
render in all popular graphics
files, most used are png.
Animation frames can be
rendered each frame in its own
file. </div>
<div><br>
</div>
<div>So basically its a lot like
the average games out there. </div>
<div><br>
</div>
<div>"I will suggest bare bone
Morphic mainly, then Athens
when you need vectorial
drawing."</div>
<div><br>
</div>
<div>ok </div>
<div><br>
</div>
<div>"For iStoa I decided to go
purely Morphic, I have a lot
of bitmap. Bitmap source is
SVG, then converted to PNG,
overscaled for production use.
Then from iStoa, depending on
the application window extent,
the bitmap are downscaled
accordingly, I am pretty
satisfied by the result."</div>
<div><br>
</div>
<div>I fail to understand how
your bitmap source is SVG for
me bitmap is a raster graphic
format svg is procedural
graphic format. Two opposite
things. <br>
<div><span><br>
</span></div>
<div><span>"Sure. The
downpoint, you will depend
on one additional layer."</span></div>
<div><span><br>
</span></div>
<div><span>dependency is not
an issue. Afterall the
graphic files themselves
will be far bigger
download even more so if
the GUI becomes very
large.</span></div>
<div><span><br>
</span></div>
<div><span>"</span>Nice. What
will be the expected
outcomes of such API, I am
not sure to understand and I
am curious." </div>
<div><br>
</div>
<div>Well Blender besides
creating 3d objects (which
can be used as 2d objects
too) it can also create 3d
unrendable objects. That
means that objects produce
no graphics and have the
role of placeholders or
helpers, for example when
you want an emitter of light
or emitter of a physical
power like gravity or wind.
Those are called dummy
objects and I could use them
to give characteristics to
the graphics , for example I
could use a dummy to define
the are of influence of a
mouse click , or what type
of event the bitmap will
respond to. That means you
wont have to import the
graphics manually to pharo
and create a separate morph
for each bitmap and then set
the events but rather press
a button in blender and then
Ephestos will import then
bitmaps to pharo , set the
events and create the morphs
automagically. </div>
<div><br>
</div>
<div>So basically you will be
using Blender as a GUI
designer. </div>
<div><span><br>
</span></div>
<div><span>"</span>Use fuel to
store the state of your
application objects."</div>
<div><br>
</div>
<div>ah nice so fuel is a good
candidate. </div>
<div><br>
</div>
<div>
<div class="gmail_extra">I
will also take a look at
Dr Geo and Phratch , both
apps have custom GUIs and
use only Morphic (Dr Geo
using Athens for the
geometry primitives) . </div>
</div>
</div>
</div>
</div>
</blockquote>
</blockquote>
<br>
</div>
</div>
</div>
</blockquote>
</div>
<br>
</div>
</blockquote>
<br>
</div>
</div>
</div>
</blockquote>
</div>
<br>
</div>
</blockquote>
<br>
</div></div></div>
</blockquote></div></div></div><br></div></div>
</blockquote></div><br></div>
</blockquote></div></div></div>
</blockquote></div><br></div>
</blockquote></div></div></div>
</blockquote></div><br></div>
</div></div></blockquote></div></div></div><br></div></div>
</blockquote></div><br><br clear="all"><div><br></div>-- <br>best,<div>Eliot</div>
</div></div>