<html>
 <body>
  <div style="font-family: Verdana, Arial, Helvetica, Sans-Serif;">
   <table bgcolor="#f9f3c9" width="100%" cellpadding="8" style="border: 1px #c9c399 solid;">
    <tr>
     <td>
      This is an automatically generated e-mail. To reply, visit:
      <a href="https://git.reviewboard.kde.org/r/115281/">https://git.reviewboard.kde.org/r/115281/</a>
     </td>
    </tr>
   </table>
   <br />



<table bgcolor="#e0e0e0" width="100%" cellpadding="8" style="border: 1px gray solid;">
 <tr>
  <td>
   <h1 style="margin-right: 0.2em; padding: 0; font-size: 10pt;">This change has been marked as submitted.</h1>
  </td>
 </tr>
</table>
<br />


<table bgcolor="#fefadf" width="100%" cellspacing="0" cellpadding="8" style="background-image: url('https://git.reviewboard.kde.org/static/rb/images/review_request_box_top_bg.ab6f3b1072c9.png'); background-position: left top; background-repeat: repeat-x; border: 1px black solid;">
 <tr>
  <td>

<div>Review request for KDE Games.</div>
<div>By Ian Wadham.</div>


<p style="color: grey;"><i>Updated Feb. 14, 2014, 11:12 p.m.</i></p>









<div style="margin-top: 1.5em;">
 <b style="color: #575012; font-size: 10pt;">Repository: </b>
palapeli
</div>


<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Description </h1>
 <table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: 1px solid #b8b5a0">
 <tr>
  <td>
   <pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">New features have been added:

1. Make space on the puzzle table for the puzzle solution. The location of the space is a combobox setting: default Center. One option is None (ie. same as current Palapeli).
2. Add a margin to the puzzle table. All pieces are inside the margin. It contains a thinner version of the ConstraintVisualizer widget, which marks the edge of the table and is a set of resize handles for the table. These handles cannot now overlap pieces and change their appearance. Also resizing is more like it is for a window and the risk of selecting/dragging the wrong thing (piece or table edge) is reduced.
3. Fit the puzzle and resize handles within the view when loading is completed (still needs polishing). Previously Palapeli reduced the puzzle area by 10%.
4. Save a puzzle when it is generated but no pieces have been moved yet. The puzzle stays the same until you move a piece or request Restart Puzzle, regardless of what other puzzles you may look at.

Puzzle loading has been re-worked and re-tuned, but still needs some polishing, to co-ordinate the timing of the loading widget (dancing balls), preview loading, piece loading, piece positioning and final display of the view. It seems to be faster now, perhaps because there used to be one change of scene rectangle per piece loaded, but now there is one per scene.

The diff for this review is a union of six commits that have all been pushed to origin master.</pre>
  </td>
 </tr>
</table>


<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Testing </h1>
<table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: 1px solid #b8b5a0">
 <tr>
  <td>
   <pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">Tested every value of the solution-space setting on puzzles of different sizes and numbers of pieces.

Tested the creation and display of the new margin and re-sizing handles. Also tested pushing pieces against each edge of the table, with and without the table being locked. Similarly for dragging the handles out or in until they (almost) meet the pieces.

Tested the final display of the puzzle and handles filling the view. Sometimes this is not quite precise or there is a flicker (needs polishing).

Tested puzzle generation and saving with several puzzles and sequences of loading, going back to the collection and selecting the same or another puzzle.

Tested puzzle loading and timing with several puzzles of various sizes and number of pieces, with logging-messages to trace what was happening, in what order and how long it was taking. There is still some polishing to do.</pre>
  </td>
 </tr>
</table>


<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Diffs</b> </h1>
<ul style="margin-left: 3em; padding-left: 0;">

 <li>src/engine/scene.h <span style="color: grey">(172f51d)</span></li>

 <li>src/engine/scene.cpp <span style="color: grey">(93767e0)</span></li>

 <li>src/engine/gameplay.cpp <span style="color: grey">(cd53c43)</span></li>

 <li>src/engine/constraintvisualizer.cpp <span style="color: grey">(425d3fe)</span></li>

 <li>src/engine/gameplay.h <span style="color: grey">(69c2f4a)</span></li>

 <li>src/engine/constraintvisualizer.h <span style="color: grey">(e3a0224)</span></li>

 <li>src/config/configdialog.h <span style="color: grey">(3a053fc)</span></li>

 <li>src/config/configdialog.cpp <span style="color: grey">(0d97b7e)</span></li>

 <li>src/engine/view.h <span style="color: grey">(9203b03)</span></li>

 <li>src/engine/view.cpp <span style="color: grey">(a06c34c)</span></li>

 <li>src/file-io/collection.cpp <span style="color: grey">(e3b557c)</span></li>

 <li>src/palapeli.kcfg <span style="color: grey">(64a91b7)</span></li>

 <li>src/settings.ui <span style="color: grey">(6c957b3)</span></li>

</ul>

<p><a href="https://git.reviewboard.kde.org/r/115281/diff/" style="margin-left: 3em;">View Diff</a></p>







  </td>
 </tr>
</table>




  </div>
 </body>
</html>