Revision 1289083

Go back to digest for 15th April 2012

Features in Games

Stefan Majewsky committed changes in /trunk/KDE/kdegames:

Add the KgTheme framework.

The KGameRenderer API is adjusted to use a KgThemeProvider instead
of KGameTheme. To ensure that everything still compiles, games using
KGameRenderer are ported to KgTheme immediately.

Some comments about how the games were ported:

* KAtomic, Kolf, Kollision and KReversi don't install .desktop files for
their themes anymore. They are not really needed since there is only
one theme per game, but KGameRenderer previously required a .desktop
file for KGameTheme. KgTheme works with hardcoded SVG paths, too.

* I found that Granatier abuses the KGameRenderer framework in a quite
interesting way to add support for a fallback theme. The proper
solution is to integrate this functionality in KGameRenderer. This
commit does a very direct port to KgTheme only.

File Changes

Added 12 files
  • /trunk/KDE/kdegames/libkdegames
  •   /kgtheme.cpp
  •   /kgtheme.h
  •   /kgtheme_p.h
  •   /kgthemeprovider-migration.upd
  •   /kgthemeprovider.cpp
  •   /kgthemeprovider.h
  •   /kgthemeselector.cpp
  •   /kgthemeselector.h
  •   /kgthemeselector_p.h
  •   /includes/KgTheme
  •   /includes/KgThemeProvider
  •   /includes/KgThemeSelector
Modified 57 files
  • /trunk/KDE/kdegames
  •   /katomic/CMakeLists.txt
  •   /katomic/playfield.cpp
  •   /kbounce/gamewidget.cpp
  •   /kbounce/gamewidget.h
  •   /kbounce/kbounce.kcfg
  •   /kbounce/mainwindow.cpp
  •   /kbounce/renderer.cpp
  •   /killbots/killbots.kcfg
  •   /killbots/mainwindow.cpp
  •   /killbots/renderer.cpp
  •   /killbots/renderer.h
  •   /klickety/gamescene.cpp
  •   /klickety/gamescene.h
  •   /klickety/klickety.kcfg
  •   /klickety/mainwindow.cpp
  •   /klines/klines.cpp
  •   /klines/klines.h
  •   /klines/klines.kcfg
  •   /klines/renderer.cpp
  •   /klines/renderer.h
  •   /kmines/kmines.kcfg
  •   /kmines/mainwindow.cpp
  •   /kmines/scene.cpp
  •   /kolf/game.cpp
  •   /kollision/mainarea.cpp
  •   /kpat/kpat.kcfg
  •   /kpat/mainwindow.cpp
  •   /kpat/renderer.cpp
  •   /kpat/renderer.h
  •   /kreversi/kreversiscene.cpp
  •   /libkdegames/CMakeLists.txt
  •   /libkdegames/kgamerenderer.cpp
  •   /libkdegames/kgamerenderer.h
  •   /libkdegames/kgamerenderer_p.h
  •   /bomber/src/bomber.cpp
  •   /bomber/src/bomber.h
  •   /bomber/src/bomber.kcfg
  •   /bomber/src/bomberwidget.cpp
  •   /bomber/src/bomberwidget.h
  •   /granatier/src/arenaselector.cpp
  •   /granatier/src/gamescene.cpp
  •   /kbreakout/src/canvaswidget.h
  •   /kbreakout/src/kbreakout.kcfg
  •   /kbreakout/src/mainwindow.cpp
  •   /kbreakout/src/mainwindow.h
  •   /kdiamond/src/game.cpp
  •   /kdiamond/src/kdiamond.kcfg
  •   /kdiamond/src/mainwindow.cpp
  •   /kdiamond/src/mainwindow.h
  •   /knetwalk/src/knetwalk.kcfg
  •   /knetwalk/src/mainwindow.cpp
  •   /knetwalk/src/mainwindow.h
  •   /knetwalk/src/scene.cpp
  •   /kolf/graphics/CMakeLists.txt
  •   /kollision/pictures/CMakeLists.txt
  •   /kreversi/pics/CMakeLists.txt
  •   /libkdegames/includes/CMakeLists.txt
69 files changed in total