<div dir="ltr"><div>PaintBoxMorph and SketchEditorMorphs are fighting back with the scaling issues.</div><div><br></div><div>This is not a perfect fix. <br></div><div> -Still some scaling issues on high definition displays, eg. the drawing nib is too small<br></div><div> -Color picker cursor still is not scaled</div><div><br></div><div>Best,</div><div>Karl<br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Sat, Dec 3, 2022 at 12:46 AM <<a href="mailto:commits@source.squeak.org">commits@source.squeak.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">A new version of MorphicExtras was added to project The Inbox:<br>
<a href="http://source.squeak.org/inbox/MorphicExtras-kfr.339.mcz" rel="noreferrer" target="_blank">http://source.squeak.org/inbox/MorphicExtras-kfr.339.mcz</a><br>
<br>
==================== Summary ====================<br>
<br>
Name: MorphicExtras-kfr.339<br>
Author: kfr<br>
Time: 3 December 2022, 12:45:52.792307 am<br>
UUID: cb1428dc-dec9-7b45-8015-436b49674bc1<br>
Ancestors: MorphicExtras-ct.338<br>
<br>
Fixes issue with scale of tool cursor and offset<br>
<br>
=============== Diff against MorphicExtras-ct.338 ===============<br>
<br>
Item was added:<br>
+ ----- Method: SketchEditorMorph>>cursor:enlargedBy: (in category 'event handling') -----<br>
+ cursor: aForm enlargedBy: scale<br>
+ "Big cursors are 32 bits deep (ARGB premultiplied)"<br>
+ | big |<br>
+ <br>
+ big := CursorWithAlpha extent: aForm extent * scale depth: 32.<br>
+ (aForm asCursorForm magnifyBy: scale) displayOn: big.<br>
+ big offset: (aForm offset - 0.5 * scale min: 0@0 max: big extent negated) asIntegerPoint.<br>
+ <br>
+ ^big!<br>
<br>
Item was changed:<br>
----- Method: SketchEditorMorph>>mouseEnter: (in category 'event handling') -----<br>
mouseEnter: evt<br>
"Set the cursor. Reread colors if embedded editable polygon needs it."<br>
<br>
| poly cColor |<br>
super mouseEnter: evt.<br>
(self get: #action for: evt) == #scaleOrRotate ifTrue: [<br>
self set: #action for: evt to: (self get: #priorAction for: evt).<br>
]. "scale and rotate are not real modes. If we enter with one, wear the previous tool."<br>
+ evt hand showTemporaryCursor: (self cursor:(self getCursorFor: evt) enlargedBy: 1).<br>
- evt hand showTemporaryCursor: (self getCursorFor: evt).<br>
palette getSpecial == #polygon: ifFalse: [^self].<br>
(poly := self valueOfProperty: #polygon) ifNil: [^ self].<br>
cColor := self getColorFor: evt.<br>
poly borderColor: cColor; borderWidth: (self getNibFor: evt) width.<br>
poly changed.!<br>
<br>
<br>
</blockquote></div>