Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Mailing lists / lazarus / 2000-02

Lazarus broken

5 messages · 4 people ·

Reply by email Subscribe to this list Your subscription

Read-only archive. Use j and k to move between messages.

Marc Weustink
to Michal Bukovjan: just wanted to do something tonight, checked out latest Lazarus, and it compiles, but if…
you wrote 7 lines
Hello, just wanted to do something tonight, checked out latest Lazarus, and it compiles, but if I run it the form goes away and hides. It looks like someone broke the form's measurement code. Could someone look into that and fix it (back)?

As I said the latest changes do some funny things with the main window. In my case the main form jumped to the bottom of my screen. It was still visible.

Show quoted text 9 lines
Upon quick inspection I found that CM_SHOWINGCHANGED was added and that some portions code around these showing/hiding/resizing behavior was added. I looked at the new code and the following came to my mind : 1. Why CM_SHOWINGCHANGED. It is totally useless, even in original Delphi (5) VCL - I double-checked that, and it looks like a remnant from older version. Just one more useless function in core class -> more bloat. Everything this function does can be accomplished in UpdateShowing virtual method (and in fact, is, just by performing this message).

To be compatible and for porting reasons I choose to implement CM_SHOWINGCHANGED. If it is completely useless, I don't know. I don't feel like to dig into it right now. The only thing I know was that the old code was broken. It didn't work when you wanted to create components when the parent component already was visible.

I think we better stay close to delphi since that is documented. If we all try to invent our own ways, we end up with only bits and pieces only one knows what is going on, hanging together like a heap of sand.

Show quoted text 7 lines
2. This leads me to second question : Are we trying to copy the Borland VCL (and pray Borland does not take any legal action) or just do a better, more versatile, not Win32 centric, Borland compatible VCL? As I looked at the new code, it is just a plain copy & paste from the Borland VCL. This applies to a LOT of methods. In some, there is clearly no other way, but there is a lot of code which could have been done differently and it was not, just copy and paste.

For all Protected, Public, Published parts I say yes. That is the interface defined by the VCL. The private code is something we make up ourselves.

3. If you make such changes that Lazarus won't run at least as it did (at the first glance), please think twice about commiting them. It is very annoying to fix things that already worked instead of working out unfinished parts of the project.

I only commit code when I checked it twice that everything works OK (Or at least that others still can work with it)

Marc

Reply by email

Marc Weustink
to Marc Weustink
you wrote 5 lines
>For all Protected, Public, Published parts I say yes. That is the interface >defined by the VCL. The private code is something we make up ourselves. I doubt that you are allowed to do this. There is a copyright clause in all Delphi units. Therefore you should not copy them. You may be allowed to name

I only meant the interface, not the code (of course). And yes you aren't allowed to copy them, but you may write them your self.

Marc

Reply by email

Alexander Mehlhorn AHM
to Marc Weustink: As I said the latest changes do some funny things with the main window. In my case the…
For all Protected, Public, Published parts I say yes. That is the interface defined by the VCL. The private code is something we make up ourselves.

{*******************************************************} { } { Borland Delphi Visual Component Library } { } { Copyright (c) 1999 Inprise Corporation } { } {*******************************************************}

I doubt that you are allowed to do this. There is a copyright clause in all Delphi units. Therefore you should not copy them. You may be allowed to name your properties in the same manner and even to name your components in the same manner but you should not try to implement any of the code using copy and paste no matter if the procedure is
private/public/protected/published/global or whatever else.

Reply by email

Michael A. Hess
to Michal Bukovjan: just wanted to do something tonight, checked out latest Lazarus, and it compiles, but if…
Michal Bukovjan wrote 5 lines
2. This leads me to second question : Are we trying to copy the Borland VCL (and pray Borland does not take any legal action) or just do a better, more versatile, not Win32 centric, Borland compatible VCL?

We are suppose to be duplicating the features of the Delphi VCL. WE CAN NOT COPY the VCL.

As I looked at the new code, it is just a plain copy & paste from the Borland VCL. This applies to a LOT of methods. In some, there is clearly no other way, but there is a lot of code which could have been done differently and it was not, just copy and paste.

We can not copy code out of the VCL. This violate the license agreement we all bought into when we purchased our copies of Delphi. Yes it is true that some of the methods only contain one or two lines and there really isn't any other way to accomplish the same feature.

If it can be done differently, whether it is better or not it should be done differently to insure that we are not using code from the VCL.

When Lazarus was started we tried to make sure that we were not using code from the VCL even though it wasn't deemed to serious since Delphi wasn't being ported to Linux. Well guess what. As we all know that is something they are now working on. That means we would be competition to their product. We had best not be using any of their code to do that.

If you see some code that can be modified so that it does match the way that the VCL does it, please make those changes.

The "better, more versatile, not Win32 centric, Borland compatible VCL" question has been talked over alot in the past. Some leaned on the make it Delphi like side and others leaned on the totally Delphi compatible side. I'm not even sure where we are falling with the project at this point. With Borland/Corel working on their own Delphi compatible version I don't know if we have to concern ourselves with making Lazarus totally compatible with existing Delphi code. KCL is an example of code being somewhat Delphi like but not Delphi compatible.

==== Programming my first best destiny! ==== Michael A. Hess Miracle Concepts, Inc. http://www.miraclec.com

Reply by email

Michal Bukovjan

Hello,

just wanted to do something tonight, checked out latest Lazarus, and it compiles, but if I run it the form goes away and hides.

It looks like someone broke the form's measurement code. Could someone look into that and fix it (back)?

Upon quick inspection I found that CM_SHOWINGCHANGED was added and that some portions code around these showing/hiding/resizing behavior was added. I looked at the new code and the following came to my mind :

1. Why CM_SHOWINGCHANGED. It is totally useless, even in original Delphi (5) VCL - I double-checked that, and it looks like a remnant from older version. Just one more useless function in core class -> more bloat. Everything this function does can be accomplished in UpdateShowing virtual method (and in fact, is, just by performing this message).

2. This leads me to second question : Are we trying to copy the Borland VCL (and pray Borland does not take any legal action) or just do a better, more versatile, not Win32 centric, Borland compatible VCL? As I looked at the new code, it is just a plain copy & paste from the Borland VCL. This applies to a LOT of methods. In some, there is clearly no other way, but there is a lot of code which could have been done differently and it was not, just copy and paste.

3. If you make such changes that Lazarus won't run at least as it did (at the first glance), please think twice about commiting them. It is very annoying to fix things that already worked instead of working out unfinished parts of the project.

Just some of my tonight's bitter thoughts.

Still, have fun

Michal Bukovjan

____________________________________________________________________ Get your own FREE, personal Netscape WebMail account today at http://webmail.netscape.com.

Reply by email