From lazarus at kluug.net Thu May 4 08:21:23 2023 From: lazarus at kluug.net (Ondrej Pokorny) Date: Thu, 4 May 2023 08:21:23 +0200 Subject: [Lazarus] Resources without RC files Message-ID: Hello, I see that the LCL includes LFM files as resources directly without a *.RC file: {$R *.lfm} --- But if I do this with my custom file. E.g.: {$R *.sql} I get an "error when compiling resources": Compile Project, Mode: Debug, Target: Test.exe: Exit code 1, Errors: 1, Warnings: 1 Warning: windres: can't open file `REPLACE': No such file or directory uTest.pas(96,0) Error: Error while compiling resources -> Compile with -vd for more details. Check for duplicates. --- How is it possible that the LFM files are included directly but *.SQL files are parsed as RC files? --- I checked the Wiki and Docs, but didn't find any information about it: https://wiki.freepascal.org/Lazarus_Resources https://www.freepascal.org/docs-html/prog/progsu67.html#x74-730001.2.67 Thanks Ondrej From michael at freepascal.org Thu May 4 08:38:37 2023 From: michael at freepascal.org (Michael Van Canneyt) Date: Thu, 4 May 2023 08:38:37 +0200 (CEST) Subject: [Lazarus] Resources without RC files In-Reply-To: References: Message-ID: On Thu, 4 May 2023, Ondrej Pokorny via lazarus wrote: > Hello, > > I see that the LCL includes LFM files as resources directly without a *.RC > file: > > {$R *.lfm} > > --- > > But if I do this with my custom file. E.g.: > > {$R *.sql} > > I get an "error when compiling resources": > > Compile Project, Mode: Debug, Target: Test.exe: Exit code 1, Errors: 1, > Warnings: 1 > Warning: windres: can't open file `REPLACE': No such file or directory > uTest.pas(96,0) Error: Error while compiling resources -> Compile with -vd > for more details. Check for duplicates. > > --- > > How is it possible that the LFM files are included directly but *.SQL files > are parsed as RC files? Because the file extension is recognized ? LFM is included as RC_DATA, and probably everything that is not .lfm is assumed to be a RC format. I believe fpcres also has this check. Michael. From lazarus at kluug.net Thu May 4 09:09:04 2023 From: lazarus at kluug.net (Ondrej Pokorny) Date: Thu, 4 May 2023 09:09:04 +0200 Subject: [Lazarus] Resources without RC files In-Reply-To: References: Message-ID: <82142b5f-1e04-dc68-a5f0-4a8fa6aa9b95@kluug.net> On 04.05.2023 08:38, Michael Van Canneyt wrote: > On Thu, 4 May 2023, Ondrej Pokorny via lazarus wrote: >> How is it possible that the LFM files are included directly but *.SQL >> files are parsed as RC files? > > Because the file extension is recognized ? LFM is included as RC_DATA, > and probably everything that is not .lfm is assumed to be a RC format. > > I believe fpcres also has this check. Thanks for the tip. I found it - it is directly in the compiler. In comprsrc.pas TWinLikeResourceFile.IsCompiled there is a logic that defines what the compiler does with the included resource file based on the extension or file header. I don't like the fact that there are hard-coded constants for what seems to be (for a stranger) arbitrary file extensions and that it is not documented anywhere. I will raise the question in the FPC mailing list. Ondrej From michael at freepascal.org Thu May 4 11:02:56 2023 From: michael at freepascal.org (Michael Van Canneyt) Date: Thu, 4 May 2023 11:02:56 +0200 (CEST) Subject: [Lazarus] Resources without RC files In-Reply-To: <82142b5f-1e04-dc68-a5f0-4a8fa6aa9b95@kluug.net> References: <82142b5f-1e04-dc68-a5f0-4a8fa6aa9b95@kluug.net> Message-ID: On Thu, 4 May 2023, Ondrej Pokorny wrote: > On 04.05.2023 08:38, Michael Van Canneyt wrote: >> On Thu, 4 May 2023, Ondrej Pokorny via lazarus wrote: >>> How is it possible that the LFM files are included directly but *.SQL >>> files are parsed as RC files? >> >> Because the file extension is recognized ? LFM is included as RC_DATA, and >> probably everything that is not .lfm is assumed to be a RC format. >> >> I believe fpcres also has this check. > > Thanks for the tip. I found it - it is directly in the compiler. > > In comprsrc.pas TWinLikeResourceFile.IsCompiled there is a logic that defines > what the compiler does with the included resource file based on the extension > or file header. > > I don't like the fact that there are hard-coded constants for what seems to > be (for a stranger) arbitrary file extensions and that it is not documented > anywhere. Well, developers that are using lazarus and form files know what happens. This is undoubtedly the majority of FPC users, so I don't think this is an issue. But it should definitely be documented. Michael. From lazarus at kluug.net Thu May 4 11:08:42 2023 From: lazarus at kluug.net (Ondrej Pokorny) Date: Thu, 4 May 2023 11:08:42 +0200 Subject: [Lazarus] Resources without RC files In-Reply-To: References: <82142b5f-1e04-dc68-a5f0-4a8fa6aa9b95@kluug.net> Message-ID: On 04.05.2023 11:02, Michael Van Canneyt wrote: > On Thu, 4 May 2023, Ondrej Pokorny wrote: >> On 04.05.2023 08:38, Michael Van Canneyt wrote: >>> On Thu, 4 May 2023, Ondrej Pokorny via lazarus wrote: >>>> How is it possible that the LFM files are included directly but >>>> *.SQL files are parsed as RC files? >>> >>> Because the file extension is recognized ? LFM is included as >>> RC_DATA, and probably everything that is not .lfm is assumed to be a >>> RC format. >>> >>> I believe fpcres also has this check. >> >> Thanks for the tip. I found it - it is directly in the compiler. >> >> In comprsrc.pas TWinLikeResourceFile.IsCompiled there is a logic that >> defines what the compiler does with the included resource file based >> on the extension or file header. >> >> I don't like the fact that there are hard-coded constants for what >> seems to be (for a stranger) arbitrary file extensions and that it is >> not documented anywhere. > > Well, developers that are using lazarus and form files know what happens. > > This is undoubtedly the majority of FPC users, so I don't think this > is an > issue. It is still confusing - in pas2js any file can be added as a resource with: {$R abc.xyz} In FPC only LFM, so hence the question why and how :) Ondrej From nc-gaertnma at netcologne.de Fri May 12 13:55:30 2023 From: nc-gaertnma at netcologne.de (Mattias Gaertner) Date: Fri, 12 May 2023 13:55:30 +0200 Subject: [Lazarus] dbg file on smb share hangs IDE Message-ID: <20230512135530.1fdbb59e@limapholos> Hi, When debugging a project on Windows with external debug info (.dbg) the IDE hangs. It works on the local C partition, but it hangs the IDE when the project is on a smb share. I have to kill lazarus.exe. Is this known? Mattias From sysrpl at gmail.com Mon May 15 17:47:42 2023 From: sysrpl at gmail.com (Anthony Walter) Date: Mon, 15 May 2023 11:47:42 -0400 Subject: [Lazarus] Copilot, VS Code, and OmniPascal Message-ID: Hello all! I would very much like to use Github Copilot with Free Pascal, and possibly within the Lazarus IDE. I have been using Github Copilot a lot recently with my C and C# coding projects and have found it to be an immensely useful tool. Recently I used it rapidly to create documentation comments for a large C# API I wrote and was impressed with the speed and accuracy. I've also found it extremely productive when it comes to working with third-party libraries where I haven't much used a new-to-me library. Copilot aids me greatly by generating code to do tasks with such code while I learn and become familiar with how to use the aforementioned libraries. This has led me to experiment with using Github Copilot in Visual Studio Code with Pascal, and while it simply works by opening files with a ".pas" extension, there is obviously a lot more which can be done to make a tool like Copilot with better IDE support. Specifically supporting Pascal project files that reference packages with their unit source paths, building and debugging, and problem solving (fixing errors in source code). My question to you in the Lazarus community is has anyone even attempted to integrate the Copilot system into Lazarus? If this is not at all possible, has anyone here used the OmniPascal extension to VS Code and configured it to work with lazbuild and have working tasks and launch JSON configuration files they could share along with their insights? I've googled a few supposed "guides" on the subject and found them to be horribly wrong or missing many critical steps. If anyone could give me advice on the matter, I'd be willing to write up and host a thorough guide on the matter after being able to solve the numerous configuration problems I'm attempting to solve. -------------- next part -------------- An HTML attachment was scrubbed... URL: From ganmax at narod.ru Mon May 15 18:00:54 2023 From: ganmax at narod.ru (Maxim Ganetsky) Date: Mon, 15 May 2023 19:00:54 +0300 Subject: [Lazarus] dbg file on smb share hangs IDE In-Reply-To: <20230512135530.1fdbb59e@limapholos> References: <20230512135530.1fdbb59e@limapholos> Message-ID: 12.05.2023 14:55, Mattias Gaertner via lazarus ?????: > Hi, > > When debugging a project on Windows with external debug info (.dbg) > the IDE hangs. > It works on the local C partition, but it hangs the IDE when the project > is on a smb share. I have to kill lazarus.exe. > > Is this known? I guess it is better to create an issue. -- Best regards, Maxim Ganetsky mailto:ganmax at narod.ru From gabor at poczta.onet.pl Mon May 15 18:33:55 2023 From: gabor at poczta.onet.pl (gabor) Date: Mon, 15 May 2023 18:33:55 +0200 Subject: [Lazarus] dbg file on smb share hangs IDE In-Reply-To: <20230512135530.1fdbb59e@limapholos> References: <20230512135530.1fdbb59e@limapholos> Message-ID: <0608d5e6-c8fa-78d3-7bc0-fc3f60709a95@poczta.onet.pl> W dniu 2023-05-12 o?13:55, Mattias Gaertner via lazarus pisze: > Hi, > > When debugging a project on Windows with external debug info (.dbg) > the IDE hangs. > It works on the local C partition, but it hangs the IDE when the project > is on a smb share. I have to kill lazarus.exe. > > Is this known? I noticed that reading data from a dbg file takes some time. Are you sure it's hanging? Maybe it needs more time to load the dbg file. Micha?. From michael at freepascal.org Mon May 15 20:16:04 2023 From: michael at freepascal.org (Michael Van Canneyt) Date: Mon, 15 May 2023 20:16:04 +0200 (CEST) Subject: [Lazarus] Copilot, VS Code, and OmniPascal In-Reply-To: References: Message-ID: On Mon, 15 May 2023, Anthony Walter via lazarus wrote: > Hello all! > > I would very much like to use Github Copilot with Free Pascal, and possibly > within the Lazarus IDE. > > I have been using Github Copilot a lot recently with my C and C# coding > projects and have found it to be an immensely useful tool. Recently I used > it rapidly to create documentation comments for a large C# API I wrote and > was impressed with the speed and accuracy. I've also found it extremely > productive when it comes to working with third-party libraries where I > haven't much used a new-to-me library. Copilot aids me greatly by > generating code to do tasks with such code while I learn and become > familiar with how to use the aforementioned libraries. > > This has led me to experiment with using Github Copilot in Visual Studio > Code with Pascal, and while it simply works by opening files with a ".pas" > extension, there is obviously a lot more which can be done to make a tool > like Copilot with better IDE support. Specifically supporting Pascal > project files that reference packages with their unit source paths, > building and debugging, and problem solving (fixing errors in source code). > > My question to you in the Lazarus community is has anyone even attempted to > integrate the Copilot system into Lazarus? If this is not at all possible, > has anyone here used the OmniPascal extension to VS Code and configured it > to work with lazbuild and have working tasks and launch JSON configuration > files they could share along with their insights? I've googled a few > supposed "guides" on the subject and found them to be horribly wrong or > missing many critical steps. I've discarded OmniPascal, because it eats 100% cpu on Linux on every project I tried, and that is simply unacceptable. It's also closed source, so we can't improve it. Instead I'm working with Ryan Joseph on the Pascal LSP based on the lazarus code tools: https://github.com/genericptr/pascal-language-server This project does not yet give all the possibilities of Omnipascal, but it is very usable (identifier completion and code completion work) and we're improving it still. I've made many improvements and stabilized the code, removed all memleaks. It's now also ready to listen on a socket instead of stdin and can be debugged. At the same time Mattias Gaertner and I are improving the fcl-passrc codebase so it contains some error-recovery mechanisms. Currently it stops at the first error, we're improving this so it tries to continue to analyze the code. This work is needed to provide better user experience in Pas2js and will give better diagnostics than the Lazarus codetools give us. The codetools are very forgiving of errors, so it keeps functioning in the presence of some errors, which is a different goal than the what the diagnostics needs. Once that is done, I plan to continue to work on the LSP process to integrate the new possibilities, and then provide an additional VS Code extension that does some project management for lazarus and lazbuild. Any help on this project is of course more than welcome. Michael. From michalis.kambi at gmail.com Mon May 15 23:19:07 2023 From: michalis.kambi at gmail.com (Michalis Kamburelis) Date: Mon, 15 May 2023 23:19:07 +0200 Subject: [Lazarus] Copilot, VS Code, and OmniPascal In-Reply-To: References: Message-ID: On a somewhat related note, Castle Game Engine includes Pascal LSP server. It is documented on https://castle-engine.io/vscode , along with other notes recommending how to use Castle Game Engine with VS Code. Our LSP server code is https://github.com/castle-engine/pascal-language-server , it is based on https://github.com/Isopod/pascal-language-server (from Philip Zander), and adds some fixes + CGE extensions (e.g. it can automatically add paths to CGE units and options we recommend, like ObjFpc mode). In general, most of that page is really useful to develop any Pascal applications, I use that setup for any Pascal applications :) To integrate this LSP with VS Code one can use the plugin from Ryan Joseph on https://github.com/genericptr/pasls-vscode . Basically, all these Pascal LSP servers (from Ryan Joseph, from Philip Zander, and CGE fork of Philip Zander) are quite compatible and can be used with the same VS Code extension. And all of them use under the hood Lazarus CodeTools, so overall their "understanding" of Pascal code for auto-complete is quite good. See also CGE news on https://castle-engine.io/wp/2023/04/29/visual-studio-code-and-lsp-server-improvements/ . I switched personally to VS Code, after using Emacs for ~20 years :) And yes, Copilot (on top of the LSP server) is quite good. It can also nicely complete code when the LSP servers don't -- e.g. it often suggests proper variable declaration, method declaration, and more. Regards, Michalis pon., 15 maj 2023 o 20:16 Michael Van Canneyt via lazarus napisa?(a): > > > > On Mon, 15 May 2023, Anthony Walter via lazarus wrote: > > > Hello all! > > > > I would very much like to use Github Copilot with Free Pascal, and possibly > > within the Lazarus IDE. > > > > I have been using Github Copilot a lot recently with my C and C# coding > > projects and have found it to be an immensely useful tool. Recently I used > > it rapidly to create documentation comments for a large C# API I wrote and > > was impressed with the speed and accuracy. I've also found it extremely > > productive when it comes to working with third-party libraries where I > > haven't much used a new-to-me library. Copilot aids me greatly by > > generating code to do tasks with such code while I learn and become > > familiar with how to use the aforementioned libraries. > > > > This has led me to experiment with using Github Copilot in Visual Studio > > Code with Pascal, and while it simply works by opening files with a ".pas" > > extension, there is obviously a lot more which can be done to make a tool > > like Copilot with better IDE support. Specifically supporting Pascal > > project files that reference packages with their unit source paths, > > building and debugging, and problem solving (fixing errors in source code). > > > > My question to you in the Lazarus community is has anyone even attempted to > > integrate the Copilot system into Lazarus? If this is not at all possible, > > has anyone here used the OmniPascal extension to VS Code and configured it > > to work with lazbuild and have working tasks and launch JSON configuration > > files they could share along with their insights? I've googled a few > > supposed "guides" on the subject and found them to be horribly wrong or > > missing many critical steps. > > I've discarded OmniPascal, because it eats 100% cpu on Linux on every > project I tried, and that is simply unacceptable. > It's also closed source, so we can't improve it. > > Instead I'm working with Ryan Joseph on the Pascal LSP based on the lazarus code tools: > > https://github.com/genericptr/pascal-language-server > > This project does not yet give all the possibilities of Omnipascal, but > it is very usable (identifier completion and code completion work) and > we're improving it still. > > I've made many improvements and stabilized the code, removed all memleaks. > It's now also ready to listen on a socket instead of stdin and can be > debugged. > > At the same time Mattias Gaertner and I are improving the fcl-passrc codebase > so it contains some error-recovery mechanisms. Currently it stops at the > first error, we're improving this so it tries to continue to analyze the > code. This work is needed to provide better user experience in Pas2js > and will give better diagnostics than the Lazarus codetools give us. > The codetools are very forgiving of errors, so it keeps functioning in the > presence of some errors, which is a different goal than the what the > diagnostics needs. > > Once that is done, I plan to continue to work on the LSP process to > integrate the new possibilities, and then provide an additional > VS Code extension that does some project management > for lazarus and lazbuild. > > Any help on this project is of course more than welcome. > > Michael. > -- > _______________________________________________ > lazarus mailing list > lazarus at lists.lazarus-ide.org > https://lists.lazarus-ide.org/listinfo/lazarus From giuliano.colla at fastwebnet.it Tue May 16 13:00:57 2023 From: giuliano.colla at fastwebnet.it (Giuliano Colla) Date: Tue, 16 May 2023 13:00:57 +0200 Subject: [Lazarus] Macro not defined: "Target_OS". Message-ID: When launching Lazarus from console I see a number of warnings like this: Warning: (lazarus) Macro not defined: "Target_OS". It's there since the dawn of times (from Lazarus 1.8 up to the latest Lazarus trunk). Is it something to worry about? Giuliano From lazarus at mfriebe.de Tue May 16 21:36:45 2023 From: lazarus at mfriebe.de (Martin Frb) Date: Tue, 16 May 2023 21:36:45 +0200 Subject: [Lazarus] dbg file on smb share hangs IDE In-Reply-To: <20230512135530.1fdbb59e@limapholos> References: <20230512135530.1fdbb59e@limapholos> Message-ID: <5de159ca-16dd-d440-9c6c-9cca5e9e7530@mfriebe.de> On 12/05/2023 13:55, Mattias Gaertner via lazarus wrote: > Hi, > > When debugging a project on Windows with external debug info (.dbg) > the IDE hangs. > It works on the local C partition, but it hangs the IDE when the project > is on a smb share. I have to kill lazarus.exe. > > Is this known? > I don't think it is known. Gdb or FpDebug? Any size of dbg file? FpDebug (on win) lets the OS do the loading by creating a memory map for the file. Maybe WIndows has an issues there. From nc-gaertnma at netcologne.de Tue May 16 21:42:49 2023 From: nc-gaertnma at netcologne.de (Mattias Gaertner) Date: Tue, 16 May 2023 21:42:49 +0200 Subject: [Lazarus] dbg file on smb share hangs IDE In-Reply-To: <5de159ca-16dd-d440-9c6c-9cca5e9e7530@mfriebe.de> References: <20230512135530.1fdbb59e@limapholos> <5de159ca-16dd-d440-9c6c-9cca5e9e7530@mfriebe.de> Message-ID: <20230516214249.19b82580@limapholos> On Tue, 16 May 2023 21:36:45 +0200 Martin Frb via lazarus wrote: > On 12/05/2023 13:55, Mattias Gaertner via lazarus wrote: > > Hi, > > > > When debugging a project on Windows with external debug info (.dbg) > > the IDE hangs. > > It works on the local C partition, but it hangs the IDE when the > > project is on a smb share. I have to kill lazarus.exe. > > > > Is this known? > > > > I don't think it is known. > > Gdb or FpDebug? FPDebug > Any size of dbg file? 87MB > FpDebug (on win) lets the OS do the loading by creating a memory map > for the file. Maybe WIndows has an issues there. Mattias From giuliano.colla at fastwebnet.it Wed May 17 19:57:55 2023 From: giuliano.colla at fastwebnet.it (Giuliano Colla) Date: Wed, 17 May 2023 19:57:55 +0200 Subject: [Lazarus] Build IDE "forgets" Target CPU Message-ID: <226cbf7d-02ab-2702-ff3e-c68d8ac61bd3@fastwebnet.it> Recent Macs support both X86_64 and aarm64 binaries, and if you wish to compile your app one way or the other you may just select it in Project Options. You may be forced to select x86_64 if you wish to use Qt5 because Qt provides Qt5 only for x86. But if you wish to build the IDE for a different Target CPU than the one currently used, build will fail. It will build all the units required for the selected target CPU, until it comes to build the IDE itself. It tries to compile it not using fpc, but the ppcxx of the current IDE configuration. The error shown is: Error: (11059) Unsupported target architecture -Px86_64, invoke the "fpc" compiler driver instead. Error: /usr/local/bin/ppca64 returned an error exitcode You succeed in building if you invoke make with an extra PP= such as: make useride LCL_PLATFORM=cocoa OPT="-Px86_64" PP=ppcx64 Can this be fixed, following the suggestion of the error message, invoking fpc instead? Giuliano -------------- next part -------------- An HTML attachment was scrubbed... URL: From michael at freepascal.org Thu May 18 09:58:58 2023 From: michael at freepascal.org (Michael Van Canneyt) Date: Thu, 18 May 2023 09:58:58 +0200 (CEST) Subject: [Lazarus] Source Hint Popup window markup ? Message-ID: Hi, The IDE - in its desire to be helpful - shows a popup whenever you hover your mouse over an identifier. It seems to me the popup contains some markdown (e.g. underscores): see attached screenshot. I assume this is supposed to be formatted ? If so, how to enable that formatting ? Michael. -------------- next part -------------- A non-text attachment was scrubbed... Name: hintwindow.png Type: image/png Size: 11931 bytes Desc: URL: From nc-gaertnma at netcologne.de Thu May 18 10:56:15 2023 From: nc-gaertnma at netcologne.de (Mattias Gaertner) Date: Thu, 18 May 2023 10:56:15 +0200 Subject: [Lazarus] Source Hint Popup window markup ? In-Reply-To: References: Message-ID: <20230518105615.71c51070@limapholos> On Thu, 18 May 2023 09:58:58 +0200 (CEST) Michael Van Canneyt via lazarus wrote: > Hi, > > The IDE - in its desire to be helpful - shows a popup whenever you > hover your mouse over an identifier. > > It seems to me the popup contains some markdown (e.g. underscores): > see attached screenshot. > > I assume this is supposed to be formatted ? > If so, how to enable that formatting ? Install TurboPowerIProDsgn Mattias From michael at freepascal.org Sun May 21 10:48:30 2023 From: michael at freepascal.org (Michael Van Canneyt) Date: Sun, 21 May 2023 10:48:30 +0200 (CEST) Subject: [Lazarus] Some source editor context menu items broken Message-ID: Hello, The refactoring context menu item and the find identifier references context menu are broken. Type TSourceParser = Class(TObject) function ParseSource: TPasModule; end; With the cursor on "ParseSource", the 'Find identifier references' and 'Rename identifier' menu items in the context menu are grayed out. (plus some others) The same problem exists if the cursor is on "ParseSource" in the implementation: function TSourceParser.ParseSource: TPasModule; I did some digging, and it seems to me that the error is in the TCustomSynEdit.CaretAtIdentOrString routine, which does not detect an identifier correctly. It seems a bit strange to me that the syntax highlighter is used to determine whether the cursor is on a identifier or something else. I saw a remark in main.pp that this is supposed to be faster than using the codetools: CurWordAtCursor := ASrcEdit.GetWordAtCurrentCaret; //it is faster to get information from SynEdit than from CodeTools ASrcEdit.EditorComponent.CaretAtIdentOrString(ASrcEdit.EditorComponent.CaretXY, IdentFound, StringFound); Faster? Probably. Correct? clearly not (yet). Any solutions ? Michael. From luca at wetron.es Sun May 21 11:05:55 2023 From: luca at wetron.es (Luca Olivetti) Date: Sun, 21 May 2023 11:05:55 +0200 Subject: [Lazarus] Some source editor context menu items broken In-Reply-To: References: Message-ID: <4e400763-fed9-b195-2db7-ee88aafd31ce@wetron.es> El 21/5/23 a les 10:48, Michael Van Canneyt via lazarus ha escrit: > > Any solutions ? I found this issue a while ago (and I think I reported it here but I cannot find the message right now) and even if the context menu is greyed out, the "F2" key still works to rename the identifier. No idea about the "find identifier references" sorry. Bye -- Luca Olivetti Wetron Automation Technology https://wetron.es/ Tel. +34 93 5883004 (Ext.3010) Fax +34 93 5883007 From luca at wetron.es Sun May 21 11:12:17 2023 From: luca at wetron.es (Luca Olivetti) Date: Sun, 21 May 2023 11:12:17 +0200 Subject: [Lazarus] Some source editor context menu items broken In-Reply-To: <4e400763-fed9-b195-2db7-ee88aafd31ce@wetron.es> References: <4e400763-fed9-b195-2db7-ee88aafd31ce@wetron.es> Message-ID: El 21/5/23 a les 11:05, Luca Olivetti via lazarus ha escrit: > El 21/5/23 a les 10:48, Michael Van Canneyt via lazarus ha escrit: > >> >> Any solutions ? > > I found this issue a while ago (and I think I reported it here but I > cannot find the message right now) found it https://lists.lazarus-ide.org/pipermail/lazarus/2019-May/236611.html Bye -- Luca Olivetti Wetron Automation Technology https://wetron.es/ Tel. +34 93 5883004 (Ext.3010) Fax +34 93 5883007 From michael at freepascal.org Sun May 21 11:19:32 2023 From: michael at freepascal.org (Michael Van Canneyt) Date: Sun, 21 May 2023 11:19:32 +0200 (CEST) Subject: [Lazarus] Some source editor context menu items broken In-Reply-To: <4e400763-fed9-b195-2db7-ee88aafd31ce@wetron.es> References: <4e400763-fed9-b195-2db7-ee88aafd31ce@wetron.es> Message-ID: On Sun, 21 May 2023, Luca Olivetti via lazarus wrote: > El 21/5/23 a les 10:48, Michael Van Canneyt via lazarus ha escrit: > >> >> Any solutions ? > > I found this issue a while ago (and I think I reported it here but I cannot > find the message right now) and even if the context menu is greyed out, the > "F2" key still works to rename the identifier. That would be an error in itself. > No idea about the "find identifier references" sorry. They are updated at the same time with the same logic. Michael. From nc-gaertnma at netcologne.de Sun May 21 11:38:17 2023 From: nc-gaertnma at netcologne.de (Mattias Gaertner) Date: Sun, 21 May 2023 11:38:17 +0200 Subject: [Lazarus] Some source editor context menu items broken In-Reply-To: References: Message-ID: <20230521113817.04b8b2b5@limapholos> On Sun, 21 May 2023 10:48:30 +0200 (CEST) Michael Van Canneyt via lazarus wrote: >[...] > I saw a remark in main.pp that this is supposed to be faster than > using the codetools: > > CurWordAtCursor := ASrcEdit.GetWordAtCurrentCaret; > //it is faster to get information from SynEdit than from > CodeTools > ASrcEdit.EditorComponent.CaretAtIdentOrString(ASrcEdit.EditorComponent.CaretXY, > IdentFound, StringFound); > > Faster? Probably. Correct? clearly not (yet). Problem is that this function checks: AtIdent := Attri = Highlighter.IdentifierAttribute; But TSynPasSyn has its own attribute ProcedureHeaderName: TSynHighlighterAttributesModifier Martin? Mattias From michael at freepascal.org Sun May 21 11:52:34 2023 From: michael at freepascal.org (Michael Van Canneyt) Date: Sun, 21 May 2023 11:52:34 +0200 (CEST) Subject: [Lazarus] Some source editor context menu items broken In-Reply-To: <20230521113817.04b8b2b5@limapholos> References: <20230521113817.04b8b2b5@limapholos> Message-ID: On Sun, 21 May 2023, Mattias Gaertner via lazarus wrote: > On Sun, 21 May 2023 10:48:30 +0200 (CEST) > Michael Van Canneyt via lazarus wrote: > >> [...] >> I saw a remark in main.pp that this is supposed to be faster than >> using the codetools: >> >> CurWordAtCursor := ASrcEdit.GetWordAtCurrentCaret; >> //it is faster to get information from SynEdit than from >> CodeTools >> ASrcEdit.EditorComponent.CaretAtIdentOrString(ASrcEdit.EditorComponent.CaretXY, >> IdentFound, StringFound); >> >> Faster? Probably. Correct? clearly not (yet). > > Problem is that this function checks: > AtIdent := Attri = Highlighter.IdentifierAttribute; > But TSynPasSyn has its own attribute > ProcedureHeaderName: TSynHighlighterAttributesModifier Asking the syntax highlighter means there is a probability that the code breaks again whenever a new attribute is introduced. Looking at the code, I think it should not be hard to change this algorithm so it uses the codetools. Simply start scanning tokens on the line of the caret, and determine the token type when the caret position is reached. That is what the highlighter does, after all. The advantage is that it will be more unambiguous. Well, just an idea. Michael. From lazarus at mfriebe.de Sun May 21 12:22:14 2023 From: lazarus at mfriebe.de (Martin Frb) Date: Sun, 21 May 2023 12:22:14 +0200 Subject: [Lazarus] Some source editor context menu items broken In-Reply-To: <20230521113817.04b8b2b5@limapholos> References: <20230521113817.04b8b2b5@limapholos> Message-ID: <9574940a-73c2-8396-8da8-ec7e7a5b9bde@mfriebe.de> On 21/05/2023 11:38, Mattias Gaertner via lazarus wrote: > On Sun, 21 May 2023 10:48:30 +0200 (CEST) > Michael Van Canneyt via lazarus wrote: > >> [...] >> I saw a remark in main.pp that this is supposed to be faster than >> using the codetools: >> >> CurWordAtCursor := ASrcEdit.GetWordAtCurrentCaret; >> //it is faster to get information from SynEdit than from >> CodeTools >> ASrcEdit.EditorComponent.CaretAtIdentOrString(ASrcEdit.EditorComponent.CaretXY, >> IdentFound, StringFound); >> >> Faster? Probably. Correct? clearly not (yet). > Problem is that this function checks: > AtIdent := Attri = Highlighter.IdentifierAttribute; > But TSynPasSyn has its own attribute > ProcedureHeaderName: TSynHighlighterAttributesModifier > Yes that is broken in SynEdit. This is related to procedure names having a color of their own. Same probably happens for case-labels ? "case enum of" and then the named enum-members as labels. Yet in that case there is no easy way to differentiate between identifier (enum member name) and else/otherwise (keyword). That should be reported as a bug. (It may need a more substantial fix to be future-safe / a dedicated function in the HL maybe) ------------------- Using CaretAtIdentOrString is questionable anyway. Afaik codetools also works on comments. At least "find?identifier?references" (if invoked via key combo) works on idents in comments. Yet CaretAtIdentOrString does by design not return true for comments. So "git blame" the source editor, and see what was used before CaretAtIdentOrString. From john at mbstemps.com Fri May 26 02:12:17 2023 From: john at mbstemps.com (john Ward) Date: Thu, 25 May 2023 20:12:17 -0400 (EDT) Subject: [Lazarus] locate command for dBase Message-ID: <1798287138.2279355.1685059937997@webmail-oxcs.networksolutionsemail.com> I need to find records in an indexed dBase file based on a key. version is 2.2.6 fpc 3.2.2 x86_64. The following is the test I did in the program. The dBase file is temp.dbf and the index if temp.mdx; The program includes tDbf and tDatasource. I also have tDbnavigator in the program, all seems to be working, adding, editing records. I need to be able to 'find' a record in the data base, so editing can be done, without going through record by record. procedure Ttempf.Edit1Exit(Sender: TObject); var tempid : string; tno : string; begin tempid := edit1.text; if temp.Locate('temp_no', (tempid),[loPartialkey]) then begin showmessage('we found the field or Partial' + tempid); showmessage('current temp_no is '); tno := temp.FieldbyName('temp_no').asString; showmessage('tempno is = ' + tno); end; The above code, executes the 'then', shows me what was searched for BUT when a data field is displayed, the original record is pointed to, NOT a record further in the database. Driving myself crazy trying to find problem, It is a short drive, many times. any Help would be appreciated. john at mbstemps.com John A. Ward, President -------------- next part -------------- An HTML attachment was scrubbed... URL: From wkitty42 at windstream.net Fri May 26 13:26:28 2023 From: wkitty42 at windstream.net (wkitty42 at windstream.net) Date: Fri, 26 May 2023 07:26:28 -0400 Subject: [Lazarus] locate command for dBase In-Reply-To: <1798287138.2279355.1685059937997@webmail-oxcs.networksolutionsemail.com> References: <1798287138.2279355.1685059937997@webmail-oxcs.networksolutionsemail.com> Message-ID: On 5/25/23 8:12 PM, john Ward via lazarus wrote: > ? if > ? temp.Locate('temp_no', (tempid),[loPartialkey]) > ? then > ? begin > > ? ? showmessage('we found the field or Partial' + tempid); > ? ? showmessage('current temp_no is '); > ? ? tno := temp.FieldbyName('temp_no').asString; > ?? showmessage('tempno is = ' + tno); > ? ? end; > The above code, executes the 'then', shows me what was searched for BUT when a > data field is displayed, the original record is pointed to, NOT a record further > in the database. i don't see where you did a seek to the record you are trying to get to... granted, it has been a long while since i did anything with FPC/Lazarus or an dBase databases but it would seem there should be an obvious seek action... maybe... -- NOTE: No off-list assistance is given without prior approval. *Please keep mailing list traffic on the list where it belongs!* From michael at freepascal.org Fri May 26 13:31:27 2023 From: michael at freepascal.org (Michael Van Canneyt) Date: Fri, 26 May 2023 13:31:27 +0200 (CEST) Subject: [Lazarus] locate command for dBase In-Reply-To: References: <1798287138.2279355.1685059937997@webmail-oxcs.networksolutionsemail.com> Message-ID: On Fri, 26 May 2023, wkitty42--- via lazarus wrote: > On 5/25/23 8:12 PM, john Ward via lazarus wrote: >> ? if >> ? temp.Locate('temp_no', (tempid),[loPartialkey]) >> ? then >> ? begin >> >> ? ? showmessage('we found the field or Partial' + tempid); >> ? ? showmessage('current temp_no is '); >> ? ? tno := temp.FieldbyName('temp_no').asString; >> ?? showmessage('tempno is = ' + tno); >> ? ? end; >> The above code, executes the 'then', shows me what was searched for BUT > when a >> data field is displayed, the original record is pointed to, NOT a record > further >> in the database. > > > i don't see where you did a seek to the record you are trying to get to... > granted, it has been a long while since i did anything with FPC/Lazarus or an > dBase databases but it would seem there should be an obvious seek action... > maybe... the locate() is a seek action. But without more info/code it is difficult to give an answer to the OP's question. Michael. From wkitty42 at windstream.net Fri May 26 17:09:12 2023 From: wkitty42 at windstream.net (wkitty42 at windstream.net) Date: Fri, 26 May 2023 11:09:12 -0400 Subject: [Lazarus] locate command for dBase In-Reply-To: References: <1798287138.2279355.1685059937997@webmail-oxcs.networksolutionsemail.com> Message-ID: <9a06d191-09f2-2844-cac4-ed68b75dcc24@windstream.net> On 5/26/23 7:31 AM, Michael Van Canneyt via lazarus wrote: > On Fri, 26 May 2023, wkitty42--- via lazarus wrote: >> i don't see where you did a seek to the record you are trying to get to... >> granted, it has been a long while since i did anything with FPC/Lazarus or an >> dBase databases but it would seem there should be an obvious seek action... >> maybe... > > the locate() is a seek action. ahhhh... i thought it just located whatever is being sought and one still needed to actually seek to the record... > But without more info/code it is difficult to give an answer to the OP's > question. agreed :) -- NOTE: No off-list assistance is given without prior approval. *Please keep mailing list traffic on the list where it belongs!* From werner.pamler at freenet.de Sat May 27 20:07:59 2023 From: werner.pamler at freenet.de (Werner Pamler) Date: Sat, 27 May 2023 20:07:59 +0200 Subject: [Lazarus] locate command for dBase In-Reply-To: <1798287138.2279355.1685059937997@webmail-oxcs.networksolutionsemail.com> References: <1798287138.2279355.1685059937997@webmail-oxcs.networksolutionsemail.com> Message-ID: The attached project demonstrates that dbf.Locate works as expected. -------------- next part -------------- A non-text attachment was scrubbed... Name: dbf_locate.zip Type: application/x-zip-compressed Size: 2657 bytes Desc: not available URL: From john at mbstemps.com Sun May 28 00:16:28 2023 From: john at mbstemps.com (john Ward) Date: Sat, 27 May 2023 18:16:28 -0400 (EDT) Subject: [Lazarus] lazarus Digest, Vol 184, Issue 9 In-Reply-To: References: Message-ID: <20858333.2481738.1685225788171@webmail-oxcs.networksolutionsemail.com> To, Wkitty and Michael, the only thing I didn't see on the code list is the string definition of field 'tempid' which is defined as string and is input on edit1 field. There is an example of this code in Delphi tutorial and the specifications in the TDbf Manual written by Micha Nelissen and referenced in the Lazarus data base online references as well as the Lazarus Handbook. The field 'tempid' has nothing to do with a temporary field, I have a System for Temporary Personnel Services and the code is part of a re-write of my package from Kylix to Lazarus. I selected dBase because the performance was exceptional and the Kylix package used the Topaz Database, which is dBase with a number of useful extension. My re-write is kind of stopped now, you can't use the next arrow in the tDbnavigator bar to go x number of records in files that have thousands of entries. Thank you very much for your looking at the program and if there is any more I can do, please let me know. John (john at mbstemps.com) > On 05/27/2023 6:00 AM EDT lazarus-request at lists.lazarus-ide.org wrote: > > > Send lazarus mailing list submissions to > lazarus at lists.lazarus-ide.org > > To subscribe or unsubscribe via the World Wide Web, visit > https://lists.lazarus-ide.org/listinfo/lazarus > or, via email, send a message with subject or body 'help' to > lazarus-request at lists.lazarus-ide.org > > You can reach the person managing the list at > lazarus-owner at lists.lazarus-ide.org > > When replying, please edit your Subject line so it is more specific > than "Re: Contents of lazarus digest..." > > > Today's Topics: > > 1. Re: locate command for dBase (wkitty42 at windstream.net) > 2. Re: locate command for dBase (Michael Van Canneyt) > 3. Re: locate command for dBase (wkitty42 at windstream.net) > > > ---------------------------------------------------------------------- > > Message: 1 > Date: Fri, 26 May 2023 07:26:28 -0400 > From: wkitty42 at windstream.net > To: lazarus at lists.lazarus-ide.org > Subject: Re: [Lazarus] locate command for dBase > Message-ID: > Content-Type: text/plain; charset=utf-8; format=flowed > > On 5/25/23 8:12 PM, john Ward via lazarus wrote: > > ? if > > ? temp.Locate('temp_no', (tempid),[loPartialkey]) > > ? then > > ? begin > > > > ? ? showmessage('we found the field or Partial' + tempid); > > ? ? showmessage('current temp_no is '); > > ? ? tno := temp.FieldbyName('temp_no').asString; > > ?? showmessage('tempno is = ' + tno); > > ? ? end; > > The above code, executes the 'then', shows me what was searched for BUT when a > > data field is displayed, the original record is pointed to, NOT a record further > > in the database. > > > i don't see where you did a seek to the record you are trying to get to... > granted, it has been a long while since i did anything with FPC/Lazarus or an > dBase databases but it would seem there should be an obvious seek action... maybe... > > > -- > NOTE: No off-list assistance is given without prior approval. > *Please keep mailing list traffic on the list where it belongs!* > > > ------------------------------ > > Message: 2 > Date: Fri, 26 May 2023 13:31:27 +0200 (CEST) > From: Michael Van Canneyt > To: wkitty42--- via lazarus > Subject: Re: [Lazarus] locate command for dBase > Message-ID: > Content-Type: text/plain; charset="utf-8"; Format="flowed" > > > > On Fri, 26 May 2023, wkitty42--- via lazarus wrote: > > > On 5/25/23 8:12 PM, john Ward via lazarus wrote: > >> ? if > >> ? temp.Locate('temp_no', (tempid),[loPartialkey]) > >> ? then > >> ? begin > >> > >> ? ? showmessage('we found the field or Partial' + tempid); > >> ? ? showmessage('current temp_no is '); > >> ? ? tno := temp.FieldbyName('temp_no').asString; > >> ?? showmessage('tempno is = ' + tno); > >> ? ? end; > >> The above code, executes the 'then', shows me what was searched for BUT > > when a > >> data field is displayed, the original record is pointed to, NOT a record > > further > >> in the database. > > > > > > i don't see where you did a seek to the record you are trying to get to... > > granted, it has been a long while since i did anything with FPC/Lazarus or an > > dBase databases but it would seem there should be an obvious seek action... > > maybe... > > the locate() is a seek action. > > But without more info/code it is difficult to give an answer to the OP's > question. > > Michael. > > ------------------------------ > > Message: 3 > Date: Fri, 26 May 2023 11:09:12 -0400 > From: wkitty42 at windstream.net > To: lazarus at lists.lazarus-ide.org > Subject: Re: [Lazarus] locate command for dBase > Message-ID: <9a06d191-09f2-2844-cac4-ed68b75dcc24 at windstream.net> > Content-Type: text/plain; charset=utf-8; format=flowed > > On 5/26/23 7:31 AM, Michael Van Canneyt via lazarus wrote: > > On Fri, 26 May 2023, wkitty42--- via lazarus wrote: > >> i don't see where you did a seek to the record you are trying to get to... > >> granted, it has been a long while since i did anything with FPC/Lazarus or an > >> dBase databases but it would seem there should be an obvious seek action... > >> maybe... > > > > the locate() is a seek action. > > > ahhhh... i thought it just located whatever is being sought and one still needed > to actually seek to the record... > > > But without more info/code it is difficult to give an answer to the OP's > > question. > > agreed :) > > -- > NOTE: No off-list assistance is given without prior approval. > *Please keep mailing list traffic on the list where it belongs!* > > > ------------------------------ > > Subject: Digest Footer > > -- > _______________________________________________ > lazarus mailing list > lazarus at lists.lazarus-ide.org > https://lists.lazarus-ide.org/listinfo/lazarus > > > ------------------------------ > > End of lazarus Digest, Vol 184, Issue 9 > *************************************** From john at mbstemps.com Wed May 31 01:11:59 2023 From: john at mbstemps.com (john Ward) Date: Tue, 30 May 2023 19:11:59 -0400 (EDT) Subject: [Lazarus] lazarus Digest, Vol 184, Issue 10 In-Reply-To: References: Message-ID: <954496891.2775845.1685488319840@webmail-oxcs.networksolutionsemail.com> To, Werner Pamler, Thank you very much for your Sample, the Publishers of the Lazarus Handbook, should think of including it as a sample, clear, concise and the sample worked. I downloaded, compiled and tested it and it worked, BUT mine that looked like yours didn't. I tried to focus on the difference, and I found you used the TDBgrid and I use the TDBedit to display the DataBase data on the form. I had already tried the dbase.post command after the 'locate' command and found No difference, so I tried the dabase.edit command and SUCCESS! So we have discovered either a BUG or a 'feature' of Lazarus! Again I thank you, without your help the development was stopped. Congratulations and thank you the help given, great job. Also thanks again to Wkitty and Michael you both gave information needed to solve the problem I was having. John > On 05/28/2023 6:00 AM EDT lazarus-request at lists.lazarus-ide.org wrote: > > > Send lazarus mailing list submissions to > lazarus at lists.lazarus-ide.org > > To subscribe or unsubscribe via the World Wide Web, visit > https://lists.lazarus-ide.org/listinfo/lazarus > or, via email, send a message with subject or body 'help' to > lazarus-request at lists.lazarus-ide.org > > You can reach the person managing the list at > lazarus-owner at lists.lazarus-ide.org > > When replying, please edit your Subject line so it is more specific > than "Re: Contents of lazarus digest..." > > > Today's Topics: > > 1. Re: locate command for dBase (Werner Pamler) > 2. Re: lazarus Digest, Vol 184, Issue 9 (john Ward) > > > ---------------------------------------------------------------------- > > Message: 1 > Date: Sat, 27 May 2023 20:07:59 +0200 > From: Werner Pamler > To: lazarus at lists.lazarus-ide.org > Subject: Re: [Lazarus] locate command for dBase > Message-ID: > Content-Type: text/plain; charset="utf-8"; Format="flowed" > > The attached project demonstrates that dbf.Locate works as expected. > > -------------- next part -------------- > A non-text attachment was scrubbed... > Name: dbf_locate.zip > Type: application/x-zip-compressed > Size: 2657 bytes > Desc: not available > URL: > > ------------------------------ > > Message: 2 > Date: Sat, 27 May 2023 18:16:28 -0400 (EDT) > From: john Ward > To: lazarus at lists.lazarus-ide.org > Subject: Re: [Lazarus] lazarus Digest, Vol 184, Issue 9 > Message-ID: > <20858333.2481738.1685225788171 at webmail-oxcs.networksolutionsemail.com> > > Content-Type: text/plain; charset=UTF-8 > > To, Wkitty and Michael, > the only thing I didn't see on the code list is the string definition > of field 'tempid' which is defined as string and is input on edit1 > field. > > There is an example of this code in Delphi tutorial and the specifications in the TDbf Manual written by Micha Nelissen and referenced in the Lazarus data base online references as well as > the Lazarus Handbook. The field 'tempid' has nothing to do with a > temporary field, I have a System for Temporary Personnel Services and > the code is part of a re-write of my package from Kylix to Lazarus. > > I selected dBase because the performance was exceptional and the Kylix > package used the Topaz Database, which is dBase with a number of > useful extension. > My re-write is kind of stopped now, you can't use the next arrow in > the tDbnavigator bar to go x number of records in files that have > thousands of entries. > > Thank you very much for your looking at the program and if there is any more I can do, please let me know. > John (john at mbstemps.com) > > > > On 05/27/2023 6:00 AM EDT lazarus-request at lists.lazarus-ide.org wrote: > > > > > > Send lazarus mailing list submissions to > > lazarus at lists.lazarus-ide.org > > > > To subscribe or unsubscribe via the World Wide Web, visit > > https://lists.lazarus-ide.org/listinfo/lazarus > > or, via email, send a message with subject or body 'help' to > > lazarus-request at lists.lazarus-ide.org > > > > You can reach the person managing the list at > > lazarus-owner at lists.lazarus-ide.org > > > > When replying, please edit your Subject line so it is more specific > > than "Re: Contents of lazarus digest..." > > > > > > Today's Topics: > > > > 1. Re: locate command for dBase (wkitty42 at windstream.net) > > 2. Re: locate command for dBase (Michael Van Canneyt) > > 3. Re: locate command for dBase (wkitty42 at windstream.net) > > > > > > ---------------------------------------------------------------------- > > > > Message: 1 > > Date: Fri, 26 May 2023 07:26:28 -0400 > > From: wkitty42 at windstream.net > > To: lazarus at lists.lazarus-ide.org > > Subject: Re: [Lazarus] locate command for dBase > > Message-ID: > > Content-Type: text/plain; charset=utf-8; format=flowed > > > > On 5/25/23 8:12 PM, john Ward via lazarus wrote: > > > ? if > > > ? temp.Locate('temp_no', (tempid),[loPartialkey]) > > > ? then > > > ? begin > > > > > > ? ? showmessage('we found the field or Partial' + tempid); > > > ? ? showmessage('current temp_no is '); > > > ? ? tno := temp.FieldbyName('temp_no').asString; > > > ?? showmessage('tempno is = ' + tno); > > > ? ? end; > > > The above code, executes the 'then', shows me what was searched for BUT when a > > > data field is displayed, the original record is pointed to, NOT a record further > > > in the database. > > > > > > i don't see where you did a seek to the record you are trying to get to... > > granted, it has been a long while since i did anything with FPC/Lazarus or an > > dBase databases but it would seem there should be an obvious seek action... maybe... > > > > > > -- > > NOTE: No off-list assistance is given without prior approval. > > *Please keep mailing list traffic on the list where it belongs!* > > > > > > ------------------------------ > > > > Message: 2 > > Date: Fri, 26 May 2023 13:31:27 +0200 (CEST) > > From: Michael Van Canneyt > > To: wkitty42--- via lazarus > > Subject: Re: [Lazarus] locate command for dBase > > Message-ID: > > Content-Type: text/plain; charset="utf-8"; Format="flowed" > > > > > > > > On Fri, 26 May 2023, wkitty42--- via lazarus wrote: > > > > > On 5/25/23 8:12 PM, john Ward via lazarus wrote: > > >> ? if > > >> ? temp.Locate('temp_no', (tempid),[loPartialkey]) > > >> ? then > > >> ? begin > > >> > > >> ? ? showmessage('we found the field or Partial' + tempid); > > >> ? ? showmessage('current temp_no is '); > > >> ? ? tno := temp.FieldbyName('temp_no').asString; > > >> ?? showmessage('tempno is = ' + tno); > > >> ? ? end; > > >> The above code, executes the 'then', shows me what was searched for BUT > > > when a > > >> data field is displayed, the original record is pointed to, NOT a record > > > further > > >> in the database. > > > > > > > > > i don't see where you did a seek to the record you are trying to get to... > > > granted, it has been a long while since i did anything with FPC/Lazarus or an > > > dBase databases but it would seem there should be an obvious seek action... > > > maybe... > > > > the locate() is a seek action. > > > > But without more info/code it is difficult to give an answer to the OP's > > question. > > > > Michael. > > > > ------------------------------ > > > > Message: 3 > > Date: Fri, 26 May 2023 11:09:12 -0400 > > From: wkitty42 at windstream.net > > To: lazarus at lists.lazarus-ide.org > > Subject: Re: [Lazarus] locate command for dBase > > Message-ID: <9a06d191-09f2-2844-cac4-ed68b75dcc24 at windstream.net> > > Content-Type: text/plain; charset=utf-8; format=flowed > > > > On 5/26/23 7:31 AM, Michael Van Canneyt via lazarus wrote: > > > On Fri, 26 May 2023, wkitty42--- via lazarus wrote: > > >> i don't see where you did a seek to the record you are trying to get to... > > >> granted, it has been a long while since i did anything with FPC/Lazarus or an > > >> dBase databases but it would seem there should be an obvious seek action... > > >> maybe... > > > > > > the locate() is a seek action. > > > > > > ahhhh... i thought it just located whatever is being sought and one still needed > > to actually seek to the record... > > > > > But without more info/code it is difficult to give an answer to the OP's > > > question. > > > > agreed :) > > > > -- > > NOTE: No off-list assistance is given without prior approval. > > *Please keep mailing list traffic on the list where it belongs!* > > > > > > ------------------------------ > > > > Subject: Digest Footer > > > > -- > > _______________________________________________ > > lazarus mailing list > > lazarus at lists.lazarus-ide.org > > https://lists.lazarus-ide.org/listinfo/lazarus > > > > > > ------------------------------ > > > > End of lazarus Digest, Vol 184, Issue 9 > > *************************************** > > > ------------------------------ > > Subject: Digest Footer > > -- > _______________________________________________ > lazarus mailing list > lazarus at lists.lazarus-ide.org > https://lists.lazarus-ide.org/listinfo/lazarus > > > ------------------------------ > > End of lazarus Digest, Vol 184, Issue 10 > ****************************************