KDE Games/API cleanup: Difference between revisions
(21 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
libkdegames v5 is the new iteration of libkdegames which is intended to ship with KDE Development Platform | libkdegames v5 is the new iteration of libkdegames which is intended to ship with KDE Development Platform 4.9. The aim for this new iteration of the library is to '''remove most of the API that is obsolete, unused or in a state of bad quality''', in order to improve maintainability and relevance of the remaining API. Also, QtWidgets-specific parts need to be separated to prepare for QML-based games. | ||
<small>The fine print: The SO version for libkdegames v5 is actually 6.</small> | <small>The fine print: The SO version for libkdegames v5 is actually 6.</small> | ||
== | == Components == | ||
libkdegames consists of multiple (possibly interdependent) components, as defined by this list. See the | libkdegames consists of multiple (possibly interdependent) components, as defined by this list. The "Dependencies" column records only dependencies to other libkdegames components. See the table below for which file belongs to which component. | ||
=== Needing attention === | |||
This table lists the components which need attention. | |||
{| class="sortable" border="1" cellpadding="5" cellspacing="0" style="border: gray solid 1px; border-collapse: collapse; text-align: left; width:100%;" | {| class="sortable" border="1" cellpadding="5" cellspacing="0" style="border: gray solid 1px; border-collapse: collapse; text-align: left; width:100%;" | ||
|- style="background: #ececec; white-space:nowrap;" | |- style="background: #ececec; white-space:nowrap;" | ||
! Component | ! Component | ||
! | ! Short desc. | ||
! Dependencies | ! Dependencies | ||
! | ! Move target | ||
|- | |- style="background-color:#EEFFEE" | ||
| | | style="background-color:#ABFFAB" | highscore | ||
| | | Highscore recording and GUI. | ||
| - | |||
| | |||
|- style="background-color:#EEEEFF" | |||
| style="background-color:#ABABFF" | kchat | |||
| Chat widget. | |||
| - | | - | ||
| | | | ||
|- | |- style="background-color:#FFFFCD" | ||
| kgamecanvas | | style="background-color:#FFFFA0" | kgame | ||
| General game framework. | |||
| kchat | |||
| ksirk | |||
|- style="background-color:#FFFFCD" | |||
| style="background-color:#FFFFA0" | kgamecanvas | |||
| Alternative to QGraphicsView. | | Alternative to QGraphicsView. | ||
| kgamerenderer (integration) | | kgamerenderer (integration) | ||
| libkgamecanvas_private | |||
|- style="background-color:#FFFFCD" | |||
| style="background-color:#FFFFA0" | misc/svgdocument | |||
| Transform SVG elements. | |||
| - | |||
| ksirk | |||
|} | |||
| |||
{| border="1" cellpadding="5" cellspacing="0" style="border: gray solid 1px; border-collapse: collapse; text-align: left; width:100%;" | |||
|- style="white-space:nowrap;" | |||
! Color key | |||
| style="background-color:#FFABAB" | Delete | |||
| style="background-color:#FFFFA0" | Make private | |||
| style="background-color:#ABFFAB" | Keep | |||
| style="background-color:#ABFFFF" width="100" | New | |||
| style="background-color:#ABABFF" | Undecided | |||
|- | |||
! Description | |||
| style="background-color:#FFEEEE" | Code and headers are removed from the source tree. | |||
| style="background-color:#FFFFCD" | Code is moved into the tree of the only application which uses it. Headers are not exported anymore. | |||
| style="background-color:#EEFFEE" | Code stays in libkdegames. API and implementation changes may still be necessary. | |||
| style="background-color:#EEFFFF" | New code and API (e.g. coming from Project Tagaro). | |||
| style="background-color:#EEEEFF" | To be discussed on kde-games-devel mailinglist. | |||
|} | |||
=== Done === | |||
This table lists those components which have already been taken care of. | |||
{| class="sortable" border="1" cellpadding="5" cellspacing="0" style="border: gray solid 1px; border-collapse: collapse; text-align: left; width:100%;" | |||
|- style="background: #ececec; white-space:nowrap;" | |||
! Component | |||
! Short desc. | |||
! Dependencies | |||
! Move target | |||
|- style="background-color:#EEFFFF" | |||
| style="background-color:#ABFFFF" | audio | |||
| Simple sound playback. | |||
| - | |||
| | |||
|- style="background-color:#EEFFEE" | |||
| style="background-color:#ABFFAB" | base | |||
| Macros and API-less behavior. | |||
| - | |||
| | | | ||
|- | |- style="background-color:#EEFFEE" | ||
| kgamerenderer | | style="background-color:#ABFFAB" | carddecks | ||
| | | SVG card deck files used by KPat and LSkat. | ||
| - | |||
| | |||
|- style="background-color:#FFFFCD" | |||
| style="background-color:#FFFFA0" | cardloading | |||
| Carddeck theme loading and selection. | |||
| - | |||
| lskat | |||
|- style="background-color:#EEFFEE" | |||
| style="background-color:#ABFFAB" | kgamerenderer | |||
| Rendering of theme graphics. | |||
| theming | | theming | ||
| | | | ||
|- | |- style="background-color:#FFEEEE" | ||
| kggz | | style="background-color:#FFABAB" | kggz | ||
| Network-enabled multiplayer. | | Network-enabled multiplayer. | ||
| - | | - | ||
| | | | ||
|- style="background-color:#EEFFEE" | |||
| style="background-color:#ABFFAB" | misc/clock | |||
| Game clock (second accuracy). | |||
| - | |||
| | |||
|- style="background-color:#EEFFEE" | |||
| style="background-color:#ABFFAB" | misc/difficulty | |||
| Track difficulty level. | |||
| - | |||
| | |||
|- style="background-color:#FFFFCD" | |||
| style="background-color:#FFFFA0" | misc/grid2d | |||
| Coordinate calculations on 2D grids. | |||
| - | |||
| krosswordpuzzle (playground) | |||
|- style="background-color:#FFEEEE" | |||
| style="background-color:#FFABAB" | misc/lcd | |||
| Enhanced QLCDNumber. | |||
| - | |||
| | |||
|- style="background-color:#EEFFEE" | |||
| style="background-color:#ABFFAB" | misc/popupitem | |||
| Message popup for QGraphicsView. | |||
| - | |||
| | |||
|- style="background-color:#FFEEEE" | |||
| style="background-color:#FFABAB" | misc/progress | |||
| A very old progress bar. | |||
| - | |||
| | |||
|- style="background-color:#FFEEEE" | |||
| style="background-color:#FFABAB" | misc/randomname | |||
| Function to generate a random name. | |||
| - | |||
| | |||
|- style="background-color:#EEFFEE" | |||
| style="background-color:#ABFFAB" | misc/standardactions | |||
| Standard KActions for games. | |||
| - | |||
| | |||
|- style="background-color:#FFEEEE" | |||
| style="background-color:#FFABAB" | misc/svgdigits | |||
| Digits rendered from SVG. | |||
| - | |||
| | |||
|- style="background-color:#EEFFEE" | |||
| style="background-color:#ABFFAB" | theming | |||
| Management of SVG themes. | |||
| - | |||
| | |||
|} | |||
| |||
{| border="1" cellpadding="5" cellspacing="0" style="border: gray solid 1px; border-collapse: collapse; text-align: left; width:100%;" | |||
|- style="white-space:nowrap;" | |||
! Color key | |||
| style="background-color:#FFABAB" | Deleted | |||
| style="background-color:#FFFFA0" | Moved out | |||
| style="background-color:#ABFFAB" | Kept | |||
| style="background-color:#ABFFFF" width="100" | New | |||
|- | |||
! Description | |||
| style="background-color:#FFEEEE" | Has been deleted from libkdegames. | |||
| style="background-color:#FFFFCD" | Has been moved into the source tree of the mentioned move target. | |||
| style="background-color:#EEFFEE" | Has been kept in libkdegames. Where appropriate, API and implementation have been updated. | |||
| style="background-color:#EEFFFF" | Has been merged into libkdegames. | |||
|} | |} | ||
== List of files == | == List of files (as of 4.8 release) == | ||
Line 42: | Line 179: | ||
! Source file | ! Source file | ||
! Belongs to component | ! Belongs to component | ||
|- | |- | ||
| chooserastergraphicssystem.<span style="color:green">cpp</span> | | chooserastergraphicssystem.<span style="color:green">cpp</span> | ||
| | | base | ||
|- | |- | ||
| colorproxy_p.<span style="color:green">cpp</span>/<span style="color:red">h</span> | | colorproxy_p.<span style="color:green">cpp</span>/<span style="color:red">h</span> | ||
| kgamerenderer | | kgamerenderer | ||
|- | |- | ||
| highscore/kexthighscore.<span style="color:green">cpp</span>/<span style="color:red">h</span> | | highscore/kexthighscore.<span style="color:green">cpp</span>/<span style="color:red">h</span> | ||
Line 78: | Line 206: | ||
| highscore/kscoredialog.<span style="color:green">cpp</span>/<span style="color:red">h</span> | | highscore/kscoredialog.<span style="color:green">cpp</span>/<span style="color:red">h</span> | ||
| highscore | | highscore | ||
|- | |- | ||
| kchatbase.<span style="color:green">cpp</span>/<span style="color:red">h</span> | | kchatbase.<span style="color:green">cpp</span>/<span style="color:red">h</span> | ||
| | | kchat | ||
|- | |- | ||
| kchatbaseitemdelegate.<span style="color:green">cpp</span>/<span style="color:red">h</span> | | kchatbaseitemdelegate.<span style="color:green">cpp</span>/<span style="color:red">h</span> | ||
| | | kchat | ||
|- | |- | ||
| kchatbasemodel.<span style="color:green">cpp</span>/<span style="color:red">h</span> | | kchatbasemodel.<span style="color:green">cpp</span>/<span style="color:red">h</span> | ||
| | | kchat | ||
|- | |- | ||
| kchat.<span style="color:green">cpp</span>/<span style="color:red">h</span> | | kchat.<span style="color:green">cpp</span>/<span style="color:red">h</span> | ||
| | | kchat | ||
|- | |- | ||
| kchatdialog.<span style="color:green">cpp</span>/<span style="color:red">h</span> | | kchatdialog.<span style="color:green">cpp</span>/<span style="color:red">h</span> | ||
| | | kchat | ||
|- | |- | ||
| kgamecanvas.<span style="color:green">cpp</span>/<span style="color:red">h</span> | | kgamecanvas.<span style="color:green">cpp</span>/<span style="color:red">h</span> | ||
Line 101: | Line 226: | ||
|- | |- | ||
| kgameclock.<span style="color:green">cpp</span>/<span style="color:red">h</span> | | kgameclock.<span style="color:green">cpp</span>/<span style="color:red">h</span> | ||
| | | misc/clock | ||
|- | |- | ||
| kgame/dialogs/kgameconnectdialog.<span style="color:green">cpp</span>/<span style="color:red">h</span> | | kgame/dialogs/kgameconnectdialog.<span style="color:green">cpp</span>/<span style="color:red">h</span> | ||
| | | kgame | ||
|- | |- | ||
| kgame/dialogs/kgamedebugdialog.<span style="color:green">cpp</span>/<span style="color:red">h</span> | | kgame/dialogs/kgamedebugdialog.<span style="color:green">cpp</span>/<span style="color:red">h</span> | ||
| | | kgame | ||
|- | |- | ||
| kgame/dialogs/kgamedialogconfig.<span style="color:green">cpp</span>/<span style="color:red">h</span> | | kgame/dialogs/kgamedialogconfig.<span style="color:green">cpp</span>/<span style="color:red">h</span> | ||
| | | kgame | ||
|- | |- | ||
| kgame/dialogs/kgamedialog.<span style="color:green">cpp</span>/<span style="color:red">h</span> | | kgame/dialogs/kgamedialog.<span style="color:green">cpp</span>/<span style="color:red">h</span> | ||
| | | kgame | ||
|- | |- | ||
| kgame/dialogs/kgameerrordialog.<span style="color:green">cpp</span>/<span style="color:red">h</span> | | kgame/dialogs/kgameerrordialog.<span style="color:green">cpp</span>/<span style="color:red">h</span> | ||
| | | kgame | ||
|- | |- | ||
| kgamedifficulty.<span style="color:green">cpp</span>/<span style="color:red">h</span> | | kgamedifficulty.<span style="color:green">cpp</span>/<span style="color:red">h</span> | ||
| | | misc/difficulty | ||
|- | |- | ||
| kgame/kgamechat.<span style="color:green">cpp</span>/<span style="color:red">h</span> | | kgame/kgamechat.<span style="color:green">cpp</span>/<span style="color:red">h</span> | ||
| | | kgame | ||
|- | |- | ||
| kgame/kgame.<span style="color:green">cpp</span>/<span style="color:red">h</span> | | kgame/kgame.<span style="color:green">cpp</span>/<span style="color:red">h</span> | ||
| | | kgame | ||
|- | |- | ||
| kgame/kgameerror.<span style="color:green">cpp</span>/<span style="color:red">h</span> | | kgame/kgameerror.<span style="color:green">cpp</span>/<span style="color:red">h</span> | ||
| | | kgame | ||
|- | |- | ||
| kgame/kgameio.<span style="color:green">cpp</span>/<span style="color:red">h</span> | | kgame/kgameio.<span style="color:green">cpp</span>/<span style="color:red">h</span> | ||
| | | kgame | ||
|- | |- | ||
| kgame/kgamemessage.<span style="color:green">cpp</span>/<span style="color:red">h</span> | | kgame/kgamemessage.<span style="color:green">cpp</span>/<span style="color:red">h</span> | ||
| | | kgame | ||
|- | |- | ||
| kgame/kgamenetwork.<span style="color:green">cpp</span>/<span style="color:red">h</span> | | kgame/kgamenetwork.<span style="color:green">cpp</span>/<span style="color:red">h</span> | ||
| | | kgame | ||
|- | |- | ||
| kgame/kgameprocess.<span style="color:green">cpp</span>/<span style="color:red">h</span> | | kgame/kgameprocess.<span style="color:green">cpp</span>/<span style="color:red">h</span> | ||
| | | kgame | ||
|- | |- | ||
| kgame/kgamepropertyarray.<span style="color:red">h</span> | | kgame/kgamepropertyarray.<span style="color:red">h</span> | ||
| | | kgame | ||
|- | |- | ||
| kgame/kgameproperty.<span style="color:green">cpp</span>/<span style="color:red">h</span> | | kgame/kgameproperty.<span style="color:green">cpp</span>/<span style="color:red">h</span> | ||
| | | kgame | ||
|- | |- | ||
| kgame/kgamepropertyhandler.<span style="color:green">cpp</span>/<span style="color:red">h</span> | | kgame/kgamepropertyhandler.<span style="color:green">cpp</span>/<span style="color:red">h</span> | ||
| | | kgame | ||
|- | |- | ||
| kgame/kgamesequence.<span style="color:green">cpp</span>/<span style="color:red">h</span> | | kgame/kgamesequence.<span style="color:green">cpp</span>/<span style="color:red">h</span> | ||
| | | kgame | ||
|- | |- | ||
| kgame/kgameversion.<span style="color:red">h</span> | | kgame/kgameversion.<span style="color:red">h</span> | ||
| | | kgame | ||
|- | |- | ||
| kgame/kmessageclient.<span style="color:green">cpp</span>/<span style="color:red">h</span> | | kgame/kmessageclient.<span style="color:green">cpp</span>/<span style="color:red">h</span> | ||
| | | kgame | ||
|- | |- | ||
| kgame/kmessageio.<span style="color:green">cpp</span>/<span style="color:red">h</span> | | kgame/kmessageio.<span style="color:green">cpp</span>/<span style="color:red">h</span> | ||
| | | kgame | ||
|- | |- | ||
| kgame/kmessageserver.<span style="color:green">cpp</span>/<span style="color:red">h</span>/<span style="color:blue">ph</span> | | kgame/kmessageserver.<span style="color:green">cpp</span>/<span style="color:red">h</span>/<span style="color:blue">ph</span> | ||
| | | kgame | ||
|- | |- | ||
| kgame/kplayer.<span style="color:green">cpp</span>/<span style="color:red">h</span> | | kgame/kplayer.<span style="color:green">cpp</span>/<span style="color:red">h</span> | ||
| | | kgame | ||
|- | |- | ||
| kgamepopupitem.<span style="color:green">cpp</span>/<span style="color:red">h</span> | | kgamepopupitem.<span style="color:green">cpp</span>/<span style="color:red">h</span> | ||
| | | misc/popupitem | ||
|- | |- | ||
| kgamerendereditem.<span style="color:green">cpp</span>/<span style="color:red">h</span> | | kgamerendereditem.<span style="color:green">cpp</span>/<span style="color:red">h</span> | ||
Line 194: | Line 310: | ||
|- | |- | ||
| kgamesvgdocument.<span style="color:green">cpp</span>/<span style="color:red">h</span>/<span style="color:blue">ph</span> | | kgamesvgdocument.<span style="color:green">cpp</span>/<span style="color:red">h</span>/<span style="color:blue">ph</span> | ||
| | | misc/svgdocument | ||
|- | |- | ||
| kgametheme.<span style="color:green">cpp</span>/<span style="color:red">h</span> | | kgametheme.<span style="color:green">cpp</span>/<span style="color:red">h</span> | ||
| | | theming | ||
|- | |- | ||
| kgamethemeselector.<span style="color:green">cpp</span>/<span style="color:red">h</span> | | kgamethemeselector.<span style="color:green">cpp</span>/<span style="color:red">h</span> | ||
| | | theming | ||
|- | |- | ||
| kstandardgameaction.<span style="color:green">cpp</span>/<span style="color:red">h</span> | | kstandardgameaction.<span style="color:green">cpp</span>/<span style="color:red">h</span> | ||
| | | misc/standardactions | ||
|- | |- | ||
| libkdegames_export.<span style="color:red">h</span> | | libkdegames_export.<span style="color:red">h</span> | ||
| | | base | ||
|- | |- | ||
| tests/kgamepopupitemtest.<span style="color:green">cpp</span>/<span style="color:red">h</span> | | tests/kgamepopupitemtest.<span style="color:green">cpp</span>/<span style="color:red">h</span> | ||
| | | misc/popupitem | ||
|- | |- | ||
| tests/kgamepropertytest.<span style="color:green">cpp</span>/<span style="color:red">h</span> | | tests/kgamepropertytest.<span style="color:green">cpp</span>/<span style="color:red">h</span> | ||
| | | kgame | ||
|- | |- | ||
| includes/KChat | | includes/KChat | ||
| | | kchat | ||
|- | |- | ||
| includes/KChatBase | | includes/KChatBase | ||
| | | kchat | ||
|- | |- | ||
| includes/KChatBaseItemDelegate | | includes/KChatBaseItemDelegate | ||
| | | kchat | ||
|- | |- | ||
| includes/KChatDialog | | includes/KChatDialog | ||
| | | kchat | ||
|- | |- | ||
| includes/KExtHighscore | | includes/KExtHighscore | ||
Line 290: | Line 349: | ||
|- | |- | ||
| includes/KGameClock | | includes/KGameClock | ||
| | | misc/clock | ||
|- | |- | ||
| includes/KGameDifficulty | | includes/KGameDifficulty | ||
| | | misc/difficulty | ||
|- | |- | ||
| includes/KGame/KGame | | includes/KGame/KGame | ||
| | | kgame | ||
|- | |- | ||
| includes/KGame/KGameChat | | includes/KGame/KGameChat | ||
| | | kgame | ||
|- | |- | ||
| includes/KGame/KGameConnectDialog | | includes/KGame/KGameConnectDialog | ||
| | | kgame | ||
|- | |- | ||
| includes/KGame/KGameDebugDialog | | includes/KGame/KGameDebugDialog | ||
| | | kgame | ||
|- | |- | ||
| includes/KGame/KGameDialog | | includes/KGame/KGameDialog | ||
| | | kgame | ||
|- | |- | ||
| includes/KGame/KGameDialogConfig | | includes/KGame/KGameDialogConfig | ||
| | | kgame | ||
|- | |- | ||
| includes/KGame/KGameError | | includes/KGame/KGameError | ||
| | | kgame | ||
|- | |- | ||
| includes/KGame/KGameErrorDialog | | includes/KGame/KGameErrorDialog | ||
| | | kgame | ||
|- | |- | ||
| includes/KGame/KGameIO | | includes/KGame/KGameIO | ||
| | | kgame | ||
|- | |- | ||
| includes/KGame/KGameMessage | | includes/KGame/KGameMessage | ||
| | | kgame | ||
|- | |- | ||
| includes/KGame/KGameNetwork | | includes/KGame/KGameNetwork | ||
| | | kgame | ||
|- | |- | ||
| includes/KGame/KGameProcess | | includes/KGame/KGameProcess | ||
| | | kgame | ||
|- | |- | ||
| includes/KGame/KGameProperty | | includes/KGame/KGameProperty | ||
| | | kgame | ||
|- | |- | ||
| includes/KGame/KGamePropertyArray | | includes/KGame/KGamePropertyArray | ||
| | | kgame | ||
|- | |- | ||
| includes/KGame/KGamePropertyHandler | | includes/KGame/KGamePropertyHandler | ||
| | | kgame | ||
|- | |- | ||
| includes/KGame/KGameSequence | | includes/KGame/KGameSequence | ||
| | | kgame | ||
|- | |- | ||
| includes/KGame/KGameVersion | | includes/KGame/KGameVersion | ||
| | | kgame | ||
|- | |- | ||
| includes/KGame/KMessageClient | | includes/KGame/KMessageClient | ||
| | | kgame | ||
|- | |- | ||
| includes/KGame/KMessageIO | | includes/KGame/KMessageIO | ||
| | | kgame | ||
|- | |- | ||
| includes/KGame/KMessageServer | | includes/KGame/KMessageServer | ||
| | | kgame | ||
|- | |- | ||
| includes/KGame/KPlayer | | includes/KGame/KPlayer | ||
| | | kgame | ||
|- | |- | ||
| includes/KGamePopupItem | | includes/KGamePopupItem | ||
| | | misc/popupitem | ||
|- | |- | ||
| includes/KGameRenderedItem | | includes/KGameRenderedItem | ||
Line 381: | Line 431: | ||
| includes/KGameRendererClient | | includes/KGameRendererClient | ||
| kgamerenderer | | kgamerenderer | ||
|- | |- | ||
| includes/KGameSvgDocument | | includes/KGameSvgDocument | ||
| | | misc/svgdocument | ||
|- | |- | ||
| includes/KGameTheme | | includes/KGameTheme | ||
| | | theming | ||
|- | |- | ||
| includes/KGameThemeSelector | | includes/KGameThemeSelector | ||
| | | theming | ||
|- | |||
| includes/KHighscore | |||
| highscore | |||
|- | |||
| includes/KScoreDialog | |||
| highscore | |||
|- | |||
| includes/KStandardGameAction | |||
| misc/standardactions | |||
|} | |||
=== Removed files === | |||
{| class="sortable" border="1" cellpadding="5" cellspacing="0" style="border: gray solid 1px; border-collapse: collapse; text-align: left; width:100%;" | |||
|- style="background: #ececec; white-space:nowrap;" | |||
! Source file | |||
! Belongs to component | |||
|- | |||
| cardcache.<span style="color:green">cpp</span>/<span style="color:red">h</span>/<span style="color:blue">ph</span> | |||
| cardloading | |||
|- | |||
| carddeckinfo.<span style="color:green">cpp</span>/<span style="color:red">h</span>/<span style="color:blue">ph</span> | |||
| cardloading | |||
|- | |||
| digits/kgamesvgdigits.<span style="color:green">cpp</span>/<span style="color:red">h</span> | |||
| misc/svgdigits | |||
|- | |||
| kcarddialog.<span style="color:green">cpp</span>/<span style="color:red">h</span> | |||
| cardloading | |||
|- | |||
| kgamelcd.<span style="color:green">cpp</span>/<span style="color:red">h</span> | |||
| misc/lcd | |||
|- | |||
| kgamemisc.<span style="color:green">cpp</span>/<span style="color:red">h</span> | |||
| misc/randomname | |||
|- | |||
| kgameprogress.<span style="color:green">cpp</span>/<span style="color:red">h</span> | |||
| misc/progress | |||
|- | |||
| kggzgames/kggzgames_export.<span style="color:red">h</span> | |||
| kggz | |||
|- | |||
| kggzgames/kggzrankingsdialog.<span style="color:green">cpp</span>/<span style="color:red">h</span> | |||
| kggz | |||
|- | |||
| kggzgames/kggzseatsdialog.<span style="color:green">cpp</span>/<span style="color:red">h</span> | |||
| kggz | |||
|- | |||
| kggzmod/event.<span style="color:green">cpp</span>/<span style="color:red">h</span> | |||
| kggz | |||
|- | |||
| kggzmod/kggzmod_export.<span style="color:red">h</span> | |||
| kggz | |||
|- | |||
| kggzmod/misc_private.<span style="color:red">h</span> | |||
| kggz | |||
|- | |||
| kggzmod/module.<span style="color:green">cpp</span>/<span style="color:red">h</span>/<span style="color:blue">ph</span> | |||
| kggz | |||
|- | |||
| kggzmod/player.<span style="color:green">cpp</span>/<span style="color:red">h</span>/<span style="color:blue">ph</span> | |||
| kggz | |||
|- | |||
| kggzmod/request.<span style="color:green">cpp</span>/<span style="color:red">h</span> | |||
| kggz | |||
|- | |||
| kggzmod/statistics.<span style="color:green">cpp</span>/<span style="color:red">h</span>/<span style="color:blue">ph</span> | |||
| kggz | |||
|- | |||
| kggznet/kggznet_export.<span style="color:red">h</span> | |||
| kggz | |||
|- | |||
| kggznet/kggzpacket.<span style="color:green">cpp</span>/<span style="color:red">h</span> | |||
| kggz | |||
|- | |||
| kggznet/kggzraw.<span style="color:green">cpp</span>/<span style="color:red">h</span> | |||
| kggz | |||
|- | |||
| kgrid2d.<span style="color:red">h</span> | |||
| misc/grid2d | |||
|- | |||
| tests/kgamesvgdigitstest.<span style="color:green">cpp</span>/<span style="color:red">h</span> | |||
| misc/svgdigits | |||
|- | |||
| tests/kgamesvgdocumenttest.<span style="color:green">cpp</span>/<span style="color:red">h</span> | |||
| misc/svgdocument | |||
|- | |||
| includes/KCardCache | |||
| cardloading | |||
|- | |||
| includes/KCardDeckInfo | |||
| cardloading | |||
|- | |||
| includes/KCardDialog | |||
| cardloading | |||
|- | |||
| includes/KGameLCD | |||
| misc/lcd | |||
|- | |||
| includes/KGameMisc | |||
| misc/randomname | |||
|- | |||
| includes/KGameProgress | |||
| misc/progress | |||
|- | |||
| includes/KGameSvgDigits | |||
| misc/svgdigits | |||
|- | |- | ||
| includes/KGGZRankingsDialog | | includes/KGGZRankingsDialog | ||
Line 401: | Line 555: | ||
|- | |- | ||
| includes/KGrid2D | | includes/KGrid2D | ||
| | | misc/grid2d | ||
|} | |} |
Latest revision as of 00:43, 15 April 2012
libkdegames v5 is the new iteration of libkdegames which is intended to ship with KDE Development Platform 4.9. The aim for this new iteration of the library is to remove most of the API that is obsolete, unused or in a state of bad quality, in order to improve maintainability and relevance of the remaining API. Also, QtWidgets-specific parts need to be separated to prepare for QML-based games.
The fine print: The SO version for libkdegames v5 is actually 6.
Components
libkdegames consists of multiple (possibly interdependent) components, as defined by this list. The "Dependencies" column records only dependencies to other libkdegames components. See the table below for which file belongs to which component.
Needing attention
This table lists the components which need attention.
Component | Short desc. | Dependencies | Move target |
---|---|---|---|
highscore | Highscore recording and GUI. | - | |
kchat | Chat widget. | - | |
kgame | General game framework. | kchat | ksirk |
kgamecanvas | Alternative to QGraphicsView. | kgamerenderer (integration) | libkgamecanvas_private |
misc/svgdocument | Transform SVG elements. | - | ksirk |
Color key | Delete | Make private | Keep | New | Undecided |
---|---|---|---|---|---|
Description | Code and headers are removed from the source tree. | Code is moved into the tree of the only application which uses it. Headers are not exported anymore. | Code stays in libkdegames. API and implementation changes may still be necessary. | New code and API (e.g. coming from Project Tagaro). | To be discussed on kde-games-devel mailinglist. |
Done
This table lists those components which have already been taken care of.
Component | Short desc. | Dependencies | Move target |
---|---|---|---|
audio | Simple sound playback. | - | |
base | Macros and API-less behavior. | - | |
carddecks | SVG card deck files used by KPat and LSkat. | - | |
cardloading | Carddeck theme loading and selection. | - | lskat |
kgamerenderer | Rendering of theme graphics. | theming | |
kggz | Network-enabled multiplayer. | - | |
misc/clock | Game clock (second accuracy). | - | |
misc/difficulty | Track difficulty level. | - | |
misc/grid2d | Coordinate calculations on 2D grids. | - | krosswordpuzzle (playground) |
misc/lcd | Enhanced QLCDNumber. | - | |
misc/popupitem | Message popup for QGraphicsView. | - | |
misc/progress | A very old progress bar. | - | |
misc/randomname | Function to generate a random name. | - | |
misc/standardactions | Standard KActions for games. | - | |
misc/svgdigits | Digits rendered from SVG. | - | |
theming | Management of SVG themes. | - |
Color key | Deleted | Moved out | Kept | New |
---|---|---|---|---|
Description | Has been deleted from libkdegames. | Has been moved into the source tree of the mentioned move target. | Has been kept in libkdegames. Where appropriate, API and implementation have been updated. | Has been merged into libkdegames. |
List of files (as of 4.8 release)
Source file | Belongs to component |
---|---|
chooserastergraphicssystem.cpp | base |
colorproxy_p.cpp/h | kgamerenderer |
highscore/kexthighscore.cpp/h | highscore |
highscore/kexthighscore_gui.cpp/h | highscore |
highscore/kexthighscore_internal.cpp/h | highscore |
highscore/kexthighscore_item.cpp/h | highscore |
highscore/kexthighscore_tab.cpp/h | highscore |
highscore/khighscore.cpp/h | highscore |
highscore/kscoredialog.cpp/h | highscore |
kchatbase.cpp/h | kchat |
kchatbaseitemdelegate.cpp/h | kchat |
kchatbasemodel.cpp/h | kchat |
kchat.cpp/h | kchat |
kchatdialog.cpp/h | kchat |
kgamecanvas.cpp/h | kgamecanvas |
kgameclock.cpp/h | misc/clock |
kgame/dialogs/kgameconnectdialog.cpp/h | kgame |
kgame/dialogs/kgamedebugdialog.cpp/h | kgame |
kgame/dialogs/kgamedialogconfig.cpp/h | kgame |
kgame/dialogs/kgamedialog.cpp/h | kgame |
kgame/dialogs/kgameerrordialog.cpp/h | kgame |
kgamedifficulty.cpp/h | misc/difficulty |
kgame/kgamechat.cpp/h | kgame |
kgame/kgame.cpp/h | kgame |
kgame/kgameerror.cpp/h | kgame |
kgame/kgameio.cpp/h | kgame |
kgame/kgamemessage.cpp/h | kgame |
kgame/kgamenetwork.cpp/h | kgame |
kgame/kgameprocess.cpp/h | kgame |
kgame/kgamepropertyarray.h | kgame |
kgame/kgameproperty.cpp/h | kgame |
kgame/kgamepropertyhandler.cpp/h | kgame |
kgame/kgamesequence.cpp/h | kgame |
kgame/kgameversion.h | kgame |
kgame/kmessageclient.cpp/h | kgame |
kgame/kmessageio.cpp/h | kgame |
kgame/kmessageserver.cpp/h/ph | kgame |
kgame/kplayer.cpp/h | kgame |
kgamepopupitem.cpp/h | misc/popupitem |
kgamerendereditem.cpp/h | kgamerenderer |
kgamerenderedobjectitem.cpp/h | kgamerenderer |
kgamerendererclient.cpp/h | kgamerenderer |
kgamerenderer.cpp/h/ph | kgamerenderer |
kgamesvgdocument.cpp/h/ph | misc/svgdocument |
kgametheme.cpp/h | theming |
kgamethemeselector.cpp/h | theming |
kstandardgameaction.cpp/h | misc/standardactions |
libkdegames_export.h | base |
tests/kgamepopupitemtest.cpp/h | misc/popupitem |
tests/kgamepropertytest.cpp/h | kgame |
includes/KChat | kchat |
includes/KChatBase | kchat |
includes/KChatBaseItemDelegate | kchat |
includes/KChatDialog | kchat |
includes/KExtHighscore | highscore |
includes/KGameCanvas | kgamecanvas |
includes/KGameClock | misc/clock |
includes/KGameDifficulty | misc/difficulty |
includes/KGame/KGame | kgame |
includes/KGame/KGameChat | kgame |
includes/KGame/KGameConnectDialog | kgame |
includes/KGame/KGameDebugDialog | kgame |
includes/KGame/KGameDialog | kgame |
includes/KGame/KGameDialogConfig | kgame |
includes/KGame/KGameError | kgame |
includes/KGame/KGameErrorDialog | kgame |
includes/KGame/KGameIO | kgame |
includes/KGame/KGameMessage | kgame |
includes/KGame/KGameNetwork | kgame |
includes/KGame/KGameProcess | kgame |
includes/KGame/KGameProperty | kgame |
includes/KGame/KGamePropertyArray | kgame |
includes/KGame/KGamePropertyHandler | kgame |
includes/KGame/KGameSequence | kgame |
includes/KGame/KGameVersion | kgame |
includes/KGame/KMessageClient | kgame |
includes/KGame/KMessageIO | kgame |
includes/KGame/KMessageServer | kgame |
includes/KGame/KPlayer | kgame |
includes/KGamePopupItem | misc/popupitem |
includes/KGameRenderedItem | kgamerenderer |
includes/KGameRenderedObjectItem | kgamerenderer |
includes/KGameRenderer | kgamerenderer |
includes/KGameRendererClient | kgamerenderer |
includes/KGameSvgDocument | misc/svgdocument |
includes/KGameTheme | theming |
includes/KGameThemeSelector | theming |
includes/KHighscore | highscore |
includes/KScoreDialog | highscore |
includes/KStandardGameAction | misc/standardactions |
Removed files
Source file | Belongs to component |
---|---|
cardcache.cpp/h/ph | cardloading |
carddeckinfo.cpp/h/ph | cardloading |
digits/kgamesvgdigits.cpp/h | misc/svgdigits |
kcarddialog.cpp/h | cardloading |
kgamelcd.cpp/h | misc/lcd |
kgamemisc.cpp/h | misc/randomname |
kgameprogress.cpp/h | misc/progress |
kggzgames/kggzgames_export.h | kggz |
kggzgames/kggzrankingsdialog.cpp/h | kggz |
kggzgames/kggzseatsdialog.cpp/h | kggz |
kggzmod/event.cpp/h | kggz |
kggzmod/kggzmod_export.h | kggz |
kggzmod/misc_private.h | kggz |
kggzmod/module.cpp/h/ph | kggz |
kggzmod/player.cpp/h/ph | kggz |
kggzmod/request.cpp/h | kggz |
kggzmod/statistics.cpp/h/ph | kggz |
kggznet/kggznet_export.h | kggz |
kggznet/kggzpacket.cpp/h | kggz |
kggznet/kggzraw.cpp/h | kggz |
kgrid2d.h | misc/grid2d |
tests/kgamesvgdigitstest.cpp/h | misc/svgdigits |
tests/kgamesvgdocumenttest.cpp/h | misc/svgdocument |
includes/KCardCache | cardloading |
includes/KCardDeckInfo | cardloading |
includes/KCardDialog | cardloading |
includes/KGameLCD | misc/lcd |
includes/KGameMisc | misc/randomname |
includes/KGameProgress | misc/progress |
includes/KGameSvgDigits | misc/svgdigits |
includes/KGGZRankingsDialog | kggz |
includes/KGGZSeatsDialog | kggz |
includes/KGrid2D | misc/grid2d |