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





<table bgcolor="#fefadf" width="100%" cellspacing="0" cellpadding="12" style="border: 1px #888a85 solid; border-radius: 6px; -moz-border-radius: 6px; -webkit-border-radius: 6px;">
 <tr>
  <td>

<div>Review request for Calligra and Boudewijn Rempt.</div>
<div>By Dmitry Kazakov.</div>








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


 <a href="http://bugs.kde.org/show_bug.cgi?id=313600">313600</a>, 

 <a href="http://bugs.kde.org/show_bug.cgi?id=341107">341107</a>


</div>



<div style="margin-top: 1.5em;">
 <b style="color: #575012; font-size: 10pt;">Repository: </b>
calligra
</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;"><p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">This is a cumulative patch for the work done in krita-chili-kazakov branch in git.</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">The main idea of the changes is that KoUnit returned by the canvas now contains proper pt->px conversion coefficient and the main shape widgets can handle it properly. They are now connected to the resource manager's signal and update the unit on every change.</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">There is one "not-ideal" point. The shapes can have internal transformations, but their size and position member functions do not take it into account. So in some of the widgets I had to take this "transformation factor" into account using KoUnit's pt->px factor. This looks a bit ugly, but I'm not sure we can do anything else here.</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">Here is the full list of changes.</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">commit 5efa5b4e9205632e1945d5fb467bc37836a582c4
Author: Dmitry Kazakov <a href="mailto:dimula73@gmail.com" style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: normal;">dimula73@gmail.com</a>
Date:   Tue Dec 2 14:07:35 2014 +0300</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;"><div class="codehilite" style="background: #f8f8f8"><pre style="line-height: 125%">Fix width of the Pencil Tool stroke after changing resolution

There were two things needed<span style="color: #666666">:</span>

<span style="color: #666666">1</span>) Deselect shapes when a shape<span style="color: #666666">-</span>based tool is activated.
   That is not needed when twe creating a new shape and it causes
   the shape stroke widget edit the options of the lastly
   selected stroke, which is not expected.
<span style="color: #666666">2</span>) Reset unit on every selection change in KoStrokeConfigWidget.
   Otherwise deselection is not handled properly.
</pre></div>
</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">commit ef5e1d2544beb30a027f874f7aedd8add951fedd
Author: Dmitry Kazakov <a href="mailto:dimula73@gmail.com" style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: normal;">dimula73@gmail.com</a>
Date:   Tue Dec 2 13:05:30 2014 +0300</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;"><div class="codehilite" style="background: #f8f8f8"><pre style="line-height: 125%">Fix units in the shadow config docker

<span style="color: #666666">1</span>) Added correct unit updates to the widget
<span style="color: #666666">2</span>) Moved approxTransformScale() calculation to KoUnit since it
   is too global
</pre></div>
</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">commit 38eea366b6477c4fcb5f0b46ced9be4fb9b93c1f
Author: Dmitry Kazakov <a href="mailto:dimula73@gmail.com" style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: normal;">dimula73@gmail.com</a>
Date:   Fri Nov 28 15:23:30 2014 +0400</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;"><div class="codehilite" style="background: #f8f8f8"><pre style="line-height: 125%">Fix a nice infinite loop in KoShadowConfigWidget

How to reproduce<span style="color: #666666">:</span>
<span style="color: #666666">1</span>) Add a shape in Krita
<span style="color: #666666">2</span>) Enable Shadow
<span style="color: #666666">3</span>) Zoom canvas with mouse wheel
</pre></div>
</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">commit fddc5e9cc648c4d0eceb67b793faa3c0c14b8d62
Author: Dmitry Kazakov <a href="mailto:dimula73@gmail.com" style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: normal;">dimula73@gmail.com</a>
Date:   Fri Nov 28 15:14:33 2014 +0400</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;"><div class="codehilite" style="background: #f8f8f8"><pre style="line-height: 125%">Fix Default tool widgets to show values in real pixels, not points

Now the option widgets use correct KoUnit object to convert their
options in correct user<span style="color: #666666">-</span>visible pixels. Some note on the implementation<span style="color: #666666">:</span>

<span style="color: #666666">1</span>) Affects KoStrokeConfigWidget and DefaultToolWidget
<span style="color: #666666">2</span>) The correct conversion value is stored in KoUnit, which is reported
   by KisCanvas2 and retransmitted by KisView2.
<span style="color: #666666">3</span>) There is a hack in KoStrokeConfigWidget. KoShapeStroke knows nothing
   about the absoluteTransformation() of the shape, which doesn<span style="border: 1px solid #FF0000">'</span>t stop
   the shape from doing the transformation of the outline (loaded into
   QPainter directly). So we take it into account manually, by adding
   a multiplier into KoUnit.

<span style="color: #A0A000">BUG:</span><span style="color: #666666">313600</span>
<span style="color: #A0A000">BUG:</span><span style="color: #666666">341107</span>
</pre></div>
</p></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;"><p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">Tested in Krita</p></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>krita/ui/kis_view2.cpp <span style="color: grey">(aa894e8)</span></li>

 <li>krita/ui/tool/kis_delegated_tool.h <span style="color: grey">(c63c6f9)</span></li>

 <li>krita/ui/tool/kis_delegated_tool_policies.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>krita/ui/tool/kis_delegated_tool_policies.cpp <span style="color: grey">(PRE-CREATION)</span></li>

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

 <li>libs/flake/KoShapeShadow.cpp <span style="color: grey">(ead0b80)</span></li>

 <li>libs/odf/KoUnit.h <span style="color: grey">(ae26734)</span></li>

 <li>libs/odf/KoUnit.cpp <span style="color: grey">(dc22265)</span></li>

 <li>libs/widgets/KoShadowConfigWidget.h <span style="color: grey">(b3140dd)</span></li>

 <li>libs/widgets/KoShadowConfigWidget.cpp <span style="color: grey">(d08f232)</span></li>

 <li>libs/widgets/KoStrokeConfigWidget.cpp <span style="color: grey">(445ea9f)</span></li>

 <li>libs/widgets/KoUnitDoubleSpinBox.cpp <span style="color: grey">(ff94913)</span></li>

 <li>plugins/defaultTools/defaulttool/DefaultToolWidget.cpp <span style="color: grey">(55885d2)</span></li>

 <li>krita/ui/CMakeLists.txt <span style="color: grey">(e28134a)</span></li>

 <li>krita/ui/canvas/kis_canvas2.cpp <span style="color: grey">(60ade0b)</span></li>

 <li>krita/ui/flake/kis_shape_controller.h <span style="color: grey">(39ae1eb)</span></li>

 <li>krita/ui/flake/kis_shape_controller.cpp <span style="color: grey">(a0db22d)</span></li>

 <li>krita/ui/flake/kis_shape_layer.cc <span style="color: grey">(c0fe4ac)</span></li>

 <li>krita/plugins/tools/defaulttools/kis_tool_path.h <span style="color: grey">(36db16a)</span></li>

 <li>krita/plugins/tools/defaulttools/kis_tool_pencil.h <span style="color: grey">(8a69428)</span></li>

 <li>krita/plugins/tools/selectiontools/kis_tool_select_path.h <span style="color: grey">(0bb252b)</span></li>

 <li>krita/plugins/tools/tool_transform2/kis_transform_utils.cpp <span style="color: grey">(9fd7e29)</span></li>

</ul>

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






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




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