<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="http://git.reviewboard.kde.org/r/102645/">http://git.reviewboard.kde.org/r/102645/</a>
     </td>
    </tr>
   </table>
   <br />





<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
 <p style="margin-top: 0;">On September 22nd, 2011, 8:55 p.m., <b>Jan Hambrecht</b> wrote:</p>
 <blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
  <pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">All in all I think you can commit. However while looking at the code I had another idea. If the calculation of the size and the sizeCached member is moved to group shape model, we do not have to expose the invalidateCacheSize function at all. And you would not need the shape group private anymore. But this is just cosmetics.</pre>
 </blockquote>









</blockquote>

<pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">Can you explain that a bit more. I'm not clear on how the stuff should be moved to the model. Would we then call a method of the model in size to see if the group size is changed. I will commit the current state and can work on that once I understood it.</pre>
<br />





<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
 <p style="margin-top: 0;">On September 22nd, 2011, 8:55 p.m., <b>Jan Hambrecht</b> wrote:</p>
 <blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
  



<table width="100%" border="0" bgcolor="white" style="border: 1px solid #C0C0C0; border-collapse: collapse; margin: 2px padding: 2px;">
 <thead>
  <tr>
   <th colspan="4" bgcolor="#F0F0F0" style="border-bottom: 1px solid #C0C0C0; font-size: 9pt; padding: 4px 8px; text-align: left;">
    <a href="http://git.reviewboard.kde.org/r/102645/diff/2/?file=36447#file36447line41" style="color: black; font-weight: bold; text-decoration: underline;">libs/flake/KoShapeContainerModel.cpp</a>
    <span style="font-weight: normal;">

     (Diff revision 2)

    </span>
   </th>
  </tr>
 </thead>

 <tbody style="background-color: #e4d9cb; padding: 4px 8px; text-align: center;">
  <tr>

   <td colspan="4"><pre style="font-size: 8pt; line-height: 140%; margin: 0; ">void KoShapeContainerModel::proposeMove(KoShape *child, QPointF &move)</pre></td>

  </tr>
 </tbody>




 
 



 <tbody>

  <tr>
    <th bgcolor="#b1ebb0" style="border-right: 1px solid #C0C0C0;" align="right"><font size="2"></font></th>
    <td bgcolor="#c5ffc4" width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td>
    <th bgcolor="#b1ebb0" style="border-left: 1px solid #C0C0C0; border-right: 1px solid #C0C0C0;" align="right"><font size="2">41</font></th>
    <td bgcolor="#c5ffc4" width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; ">    <span class="k">if</span> <span class="p">(</span><span class="n">type</span> <span class="o">!=</span> <span class="n">KoShape</span><span class="o">::</span><span class="n">CollisionDetected</span><span class="p">)</span> <span class="p">{</span></pre></td>
  </tr>

 </tbody>

</table>

  <pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">I am not sure about that. Probably best to check with Caspar if it is ok with him.</pre>
 </blockquote>



 <p>On September 22nd, 2011, 8:59 p.m., <b>C. Boemann</b> wrote:</p>
 <blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
  <pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">if the proposeMove is not called due to moving around within then i object as it will break text runaroundof page anchored shapes in words</pre>
 </blockquote>







</blockquote>
<pre style="margin-left: 1em; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">The CollisionDetected signal is received as usually. It is just that it is not promoted to the parents as it actually changes nothing and it happens very ofter also in cases where it is not needed at all, e.g. in stage. So text run around still works as expected.</pre>
<br />




<p>- Thorsten</p>


<br />
<p>On September 22nd, 2011, 2:52 a.m., Thorsten Zachmann wrote:</p>






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

<div>Review request for Calligra.</div>
<div>By Thorsten Zachmann.</div>


<p style="color: grey;"><i>Updated Sept. 22, 2011, 2:52 a.m.</i></p>




<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;">With the fix for the group size now every time the function is called it calculates the size from its children.

When testing this with cstester I found problmes in the documents I uploaded to.

http://www.zagge.de/anchor/groupsize/

The problem there is that due the very huge amount of shapes in the group it takes now quite a very very long time to render the pages.

The patch fixes that problem by adding a cache to the group size and only recalculates the size when there was a change.

It additionally don't forward the ChildChanged when a CollisionDetection is encountered. The CollisonChanged is not needed to forward to any parent as if the results in a change this change will be probagated.

The patch as it is now is ready for inclusion. The comments provided have been implemented.

Looking forward to your feedback.
</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;">Before the patch switching between slides in the www.renaissance.co.il%2Fivbug%2Fmeeting87%2FArchitecture%20and%20design%20patterns.ppt file takes more then 10 seconds, with the patch it is instantly.

Tested resizing of groups of groups, resizing/modifying of shapes in groups. </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>libs/flake/KoShapeContainerModel.cpp <span style="color: grey">(7995236)</span></li>

 <li>libs/flake/KoShapeGroup.h <span style="color: grey">(a53d2ad)</span></li>

 <li>libs/flake/KoShapeGroup.cpp <span style="color: grey">(409b18c)</span></li>

 <li>libs/flake/KoShape_p.h <span style="color: grey">(d055056)</span></li>

</ul>

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




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








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