Re: [Lazarus] Unicode RTL for FPC

2023-01-15 Thread Rolf Wetjen via lazarus

Hi Michael,

- update/clone fpc:
git clone https://gitlab.com/freepascal.org/fpc/source.git fpc
** ok

- Switch to unicode branch:
cd fpc **missing in the description
git switch unicodertl
** ok

- Create FPC unicode-rtl-capable compiler
cd fpc ** already in fpc
make all
** ok, beside of the fact that there's no make.exe (no bin) folder in 
the new fpc file tree. I used make.exe from lazarus fpc 3.2.2.


 - Create .fpc-unicodertl.cfg as per instructions in my first mail.
** There's no fpc.cfg in the new fpc file tree. In lazarus/fpc/3.2.2 
it's in fpc\3.2.2\bin\x86_64-win64.


Rolf
--
___
lazarus mailing list
lazarus@lists.lazarus-ide.org
https://lists.lazarus-ide.org/listinfo/lazarus


Re: [Lazarus] Unicode RTL for FPC

2023-01-12 Thread Rolf Wetjen via lazarus

Hi Michael,

I'm interested in this but I expect that I'm not the expert you are 
looking for. Some time ago ( Lazarus 1.8 or even earlier) I made a 
directory sync program for my own use for Windows which is aware of 
Unicode names in the file system.


I tried to follow your instruction but I failed as git is a pain for me:

 - Update your git clone
    git pull https://gitlab.com/freepascal.org/lazarus/lazarus.git 
lazarus. "lazarus" is my target folder.


- switch to branch unicodertl
    git branch --list gives only one branch: main

Can you please show in detail what to do?

Do you plan a full Unicode (up to four bytes per codepoint as far as I 
remember) or a DBCS (double byte character set) version? I don't know 
what Windows uses and what Delphi does.


Thank you,
Rolf
--
___
lazarus mailing list
lazarus@lists.lazarus-ide.org
https://lists.lazarus-ide.org/listinfo/lazarus


[Lazarus] TStatusBar.AutoSize doesn't work (Lazarus 2.12, Win32)

2021-09-28 Thread Rolf Wetjen via lazarus

Hi everybody,

TStatusBar.AutoSize doesen't work. The size of the statusbar is always a 
default size.


From 
https://docs.microsoft.com/en-us/windows/win32/controls/status-bars#size-and-height 
:


"The height is based on the metrics of the font that is currently 
selected into the status bar's device context and on the width of the 
window's borders." LCL uses TWin32WidgetSet(WidgetSet).AppHandle to 
creates a dummy child window and calculates the statusbar height from 
this dummy window. There are three issues with this approach:


1. The font of the AppHandle window isn't the one LCL uses for the
   StatusBar object (StatusBar1.Font). So the calculated height doesn't
   fit for a large font.
2. AppHandle is not set if the statusbar parent form is created within
   a DLL (I'm using CreateNew for my deskband dll). Issue #37100.
3. The procedure InitializePreferredStatusBarHeight is called only once
   and will not recalculate on font changes.

The attached file win32wscomctrls.pp has two small changes to solve this:

InitializePreferredStatusBarHeight
Use Parent := GetDesktopWindow instead of 
TWin32WidgetSet(WidgetSet).AppHandle.
This is a wrong in the same way as TWin32WidgetSet(WidgetSet).AppHandle 
but should always work.


TWin32WSStatusBar.GetPreferredSize
Calculate the statusbar height from AWinControl.Font.Height on each 
call. Use InitializePreferredStatusBarHeight as a fallback and only once 
if needed.


Shall I open an issue for this?

Thank you for all comments.

Rolf

<>
<>
-- 
___
lazarus mailing list
lazarus@lists.lazarus-ide.org
https://lists.lazarus-ide.org/listinfo/lazarus


[Lazarus] Issue #37100 / Can not create StatusBar control under Win32 LCL Dll application

2021-09-23 Thread Rolf Wetjen via lazarus

Hello everybody,

can someone tell me what's the status of issue #37100? Will it be 
implemented?
The code looks a little bit strange. Both, the original one and the 
patch as well.


The procedure "InitializePreferredStatusBarHeight" is referenced only 
one time in
"class procedure TWin32WSStatusBar.GetPreferredSize(const AWinControl: 
TWinControl;

  var PreferredWidth, PreferredHeight: integer; WithThemeSpace: Boolean);"
I assume that AWinControl is the TStatusBar object here and so I think 
the Parent used in InitializePreferredStatusBarHeight should be 
AWinControl.ParentWindow.Handle in all cases.


Easy to change by defining  "const AWinControl: TWinControl" as 
parameter for InitializePreferredStatusBarHeight.


What do you think about it?

Regards,

Rolf

--
___
lazarus mailing list
lazarus@lists.lazarus-ide.org
https://lists.lazarus-ide.org/listinfo/lazarus


Re: [Lazarus] Fritzbox TR64 communication

2021-09-06 Thread Rolf Wetjen via lazarus

Meanwhile I've my own Fritzbox TR64 API interface unit.

If someone is interested: https://sourceforge.net/projects/fritzbox/ 



There's a unit uFritzbox_tr64.pas (the interface unit to the Fritzbox 
TR64 API), a test application to get data and a Deskband to show some 
Fritzbox data in the taskbar.


Rolf

--
___
lazarus mailing list
lazarus@lists.lazarus-ide.org
https://lists.lazarus-ide.org/listinfo/lazarus


[Lazarus] Fritzbox TR64 communication

2021-08-19 Thread Rolf Wetjen via lazarus
Does anyone have some experience how to communicate via TR64 SOAP with a 
Fritzbox?


I've a working Python example (fritzconnection) and I know the neccesary 
http header and data for the SOAP communication.
AVM states that "The default authentication mechanism is HTTP 
authentication using digest (MD5 hashes)".


But I've no idea and I can't find an example how to implement this with 
Lazarus. Do I need a TfpHTTPClient or a TfpHTTPWebClient object or 
someting else? Is there any documentation or tutorial for FPC networking?


Thank you,
Rolf

--
___
lazarus mailing list
lazarus@lists.lazarus-ide.org
https://lists.lazarus-ide.org/listinfo/lazarus


Re: [Lazarus] Some IDE/LHelp issues

2021-02-04 Thread Rolf Wetjen via lazarus

Hi Andy

I've patched LHelp.exe with lhelp_index_combine_04.patch.

The "unknown" tab issue is partly solved. Now all tabs have a caption. 
There's one strange behaviour:
[FPDoc Documentation], [Programmer' Guide], [Reference Guide] and 
[User's Guide] doesn't show the default page if LHelp is called from the 
IDE via Help/CHM help or via context F1. They show an empty page. But it 
shows the default page if I open prog.chm for example in LHelp via 
File/Open.


An other difference: Calling LHelp via context F1 doesn't show the toc.  
Tested with F1 on "TForm".


Rolf
--
___
lazarus mailing list
lazarus@lists.lazarus-ide.org
https://lists.lazarus-ide.org/listinfo/lazarus


[Lazarus] Some IDE/LHelp issues

2021-02-02 Thread Rolf Wetjen via lazarus

Maybe someone can help with a few issues around LHelp in the IDE:

1) When LHelp opens (regardless if opens with Tools->CHM-Help or F1 
context help) it opens with 11 tabs.
Some of them have a caption, some of them are [unknown]. The [unknown] 
ones come up with an error message "ms-its:xyz.chm::/index.html not found!"


2) One of [unknown] tabs is completely empty: 
"ms-its:toc.chm::/index.html not found!"


3) There are two lcl tabs. One show a message "Loaded: 
ms-its:lcl.chm::/index.html in ... ms", the other one doesn't show a 
load message.


3) There's no possibility to search in all files simultanously. May be 
this is the missing toc.chm::/index.html?


4) The first context search is a racing car. All following context 
searches are a bicycle. Time for a coffee.


I'd like to check for this.

Is there any documentation about the structure of the chm files 
reagarding the missing index.html?
What's the meaning of the database definition fields in 
Tools-Settins-Help? There are entries for 8 databases. What about the 
missing ones.

How does the IDE calls LHelp?

Any ideas?

Rolf

--
___
lazarus mailing list
lazarus@lists.lazarus-ide.org
https://lists.lazarus-ide.org/listinfo/lazarus


[Lazarus] Update to help documentation

2021-01-08 Thread Rolf Wetjen via lazarus

I've a small update for the help files masks.xml and maskedit.xml.

How can I share it to the project?

Regards,
Rolf

--
___
lazarus mailing list
lazarus@lists.lazarus-ide.org
https://lists.lazarus-ide.org/listinfo/lazarus


Re: [Lazarus] Cross-platform using TRegistry - how to?

2020-05-04 Thread Rolf Wetjen via lazarus

Hi Bo,

looking into xregreg.inc:

procedure TRegistry.SysRegCreate;
var s : string;
begin
  s:=includetrailingpathdelimiter(GetAppConfigDir(GlobalXMLFile));
  ForceDirectories(s);
  FSysData:=TXMLRegistryInstance.GetXMLRegistry(s+XFileName);
  TXmlRegistry(FSysData).AutoFlush:=False;
end;

It's stored in a xml file.

Rolf


--
Diese E-Mail wurde von Avast Antivirus-Software auf Viren geprüft.
https://www.avast.com/antivirus

--
___
lazarus mailing list
lazarus@lists.lazarus-ide.org
https://lists.lazarus-ide.org/listinfo/lazarus


Re: [Lazarus] Can't build chm/html-help by bat-file

2020-04-14 Thread Rolf Wetjen via lazarus

Same problem for me.

Try to open grids.xml with a xml viewer (Chrome, IE, Edge, ...). It will 
show you what's wrong.

It was easy but I don't remember the details.

Rolf


--
Diese E-Mail wurde von Avast Antivirus-Software auf Viren geprüft.
https://www.avast.com/antivirus

--
___
lazarus mailing list
lazarus@lists.lazarus-ide.org
https://lists.lazarus-ide.org/listinfo/lazarus


Re: [Lazarus] We are planning the next release: Lazarus 2.0.8

2020-04-03 Thread Rolf Wetjen via lazarus

Thank you, Juha.

I've reopened #36798.

Rolf


--
Diese E-Mail wurde von Avast Antivirus-Software auf Viren geprüft.
https://www.avast.com/antivirus

--
___
lazarus mailing list
lazarus@lists.lazarus-ide.org
https://lists.lazarus-ide.org/listinfo/lazarus


Re: [Lazarus] We are planning the next release: Lazarus 2.0.8

2020-04-03 Thread Rolf Wetjen via lazarus

Juha,

I wanted to ask for https://bugs.freepascal.org/view.php?id=35362 and
https://bugs.freepascal.org/view.php?id=36798.

Rolf


Am 03.04.2020 um 10:22 schrieb Juha Manninen via lazarus:

On Fri, Apr 3, 2020 at 10:58 AM Rolf Wetjen via lazarus
mailto:lazarus@lists.lazarus-ide.org>>
wrote:

can you please check for r35362 and r36798 and probably include
them too?


Those are from February and April 2012. Eight years ago.
Are you surely looking at Lazarus commit history?

Juha





--
Diese E-Mail wurde von Avast Antivirus-Software auf Viren geprüft.
https://www.avast.com/antivirus
-- 
___
lazarus mailing list
lazarus@lists.lazarus-ide.org
https://lists.lazarus-ide.org/listinfo/lazarus


Re: [Lazarus] We are planning the next release: Lazarus 2.0.8

2020-04-03 Thread Rolf Wetjen via lazarus

Hello Martin,

can you please check for r35362 and r36798 and probably include them too?

Thank you,
Rolf


--
Diese E-Mail wurde von Avast Antivirus-Software auf Viren geprüft.
https://www.avast.com/antivirus

--
___
lazarus mailing list
lazarus@lists.lazarus-ide.org
https://lists.lazarus-ide.org/listinfo/lazarus


Re: [Lazarus] Embedded VLC using PasLibVlc - how to fast forward?

2020-03-23 Thread Rolf Wetjen via lazarus

Hi Bo,

this could be a solution for windows (fullscreen):

    SetWindowLongPtr(Handle,GWL_STYLE,iWindowStyle and not 
WS_OVERLAPPEDWINDOW);

    Left:=0;
    Top:=0;
    Width:=Screen.Width;
    Height:=Screen.Height;

Regards

Rolf

Am 23.03.2020 um 07:52 schrieb Bo Berglund via lazarus:

On Sun, 22 Mar 2020 22:29:15 +0100, Bo Berglund via lazarus
 wrote:

FOLLOW-UP:


1) FF video playback

I found an example that handles the play speed and could verify it
thus:
vlcPlayer.SetPlayRate(newPlayRate);

newPlayRate is an integer seemingly in percent of normal speed, so:
x2 = 200
x1 = 100
x0.5 = 50
etc

vlcPlayer.GetPlayRate() reads back the current rate.

Still looking for the maximize function, but it is not so needed as
was the speed.




--
Diese E-Mail wurde von Avast Antivirus-Software auf Viren geprüft.
https://www.avast.com/antivirus

--
___
lazarus mailing list
lazarus@lists.lazarus-ide.org
https://lists.lazarus-ide.org/listinfo/lazarus


Re: [Lazarus] MatchesWindowsMask('[x]','[x]') return False

2020-03-22 Thread Rolf Wetjen via lazarus

Hi Bart,

I've uploaded a patch for the TMask documentation 
(https://bugs.freepascal.org/view.php?id=36798)


Regards

Rolf

Am 20.03.2020 um 19:08 schrieb Bart via lazarus:

On Fri, Mar 20, 2020 at 10:47 AM Bart  wrote:


I prefer the Options parameter over another Boolean, mainly because
you never know if another use-case might raise the need for yet
another parameter.

Committed in r62782


--
Diese E-Mail wurde von Avast Antivirus-Software auf Viren geprüft.
https://www.avast.com/antivirus

--
___
lazarus mailing list
lazarus@lists.lazarus-ide.org
https://lists.lazarus-ide.org/listinfo/lazarus


Re: [Lazarus] MatchesWindowsMask('[x]','[x]') return False

2020-03-21 Thread Rolf Wetjen via lazarus

My misunderstanding of a set here.

I'm looking for a better documentation. So, a set compares to only one 
charcter in the filename.


Thanks,

Rolf


--
Diese E-Mail wurde von Avast Antivirus-Software auf Viren geprüft.
https://www.avast.com/antivirus

--
___
lazarus mailing list
lazarus@lists.lazarus-ide.org
https://lists.lazarus-ide.org/listinfo/lazarus


Re: [Lazarus] MatchesWindowsMask('[x]','[x]') return False

2020-03-21 Thread Rolf Wetjen via lazarus

Hi Bart,

I'm just looking for an other error in the implementation when sets are 
used:


Helloworld / He[lo]?orld - False
Helloworld / He[lo]*orld - True
Helloworld / He[lo]world - False

So, it's not the final patch but not that importand as I don't think 
that sets are used so much.


Regards

Rolf


--
Diese E-Mail wurde von Avast Antivirus-Software auf Viren geprüft.
https://www.avast.com/antivirus

--
___
lazarus mailing list
lazarus@lists.lazarus-ide.org
https://lists.lazarus-ide.org/listinfo/lazarus


Re: [Lazarus] MatchesWindowsMask('[x]','[x]') return False

2020-03-20 Thread Rolf Wetjen via lazarus

Same change in code as I used for my patch.

So, yes: working.

Rolf

Am 19.03.2020 um 22:40 schrieb Bart via lazarus:

On Thu, Mar 19, 2020 at 6:37 PM Bart  wrote:


It's on my ToDo list (as long as other devels don't object to this.
I intend to have an Options property for that, with for now
moCaseSensitive and moDisableSets.

Attached is a rough version of the intended patch.
The MatchesMaskList() functions needed several overloads to make all
previously possible calls (2,3, or 4 parameters) work as before.

Please test.





--
Diese E-Mail wurde von Avast Antivirus-Software auf Viren geprüft.
https://www.avast.com/antivirus
-- 
___
lazarus mailing list
lazarus@lists.lazarus-ide.org
https://lists.lazarus-ide.org/listinfo/lazarus


Re: [Lazarus] MatchesWindowsMask('[x]','[x]') return False

2020-03-20 Thread Rolf Wetjen via lazarus

Hi Bart,

I did something similar yesterday:

TMask.InitMaskString(const AValue: String; const CaseSensitive: Boolean; 
*const UseSets: Boolean = True*);
TMask.Create(const AValue: String; const CaseSensitive: Boolean = False; 
*const UseSets: Boolean = True*);
TMaskList.Create(const AValue: String; ASeparator: Char = ';'; const 
CaseSensitive: Boolean = False; *const UseSets: Boolean = True*);


function MatchesMask(const FileName, Mask: String; const CaseSensitive: 
Boolean = False; *const UseSets: Boolean = True*): Boolean;
function MatchesWindowsMask(const FileName, Mask: String; const 
CaseSensitive: Boolean = False; *const UseSets: Boolean = False*): Boolean;
function MatchesMaskList(const FileName, Mask: String; Separator: Char = 
';'; const CaseSensitive: Boolean = False; *const UseSets: Boolean = 
True*): Boolean;
function MatchesWindowsMaskList(const FileName, Mask: String; Separator: 
Char = ';'; const CaseSensitive: Boolean = False; *const UseSets: 
Boolean = /False/*): Boolean;


The only code change is in TMask.InitMaskString
-  '[': AddCharSet;
+  '[': if fUseSets then
+ AddCharSet
+   else
+ AddChar;

This works fine.

Easy to implement it as Options.

Regards,

Rolf

Am 19.03.2020 um 18:37 schrieb Bart via lazarus:

On Thu, Mar 19, 2020 at 8:25 AM Rolf Wetjen via lazarus
 wrote:


seems that this isn't your favourite option.

Without any context, I cannot comment on this.


Ok, what's about an additional TMask property to control the useage of
sets (default should be true for Delphi compatibility) and additional
options for the MatchesMask and MatchesWindowsMask functions?

It's on my ToDo list (as long as other devels don't object to this.
I intend to have an Options property for that, with for now
moCaseSensitive and moDisableSets.
There will be an overloaded constructor TMask,Create((const AValue:
String; ASeparator: Char = ';'; const Options: TMaskOptions = []);
(By default CaseSensitive and DisableSets must be off for backwards
compatibility)

It will only be for trunk and the next stable major release (so it
won't go into fixes branch) anyhow.





--
Diese E-Mail wurde von Avast Antivirus-Software auf Viren geprüft.
https://www.avast.com/antivirus
Index: components/lazutils/masks.pas
===
--- components/lazutils/masks.pas   (revision 62701)
+++ components/lazutils/masks.pas   (working copy)
@@ -42,11 +42,12 @@
   private
 FMask: TMaskString;
 fCaseSensitive: Boolean;
+fUseSets: Boolean;
 fInitialMask: String;
-procedure InitMaskString(const AValue: String; const CaseSensitive: 
Boolean);
+procedure InitMaskString(const AValue: String; const CaseSensitive: 
Boolean; const UseSets: Boolean = True);
 procedure ClearMaskString;
   public
-constructor Create(const AValue: String; const CaseSensitive: Boolean = 
False);
+constructor Create(const AValue: String; const CaseSensitive: Boolean = 
False; const UseSets: Boolean = True);
 destructor Destroy; override;
 
 function Matches(const AFileName: String): Boolean;
@@ -68,7 +69,7 @@
 function GetCount: Integer;
 function GetItem(Index: Integer): TMask;
   public
-constructor Create(const AValue: String; ASeparator: Char = ';'; const 
CaseSensitive: Boolean = False);
+constructor Create(const AValue: String; ASeparator: Char = ';'; const 
CaseSensitive: Boolean = False; const UseSets: Boolean = True);
 destructor Destroy; override;
 
 function Matches(const AFileName: String): Boolean;
@@ -78,10 +79,10 @@
 property Items[Index: Integer]: TMask read GetItem;
   end;
 
-function MatchesMask(const FileName, Mask: String; const CaseSensitive: 
Boolean = False): Boolean;
-function MatchesWindowsMask(const FileName, Mask: String; const CaseSensitive: 
Boolean = False): Boolean;
-function MatchesMaskList(const FileName, Mask: String; Separator: Char = ';'; 
const CaseSensitive: Boolean = False): Boolean;
-function MatchesWindowsMaskList(const FileName, Mask: String; Separator: Char 
= ';'; const CaseSensitive: Boolean = False): Boolean;
+function MatchesMask(const FileName, Mask: String; const CaseSensitive: 
Boolean = False; const UseSets: Boolean = True): Boolean;
+function MatchesWindowsMask(const FileName, Mask: String; const CaseSensitive: 
Boolean = False; const UseSets: Boolean = False): Boolean;
+function MatchesMaskList(const FileName, Mask: String; Separator: Char = ';'; 
const CaseSensitive: Boolean = False; const UseSets: Boolean = True): Boolean;
+function MatchesWindowsMaskList(const FileName, Mask: String; Separator: Char 
= ';'; const CaseSensitive: Boolean = False; const UseSets: Boolean = False): 
Boolean;
 
 implementation
 
@@ -105,11 +106,11 @@
 end;
 
 
-function MatchesMask(const FileName, Mask: String; const CaseSensitive: 
Boolean): Boolean;
+function MatchesMask(const FileName, Mask: String; const CaseSensitive: 
Boolean; const UseSets

Re: [Lazarus] MatchesWindowsMask('[x]','[x]') return False

2020-03-19 Thread Rolf Wetjen via lazarus

Hi Lazarus team,

seems that this isn't your favourite option.

Ok, what's about an additional TMask property to control the useage of 
sets (default should be true for Delphi compatibility) and additional 
options for the MatchesMask and MatchesWindowsMask functions?


Can I help with a patch in this way?

BTW, where can I get some info how to update the help files?

Rolf


Am 17.03.2020 um 22:18 schrieb Bart via lazarus:

On Tue, Mar 17, 2020 at 8:17 AM Rolf Wetjen via lazarus
 wrote:


what's about to implement an additional completly new TMaskReg class
without sets but in addition with a regular expression option?

Feel free to implement such a thing.
However, if someone is familiar with RegEx's he/she probably won't need it.



--
Diese E-Mail wurde von Avast Antivirus-Software auf Viren geprüft.
https://www.avast.com/antivirus

--
___
lazarus mailing list
lazarus@lists.lazarus-ide.org
https://lists.lazarus-ide.org/listinfo/lazarus


Re: [Lazarus] MatchesWindowsMask('[x]','[x]') return False

2020-03-17 Thread Rolf Wetjen via lazarus

Hi Lazarus team,

what's about to implement an additional completly new TMaskReg class 
without sets but in addition with a regular expression option?


Rolf


--
Diese E-Mail wurde von Avast Antivirus-Software auf Viren geprüft.
https://www.avast.com/antivirus

--
___
lazarus mailing list
lazarus@lists.lazarus-ide.org
https://lists.lazarus-ide.org/listinfo/lazarus


[Lazarus] Bug #0035362 (ListView with MultiSelect)

2020-03-16 Thread Rolf Wetjen via lazarus

Hi Lazarus team,

can somebody please have a look at this?

I've created a patch but I can see that there is any attention on the issue.

Thank You

Rolf


--
Diese E-Mail wurde von Avast Antivirus-Software auf Viren geprüft.
https://www.avast.com/antivirus

--
___
lazarus mailing list
lazarus@lists.lazarus-ide.org
https://lists.lazarus-ide.org/listinfo/lazarus


Re: [Lazarus] MatchesWindowsMask('[x]','[x]') return False

2020-03-16 Thread Rolf Wetjen via lazarus

Bug #0036798 opened.

Rolf



--
Diese E-Mail wurde von Avast Antivirus-Software auf Viren geprüft.
https://www.avast.com/antivirus
-- 
___
lazarus mailing list
lazarus@lists.lazarus-ide.org
https://lists.lazarus-ide.org/listinfo/lazarus


Re: [Lazarus] MatchesWindowsMask('[x]','[x]') return False

2020-03-15 Thread Rolf Wetjen via lazarus

Hi Bart,

sorry, this isn't a workaround if you get the filenames form 
FindFirst/FindNext and want to test against a fixed mask.


My workaround for MatchesWindowsMask is quick' n'dirty too: Replace [ 
with #17 and ] with #18 in the mask and in the test string. Anyway, 
let's wait for the info about Delphi.


Rolf


--
Diese E-Mail wurde von Avast Antivirus-Software auf Viren geprüft.
https://www.avast.com/antivirus

--
___
lazarus mailing list
lazarus@lists.lazarus-ide.org
https://lists.lazarus-ide.org/listinfo/lazarus


[Lazarus] MatchesWindowsMask('[x]','[x]') return False

2020-03-15 Thread Rolf Wetjen via lazarus

Hi Lazarus team,

I found this during some error analysis. TMask uses the brackets as a 
set indicatior in the mask string. In this case the FMask.MinLength and 
FMask.MaxLength are set to 1. The brackets in the test string are not 
treated in any special way and so the match fails as the length of the 
test string is 3 (tested inside TMask.Matches).


I think that this isn't the expected behavior especially as [ and ] are 
regular character for file and path names in windows.


Shall I open a bug report for this?

BR

Rolf Wetjen

(RolfW)



--
Diese E-Mail wurde von Avast Antivirus-Software auf Viren geprüft.
https://www.avast.com/antivirus

--
___
lazarus mailing list
lazarus@lists.lazarus-ide.org
https://lists.lazarus-ide.org/listinfo/lazarus