Skip to content

Improve filter system: expression support and UI enhancements #2802

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 129 commits into from
Jul 21, 2025
Merged
Changes from all commits
Commits
Show all changes
129 commits
Select commit Hold shift + click to select a range
148cbfb
WIP
sdottaka May 2, 2025
8c87119
WIP
sdottaka May 3, 2025
82518af
WIP
sdottaka May 4, 2025
1317e91
WIP
sdottaka May 6, 2025
713c17f
WIP
sdottaka May 7, 2025
2018e08
WIP
sdottaka May 7, 2025
c4b48f4
WIP
sdottaka May 7, 2025
5a97bc3
WIPWIP
sdottaka May 7, 2025
0e24960
WIP
sdottaka May 8, 2025
cf73d92
WIP
sdottaka May 9, 2025
ddd7f84
Merge branch 'master' into advanced-filter
sdottaka May 13, 2025
7599486
WIP
sdottaka May 14, 2025
af138ed
WIP
sdottaka May 14, 2025
3ddacfd
Merge branch 'master' into advanced-filter
sdottaka May 15, 2025
618b354
WIP
sdottaka May 16, 2025
dc21d50
Merge branch 'master' into advanced-filter
sdottaka May 17, 2025
6c6e8e3
WIP
sdottaka May 17, 2025
a11a9e9
WIP
sdottaka May 19, 2025
ad894e6
Merge branch 'master' into advanced-filter
sdottaka May 19, 2025
3f09154
WIP
sdottaka May 19, 2025
f2194f7
WIP
sdottaka May 19, 2025
c12d5f3
WIP
sdottaka May 20, 2025
bcfc7b1
update boost to 1.88.0
sdottaka May 21, 2025
7ab4edc
WIP
sdottaka May 21, 2025
8a6aca1
WIP
sdottaka May 22, 2025
8f4f9ef
Merge branch 'master' into advanced-filter
sdottaka May 22, 2025
81d525c
WIP
sdottaka May 23, 2025
6c2e41e
WIP
sdottaka May 24, 2025
a1d61f3
WIP
sdottaka May 25, 2025
4711d4b
WIP
sdottaka May 27, 2025
fc0ec8c
Merge branch 'master' into advanced-filter
sdottaka May 27, 2025
9e4d188
WIP
sdottaka May 28, 2025
50eea72
WIP
sdottaka May 29, 2025
648e9c1
WIP
sdottaka May 29, 2025
c30b26c
WIP
sdottaka May 30, 2025
609fea0
WIP
sdottaka May 30, 2025
5deece1
WIP
sdottaka May 31, 2025
df7732f
WIP
sdottaka Jun 1, 2025
068042e
WIP
sdottaka Jun 1, 2025
c30a44d
Merge branch 'master' into advanced-filter
sdottaka Jun 2, 2025
2e5cf6c
WIP
sdottaka Jun 3, 2025
d5a47ff
WIP
sdottaka Jun 3, 2025
89dd7de
WIP
sdottaka Jun 4, 2025
f8951ab
WIP
sdottaka Jun 4, 2025
cd3f6ab
Potential fix for code scanning alert no. 1607: Poorly documented lar…
sdottaka Jun 4, 2025
4a57220
Potential fix for code scanning alert no. 1566: Unused local variable
sdottaka Jun 4, 2025
d5d68c2
Potential fix for code scanning alert no. 1599: Poorly documented lar…
sdottaka Jun 4, 2025
c814e67
WIP
sdottaka Jun 4, 2025
7742e89
WIP
sdottaka Jun 5, 2025
436d15c
Potential fix for code scanning alert no. 1609: Catching by value
sdottaka Jun 5, 2025
4609aed
WIP
sdottaka Jun 5, 2025
8e344ad
WIP
sdottaka Jun 5, 2025
a8b75a4
WIP
sdottaka Jun 6, 2025
f267d65
Merge remote-tracking branch 'origin/master' into advanced-filter
sdottaka Jun 6, 2025
ce577bf
WIP
sdottaka Jun 8, 2025
1aa8e43
WIP
sdottaka Jun 8, 2025
7b28773
WIP
sdottaka Jun 8, 2025
e939e27
WIP
sdottaka Jun 8, 2025
052ff60
WIP
sdottaka Jun 8, 2025
9983b07
WIP
sdottaka Jun 9, 2025
0920efb
WIP
sdottaka Jun 10, 2025
909825e
Merge branch 'master' into advanced-filter
sdottaka Jun 10, 2025
7da40ac
WIP
sdottaka Jun 11, 2025
466f9aa
WIP
sdottaka Jun 12, 2025
b9e7c8e
WIP
sdottaka Jun 12, 2025
641cdc9
WIP
sdottaka Jun 13, 2025
ac97ee8
Merge remote-tracking branch 'origin/master' into advanced-filter
sdottaka Jun 13, 2025
2e2893e
WIP
sdottaka Jun 13, 2025
8ed3855
WIP
sdottaka Jun 14, 2025
ab14656
WIP
sdottaka Jun 16, 2025
5e9a809
WIP
sdottaka Jun 16, 2025
0e51074
Merge branch 'master' into advanced-filter
sdottaka Jun 16, 2025
a6d596c
Merge branch 'master' into advanced-filter
sdottaka Jun 16, 2025
6f2d1e1
WIP
sdottaka Jun 17, 2025
8c11c20
WIP
sdottaka Jun 18, 2025
0eb0fde
WIP
sdottaka Jun 18, 2025
c44da93
WIP
sdottaka Jun 18, 2025
60bab0e
WIP
sdottaka Jun 19, 2025
8863014
WIP
sdottaka Jun 19, 2025
ec32c39
WIP
sdottaka Jun 19, 2025
c954a15
WIP
sdottaka Jun 23, 2025
0b34616
Merge branch 'master' into advanced-filter
sdottaka Jun 23, 2025
5a77635
WIP
sdottaka Jun 24, 2025
9ac323c
Merge branch 'master' into advanced-filter
sdottaka Jun 26, 2025
1d7953f
WIP
sdottaka Jun 26, 2025
6e7eec8
WIP
sdottaka Jun 29, 2025
cdd8638
Merge remote-tracking branch 'origin/master' into advanced-filter
sdottaka Jun 29, 2025
cfdf536
WIP
sdottaka Jun 30, 2025
2bf0e4f
WIP
sdottaka Jul 1, 2025
d1b7974
Merge branch 'master' into advanced-filter
sdottaka Jul 1, 2025
4c3cd9c
Merge remote-tracking branch 'origin/master' into advanced-filter
sdottaka Jul 2, 2025
90ddde1
WIP
sdottaka Jul 3, 2025
1fa5098
WIP
sdottaka Jul 6, 2025
f4bb8bb
WIP
sdottaka Jul 6, 2025
b32df20
WIP
sdottaka Jul 9, 2025
83de586
WIP
sdottaka Jul 10, 2025
a23ab6e
WIP
sdottaka Jul 10, 2025
affe6fc
Merge remote-tracking branch 'origin/master' into advanced-filter
sdottaka Jul 10, 2025
310da46
WIP
sdottaka Jul 10, 2025
dcf3503
WIP
sdottaka Jul 13, 2025
10f8142
WIP
sdottaka Jul 14, 2025
44ef410
WIP
sdottaka Jul 14, 2025
1f11018
WIP
sdottaka Jul 14, 2025
79bdd4f
Merge branch 'master' into advanced-filter
sdottaka Jul 14, 2025
f1c0510
WP
sdottaka Jul 15, 2025
7ba5659
WP
sdottaka Jul 16, 2025
7e333df
WIP
sdottaka Jul 16, 2025
43400b7
Fix crash when copying multiple selected diff hunks
sdottaka Jul 16, 2025
2f0a825
Fix failure to compare files with relative paths when /s option is us…
sdottaka Jul 16, 2025
622d89a
WIP
sdottaka Jul 17, 2025
8d676be
WIP
sdottaka Jul 17, 2025
830d0ef
WIP
sdottaka Jul 17, 2025
19cbb58
WIP
sdottaka Jul 17, 2025
c61fc93
WIP
sdottaka Jul 18, 2025
990d8c0
WIP
sdottaka Jul 19, 2025
9b6e78a
WIP
sdottaka Jul 19, 2025
6e1a39d
WIP
sdottaka Jul 19, 2025
4f54bfd
WIP
sdottaka Jul 19, 2025
b1547e9
Merge branch 'master' into advanced-filter
sdottaka Jul 20, 2025
3d405b6
WIP
sdottaka Jul 20, 2025
ecc327b
WIP
sdottaka Jul 20, 2025
c5e18bc
Merge branch 'master' into advanced-filter
sdottaka Jul 20, 2025
8612d0f
WIP
sdottaka Jul 21, 2025
8bc76d1
WIP
sdottaka Jul 21, 2025
1171e9f
WIP
sdottaka Jul 21, 2025
781a5d5
Merge remote-tracking branch 'origin/master' into advanced-filter
sdottaka Jul 21, 2025
9133c2a
WIP
sdottaka Jul 21, 2025
40e600c
Merge branch 'master' into advanced-filter
sdottaka Jul 21, 2025
d450069
WIP
sdottaka Jul 21, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions ALL.vs2017.sln
Original file line number Diff line number Diff line change
@@ -443,6 +443,8 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Common", "Plugins\src_VCPP\
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "editlibparsers", "Externals\crystaledit\editlib\editlibparsers.vcxitems", "{4170552A-09E2-4FAC-B71D-0E2F5EB3C869}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "FilterEngine", "Src\FilterEngine\FilterEngine.vcxitems", "{9C37E5D8-1DC0-4EAC-AADB-5FC8BE4FB1BC}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|ARM = Debug|ARM
@@ -1388,20 +1390,24 @@ Global
Externals\xdiff\xdiff.vcxitems*{733e7c0b-ac3d-47ac-a8da-e13644d6294d}*SharedItemsImports = 4
Src\CompareEngines\CompareEngines.vcxitems*{733e7c0b-ac3d-47ac-a8da-e13644d6294d}*SharedItemsImports = 4
Src\diffutils\diffutils.vcxitems*{733e7c0b-ac3d-47ac-a8da-e13644d6294d}*SharedItemsImports = 4
Src\FilterEngine\FilterEngine.vcxitems*{733e7c0b-ac3d-47ac-a8da-e13644d6294d}*SharedItemsImports = 4
Plugins\src_VCPP\Common\Common.vcxitems*{7354ba4f-8dab-46ee-a5a2-a148d6ef2443}*SharedItemsImports = 9
Externals\crystaledit\editlib\editlib.vcxitems*{7515ac3c-389a-44cd-b940-a59dde5b8ae3}*SharedItemsImports = 9
Src\FilterEngine\FilterEngine.vcxitems*{9c37e5d8-1dc0-4eac-aadb-5fc8be4fb1bc}*SharedItemsImports = 9
Externals\googletest\googletest\googletest.vcxitems*{9ee35458-b145-444f-92b7-27ff72112c42}*SharedItemsImports = 9
Externals\crystaledit\editlib\editlib.vcxitems*{9fda4af0-ccfd-4812-bdb9-53efedb32bde}*SharedItemsImports = 4
Externals\crystaledit\editlib\editlibparsers.vcxitems*{9fda4af0-ccfd-4812-bdb9-53efedb32bde}*SharedItemsImports = 4
Externals\xdiff\xdiff.vcxitems*{9fda4af0-ccfd-4812-bdb9-53efedb32bde}*SharedItemsImports = 4
Src\CompareEngines\CompareEngines.vcxitems*{9fda4af0-ccfd-4812-bdb9-53efedb32bde}*SharedItemsImports = 4
Src\diffutils\diffutils.vcxitems*{9fda4af0-ccfd-4812-bdb9-53efedb32bde}*SharedItemsImports = 4
Src\FilterEngine\FilterEngine.vcxitems*{9fda4af0-ccfd-4812-bdb9-53efedb32bde}*SharedItemsImports = 4
Plugins\src_VCPP\Common\Common.vcxitems*{a644fba4-d76e-4500-b4b7-04d7a245359a}*SharedItemsImports = 4
Plugins\src_VCPP\Common\Common.vcxitems*{aa88b46e-b2e2-4b03-8cd5-1e9d60db6ab2}*SharedItemsImports = 4
Externals\crystaledit\editlib\editlibparsers.vcxitems*{ab827c6b-5116-408f-b453-e2075e9b73b4}*SharedItemsImports = 4
Externals\xdiff\xdiff.vcxitems*{ab827c6b-5116-408f-b453-e2075e9b73b4}*SharedItemsImports = 4
Src\CompareEngines\CompareEngines.vcxitems*{ab827c6b-5116-408f-b453-e2075e9b73b4}*SharedItemsImports = 4
Src\diffutils\diffutils.vcxitems*{ab827c6b-5116-408f-b453-e2075e9b73b4}*SharedItemsImports = 4
Src\FilterEngine\FilterEngine.vcxitems*{ab827c6b-5116-408f-b453-e2075e9b73b4}*SharedItemsImports = 4
Plugins\src_VCPP\Common\Common.vcxitems*{bd0c5fe1-8457-49c2-8801-0c99a6e6cc03}*SharedItemsImports = 4
Externals\crystaledit\editlib\editlib.vcxitems*{c347d6ae-7a2b-4ed0-97ad-2595e1c5d7dd}*SharedItemsImports = 4
Externals\crystaledit\editlib\editlibparsers.vcxitems*{c347d6ae-7a2b-4ed0-97ad-2595e1c5d7dd}*SharedItemsImports = 4
6 changes: 6 additions & 0 deletions ALL.vs2019.sln
Original file line number Diff line number Diff line change
@@ -454,6 +454,8 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Common", "Plugins\src_VCPP\
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "editlibparsers", "Externals\crystaledit\editlib\editlibparsers.vcxitems", "{4170552A-09E2-4FAC-B71D-0E2F5EB3C869}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "FilterEngine", "Src\FilterEngine\FilterEngine.vcxitems", "{9C37E5D8-1DC0-4EAC-AADB-5FC8BE4FB1BC}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|ARM = Debug|ARM
@@ -1457,20 +1459,24 @@ Global
Externals\xdiff\xdiff.vcxitems*{733e7c0b-ac3d-47ac-a8da-e13644d6294d}*SharedItemsImports = 4
Src\CompareEngines\CompareEngines.vcxitems*{733e7c0b-ac3d-47ac-a8da-e13644d6294d}*SharedItemsImports = 4
Src\diffutils\diffutils.vcxitems*{733e7c0b-ac3d-47ac-a8da-e13644d6294d}*SharedItemsImports = 4
Src\FilterEngine\FilterEngine.vcxitems*{733e7c0b-ac3d-47ac-a8da-e13644d6294d}*SharedItemsImports = 4
Plugins\src_VCPP\Common\Common.vcxitems*{7354ba4f-8dab-46ee-a5a2-a148d6ef2443}*SharedItemsImports = 9
Externals\crystaledit\editlib\editlib.vcxitems*{7515ac3c-389a-44cd-b940-a59dde5b8ae3}*SharedItemsImports = 9
Src\FilterEngine\FilterEngine.vcxitems*{9c37e5d8-1dc0-4eac-aadb-5fc8be4fb1bc}*SharedItemsImports = 9
Externals\googletest\googletest\googletest.vcxitems*{9ee35458-b145-444f-92b7-27ff72112c42}*SharedItemsImports = 9
Externals\crystaledit\editlib\editlib.vcxitems*{9fda4af0-ccfd-4812-bdb9-53efedb32bde}*SharedItemsImports = 4
Externals\crystaledit\editlib\editlibparsers.vcxitems*{9fda4af0-ccfd-4812-bdb9-53efedb32bde}*SharedItemsImports = 4
Externals\xdiff\xdiff.vcxitems*{9fda4af0-ccfd-4812-bdb9-53efedb32bde}*SharedItemsImports = 4
Src\CompareEngines\CompareEngines.vcxitems*{9fda4af0-ccfd-4812-bdb9-53efedb32bde}*SharedItemsImports = 4
Src\diffutils\diffutils.vcxitems*{9fda4af0-ccfd-4812-bdb9-53efedb32bde}*SharedItemsImports = 4
Src\FilterEngine\FilterEngine.vcxitems*{9fda4af0-ccfd-4812-bdb9-53efedb32bde}*SharedItemsImports = 4
Plugins\src_VCPP\Common\Common.vcxitems*{a644fba4-d76e-4500-b4b7-04d7a245359a}*SharedItemsImports = 4
Plugins\src_VCPP\Common\Common.vcxitems*{aa88b46e-b2e2-4b03-8cd5-1e9d60db6ab2}*SharedItemsImports = 4
Externals\crystaledit\editlib\editlibparsers.vcxitems*{ab827c6b-5116-408f-b453-e2075e9b73b4}*SharedItemsImports = 4
Externals\xdiff\xdiff.vcxitems*{ab827c6b-5116-408f-b453-e2075e9b73b4}*SharedItemsImports = 4
Src\CompareEngines\CompareEngines.vcxitems*{ab827c6b-5116-408f-b453-e2075e9b73b4}*SharedItemsImports = 4
Src\diffutils\diffutils.vcxitems*{ab827c6b-5116-408f-b453-e2075e9b73b4}*SharedItemsImports = 4
Src\FilterEngine\FilterEngine.vcxitems*{ab827c6b-5116-408f-b453-e2075e9b73b4}*SharedItemsImports = 4
Plugins\src_VCPP\Common\Common.vcxitems*{bd0c5fe1-8457-49c2-8801-0c99a6e6cc03}*SharedItemsImports = 4
Externals\crystaledit\editlib\editlib.vcxitems*{c347d6ae-7a2b-4ed0-97ad-2595e1c5d7dd}*SharedItemsImports = 4
Externals\crystaledit\editlib\editlibparsers.vcxitems*{c347d6ae-7a2b-4ed0-97ad-2595e1c5d7dd}*SharedItemsImports = 4
6 changes: 6 additions & 0 deletions ALL.vs2022.sln
Original file line number Diff line number Diff line change
@@ -454,6 +454,8 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Common", "Plugins\src_VCPP\
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "editlibparsers", "Externals\crystaledit\editlib\editlibparsers.vcxitems", "{4170552A-09E2-4FAC-B71D-0E2F5EB3C869}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "FilterEngine", "Src\FilterEngine\FilterEngine.vcxitems", "{9C37E5D8-1DC0-4EAC-AADB-5FC8BE4FB1BC}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|ARM = Debug|ARM
@@ -1457,20 +1459,24 @@ Global
Externals\xdiff\xdiff.vcxitems*{733e7c0b-ac3d-47ac-a8da-e13644d6294d}*SharedItemsImports = 4
Src\CompareEngines\CompareEngines.vcxitems*{733e7c0b-ac3d-47ac-a8da-e13644d6294d}*SharedItemsImports = 4
Src\diffutils\diffutils.vcxitems*{733e7c0b-ac3d-47ac-a8da-e13644d6294d}*SharedItemsImports = 4
Src\FilterEngine\FilterEngine.vcxitems*{733e7c0b-ac3d-47ac-a8da-e13644d6294d}*SharedItemsImports = 4
Plugins\src_VCPP\Common\Common.vcxitems*{7354ba4f-8dab-46ee-a5a2-a148d6ef2443}*SharedItemsImports = 9
Externals\crystaledit\editlib\editlib.vcxitems*{7515ac3c-389a-44cd-b940-a59dde5b8ae3}*SharedItemsImports = 9
Src\FilterEngine\FilterEngine.vcxitems*{9c37e5d8-1dc0-4eac-aadb-5fc8be4fb1bc}*SharedItemsImports = 9
Externals\googletest\googletest\googletest.vcxitems*{9ee35458-b145-444f-92b7-27ff72112c42}*SharedItemsImports = 9
Externals\crystaledit\editlib\editlib.vcxitems*{9fda4af0-ccfd-4812-bdb9-53efedb32bde}*SharedItemsImports = 4
Externals\crystaledit\editlib\editlibparsers.vcxitems*{9fda4af0-ccfd-4812-bdb9-53efedb32bde}*SharedItemsImports = 4
Externals\xdiff\xdiff.vcxitems*{9fda4af0-ccfd-4812-bdb9-53efedb32bde}*SharedItemsImports = 4
Src\CompareEngines\CompareEngines.vcxitems*{9fda4af0-ccfd-4812-bdb9-53efedb32bde}*SharedItemsImports = 4
Src\diffutils\diffutils.vcxitems*{9fda4af0-ccfd-4812-bdb9-53efedb32bde}*SharedItemsImports = 4
Src\FilterEngine\FilterEngine.vcxitems*{9fda4af0-ccfd-4812-bdb9-53efedb32bde}*SharedItemsImports = 4
Plugins\src_VCPP\Common\Common.vcxitems*{a644fba4-d76e-4500-b4b7-04d7a245359a}*SharedItemsImports = 4
Plugins\src_VCPP\Common\Common.vcxitems*{aa88b46e-b2e2-4b03-8cd5-1e9d60db6ab2}*SharedItemsImports = 4
Externals\crystaledit\editlib\editlibparsers.vcxitems*{ab827c6b-5116-408f-b453-e2075e9b73b4}*SharedItemsImports = 4
Externals\xdiff\xdiff.vcxitems*{ab827c6b-5116-408f-b453-e2075e9b73b4}*SharedItemsImports = 4
Src\CompareEngines\CompareEngines.vcxitems*{ab827c6b-5116-408f-b453-e2075e9b73b4}*SharedItemsImports = 4
Src\diffutils\diffutils.vcxitems*{ab827c6b-5116-408f-b453-e2075e9b73b4}*SharedItemsImports = 4
Src\FilterEngine\FilterEngine.vcxitems*{ab827c6b-5116-408f-b453-e2075e9b73b4}*SharedItemsImports = 4
Plugins\src_VCPP\Common\Common.vcxitems*{bd0c5fe1-8457-49c2-8801-0c99a6e6cc03}*SharedItemsImports = 4
Externals\crystaledit\editlib\editlib.vcxitems*{c347d6ae-7a2b-4ed0-97ad-2595e1c5d7dd}*SharedItemsImports = 4
Externals\crystaledit\editlib\editlibparsers.vcxitems*{c347d6ae-7a2b-4ed0-97ad-2595e1c5d7dd}*SharedItemsImports = 4
7 changes: 7 additions & 0 deletions DownloadDeps.cmd
Original file line number Diff line number Diff line change
@@ -36,6 +36,9 @@ https://mirror.msys2.org/mingw/mingw32/mingw-w64-i686-md4c-0.5.2-1-any.pkg.tar.z
https://mirror.msys2.org/msys/i686/gcc-libs-10.2.0-1-i686.pkg.tar.zst!Build\msys2_tmp ^
https://mirror.msys2.org/msys/i686/msys2-runtime-3.2.0-14-i686.pkg.tar.zst!Build\msys2_tmp ^
https://mirror.msys2.org/msys/i686/patch-2.7.6-1-i686.pkg.tar.xz!Build\msys2_tmp ^
https://mirror.msys2.org/msys/i686/lemon-3.46.1-1-i686.pkg.tar.zst!Build\msys2_tmp ^
https://mirror.msys2.org/msys/i686/re2c-3.1-2-i686.pkg.tar.zst!Build\msys2_tmp ^
https://mirror.msys2.org/msys/i686/gcc-libs-13.3.0-1-i686.pkg.tar.zst!Build\msys2_tmp ^
http://www.magicnotes.com/steelbytes/SBAppLocale_ENG.zip!Docs\Manual\Tools

pushd "%~dp0"
@@ -71,6 +74,10 @@ mkdir Build\msys2\usr\share 2> NUL
copy Build\msys2_tmp\usr\bin\patch.exe Build\msys2\usr\bin\
copy Build\msys2_tmp\usr\bin\msys-2.0.dll Build\msys2\usr\bin\
copy Build\msys2_tmp\usr\bin\msys-gcc_s-1.dll Build\msys2\usr\bin\
copy Build\msys2_tmp\usr\bin\msys-gcc_s-seh-1.dll Build\msys2\usr\bin\
copy "Build\msys2_tmp\usr\bin\msys-stdc++-6.dll" Build\msys2\usr\bin\
copy Build\msys2_tmp\usr\bin\lemon.exe Build\msys2\usr\bin\
copy Build\msys2_tmp\usr\bin\re2c.exe Build\msys2\usr\bin\
xcopy /s /y Build\msys2_tmp\usr\share\*.* Build\msys2\usr\share\
rmdir /q /s Build\msys2_tmp\ > NUL 2> NUL

2 changes: 1 addition & 1 deletion Externals/crystaledit/icudata/icudata.vcxproj
Original file line number Diff line number Diff line change
@@ -39,7 +39,7 @@
<Keyword>Win32Proj</Keyword>
<ProjectGuid>{2710a368-ed56-4fb1-80c3-d93ba6483710}</ProjectGuid>
<RootNamespace>icudata</RootNamespace>
<WindowsTargetPlatformVersion Condition="'$(VisualStudioVersion)' == '15'">10.0.22000.0</WindowsTargetPlatformVersion>
<WindowsTargetPlatformVersion Condition="'$(VisualStudioVersion)' == '15'">10.0.26100.0</WindowsTargetPlatformVersion>
<WindowsTargetPlatformVersion Condition="'$(VisualStudioVersion)' &gt;= '16'">$(LatestTargetPlatformVersion)</WindowsTargetPlatformVersion>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
19 changes: 19 additions & 0 deletions Externals/poco/Foundation/Foundation.vcxproj
Original file line number Diff line number Diff line change
@@ -445,6 +445,15 @@
<ClCompile Include="src\Clock.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="src\DateTimeFormat.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="src\DateTimeFormatter.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="src\DateTimeParser.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="src\Debugger.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
@@ -470,6 +479,9 @@
<ClCompile Include="src\Latin2Encoding.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="src\LocalDateTime.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="src\LogFile.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
@@ -531,6 +543,9 @@
<ClCompile Include="src\StringTokenizer.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="src\Timezone.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="src\UTF32Encoding.cpp">
<ExcludedFromBuild>true</ExcludedFromBuild>
</ClCompile>
@@ -819,6 +834,8 @@
<ClInclude Include="include\Poco\ByteOrder.h" />
<ClInclude Include="include\Poco\Clock.h" />
<ClInclude Include="include\Poco\Config.h" />
<ClInclude Include="include\Poco\DateTimeFormat.h" />
<ClInclude Include="include\Poco\DateTimeFormatter.h" />
<ClInclude Include="include\Poco\Debugger.h" />
<ClInclude Include="include\Poco\DynamicFactory.h" />
<ClInclude Include="include\Poco\Environment.h" />
@@ -830,6 +847,7 @@
<ClInclude Include="include\Poco\Foundation.h" />
<ClInclude Include="include\Poco\Instantiator.h" />
<ClInclude Include="include\Poco\Latin2Encoding.h" />
<ClInclude Include="include\Poco\LocalDateTime.h" />
<ClInclude Include="include\Poco\LogFile.h" />
<ClInclude Include="include\Poco\Logger.h" />
<ClInclude Include="include\Poco\LoggingRegistry.h" />
@@ -850,6 +868,7 @@
<ClInclude Include="include\Poco\SingletonHolder.h" />
<ClInclude Include="include\Poco\String.h" />
<ClInclude Include="include\Poco\StringTokenizer.h" />
<ClInclude Include="include\Poco\Timezone.h" />
<ClInclude Include="include\Poco\Tuple.h" />
<ClInclude Include="include\Poco\TypeList.h" />
<ClInclude Include="include\Poco\Types.h" />
27 changes: 27 additions & 0 deletions Externals/poco/Foundation/Foundation.vcxproj.filters
Original file line number Diff line number Diff line change
@@ -553,6 +553,21 @@
<ClCompile Include="src\SimpleFileChannel.cpp">
<Filter>Logging\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\DateTimeParser.cpp">
<Filter>DateTime\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\DateTimeFormat.cpp">
<Filter>DateTime\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\LocalDateTime.cpp">
<Filter>DateTime\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\Timezone.cpp">
<Filter>DateTime\Source Files</Filter>
</ClCompile>
<ClCompile Include="src\DateTimeFormatter.cpp">
<Filter>DateTime\Source Files</Filter>
</ClCompile>
</ItemGroup>
<ItemGroup>
<ClInclude Include="include\Poco\Any.h">
@@ -1050,5 +1065,17 @@
<ClInclude Include="include\Poco\Logger.h">
<Filter>Logging\Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Poco\DateTimeFormatter.h">
<Filter>DateTime\Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Poco\DateTimeFormat.h">
<Filter>DateTime\Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Poco\Timezone.h">
<Filter>DateTime\Header Files</Filter>
</ClInclude>
<ClInclude Include="include\Poco\LocalDateTime.h">
<Filter>DateTime\Header Files</Filter>
</ClInclude>
</ItemGroup>
</Project>
5 changes: 5 additions & 0 deletions Externals/poco/Foundation/src/Foundation.cpp
Original file line number Diff line number Diff line change
@@ -16,9 +16,14 @@
// DateTime
#include "Clock.cpp"
#include "DateTime.cpp"
#include "DateTimeFormat.cpp"
#include "DateTimeFormatter.cpp"

Check notice

Code scanning / CodeQL

Include header files only Note

The #include pre-processor directive should only be used to include header files.

Copilot Autofix

AI 2 months ago

To fix the issue, we need to refactor the code to include only header files in Foundation.cpp. This involves the following steps:

  1. Move the declarations of classes, functions, and other interfaces from the .cpp files (e.g., DateTimeFormatter.cpp) to corresponding .h header files (e.g., DateTimeFormatter.h).
  2. Ensure that the .cpp files contain only the implementation of the declarations in the header files.
  3. Replace the #include directives for .cpp files in Foundation.cpp with #include directives for the corresponding .h files.

This approach ensures that Foundation.cpp adheres to the principle of including only header files and avoids exposing implementation details unnecessarily.


Suggested changeset 1
Externals/poco/Foundation/src/Foundation.cpp

Autofix patch

Autofix patch
Run the following command in your local git repository to apply this patch
cat << 'EOF' | git apply
diff --git a/Externals/poco/Foundation/src/Foundation.cpp b/Externals/poco/Foundation/src/Foundation.cpp
--- a/Externals/poco/Foundation/src/Foundation.cpp
+++ b/Externals/poco/Foundation/src/Foundation.cpp
@@ -19,3 +19,3 @@
 #include "DateTimeFormat.cpp"
-#include "DateTimeFormatter.cpp"
+#include "DateTimeFormatter.h"
 #include "DateTimeParser.cpp"
EOF
@@ -19,3 +19,3 @@
#include "DateTimeFormat.cpp"
#include "DateTimeFormatter.cpp"
#include "DateTimeFormatter.h"
#include "DateTimeParser.cpp"
Copilot is powered by AI and may make mistakes. Always verify output.
#include "DateTimeParser.cpp"
#include "LocalDateTime.cpp"
#include "Stopwatch.cpp"
#include "Timespan.cpp"
#include "Timestamp.cpp"
#include "Timezone.cpp"
// Filesystem
#include "DirectoryIterator.cpp"
#include "File.cpp"
150 changes: 150 additions & 0 deletions Src/Common/ValidatingEdit.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,150 @@
/**
* @file ValidatingEdit.cpp
*
* @brief Implementation file for CValidatingEdit
*
*/
#include "stdafx.h"
#include "ValidatingEdit.h"

IMPLEMENT_DYNAMIC(CValidatingEdit, CEdit)

#define ID_VALIDATE_TIMER 1001
#define ID_UPDATE_TIMER 1002
#define VALIDATE_DELAY_MS 700
#define UPDATE_DELAY_MS 200

CValidatingEdit::CValidatingEdit()
: m_hasError(false)
, m_errorColor(RGB(255, 200, 200))
, m_errorBrush(m_errorColor)
, m_toolItem{}
{
}

CValidatingEdit::~CValidatingEdit()
{
m_errorBrush.DeleteObject();
}

BEGIN_MESSAGE_MAP(CValidatingEdit, CEdit)
ON_WM_CTLCOLOR_REFLECT()
ON_WM_KILLFOCUS()
ON_WM_TIMER()
END_MESSAGE_MAP()

void CValidatingEdit::SetBackColor(COLORREF color)
{
m_errorColor = color;
m_errorBrush.DeleteObject();
m_errorBrush.CreateSolidBrush(m_errorColor);
}

void CValidatingEdit::Validate()
{
CString text;
GetWindowText(text);

const CString prevErrorMessage = m_errorMessage;
m_hasError = false;
m_errorMessage.Empty();

if (m_validator)
{
CString msg;
if (!m_validator(text, msg))
{
m_hasError = true;
m_errorMessage = msg;
}
}
if (prevErrorMessage != m_errorMessage)
{
KillTimer(ID_UPDATE_TIMER);
SetTimer(ID_UPDATE_TIMER, UPDATE_DELAY_MS, nullptr);
}

Invalidate();
}

HBRUSH CValidatingEdit::CtlColor(CDC* pDC, UINT /*nCtlColor*/)
{
if (m_hasError)
{
pDC->SetBkColor(m_errorColor);
return (HBRUSH)m_errorBrush.GetSafeHandle();
}
return nullptr;
}

BOOL CValidatingEdit::PreTranslateMessage(MSG* pMsg)
{
if (m_toolTip.m_hWnd)
m_toolTip.RelayEvent(pMsg);
return CEdit::PreTranslateMessage(pMsg);
}

void CValidatingEdit::OnKillFocus(CWnd* pNewWnd)
{
CEdit::OnKillFocus(pNewWnd);
Validate();
}

void CValidatingEdit::OnEnChange()
{
if (!m_hWnd)
return;
KillTimer(ID_VALIDATE_TIMER);
SetTimer(ID_VALIDATE_TIMER, VALIDATE_DELAY_MS, nullptr);
}

void CValidatingEdit::OnTimer(UINT_PTR nIDEvent)
{
if (nIDEvent == ID_VALIDATE_TIMER)
{
KillTimer(ID_VALIDATE_TIMER);
Validate();
return;
}
if (nIDEvent == ID_UPDATE_TIMER)
{
KillTimer(ID_UPDATE_TIMER);

if (m_hasError)
{
CRect rc;
GetWindowRect(&rc);

if (!m_toolTip.GetSafeHwnd())
{
m_toolTip.Create(this, TTS_NOPREFIX | TTS_BALLOON | TTS_ALWAYSTIP);
m_toolItem.cbSize = sizeof(TOOLINFO);
m_toolItem.uFlags = TTF_TRACK | TTF_ABSOLUTE;
m_toolItem.hwnd = m_hWnd;
m_toolItem.uId = 1;
m_toolItem.lpszText = _T("");
m_toolTip.SendMessage(TTM_ADDTOOL, 0, (LPARAM)&m_toolItem);
m_toolTip.SetMaxTipWidth(rc.Width());
}

m_toolItem.lpszText = (LPTSTR)(LPCTSTR)m_errorMessage;
m_toolTip.SetToolInfo(&m_toolItem);

POINT pt{ rc.left, rc.bottom };
m_toolTip.SendMessage(TTM_TRACKPOSITION, 0, (LPARAM)MAKELONG(pt.x, pt.y));

m_toolTip.SendMessage(TTM_TRACKACTIVATE, TRUE, (LPARAM)&m_toolItem);
}
else
{
if (m_toolTip.GetSafeHwnd())
{
m_toolTip.UpdateTipText(_T(""), this);
m_toolTip.SendMessage(TTM_TRACKACTIVATE, FALSE, (LPARAM)&m_toolItem);
}
}
return;
}
CEdit::OnTimer(nIDEvent);
}

Loading