[Kde-games-devel] Review Request: Port KNetWalk to use QGraphicsView and KGameRenderer
Brian Croom
brian.s.croom at gmail.com
Thu Sep 9 09:02:43 CEST 2010
> On 2010-09-06 03:02:02, Parker Coates wrote:
> > So first off, I'd just like to say that I've been meaning to port KNetWalk for a while now, but never really found the time. It's probably my favourite game in the entire module. Thanks for giving it a shot. For the most part things look good.
> >
> > Normally, I would say that this patch is too big. Porting from widgets to a canvas and switching the rendering framework in a single diff means that there's a lot of (not always related) things going on. But due to the coupling between the two frameworks, splitting it up into two diffs would probably mean extra work and wouldn't be worthwhile. In the future, please try to keep unrelated changes (like game pausing) in their own patches. It's much easier to review five ten-line patches than one thirty-line patch.
Hey, thanks for the review and encouragement.
I got a bit carried away while working on this, I think. I'm not so used to working in a patch-submission workflow so I tend to lump changes together, include whitespace and other trivial modifications in unrelated patches, etc. Newbie mistakes that I will try to discipline myself to avoid :)
I do agree with your suggestions and will work on putting together an updated patch, but my available free time dropped considerably shortly after I submitted this review request so it could be a few days before I have anything new to show.
> On 2010-09-06 03:02:02, Parker Coates wrote:
> > /trunk/KDE/kdegames/knetwalk/src/mainwindow.h, lines 121-129
> > <http://svn.reviewboard.kde.org/r/5238/diff/1/?file=35076#file35076line121>
> >
> > Where did this stuff go?
These vars are all unused in the trunk version. This is mostly what I was referring to when in the patch description I mentioned apparent leftovers from the pre-KDE version of the game.
- Brian
-----------------------------------------------------------
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/ffa3affd/attachment-0001.htm
More information about the kde-games-devel
mailing list