<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META content="text/html; charset=iso-8859-1" http-equiv=Content-Type>
<META name=GENERATOR content="MSHTML 8.00.6001.18882">
<STYLE></STYLE>
</HEAD>
<BODY bgColor=#ffffff>
<DIV><FONT size=2 face=Arial>Honestly is was five minutes for me
;-).</FONT></DIV>
<DIV><FONT size=2 face=Arial>I can make the end-result image/changes available
if required.</FONT></DIV>
<DIV><BR>Regards, Gary<BR></DIV>
<BLOCKQUOTE
style="BORDER-LEFT: #000000 2px solid; PADDING-LEFT: 5px; PADDING-RIGHT: 0px; MARGIN-LEFT: 5px; MARGIN-RIGHT: 0px">
<DIV style="FONT: 10pt arial">----- Original Message ----- </DIV>
<DIV
style="FONT: 10pt arial; BACKGROUND: #e4e4e4; font-color: black"><B>From:</B>
<A title=gazzaguru2@btinternet.com
href="mailto:gazzaguru2@btinternet.com">Gary Chambers</A> </DIV>
<DIV style="FONT: 10pt arial"><B>To:</B> <A
title=squeak-dev@lists.squeakfoundation.org
href="mailto:squeak-dev@lists.squeakfoundation.org">The general-purpose Squeak
developers list</A> </DIV>
<DIV style="FONT: 10pt arial"><B>Sent:</B> Saturday, March 13, 2010 6:10
PM</DIV>
<DIV style="FONT: 10pt arial"><B>Subject:</B> Re: [squeak-dev] Re: Regarding
Polymorph</DIV>
<DIV><BR></DIV>
<DIV><FONT size=2 face=Arial>OK. There are problems with MC with the way
Traits are handled between... that's the worst part. in a bit.</FONT></DIV>
<DIV>
<DIV><FONT size=2 face=Arial></FONT> </DIV>
<DIV><FONT size=2 face=Arial>It seems the Traits handling in Monticello
differs between the old (MC 1.0) and new...</FONT></DIV>
<DIV><FONT size=2 face=Arial></FONT> </DIV></DIV>
<DIV><FONT size=2 face=Arial></FONT> </DIV>
<DIV><FONT size=2 face=Arial>Start from latest trunk image.</FONT></DIV>
<DIV><FONT size=2 face=Arial></FONT> </DIV>
<DIV><FONT size=2 face=Arial>First off, due to an uninitialized variable, it
seems...</FONT></DIV>
<DIV><FONT size=2 face=Arial></FONT> </DIV>
<DIV><FONT size=2 face=Arial>In FormCanvas</FONT></DIV>
<DIV><FONT size=2 face=Arial></FONT> </DIV>
<DIV><FONT size=2 face=Arial>setFillColor: aColor<BR> "Install a new
color used for filling."<BR> | screen patternWord fillColor
|<BR> fillColor := self shadowColor ifNil:[aColor].<BR> fillColor
ifNil:[fillColor := Color transparent].<BR> fillColor isColor
ifFalse:[<BR> (fillColor isKindOf: InfiniteForm) ifFalse:[^port
fillPattern: Color red; combinationRule: Form over].<BR> ^port
fillPattern: fillColor; combinationRule: Form over].<BR> "Okay, so
fillColor really *is* a color"<BR> port sourceForm:
nil.<BR> fillColor isTranslucent ifFalse:[<BR> port
combinationRule: Form over.<BR> port fillPattern:
fillColor.<BR> self depth = 8 ifTrue:[<BR> "In 8
bit depth it's usually a good idea to use a stipple
pattern"<BR> port fillColor: (form balancedPatternFor:
fillColor)].<BR> ^self].<BR> "fillColor is some translucent
color"</FONT></DIV>
<DIV> </DIV>
<DIV><FONT size=2 face=Arial> self depth > 8
ifTrue:[<BR> "BitBlt setup for alpha masked
transfer"<BR> port fillPattern: fillColor.<BR> self
depth = 16<BR> ifTrue:[port alphaBits: fillColor
privateAlpha; combinationRule: 30]<BR> ifFalse:[port
combinationRule: Form blend].<BR> ^self].<BR> "Can't represent
actual transparency -- use stipple pattern"<BR> screen := Color
translucentMaskFor: fillColor alpha depth: self depth.<BR> patternWord :=
form pixelWordFor: fillColor.<BR> port fillPattern: (screen collect:
[:maskWord | maskWord bitAnd: patternWord]).<BR> port combinationRule:
Form paint.<BR></FONT></DIV>
<DIV><FONT size=2 face=Arial>That will avoid an issue with the use of Forms
for the window corner grips as in trunk...</FONT></DIV>
<DIV><FONT size=2 face=Arial></FONT> </DIV>
<DIV><FONT size=2 face=Arial></FONT> </DIV>
<DIV><FONT size=2 face=Arial>Load Polymorph-Squeak-Widgets-gvc.3 from
UIEnhancements on SqueakSource.</FONT></DIV>
<DIV><FONT size=2 face=Arial></FONT> </DIV>
<DIV><FONT size=2 face=Arial>You should be able to pick from the Universe
browser, in the User Interface category...</FONT></DIV>
<DIV><FONT size=2 face=Arial> Polymorph ToolBuilder version
1.4</FONT></DIV>
<DIV><FONT size=2 face=Arial> Polymorph Widgets version
1.5</FONT></DIV>
<DIV><FONT size=2 face=Arial></FONT> </DIV>
<DIV><FONT size=2 face=Arial></FONT> </DIV>
<DIV><FONT size=2 face=Arial>Now, from the Universes browser, in the User
Inteface category, select the package for Polymorph ToolBuilder version 14.
(Polymorph Widgets version will be auto selected for install as a
consequence).</FONT></DIV>
<DIV><FONT size=2 face=Arial></FONT> </DIV>
<DIV><FONT size=2 face=Arial>You'll get some debuggers due to MC trait
handling...</FONT></DIV>
<DIV><FONT size=2 face=Arial></FONT> </DIV>
<DIV><FONT size=2 face=Arial>Each one, you will need to modifiy the instance
variables on the MCClassDefinition for traitComposition and
classTraitComposition to not be strings... (replace the single quotes with
appropriate left and righ curly braces to turn into an array with the real
trait)...</FONT></DIV>
<DIV><FONT size=2 face=Arial>Restart the "createClass" method and proceed...
repeat. I sometimes with I'd not used traits at all at this
point...</FONT></DIV>
<DIV><FONT size=2 face=Arial></FONT> </DIV>
<DIV><FONT size=2 face=Arial>Where you have the one with TEasilyThemed -
{theme} replace with {TEasilyThemed}.</FONT></DIV>
<DIV><FONT size=2 face=Arial></FONT> </DIV>
<DIV><FONT size=2 face=Arial>Once loaded (hopefullly) it will complain again
for obselections... reverse the above procedure, replacing the curly brackets
with single quotes again (don't ask why...).</FONT></DIV>
<DIV><FONT size=2 face=Arial></FONT> </DIV>
<DIV><FONT size=2 face=Arial>OK, should be saveable now...</FONT></DIV>
<DIV><FONT size=2 face=Arial></FONT> </DIV>
<DIV><FONT size=2 face=Arial>To fix up the corner grips you can remove
#drawOn: methods from subclasses of CornerGripMorph then revert the change
made to FormCanvas>>setFillColor:</FONT></DIV>
<DIV><FONT size=2 face=Arial></FONT> </DIV>
<DIV><FONT size=2 face=Arial></FONT> </DIV>
<DIV><FONT size=2 face=Arial>A couple of precautions before the next
step...</FONT></DIV>
<DIV><FONT size=2 face=Arial></FONT> </DIV>
<DIV><FONT size=2 face=Arial> Add the following method to
PluggableButtonMorph...</FONT></DIV>
<DIV><FONT size=2 face=Arial></FONT> </DIV>
<DIV><FONT size=2 face=Arial>gradientLook<BR> "Defer to
preferences."</FONT></DIV>
<DIV> </DIV>
<DIV><FONT size=2 face=Arial> ^Preferences
gradientButtonLook</FONT></DIV>
<DIV><FONT size=2 face=Arial></FONT> </DIV>
<DIV><FONT size=2 face=Arial></FONT> </DIV>
<DIV><FONT size=2 face=Arial>and to PasteUpMorph</FONT></DIV>
<DIV><FONT size=2 face=Arial></FONT> </DIV>
<DIV><FONT size=2 face=Arial>defaultYellowButtonMenuEnabled<BR> "Defer to
preferences."</FONT></DIV>
<DIV> </DIV>
<DIV><FONT size=2 face=Arial> ^Preferences generalizedYellowButtonMenu
</FONT></DIV>
<DIV><FONT size=2 face=Arial></FONT> </DIV>
<DIV><FONT size=2 face=Arial></FONT> </DIV>
<DIV><FONT size=2 face=Arial>Those will be fixed in the Squeak adaptations
soon...(backstops for Preferences/settings difference with
Pharo).</FONT></DIV>
<DIV><FONT size=2 face=Arial></FONT> </DIV>
<DIV><FONT size=2 face=Arial>To go to latest version of Polymorph from
SqueakSource...</FONT></DIV>
<DIV><FONT size=2 face=Arial></FONT> </DIV>
<DIV><FONT size=2 face=Arial> Load </FONT><FONT size=2
face=Arial>Polymorph-Squeak-Widgets-gvc.3.</FONT></DIV>
<DIV><FONT size=2 face=Arial> Merge
Polymorph-Widgets-gvc.110.</FONT></DIV>
<DIV><FONT size=2 face=Arial></FONT> </DIV>
<DIV><FONT size=2 face=Arial>The (sadly dysfunctional) MC merge browser won't
let you do anything.</FONT></DIV>
<DIV><FONT size=2 face=Arial>Halo, inspect model...</FONT></DIV>
<DIV><FONT size=2 face=Arial> Find the one conflict after a
few inspects... change/save the inst var chooseRemote to false</FONT></DIV>
<DIV><FONT size=2 face=Arial> in the inspector, bottom pane,
do "self merge"...</FONT></DIV>
<DIV><FONT size=2 face=Arial></FONT> </DIV>
<DIV><FONT size=2 face=Arial></FONT> </DIV>
<DIV><FONT size=2 face=Arial>Should be in a useable state from here, though a
potential hang with using the main docking bar...</FONT></DIV>
<DIV><FONT size=2 face=Arial>Everything else is down to fonts and trunk
changes...</FONT></DIV>
<DIV><FONT size=2 face=Arial></FONT> </DIV>
<DIV><FONT size=2 face=Arial>Good luck, eamil directly if there's any problems
(expected as done from recent memory here...)</FONT></DIV>
<DIV><FONT size=2 face=Arial></FONT> </DIV>
<DIV><FONT size=2 face=Arial></FONT> </DIV>
<DIV><FONT size=2 face=Arial>Aside,... this is just for reference, just for
Polymorph as it is, as such. I'd hope that Squeak gets into a better state
where none of this is needed for future other UI stuff.</FONT></DIV>
<DIV><FONT size=2 face=Arial></FONT> </DIV>
<DIV>Regards, Gary<BR></DIV>
<BLOCKQUOTE
style="BORDER-LEFT: #000000 2px solid; PADDING-LEFT: 5px; PADDING-RIGHT: 0px; MARGIN-LEFT: 5px; MARGIN-RIGHT: 0px">
<DIV style="FONT: 10pt arial">----- Original Message ----- </DIV>
<DIV
style="FONT: 10pt arial; BACKGROUND: #e4e4e4; font-color: black"><B>From:</B>
<A title=smalltalktelevision@gmail.com
href="mailto:smalltalktelevision@gmail.com">Chris Cunnington</A> </DIV>
<DIV style="FONT: 10pt arial"><B>To:</B> <A
title=squeak-dev@lists.squeakfoundation.org
href="mailto:squeak-dev@lists.squeakfoundation.org">squeak-dev@lists.squeakfoundation.org</A>
</DIV>
<DIV style="FONT: 10pt arial"><B>Sent:</B> Saturday, March 13, 2010 5:20
PM</DIV>
<DIV style="FONT: 10pt arial"><B>Subject:</B> [squeak-dev] Re: Regarding
Polymorph</DIV>
<DIV><BR></DIV><SPAN
style="FONT-FAMILY: Arial, Helvetica, sans-serif; FONT-SIZE: medium; -webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px"
class=Apple-style-span><PRE style="FONT-FAMILY: monospace; MARGIN-LEFT: 3em; FONT-SIZE: 12px">Gary Chambers said: </PRE><PRE style="FONT-FAMILY: monospace; MARGIN-LEFT: 3em; FONT-SIZE: 12px">"For what it is worth...</PRE><PRE style="FONT-FAMILY: monospace; MARGIN-LEFT: 3em; FONT-SIZE: 12px">I have been able to load Polymorph into trunk, not the easiest (mainly due
to MC differences wrt Traits), takes
around 5 minutes of manual fixing while loading...
Once "in", clearly shows up the areas that have changed in trunk though...
(process instructions available if desired...)"</PRE><PRE style="FONT-FAMILY: monospace; MARGIN-LEFT: 3em; FONT-SIZE: 12px"><BR></PRE><PRE style="FONT-FAMILY: monospace; MARGIN-LEFT: 3em; FONT-SIZE: 12px">I'd like to see that. If you're offering instructions to load into the Trunk, I'd like them, please. And if you might provide an example for when it's loaded, something like Ellipse new openInWorld, or some kind of first Polymorph widget to look at. That would be great. </PRE><PRE style="FONT-FAMILY: monospace; MARGIN-LEFT: 3em; FONT-SIZE: 12px">Chris </PRE><PRE style="FONT-FAMILY: monospace; MARGIN-LEFT: 3em; FONT-SIZE: 12px"><BR></PRE><PRE style="FONT-FAMILY: monospace; MARGIN-LEFT: 3em; FONT-SIZE: 12px"><BR></PRE></SPAN>
<P>
<HR>
<P></P><BR></BLOCKQUOTE>
<P>
<HR>
<P></P><BR></BLOCKQUOTE></BODY></HTML>