[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-core-devel
Subject:    Re: Review Request: Social About Dialog implementation for KDElibs
From:       "Teo Mrnjavac" <teo () kde ! org>
Date:       2010-11-10 12:51:48
Message-ID: 20101110125148.2575.99205 () vidsolbach ! de
[Download RAW message or body]

> On 2010-11-09 21:40:54, David Faure wrote:
> > trunk/KDE/kdelibs/kdeui/dialogs/kaboutapplicationpersonlistdelegate_p.cpp, line \
> > 45 <http://svn.reviewboard.kde.org/r/5794/diff/5/?file=40894#file40894line45>
> > 
> > Why is this a pointer to a QSize, rather than just a QSize member?
> > 
> > In fact this member (m_widgetSizeHint) doesn't seem to be used anywhere, can be \
> > removed.

Whoops, I forgot to delete that member from an earlier attempt at handling the \
delegate's geometry.


> On 2010-11-09 21:40:54, David Faure wrote:
> > trunk/KDE/kdelibs/kdeui/dialogs/kaboutapplicationpersonlistdelegate_p.cpp, line \
> > 224 <http://svn.reviewboard.kde.org/r/5794/diff/5/?file=40894#file40894line224>
> > 
> > Why the setPen, if this method only uses drawPixmap?
> > 
> > This means the save + the restore can be removed too.

Same as above.


> On 2010-11-09 21:40:54, David Faure wrote:
> > trunk/KDE/kdelibs/kdeui/dialogs/kaboutapplicationpersonmodel_p.cpp, line 140
> > <http://svn.reviewboard.kde.org/r/5794/diff/5/?file=40898#file40898line140>
> > 
> > Why does this start at 2?

That's because of a design issue in the OCS API and Attica. OCS supports 10 total \
homepages. The counter starts at 2 because the first homepage property is labeled as \
"homepage" in the OCS API and exposed by Attica simply through Person::homepage(), \
but the others are "homepage2..10" in the OCS API and exposed only through \
Person::extendedAttribute() in Attica. I'm going to add a brief comment about this in \
the code to avoid confusion.


> On 2010-11-09 21:40:54, David Faure wrote:
> > trunk/KDE/kdelibs/kdeui/dialogs/kaboutapplicationpersonmodel_p.cpp, line 235
> > <http://svn.reviewboard.kde.org/r/5794/diff/5/?file=40898#file40898line235>
> > 
> > Why the emit layoutChanged()? When a cell changes, dataChanged() is enough.

The geometry of the row changes, if I don't call layoutChanged() the rows start \
overlapping at some points and the whole view looks borked.


- Teo


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://svn.reviewboard.kde.org/r/5794/#review8600
-----------------------------------------------------------


On 2010-11-09 09:22:50, Teo Mrnjavac wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://svn.reviewboard.kde.org/r/5794/
> -----------------------------------------------------------
> 
> (Updated 2010-11-09 09:22:50)
> 
> 
> Review request for kdelibs.
> 
> 
> Summary
> -------
> 
> The present review request contains the implementation of a Social About Dialog \
> feature for KDE apps, and is a rewrite of Amarok's Social About Dialog (See \
> http://teom.wordpress.com/2009/08/23/social-desktop-integration-in-kaboutdialog/ ). \
> For those who don't have time to read through that link, the Social About Dialog is \
> an evolution of our old KAboutDialog which adds optional Open Collaboration \
> Services features to complete the contributors' data. The only changes that concern \
> the API are in kaboutdata.{h,cpp}, and I've tried to keep it binary compatible to \
> the best of my abilities by following the instructions on our Techbase, I hope I \
> did it right. The only new dependency is the Attica library, except if we are \
> building with KDE_PLATFORM_FEATURE_BINARY_COMPATIBLE_FEATURE_REDUCTION, in that \
> case all social features are #ifdef'ed out and the dialog behaves very much like \
> the old KAboutDialog. The dialog itself uses model/view/delegate, not very \
> different from KNewStuff3, and most of the action happens in the model (jobs to get \
> data from Attica/OCS) and in the delegate. As we're getting dangerously close to \
> the string freeze, I've decided to put this up for review even though there are \
>                 still a couple TODOs in the code. These are:
> * The icons are placeholders, we are going to need some real icons for links and \
> social networks. We already have some of those for Amarok's about dialog but this \
> needs to be cleanly solved in a way that would not make us liable for IP \
> infringement in any way. IANAL here so a discussion as to how to proceed is \
>                 welcome.
> * In the optional translators tab there's a short but not very short text about the \
> translation team. I've added it as a label but it tends to take a bit more room \
> than I'd like, so I'm requesting for comments on what to do with it. Also, I don't \
> know how translators' names are added. If translators can't add their OCS usernames \
> anyway then I'll easily revert to the old about view for them and the problem of \
>                 the tall translation team text is automatically solved.
> * Since kdeui does not depend on KIO, I couldn't use KIO::get and had to use QNAM \
> instead. For the same reason I had to use QDesktopServices instead of \
> KRun::runUrl() to launch URLs. As it is now, stuff works, but to make it nicer the \
> plan could be to add an Attica::PixmapFromUrlJob (which I've been told would \
> satisfy other unrelated needs too) to Attica to remove the single instance where \
> QNAM is used instead of KIO. 
> Except maybe for the translators tab issues, none of the TODOs require string \
> changes. 
> To test the feature you only need to compile KDElibs with the patch and run any KDE \
> app which has an about dialog, however you won't be able to try the social features \
> unless you also add OCS usernames (by default the provider is openDesktop.org) to \
> one or more contributors in the KAboutData of a KDE app of your choice. For \
> example: aboutData.addAuthor( ki18n("Random Dude") ,  ki18n("Random stuff"), \
> "randomdude@kde.org", "http://example.com", "random-dude's-oD.o-username"); 
> 
> Diffs
> -----
> 
> trunk/KDE/kdelibs/kdecore/kernel/kaboutdata.h 1194020 
> trunk/KDE/kdelibs/kdecore/kernel/kaboutdata.cpp 1194020 
> trunk/KDE/kdelibs/kdeui/CMakeLists.txt 1194020 
> trunk/KDE/kdelibs/kdeui/dialogs/kaboutapplicationconfigattica_p.h.cmake \
> PRE-CREATION  trunk/KDE/kdelibs/kdeui/dialogs/kaboutapplicationdialog.h 1194020 
> trunk/KDE/kdelibs/kdeui/dialogs/kaboutapplicationdialog.cpp 1194020 
> trunk/KDE/kdelibs/kdeui/dialogs/kaboutapplicationpersonlistdelegate_p.h \
> PRE-CREATION  trunk/KDE/kdelibs/kdeui/dialogs/kaboutapplicationpersonlistdelegate_p.cpp \
> PRE-CREATION  trunk/KDE/kdelibs/kdeui/dialogs/kaboutapplicationpersonlistview_p.h \
> PRE-CREATION  trunk/KDE/kdelibs/kdeui/dialogs/kaboutapplicationpersonlistview_p.cpp \
> PRE-CREATION  trunk/KDE/kdelibs/kdeui/dialogs/kaboutapplicationpersonmodel_p.h \
> PRE-CREATION  trunk/KDE/kdelibs/kdeui/dialogs/kaboutapplicationpersonmodel_p.cpp \
> PRE-CREATION  trunk/KDE/kdelibs/kdeui/dialogs/thumb_frame.png UNKNOWN 
> 
> Diff: http://svn.reviewboard.kde.org/r/5794/diff
> 
> 
> Testing
> -------
> 
> Testing during development, both with Attica enabled and disabled.
> 
> 
> Screenshots
> -----------
> 
> The social about dialog as it appears when OCS usernames for openDesktop.org are \
> provided in addAuthor() http://svn.reviewboard.kde.org/r/5794/s/552/
> 
> 
> Thanks,
> 
> Teo
> 
> 


[Attachment #3 (text/html)]

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








<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: \
10px;">  <p style="margin-top: 0;">On November 9th, 2010, 9:40 p.m., <b>David \
Faure</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/5794/diff/5/?file=40894#file40894line45" \
style="color: black; font-weight: bold; text-decoration: \
underline;">trunk/KDE/kdelibs/kdeui/dialogs/kaboutapplicationpersonlistdelegate_p.cpp</a>
  <span style="font-weight: normal;">

     (Diff revision 5)

    </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; ">KAboutApplicationPersonListDelegate::KAboutApplicationPersonListDelegate(</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">45</font></th>  <td bgcolor="#c5ffc4" \
width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; ">    <span \
class="p">,</span> <span class="n">m_widgetSizeHint</span><span class="p">(</span> \
<span class="k">new</span> <span class="n">QSize</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;">Why is this a pointer to \
a QSize, rather than just a QSize member?

In fact this member (m_widgetSizeHint) doesn&#39;t seem to be used anywhere, can be \
removed.</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;">Whoops, I \
forgot to delete that member from an earlier attempt at handling the delegate&#39;s \
geometry.</pre> <br />

<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: \
10px;">  <p style="margin-top: 0;">On November 9th, 2010, 9:40 p.m., <b>David \
Faure</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/5794/diff/5/?file=40894#file40894line224" \
style="color: black; font-weight: bold; text-decoration: \
underline;">trunk/KDE/kdelibs/kdeui/dialogs/kaboutapplicationpersonlistdelegate_p.cpp</a>
  <span style="font-weight: normal;">

     (Diff revision 5)

    </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; ">KAboutApplicationPersonListDelegate::KAboutApplicationPersonListDelegate(</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">224</font></th>  <td bgcolor="#c5ffc4" \
width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; ">    <span \
class="n">painter</span><span class="o">-&gt;</span><span \
class="n">setPen</span><span class="p">(</span><span class="n">QPen</span><span \
class="p">(</span><span class="n">option</span><span class="p">.</span><span \
class="n">palette</span><span class="p">.</span><span class="n">text</span><span \
class="p">().</span><span class="n">color</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;">Why the setPen, if this \
method only uses drawPixmap?

This means the save + the restore can be removed too.</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;">Same as \
above.</pre> <br />

<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: \
10px;">  <p style="margin-top: 0;">On November 9th, 2010, 9:40 p.m., <b>David \
Faure</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/5794/diff/5/?file=40898#file40898line140" \
style="color: black; font-weight: bold; text-decoration: \
underline;">trunk/KDE/kdelibs/kdeui/dialogs/kaboutapplicationpersonmodel_p.cpp</a>  \
<span style="font-weight: normal;">

     (Diff revision 5)

    </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; ">void KAboutApplicationPersonModel::onPersonJobFinished( Attica::BaseJob *job )   \
//SLOT</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">140</font></th>  <td bgcolor="#c5ffc4" \
width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; ">        <span \
class="k">for</span><span class="p">(</span> <span class="kt">int</span> <span \
class="n">i</span> <span class="o">=</span> <span class="mi">2</span><span \
class="p">;</span> <span class="n">i</span> <span class="o">&lt;=</span> <span \
class="mi">10</span><span class="p">;</span> <span class="o">++</span><span \
class="n">i</span> <span class="p">)</span> <span class="p">{</span> <span \
class="c1">//OCS supports 10 total homepages as of 2/oct/2009</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;">Why does this start at \
2?</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;">That&#39;s \
because of a design issue in the OCS API and Attica. OCS supports 10 total homepages. \
The counter starts at 2 because the first homepage property is labeled as \
&quot;homepage&quot; in the OCS API and exposed by Attica simply through \
Person::homepage(), but the others are &quot;homepage2..10&quot; in the OCS API and \
exposed only through Person::extendedAttribute() in Attica. I&#39;m going to add a \
brief comment about this in the code to avoid confusion.</pre> <br />

<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: \
10px;">  <p style="margin-top: 0;">On November 9th, 2010, 9:40 p.m., <b>David \
Faure</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/5794/diff/5/?file=40898#file40898line235" \
style="color: black; font-weight: bold; text-decoration: \
underline;">trunk/KDE/kdelibs/kdeui/dialogs/kaboutapplicationpersonmodel_p.cpp</a>  \
<span style="font-weight: normal;">

     (Diff revision 5)

    </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; ">void KAboutApplicationPersonModel::onPersonJobFinished( Attica::BaseJob *job )   \
//SLOT</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">235</font></th>  <td bgcolor="#c5ffc4" \
width="50%"><pre style="font-size: 8pt; line-height: 140%; margin: 0; ">    <span \
class="n">emit</span> <span class="n">layoutChanged</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;">Why the emit \
layoutChanged()? When a cell changes, dataChanged() is enough.</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 \
geometry of the row changes, if I don&#39;t call layoutChanged() the rows start \
overlapping at some points and the whole view looks borked.</pre> <br />




<p>- Teo</p>


<br />
<p>On November 9th, 2010, 9:22 a.m., Teo Mrnjavac 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.</div>
<div>By Teo Mrnjavac.</div>


<p style="color: grey;"><i>Updated 2010-11-09 09:22:50</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;">The present review request contains the implementation of a Social About \
Dialog feature for KDE apps, and is a rewrite of Amarok&#39;s Social About Dialog \
(See http://teom.wordpress.com/2009/08/23/social-desktop-integration-in-kaboutdialog/ \
). For those who don&#39;t have time to read through that link, the Social About \
Dialog is an evolution of our old KAboutDialog which adds optional Open Collaboration \
Services features to complete the contributors&#39; data. The only changes that \
concern the API are in kaboutdata.{h,cpp}, and I&#39;ve tried to keep it binary \
compatible to the best of my abilities by following the instructions on our Techbase, \
I hope I did it right. The only new dependency is the Attica library, except if we \
are building with KDE_PLATFORM_FEATURE_BINARY_COMPATIBLE_FEATURE_REDUCTION, in that \
case all social features are #ifdef&#39;ed out and the dialog behaves very much like \
the old KAboutDialog. The dialog itself uses model/view/delegate, not very different \
from KNewStuff3, and most of the action happens in the model (jobs to get data from \
Attica/OCS) and in the delegate. As we&#39;re getting dangerously close to the string \
freeze, I&#39;ve decided to put this up for review even though there are still a \
                couple TODOs in the code. These are:
 * The icons are placeholders, we are going to need some real icons for links and \
social networks. We already have some of those for Amarok&#39;s about dialog but this \
needs to be cleanly solved in a way that would not make us liable for IP infringement \
                in any way. IANAL here so a discussion as to how to proceed is \
                welcome.
 * In the optional translators tab there&#39;s a short but not very short text about \
the translation team. I&#39;ve added it as a label but it tends to take a bit more \
room than I&#39;d like, so I&#39;m requesting for comments on what to do with it. \
Also, I don&#39;t know how translators&#39; names are added. If translators can&#39;t \
add their OCS usernames anyway then I&#39;ll easily revert to the old about view for \
                them and the problem of the tall translation team text is \
                automatically solved.
 * Since kdeui does not depend on KIO, I couldn&#39;t use KIO::get and had to use \
QNAM instead. For the same reason I had to use QDesktopServices instead of \
KRun::runUrl() to launch URLs. As it is now, stuff works, but to make it nicer the \
plan could be to add an Attica::PixmapFromUrlJob (which I&#39;ve been told would \
satisfy other unrelated needs too) to Attica to remove the single instance where QNAM \
is used instead of KIO.

Except maybe for the translators tab issues, none of the TODOs require string \
changes.

To test the feature you only need to compile KDElibs with the patch and run any KDE \
app which has an about dialog, however you won&#39;t be able to try the social \
features unless you also add OCS usernames (by default the provider is \
openDesktop.org) to one or more contributors in the KAboutData of a KDE app of your \
choice. For example: aboutData.addAuthor( ki18n(&quot;Random Dude&quot;) ,  \
ki18n(&quot;Random stuff&quot;), &quot;randomdude@kde.org&quot;, \
&quot;http://example.com&quot;, &quot;random-dude&#39;s-oD.o-username&quot;); </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;">Testing during development, both with Attica enabled and disabled.</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/kdecore/kernel/kaboutdata.h <span style="color: \
grey">(1194020)</span></li>

 <li>trunk/KDE/kdelibs/kdecore/kernel/kaboutdata.cpp <span style="color: \
grey">(1194020)</span></li>

 <li>trunk/KDE/kdelibs/kdeui/CMakeLists.txt <span style="color: \
grey">(1194020)</span></li>

 <li>trunk/KDE/kdelibs/kdeui/dialogs/kaboutapplicationconfigattica_p.h.cmake <span \
style="color: grey">(PRE-CREATION)</span></li>

 <li>trunk/KDE/kdelibs/kdeui/dialogs/kaboutapplicationdialog.h <span style="color: \
grey">(1194020)</span></li>

 <li>trunk/KDE/kdelibs/kdeui/dialogs/kaboutapplicationdialog.cpp <span style="color: \
grey">(1194020)</span></li>

 <li>trunk/KDE/kdelibs/kdeui/dialogs/kaboutapplicationpersonlistdelegate_p.h <span \
style="color: grey">(PRE-CREATION)</span></li>

 <li>trunk/KDE/kdelibs/kdeui/dialogs/kaboutapplicationpersonlistdelegate_p.cpp <span \
style="color: grey">(PRE-CREATION)</span></li>

 <li>trunk/KDE/kdelibs/kdeui/dialogs/kaboutapplicationpersonlistview_p.h <span \
style="color: grey">(PRE-CREATION)</span></li>

 <li>trunk/KDE/kdelibs/kdeui/dialogs/kaboutapplicationpersonlistview_p.cpp <span \
style="color: grey">(PRE-CREATION)</span></li>

 <li>trunk/KDE/kdelibs/kdeui/dialogs/kaboutapplicationpersonmodel_p.h <span \
style="color: grey">(PRE-CREATION)</span></li>

 <li>trunk/KDE/kdelibs/kdeui/dialogs/kaboutapplicationpersonmodel_p.cpp <span \
style="color: grey">(PRE-CREATION)</span></li>

 <li>trunk/KDE/kdelibs/kdeui/dialogs/thumb_frame.png <span style="color: \
grey">(UNKNOWN)</span></li>

</ul>

<p><a href="http://svn.reviewboard.kde.org/r/5794/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://svn.reviewboard.kde.org/r/5794/s/552/"><img \
src="http://svn.reviewboard.kde.org/media/uploaded/images/2010/11/08/snapshot2_1_400x100.png" \
style="border: 1px black solid;" alt="The social about dialog as it appears when OCS \
usernames for openDesktop.org are provided in addAuthor()" /></a>

</div>


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








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



[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic