Recent

Author Topic: Improving Lazarus IDE...  (Read 46332 times)

JuhaManninen

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 4680
  • I like bugs.
Re: Imporoving Lazarus IDE...
« Reply #30 on: June 04, 2013, 03:19:27 pm »
Please, drag yellow borders window on to other window.

Oops, right. Thanks.
I was looking for an option to turn it on, but it already was on.
It behaves about like Anchordocking. No worse, no better. My guess is that the code is derived from Anchordocking but I must study the source code to be sure.
Mostly Lazarus trunk and FPC 3.2 on Manjaro Linux 64-bit.

snorkel

  • Hero Member
  • *****
  • Posts: 817
Re: Imporoving Lazarus IDE...
« Reply #31 on: June 04, 2013, 05:59:07 pm »
The F12 key is definitely buggy. I don't know if it is that way all the time or it is because I am using the anchordockingdsgn package.
It seemed to work quite well on 0.9.30

I created a topic earlier today on the issue - http://www.lazarus.freepascal.org/index.php/board,10.0.html


What's the problem with F12? I developed too much years with a single 15" monitor and I was very productive. (from Delphi 1 to 7)

All who thinks it's better docked, I suppose is because it's not accustomed

Yes, F12 has issues, It seems the more tabs you have open the more odd it is, sometimes I have to hit it 4 or 5 times to get the form associated with the source file I am working on to come up.  I do have the IDE docked and I don't like it floating, so if it's related to being docked I will have to live with it.

There is no reason we can't have both floating and fully docked with the forms docked to a tab on the editor as a option.

I would be willing to contribute some to a bounty for this as well.  Is there a way we can contribute to a bounty?
***Snorkel***
If I forget, I always use the latest stable 32bit version of Lazarus and FPC. At the time of this signature that is Laz 3.0RC2 and FPC 3.2.2
OS: Windows 10 64 bit

Chronos

  • Sr. Member
  • ****
  • Posts: 256
    • PascalClassLibrary
Re: Imporoving Lazarus IDE...
« Reply #32 on: June 04, 2013, 08:01:26 pm »
So, I am taking my words back partly. Making such forking decision, Sternas Stefanos is not as clever as Mark Shuttleworth.

I can't remember who was mentioning here link to some book about open source development but generally ability to fork project is good. It may not be good for forked project but there always some reasons why to fork. And maybe one reason is that lazarus + fpc have somehow too tight policy and bad leadership. Then it may require less effort to for project, remove useless code/features and add own. Forking is compatible with concept of freedom. Then either authors of original project will realize where were their project weak parts and improve project, or they will not change anything and perhaps they project will eventually fall to oblivion. Also forked projects could reunion in some point in future.

Personally I would recommend CodeTyphon team to fork Lazarus/FPC by myself too. Last I was trying their repack they have their custom manager/launcher which could automatize and simplify much. If they would be able to modify IDE itself and integrate their custom features directly to main code (probably own packages with enhanced IDE API) then it may look much better for users.

So I suggest to do not judge forks adversely.

Back to topic:  If in this stage CodeTyphon use anchordocking then it is not worth discussing it here.

garlar27

  • Hero Member
  • *****
  • Posts: 652
Re: Improving Lazarus IDE...
« Reply #33 on: June 04, 2013, 08:02:42 pm »
...
I can summarize some of my previous goals during docking implementation:
  • allow hierarchical dock region division
  • Support PageControl style docking style
  • Support animated popup forms with pinning (TDockTabSet style)
  • be able to save/load layout/desktop to (streams, file, registry, xml, ini)
  • Allow to change visual look&feel (colors, fonts, buttons)
  • allow lock/unlock docking to prevent accidentally undock something
  • Offer prebuild customization dialog (manage layouts, multilingual interface)
  • multiplatform support (hard to maintain but windows and gtk2 is really required, qt and apple os support would be good)
  • Allow to switch on/off to support "old undocked style"

...

It looks like Eclipse or some thing llike that...

A year ago or more I read that Silvioprog was trying to do something like that (tabed windows and docking) and was recruiting people to do it but I don't know what happened. You can check his blog, maybe he have something to show and might be interested...

JuhaManninen

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 4680
  • I like bugs.
Re: Imporoving Lazarus IDE...
« Reply #34 on: June 05, 2013, 01:31:25 am »
I can't remember who was mentioning here link to some book about open source development but generally ability to fork project is good.

Yes you can. It was me. And yes, ability to fork project is good. It keeps things sane.

Quote
It may not be good for forked project but there always some reasons why to fork. And maybe one reason is that lazarus + fpc have somehow too tight policy and bad leadership. Then it may require less effort to for project, remove useless code/features and add own.

Why you are such a Mr. DoomsDay? It is not SO bad, honestly.

Quote
Forking is compatible with concept of freedom. [... and so on ...]

Yes, every OSS person knows it. No news.

Quote
Personally I would recommend CodeTyphon team to fork Lazarus/FPC by myself too. Last I was trying their repack they have their custom manager/launcher which could automatize and simplify much. If they would be able to modify IDE itself and integrate their custom features directly to main code (probably own packages with enhanced IDE API) then it may look much better for users.

So I suggest to do not judge forks adversely.

They haven't forked FPC yet. Probably it will be their next fork.
No, I am not judging forks in general. I am judging this one particular fork, namely Lazarus IDE forked by CodeTyphon.
They could easily improve the IDE and create an "enhanced IDE API" by sending patches, without forking the project.
There is no record of rejected patches or disagreements about development with CodeTyphon representatives because they have never offered their contributions. They clearly have a strict policy to NEVER contribute to any project. It means Lazarus project's "bad leadership" is not the reason.

Why I judge this fork as a doomed project? I explained it earlier but here comes again:
Lazarus development now has good speed, many ideas and some talented core developers. Codetyphon must merge Lazarus commits back to their fork if they want to have a competitive system. The more they change their fork, the more difficult it will be. This is already happening. I noticed they have their own version of Example Manager. I just happened to improve it in Lazarus few weeks ago but Codetyphon now missed it.

Lots of duplicated effort. It is a pity, the energy could be spent better. CodeTyphon itself will suffer most from this decision, that is why I called them non-clever.

I believe CodeTyphon will be people's number 1. choice for installation because of their effort in component bundles and easy installation etc.
That is a different issue. Forking Lazarus core will not help those efforts.

Quote
Back to topic:  If in this stage CodeTyphon use anchordocking then it is not worth discussing it here.

An honest question: do you see a design flaw in AnchorDocking, so it should be replaced and not improved more?
What docking lib you would prefer?
Mostly Lazarus trunk and FPC 3.2 on Manjaro Linux 64-bit.

Pascaluvr

  • Full Member
  • ***
  • Posts: 216
Re: Improving Lazarus IDE...
« Reply #35 on: June 05, 2013, 07:13:26 am »
I have no problem with the docking - i think its a matter of what we get used to.

My 'improvement request' would be to allow multiple installations of Laz (by default = not with tweaking).  Since Laz installs in its own directory/folder as specified by the user -  there is absolutely no need to hide options over in the registry or User folder.

Simply have an 'ini' type file for each install.

As a (hobbiest) developer, I am always wary of new releases (of any product).  Laz expects me to uninstall an old release before installing a new release....   and if there is a problem... its up to me to get back to where I was.

WHY???

Why cant I just install to a 'TestLaz' folder and allow me to feel secure with the working version I was happy with?  When i feel confident I can install the tested new version for production.    I am sure that this would be a very minor change.
Windows 7, Lazarus 1.0.8, FPC 2.6.2, SQLite 3

JuhaManninen

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 4680
  • I like bugs.
Re: Improving Lazarus IDE...
« Reply #36 on: June 05, 2013, 09:04:44 am »
Why cant I just install to a 'TestLaz' folder and allow me to feel secure with the working version I was happy with?  When i feel confident I can install the tested new version for production.    I am sure that this would be a very minor change.

Patches are welcome for minor changes of course.
Yet, having many lazarus versions is already easy. You just start them with --pcp parameter to have separate configurations.
It is best to download sources from a repository, compile, and start with ".lazarus --pcp=~/.laztest" or similar.
No hassle.
« Last Edit: June 05, 2013, 10:22:12 am by JuhaManninen »
Mostly Lazarus trunk and FPC 3.2 on Manjaro Linux 64-bit.

mse

  • Sr. Member
  • ****
  • Posts: 286
Re: Imporoving Lazarus IDE...
« Reply #37 on: June 05, 2013, 09:06:16 am »
An honest question: do you see a design flaw in AnchorDocking, so it should be replaced and not improved more?
What docking lib you would prefer?
One could have a look to docking in MSEide. It works with user definable panels and seems to have most of the wanted features. There is also a non visual component "tdockpanelformcontroller" which can be used to implement panel docking in user projects.
There probably is a missing trailing zero in the 1000 Euro bounty. ;-)

Martin

Pascaluvr

  • Full Member
  • ***
  • Posts: 216
Re: Improving Lazarus IDE...
« Reply #38 on: June 05, 2013, 09:33:18 am »
Why cant I just install to a 'TestLaz' folder and allow me to feel secure with the working version I was happy with?  When i feel confident I can install the tested new version for production.    I am sure that this would be a very minor change.

Patches are welcome for  minor changes of course.
Yet, having many lazarus versions is already easy. You just start them with --pcp parameter to have separate configurations.
It is best to download sources from a repository, compile, and start with ".lazarus --pcp=~/.laztest" or similar.
No hassle.

Now I feel like a true dummy - I have no idea what that post just explained to me...  nor any idea where to find an explanation.  But I am glad the option is available for at least those that are in 'the know'.

I am not interested in downloading patches and alternative sources to compile for myself.   I just want to download a compiled-ready-to-run version.   I see all sorts of references to various libraries and versions that can be downloaded if you have a clue about the way version control stuff works - but its all goobleygook to me.  I just want a self-installing .exe that i can place in a different directory.   When I have done that in the past, it caused all sorts of problems and fixing the new install prevented the original from working.

Lazarus would have a far bigger appeal if you didn't need to be a geek to anything over and above 'install and run'.
« Last Edit: June 05, 2013, 09:49:42 am by Pascaluvr »
Windows 7, Lazarus 1.0.8, FPC 2.6.2, SQLite 3

Zoran

  • Hero Member
  • *****
  • Posts: 1980
    • http://wiki.lazarus.freepascal.org/User:Zoran
Re: Improving Lazarus IDE...
« Reply #39 on: June 05, 2013, 10:01:05 am »
Now I feel like a true dummy - I have no idea what that post just explained to me...  nor any idea where to find an explanation.  But I am glad the option is available for at least those that are in 'the know'

If you are on Windows — open your Lazarus installation folder and find startlazarus.exe file, then create shortcut to this file. Now, edit this shortcut this way: right-click on the shortcut and chose properties, in "Target" edit box you will see the path to the target file — something like "C:\Lazarus\startlazarus.exe". Append " --pcp=C:\MyLazConfiguration1", that is the content of the "Target" edit box will look something like "C:\Lazarus\startlazarus.exe --pcp=C:\MyLazConfiguration1".

Now, install another instance of Lazarus, some different version (let's assume in C:\Lazarus2 folder) and for it create shortcut and put "C:\Lazarus2\startlazarus.exe --pcp=C:\MyLazConfiguration2".

Always use these shorcuts to start Lazarus IDE and there will be no conflict between the config files.
Swan, ZX Spectrum emulator https://github.com/zoran-vucenovic/swan

BigChimp

  • Hero Member
  • *****
  • Posts: 5740
  • Add to the wiki - it's free ;)
    • FPCUp, PaperTiger scanning and other open source projects
Re: Improving Lazarus IDE...
« Reply #40 on: June 05, 2013, 10:07:29 am »
Lazarus would have a far bigger appeal if you didn't need to be a geek to anything over and above 'install and run'.
I disagree. Install and run is the most common use case and covered well.

Above that, you get complexity - no use in hiding it because you lose flexibility.
More info:
http://wiki.lazarus.freepascal.org/Multiple_Lazarus

Please feel free to update those docs...
Want quicker answers to your questions? Read http://wiki.lazarus.freepascal.org/Lazarus_Faq#What_is_the_correct_way_to_ask_questions_in_the_forum.3F

Open source including papertiger OCR/PDF scanning:
https://bitbucket.org/reiniero

Lazarus trunk+FPC trunk x86, Windows x64 unless otherwise specified

Zoran

  • Hero Member
  • *****
  • Posts: 1980
    • http://wiki.lazarus.freepascal.org/User:Zoran
Re: Improving Lazarus IDE...
« Reply #41 on: June 05, 2013, 10:09:29 am »
I am not interested in downloading patches and alternative sources to compile for myself.   I just want to download a compiled-ready-to-run version.   I see all sorts of references to various libraries and versions that can be downloaded if you have a clue about the way version control stuff works - but its all goobleygook to me.  I just want a self-installing .exe that i can place in a different directory.   When I have done that in the past, it caused all sorts of problems and fixing the new install prevented the original from working.

Of course, the two instances of Lazarus I was talking about in my previous post can be same version. Anyway, you can install different components and packages and customize IDE differently, just always start lazarus IDE with the shortcuts created as described in my previous post.
Swan, ZX Spectrum emulator https://github.com/zoran-vucenovic/swan

Giu

  • Full Member
  • ***
  • Posts: 131
Re: Improving Lazarus IDE...
« Reply #42 on: June 05, 2013, 10:17:14 am »
Open text editor of your choice.
Write:
Code: [Select]
@echo off
lazarus.exe --pcp=./config

Save as lazarus.bat (or the name you prefer)

Copy this file to every laz installation you have, and new installations, each one will start using it's own config saved inside laz folder.

Enjoy.

Pascaluvr

  • Full Member
  • ***
  • Posts: 216
Re: Improving Lazarus IDE...
« Reply #43 on: June 05, 2013, 10:26:54 am »
Zoran,  thanks for the detailed explanation - I do appreciate it.

Big Chimp - sorry, but you have it wrong.  Laz, by default, installs into a C:\lazarus folder - NOT the c:\Program Files.  This means that it does not need any special permissions to update its own directory or sub-directory. If Laz followed Windows standards it would install in C:\Program files\Lazarus ...   but it doesn't follow standards...  there is no need for Laz to use User Folders for storing preferences - just store them in Laz folder.

If alternative startups can be achieved by Dos startup prameters - dont you think its time we entered the 21st century and stopped expecting users to even know what they are?
Windows 7, Lazarus 1.0.8, FPC 2.6.2, SQLite 3

Zoran

  • Hero Member
  • *****
  • Posts: 1980
    • http://wiki.lazarus.freepascal.org/User:Zoran
Re: Improving Lazarus IDE...
« Reply #44 on: June 05, 2013, 10:29:45 am »
Open text editor of your choice.
Write:
Code: [Select]
@echo off
lazarus.exe --pcp=./config

Save as lazarus.bat (or the name you prefer)

Copy this file to every laz installation you have, and new installations, each one will start using it's own config saved inside laz folder.

Enjoy.

Instead of lazarus.exe better use startlazarus.exe, so that IDE can rebuild itself when installing packages (see here).
Swan, ZX Spectrum emulator https://github.com/zoran-vucenovic/swan

 

TinyPortal © 2005-2018