Re: Decreasing seams in scaled windows

Neil Hodgson <[email protected]> Sat, 27 Jun 2026 10:41:32 +1000
Newsgroups gmane.comp.lib.scintilla.devel
Message-ID <CACWkrTh-hmkDmcYt59zdWczY2cd5LvLXTuz+aDL=7uXMN0zJ9A@mail.gmail.com>
--00000000000051d5f90655317d98
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

John:

> It seems to be working for me on Wayland. I=E2=80=99m attaching my 2nd tr=
y at a patch to add a pixels type to the .iface file =E2=80=94 the pixels d=
efinitions are now in comments beneath the original definitions and there=
=E2=80=99s support in Face.py to read them. This should let other tools tha=
t use the .iface file and scripts to continue to work until they are update=
d.

OK.

The two features with fractional stroke widths MarkerSetStrokeWidth
and IndicSetStrokeWidth are hundredths so are actually pixels*100.
This allowed sending 0.5 widths (thin lines for macOS retina) over an
integer interface as 50.
These values may be scaled similarly to whole pixel features but are
fixed-point so may need different treatment.

Attached is a script that processes the Scintilla.iface augmented with
'pixels' into pre-pixels and post-pixels versions called
filtered.iface and pixels.iface. This can help if old code can't
handle the augmented version and to update to handle the final form
which will be distributed after the migration is complete.
Some projects use very simple iface-handling with tools like awk.

Neil

--=20
You received this message because you are subscribed to the Google Groups "=
scintilla-interest" group.
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to [email protected].
To view this discussion visit https://groups.google.com/d/msgid/scintilla-i=
nterest/CACWkrTh-hmkDmcYt59zdWczY2cd5LvLXTuz%2BaDL%3D7uXMN0zJ9A%40mail.gmai=
l.com.

--00000000000051d5f90655317d98
Content-Type: application/octet-stream; name="FilterPixels.py"
Content-Disposition: attachment; filename="FilterPixels.py"
Content-Transfer-Encoding: base64
Content-ID: <f_mqvmoetf0>
X-Attachment-Id: f_mqvmoetf0

IyBXcml0ZSBvdXQgdHdvIHZlcnNpb25zIG9mIFNjaW50aWxsYS5pZmFjZS4NCiMgICBmaWx0ZXJl
ZC5pZmFjZSBkb2VzIG5vdCBoYXZlIGFueSBtZW50aW9uIG9mICdwaXhlbHMnIHR5cGUgc28gY2Fu
IGJlIHVzZWQgYnkgb2xkIHNjcmlwdHMNCiMgICBwaXhlbHMuaWZhY2UgdXNlcyB0aGUgJ3BpeGVs
cycgdHlwZSBhbmQgcmVtb3ZlcyBjb21tZW50ZWQgJ3BpeGVscycgZGVmaW5pdGlvbiBsaW5lcw0K
IyBXcml0dGVuIGJ5IE5laWwgSG9kZ3NvbiAyMDI2IGFuZCBwdWJsaXNoZWQgYXMgcHVibGljIGRv
bWFpbg0KDQppbXBvcnQgcGF0aGxpYiwgcmUNCg0KZGVmIEV4dHJhY3ROYW1lKGxpbmUpOg0KCWJl
Zm9yZSwgXywgXyA9IGxpbmUucGFydGl0aW9uKCI9IikNCglfLCBfLCBhZnRlciA9IGJlZm9yZS5y
cGFydGl0aW9uKCIgIikNCglyZXR1cm4gYWZ0ZXINCg0KZmlsdGVyZWQgPSAiIg0KcGl4ZWxEZWZp
bml0aW9ucyA9IHt9DQppZmFjZSA9IHBhdGhsaWIuUGF0aCgiU2NpbnRpbGxhLmlmYWNlIikucmVh
ZF90ZXh0KCkNCmZvciBsaW5lIGluIGlmYWNlLnNwbGl0bGluZXMoa2VlcGVuZHM9VHJ1ZSk6DQoJ
aWYgcmUubWF0Y2goIl4jIy4qcGl4ZWxzIiwgbGluZSk6DQoJCSMgcHJpbnQobGluZSwgZW5kPSIi
KQ0KCQlpZiAiPSIgaW4gbGluZToNCgkJCW5hbWUgPSBFeHRyYWN0TmFtZShsaW5lKQ0KCQkJcGl4
ZWxEZWZpbml0aW9uc1tuYW1lXSA9IGxpbmVbMzpdDQoJZWxzZToNCgkJZmlsdGVyZWQgKz0gbGlu
ZQ0KCQkNCnBhdGhsaWIuUGF0aCgiZmlsdGVyZWQuaWZhY2UiKS53cml0ZV90ZXh0KGZpbHRlcmVk
KQ0KDQpwaXhlbFRleHQgPSAiIg0KZm9yIGxpbmUgaW4gaWZhY2Uuc3BsaXRsaW5lcyhrZWVwZW5k
cz1UcnVlKToNCglpZiAiPSIgaW4gbGluZSBhbmQgIiMjIiBub3QgaW4gbGluZToNCgkJbmFtZSA9
IEV4dHJhY3ROYW1lKGxpbmUpDQoJCWlmIG5hbWUgaW4gcGl4ZWxEZWZpbml0aW9uczoNCgkJCXBp
eGVsVGV4dCArPSBwaXhlbERlZmluaXRpb25zW25hbWVdDQoJCWVsc2U6DQoJCQlwaXhlbFRleHQg
Kz0gbGluZQ0KCWVsaWYgIj0iIG5vdCBpbiBsaW5lIG9yIG5vdCByZS5tYXRjaCgiXiMjLipwaXhl
bHMiLCBsaW5lKToNCgkJCXBpeGVsVGV4dCArPSBsaW5lDQoNCnBhdGhsaWIuUGF0aCgicGl4ZWxz
LmlmYWNlIikud3JpdGVfdGV4dChwaXhlbFRleHQpDQo=
--00000000000051d5f90655317d98--