[Lazarus] Beyond Compare finally moved to LCL

classic Classic list List threaded Threaded
16 messages Options
Reply | Threaded
Open this post in threaded view
|

[Lazarus] Beyond Compare finally moved to LCL

Graeme Geldenhuys-3
Hi,

I just found out that Beyond Compare 4.1 has finally left Kylix & Qt3
and moved their Linux builds to LCL-Qt4. So that means the OSX and Linux
versions now use LCL and the Windows version still uses Delphi. With the
move to LCL, the Linux version now has 64-bit support too, plus many
other nice additions.

You can download the 4.1 beta as a 30-day trial from:
  http://www.scootersoftware.com/download.php?zz=beta41

BC is by far the best comparison tool I have ever used. I've used it now
since the BC 2.0 days, and it has just improved year after year. Awesome
software!


Regards,
  - Graeme -

--
fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal
http://fpgui.sourceforge.net/

--
_______________________________________________
Lazarus mailing list
[hidden email]
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Reply | Threaded
Open this post in threaded view
|

Re: [Lazarus] Beyond Compare finally moved to LCL

leledumbo
Administrator
> I just found out that Beyond Compare 4.1 has finally left Kylix & Qt3
> and moved their Linux builds to LCL-Qt4. So that means the OSX and Linux
> versions now use LCL and the Windows version still uses Delphi. With the
> move to LCL, the Linux version now has 64-bit support too, plus many
> other nice additions.

Great news! I can finally buy it for my Linux. They eventually think Lazarus for Linux is better than the old Kylix. It's a very high jump from Qt 3.3 to 4.8, I believe the user experience will improve a lot.
Reply | Threaded
Open this post in threaded view
|

Re: [Lazarus] Beyond Compare finally moved to LCL

Graeme Geldenhuys-3
On 2015-06-26 20:13, leledumbo wrote:
> Great news! I can finally buy it for my Linux. They eventually think Lazarus
> for Linux is better than the old Kylix.

Yes and No. I think there hand was forced. They wrote their own Qt3 for
CLX, and due to Kylix, was limited to 32-bit only. So I think long term
support was probably a massive push to move to a more up to date
compiler. Their OSX version which was the first version to use LCL, also
has a lot of customisations and fixes applied over the stock LCL. They
ported some of their own Qt3 code to LCL used in BC - all to improve the
usability under OSX. Then the move from OSX to Linux wasn't straight
forward either. LCL-Qt was chosen on both platforms to get some
improvement on consistency. They assured me it wasn't just a matter of a
recompile. :)

Sadly, their experiences seems on par with my findings of LCL. But on a
brighter note, it is good to see commercial software embrace Free Pascal
and Lazarus. It can only help improve these open source projects, and I
hope more companies will follow.

I've been testing the 4.1 beta and the product is awesome! I'll
definitely be upgrading from Linux BC 3.x to the new 4.x license. Beyond
Compare is one of those tools I can't work without.


Regards,
  - Graeme -

--
fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal
http://fpgui.sourceforge.net/

--
_______________________________________________
Lazarus mailing list
[hidden email]
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Reply | Threaded
Open this post in threaded view
|

Re: [Lazarus] Beyond Compare finally moved to LCL

leledumbo
Administrator
> Their OSX version which was the first version to use LCL, also
> has a lot of customisations and fixes applied over the stock LCL. They
> ported some of their own Qt3 code to LCL used in BC - all to improve the
> usability under OSX. Then the move from OSX to Linux wasn't straight
> forward either. LCL-Qt was chosen on both platforms to get some
> improvement on consistency. They assured me it wasn't just a matter of a
> recompile. :)

That's actually kinda expected. People with urgent needs will move much faster, and that's what makes our framework better. We actually need even more commercial companies whose employees are as skillful as scooter software, so the "work on free time only" paradigm that FPC & Lazarus developers use can be pushed by those companies becoming the contributors instead of just users. They get their product done, we got our bu gs fixed and hopefully some new features, too :)
Reply | Threaded
Open this post in threaded view
|

Re: [Lazarus] Beyond Compare finally moved to LCL

Graeme Geldenhuys-3
On 2015-06-27 07:38, leledumbo wrote:
> They get their product done, we got our bu gs fixed
> and hopefully some new features, too :)

I know it doesn't work like that in open source software project, but I
seriously think Lazarus should stop new features for a while and
concentrate on bug fixing and making LCL consistent across platforms.
I've recently had to use LCL for a client, and inconsistencies and bugs
appeared immediately, and just as I remembered them the last time I used
LCL - back in 2006. This doesn't bode well for companies considering
moving code to Lazarus.

fpGUI might not be as large as LCL, or have as many components as LCL,
but is sure is way more consistent across platforms (I'm talking
development, API behaviour wise). In fact I normally only develop under
one platform, then when in comes to building a release for my
applications, I fire up the VM's and compile for other targets. 99.9% of
the time the other targets work just like my main development platform.

Regards,
  - Graeme -


--
_______________________________________________
Lazarus mailing list
[hidden email]
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Reply | Threaded
Open this post in threaded view
|

Re: [Lazarus] Beyond Compare finally moved to LCL

Michael Van Canneyt


On Sat, 27 Jun 2015, Graeme Geldenhuys wrote:

> On 2015-06-27 07:38, leledumbo wrote:
>> They get their product done, we got our bu gs fixed
>> and hopefully some new features, too :)
>
> I know it doesn't work like that in open source software project, but I
> seriously think Lazarus should stop new features for a while and
> concentrate on bug fixing and making LCL consistent across platforms.
> I've recently had to use LCL for a client, and inconsistencies and bugs
> appeared immediately, and just as I remembered them the last time I used
> LCL - back in 2006. This doesn't bode well for companies considering
> moving code to Lazarus.

I am strongly beginning to feel something is wrong with me...

I can't remember noticing anything beyond the fact that it is a
different look - which is to be expected if you switch OS - and
that font sizes are sometimes an issue :(

Can you give some examples ?
Maybe report them to the bug tracker, so they can be fixed.

The same should maybe be asked from the people at scooter software.

Michael.

--
_______________________________________________
Lazarus mailing list
[hidden email]
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Reply | Threaded
Open this post in threaded view
|

Re: [Lazarus] Beyond Compare finally moved to LCL

Graeme Geldenhuys-3
On 2015-06-27 10:31, Michael Van Canneyt wrote:
> I am strongly beginning to feel something is wrong with me...

You are predominately a backend man. ;-)

> Can you give some examples ?

Sure...

 * Events fired in different orders depending on the widgetset
   you use. I can't remember which components it was (I think
   TListView), but if I really must I can find out exactly.

 * TStatusBar.Panels[].Width only works in LCL-Win32/64. Under
   OSX and Linux they are simply ignored. I had to apply an ugly
   "floating panel" work-around to position online/offline status
   images on the right edge of the statusbar.

 * Button (or maybe BitButton) clipped button images under OSX,
   but doesn't under Linux and Windows.

 * Properties exist on a component and available to all widgetsets,
   yet is only functional for one widgetset. The developer isn't warned
   about this in the code editor (eg: code completion popup), only in
   the Object Inspector's Restricted tab. I don't verify every single
   property I use via Object Inspector before I use it - I doubt others
   do too.

...I could list many more if I dug deeper and thought about it a bit
more. I didn't make notes of them all and in hindsight, I should have
reported them all on Mantis. My bad.

Anyway, I found these within the first day of working with a LCL
application. Yes, they might sound trivial on their own, but add them
up, and it is a huge time waster and annoyance for the developer having
to find work-arounds of something that should just work.

LCL's whole theory is making your programs portable, write once and
compile everywhere etc... But the fact of the matter is, it hardly works
out like that. I've seen it, Scooter Software has seen it, and probably
many more. As I said, I found issues like these back in 2006. It caused
so much frustration that I started a new GUI toolkit to prevent such
issues. Fast forward to 2015, and LCL still behaves the same as it did
in 2006 - that's almost 10 years later! Yes, yes, I know some things
have improved too.

I fully understand this is an open source project. Everybody wants to
work on things they like, everybody wants to introduce the newest and
latest feature or component.... Nobody wants to fix bugs. But hey, the
Lazarus project doesn't have to feel bad, Embarcadero is doing exactly
the same thing with Delphi (<sarcasm>just look at all the happy
customers in the Delphi newsgroups).


Regards,
  - Graeme -

--
fpGUI Toolkit - a cross-platform GUI toolkit using Free Pascal
http://fpgui.sourceforge.net/

--
_______________________________________________
Lazarus mailing list
[hidden email]
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Reply | Threaded
Open this post in threaded view
|

Re: [Lazarus] Beyond Compare finally moved to LCL

zeljko
In reply to this post by Graeme Geldenhuys-3
On 06/27/2015 09:59 AM, Graeme Geldenhuys wrote:

> On 2015-06-27 07:38, leledumbo wrote:
>> They get their product done, we got our bu gs fixed
>> and hopefully some new features, too :)
>
> I know it doesn't work like that in open source software project, but I
> seriously think Lazarus should stop new features for a while and
> concentrate on bug fixing and making LCL consistent across platforms.
> I've recently had to use LCL for a client, and inconsistencies and bugs
> appeared immediately, and just as I remembered them the last time I used
> LCL - back in 2006. This doesn't bode well for companies considering
> moving code to Lazarus.
> fpGUI might not be as large as LCL, or have as many components as LCL,
> but is sure is way more consistent across platforms (I'm talking
> development, API behaviour wise). In fact I normally only develop under
> one platform, then when in comes to building a release for my
> applications, I fire up the VM's and compile for other targets. 99.9% of
> the time the other targets work just like my main development platform.

Use QtLCL on all platforms and you'll get same result as with fpgui (of
course Qt takes OS theme look, so that's difference definitelly, but you
can get same look at all platforms with eg. -style windows ... which
uses win95 style). QtLCL is also LCL. IMO, gtk2 (and gtk3) is kinda of
kindergarten library and it'll never fit lcl needs.

zeljko


--
_______________________________________________
Lazarus mailing list
[hidden email]
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Reply | Threaded
Open this post in threaded view
|

Re: [Lazarus] Beyond Compare finally moved to LCL

Graeme Geldenhuys-3
On 2015-06-27 11:17, zeljko wrote:
> Use QtLCL on all platforms and you'll get same result as with fpgui (of
> course Qt takes OS theme look, so that's difference definitelly

I mentioned that too. It is probably the exact reason why Scooter
Software chose to use LCL-QT on OSX and Linux... To try and get some
consistency in LCL.

In this discussion I'm not referring to looks or themes at all. I'm only
referring to the underlying workings of LCL. Events, properties,
available features etc.

Regards,
  - Graeme -


--
_______________________________________________
Lazarus mailing list
[hidden email]
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Reply | Threaded
Open this post in threaded view
|

Re: [Lazarus] Beyond Compare finally moved to LCL

Michael Van Canneyt
In reply to this post by Graeme Geldenhuys-3


On Sat, 27 Jun 2015, Graeme Geldenhuys wrote:

> On 2015-06-27 10:31, Michael Van Canneyt wrote:
>> I am strongly beginning to feel something is wrong with me...
>
> You are predominately a backend man. ;-)

Currently yes. But I've written numerous GUI programs in Lazarus.

>> Can you give some examples ?
>
> Sure...
>
> * Events fired in different orders depending on the widgetset
>   you use. I can't remember which components it was (I think
>   TListView), but if I really must I can find out exactly.
>
> * TStatusBar.Panels[].Width only works in LCL-Win32/64. Under
>   OSX and Linux they are simply ignored. I had to apply an ugly
>   "floating panel" work-around to position online/offline status
>   images on the right edge of the statusbar.
>
> * Button (or maybe BitButton) clipped button images under OSX,
>   but doesn't under Linux and Windows.
>
> * Properties exist on a component and available to all widgetsets,
>   yet is only functional for one widgetset. The developer isn't warned
>   about this in the code editor (eg: code completion popup), only in
>   the Object Inspector's Restricted tab. I don't verify every single
>   property I use via Object Inspector before I use it - I doubt others
>   do too.
>
> ...I could list many more if I dug deeper and thought about it a bit
> more. I didn't make notes of them all and in hindsight, I should have
> reported them all on Mantis. My bad.
>
> Anyway, I found these within the first day of working with a LCL
> application. Yes, they might sound trivial on their own, but add them
> up, and it is a huge time waster and annoyance for the developer having
> to find work-arounds of something that should just work.

Well, in view of the total number of components distributed with Lazarus
this seems a rather minor set of problems (although I believe you when you
say you'll find more if you set your mind on it). Of course, any problem is
a huge problem if you happen to be the one stumbling on it.

In each case, such things should be reported, or else they will definitely
not get fixed in the upcoming next 10 years either :)
In my experience, the Lazarus team does try to fix reported problems to a
reasonable extent, when they make a new release.

Michael.

--
_______________________________________________
Lazarus mailing list
[hidden email]
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Reply | Threaded
Open this post in threaded view
|

Re: [Lazarus] Beyond Compare finally moved to LCL

Craig Peterson-2
In reply to this post by Graeme Geldenhuys-3

> On Jun 26, 2015, at 2:42 PM, Graeme Geldenhuys <[hidden email]> wrote:
> Yes and No. I think there hand was forced. They wrote their own Qt3 for
> CLX, and due to Kylix, was limited to 32-bit only.

Credit where credit's due, the CLX/Qt3 port was originally Andreas Hausladen's.  We did do a lot of work on it, but the public project had died by that point where we could have contributed patches.

> So I think long term support was probably a massive push to move to a more up to date
> compiler.

Gaining 64-bit support was definitively the primary motivator.  There's obviously been a ton of other benefits on the development side too, and it's been our plan to switch for quite a while.  The OS X version just took priority for v4.0 since we could limp along on Kylix.

> Their OSX version which was the first version to use LCL, also
> has a lot of customisations and fixes applied over the stock LCL. They
> ported some of their own Qt3 code to LCL used in BC - all to improve the
> usability under OSX. Then the move from OSX to Linux wasn't straight
> forward either. LCL-Qt was chosen on both platforms to get some
> improvement on consistency. They assured me it wasn't just a matter of a
> recompile. :)

Minor correction: We're using LCL-Carbon on OS X.  When I mentioned reusing our Qt code, I was just referring to on Linux. We have a lot of behavior the VCL/LCL aren't designed for, a ton of custom controls, and extensive platform specific look & feel customizations, all of which involve calls to the widget set or raw APIs.  Consistency between LCL-Carbon and LCL-Qt for default behavior is extremely high by comparison.

AFAIK we've submitted all/most of our LCL changes to the bug tracker, though I'll admit David hasn't been proactive about actually committing them into the official repository.  The big trouble with sharing the rest of our enhancements is that they're in our VCL/LCL(/CLX) abstraction layer.

--
Zoë Peterson
Scooter Software


--
_______________________________________________
Lazarus mailing list
[hidden email]
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Reply | Threaded
Open this post in threaded view
|

Re: [Lazarus] Beyond Compare finally moved to LCL

Michael Van Canneyt


On Sat, 27 Jun 2015, Zoë Peterson wrote:

>

> AFAIK we've submitted all/most of our LCL changes to the bug tracker,
> though I'll admit David hasn't been proactive about actually committing
> them into the official repository.  The big trouble with sharing the rest
> of our enhancements is that they're in our VCL/LCL(/CLX) abstraction
> layer.

A wholehearted 'Thank you' is on it's place, I think :)

Michael.
--
_______________________________________________
Lazarus mailing list
[hidden email]
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Reply | Threaded
Open this post in threaded view
|

Re: [Lazarus] Beyond Compare finally moved to LCL

zeljko
In reply to this post by Craig Peterson-2
On 06/27/2015 04:05 PM, Zoë Peterson wrote:

> Minor correction: We're using LCL-Carbon on OS X.  When I mentioned reusing our Qt code, I was just referring to on Linux. We have a lot of behavior the VCL/LCL aren't designed for, a ton of custom controls, and extensive platform specific look & feel customizations, all of which involve calls to the widget set or raw APIs.  Consistency between LCL-Carbon and LCL-Qt for default behavior is extremely high by comparison.

I could not get lclcarbon consistent as qtlcl for my commercial apps.
Yes, it's harder to deploy QtLCL (especially on mac) but it works :)

zeljko


--
_______________________________________________
Lazarus mailing list
[hidden email]
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Reply | Threaded
Open this post in threaded view
|

Re: [Lazarus] Beyond Compare finally moved to LCL

Graeme Geldenhuys-3
In reply to this post by Craig Peterson-2
On 2015-06-27 15:05, Zoë Peterson wrote:
> AFAIK we've submitted all/most of our LCL changes to the bug tracker,

Fantastic to hear - many thanks for that and the updated info.


Regards,
  - Graeme -



--
_______________________________________________
Lazarus mailing list
[hidden email]
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Reply | Threaded
Open this post in threaded view
|

Re: [Lazarus] Beyond Compare finally moved to LCL

GordonC
In reply to this post by Graeme Geldenhuys-3
  I am fully in agreement with Graeme.  Have given up working
with Lazarus (I'm now only a hobby programmer) because of
the constant changes and inconsistencies.   In old age, I prefer
stability.

Gordon.

On 06/27/2015 07:59 PM, Graeme Geldenhuys wrote:
> I know it doesn't work like that in open source software project, but I
> seriously think Lazarus should stop new features for a while and
> concentrate on bug fixing and making LCL consistent across platforms.


--
_______________________________________________
Lazarus mailing list
[hidden email]
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Reply | Threaded
Open this post in threaded view
|

Re: [Lazarus] Beyond Compare finally moved to LCL

leledumbo
Administrator
In reply to this post by Craig Peterson-2
> AFAIK we've submitted all/most of our LCL changes to the bug tracker, though I'll admit David hasn't been proactive about actually committing them into the official repository.

Lovely, huge thanks :)