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





 <pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;">> Sorry, but I have to re-open this issue!
>
> Select a valid tag and the OK button will be enabled even if the schedule
> name is empty.

Paraphrasing Alvaro, it's a bit of a bag of worms here, still.  I don't see
entering just a tag enabling the OK button, but entering a tag and immediately
clicking in the memo field does, and it also clears the tag.  In fact, entering
text in the tag field, then clicking any input widget in the transaction area,
clears the tag, removes it from thr drop-down, and enables the OK button.  With
a new schedule, entering two characters in the memo field, then entering an
amount, then adding a third memo character enables the OK button.

I got the impression from Alvaro, "That area of code is a big mess. For
example, it's what took longer to migrate and stabilize in KDE4.  I'd say it's
good enough for now.", he felt a more thorough rework was necessary.

However, I knew there were other gremlins there, and am happy to take it
further in the meantime.
(from KMyMoney-devel mailing list)</pre>
 <br />









<p>- Allan</p>


<br />
<p>On December 14th, 2012, 10:46 a.m. UTC, Allan Anderson wrote:</p>






<table bgcolor="#fefadf" width="100%" cellspacing="0" cellpadding="8" style="background-image: url('http://git.reviewboard.kde.org/static/rb/images/review_request_box_top_bg.ab6f3b1072c9.png'); background-position: left top; background-repeat: repeat-x; border: 1px black solid;">
 <tr>
  <td>

<div>Review request for KMymoney.</div>
<div>By Allan Anderson.</div>


<p style="color: grey;"><i>Updated Dec. 14, 2012, 10:46 a.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;">The problem as originally reported was that in Schedules view, the OK button became enabled even though no schedule name had been entered.

It was found that the button became enabled as soon as a payee was entered.  It was also found that this happened when an amount was entered.

For "payee", line 753 of transactioneditor.cpp has - 
"connect(payee,SIGNAL(textChanged(QString)),this,SLOT(slotUpdateButtonState()))", and slotUpdateButtonState() has - 
"emit transactionDataSufficient(isComplete(reason)", 
and 'This signal is sent out whenever enough data is present to enter the transaction into the ledger.'

Similarly, for "amount", at line 826, the same line appears.

As neither of these fields is a mandatory one, I believe they should not affect the OK button status.  So, as shown in the patch, I have temporarily disabled these lines.  I have done numerous tests of schedule creation and editing, and manual entry and editing of transactions without any problem.

The same area of code in transactioneditor.cpp has several more of these possibly unneeded lines, although not affecting schedules.  For instance, even with these two lines out and with no mandatory fields completed, if a payee is selected and the memo, tag field, next due date or status is edited, the OK button again is enabled wrongly.

I don't really see any valid reason for 'slotUpdateButtonState()' to be in this section.  What do the wise men think?
</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;">Numerous tests of schedule creation and editing, and manual entry and editing of transactions without any problem.</pre>
  </td>
 </tr>
</table>



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


 <a href="http://bugs.kde.org/show_bug.cgi?id=311481">311481</a>


</div>


<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Diffs</b> </h1>
<ul style="margin-left: 3em; padding-left: 0;">

 <li>kmymoney/dialogs/transactioneditor.cpp <span style="color: grey">(72295a2)</span></li>

</ul>

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







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








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