Oh ok cool.
Who is currently heading the win32 development and where can I put my name down for that?

Mailing lists / lazarus / 2001-03
15 messages · 8 people ·
Reply by email Subscribe to this list Your subscription
Read-only archive. Use j and k to move between messages.
Oh ok cool.
Who is currently heading the win32 development and where can I put my name down for that?
What about implementing a layer in-between LCL and Win32 and GDK there by eliminating any problems with changing the inner LCL. That way Lazarus could run on any on any end platform, as long as there is a bottom layer for it.
What are the main problem with the Win32 version of lazarus? I would also like to know if…
What are the main problem with the Win32 version of lazarus?
Four weeks ago I tested various bits as thoroughly as I could and found out the following:
------- clip -------------------------
General status:
====================
It seems to me that the WinGTK library has some severe bugs and should be replaced with native Win32 calls asap.
Big problems:
================
* The app consumes 100% of CPU resources all the time, presumably due to speedbutton redraw?
* Occasionally the application will not respond to any input or any mouse command however, it seems to receive mouse events.
* There is a severe memory leak (ca 1 MB/20 secs, speedbuttons?) ---------- clip ---------------
All in all the Win32 stuff is a no-go as long as WinGTK is used as it will probably stay very unstable, being developed by just one single person during his freetime.
Has there been any idea of starting genuine the Win32 port of the LCL? I could possibly help there if there was something to start with.
Markku
Oh ok cool. Who is currently heading the win32 development and where can I put my name…
Gregory Kingsley wroteOh ok cool. Who is currently heading the win32 development
If you start work on it .... You are. :-)
and where can I put my name down for that?
You just did. :-)
What are the main problem with the Win32 version of lazarus? I would also like to know if it is possible to compile it with delphi. It will be much easier.
_________________________________________________________________________ Get Your Private, Free E-mail from MSN Hotmail at http://www.hotmail.com.
What about implementing a layer in-between LCL and Win32 and GDK there by eliminating any…
+ From: Gregory Kingsley
+
+ What about implementing a layer in-between LCL and Win32 and
+ GDK there by eliminating any problems with changing the inner LCL.
+ That way Lazarus could run on any on any end platform, as long
+ as there is a bottom layer for it.
There is already a layer/interface between the LCL and GTK/QT/Win32/whatever. So the LCL is platform independent and has absolute no references to GTK/QT/Win32/whatever.
What I was trying to say is that the interface is still under development and that things might change.
Marc
:-} oops..... are there any sources that I'm going to need, and any documentation (Big…
+ From: Gregory Kingsley
+
+ :-} oops..... are there any sources that I'm going to need, and any
+ documentation (Big shot in a very big dark room) Or do I already have
+ everything I need?
Yup :)
As I wrote earlier in a response to Markku Niskanen
-----
If there are ppl who only have a win32 box and want to join (with the risk that halfway things need to be changed) look in the lcl\interfaces\win32 dir.
The only thing what needs to be done is implementing the TWin32Object :-)
As an example of what methods need to be implemented, look at public part of TGTKObject defined in the gtkint.pp in the lcl\interfaces\gtk dir (the TWin32Object in win32int.pp might be a bad example since it is based upon the old interface)
-----
Marc
:-} oops..... are there any sources that I'm going to need, and any documentation (Big shot in a very big dark room) Or do I already have everything I need?
What are the main problem with the Win32 version of lazarus? I would also like to know if…
Markku Niskanen wroteHas there been any idea of starting genuine the Win32 port of the LCL? I could possibly help there if there was something to start with.
It is/was started long ago, but it isn't continued since the interface between GTK/QT/Win32 and the LCL was changed. These changes are IMO not completely finished (most CNSendmessage stuff needs to be recoded by direct calls), so starting with Win32 would mean that if something in the interface GTK-LCL changes it also has to change in Win32-LCL
But....
If there are ppl who only have a win32 box and want to join (with the risk that halfway things need to be changed) look in the lcl\interfaces\win32 dir.
The only thing what needs to be done is implementing the TWin32Object :-)
As an example of what methods need to be implemented, look at public part of TGTKObject defined in the gtkint.pp in the lcl\interfaces\gtk dir (the TWin32Object in win32int.pp might be a bad example since it is based upon the old interface)
Good luck.
Marc
:-} oops..... are there any sources that I'm going to need, and any documentation (Big…
Gregory Kingsley wrote:-} oops..... are there any sources that I'm going to need,
All the existing source is available in CVS. Just checkout Lazarus. In
/lcl/interfaces/win32
you will find all of the source to date to use the native Win32 API. Since it was last worked on some modifications have been made to the messaging but other than that the basics of whole thing is there. You just need to start filling in some of the blanks.
and any documentation (Big shot in a very big dark room)
There isn't any specific documentation other than what is on the documentation pages:
http://www.lazarus.freepascal.org/lcl_doc/Win32Int.html
It isn't up to date so because I believe it doesn't talk about the messaging correctly but it gives you some idea of how things are setup.
http://www.lazarus.freepascal.org/how_to_code.php3
Or do I already have everything I need?
Other than that you have everything you need. :-)
If you need ANY help on the win32 stuff, let us know. We can even give you an example on how to get started if you want but I think the existing code probably does that. I don't remember how much existing win32 code there is.
Shane
This is the case with all of us. In fact that is the reason that the Win32 interface has fallen behind. We have other tasks that ... well ... shall we say ... earn MONEY. ;-)
I have been wanted to focus on the Win32 native API myself but my available time is at a premium as well however I'll give you hand as I have time.
This is the case with all of us. In fact that is the reason that the Win32 interface has fallen behind. We have other tasks that ... well ... shall we say ... earn MONEY. ;-)
I have been wanted to focus on the Win32 native API myself but my available time is at a premium as well however I'll give you hand as I have time.
Ok cool. I've spent the last couple hours brushing up on the win32 API and GDI etc..... this is gonna be a cool challenge :-}
Please note that I do have a full time job and my contributions will most likely be in drips and drabs but every free moment I have............
PM Gregory Kingsley wroteOk cool. I've spent the last couple hours brushing up on the win32 API and GDI etc..... this is gonna be a cool challenge :-}
When I last looked at it (oh so long ago), I basically started by taking the GTK implementation and using it as a shell, then replacing GTK specific stuff with Win32 stuff. The biggest hurdle I faced was the mapping of LCL messages into Windows messages (LM_ to WM_) and vice versa. That, and creating the Win32 window handler to accept the windows messages and pass them to the generic translation routine and then to the correct control. Windows "objects" can have data tagged to them, so when a control created a new window, I would tag the LCL owner to the object, and thus when my message handler received a message, it could extract the owner back via the window handle.
Looking back on it, I feel that there really must have been a better way. It was so complex I never really got it working, beyond showing a form with some labels and a button. All of that nastiness should still be in there, but you might want to ignore it and see if you can come up with a better mechanism, rather than try to expand what may have been a wrong decision on my part. If you do want to try to use some of it, send me email and I may get a chance this weekend to help deciher what I was doing.
Jeff.
Ok cool. I've spent the last couple hours brushing up on the win32 API and GDI etc.....…
MY HERO!