[Kde-games-devel] Chess game for KDE4

Parker Coates parker.coates at gmail.com
Fri Dec 4 15:17:19 CET 2009


On Fri, Dec 4, 2009 at 06:02, Mauricio Piacentini wrote:
> On Fri, Dec 4, 2009 at 7:27 AM, Stefan Majewsky wrote:
>> Am Freitag, 4. Dezember 2009 10:12:43 schrieb Dmitry Suzdalev:
>>> By the way, questions to all: what's the status of KGameCanvas? Now that
>>>  QGV had stabilized and matured should we keep it in libkdegames? Are there
>>>  cases when KGameCanvas would be still prefered over QGV? Are there any
>>>  games in kdegames which use it? (i didn't to grepping yet ;))

Have you looked at libkdegames recently? Unfortunately, I did. It's
not pretty. There are plenty of classes that (to my knowledge) aren't
being used anymore. I would imagine many of them were ported to
Qt4/KDEP4, but have never actually been used in a released game. Who
knows if they even work? The licensing situation is scary too. In a 30
second search I found GPL, LGPL2 and LGPL2.1 code. Many of the card
decks have neither licensing not copyright. It's not pretty.

>> If usage of KGC is discouraged, then @deprecated flags should be added to the
>> APIDOX. http://lxr.kde.org/ident?&i=KGameCanvasPixmap tells me that at least
>> Bomber, KBattleShip, KBounce, KBreakout and KGoldRunner use KGameCanvas.
>
> Add KMahjongg to that list as well. With that many games using it, I
> am not sure it should be deprecated. Over the course of all the last
> Qt releases we had no problems at all with these games, while others
> had to be tweaked due to redrawing issues. I am sure QGV is now stable
> and *probably* a better solution for new games, but you have to try
> it. KGameCanvas is simple, fast and does its job well.

Depreciating it does seem extreme. I think adding a note to the
beginning of the API docs explaining why it exists and why QGV *may*
be a better choice, would be sufficient.

> Also, we need to keep it in libkdegames at least until KDE5.

Someone correct me if I'm wrong, but this isn't actually true.
libkdegames has never formally made BC promises, so if we wanted to we
could make major changes to it, as long as we bumped the .so version
number. Obviously, we shouldn't just go changing it willy-nilly, but
it would also be nice to be able to do a major cleanup of the library
to remove a lot of the cruft.

As I've mentioned before, I'm toying with the idea of creating a
libkcardgame. If I'm successful with that and get KPat and Lskat
ported to it, then the card decks and card related classes in
libkdegames can probably be removed from libkdegames as well.

Anyway, cleaning up a library isn't much fun and updating licensing is
even less fun. Who knows if I/we will ever get around to it.

Parker


More information about the kde-games-devel mailing list