Skip to content

Commit

Permalink
- Added "Wordwrap option" for the editor (active by default)
Browse files Browse the repository at this point in the history
- Added "Layout Views"
- Fixed Menu over Editor Toolbar and Captions when collapsed
- Updated the latest Image32 library
  • Loading branch information
carloBarazzetta committed Feb 27, 2025
1 parent 347567c commit 3cf126e
Show file tree
Hide file tree
Showing 317 changed files with 47,640 additions and 74,825 deletions.
2 changes: 1 addition & 1 deletion Ext/HTMLViewer/package/Rad Studio 12/FrameViewer.dproj
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
<TargetedPlatforms>3</TargetedPlatforms>
<AppType>Package</AppType>
<FrameworkType>VCL</FrameworkType>
<ProjectVersion>20.1</ProjectVersion>
<ProjectVersion>20.2</ProjectVersion>
<Platform Condition="'$(Platform)'==''">Win32</Platform>
<ProjectName Condition="'$(ProjectName)'==''">FrameViewer</ProjectName>
</PropertyGroup>
Expand Down
2 changes: 1 addition & 1 deletion Ext/HTMLViewer/package/Rad Studio 12/dclFrameViewer.dproj
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
<MainSource>dclFrameViewer.dpk</MainSource>
<Config Condition="'$(Config)'==''">Release</Config>
<DCC_DCCCompiler>DCC32</DCC_DCCCompiler>
<ProjectVersion>20.1</ProjectVersion>
<ProjectVersion>20.2</ProjectVersion>
<FrameworkType>VCL</FrameworkType>
<Base>True</Base>
<Platform Condition="'$(Platform)'==''">Win32</Platform>
Expand Down
2 changes: 1 addition & 1 deletion Ext/MarkdownProcessor/source/MarkdownCommonMark.pas
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
{ MarkDown Processor }
{ Delphi version of FPC-markdown by Miguel A. Risco-Castillo }
{ }
{ Copyright (c) 2022-2024 (Ethea S.r.l.) }
{ Copyright (c) 2022-2025 (Ethea S.r.l.) }
{ Author: Carlo Barazzetta }
{ }
{ https://github.com/EtheaDev/MarkdownProcessor }
Expand Down
2 changes: 1 addition & 1 deletion Ext/MarkdownProcessor/source/MarkdownDaringFireball.pas
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
{ MarkDown Processor }
{ Delphi version of FPC-markdown by Miguel A. Risco-Castillo }
{ }
{ Copyright (c) 2022-2024 (Ethea S.r.l.) }
{ Copyright (c) 2022-2025 (Ethea S.r.l.) }
{ Author: Carlo Barazzetta }
{ }
{ https://github.com/EtheaDev/MarkdownProcessor }
Expand Down
2 changes: 1 addition & 1 deletion Ext/MarkdownProcessor/source/MarkdownMathCode.pas
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
{ MarkDown Processor }
{ Delphi version of FPC-markdown by Miguel A. Risco-Castillo }
{ }
{ Copyright (c) 2022-2024 (Ethea S.r.l.) }
{ Copyright (c) 2022-2025 (Ethea S.r.l.) }
{ Author: Carlo Barazzetta }
{ }
{ https://github.com/EtheaDev/MarkdownProcessor }
Expand Down
2 changes: 1 addition & 1 deletion Ext/MarkdownProcessor/source/MarkdownProcessor.pas
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
{ MarkDown Processor }
{ Delphi version of FPC-markdown by Miguel A. Risco-Castillo }
{ }
{ Copyright (c) 2022-2024 (Ethea S.r.l.) }
{ Copyright (c) 2022-2025 (Ethea S.r.l.) }
{ Author: Carlo Barazzetta }
{ }
{ https://github.com/EtheaDev/MarkdownProcessor }
Expand Down
2 changes: 1 addition & 1 deletion Ext/MarkdownProcessor/source/MarkdownTables.pas
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
{ MarkDown Processor }
{ Delphi version of FPC-markdown by Miguel A. Risco-Castillo }
{ }
{ Copyright (c) 2022-2024 (Ethea S.r.l.) }
{ Copyright (c) 2022-2025 (Ethea S.r.l.) }
{ Author: Carlo Barazzetta }
{ }
{ https://github.com/EtheaDev/MarkdownProcessor }
Expand Down
2 changes: 1 addition & 1 deletion Ext/MarkdownProcessor/source/MarkdownTxtMark.pas
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
{ MarkDown Processor }
{ Delphi version of FPC-markdown by Miguel A. Risco-Castillo }
{ }
{ Copyright (c) 2022-2024 (Ethea S.r.l.) }
{ Copyright (c) 2022-2025 (Ethea S.r.l.) }
{ Author: Carlo Barazzetta }
{ }
{ https://github.com/EtheaDev/MarkdownProcessor }
Expand Down
2 changes: 1 addition & 1 deletion Ext/MarkdownProcessor/source/MarkdownUtils.pas
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
{ MarkDown Processor }
{ Delphi version of FPC-markdown by Miguel A. Risco-Castillo }
{ }
{ Copyright (c) 2022-2024 (Ethea S.r.l.) }
{ Copyright (c) 2022-2025 (Ethea S.r.l.) }
{ Author: Carlo Barazzetta }
{ }
{ https://github.com/EtheaDev/MarkdownProcessor }
Expand Down
4 changes: 2 additions & 2 deletions Ext/SVGIconImageList/Image32/source/Clipper.Core.pas
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,11 @@
(*******************************************************************************
* Author : Angus Johnson *
* Date : 22 November 2024 *
* Website : http://www.angusj.com *
* Website : https://www.angusj.com *
* Copyright : Angus Johnson 2010-2024 *
* Purpose : Core Clipper Library module *
* Contains structures and functions used throughout the library *
* License : http://www.boost.org/LICENSE_1_0.txt *
* License : https://www.boost.org/LICENSE_1_0.txt *
*******************************************************************************)

{$I Clipper.inc}
Expand Down
10 changes: 5 additions & 5 deletions Ext/SVGIconImageList/Image32/source/Clipper.Engine.pas
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,10 @@
(*******************************************************************************
* Author : Angus Johnson *
* Date : 22 November 2024 *
* Website : http://www.angusj.com *
* Website : https://www.angusj.com *
* Copyright : Angus Johnson 2010-2024 *
* Purpose : This is the main polygon clipping module *
* License : http://www.boost.org/LICENSE_1_0.txt *
* License : https://www.boost.org/LICENSE_1_0.txt *
*******************************************************************************)

interface
Expand Down Expand Up @@ -899,7 +899,7 @@ function PointInOpPolygon(const pt: TPoint64; op: POutPt): TPointInPolygonResult
while (op2 <> op) and (op2.pt.Y > pt.Y) do op2 := op2.next;
if (op2 = op) then break;

// must have touched or crossed the pt.Y horizonal
// must have touched or crossed the pt.Y horizontal
// and this must happen an even number of times

if (op2.pt.Y = pt.Y) then // touching the horizontal
Expand Down Expand Up @@ -2690,7 +2690,7 @@ procedure TClipperBase.IntersectEdges(e1, e2: PActive; pt: TPoint64);
end else if IsFront(e1) or (e1.outrec = e2.outrec) then
begin
// this 'else if' condition isn't strictly needed but
// it's sensible to split polygons that ony touch at
// it's sensible to split polygons that only touch at
// a common vertex (not at common edges).
op := AddLocalMaxPoly(e1, e2, pt);
{$IFDEF USINGZ}
Expand Down Expand Up @@ -3528,7 +3528,7 @@ procedure TClipperBase.DoHorizontal(horzEdge: PActive);
end;
if IsHotEdge(horzEdge) then
begin
//nb: The outrec containining the op returned by IntersectEdges
//nb: The outrec containing the op returned by IntersectEdges
//above may no longer be associated with horzEdge.
FHorzSegList.Add(GetLastOp(horzEdge));
end;
Expand Down
2 changes: 1 addition & 1 deletion Ext/SVGIconImageList/Image32/source/Clipper.Minkowski.pas
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
* Date : 21 December 2023 *
* Copyright : Angus Johnson 2010-2022 *
* Purpose : Minkowski Addition and Difference *
* License : http://www.boost.org/LICENSE_1_0.txt *
* License : https://www.boost.org/LICENSE_1_0.txt *
*******************************************************************************)

{$I Clipper.inc}
Expand Down
37 changes: 24 additions & 13 deletions Ext/SVGIconImageList/Image32/source/Clipper.Offset.pas
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,11 @@

(*******************************************************************************
* Author : Angus Johnson *
* Date : 22 November 2024 *
* Website : http://www.angusj.com *
* Copyright : Angus Johnson 2010-2024 *
* Date : 22 January 2025 *
* Website : https://www.angusj.com *
* Copyright : Angus Johnson 2010-2025 *
* Purpose : Path Offset (Inflate/Shrink) *
* License : http://www.boost.org/LICENSE_1_0.txt *
* License : https://www.boost.org/LICENSE_1_0.txt *
*******************************************************************************)

{$I Clipper.inc}
Expand Down Expand Up @@ -142,6 +142,20 @@ implementation
TwoPi : Double = 2 * PI;
InvTwoPi : Double = 1/(2 * PI);

// Clipper2 approximates arcs by using series of relatively short straight
//line segments. And logically, shorter line segments will produce better arc
// approximations. But very short segments can degrade performance, usually
// with little or no discernable improvement in curve quality. Very short
// segments can even detract from curve quality, due to the effects of integer
// rounding. Since there isn't an optimal number of line segments for any given
// arc radius (that perfectly balances curve approximation with performance),
// arc tolerance is user defined. Nevertheless, when the user doesn't define
// an arc tolerance (ie leaves alone the 0 default value), the calculated
// default arc tolerance (offset_radius / 500) generally produces good (smooth)
// arc approximations without producing excessively small segment lengths.
// See also: https://www.angusj.com/clipper2/Docs/Trigonometry.htm
const arc_const = 0.002; // <-- 1/500

//------------------------------------------------------------------------------
// Miscellaneous offset support functions
//------------------------------------------------------------------------------
Expand Down Expand Up @@ -364,13 +378,12 @@ procedure TClipperOffset.DoGroupOffset(group: TGroup);
if (group.joinType = jtRound) or (group.endType = etRound) then
begin
// calculate the number of steps required to approximate a circle
// (see http://www.angusj.com/clipper2/Docs/Trigonometry.htm)
// (see https://www.angusj.com/clipper2/Docs/Trigonometry.htm)
// arcTol - when arc_tolerance_ is undefined (0) then curve imprecision
// will be relative to the size of the offset (delta). Obviously very
//large offsets will almost always require much less precision.
arcTol := Iif(fArcTolerance > 0.01,
Min(absDelta, fArcTolerance),
Log10(2 + absDelta) * 0.25); // empirically derived
arcTol := Iif(fArcTolerance > 0.0,
Min(absDelta, fArcTolerance), absDelta * arc_const);

stepsPer360 := Pi / ArcCos(1 - arcTol / absDelta);
if (stepsPer360 > absDelta * Pi) then
Expand Down Expand Up @@ -745,7 +758,7 @@ function IntersectPoint(const ln1a, ln1b, ln2a, ln2b: TPointD): TPointD;
m1,b1,m2,b2: double;
begin
result := NullPointD;
//see http://astronomy.swin.edu.au/~pbourke/geometry/lineline2d/
//see https://paulbourke.net/geometry/pointlineplane/#i2l
if (ln1B.X = ln1A.X) then
begin
if (ln2B.X = ln2A.X) then exit; //parallel lines
Expand Down Expand Up @@ -917,10 +930,8 @@ procedure TClipperOffset.DoRound(j, k: Integer; angle: double);
// when fDeltaCallback64 is assigned, fGroupDelta won't be constant,
// so we'll need to do the following calculations for *every* vertex.
absDelta := Abs(fGroupDelta);
arcTol := Iif(fArcTolerance > 0.01,
Min(absDelta, fArcTolerance),
Log10(2 + absDelta) * 0.25); // empirically derived
//http://www.angusj.com/clipper2/Docs/Trigonometry.htm
arcTol := Iif(fArcTolerance > 0.0,
Min(absDelta, fArcTolerance), absDelta * arc_const);
stepsPer360 := Pi / ArcCos(1 - arcTol / absDelta);
if (stepsPer360 > absDelta * Pi) then
stepsPer360 := absDelta * Pi; // avoid excessive precision
Expand Down
4 changes: 2 additions & 2 deletions Ext/SVGIconImageList/Image32/source/Clipper.RectClip.pas
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,10 @@
(*******************************************************************************
* Author : Angus Johnson *
* Date : 5 July 2024 *
* Website : http://www.angusj.com *
* Website : https://www.angusj.com *
* Copyright : Angus Johnson 2010-2024 *
* Purpose : FAST rectangular clipping *
* License : http://www.boost.org/LICENSE_1_0.txt *
* License : https://www.boost.org/LICENSE_1_0.txt *
*******************************************************************************)

interface
Expand Down
2 changes: 1 addition & 1 deletion Ext/SVGIconImageList/Image32/source/Clipper.inc
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
{.$DEFINE USINGZ}

///////////////////////////////////////////////////////////////////////////////
//COMPILER DIFINED PREPROCESSOR DIRECTIVES (ie. do not touch ;))
//COMPILER DEFINED PREPROCESSOR DIRECTIVES (ie. do not touch ;))
///////////////////////////////////////////////////////////////////////////////

{$IFDEF FPC}
Expand Down
6 changes: 3 additions & 3 deletions Ext/SVGIconImageList/Image32/source/Clipper.pas
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,10 @@
(*******************************************************************************
* Author : Angus Johnson *
* Date : 7 May 2024 *
* Website : http://www.angusj.com *
* Website : https://www.angusj.com *
* Copyright : Angus Johnson 2010-2024 *
* Purpose : This module provides a simple interface to the Clipper Library *
* License : http://www.boost.org/LICENSE_1_0.txt *
* License : https://www.boost.org/LICENSE_1_0.txt *
*******************************************************************************)

interface
Expand Down Expand Up @@ -821,7 +821,7 @@ function DistanceSqrd(const pt1, pt2: TPoint64): double;
var
x1,y1,x2,y2: double;
begin
// nb: older versions of Delphi don't allow explicit typcasting
// nb: older versions of Delphi don't allow explicit typecasting
x1 := pt1.X; y1 := pt1.Y;
x2 := pt2.X; y2 := pt2.Y;
result := Sqr(x1 - x2) + Sqr(y1 - y2);
Expand Down
4 changes: 2 additions & 2 deletions Ext/SVGIconImageList/Image32/source/Img32.CQ.pas
Original file line number Diff line number Diff line change
Expand Up @@ -4,11 +4,11 @@
* Author : Angus Johnson *
* Version : 4.7 *
* Date : 6 January 2025 *
* Website : http://www.angusj.com *
* Website : https://www.angusj.com *
* Copyright : Angus Johnson 2019-2025 *
* Purpose : Color reduction for TImage32 *
* : Uses Octree Color Quantization & Floyd / Steinberg Dithering *
* License : http://www.boost.org/LICENSE_1_0.txt *
* License : https://www.boost.org/LICENSE_1_0.txt *
*******************************************************************************)

interface
Expand Down
4 changes: 2 additions & 2 deletions Ext/SVGIconImageList/Image32/source/Img32.Clipper2.pas
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,10 @@
* Author : Angus Johnson *
* Version : 4.7 *
* Date : 6 January 2025 *
* Website : http://www.angusj.com *
* Website : https://www.angusj.com *
* Copyright : Angus Johnson 2019-2025 *
* Purpose : Wrapper module for the Clipper library *
* License : http://www.boost.org/LICENSE_1_0.txt *
* License : https://www.boost.org/LICENSE_1_0.txt *
*******************************************************************************)

interface
Expand Down
Loading

0 comments on commit 3cf126e

Please sign in to comment.