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








<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
 <p style="margin-top: 0;">On October 22nd, 2010, 7:05 p.m., <b>John Layt</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://svn.reviewboard.kde.org/r/5671/diff/2/?file=39911#file39911line183" style="color: black; font-weight: bold; text-decoration: underline;">trunk/KDE/kdelibs/nepomuk/utils/datefacet.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="2"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td>
   <td colspan="2"><pre style="font-size: 8pt; line-height: 140%; margin: 0; ">DateRange Nepomuk::Utils::DateFacet::Private::dateRangeCandidateToDateRange( DateRangeCandidate range ) const</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">183</font></th>
    <td bgcolor="#c5ffc4" width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; ">                          <span class="n">QDate</span><span class="p">(</span> <span class="n">today</span><span class="p">.</span><span class="n">year</span><span class="p">()</span><span class="o">-</span><span class="mi">1</span><span class="p">,</span> <span class="mi">12</span><span class="p">,</span> <span class="mi">31</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;">Already here :-)  Yes, the first / last days of the year will need localizing, but it's not pretty.  In fact, it's so ugly, I'll add some public convenience methods to KCalendarSystem for them instead as it's easy to get t wrong (I already have private ones).  I'll get that done this weekend, If not ready in time free free to commit and I'll clean up afterward :-)

(The whole calendar api is just awkward anyway, I really need to do a KDate class to wrap it all).</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;">In DateRange I use this now:

DateRange DateRange::yearOf( const QDate& date )
{
    return DateRange( QDate( date.year(), 1, 1 ),
                      QDate( date.year(),
                            KGlobal::locale()->calendar()->monthsInYear( date ),
                            KGlobal::locale()->calendar()->daysInMonth( QDate( date.year(), KGlobal::locale()->calendar()->monthsInYear( date ), 1 ) ) ) );
}

is that correct?</pre>
<br />

<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
 <p style="margin-top: 0;">On October 22nd, 2010, 7:05 p.m., <b>John Layt</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://svn.reviewboard.kde.org/r/5671/diff/2/?file=39912#file39912line31" style="color: black; font-weight: bold; text-decoration: underline;">trunk/KDE/kdelibs/nepomuk/utils/daterange.h</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="2"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "></pre></td>
   <td colspan="2"><pre style="font-size: 8pt; line-height: 140%; margin: 0; ">class QDebug;</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">31</font></th>
    <td bgcolor="#c5ffc4" width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; "><span class="cm"> * \brief A simple data structure storing a start and an end date.</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;">Now, where else in KDE have a seen a DateRange class?  Somewhere in kdepim?  Perhaps we need one in kdelibs?</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;">I agree. I will write a unit test and then propose DateRange for kdecore</pre>
<br />

<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
 <p style="margin-top: 0;">On October 22nd, 2010, 7:05 p.m., <b>John Layt</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://svn.reviewboard.kde.org/r/5671/diff/2/?file=39916#file39916line100" style="color: black; font-weight: bold; text-decoration: underline;">trunk/KDE/kdelibs/nepomuk/utils/daterangeselectionwidget.ui</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; "></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">100</font></th>
    <td bgcolor="#c5ffc4" width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; ">    <widget class="QCalendarWidget" name="m_calendar"/></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;">Why not KDatePicker or KDateTable?  It localizes the calendar to the KDE calendar, the Qt one will only ever give you Gregorian.  If you need extra features added let me know.</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;">Actually it would be nice to be able to hide the extra day selection gui at the bottom of KDatePicker since that is where the range selection should be.</pre>
<br />




<p>- Sebastian</p>


<br />
<p>On October 22nd, 2010, 6:53 p.m., Sebastian Trueg wrote:</p>






<table bgcolor="#fefadf" width="100%" cellspacing="0" cellpadding="8" style="background-image: url('http://svn.reviewboard.kde.orgrb/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 and Vishesh Handa.</div>
<div>By Sebastian Trueg.</div>


<p style="color: grey;"><i>Updated 2010-10-22 18:53:14</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;">I have been struggling with creating a good facet API for a long time now. I finally reached a point where I am happy with the result. IMHO this is essential enough to get into kdelibs/nepomuk. The first usage will obviously be Dolphin, closely followed by the file dialog. All in all this will make it so much simpler to provide Nepomuk powered search capabilities in applications.
Anyway, this review request is intended for an API review before I commit.</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>trunk/KDE/kdelibs/includes/CMakeLists.txt <span style="color: grey">(1187872)</span></li>

 <li>trunk/KDE/kdelibs/includes/Nepomuk/Utils/DynamicResourceFacet <span style="color: grey">(PRE-CREATION)</span></li>

 <li>trunk/KDE/kdelibs/includes/Nepomuk/Utils/Facet <span style="color: grey">(PRE-CREATION)</span></li>

 <li>trunk/KDE/kdelibs/includes/Nepomuk/Utils/FacetWidget <span style="color: grey">(PRE-CREATION)</span></li>

 <li>trunk/KDE/kdelibs/includes/Nepomuk/Utils/ResourceModel <span style="color: grey">(PRE-CREATION)</span></li>

 <li>trunk/KDE/kdelibs/includes/Nepomuk/Utils/SearchWidget <span style="color: grey">(PRE-CREATION)</span></li>

 <li>trunk/KDE/kdelibs/includes/Nepomuk/Utils/SimpleFacet <span style="color: grey">(PRE-CREATION)</span></li>

 <li>trunk/KDE/kdelibs/includes/Nepomuk/Utils/SimpleResourceModel <span style="color: grey">(PRE-CREATION)</span></li>

 <li>trunk/KDE/kdelibs/nepomuk/Mainpage.dox <span style="color: grey">(1187872)</span></li>

 <li>trunk/KDE/kdelibs/nepomuk/utils/CMakeLists.txt <span style="color: grey">(1187872)</span></li>

 <li>trunk/KDE/kdelibs/nepomuk/utils/datefacet.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>trunk/KDE/kdelibs/nepomuk/utils/datefacet.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>trunk/KDE/kdelibs/nepomuk/utils/daterange.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>trunk/KDE/kdelibs/nepomuk/utils/daterange.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>trunk/KDE/kdelibs/nepomuk/utils/daterangeselectionwidget.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>trunk/KDE/kdelibs/nepomuk/utils/daterangeselectionwidget.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>trunk/KDE/kdelibs/nepomuk/utils/daterangeselectionwidget.ui <span style="color: grey">(PRE-CREATION)</span></li>

 <li>trunk/KDE/kdelibs/nepomuk/utils/dynamicresourcefacet.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>trunk/KDE/kdelibs/nepomuk/utils/dynamicresourcefacet.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>trunk/KDE/kdelibs/nepomuk/utils/facet.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>trunk/KDE/kdelibs/nepomuk/utils/facet.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>trunk/KDE/kdelibs/nepomuk/utils/facetdelegate.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>trunk/KDE/kdelibs/nepomuk/utils/facetdelegate.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>trunk/KDE/kdelibs/nepomuk/utils/facetfiltermodel.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>trunk/KDE/kdelibs/nepomuk/utils/facetfiltermodel.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>trunk/KDE/kdelibs/nepomuk/utils/facetmodel.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>trunk/KDE/kdelibs/nepomuk/utils/facetmodel.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>trunk/KDE/kdelibs/nepomuk/utils/facetwidget.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>trunk/KDE/kdelibs/nepomuk/utils/facetwidget.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>trunk/KDE/kdelibs/nepomuk/utils/resourcemodel.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>trunk/KDE/kdelibs/nepomuk/utils/resourcemodel.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>trunk/KDE/kdelibs/nepomuk/utils/searchlineedit.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>trunk/KDE/kdelibs/nepomuk/utils/searchlineedit.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>trunk/KDE/kdelibs/nepomuk/utils/searchwidget.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>trunk/KDE/kdelibs/nepomuk/utils/searchwidget.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>trunk/KDE/kdelibs/nepomuk/utils/searchwidget_p.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>trunk/KDE/kdelibs/nepomuk/utils/simplefacet.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>trunk/KDE/kdelibs/nepomuk/utils/simplefacet.cpp <span style="color: grey">(PRE-CREATION)</span></li>

 <li>trunk/KDE/kdelibs/nepomuk/utils/simpleresourcemodel.h <span style="color: grey">(PRE-CREATION)</span></li>

 <li>trunk/KDE/kdelibs/nepomuk/utils/simpleresourcemodel.cpp <span style="color: grey">(PRE-CREATION)</span></li>

</ul>

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




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








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