I tried to port the SpinEdit Example from the SDK to freepascal.But it does not work.A lot things work similar in lazarus and freepascal to delphi and the supported librarys are very interesting.But there remain inkompatibilitys:

Thinking in other things I want to try again the Delphi Plugin Template in Lazarus and, surprisingly, with a little modifications we can create a valid DLL in order to be used as a NeoBook plugin. I do not try with the Delphi Spin Edit Sample, but, since the basic template works, probably we can develop plugins with Lazarus without problems. The only thing I can't solve at the moment is the "DllProc", which is something that apparently do not exists (?) in a Lazarus library. But by my experience very few plugins need to use something like that.

Neosoft Support wrote:Thanks for sharing this with us David! Is it OK if we include your sample in a future version of the plug-in SDK?

You're welcome! Of course you can use the above sample for whatever you wanted Dave. However the sample I post above is a modification of the "Delphi Template", which itself is not a plugin sample. In few words, I think the above sample is not the better to be added into the SDK. Please let me sometime in order to prepare a better sample, which do not remove the comments (which can be useful for new developers) and add some "real sample" capabilities.

Yesterday I found a problem with Lazarus forms which apparently can be solve, and now a Lazarus plugin can use forms not only for action editor's but also for runtime purposes. However a problem remain. Apparently the "CreateParented" implementation is not perfect in Lazarus or at least do not work like we can expect in Delphi. This means that we can loss the form focus and even when we can try something like put the form "On Top" the behaviour is not exactly the same that we can vew in Delphi where we use "CreateParented" usually.

Anyway the bellow linked Zip contain a Lazarus plugin which include one sample action with their appropiate action editor form. The Zip include the source code and also the compiled NBP. I think that with some more work and maybe some little restrictions we can at least use Lazarus to create some NeoBook plugin. Depend on the plugin and the developer I think Lazarus can be also a good tool since their price cannot be compared with the Delphi price. So anybody can now at least experimenting a bit more with Lazarus and their possible usage.

Great to hear that you make progress on this.When I find some time I will have a look at your new template.

Regards

Thanks Hans. In fact I make very little changes in the original Delphi template: just remove the "@" operator when reference some methods and remove the DLL Procedure, which appear unusable. Doing this we obtain a valid template but with no user interface. If we want to use forms (which usually is) we need to do something like the sample I attach above (the lazarus2.zip sample).

Basically we need to add the Interfaces and Forms units and call the "Forms.Application.Initialize()" at the begin. Doing this we can use forms, but with the problem I mentioned before: apparently the "CreateParented" function do not works like we can expect and this can cause the "form focus loss problem". Anyway I think that Lazarus can be used to do at least certain things.