<div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr">On Tue, Feb 23, 2021 at 2:54 PM Bart via lazarus <<a href="mailto:lazarus@lists.lazarus-ide.org">lazarus@lists.lazarus-ide.org</a>> wrote:<br></div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">MaskEdit is a LCL control and hence has nothing to do in fpc.<br></blockquote><div><br></div><div>I am not suggesting to move MaskEdit to FPC libs obviously.</div><div><br></div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
I have in the past copied bits of TMaskEdit to a related fpc unit<br>
(cannot remeber exactly which), so that they work the same (setting<br>
and removing masks IIRC), with the exception that TMaskEdit does this<br>
on UTF-8, while the fpc unit assumes 1-byte ANSI encoding (so it won't<br>
work on UTF-8).<br>
Given the release cycle of fpc, I would strongly advise to have this<br>
code on "our side" (Lazarus), so bugs can be eliminated much faster.<br>
<br>
The Masks unit is not related to TMaskEdit.<br></blockquote><div><br></div><div>Does it mean the mask syntax is different? I found this:</div><div> <a href="http://docwiki.embarcadero.com/Libraries/Sydney/en/System.MaskUtils.TEditMask">http://docwiki.embarcadero.com/Libraries/Sydney/en/System.MaskUtils.TEditMask</a></div><div>Is TEditMask the same as TMaskEdit? Or is TEditMask used for TMask? Can you please explain it so that I understand?</div><div>Is it all documented somewhere?</div><div><br></div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
For the Masks unit: the same UTF-8 problems exist with it's fpc<br>
counterpart IIRC (did not study the code recently).<br>
So, I would like to keep it "here" as well.<br></blockquote><div><br></div><div>Yes, I realized it must stay in LazUtils. Iterating codepoints is needed.</div><div>FPMasks is good for ASCII only despite having UTF8String type.</div><div>Does Michael have a plan for that unit?</div><div><br></div><div>Fortunately I found a unit test for Masks unit under LCL tests directory. I moved it under LazUtils in r64653.</div><div>I will add tests for multibyte codepoint text. Then optimizing TMask will be safe. Nothing can go wrong... :)</div><div><br></div><div>Juha</div><div><br></div></div></div></div></div></div></div></div></div></div>