Recent

Author Topic: Stop wasting time on FPC 2.6 and Laz 1.4!  (Read 47151 times)

ChrisF

  • Hero Member
  • *****
  • Posts: 542
Re: Stop wasting time on FPC 2.6 and Laz 1.4!
« Reply #75 on: November 05, 2015, 05:23:57 pm »
[...] After Lazarus revision 50128-50129 with the usage of UTF8 as DefaultSystemCodepage the most problems with the usage of FPC 3.0.0 are gone. [...]

What are the changes involved into these 50128-50129 revisions exactly ?

snorkel

  • Hero Member
  • *****
  • Posts: 817
Re: Stop wasting time on FPC 2.6 and Laz 1.4!
« Reply #76 on: November 05, 2015, 07:16:55 pm »

And, did I mention that trunk has some new cool features? :)

Do tell What are these cool new features :-)
***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

Michl

  • Full Member
  • ***
  • Posts: 226
Re: Stop wasting time on FPC 2.6 and Laz 1.4!
« Reply #77 on: November 05, 2015, 07:49:18 pm »
Thank you for fixing the ACP issues with FPC 3.0, when the new UTF-8 system is not used. Loosing the system codepage was a big worry for some people, understandably.
This work is not finished yet but I have understood it can work cleanly without nasty unexpected bugs.
:-[ Thank you for your flowers, it isn't such a big thing.

What are the changes involved into these 50128-50129 revisions exactly ?
As summary the changing of the DefaultSystemCodepage to CP_UTF8.

This lines are the biggest change:
Code: Pascal  [Select][+][-]
  1. -{$IFDEF EnableUTF8RTL}
  2. +{$IF (FPC_FULLVERSION >= 30000) AND NOT DEFINED(DisableUTF8RTL)}
  3.  initialization
  4.    SetMultiByteConversionCodePage(CP_UTF8);
  5.    // SetMultiByteFileSystemCodePage(CP_UTF8); not needed, this is the default under Windows
  6.    SetMultiByteRTLFileSystemCodePage(CP_UTF8);
  7. -{$ENDIF}
  8. +{$IFEND}
  9.  
  10. ...
  11.  
  12. procedure SetMultiByteConversionCodePage(CodePage: TSystemCodePage);
  13.   begin
  14.     DefaultSystemCodePage:=CodePage;
  15.   end;
  16.  
  17. procedure SetMultiByteFileSystemCodePage(CodePage: TSystemCodePage);
  18.   begin
  19.     DefaultFileSystemCodePage:=CodePage;
  20.   end;
  21.  
  22. procedure SetMultiByteRTLFileSystemCodePage(CodePage: TSystemCodePage);
  23.   begin
  24.     DefaultRTLFileSystemCodePage:=CodePage;
  25.   end;  
Code: [Select]
type
  TLiveSelection = (lsMoney, lsChilds, lsTime);
  TLive = Array[0..1] of TLiveSelection;

JuhaManninen

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 4468
  • I like bugs.
Re: Stop wasting time on FPC 2.6 and Laz 1.4!
« Reply #78 on: November 05, 2015, 07:54:07 pm »
Do tell What are these cool new features :-)

- Configurable IDE CoolBar which replaces the static Toolbar. It shares settings GUI with EditorToolbar which is moved to IDE's codebase.

- Configurable desktops about like Delphi has since long time. A desktop contains window pos/size, IDE CoolBar config, EditorToolbar config, component palette config etc.
A debug desktop can be defined. Works also with AnchorDocking.

- improvements in window layout storage, with and without AnchorDocking.

- FreeSparta branch has a working docked form designer which will be moved to trunk later. It makes most sense with AnchorDocking but can be used without.

- improvements in Codetools for new language features.

- Initial version of project groups.

... and many minor fixes. Why don't you try yourself? :-)
« Last Edit: November 05, 2015, 08:09:26 pm by JuhaManninen »
Mostly Lazarus trunk and FPC 3.2 on Manjaro Linux 64-bit.

gour

  • Guest
Re: Stop wasting time on FPC 2.6 and Laz 1.4!
« Reply #79 on: November 05, 2015, 09:20:32 pm »
If you want to develop with Lazarus, you get the best possible comfort. In the most cases you will have no contact with any string conversion. Lazarus uses the 8 bit Unicodestring UTF8 by default and this wouldn't be changed if there is a new version based on FPC 3.0.0.

That's good to hear.

Quote
I see some panic with the new strings but I can't see a reason for that. I'm using Lazarus Trunk and FPC Trunk a long time and don't understand the endless discussions on that strings. After Lazarus revision 50128-50129 with the usage of UTF8 as DefaultSystemCodepage the most problems with the usage of FPC 3.0.0 are gone. And to be correct, with FPC 3.0.0 it is the first that you can build clean ACP applications with Lazarus.

Thank you being bearer of good news!

Leledumbo

  • Hero Member
  • *****
  • Posts: 8757
  • Programming + Glam Metal + Tae Kwon Do = Me
Re: Stop wasting time on FPC 2.6 and Laz 1.4!
« Reply #80 on: November 06, 2015, 07:36:41 am »
- FreeSparta branch has a working docked form designer which will be moved to trunk later. It makes most sense with AnchorDocking but can be used without.
Still waiting for this to happen. I just test freesparta branch occasionally but my primary work is on trunk.

balazsszekely

  • Guest
Re: Stop wasting time on FPC 2.6 and Laz 1.4!
« Reply #81 on: November 06, 2015, 07:47:14 am »
Quote
@Leledumbo
I just test freesparta branch occasionally but my primary work is on trunk.
You can copy "1_spartaBasic" package from FreeSparta branch and install it under the trunk. It will work just fine if you have fpc 3.0.0+. It's stable on windows, still has some issues under linux and osx, but Maciej will fix them.
« Last Edit: November 06, 2015, 07:49:27 am by GetMem »

JuhaManninen

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 4468
  • I like bugs.
Re: Stop wasting time on FPC 2.6 and Laz 1.4!
« Reply #82 on: November 06, 2015, 10:16:31 am »
You can copy "1_spartaBasic" package from FreeSparta branch and install it under the trunk. It will work just fine if you have fpc 3.0.0+.

Yes. You can also use it in Lazarus trunk directly from your free-sparta checkout. Just get it from here:
  http://svn.freepascal.org/svn/lazarus/branches/free-sparta
then select the package in Lazarus trunk instance and build it.

Quote
It's stable on windows, still has some issues under linux and osx, but Maciej will fix them.

The Linux issues were fixed recently. At least for me it works now with GTK2 and QT.
Please test everybody. Maciej is fixing bugs diligently.
Mostly Lazarus trunk and FPC 3.2 on Manjaro Linux 64-bit.

rvk

  • Hero Member
  • *****
  • Posts: 6163
Re: Stop wasting time on FPC 2.6 and Laz 1.4!
« Reply #83 on: November 06, 2015, 10:58:39 am »
Please test everybody. Maciej is fixing bugs diligently.
I still can't test 1_spartaBasic fully because of the problem with "AnchorDockingDsgn 0.5" which keeps opening on my second screen. And since I start Lazarus frequently (and keep moving it to my first screen) that really gets old after a few times.

http://mantis.freepascal.org/view.php?id=28803

(If I get some time I'll see if I can produce a patch myself. Apparently I'm one of the few with two screens :))

Thaddy

  • Hero Member
  • *****
  • Posts: 14373
  • Sensorship about opinions does not belong here.
Re: Stop wasting time on FPC 2.6 and Laz 1.4!
« Reply #84 on: November 06, 2015, 11:08:32 am »
I think a two monitor setup is rather more common than you think, Rick.
I filed some semi-related bug reports about that about a year and two years ago.
Object Pascal programmers should get rid of their "component fetish" especially with the non-visuals.

rvk

  • Hero Member
  • *****
  • Posts: 6163
Re: Stop wasting time on FPC 2.6 and Laz 1.4!
« Reply #85 on: November 06, 2015, 11:11:54 am »
I think a two monitor setup is rather more common than you think, Rick.
I filed some semi-related bug reports about that about a year and two years ago.
Then I'm one of the few who tried AnchorDockingDsgn with two monitors, lately :)
(there were a few related bugs which were fixed and those fixes resulted in this bug)

JuhaManninen

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 4468
  • I like bugs.
Re: Stop wasting time on FPC 2.6 and Laz 1.4!
« Reply #86 on: November 06, 2015, 11:16:39 am »
I still can't test 1_spartaBasic fully because of the problem with "AnchorDockingDsgn 0.5" which keeps opening on my second screen.

You can use 1_spartaBasic also without AnchorDockingDsgn.
Mostly Lazarus trunk and FPC 3.2 on Manjaro Linux 64-bit.

rvk

  • Hero Member
  • *****
  • Posts: 6163
Re: Stop wasting time on FPC 2.6 and Laz 1.4!
« Reply #87 on: November 06, 2015, 11:28:09 am »
I still can't test 1_spartaBasic fully because of the problem with "AnchorDockingDsgn 0.5" which keeps opening on my second screen.
You can use 1_spartaBasic also without AnchorDockingDsgn.
Yes, that's true too. (I'll make sure it's in my trunk-compile script.)

(Now I remember again. My second monitor is named 1 because it's on HDMI while my primary monitor 2 is on DVI. Maybe that setup is less common. And AnchorDockingDsgn always seems to default to monitor 1. For the time being I hacked it to go to the correct monitor.)

Thaddy

  • Hero Member
  • *****
  • Posts: 14373
  • Sensorship about opinions does not belong here.
Re: Stop wasting time on FPC 2.6 and Laz 1.4!
« Reply #88 on: November 06, 2015, 11:34:40 am »
Interested in the steps, Rick. I like anchor docking but never ever got it fully working with Lazarus. That keeps me under-using it as an editor.

Any change of a write-up?
Object Pascal programmers should get rid of their "component fetish" especially with the non-visuals.

balazsszekely

  • Guest
Re: Stop wasting time on FPC 2.6 and Laz 1.4!
« Reply #89 on: November 06, 2015, 11:35:46 am »
@rvk @Juha
Please test this on your computer:
Code: Pascal  [Select][+][-]
  1. var
  2.   I: Integer;
  3. begin
  4.   for I := 0 to Screen.MonitorCount -1 do
  5.    ShowMessage(IntToStr(Screen.Monitors[I].Left));  
  6. end;

If the first monitor Left position is bigger then the second one, then lazarus is reading the monitors in the wrong orther or your monitors are switched. On windows you can check this by pressing the identify button(Control Panel\All Control Panel Items\Display\Screen Resolution). Anchordocking reads the active monitor correctly.


 

TinyPortal © 2005-2018