No problem Bernat. I think I will be able to start on the refactoring of the rendering methods this week.<div><br></div><div><br></div><div><br></div><div>TF<br><br><div class="gmail_quote">On Mon, Jan 31, 2011 at 12:36 AM, AxiNat <span dir="ltr">&lt;<a href="mailto:tibabenfortlapalanca@gmail.com">tibabenfortlapalanca@gmail.com</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">Hi Tony,<div><br></div><div>Sorry I took a bit long to answer. At the moment I&#39;m a little bit too busy to focus on helping you refactor TFLogin, as I&#39;ve just started developing a new application and I should put my efforts into having a working prototype as soon as possible, but if I got the time in the weeks to come I&#39;ll let you know.</div>


<div><br></div><div>For the moment I&#39;ve just forked your package into my repository with 3 or 4 small changes I needed for the CSS to work, but those are just little quick hacks.</div><div><br></div><div>Thanks for your dedication!</div>


<div><br></div><div>Bernat Romagosa.<br><br><div class="gmail_quote">2011/1/27 Tony Fleig <span dir="ltr">&lt;<a href="mailto:tony.fleig@gmail.com" target="_blank">tony.fleig@gmail.com</a>&gt;</span><div><div></div><div class="h5">
<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

Bernat,<div><br></div><div>Thanks very much for the criticism. I agree with you 100%. There is much that should be done to make the package easier for styling. I have to admit that I was leaving that work until I get my own projects that use TFLogin to the point where I needed to deal with the styling. There&#39;s nothing like a real-world example to expose problems -- as you have experienced. And I wanted to finish off the tests (which are about 80% complete) before I did any more refactoring so I would be able to tell whether I broke anything.</div>



<div><br></div><div>Unfortunately, I have been distracted by other issues and for the last few days have not been working with TFLogin. </div><div><br></div><div>I can use all the help I can get with this. If you would like to modify the classes to follow your suggestions I can make you a developer for TFLogin on Squeaksource or you can email the code to me and I will make the replacements. I would love to have your help.</div>



<div><br></div><div>If that is not something you can do, I will  make the changes in any case, but it might take longer than you would like (and of course they may not exactly meet your needs) as I will have less time for this than before for a while.</div>



<div><br></div><div>Thanks again for the suggestions.</div><div><br></div><div>Regards,</div><div>TF</div><div><font color="#888888"><br></font><div class="gmail_quote"><div><div></div><div>On Thu, Jan 27, 2011 at 2:29 AM, AxiNat <span dir="ltr">&lt;<a href="mailto:tibabenfortlapalanca@gmail.com" target="_blank">tibabenfortlapalanca@gmail.com</a>&gt;</span> wrote:<br>



</div></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div></div><div>Hi Tony and list,<div><br></div><div>I&#39;m using your TFLogin package and must say it&#39;s a very useful piece of work. Every app I coded needed most features yor package provides, and it&#39;s really convenient to have them ready made.</div>





<div><br></div><div>However, it is almost impossible to style its components because of inconsistencies in CSS classes and IDs, some components even have styles hardcoded in the rendering methods, which makes the styling process very tiresome for a designer. In some cases there&#39;s no other solution but to change the Smalltalk code or to use really ugly CSS/JS hacks. I really like your package, but I think a good refactoring focusing on breaking huge methods into smaller ones and structuring elements into divs and spans with their IDs and classes where needed would make it much easily pluggable.</div>





<div><br></div><div>An example:</div><div><br></div><div><i>TLRegisterComponent &gt;&gt; renderContentOn:</i></div><div><i><br></i></div><div><i>(...)</i></div><div><div><i>self useRecaptchaInRegistrationForm ifTrue: [</i></div>





<div><i><span style="white-space:pre-wrap">                                </span>html tableRow: [</i></div><div><i><span style="white-space:pre-wrap">                                        </span>html tableData </i></div><div><i><span style="white-space:pre-wrap">                                                </span>colSpan: 2;</i></div>





<div><i><span style="white-space:pre-wrap">                                                </span>style: &#39;padding: 10px;&#39;;  <b>&quot;This should be the designer&#39;s choice, not the programmer&#39;s&quot;</b></i></div><div><i><span style="white-space:pre-wrap">                                                </span>id: &#39;registercaptcha&#39;;</i></div>





<div><i><span style="white-space:pre-wrap">                                                </span>with: captchaComponent]].</i></div><i>(...)</i></div><div><br></div><div>Another example:</div><div><br></div><div><i>TFForgotPasswordComponent &gt;&gt; renderContentOn:</i></div>





<div><i><br></i></div><div><div><i><span style="white-space:pre-wrap">        </span>html form</i></div><div><i><span style="white-space:pre-wrap">                </span>class: &#39;forgotpasswordform&#39;;</i></div>

<div><i><span style="white-space:pre-wrap">                </span>with: [ </i></div><div><i><span style="white-space:pre-wrap">                        </span>html text: &#39;Enter your username below and we will send an email message to you that will allow you to set a new password.&#39;; break. <b> &quot;It is impossible for a designer to add a vertical space between these two lines, as there are no divs or spans defined and the br element doesn&#39;t allow almost any styling. Even using a paragraph would work better&quot;</b></i></div>





<div><i><span style="white-space:pre-wrap">                        </span>html text: &#39;Username &#39;.</i></div><div><i><span style="white-space:pre-wrap">                        </span>html textInput</i></div><div><i><span style="white-space:pre-wrap">                                </span>id: &#39;forgotpasswordusername&#39;;</i></div>





<div><i><span style="white-space:pre-wrap">                                </span>callback: [ :v |</i></div><div><i><span style="white-space:pre-wrap">                                        </span>self sendEmail: v ].</i></div><div><i><span style="white-space:pre-wrap">                        </span>html break. </i></div>





<div><i><span style="white-space:pre-wrap">                        </span>html button</i></div><div><i><span style="white-space:pre-wrap">                                </span>id: &#39;forgotpasswordokbtn&#39;;</i></div><div><i><span style="white-space:pre-wrap">                                </span>callback: [</i></div>





<div><i><span style="white-space:pre-wrap">                                        </span>self answer ];</i></div><div><i><span style="white-space:pre-wrap">                                </span>with: &#39;Ok&#39;]</i></div></div><div><br></div><div>

I hope you consider these suggestions as constructive criticism, if you need help refactoring or deciding what the CSS structure should look like please do not hesitate contacting me, I&#39;ll be glad to help :)</div><div>





<br></div><div>Cheers,</div><div><br></div><div>Bernat Romagosa.</div>
<br></div></div><div>_______________________________________________<br>
seaside mailing list<br>
<a href="mailto:seaside@lists.squeakfoundation.org" target="_blank">seaside@lists.squeakfoundation.org</a><br>
<a href="http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside" target="_blank">http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside</a><br>
<br></div></blockquote></div><br></div>
<br>_______________________________________________<br>
seaside mailing list<br>
<a href="mailto:seaside@lists.squeakfoundation.org" target="_blank">seaside@lists.squeakfoundation.org</a><br>
<a href="http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside" target="_blank">http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside</a><br>
<br></blockquote></div></div></div><br></div>
<br>_______________________________________________<br>
seaside mailing list<br>
<a href="mailto:seaside@lists.squeakfoundation.org">seaside@lists.squeakfoundation.org</a><br>
<a href="http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside" target="_blank">http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside</a><br>
<br></blockquote></div><br></div>