Commit Graph

43 Commits

Author SHA1 Message Date
ozone10 6cd6aa3843 Make clang warnings flags in makefile and msvc consistent
PR #15189 added option to use clang with gcc makefile.
This PR makes clang warnings flags in makefile and msvc consistent.

Close #15227
2024-06-01 01:26:04 +02:00
Christian Grasser 2ed6c77dfe CI enhancement
- update CI link from appveyor to GH action
- add option to makefile build mingw build also with Clang++ instead of g++
- add option to makefile to enable clang analyzer

Close #15189
2024-05-25 16:19:47 +02:00
ozone10 29fcd1ac91 Readd dpi API
ref https://github.com/notepad-plus-plus/notepad-plus-plus/pull/14871#issuecomment-2002547565

Close #14876
2024-04-02 01:44:52 +02:00
Don Ho 999b4d1887 Revert "Improve hiDPI appearance for some DM elements"
This reverts commit 356d5cd072.

Close #14875
2024-03-17 17:39:28 +01:00
Don Ho 10305ebded Revert "Use undocumented dpi API to support win7"
This reverts commit c8a2bcb6b0.

ref: https://github.com/notepad-plus-plus/notepad-plus-plus/pull/14855#issuecomment-2002031940
2024-03-17 16:13:12 +01:00
ozone10 c8a2bcb6b0 Use undocumented dpi API to support win7
Fix https://github.com/notepad-plus-plus/notepad-plus-plus/pull/14818#issuecomment-1993472569

Close #14855
2024-03-14 22:31:45 +01:00
ozone10 356d5cd072 Improve hiDPI appearance for some DM elements
This commit is also preparation to properly support HiDPI for Windows 10/11 and newer.

Fix #14817, close #14818
2024-03-12 18:04:21 +01:00
ozone10 a647991cd7 Fix some GCC and MSC warnings
-  optimize dark mode
-  add initializers

Fix #13867, close #13868
2023-07-07 19:51:39 +02:00
ozone10 e7f321f21a Add message NPPM_DARKMODESUBCLASSANDTHEME
to allow plugin authors to use generic dark mode.
Unfortunately not for C# plugins.
related #13572

Fix #13574, close #13596
2023-05-28 11:52:14 +02:00
ozone10 63ba30cfe1 Code enhancement: add -Wextra flag for GCC builds
- fix ignored-qualifiers warnings
- fix inconsistent-missing-override warnings
- use -O3 flag for GCC builds to keep inline with scintilla and lexilla
- add clang default settings in props
- add clang detection in debug info

Fix #13099, close #13100
2023-02-13 23:55:35 +01:00
ozone10 662b54e28a Add property sheet in VS project and clean project file
Ref: https://github.com/notepad-plus-plus/notepad-plus-plus/pull/12773#discussion_r1064351459

Fix #12790, close #12791
2023-01-11 18:34:01 +01:00
ozone10 0742410737 Use predefined cursor (hand) for link text
Fix #12772, close #12773
2023-01-10 00:38:00 +01:00
ArkadiuszMichalski 13dfaa96a8 Add -Wconversion flag to makefile
Fix #12740, close #12747
2023-01-03 01:23:30 +01:00
ArkadiuszMichalski 1d6fe3ff42 [xml][force compile] Add toolbarIcons.xml to the build process
Ref: https://github.com/notepad-plus-plus/notepad-plus-plus/pull/12682#issuecomment-1365151173

Close #12712
2022-12-27 19:20:06 +01:00
ArkadiuszMichalski 5a1e0898ca Add two missing xml files to makefile
Close #12682
2022-12-26 14:05:38 +01:00
Christian Grasser f57c69aac6 Fix output from makefile and correct cmake for c++20
Close #12297
2022-10-07 02:58:44 +02:00
ozone10 bcaf0f00b5 Update CI env to have GCC 12 for using c++20
1. Update Makefile to use c++20.
2. Update appveyor.yml to use MSYS2 (GCC 12).

Close #12292
2022-10-06 17:34:19 +02:00
Robert Di Pardo d6595ad836 Make Plugins Admin work with MinGW in debug mode binary
Convert path to nppPluginList.json with ::wstring2string().

Unlike MSVC [1], MinGW GCC doesn't provide file stream constructors
for wchar_t* paths [2].

 ---
 [1] https://stackoverflow.com/a/822032
 [2] https://sourceforge.net/p/mingw-w64/mailman/message/34249829

Fixes #11687, close #11701
2022-05-25 18:37:21 +02:00
ArkadiuszMichalski 46ce9c31df [MinGW] Restore the original Scintilla makefile
For the sake of maintenance of Scintilla (future update), we try to not modify Scintilla project, or at least minimize its modification.
Hence the compiling boost part is shifted to Notepad++ project.

Fix #11014, close #11485
2022-04-09 17:39:21 +02:00
ArkadiuszMichalski 44bcf1cff6 [MinGW] Place the Scintilla build intermediate files separate from the source files
1. Scintilla and Lexilla intermediate files are created in the same folder as NPP build file (`bin.i686.build` or `bin.x86_64.build`), but in subfolder `_lexilla.build` and `_scintilla.build`. I added `_` char at the beginning so these folders are always at the beginning. If you prefer a different name or location it can be change.
2. Stop build and dispaly error message when someone run "outside build" (use `-f` option) and source path has any spaces. It won't work anyway, so it's worth stopping the process and give a clear message.
3. Add new phony target `sciclean` and `lexclean` for deleting Scintilla or Lexilla intermediate files separately.
4. Change `_` to `|` for temporary replacement of space characters when detect proper shell. Char `_` is allowed in paths and should not be used for that purpose.
5. Add one more condition for `MAKELEVEL` variable to prevent unnecessary second calls to Scintilla and Lexilla makefile.
6. Update also `nppSpecifics_mingw.mak` file to works with above change.

Now we don't have to remember to clean up the previous files when we switch to different compiler (32-bit or 64-bit) or when we generate a debug version.

Fix 10991, close #11450
2022-04-06 01:16:11 +02:00
Christian Grasser a61b03ea88 Update Scintilla from v4.4.6 to v5.2.1 and add Lexilla v5.1.5
Update with https://www.scintilla.org/scintilla521.zip
            https://www.scintilla.org/lexilla515.zip

- fix setting to bring Scintilla::PositionCR from ScintillaStructures.h inline with Sci_Position.h Sci_PositionCR
- add workaround to enable lexer for searchResult
commented out SCI_SETILEXER call on searchResult to get one result which is correctly handled by the lexer,
added comment about the current problem with property @MarkingsStruct which seems to disappear after call to SCI_SETILEXER or CreateLexer
- corrected usage of ObjC lexer
- removed unnecessary filter stuff
- use own sections for scintilla and lexilla build targets and allow parallel builds
- as libscilex is no longer existing, changed to libscintilla
- adapt makefiles and cmake
- use VS2019
- started simple changes for createlexer adaptations, nullpointercheck missing on return of lexer name from deprecated LexerNameFromID -> undefined behaviour
- movement from id -> lexer name, mostly done via LexerNameFromID + switching off corresponding compiler warning
- changed to SCI_SETILEXER from SCI_SETLEXER, SCI_SETLEXERLANGUAGE needs to be corrected, see Scintilla5Migration.html
- just commented out: SCI_LOADLEXERLIBRARY

Fix #10504, close #11419
2022-03-27 17:12:53 +02:00
ArkadiuszMichalski 0dd0a9586a Support both MingGW multilib versions
Fix #10941, close #10962
2022-01-04 22:34:59 +01:00
ArkadiuszMichalski 85d6108a6b Fix Build not work under path with space
Fix #10907, close #10914
2021-12-21 23:44:52 +01:00
ArkadiuszMichalski 3d5aa49cdd Fix build 32-bit binary failure under unix-like shell (Git Bash)
Read Windows environment variables correct also for unix-like shell.

Fix #10885, close #10886
2021-12-14 00:54:30 +01:00
Ivan Ustûžanin 049ededf9f Add gcc 32-bit build and improve build process
1. Include SciLexer build in Notepad++ build.
2. Remove -fpermissive, auto -j in make.

Fix #9989, close #10540
2021-09-13 23:17:11 +02:00
Ivan Ustûžanin 241238df5a Fix xml writing issue in gcc build
Fix #10185, fix #9163, close #10503
2021-09-06 00:25:09 +02:00
Christian Grasser f428fbab13 Fix building MinGW release twice in appveyor builds
Improve also MinGW build (toolbar appears) by adding changes from patch https://github.com/notepad-plus-plus/notepad-plus-plus/files/6947163/notepad-gcc-build.patch.txt

Fix #10328, fix #10185, close #10469
2021-09-01 11:54:00 +02:00
mere-human 6a4ef408f2 Fix GCC compiler warnings in Notepad++
Fix #10037, close #10048
2021-06-23 12:49:06 +02:00
Christian Grasser 6750be3432 Fix for darkmode build with mingw
Close #9789
2021-04-24 06:23:33 +02:00
Adam D. Walling 5a3bf49c86 Add Dark Mode for not attracting bugs
Toolbar, status bar, tab bar, menu bar, dark scrollbar, handle switching between light and dark, docking splitters and headers, flicker fixes. Minor tweaks to DarkMode.h. Mostly handles the dark mode request for the main interface for #7692 and also follows the windows system theme settings like #9183.

Fix #9183, fix #7692, close #9587
2021-04-23 16:22:57 +02:00
Christian Grasser ab58c8ee3e One button to compile them all
1. Build Notepad++ with Scintilla static lib (libscintilla.lib) and Boost (v1.76) RegExpr.
2. ARM64 build is available.

Fix #5158, close #9594
2021-04-17 05:55:10 +02:00
mere-human 6e43ba6ea5
Add an option to mute all sounds in preferences dialog
Fix #7950, close #9507
2021-02-19 03:46:52 +01:00
mere-human 3cf65ade81
Fix typo in ScitillaComponent directory name
Rename ScitillaComponent -> ScintillaComponent.
Git history should be kept because `git mv` was used.
Also change paths in source code.

This was noted in scope of #9403

Close #9450
2021-01-27 05:39:55 +01:00
Don HO ab5c1d3e2a
Upgrade Notepad++ License
Update GPL version from v2 to v3.

Fix #9425, close #9441
2021-01-24 01:51:19 +01:00
Scott Sumner 5965b3d352 Project structure improvement: Move TreeView files in the right place
Close #9083
2020-10-31 19:15:11 +01:00
Don HO c0c070abaf
Split functionList.xml into multifile in "functionList" Folder
New "functionList" will be added beside of notepad++.exe or "%APPDATA%\Notepad++\", according the installation mode. If the portable package is used, after removing "doLocalConf.xml", the "functionList" folder should be copied manually from Notepad++ installed directory to "%APPDATA%\Notepad++\" to make function list work again.

All splited files are localized in this folder with the explicit language name.

"overrideMap.xml" is optional for overriding the default functionList parse rule files, and for adding UDL parse rule files.

Close #4896
2020-10-21 18:05:08 +02:00
Udo Hoffmann 401bfcb0cd
Add new URL parser to replace inaccurate regex detection
Fix inaccurate URL detection and enhance URL detection for non-English character.

Fix #3912, fix #3353, fix #4643, fix #5029, fix #6155, fix #7791, fix #8634, close #8921
2020-10-04 18:42:10 +02:00
Roshni-P e44ed31434
Add the ability to open the target file of a Shortcut (.lnk)
Fix #8483, close #8810
2020-09-04 14:29:39 +02:00
Scott Sumner d3cb2ceb36
Add external sound control capability for unsuccessful search bell
Fix #7950, close #7951
2020-02-17 03:37:18 +01:00
Christian Grasser c741f83bde
Update makefile for mingw gcc builds
Close #4145
2019-11-07 22:13:47 +01:00
Christian Grasser 5a96eb68b2 MinGW GCC update
- changes necessary to get back a buildable version with mingw, last adapted with https://github.com/notepad-plus-plus/notepad-plus-plus/pull/1229
- fixed some gcc compiler errors and warnings, see https://ci.appveyor.com/project/chcg/notepad-plus-plus/build/1.0.3 to https://ci.appveyor.com/project/chcg/notepad-plus-plus/build/1.0.13
- remaining task is the wincontrol "ReadDirectoryChanges", which uses ATL, propably not available with mingw
Closes #2478
2016-10-31 14:03:29 +01:00
Markus Heidelberg 715a64a32a Make GCC/MinGW build work again and support cross-building under Linux
Close #1229, Fixes #385
Only build errors are fixed, compile warnings are left alone. To reduce
the number of changes, even the compiler option "-fpermissive" has been
used to downgrade several errors to warnings.
2015-12-15 17:10:46 +01:00
Don Ho 4dd3b257e0 Moved PowerEditor in trunk remotely
git-svn-id: svn://svn.tuxfamily.org/svnroot/notepadplus/repository/trunk@460 f5eea248-9336-0410-98b8-ebc06183d4e3
2009-04-24 23:34:47 +00:00