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





<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
 <p style="margin-top: 0;">On May 1st, 2011, 10:14 a.m., <b>Hugo Pereira Da Costa</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;">Hello Aurelien, 

Though I have nothing to say against the current design of your kmessagebox widget, something I miss in your implementation is the possibility for a widget style to override/replace your rendering. I can indeed imagine some styles (not oxygen though) for which your design might not integrate that well, notably "skulpture" for which all widgets have square corners, that won't match your nice rounded one. 

There is a mechanism to "register" custom style primitives that widget styles may or may not support, and for your custom widget to test whether the style supports the new primitive or not, allowing it to fallback to its own rendering, when not supported. I think it would be nice for your widget (and other 'custom' widgets that you'd plan to implement) to use this mechanism, for better future integration.

kdeui/kdelibs/kcapacitybar implements this mechanism (the widget appears in the statusbar of dolphin to give the available space on a given device), and oxygen (as well as bespin) actually uses it to render the capacity bar as a regular "progress bar", instead of the default implementation (which you can see by using any style but oxygen, or bespin, e.g. plastique). 

Tell me that you think, and also if needed I can help implementing if you agree with the above but are short of time to work on it.

Cheers,

Hugo</pre>
 </blockquote>




 <p>On May 1st, 2011, 12:41 p.m., <b>Aaron J. Seigo</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;">note that this widget exposes a bug in oxygen style where when fading between two strings in a QLabel, the background is not updated. so when the text changes as well as the background color, the old background color remains. this is easily seen if you run kmessagewidgetdemo from kdeexamples/kmessagewidget/ and switch between the Information and Positive messages.</pre>
 </blockquote>





 <p>On May 1st, 2011, 1:13 p.m., <b>Hugo Pereira Da Costa</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;">Thanks Aaron.
Its now fixed (in a temporary way) in trunk. 
Note: I've been planing to re-implement the label text transition for a looong time now, in a much more robust way, to avoid these kind of issues -that occur elsewhere in kde- ... But have not found time so far :(
</pre>
 </blockquote>





 <p>On May 2nd, 2011, 5:33 p.m., <b>Aurélien Gâteau</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;">@Hugo: Interesting, I didn't know about this mechanism. I will be quite busy for the upcoming two weeks so if you feel like implementing it, feel free to (btw: I don't get the nice capacity bar in Dolphin anymore, just a progress bar, is it normal?)

@Aaron: I was able to reproduce this bug for a while when the "content" widget was hidden away by moving it (0, content->height()). Strangely enough changing the code to move it to (0, -content->height()) fixed it for me.</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;">Aurélien: "btw: I don't get the nice capacity bar in Dolphin anymore, just a progress bar, is it normal?"
Yes its normal. Its precisely what the "styling" mechanism allowed us to do. We (that is: Nuno, I, and some others) felt that the default implementation provided by Dolphin, although nice, had some polishing issues, and did not integrate well with Oxygen, so we re-implemented it in oxygen, and after some more discussion with Nuno, we figured that rather than implementing a new UI element with different rendering for just this purpose, we'd better just reuse the progress bar element, which which achieves just the same goal. </pre>
<br />








<p>- Hugo</p>


<br />
<p>On April 30th, 2011, 1:10 p.m., Aurélien Gâteau 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 kdelibs.</div>
<div>By Aurélien Gâteau.</div>


<p style="color: grey;"><i>Updated April 30, 2011, 1:10 p.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;">KMessageWidget is a new widget which can be considered as a less intrusive alternative for KMessageBox. It was designed during KDE UX sprint 2011 ( http://community.kde.org/Sprints/UX2011/KMessageWidget ).

The class documentation should make it clear how and when it can be used.

This widget could be used by:
- Browsers to implement their "remember password" widgets (Konqueror, Rekonq...)
- Forms to provide feedback on validation errors
- Bluedevil KCM to replace its custom "No Bluetooth adapter have been found" message widget
- Nepomuk/Strigi KCM to indicate status of their services
- Gwenview to replace its custom save bar
- ...

I still have a few additions in mind for the API but it is already usable and since we are freezing I think it can be merged in master in its current state. I assume it will still be possible to extend the API a bit before kdelibs 4.7 freezes for good.

I also wrote an example program in the kdeexample repository ( https://projects.kde.org/projects/kde/kdeexamples/repository/show?rev=agateau%2Fkmessagewidget ), though I am wondering whether it shouldn't be moved in kdeui/tests as it is more a manual test program than an example.</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>kdeui/CMakeLists.txt <span style="color: grey">(d1873d154f4dde92c29f2e6dab1be70d49ddb55e)</span></li>

 <li>kdeui/widgets/kmessagewidget.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>kdeui/widgets/kmessagewidget.cpp <span style="color: grey">(PRE-CREATION)</span></li>

</ul>

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



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

<div>

 <a href="http://git.reviewboard.kde.org/r/101249/s/141/"><img src="http://git.reviewboard.kde.org/media/uploaded/images/2011/04/28/kmessagewidget_400x100.png" style="border: 1px black solid;" alt="Montage from kmessagewidgetdemo" /></a>

</div>


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








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