<html><body><div style="color:#000; background-color:#fff; font-family:times new roman, new york, times, serif;font-size:12pt"><div><br><span class="tab">    Oh, sorry again. Actually the problem is that </span><span class="yiv1882095703tab">HasHeightForWidth was a method and now it's a property so I cannot push. I guess I could push the Get_ part only but I think I'd have to comment out lots of code so it's of little use. Sorry, I must be tired or something.<br></span></div><div><br></div>  <div style="font-family: times new roman, new york, times, serif; font-size: 12pt;"> <div style="font-family: times new roman, new york, times, serif; font-size: 12pt;"> <div dir="ltr"> <font face="Arial" size="2"> ----- Forwarded Message -----<br>  <b><span style="font-weight:bold;">From:</span></b> Dimitar Dobrev <dpldobrev@yahoo.com><br> <b><span style="font-weight: bold;">To:</span></b> KDE bindings <kde-bindings@kde.org> <br> <b><span
 style="font-weight: bold;">Sent:</span></b> Thursday, December 13, 2012 11:16 PM<br> <b><span style="font-weight: bold;">Subject:</span></b> Re: [Kde-bindings] Qyoto: Patch v2: Translate obvious getters into properties or "Get" methods<br> </font> </div> <br>
<div id="yiv1882095703"><div><div style="color:#000;background-color:#fff;font-family:times new roman, new york, times, serif;font-size:12pt;"><div><br><span class="yiv1882095703tab">    This is better, however, there is another problem that had been "hidden" (that is, the compiler stopped there) by the Model issue: some of the code generated by uics is no longer valid, the "HasHeightForWidth" method in particular. Sorry about me not noticing earlier but I'd like to ask you to update uics as well. This is the only method I've found so if there are others, I'll fix them myself. On the other hand, the properties are OK, so I'll push them. Whenever you're ready with uics, I'll push the Get_ part too.</span></div><div style="color:rgb(0, 0, 0);font-size:16px;font-family:times new roman, new york, times, serif;background-color:transparent;font-style:normal;"><span class="yiv1882095703tab">    By the way, you didn't say what you
 think about the form of address.
 :)</span><br><span class="yiv1882095703tab"></span></div><div style="color:rgb(0, 0, 0);font-size:16px;font-family:times new roman, new york, times, serif;background-color:transparent;font-style:normal;"><span class="yiv1882095703tab"><br></span></div><div><span class="yiv1882095703tab">    Dimitar<br></span></div><div><br></div>  <div style="font-family:times new roman, new york, times, serif;font-size:12pt;"> <div style="font-family:times new roman, new york, times, serif;font-size:12pt;"> <div dir="ltr"> <font face="Arial" size="2"> <hr size="1">  <b><span style="font-weight:bold;">From:</span></b> "Crowell, Brian" <BCrowell@barbnet.com><br> <b><span style="font-weight:bold;">To:</span></b> Dimitar Dobrev <dpldobrev@yahoo.com>; KDE bindings for other programming languages <kde-bindings@kde.org> <br> <b><span style="font-weight:bold;">Sent:</span></b> Thursday, December 13, 2012 10:47 PM<br> <b><span style="
font-weight:bold;">Subject:</span></b> RE: [Kde-bindings] Qyoto: Patch v2: Translate obvious getters into properties or "Get" methods<br> </font> </div> <br>
<div id="yiv1882095703">

 
 
<style><!--
#yiv1882095703   
 filtered  {font-family:"Cambria Math";panose-1:2 4 5 3 5 4 6 3 2 4;}
#yiv1882095703 filtered  {font-family:Calibri;panose-1:2 15 5 2 2 2 4 3 2 4;}
#yiv1882095703 filtered  {font-family:Tahoma;panose-1:2 11 6 4 3 5 4 4 2 4;}
#yiv1882095703   
 p.yiv1882095703MsoNormal, #yiv1882095703  li.yiv1882095703MsoNormal, #yiv1882095703  div.yiv1882095703MsoNormal
        {margin:0in;margin-bottom:.0001pt;font-size:12.0pt;font-family:"Times New Roman", "serif";}
#yiv1882095703  a:link, #yiv1882095703  span.yiv1882095703MsoHyperlink
        {color:blue;text-decoration:underline;}
#yiv1882095703  a:visited, #yiv1882095703  span.yiv1882095703MsoHyperlinkFollowed
        {color:purple;text-decoration:underline;}
#yiv1882095703  p.yiv1882095703MsoAcetate, #yiv1882095703  li.yiv1882095703MsoAcetate, #yiv1882095703  div.yiv1882095703MsoAcetate
        {margin:0in;margin-bottom:.0001pt;font-size:8.0pt;font-family:"Tahoma", "sans-serif";}
#yiv1882095703  span.yiv1882095703tab
        {}
#yiv1882095703  span.yiv1882095703BalloonTextChar
        {font-family:"Tahoma", "sans-serif";}
#yiv1882095703  span.yiv1882095703EmailStyle20
        {font-family:"Calibri", "sans-serif";color:#1F497D;}
#yiv1882095703  .yiv1882095703MsoChpDefault
        {font-size:10.0pt;}
#yiv1882095703 filtered  {margin:1.0in 1.0in 1.0in 1.0in;}
#yiv1882095703  div.yiv1882095703WordSection1
        {}
--></style>

<div>
<div class="yiv1882095703WordSection1">
<div class="yiv1882095703MsoNormal"><span style="font-size:11.0pt;color:#1F497D;">Version 2 then, with more properties, and fix for the Model issue.</span></div> 
<div class="yiv1882095703MsoNormal"><span style="font-size:11.0pt;color:#1F497D;">  </span></div> 
<div class="yiv1882095703MsoNormal"><span style="font-size:11.0pt;color:#1F497D;">I’d be uncomfortable blacklisting methods. If List<QWidget> QWidget.Children() remains a method, nobody gets hurt, but if bool QMovie.JumpToNextFrame() becomes
 a property, chaos happens. There is one pattern that could be exploited: methods starting with nouns or adjectives like “Widget,” “Width,” “Window,” “File,” “Root,” “Physical,” and “Temp” are almost certainly properties, but so far only the “File” prefix has
 more than two entries in my list.</span></div> 
<div class="yiv1882095703MsoNormal"><span style="font-size:11.0pt;color:#1F497D;">  </span></div> 
<div class="yiv1882095703MsoNormal"><span style="font-size:11.0pt;color:#1F497D;">--Brian</span></div> 
<div class="yiv1882095703MsoNormal"><span style="font-size:11.0pt;color:#1F497D;">  </span></div> 
<div class="yiv1882095703MsoNormal"><span style="font-size:11.0pt;color:#1F497D;">  </span></div> 
<div style="border:none;border-left:solid blue 1.5pt;padding:0in 0in 0in 4.0pt;">
<div>
<div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in;">
<div class="yiv1882095703MsoNormal"><b><span style="font-size:10.0pt;">From:</span></b><span style="font-size:10.0pt;"> kde-bindings-bounces@kde.org [mailto:kde-bindings-bounces@kde.org]
<b>On Behalf Of </b>Dimitar Dobrev<br>
<b>Sent:</b> Thursday, December 13, 2012 1:15 PM<br>
<b>To:</b> KDE bindings for other programming languages<br>
<b>Subject:</b> Re: [Kde-bindings] Qyoto: Patch v1: Translate obvious getters into properties or "Get" methods</span></div> 
</div>
</div>
<div class="yiv1882095703MsoNormal">  </div> 
<div>
<div class="yiv1882095703MsoNormal" style="background:white;"><span class="yiv1882095703tab"><span style="color:black;">   
</span></span><span style="color:black;"></span></div> 
<div>
<div class="yiv1882095703MsoNormal" style="background:white;"><span class="yiv1882095703tab"><span style="color:black;">    Mr. Crowell,</span></span><span style="color:black;"></span></div> 
</div>
<div>
<div class="yiv1882095703MsoNormal"><span class="yiv1882095703tab"><span style="color:black;">    </span></span><span style="color:black;"></span></div> 
</div>
<div>
<div class="yiv1882095703MsoNormal"><span class="yiv1882095703tab"><span style="color:black;">    Thanks for the patch, it looks n</span></span><span style="color:black;">ice. I'll discuss it in a while. First, I'd like to point out that there is no need for us here in open source communities
 to be that formal. :) If you agree with me, you may call me "Dimitar" and in turn I would call you "Brian". However, if you do prefer an official form of address, that's fine by me.</span></div> 
</div>
<div>
<div class="yiv1882095703MsoNormal"><span class="yiv1882095703tab"><span style="color:black;">    About your patch: it looks very good, and I like how you reused the method for generating a property instead of writing your own. :) However, I have two remarks, a regression and a suggestion:</span></span><span style="color:black;"></span></div> 
</div>
<div>
<div class="yiv1882095703MsoNormal"><span class="yiv1882095703tab"><span style="color:black;">    1. QComboBox.Model used to be a read-write property, now it's read only. Could you please change your code so that it remains read-write? Also, if possible, check for other such cases because
 this is simply one I found, it doesn't mean there aren't more;</span></span><span style="color:black;"></span></div> 
</div>
<div>
<div class="yiv1882095703MsoNormal"><span class="yiv1882095703tab"><span style="color:black;">    2. </span></span><span style="color:black;">I'm wondering if it would be better to have something like a list of commonly used in API-s verbs, and then if the method starts with has or is or
 is a single word (this can be checked by casing) and this single word is not a verb, the method should be generated as a property. The thing is that your way you have to look for properties all over the huge Qt API, and that with each Qt version (for example,
 Qt 5 is coming very soon). Of course, the verb approach may actually turn out to be worse because there may be way too many verbs to enumerate. So this is simply a suggestion for you to think about if you like.<br>
<span class="yiv1882095703tab">    </span></span></div> 
</div>
<div>
<div class="yiv1882095703MsoNormal"><span class="yiv1882095703tab"><span style="color:black;">    Dimitar</span></span><span style="color:black;"></span></div> 
</div>
<div>
<div class="yiv1882095703MsoNormal" style="background:white;"><span style="color:black;">  </span></div> 
</div>
<div>
<div>
<div>
<div class="yiv1882095703MsoNormal" style="text-align:center;background:white;" align="center">
<span style="font-size:10.0pt;color:black;">
<hr align="center" size="1" width="100%">
</span></div>
<div class="yiv1882095703MsoNormal" style="background:white;"><b><span style="font-size:10.0pt;color:black;">From:</span></b><span style="font-size:10.0pt;color:black;"> "Crowell, Brian" <<a rel="nofollow" ymailto="mailto:BCrowell@barbnet.com" target="_blank" href="mailto:BCrowell@barbnet.com">BCrowell@barbnet.com</a>><br>
<b>To:</b> KDE bindings for other programming languages <<a rel="nofollow" ymailto="mailto:kde-bindings@kde.org" target="_blank" href="mailto:kde-bindings@kde.org">kde-bindings@kde.org</a>>
<br>
<b>Sent:</b> Thursday, December 13, 2012 8:23 PM<br>
<b>Subject:</b> [Kde-bindings] Qyoto: Patch v1: Translate obvious getters into properties or "Get" methods</span><span style="color:black;"></span></div> 
</div>
<div class="yiv1882095703MsoNormal" style="margin-bottom:12.0pt;background:white;"><span style="color:black;"><br>
As discussed with Mr. Dobrev, this patch finds methods with certain names and signatures and translates them into properties. This covers "Is" and "Has" properties along with a specified list of noun phrases. Getter methods that take arguments are renamed "Get"
 (Sibling(int row, int column) becomes GetSibling(int row, int column)).<br>
<br>
The list of property names is incomplete. I'll add more as I find them.<br>
<br>
--Brian<br>
_______________________________________________<br>
Kde-bindings mailing list<br>
<a rel="nofollow" ymailto="mailto:Kde-bindings@kde.org" target="_blank" href="mailto:Kde-bindings@kde.org">Kde-bindings@kde.org</a><br>
<a rel="nofollow" target="_blank" href="https://mail.kde.org/mailman/listinfo/kde-bindings">https://mail.kde.org/mailman/listinfo/kde-bindings</a><br>
<br>
</span></div> 
</div>
</div>
</div>
</div>
</div>
</div>

</div><br><br> </div> </div>  </div></div></div><br>_______________________________________________<br>Kde-bindings mailing list<br><a ymailto="mailto:Kde-bindings@kde.org" href="mailto:Kde-bindings@kde.org">Kde-bindings@kde.org</a><br><a href="https://mail.kde.org/mailman/listinfo/kde-bindings" target="_blank">https://mail.kde.org/mailman/listinfo/kde-bindings</a><br><br><br> </div> </div>  </div></body></html>