Recent

Author Topic: Ideas / MOVED FROM: We are planning the next release: Lazarus 2.0.10  (Read 4769 times)

lucamar

  • Hero Member
  • *****
  • Posts: 4219
Re: Ideas / MOVED FROM: We are planning the next release: Lazarus 2.0.10
« Reply #15 on: June 25, 2020, 08:59:55 pm »
I do starting Lazarus lots more often than rebuilding it, so I prefer quick loading rather than rebuilding-less packages.

Not having to rebuild the whole IDE (+LCL) would be a bonus in platforms where the (global) install is made to non-user-writeable directories, like in most *nixes.

In those platforms, when you do a complete rebuild of the IDE you end up with an almost whole duplicate installation under the user's home directory. That's one of the reasons why we almost never use design-time packages, which is a pity: there are so many nice-to-have things out there ... :'(
Turbo Pascal 3 CP/M - Amstrad PCW 8256 (512 KB !!!) :P
Lazarus/FPC 2.0.8/3.0.4 & 2.0.12/3.2.0 - 32/64 bits on:
(K|L|X)Ubuntu 12..18, Windows XP, 7, 10 and various DOSes.

Martin_fr

  • Administrator
  • Hero Member
  • *
  • Posts: 10917
  • Debugger - SynEdit - and more
    • wiki
Re: Ideas / MOVED FROM: We are planning the next release: Lazarus 2.0.10
« Reply #16 on: June 25, 2020, 10:29:55 pm »
Not having to rebuild the whole IDE (+LCL) would be a bonus in platforms where the (global) install is made to non-user-writeable directories, like in most *nixes.
I am not sure, but what happens if you start the IDE as root, before you rebuild? (or sudo lazbuild ....). (you may need to tweak the primary conf path)
I do not know if there are extra checks, but I thought the decision to compile in the home dir, was made dependent on the write-ability of the install dir?

Gald

  • Full Member
  • ***
  • Posts: 107
Re: Re: We are planning the next release: Lazarus 2.0.10
« Reply #17 on: July 13, 2020, 10:31:24 am »
i have some suggestions:

1- improve the ide , docking

Lazarus already has 2 docking managers:
https://wiki.freepascal.org/Docking

If you found anything not working correctly, please submit the issue to the bugtracker:
http://bugs.freepascal.org/set_project.php?project_id=6

But please don't make docking the default. For most beginners docking may be good but for some users (like me), who often switch between programs really need to 'peek' the things behind the IDE's windows.

2- improve the ui (modern design ) for all components


Did you meant the appearance? You cannot simply improve the appearance of widgetsets because many of them have the appearance determined by the OS.

But there were many discussions about modern ui, you may interested to join in the discussions:
https://forum.lazarus.freepascal.org/index.php/topic,36502.msg243375.html#msg243375
https://forum.lazarus.freepascal.org/index.php/topic,49572.msg359763.html#msg359763
https://forum.lazarus.freepascal.org/index.php/topic,49503.msg358932.html#msg358932

3- reduce the exe file directly when deploy no need for stip exe


Did you meant the size of the compiled binaries? If yes you should read the wiki before you say something about it.

4- add more components to online package manager

Yeah, this is great. But as far as I know OPM is maintained by a single person. If you have time, you should contact him and offer your help.

5-find easier way to add new components with rebuild the ide again

I guess you meant installing new component without rebuilding the IDE. Again it has been discussed, search the forum if you're interested. It is not as easy as you thought and it has disadvantages of doing it.


I appreciate your suggestions to make Lazarus better, unfortunately ... maybe you didn't know ... we are lack of manpower. Hopefully, all your wishes will come true but it needs time.


4- add more components to online package manager
Are the 179 packages in online package manager not enough?

Human is greed. If you give him a thousand, he will ask ten thousands.
WordPress has more than 50 thousands plugins and still increasing.

======================


There's always a big reply, a wall text to a tiny simple question.  :o
You can write a book about that, but you can't say OP is wrong!
I remember an episode of Simpsons when Homer says something like: everything that need 12 steps does not worth it.


Wait, do not take any bad precipitate conclusion about me. I'm a nice guy  :-*

Please, make in mind that I just saying things that need to be said. I have no intention to offend no one. This type of request was made by people who care. I love Lazarus and I'm here wasting more time than you can think to write this because my English is not at this level, so I doing research to make it readable for you because I love the idea behind Lazarus.

So i'll explain my point:

Me, like thousands of developers, look at Lazarus sometimes, to decide if it's time to move to it.
What you think we are waiting for?
Just the things that OP said.

I'll speak for me:

Previews Lazarus that I tried was 1.8 I guess.
Now I'm with 2.0.8, only because a saw on a Telegram group that there's a way to dock IDE.
Unfortunately, there's no tab to view the Form. Is a kind of bug on this package, so my Form is always hidden behind the IDE.
You'll say to me: go to a forum x, make a question, wait for x days, and blablabla.
But me and 99% of others will just drop this version and wait for a solid one.
It's the same argument to make a Windows user install Arch Linux.
- b-b-but is better, and you can ask for these drivers on an open forum
We both know that this won't happen.


Lets talk about some missing features:


Docked IDE.

Back in the '90s, when computers have small resolutions, a undocked IDE would make sense, but nowadays this only makes the design of interfaces more complicated (where's my Form/more clicks to get to the form designer/or select some component to go back and do other stuff).
There is a ZERO argument today for an undocked IDE. How much modern IDE's on other languages are undocked today? Must have a reason. Think about it!


Improve the IDE/UI (some cases)

1- Drag & drop components to the form.

2- Money edit is very important. I know, there's a lot of ways to do it, but there's no single edit to make it. I'm not saying about third components, but the vanilla Lazarus one!

3- ButtonEdit but with a button inside the edit, not a new button side by side.
Same above from CalcEdit, DateEdit, and TimeEdit. Realy, there's no way to use these components in a modern scenario.

4- Flat components. At least make then look better on Windows, similar to Win10 or Flat. But they look like Win95. I can say that I'm wrong, but in a survey, more than 90% will confirm what I'm saying. I have never tried then on Linux, Android, or OSX, but for some reason, I do not expect a native and beauty application.

4- Dark Mode on IDE, a beautiful editor. Have you ever seen how pascal is beautiful on it?
(https://forum.sublimetext.com/uploads/default/original/3X/a/d/ad0f3b8f1d3ad75a2310582b38251776a6a7887c.png)
Ps: image in very bad quality. But trust in me, so beautiful that you'll want to live in these colors...

5- Components to rearrange layout on Form. Modern Delphi has a lot of it on VLC because the modern World needs it, modern monitors, resize Forms, etc. It's a new way (not so new) to think about design.

6- Poor access to specific parts of a component. Ex: The text caption on a GroupBox. How to change his color, font, align, how to make a bit rectangular border, instead of a line on mid-height of his side? We want to dominate each part of each component.


Add more components to online package manager


This point is a consequence of a low number of developers.
If Lazarus team (or only one guy) make some stuff and other more to modernize his IDE, a huge number of new developers will come and than Lazarus will start to fly to the Moon.

- Why you don't make it yourself? (maybe you ask)
IF I have the knowledge necessary to do it, would make my contributions.
Now my goal is to make components and experts to Lazarus. By now I'm studying how to create components in Delphi and make extensive use of their Open Tools API, because a have a lot of good ideas to make free content to simplify things on Delphi and in Lazarus. OTA is much more easy to do it against hack the IDE. I'm not in this level.
What I didn't know yet is if Lazarus has something like OTA.
I'll ask that in another session of this forum.
I really need it to improve somethings of Lazarus IDE and help as i can.
But this is about another talk.


Find easier way to add new components with rebuild the ide again

This is really necessary.
- But you can read about it on a forum, and...
No, this is really necessary.

Lazarus can be the ultimate word in Pascal development. Can grow fast and became popular, even in universities, and became the language of the moment and what we dreamed!
But it depends only on the mind of developers. Do they want to stay in the past, by legacy propositions or hit the future and became big?

#GoLazarus!
« Last Edit: July 13, 2020, 11:03:28 am by Gald »
Lazarus 2.0.12 r64642 FPC 3.2.0 x86_64-win64-win32/win64/Manjaro KDE 21
AMD Ryzen 3 1300X Quad-Core Processor 3.50 GHz / 8,00 GB RAM / GTX 1500 TI / 2TB M.2 NVMe

PascalDragon

  • Hero Member
  • *****
  • Posts: 5904
  • Compiler Developer
Re: Re: We are planning the next release: Lazarus 2.0.10
« Reply #18 on: July 13, 2020, 11:01:31 am »
Docked IDE.

Back in the '90s, when computers have small resolutions, a undocked IDE would make sense, but nowadays this only makes the design of interfaces more complicated (where's my Form/more clicks to get to the form designer/or select some component to go back and do other stuff).
There is a ZERO argument today for an undocked IDE. How much modern IDE's on other languages are undocked today? Must have a reason. Think about it!

There are enough people out there that don't want a docked IDE, thus the default of Lazarus is undocked. And if you want a docked one you can install AnchorDockingDsgn and be done with it.

Improve the IDE/UI

3- ButtonEdit but with a button inside the edit, not a new button side by side.
Same above from CalcEdit, DateEdit, and TimeEdit. Realy, there's no way to use these components in a modern scenario.

The LCL works with various backends, namely the Win32 API, GTK, Qt, Carbon, Cocoa, MUI to name the current ones. They all have different restrictions and for some this is simply not possible.

4- Flat components. At least make then look better on Windows, similar to Win10 or Flat. But they look like Win95. I can say that I'm wrong, but in a survey, more than 90% will confirm what I'm saying. I have never tried then on Linux, Android, or OSX, but for some reason, I do not expect a native and beauty application.

The main strength of Lazarus is the native look and it's something that many people stress they prefer with Lazarus.

4- Dark Mode on IDE, a beautiful editor. Have you ever seen how pascal is beautiful on it?
(https://forum.sublimetext.com/uploads/default/original/3X/a/d/ad0f3b8f1d3ad75a2310582b38251776a6a7887c.png)
Ps: image in very bad quality. But trust in me, so beautiful that you'll want to live in these colors...

I personally hate dark mode.

Also it does not help that on Windows the necessary APIs for this are undocumented and are changing between versions.

5- Components to rearrange layout on Form. Modern Delphi has a lot of it on VLC because the modern World needs it, modern monitors, resize Forms, etc. It's a new way (not so new) to think about design.

Lazarus has a very well working layout engine. Use it.

6- Poor access to specific parts of a component. Ex: The text caption on a GroupBox. How to change his color, font, align, how to make a bit rectangular border, instead of a line on mid-height of his side? We want to dominate each part of each component.

Again this is very specific to the backends. Not everything is possible on every backend.

Find easier way to add new components with rebuild the ide again

This is really a problem.
- But you can read about it on a forum, and...
No, it's a problem and needs to be fixed.

First of, no it's not a problem. The Lazarus devs made rebuilding the IDE as easy as possible and I had more hassles with the dynamic package installation back when I still used Delphi than I had with Lazarus rebuilding itself.

That said it does depend on the availability of dynamic packages in FPC. This feature is a work-in-progress cause it's definitely not trivial. At the earliest FPC 3.4 will provide this, but even then Lazarus can't completely switch away from rebuilding itself as 1) at first it still needs to support FPC 3.2 and 2) dynamic packages won't be available on all systems that Lazarus supports (at least not initially for targets like the BSDs and never for targets like the Amigas).

wp

  • Hero Member
  • *****
  • Posts: 12689
Re: Re: We are planning the next release: Lazarus 2.0.10
« Reply #19 on: July 13, 2020, 11:16:46 am »
4- Flat components. At least make then look better on Windows, similar to Win10 or Flat. But they look like Win95. I can say that I'm wrong, but in a survey, more than 90% will confirm what I'm saying. I have never tried then on Linux, Android, or OSX, but for some reason, I do not expect a native and beauty application.
I don't understand what you are doing. When you run Lazarus it uses themes by default, and every Win application will have the native look and feel. When you get the old-fashioned Win95 your are doing something wrong (unchecked theme support in the project options?)

JuhaManninen

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 4565
  • I like bugs.
Re: Re: We are planning the next release: Lazarus 2.0.10
« Reply #20 on: July 13, 2020, 12:13:11 pm »
Back in the '90s, when computers have small resolutions, a undocked IDE would make sense, but nowadays this only makes the design of interfaces more complicated (where's my Form/more clicks to get to the form designer/or select some component to go back and do other stuff).
There is a ZERO argument today for an undocked IDE. How much modern IDE's on other languages are undocked today? Must have a reason. Think about it!
Not true. I want an undocked IDE!
I stretch the source editor from top to bottom, partly overlapping other windows. I want to see as much code as possible at a time. When I want to see details of other windows (compiler msg, search results etc.) I click them active.

Quote
2- Money edit is very important. I know, there's a lot of ways to do it, but there's no single edit to make it. I'm not saying about third components, but the vanilla Lazarus one!
That is a job of external packages. Lazarus distributes components that are Delphi VCL compatible and/or needed by the IDE itself.
I believe there is a Money edit control already in some 3rd party package.

Quote
3- ButtonEdit but with a button inside the edit, not a new button side by side.
Same above from CalcEdit, DateEdit, and TimeEdit. Realy, there's no way to use these components in a modern scenario.
You must be testing some ancient version of Lazarus/LCL. The bounds of ButtonEdit now include the button. It was fixed a long time ago.

Quote
4- Flat components. At least make then look better on Windows, similar to Win10 or Flat. But they look like Win95. I can say that I'm wrong, but in a survey, more than 90% will confirm what I'm saying. I have never tried then on Linux, Android, or OSX, but for some reason, I do not expect a native and beauty application.
LCL controls map to native widgets. It does not draw them by itself as some other GUI libs do. Thus your note is weird.

Quote
5- Components to rearrange layout on Form. Modern Delphi has a lot of it on VLC because the modern World needs it, modern monitors, resize Forms, etc. It's a new way (not so new) to think about design.
So you haven't even looked at LCL's nice layout system with anchors and all?

Anyway, patches are welcome ... :)
Mostly Lazarus trunk and FPC 3.2 on Manjaro Linux 64-bit.

wp

  • Hero Member
  • *****
  • Posts: 12689
Re: Re: We are planning the next release: Lazarus 2.0.10
« Reply #21 on: July 13, 2020, 12:22:27 pm »
Quote
2- Money edit is very important. I know, there's a lot of ways to do it, but there's no single edit to make it. I'm not saying about third components, but the vanilla Lazarus one!
That is a job of external packages. Lazarus distributes components that are Delphi VCL compatible and/or needed by the IDE itself.
I believe there is a Money edit control already in some 3rd party package.
Yes, there is one in RX (available via OPM), and I recently added another one to ExCtrls (https://wiki.lazarus.freepascal.org/ExCtrls#TCurrSpinEditEx).

Handoko

  • Hero Member
  • *****
  • Posts: 5396
  • My goal: build my own game engine using Lazarus
Re: Ideas / MOVED FROM: We are planning the next release: Lazarus 2.0.10
« Reply #22 on: July 13, 2020, 12:28:15 pm »
@Gald

Hello Gald,
Welcome to the forum.

Thank you for sharing what you thought about Lazarus. Lazarus is an open source project, we need volunteers to make it better. Many of your suggestions are personal preferences, some may not agree with you. So please don't feel hurt if they are not accepted.

Missing Features: Docked IDE


Actually the feature is already existed. It's just not enabled by default. I have a 24" 1920 x 1080 pixels monitor but I prefer non-docked IDE. I really tried the docked one, no it is not for me. As I cannot the say non-docked is the best for others, you should not push others to use docked IDE.

Lazarus non-docked IDE works good if you use it along with the "Desktop" feature and enable "Show single button in Taskbar" option.

Improve the IDE/UI


Some of your suggestions sounds reasonable, but still need more details and discussions. It is better to post 1 suggestion per thread rather than a list of a lot of ideas. Then post it under Miscellaneous > Suggestions or Jobs sub forums.

Dark Mode on IDE


There is no one single theme for all. Luckily, Lazarus allows users to select the theme s/he likes. I really looked on the image you provided, but still not convince me to use dark theme. Maybe I am an optimist person, I like everything in bright. I was disappointed when GIMP switched to dark UI.

Add more components to online package manager

It may be slow but we are doing it now. If you ever found something suitable to add to OPM, you can let us know.

But it depends only on the mind of developers. Do they want to stay in the past, by legacy propositions or hit the future and became big?

Wow, your marketing speech is superb.

Actually the developers really hear and implement what the users said. But not all suggestions will be accepted, because of certain reasons. And the progress is slow, man-power issue I hope you can understand.

As far as I know, Lazarus never want to be big or no 1. I believe the developers are wanting to make it a tool that is useful and can be use easily.

you can't say OP is wrong


I didn't say OP is wrong, did I?
« Last Edit: July 13, 2020, 02:56:01 pm by Handoko »

Pascal

  • Hero Member
  • *****
  • Posts: 932
Re: Re: We are planning the next release: Lazarus 2.0.10
« Reply #23 on: July 13, 2020, 12:34:36 pm »
4- Dark Mode on IDE, a beautiful editor. Have you ever seen how pascal is beautiful on it?
(https://forum.sublimetext.com/uploads/default/original/3X/a/d/ad0f3b8f1d3ad75a2310582b38251776a6a7887c.png)
Ps: image in very bad quality. But trust in me, so beautiful that you'll want to live in these colors...

This works. At least for the editor:
laz trunk x64 - fpc trunk i386 (cross x64) - Windows 10 Pro x64 (21H2)

Martin_fr

  • Administrator
  • Hero Member
  • *
  • Posts: 10917
  • Debugger - SynEdit - and more
    • wiki
Re: Re: We are planning the next release: Lazarus 2.0.10
« Reply #24 on: July 13, 2020, 12:58:16 pm »
There's always a big reply, a wall text to a tiny simple question.  :o
You can write a book about that, but you can't say OP is wrong!
Indeed there is.
But there are as many opinions as there are people.

The term (or terms similar to) "Someone should do it", will get you certain replies.
Even if everyone agrees, that the idea is good, and that it really would be good to be done. Because, who is "someone"? Everyone will say "someone", everyone will say "but not me".

Remember the developer team is a group of volunteers. There is no "boss" who then assigns a task to a specific person. Every team member decides what tasks and in what order they pick up.
Similar for volunteers from the community...

Anyway, it is always ok for someone to lobby for something ;)
And you (not just someone ;) ) should do that, and maybe it reaches someone from the core-team or from the community. And then work will get done.

Quote
There is a ZERO argument today for an undocked IDE. How much modern IDE's on other languages are undocked today? Must have a reason. Think about it!
No one argues against docking. The only point is that an undocked version should also be available as option. Everyone is fine if "someone" improves docking.

As far as I am aware, the main problem is finding and fixing bugs. That requires people who use it and report bugs.

I do not know how many of the core team actually use docking. So unless bugs get reported, there may be no fixes.
If they are reported, it may still take time till someone picks them up.

Btw: I personally prefer an unlocked IDE. I have several screens, and the IDE windows are placed across them. I have enough space to position all windows next to each other. Undocked offers me greater flexibility.
One advantage (for me) of undocked, is that I can put the IDE-main-bar somewere to the side. So my source editor can have the full height (very top to very bottom). By default I have 2 Editors next to each other, each showing 100 lines of code. But I had had up to 5 or 6 editors open, all visible at the same time (less lines though).

But I do agree, docking is a good feature for many.


Quote
This is really necessary.
When its not about oxygen, or nourishment, then that is a personal opinion.
What is necessary for you, may be of no interest to me. And vice versa.
I wont block things that you need, but I may not personally implement them (based on the task, not the requestor).
« Last Edit: July 13, 2020, 01:03:49 pm by Martin_fr »

rpetges

  • Jr. Member
  • **
  • Posts: 98
    • Attribute Changer Website
Re: Ideas / MOVED FROM: We are planning the next release: Lazarus 2.0.10
« Reply #25 on: July 13, 2020, 06:13:25 pm »
A docked IDE can be configured, but it's not really user-friendly as it requires the installation of additional packages ( i.e. sparta_Dockedformeditor and AnchorDockingDsgn ). A rebuild of the IDE is required to activate the new look and feel.

An issue is that the configuration has to be redone each time a new release of Lazarus is installed ( or did I miss something ? )

A really great improvement would be to add an option in the IDE or during the setup to choose between the Docked / Undocked mode. This would also eliminate the issue we had with the latest 2.0.10 release and a not working Sparta_Dockedformeditor package. Everyone would be happy :-)

I don't know however how complicated it would be to include this in the core.

Best regards,
Romain
« Last Edit: July 13, 2020, 06:16:04 pm by Romain »

Martin_fr

  • Administrator
  • Hero Member
  • *
  • Posts: 10917
  • Debugger - SynEdit - and more
    • wiki
Re: Ideas / MOVED FROM: We are planning the next release: Lazarus 2.0.10
« Reply #26 on: July 13, 2020, 06:32:02 pm »
I don't know how much of such an option exists, or how much work....
But I think, if you could enable/disable docking by a single checkbox in Tools>Options, then it would be fine to have it build in by default.
I don't know what others think.

As for, rebuilding after an upgrade: If you have any packages installed, you have to rebuild after an upgrade.
The packages are still configured to be there. It only takes the rebuild, and they are active again.

Dynamic loadable package are not (yet) supported by fpc, and once fpc has them, the IDE needs support.

rpetges

  • Jr. Member
  • **
  • Posts: 98
    • Attribute Changer Website
Re: Ideas / MOVED FROM: We are planning the next release: Lazarus 2.0.10
« Reply #27 on: July 13, 2020, 06:38:18 pm »
As for, rebuilding after an upgrade: If you have any packages installed, you have to rebuild after an upgrade.
The packages are still configured to be there. It only takes the rebuild, and they are active again.

I think it's my fault. After an upgrade, I went to the Install/Uninstall Packages to rebuild the IDE. However, the option to rebuild is grayed out. I should have used the Tools/Build Lazarus ... I'm stupid.

Regarding Docked/Undocked, maybe it would be an option to include both versions by default in the installer and let the user choose which one to use in case it's too complicated to add an option in the core.

Romain

Handoko

  • Hero Member
  • *****
  • Posts: 5396
  • My goal: build my own game engine using Lazarus
Re: Ideas / MOVED FROM: We are planning the next release: Lazarus 2.0.10
« Reply #28 on: July 13, 2020, 06:47:21 pm »
Regarding Docked/Undocked, maybe it would be an option to include both versions by default in the installer and let the user choose which one to use ...

+1 vote from me.

Although I don't use it but I think some especially new users will feel easier to work with docking UI.

Martin_fr

  • Administrator
  • Hero Member
  • *
  • Posts: 10917
  • Debugger - SynEdit - and more
    • wiki
Re: Ideas / MOVED FROM: We are planning the next release: Lazarus 2.0.10
« Reply #29 on: July 13, 2020, 07:09:01 pm »
That would need to change the installers (and underlying build process) for all platforms.  And not even sure, if all installers have the ability to interactively ask the user.

This belongs into the build exe, under tools options.

 

TinyPortal © 2005-2018