[Kde-games-devel] Review Request: Port KNetWalk to use QGraphicsView and KGameRenderer
Parker Coates
parker.coates at kdemail.net
Thu Sep 9 14:49:35 CEST 2010
> On 2010-09-06 03:02:02, Parker Coates wrote:
> > /trunk/KDE/kdegames/knetwalk/src/fielditem.cpp, lines 85-90
> > <http://svn.reviewboard.kde.org/r/5238/diff/1/?file=35069#file35069line85>
> >
> > Instead of implementing an empty paint() method, you should set the ItemHasNoContents flag as it's more efficient.
>
> Brian Croom wrote:
> I wasn't aware of that flag, however isn't it still necessary to implement paint() as it is pure virtual in QGraphicsItem?
You got me. I'd forgotten that paint() is pure virtual.
- Parker
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://svn.reviewboard.kde.org/r/5238/#review7417
-----------------------------------------------------------
On 2010-09-02 22:36:16, Brian Croom wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://svn.reviewboard.kde.org/r/5238/
> -----------------------------------------------------------
>
> (Updated 2010-09-02 22:36:16)
>
>
> Review request for KDE Games and Stefan Majewsky.
>
>
> Summary
> -------
>
> As KNetWalk's use of QWidget as its graphics stack was marked in red on the porting status wiki page, and because I wanted to see if I had acquired a good enough working understanding of the QGraphicsView framework to be able to accomplish it, I decided to attempt a full port of this game. I referred to the KMines source while restructuring the code, as it has various conceptually similar elements (a grid with square cells that are activated by the user during gameplay, etc.)
>
> Doing this required some rather invasive changes to the GUI code. In addition to switching to QGraphicsView, this patch also:
> - Removes the distinction between mouse and keyboard input modes. They now work together nicely, as they should.
> - Adds the ability to pause the game, and hide the puzzle while it is paused.
> - Cleans up code in various places and removes a number of obsolete class members that I presume to have been vestiges from before the KDE port.
>
> My only disappointment is that switching to QGraphicsView did not get rid of the rendering artifacts that often appear when the cables are being rotated. Particularly on the cells with T-shaped cable junctions, white pixels often appear at the edge of the pixmap during the rotation animation. I would greatly appreciate any suggestions for how to avoid that happening.
>
>
> Diffs
> -----
>
> /trunk/KDE/kdegames/knetwalk/src/fielditem.cpp PRE-CREATION
> /trunk/KDE/kdegames/knetwalk/src/fielditem.h PRE-CREATION
> /trunk/KDE/kdegames/knetwalk/src/cell.cpp 1168585
> /trunk/KDE/kdegames/knetwalk/src/CMakeLists.txt 1168585
> /trunk/KDE/kdegames/knetwalk/src/abstractgrid.h 1168585
> /trunk/KDE/kdegames/knetwalk/src/abstractgrid.cpp 1168585
> /trunk/KDE/kdegames/knetwalk/src/cell.h 1168585
> /trunk/KDE/kdegames/knetwalk/src/gamewidget.h PRE-CREATION
> /trunk/KDE/kdegames/knetwalk/src/gamewidget.cpp PRE-CREATION
> /trunk/KDE/kdegames/knetwalk/src/globals.h 1168585
> /trunk/KDE/kdegames/knetwalk/src/knetwalk.kcfg 1168585
> /trunk/KDE/kdegames/knetwalk/src/knetwalkui.rc 1168585
> /trunk/KDE/kdegames/knetwalk/src/main.cpp 1168585
> /trunk/KDE/kdegames/knetwalk/src/mainwindow.h 1168585
> /trunk/KDE/kdegames/knetwalk/src/mainwindow.cpp 1168585
> /trunk/KDE/kdegames/knetwalk/src/renderer.h 1168585
> /trunk/KDE/kdegames/knetwalk/src/renderer.cpp 1168585
>
> Diff: http://svn.reviewboard.kde.org/r/5238/diff
>
>
> Testing
> -------
>
> I have come to enjoy playing this game quite a lot, and have given it considerable testing. All the usual things seem to work well including resizing, theme changes, changing difficulty level, and pausing/resuming.
>
>
> Thanks,
>
> Brian
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.kde.org/pipermail/kde-games-devel/attachments/20100909/8dba788f/attachment-0001.htm
More information about the kde-games-devel
mailing list