Article from MeeGo.com:
I got a bit disappointed when I realized Harmattan doesn’t provide a way to use the old fashioned desktop widgets I was used with N900. Since UX cannot be touched, I tought to create an application which offers a sort of platform to run widgets.
Here some screens:
Widgets can be added and dragged, theirs position is saved and restored at next application startup.
There is a canvas of 480×3200, flickable, and so not like on N900. Background is 480*1200, and there is a parallax effect to fill the canvas.
The best thing is about the widgets: they are just qml files! I have created a Widget component to handle the dragging, the saving of the position, the multi istancing (yes, I have also implemented a sort of differentation between the same type of widgets), the showing of a settings sheet, the showing of a background.
Creating a new widget is so easy, an hello world example:
import QtQuick 1.1 import com.nokia.meego 1.0 Widget { id: root width: 200 height: 60 Label { id: label anchors.centerIn: parent text: "Hello World!" font.pixelSize: 12 } }
and it’s done. To let the application recognize it as a widget, a file called WIDGETNAME.widget has to be put aswell in qml dir.
The toolbar has only the central icon working by now, and it shows an application menu.
There is some concern about on how to add new widgets, right now I just fill the qml directory in /opt/widgetcanvasfree/qml/widgetcanvasfree/. In that directory there are others widgets, AnalogicClock also shows how to implement settings sheet and saving values.
To call it fast, use MyMoves.
Download version 0.0.1 here.
Source MeeGo