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

List:       koffice-devel
Subject:    Re: Review Request: Make the attribute() and property() methods in
From:       "Marijn Kruisselbrink" <m.kruisselbrink () student ! tue ! nl>
Date:       2010-09-24 9:24:30
Message-ID: 20100924092430.32640.15467 () vidsolbach ! de
[Download RAW message or body]

[Attachment #2 (multipart/alternative)]


> On 2010-09-23 15:16:57, Thomas Zander wrote:
> > trunk/koffice/libs/odf/KoGenStyle.h, line 398
> > <http://svn.reviewboard.kde.org/r/5431/diff/1/?file=36936#file36936line398>
> > 
> > What is this part about?
> 
> Marijn Kruisselbrink wrote:
> This is to mimic the behavior of the addProperty methods. When you add a property with \
> type==DefaultType, it is actually added with type=m_propertyType, so this results in that same behavior \
> on lookup. 
> Thomas Zander wrote:
> Ok, makes sense.
> Please document that in the API docs for this new public method.
> And I think we should not have the DefaultType as default as that makes it a not-very-conventional \
> getter (which leads to confusing API). So could you remove the (= DefaultType) in the method signature?

I don't think that the alternative of having a getter that is not symmetrical with the setter (where the \
setter has the same default parameter value) would be any less confusing. If I can set something with \
addProperty() without having to specify a type, I'd expect to be able to get that property again without \
having to specify a type as well.


- Marijn


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


On 2010-09-23 14:31:27, Marijn Kruisselbrink wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://svn.reviewboard.kde.org/r/5431/
> -----------------------------------------------------------
> 
> (Updated 2010-09-23 14:31:27)
> 
> 
> Review request for KOffice.
> 
> 
> Summary
> -------
> 
> This patch makes the attribute() and property() methods in KoGenStyle public instead of private. The \
> main use-case for this class is of course only to set properies and attributes, then insert styles in a \
> KoGenStyles and forget about the actual contents of the style, but sometimes when creating odf files it \
> is useful to be able to later lookup properties of earlier generated styles, without having to \
> double-store that information. For example in the xlsx filter this is used because the cell style for \
> merged cells is stored in one cell style in odf, but in the xlsx file it is a combination of properties \
> from the cell styles for all cells that are merged. With this change I can simply merge the cell styles \
> when I know that cells are merged, without having to keep the cell-styles around in another format than \
> the KoGenStyle that already contains all relevant information anyway. 
> 
> Diffs
> -----
> 
> trunk/koffice/libs/odf/KoGenStyle.h 1178191 
> 
> Diff: http://svn.reviewboard.kde.org/r/5431/diff
> 
> 
> Testing
> -------
> 
> 
> Thanks,
> 
> Marijn
> 
> 


[Attachment #5 (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/5431/">http://svn.reviewboard.kde.org/r/5431/</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 23rd, 2010, 3:16 p.m., <b>Thomas Zander</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="/r/5431/diff/1/?file=36936#file36936line398" style="color: black; \
font-weight: bold; text-decoration: underline;">trunk/koffice/libs/odf/KoGenStyle.h</a>  <span \
style="font-weight: normal;">

     (Diff revision 1)

    </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; ">public:</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">398</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">DefaultType</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;">What is this part about?</pre>  </blockquote>



 <p>On September 23rd, 2010, 3:22 p.m., <b>Marijn Kruisselbrink</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;">This is to mimic the behavior of the addProperty methods. When you \
add a property with type==DefaultType, it is actually added with type=m_propertyType, so this results in \
that same behavior on lookup.</pre>  </blockquote>





 <p>On September 24th, 2010, 8:56 a.m., <b>Thomas Zander</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;">Ok, makes sense. Please document that in the API docs for this new \
public method. And I think we should not have the DefaultType as default as that makes it a \
not-very-conventional getter (which leads to confusing API). So could you remove the (= DefaultType) in \
the method signature?</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 don&#39;t think that the alternative of having a \
getter that is not symmetrical with the setter (where the setter has the same default parameter value) \
would be any less confusing. If I can set something with addProperty() without having to specify a type, \
I&#39;d expect to be able to get that property again without having to specify a type as well.</pre> <br \
/>




<p>- Marijn</p>


<br />
<p>On September 23rd, 2010, 2:31 p.m., Marijn Kruisselbrink 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 KOffice.</div>
<div>By Marijn Kruisselbrink.</div>


<p style="color: grey;"><i>Updated 2010-09-23 14:31:27</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;">This patch makes the attribute() and \
property() methods in KoGenStyle public instead of private. The main use-case for this class is of course \
only to set properies and attributes, then insert styles in a KoGenStyles and forget about the actual \
contents of the style, but sometimes when creating odf files it is useful to be able to later lookup \
properties of earlier generated styles, without having to double-store that information. For example in \
the xlsx filter this is used because the cell style for merged cells is stored in one cell style in odf, \
but in the xlsx file it is a combination of properties from the cell styles for all cells that are \
merged. With this change I can simply merge the cell styles when I know that cells are merged, without \
having to keep the cell-styles around in another format than the KoGenStyle that already contains all \
relevant information anyway.</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/koffice/libs/odf/KoGenStyle.h <span style="color: grey">(1178191)</span></li>

</ul>

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




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








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



_______________________________________________
koffice-devel mailing list
koffice-devel@kde.org
https://mail.kde.org/mailman/listinfo/koffice-devel


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

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