[Lazarus] TMask revisited

José Mejuto joshyfun at gmail.com
Wed Oct 20 21:36:49 CEST 2021

El 20/10/2021 a las 11:34, Bart via lazarus escribió:

>> There are IMHO two front lines, one is the "replace" of TMask in
>> internal LCL functions, exposed or not to the user, and in this case all
>> options that allow mimic the old behaviour should be disabled. The other
>> one is the TMask itself which can be "replaced" with same settings as
>> internal LCL functions and/or a TMaskExtended which can use all the
>> syntax options.

> I'm sorry, but I don't really know what you mean here.


Sorry, my English is... BAD :-) I mean the uses of TMask in the IDE, in 
example, where the user of "Find in files" (another example) expects 
simple masks to be used like "?" and "*" only, no ranges, no sets, no 
escape chars, etc. Ans in the other hand a class (maybe TMaskExtended) 
which the programmer can use full features.

>> but current TMask allows ranges and
>> sets which is confusing me about the function requirements.
> Again ,not sure what you mean by that.
> In the old TMask I introduced the option to disable that and called it
> moDisableSets (I'm also not native English), where your use of the
> word Range might have beeen more appropriate.
> In Pascal a set (of characters) is ['a'..'z'], whic is a synatx TMask
> does not support AFAICS.

In the "masks" world sets are a group of chars inside "[]", optional 
chars, option chars, or other fancy name.

Range syntax: [a-z]
Set syntax: [abcdefghijklmnopqrstuvwxyz]

I think you are talking about TMask use inside IDE and LCL functions, 
meanwhile I'm talking about TMask capabilities.


More information about the lazarus mailing list