~hruske Hruške, jabuke, jablane, čežane. » Blog Archive » KDE 4, Plasma and plasmoids
Home Contact Sitemap

Hruške, jabuke, jablane, čežane.

Ste se gdaj vprašali, zakaj Najboljšega soseda nikoli ni doma, ko pridete na obisk?

KDE 4, Plasma and plasmoids

Posted on Junij 21st, 2009 in dovhcajt |

kde Splashscreen
Image by Udo Herzog via Flickr

Every now and then I like to tinker a bit more with KDE than just using it. So I set on a course of creating a simple plasma widget (also called plasmoid). I must admit, I’m not really a seasoned Qt (or KDE) developer.

So I figured — take a look at some of the examples and tutorials on KDE techbase and I’ll be running my very own proud plasmoid in no time, right? Err.. was I wrong or what.

I tried to create a simple plasmoid for my shiny KDE 4 desktop. Ok, copy paste the example from the KDE site and voila, a widget with “Hello world” text pops up. Next I looked up to microblog plasmoid, that provides a twitter/identi.ca microblogging widget. It’s a simple applet, but still has a fair amount of useful knowledge in it, eg. how to use dataengines, how to render plasmoid and how the code fits together in general. Data engines are API endpoints, that provide your plasmoid with data such as time in different timezones, twitter timelines for users, etc. They are designed to decouple presentation layer (your applet) from data layer (the data engines), which makes sense. They also provide a way to make use of technically superior methods than those used in SuperKaramba (you can also read that as “polling as little as possible”).

Well, it turns out that doing that from Python is currently not possible from KDE 4.2, at least not without reimplementing a great deal of already implemented code. But that was not my main issue. I was a bit irritated at the lack of documentation. Python bindings are sadly not regarded as important as other and are usually feature-wise behind the C++ and JavaScript. Also, there were quite a few missing spots in my knowledge about plasmoids. I was missing a bit more noobish introduction to plasmoids, that would explain what types of plasmoids there are, what one can do and what Plasma API expects from a plasmoid (eg. the API requirements). Many plasmoids are PopupApplets, but Python examples don’t mention those — clearly because they can’t even work yet in KDE 4.2, as I’ve just figured. Also, it took me way too much time to realize that, a newbie overview over the Plasma API would of solved that in no time.

All in all, KDE 4.2 is “already” quite usable, and KDE 4.3 will probably be a lot more, given the fact that Twitter microblog plasmoid shouldn’t leak memory anymore. Other than that — it’s a shame that KDE overhyped the KDE 4.0 release so that everyone was dissapointed afterwards. Also, I’m very sad to see the commit-digest.org having fairly little bug fixes compared to features. That’s also the pest that’s hurting KDE the most as far as I am concerned — releasing undertested code on their users.

Reblog this post [with Zemanta]

Comments are closed.

Komentarji so izklopljeni