[maemo-developers] New apps for fremantle with Qt?

From: Jed Cousin jed.cousin at gmail.com
Date: Mon Sep 7 01:33:14 EEST 2009
The Clutter Project has developed a means for Clutter and Qt to
inter-operate: clutter-qt. [1]

Given Qt-proper's existing composite widget capabilities and OpenGL
integration, clutter-qt may seem somewhat redundant.

However, clutter-qt may ease the burden of porting code which heavily
leverages Clutter from GTK+ to Qt, if so desired.

[1] http://git.clutter-project.org/cgit.cgi?url=clutter-qt/tree/


Peace,

Jed Cousin

"Perfection is achieved, not when there is nothing more to add, but
when there is nothing left to take away."  --Antoine de Saint Exupéry
--




On Sun, Sep 6, 2009 at 1:48 PM, <Karoliina.T.Salminen at nokia.com> wrote:
>>> On the other hand, it was a lot easier to start the same from scratch on Startup wizard with Clutter because there
>>> was not the incompatible way of thinking as a barrier between the desired functionality and what is already there because there was
>>> nothing there already, just start from grass root level from atomic blocks (start by building a custom ClutterActor)
>>> and then figure out how to stack Actors and how to animated them to get e.g. a kinetic scroll list done. As there was no base widget, there
>>> was no limitations of the base widget and no associated problems, just putting some lego blocks together and it was done. With some
>>> adjustable parameters and then fine tuning the feel with these parameters, it was actually quite efficient to do it.
>>Sure but the question here is not to make super customized widgets but
>>rather to use widgets the way they should be used in an interface,
>>following the established guidelines to provide the user with a nice
>>experience.
>>
>>If you have custom widgets in every program on a system, users will find
>>it harder to use. They will not know what to expect when they tap on a
>>widget they never saw before... that's the point of having guidelines.
>
> Please read my sentences above. I meant about replicating the functionality of the widget
> done with other technology with another and ending up with exactly the same user experience.
> It is possible and the guidelines can be followed to create the new widgets.
> There is nothing that prevents that, it is just some additional work required for the developer
> as there are hildon widgets lacking from the selection of widgets on the Qt side.
>
> If you compare the kinetic scroll list on the startup wizard to the kinetic scroll list elsewhere,
> you may find that it functions the same way, despite that is Clutter and elsewhere it is Gtk.
> Similarly I am sure it can be done also with the Qt in the same way, so that as end user you can't see the difference
> (except that on different toolkits there may be slight performance differences, e.g. pure clutter
> can be obviously faster than Gtk and similarly the performance may differ on the Qt version to direction or another
> depending on the case).
>
> It just requires accurate tuning for all the parameters to get the scroll behavior exactly the same and
> then basically the end result is the same. It is possible, and not even hard, it just needs some work and fine tuning.
> The Qt port is implemented with the community and the community
> and community can propose patches to Antonio/Kate instead so that the implemented widgets can be joined to the their port rather than
> everybody implementing their own versions without contributing them to the port ending up with different results on each
> program. Of course nobody prohibits people to do that either, this is free software and you have the freedom of choice always to
> do one way or the another.
>
> What comes to the kinetic scroll list, it has certain little details that are important, otherwise it will feel different (and not right):
> - edge bounce
> - easing on edge bounce (the movement decelerates before it stops instead of stopping mechanically)
> - friction
> - inertia
> - scrolling speed (comes from the physics of the friction, inertia, and the initial speed given by the finger)
> - finger following
> - item selection sensitivity from touch
> - item deselection sensitivity from following movement
> - stoppable movement (despite of high inertia, stopped finger stops the movement immediately)
>
> To get these right, it really requires trying out on the device how it feels. When doing the startup wizard we found that
> some sensitivities (e.g. selection sensitivity) need to be a bit different when operated on mouse than when operated on finger on the device.
>
> Once the list is perfected, all the other widgets are easily composited from these lists and other widgets.
> So it is a good idea to start from making a list on Qt to function exactly like it functions on the Hildon.
>
> Best Regards,
> Karoliina
>
> _______________________________________________
> maemo-developers mailing list
> maemo-developers at maemo.org
> https://lists.maemo.org/mailman/listinfo/maemo-developers
>
More information about the maemo-developers mailing list