<html>
  <head>
    <meta content="text/html; charset=utf-8" http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <p><font face="Georgia">It's not too unusual -- just old. There was,
        15 years ago, some related code in HandMorph>>fullDrawOn:
        and your rounded-corner morph was correctly drawn, regardless of
        whether cachedCanvasHasHoles was set to true or false. Since
        that time, the drawing of rounded corners (and drop shadows as
        well, I guess) has changed a bit and now the value of
        cachedCanvasHasHoles does matter -- it needs to be true for
        rounded-corner things to draw correctly.</font><br>
    </p>
    <br>
    <div class="moz-cite-prefix">On 12/6/16 12:26 AM, tim Rowledge
      wrote:<br>
    </div>
    <blockquote
      cite="mid:32BA1E2C-F927-48AA-8E78-2B7613BB9B69@rowledge.org"
      type="cite">
      <pre wrap="">
</pre>
      <blockquote type="cite">
        <pre wrap="">On 05-12-2016, at 6:57 PM, Bob Arning <a class="moz-txt-link-rfc2396E" href="mailto:arning315@comcast.net"><arning315@comcast.net></a> wrote:

This method in HandMorph seems to have a view of corner rounding that depends on a particular corner geometry. 
</pre>
      </blockquote>
      <pre wrap="">
Thanks; that seems to be the responsible method. I’m quite at a loss to explain what was being thought of for the hack. Most … unusual.

</pre>
      <blockquote type="cite">
        <pre wrap="">You might try changing the highlighted code to 



            nPix := cacheCanvas form tallyPixelValues first.
            "--> begin rounded corners hack <---"
            cachedCanvasHasHoles := true "(nPix = 48 
                        and: [submorphs size = 1 and: [submorphs first wantsRoundedCorners]]) 
                            ifTrue: [false]
                            ifFalse: [nPix > 0]".
            "--> end rounded corners hack <—"
</pre>
      </blockquote>
      <pre wrap="">
Instead of simply forcing cachedCanvasHasHoles to be true, it seems to work cleanly with 
     cachedCanvasHasHoles := nPix >0.
which at least makes use of the tallyPixelValues first - which is quite a bit of work.



tim
--
tim Rowledge; <a class="moz-txt-link-abbreviated" href="mailto:tim@rowledge.org">tim@rowledge.org</a>; <a class="moz-txt-link-freetext" href="http://www.rowledge.org/tim">http://www.rowledge.org/tim</a>
Useful random insult:- Wasn't fully debugged before being released.



</pre>
    </blockquote>
    <br>
  </body>
</html>